首页 > 最新文献

Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)最新文献

英文 中文
TestEra: a novel framework for automated testing of Java programs TestEra:用于Java程序自动化测试的新框架
D. Marinov, S. Khurshid
We present TestEra, a novel framework for automated testing of Java programs. TestEra automatically generates all non-isomorphic test cases within a given input size and evaluates correctness criteria. As an enabling technology, TestEra uses Alloy, a first-order relational language, and the Alloy Analyzer. Checking a program with TestEra involves modeling the correctness criteria for the program in Alloy and specifying abstraction and concretization translations between instances of Alloy models and Java data structures. TestEra produces concrete Java inputs as counterexamples to violated correctness criteria. The paper discusses TestEra's analyses of several case studies: methods that manipulate singly linked lists and red-black trees, a naming architecture, and a part of the Alloy Analyzer.
我们提出了一个用于Java程序自动化测试的新框架TestEra。TestEra在给定的输入大小内自动生成所有非同构测试用例,并评估正确性标准。作为一种启用技术,TestEra使用一阶关系语言Alloy和Alloy Analyzer。使用TestEra检查程序涉及到在Alloy中对程序的正确性标准进行建模,并指定Alloy模型实例与Java数据结构之间的抽象和具体化转换。testa生成具体的Java输入作为违反正确性标准的反例。本文讨论了TestEra对几个案例研究的分析:操作单链表和红黑树的方法、命名体系结构和Alloy Analyzer的一部分。
{"title":"TestEra: a novel framework for automated testing of Java programs","authors":"D. Marinov, S. Khurshid","doi":"10.1109/ASE.2001.989787","DOIUrl":"https://doi.org/10.1109/ASE.2001.989787","url":null,"abstract":"We present TestEra, a novel framework for automated testing of Java programs. TestEra automatically generates all non-isomorphic test cases within a given input size and evaluates correctness criteria. As an enabling technology, TestEra uses Alloy, a first-order relational language, and the Alloy Analyzer. Checking a program with TestEra involves modeling the correctness criteria for the program in Alloy and specifying abstraction and concretization translations between instances of Alloy models and Java data structures. TestEra produces concrete Java inputs as counterexamples to violated correctness criteria. The paper discusses TestEra's analyses of several case studies: methods that manipulate singly linked lists and red-black trees, a naming architecture, and a part of the Alloy Analyzer.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133256333","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 297
Strategies for automated specification-based testing of synchronous software 同步软件基于规范的自动化测试策略
I. Parissis, J. Vassy
The paper presents new techniques for specification based-testing of synchronous software with the Lutess tool. Lutess provides a framework consisting of automatically building generators which interact with the software under test and feed it with test input sequences. In the past few years, it has been established that operational profiles as well as scenarios are powerful tools, allowing for a better fault detection ability. As opposed to this last technique which relies on the ability of the human tester to specify scenarios, we propose an approach based solely on software specification to automatically generate input sequences which may correspond to fault revealing scenarios.
本文介绍了利用luess工具对同步软件进行基于规格的测试的新技术。Lutess提供了一个由自动生成的生成器组成的框架,这些生成器与被测软件交互,并为其提供测试输入序列。在过去的几年中,已经建立了操作概要文件和场景是强大的工具,允许更好的故障检测能力。与最后一种技术相反,它依赖于人类测试人员指定场景的能力,我们提出了一种仅基于软件规范的方法来自动生成可能对应于故障显示场景的输入序列。
{"title":"Strategies for automated specification-based testing of synchronous software","authors":"I. Parissis, J. Vassy","doi":"10.1109/ASE.2001.989830","DOIUrl":"https://doi.org/10.1109/ASE.2001.989830","url":null,"abstract":"The paper presents new techniques for specification based-testing of synchronous software with the Lutess tool. Lutess provides a framework consisting of automatically building generators which interact with the software under test and feed it with test input sequences. In the past few years, it has been established that operational profiles as well as scenarios are powerful tools, allowing for a better fault detection ability. As opposed to this last technique which relies on the ability of the human tester to specify scenarios, we propose an approach based solely on software specification to automatically generate input sequences which may correspond to fault revealing scenarios.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"114 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123541826","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 12
Modeling and verification of distributed real-time systems based on CafeOBJ 基于CafeOBJ的分布式实时系统建模与验证
K. Ogata, K. Futatsugi
CafeOBJ is a wide spectrum formal specification language based on multiple logical foundations: mainly initial and hidden algebra. A wide range of systems can be specified in CafeOBJ thanks to its multiple logical foundations. However, distributed real-time systems happen to be excluded from targets of CafeOBJ. The authors propose a method of modeling and verifying such systems based on CafeOBJ, together with timed evolution of UNITY computational models.
CafeOBJ是一种广泛的形式规范语言,它基于多个逻辑基础:主要是初始代数和隐藏代数。由于其多重逻辑基础,可以在CafeOBJ中指定范围广泛的系统。然而,分布式实时系统恰好被排除在CafeOBJ的目标之外。作者提出了一种基于CafeOBJ的系统建模和验证方法,并结合UNITY计算模型的定时进化。
{"title":"Modeling and verification of distributed real-time systems based on CafeOBJ","authors":"K. Ogata, K. Futatsugi","doi":"10.1109/ASE.2001.989804","DOIUrl":"https://doi.org/10.1109/ASE.2001.989804","url":null,"abstract":"CafeOBJ is a wide spectrum formal specification language based on multiple logical foundations: mainly initial and hidden algebra. A wide range of systems can be specified in CafeOBJ thanks to its multiple logical foundations. However, distributed real-time systems happen to be excluded from targets of CafeOBJ. The authors propose a method of modeling and verifying such systems based on CafeOBJ, together with timed evolution of UNITY computational models.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123670407","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 10
Better reasoning about software engineering activities 对软件工程活动进行更好的推理
T. Menzies, J. Kiper
Software management oracles often contain numerous subjective features. At each subjective point, a range of behaviors is possible. Stochastic simulation samples a subset of the possible behaviors. After many such stochastic simulations, the TAR2 treatment learner can find control actions that have (usually) the same impact despite the subjectivity of the oracle.
软件管理预言机通常包含许多主观特征。在每个主观点,一系列的行为是可能的。随机模拟抽取可能行为的一个子集。在许多这样的随机模拟之后,TAR2处理学习者可以找到(通常)具有相同影响的控制动作,尽管oracle具有主观性。
{"title":"Better reasoning about software engineering activities","authors":"T. Menzies, J. Kiper","doi":"10.1109/ASE.2001.989836","DOIUrl":"https://doi.org/10.1109/ASE.2001.989836","url":null,"abstract":"Software management oracles often contain numerous subjective features. At each subjective point, a range of behaviors is possible. Stochastic simulation samples a subset of the possible behaviors. After many such stochastic simulations, the TAR2 treatment learner can find control actions that have (usually) the same impact despite the subjectivity of the oracle.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125475037","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 13
Automated software engineering using concurrent class machines 使用并发类机器的自动化软件工程
R. Grosu, Yanhong A. Liu, S. Smolka, S. Stoller, Jingyu Yan
Concurrent Class Machines are a novel state-machine model that directly captures a variety of object-oriented concepts, including classes and inheritance, objects and object creation, methods, method invocation and exceptions, multithreading and abstract collection types. The model can be understood as a precise definition of UML activity diagrams which, at the same time, offers an executable, object-oriented alternative to event-based statecharts. It can also be understood as a visual, combined control and data flow model for multithreaded object-oriented programs. We first introduce a visual notation and tool for Concurrent Class Machines and discuss their benefits in enhancing system design. We then equip this notation with a precise semantics that allows us to define refinement and modular refinement rules. Finally, we summarize our work on generation of optimized code, implementation and experiments, and compare with related work.
并发类机是一种新型的状态机模型,它直接捕获了各种面向对象的概念,包括类和继承、对象和对象创建、方法、方法调用和异常、多线程和抽象集合类型。该模型可以被理解为UML活动图的精确定义,它同时为基于事件的状态图提供了一个可执行的、面向对象的替代方案。它也可以理解为多线程面向对象程序的可视化、组合控制和数据流模型。我们首先介绍了并发类机的可视化符号和工具,并讨论了它们在增强系统设计方面的好处。然后,我们用精确的语义来装备这个符号,使我们能够定义细化和模块化细化规则。最后对优化代码的生成、实现和实验进行了总结,并与相关工作进行了比较。
{"title":"Automated software engineering using concurrent class machines","authors":"R. Grosu, Yanhong A. Liu, S. Smolka, S. Stoller, Jingyu Yan","doi":"10.1109/ASE.2001.989816","DOIUrl":"https://doi.org/10.1109/ASE.2001.989816","url":null,"abstract":"Concurrent Class Machines are a novel state-machine model that directly captures a variety of object-oriented concepts, including classes and inheritance, objects and object creation, methods, method invocation and exceptions, multithreading and abstract collection types. The model can be understood as a precise definition of UML activity diagrams which, at the same time, offers an executable, object-oriented alternative to event-based statecharts. It can also be understood as a visual, combined control and data flow model for multithreaded object-oriented programs. We first introduce a visual notation and tool for Concurrent Class Machines and discuss their benefits in enhancing system design. We then equip this notation with a precise semantics that allows us to define refinement and modular refinement rules. Finally, we summarize our work on generation of optimized code, implementation and experiments, and compare with related work.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125839667","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
An automated tool for analyzing Petri nets using Spin 使用Spin分析Petri网的自动化工具
G. Gannod, S. Gupta
The Spin model checker is a system that has been used to model and analyze a large number of applications in several domains including the aerospace industry. One of the novelties of Spin is its relatively simple specification language, Promela, as well as the powerful abilities of the model checker. The Petri net notation is a mathematical tool for modeling various classes of systems, especially those that involve concurrency and parallelism. The Honeywell Domain Modeling Environment (DOME) is a tool that supports system design using a wide variety of modeling notations, including UML diagrams and Petri nets. We describe a tool that supports the use of the Spin model checker to analyze and verify Petri net specifications that have been constructed using the DOME tool. In addition to discussing the translation of Petri nets into Promela, we present several example Petri net specifications as well as their analysis using Spin.
自旋模型检查器是一个用于包括航空航天工业在内的多个领域的大量应用建模和分析的系统。Spin的新颖之处之一是其相对简单的规范语言Promela,以及模型检查器的强大功能。Petri网符号是一种数学工具,用于建模各种类型的系统,特别是那些涉及并发和并行的系统。霍尼韦尔领域建模环境(DOME)是一种工具,它支持使用多种建模符号进行系统设计,包括UML图和Petri网。我们描述了一个支持使用Spin模型检查器来分析和验证使用DOME工具构建的Petri网规范的工具。除了讨论将Petri网转换为Promela之外,我们还提供了几个示例Petri网规范以及使用Spin对其进行分析。
{"title":"An automated tool for analyzing Petri nets using Spin","authors":"G. Gannod, S. Gupta","doi":"10.1109/ASE.2001.989839","DOIUrl":"https://doi.org/10.1109/ASE.2001.989839","url":null,"abstract":"The Spin model checker is a system that has been used to model and analyze a large number of applications in several domains including the aerospace industry. One of the novelties of Spin is its relatively simple specification language, Promela, as well as the powerful abilities of the model checker. The Petri net notation is a mathematical tool for modeling various classes of systems, especially those that involve concurrency and parallelism. The Honeywell Domain Modeling Environment (DOME) is a tool that supports system design using a wide variety of modeling notations, including UML diagrams and Petri nets. We describe a tool that supports the use of the Spin model checker to analyze and verify Petri net specifications that have been constructed using the DOME tool. In addition to discussing the translation of Petri nets into Promela, we present several example Petri net specifications as well as their analysis using Spin.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133376633","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 31
Automated check of architectural models consistency using SPIN 使用SPIN自动检查架构模型的一致性
P. Inverardi, H. Muccini, Patrizio Pelliccione
In recent years the necessity for handling different aspects of the system separately has introduced the need to represent SA (software architectures) from different viewpoints. In particular, behavioral views are recognized to be one of the most attractive features in the SA description, and in practical contexts, state diagrams and scenarios are the most widely used tools to model this view. Although very expressive, this approach has two drawbacks: system specification incompleteness and view consistency. Our work can be put in this context with the aim of managing incompleteness and checking view conformance: we propose the use of state diagrams and scenario models for representing system dynamics at the architectural level; they can be incomplete and we want to prove that they describe, from different viewpoints, the same system behavior. To reach this goal, we use the SPIN model checker and we implement a tool to manage the translation of architectural models in Promela and LTL.
近年来,由于需要分别处理系统的不同方面,因此需要从不同的角度来表示SA(软件体系结构)。特别是,行为视图被认为是SA描述中最吸引人的特性之一,并且在实际上下文中,状态图和场景是最广泛用于对该视图建模的工具。尽管表达能力很强,但这种方法有两个缺点:系统规范不完整和视图一致性。我们的工作可以放在这样的环境中,目的是管理不完整性和检查视图一致性:我们建议使用状态图和场景模型来表示体系结构级别的系统动态;它们可以是不完整的,我们想要证明它们从不同的角度,描述了相同的系统行为。为了达到这个目标,我们使用SPIN模型检查器,并实现一个工具来管理Promela和LTL中体系结构模型的转换。
{"title":"Automated check of architectural models consistency using SPIN","authors":"P. Inverardi, H. Muccini, Patrizio Pelliccione","doi":"10.1109/ASE.2001.989826","DOIUrl":"https://doi.org/10.1109/ASE.2001.989826","url":null,"abstract":"In recent years the necessity for handling different aspects of the system separately has introduced the need to represent SA (software architectures) from different viewpoints. In particular, behavioral views are recognized to be one of the most attractive features in the SA description, and in practical contexts, state diagrams and scenarios are the most widely used tools to model this view. Although very expressive, this approach has two drawbacks: system specification incompleteness and view consistency. Our work can be put in this context with the aim of managing incompleteness and checking view conformance: we propose the use of state diagrams and scenario models for representing system dynamics at the architectural level; they can be incomplete and we want to prove that they describe, from different viewpoints, the same system behavior. To reach this goal, we use the SPIN model checker and we implement a tool to manage the translation of architectural models in Promela and LTL.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131661986","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 46
Generating EDI message translations from visual specifications 从可视化规范生成EDI消息翻译
J. Grundy, R. Mugridge, J. Hosking, P. Kendall
Electronic data interchange (EDI) systems are used in many domains to support inter-organisational information exchange. To get systems using different EDI message formats to communicate, complex message translations (where data must be transformed from one EDI message format into another), are required. We describe a visual language and support environment which greatly simplify the task of the systems integrator by using a domain-specific visual language to express data formats and format translations. Complex message translations are automated by an underlying transformation engine. We describe the motivation for this system, its key visual language and transformation engine features, a prototype environment, and experience translating it into a commercial product.
电子数据交换(EDI)系统在许多领域中用于支持组织间的信息交换。为了使使用不同EDI消息格式的系统进行通信,需要进行复杂的消息转换(必须将数据从一种EDI消息格式转换为另一种EDI消息格式)。我们描述了一种可视化语言和支持环境,通过使用特定领域的可视化语言来表达数据格式和格式转换,极大地简化了系统集成商的任务。复杂的消息翻译由底层转换引擎自动完成。我们描述了这个系统的动机,它的关键视觉语言和转换引擎的特点,一个原型环境,以及将其转化为商业产品的经验。
{"title":"Generating EDI message translations from visual specifications","authors":"J. Grundy, R. Mugridge, J. Hosking, P. Kendall","doi":"10.1109/ASE.2001.989788","DOIUrl":"https://doi.org/10.1109/ASE.2001.989788","url":null,"abstract":"Electronic data interchange (EDI) systems are used in many domains to support inter-organisational information exchange. To get systems using different EDI message formats to communicate, complex message translations (where data must be transformed from one EDI message format into another), are required. We describe a visual language and support environment which greatly simplify the task of the systems integrator by using a domain-specific visual language to express data formats and format translations. Complex message translations are automated by an underlying transformation engine. We describe the motivation for this system, its key visual language and transformation engine features, a prototype environment, and experience translating it into a commercial product.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131531691","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 17
Instantiating and detecting design patterns: putting bits and pieces together 实例化和检测设计模式:把零碎的东西放在一起
Hervé Albin-Amiot, P. Cointe, Yann-Gaël Guéhéneuc, N. Jussien
Design patterns ease the designing, understanding, and re-engineering of software. Achieving a well-designed piece of software requires a deep understanding and a good practice of design patterns. Understanding existing software relies on the ability to identify architectural forms resulting from the implementation of design patterns. Maintaining software involves spotting places that can be improved by using better design decisions, like those advocated by design patterns. Nevertheless, there is a lack of tools automatizing the use of design patterns to achieve well-designed pieces of software, to identify recurrent architectural forms, and to maintain software. We present a set of tools and techniques to help OO software practitioners design, understand, and re-engineer a piece of software using design-patterns. A first prototype tool, PATTERNS-BOX, provides assistance in designing the architecture of a new piece of software, while a second prototype tool, PTIDEJ, identifies design patterns used in an existing one. These tools, in combination, support maintenance by highlighting defects in an existing design, and by suggesting and applying corrections based on widely-accepted design pattern solutions.
设计模式简化了软件的设计、理解和再工程。实现一个设计良好的软件需要对设计模式有深刻的理解和良好的实践。理解现有软件依赖于识别由设计模式实现产生的体系结构形式的能力。维护软件包括发现可以通过使用更好的设计决策来改进的地方,就像设计模式所提倡的那样。尽管如此,仍然缺乏自动化使用设计模式的工具,以实现设计良好的软件,识别循环的体系结构形式,以及维护软件。我们提供了一组工具和技术来帮助OO软件从业者使用设计模式来设计、理解和重新设计软件。第一个原型工具patterns - box为设计新软件的体系结构提供帮助,而第二个原型工具PTIDEJ则识别现有软件中使用的设计模式。这些工具结合在一起,通过突出显示现有设计中的缺陷,以及根据广泛接受的设计模式解决方案建议和应用纠正来支持维护。
{"title":"Instantiating and detecting design patterns: putting bits and pieces together","authors":"Hervé Albin-Amiot, P. Cointe, Yann-Gaël Guéhéneuc, N. Jussien","doi":"10.1109/ASE.2001.989802","DOIUrl":"https://doi.org/10.1109/ASE.2001.989802","url":null,"abstract":"Design patterns ease the designing, understanding, and re-engineering of software. Achieving a well-designed piece of software requires a deep understanding and a good practice of design patterns. Understanding existing software relies on the ability to identify architectural forms resulting from the implementation of design patterns. Maintaining software involves spotting places that can be improved by using better design decisions, like those advocated by design patterns. Nevertheless, there is a lack of tools automatizing the use of design patterns to achieve well-designed pieces of software, to identify recurrent architectural forms, and to maintain software. We present a set of tools and techniques to help OO software practitioners design, understand, and re-engineer a piece of software using design-patterns. A first prototype tool, PATTERNS-BOX, provides assistance in designing the architecture of a new piece of software, while a second prototype tool, PTIDEJ, identifies design patterns used in an existing one. These tools, in combination, support maintenance by highlighting defects in an existing design, and by suggesting and applying corrections based on widely-accepted design pattern solutions.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131777642","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 114
A new way of automating statistical testing methods 一种新的自动化统计测试方法
Sandrine-Dominique Gouraud, A. Denise, M. Gaudel, Bruno Marre
We propose a novel way of automating statistical structural testing of software, based on the combination of uniform generation of combinatorial structures, and of randomized constraint solving techniques. More precisely, we show how to draw test cases which balance the coverage of program structures according to structural testing criteria. The control flow graph is formalized as a combinatorial structure specification. This provides a way of uniformly drawing execution paths which have suitable properties. Once a path has been drawn, the predicate characterizing those inputs which lead to its execution is solved using a constraint solving library. The constraint solver is enriched with powerful heuristics in order to deal with resolution failures and random choice strategies.
本文提出了一种基于组合结构统一生成和随机约束求解技术相结合的软件统计结构自动化测试新方法。更准确地说,我们展示了如何根据结构测试标准来绘制平衡程序结构覆盖的测试用例。控制流图被形式化为组合结构规范。这提供了一种统一绘制具有适当属性的执行路径的方法。一旦绘制了路径,表征导致其执行的那些输入的谓词将使用约束求解库求解。约束求解器丰富了强大的启发式,以处理解决失败和随机选择策略。
{"title":"A new way of automating statistical testing methods","authors":"Sandrine-Dominique Gouraud, A. Denise, M. Gaudel, Bruno Marre","doi":"10.1109/ASE.2001.989785","DOIUrl":"https://doi.org/10.1109/ASE.2001.989785","url":null,"abstract":"We propose a novel way of automating statistical structural testing of software, based on the combination of uniform generation of combinatorial structures, and of randomized constraint solving techniques. More precisely, we show how to draw test cases which balance the coverage of program structures according to structural testing criteria. The control flow graph is formalized as a combinatorial structure specification. This provides a way of uniformly drawing execution paths which have suitable properties. Once a path has been drawn, the predicate characterizing those inputs which lead to its execution is solved using a constraint solving library. The constraint solver is enriched with powerful heuristics in order to deal with resolution failures and random choice strategies.","PeriodicalId":433615,"journal":{"name":"Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132970233","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 47
期刊
Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1