首页 > 最新文献

2010 Third International Conference on Software Testing, Verification and Validation最新文献

英文 中文
Towards a Testing Methodology for Reactive Systems: A Case Study of a Landing Gear Controller 面向响应系统的测试方法:以起落架控制器为例
L. Madani, V. Papailiopoulou, I. Parissis
In this case study we test a landing gear control system of a military aircraft with the new version of Lutess, a tool for testing automatically synchronous software. Lutess requires the tester to specify the environment of the software under test by means of invariant properties in order to guide the test data generation. This specification can be enriched by operational profile specification in order to obtain more realistic scenarios. Moreover, test generation guided by safety properties makes possible to test more thoroughly the key features of the software, possibly under hypotheses on the software behavior. In this case, the generator chooses input data which are able to violate the properties. The new version of Lutess is based on constraint logic programming and provides some additional features (numeric inputs and outputs, hypotheses for safety guided testing, more powerful operational profiles). In this paper, we present the necessary steps for building the test model for Lutess on a real case study from the avionics. This makes possible to better understand the applicability of the approach and to assess the difficulty and the effectiveness of such a process in real-world applications.
在本案例研究中,我们使用新版本的自动同步软件测试工具Lutess对某军用飞机起落架控制系统进行了测试。Lutess要求测试人员通过不变属性来指定被测软件的环境,以指导测试数据的生成。该规范可以通过操作概要规范进行充实,以获得更实际的场景。此外,由安全属性引导的测试生成使得更彻底地测试软件的关键特性成为可能,可能是在软件行为的假设下。在本例中,生成器选择能够违反属性的输入数据。新版本的Lutess基于约束逻辑编程,并提供了一些额外的功能(数字输入和输出,安全指导测试的假设,更强大的操作配置文件)。在本文中,我们提出了必要的步骤,以建立一个真实的案例研究,从航空电子Lutess测试模型。这样就可以更好地理解该方法的适用性,并评估这种过程在实际应用中的难度和有效性。
{"title":"Towards a Testing Methodology for Reactive Systems: A Case Study of a Landing Gear Controller","authors":"L. Madani, V. Papailiopoulou, I. Parissis","doi":"10.1109/ICST.2010.21","DOIUrl":"https://doi.org/10.1109/ICST.2010.21","url":null,"abstract":"In this case study we test a landing gear control system of a military aircraft with the new version of Lutess, a tool for testing automatically synchronous software. Lutess requires the tester to specify the environment of the software under test by means of invariant properties in order to guide the test data generation. This specification can be enriched by operational profile specification in order to obtain more realistic scenarios. Moreover, test generation guided by safety properties makes possible to test more thoroughly the key features of the software, possibly under hypotheses on the software behavior. In this case, the generator chooses input data which are able to violate the properties. The new version of Lutess is based on constraint logic programming and provides some additional features (numeric inputs and outputs, hypotheses for safety guided testing, more powerful operational profiles). In this paper, we present the necessary steps for building the test model for Lutess on a real case study from the avionics. This makes possible to better understand the applicability of the approach and to assess the difficulty and the effectiveness of such a process in real-world applications.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132447642","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}
引用次数: 3
Precisely Detecting Runtime Change Interactions for Evolving Software 为进化软件精确检测运行时变化交互
Raúl A. Santelices, M. J. Harrold, A. Orso
Developers often make multiple changes to software. These changes are introduced to work cooperatively or to accomplish separate goals. However, changes might not interact as expected or may produce undesired side effects. Thus, it is crucial for software-development tasks to know exactly which changes interact. For example, testers need this information to ensure that regression test suites test the combined behaviors of changes. For another example, teams of developers must determine whether it is safe to merge variants of a program modified in parallel. Existing techniques can be used to detect at runtime potential interactions among changes, but these reports tend to be coarse and imprecise. To address this problem, in this paper, we first present a formal model of change interactions at the code level, and then describe a new technique, based on this model, for detecting at runtime such interactions with accuracy. We also present the results of a comparison of our technique with other techniques on a set of Java subjects. Our results clearly suggest that existing techniques are too inaccurate and only our technique, of all those studied, provides acceptable confidence in detecting real change interactions occurring at runtime.
开发人员经常对软件进行多次更改。引入这些更改是为了协同工作或完成单独的目标。但是,更改可能不会像预期的那样相互作用,或者可能产生不希望的副作用。因此,对于软件开发任务来说,准确地知道哪些更改相互作用是至关重要的。例如,测试人员需要这些信息来确保回归测试套件测试变更的组合行为。另一个例子是,开发团队必须确定合并并行修改的程序的变体是否安全。现有的技术可以用于在运行时检测变更之间潜在的交互,但是这些报告往往是粗糙和不精确的。为了解决这个问题,在本文中,我们首先提出了代码级变更交互的形式化模型,然后描述了一种基于该模型的新技术,用于在运行时准确地检测此类交互。我们还介绍了在一组Java主题上将我们的技术与其他技术进行比较的结果。我们的结果清楚地表明,现有的技术太不准确了,在所有被研究的技术中,只有我们的技术在检测运行时发生的实际变化交互方面提供了可接受的信心。
{"title":"Precisely Detecting Runtime Change Interactions for Evolving Software","authors":"Raúl A. Santelices, M. J. Harrold, A. Orso","doi":"10.1109/ICST.2010.29","DOIUrl":"https://doi.org/10.1109/ICST.2010.29","url":null,"abstract":"Developers often make multiple changes to software. These changes are introduced to work cooperatively or to accomplish separate goals. However, changes might not interact as expected or may produce undesired side effects. Thus, it is crucial for software-development tasks to know exactly which changes interact. For example, testers need this information to ensure that regression test suites test the combined behaviors of changes. For another example, teams of developers must determine whether it is safe to merge variants of a program modified in parallel. Existing techniques can be used to detect at runtime potential interactions among changes, but these reports tend to be coarse and imprecise. To address this problem, in this paper, we first present a formal model of change interactions at the code level, and then describe a new technique, based on this model, for detecting at runtime such interactions with accuracy. We also present the results of a comparison of our technique with other techniques on a set of Java subjects. Our results clearly suggest that existing techniques are too inaccurate and only our technique, of all those studied, provides acceptable confidence in detecting real change interactions occurring at runtime.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"38 5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130811423","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}
引用次数: 33
Satisfying Test Preconditions through Guided Object Selection 通过引导对象选择满足测试前提条件
Yi Wei, S. Gebhardt, B. Meyer, M. Oriol
A random testing strategy can be effective at finding faults, but may leave some routines entirely untested if it never gets to call them on objects satisfying their preconditions. This limitation is particularly frustrating if the object pool does contain some precondition-satisfying objects but the strategy, which selects objects at random, does not use them. The extension of random testing described in this article addresses the problem. Experimentally, the resulting strategy succeeds in testing 56% of the routines that the pure random strategy missed; it tests hard routines 3.6 times more often; although it misses some of the faults detected by the original strategy, it finds 9.5% more faults overall; and it causes negligible overhead.
随机测试策略可以有效地发现错误,但如果无法在满足其前提条件的对象上调用某些例程,则可能使它们完全未经过测试。如果对象池确实包含一些满足前提条件的对象,但随机选择对象的策略没有使用它们,那么这种限制就特别令人沮丧。本文中描述的随机测试的扩展解决了这个问题。在实验中,结果策略成功测试了纯随机策略错过的56%的例程;它测试困难例程的频率高出3.6倍;虽然它漏掉了原策略检测到的一些故障,但它发现的故障总体上增加了9.5%;它造成的开销可以忽略不计。
{"title":"Satisfying Test Preconditions through Guided Object Selection","authors":"Yi Wei, S. Gebhardt, B. Meyer, M. Oriol","doi":"10.1109/ICST.2010.34","DOIUrl":"https://doi.org/10.1109/ICST.2010.34","url":null,"abstract":"A random testing strategy can be effective at finding faults, but may leave some routines entirely untested if it never gets to call them on objects satisfying their preconditions. This limitation is particularly frustrating if the object pool does contain some precondition-satisfying objects but the strategy, which selects objects at random, does not use them. The extension of random testing described in this article addresses the problem. Experimentally, the resulting strategy succeeds in testing 56% of the routines that the pure random strategy missed; it tests hard routines 3.6 times more often; although it misses some of the faults detected by the original strategy, it finds 9.5% more faults overall; and it causes negligible overhead.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"71 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131885957","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
Does Hardware Configuration and Processor Load Impact Software Fault Observability? 硬件配置和处理器负载是否影响软件故障的可观察性?
R. Syed, Brian P. Robinson, L. Williams
Intermittent failures and nondeterministic behavior complicate and compromise the effectiveness of software testing and debugging. To increase the observability of software faults, we explore the effect hardware configurations and processor load have on intermittent failures and the nondeterministic behavior of software systems. We conducted a case study on Mozilla Firefox with a selected set of reported field failures. We replicated the conditions that caused the reported failures ten times on each of nine hardware configurations by varying processor speed, memory, hard drive capacity, and processor load. Using several observability tools, we found that hardware configurations that had less processor speed and memory observed more failures than others. Our results also show that by manipulating processor load, we can influence the observability of some faults.
间歇性故障和不确定性行为使软件测试和调试的有效性变得复杂和妥协。为了提高软件故障的可观察性,我们探讨了硬件配置和处理器负载对软件系统间歇性故障和不确定性行为的影响。我们对Mozilla Firefox进行了一个案例研究,其中选择了一组报告的现场故障。我们通过改变处理器速度、内存、硬盘容量和处理器负载,在九种硬件配置上分别对导致报告故障的条件进行了十次复制。使用几个可观察性工具,我们发现处理器速度和内存较低的硬件配置比其他配置观察到更多的故障。我们的结果还表明,通过控制处理器负载,我们可以影响某些故障的可观察性。
{"title":"Does Hardware Configuration and Processor Load Impact Software Fault Observability?","authors":"R. Syed, Brian P. Robinson, L. Williams","doi":"10.1109/ICST.2010.55","DOIUrl":"https://doi.org/10.1109/ICST.2010.55","url":null,"abstract":"Intermittent failures and nondeterministic behavior complicate and compromise the effectiveness of software testing and debugging. To increase the observability of software faults, we explore the effect hardware configurations and processor load have on intermittent failures and the nondeterministic behavior of software systems. We conducted a case study on Mozilla Firefox with a selected set of reported field failures. We replicated the conditions that caused the reported failures ten times on each of nine hardware configurations by varying processor speed, memory, hard drive capacity, and processor load. Using several observability tools, we found that hardware configurations that had less processor speed and memory observed more failures than others. Our results also show that by manipulating processor load, we can influence the observability of some faults.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130777746","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}
引用次数: 5
Simulated Satisfaction of Coverage Criteria on UML State Machines UML状态机覆盖标准的模拟满足
Stephan Weißleder
UML state machines are widely used as test models in model-based testing. Coverage criteria are applied to them, e.g. to measure a test suite's coverage of the state machine or to steer automatic test suite generation based on the state machine. The model elements to cover as described by the applied coverage criterion depend on the structure of the state machine. Model transformations can be used to change this structure. In this paper, we present semantic-preserving state machine transformations that are used to influence the result of the applied coverage criteria. The contribution is that almost every feasible coverage criterion that is applied to the transformed state machine can have at least the same effect as any other feasible, possibly stronger coverage criterion that is applied to the original state machine. We introduce simulated satisfaction as a corresponding relation between coverage criteria. We provide formal definitions for coverage criteria and use them to prove the correctness of the model transformations that substantiate the simulated satisfaction relations. The results of this paper are especially important for model-based test generation tools, which are often limited to satisfy a restricted set of coverage criteria.
UML状态机在基于模型的测试中被广泛用作测试模型。覆盖标准被应用于它们,例如度量一个测试套件对状态机的覆盖,或者根据状态机引导自动的测试套件生成。应用的覆盖标准所描述的要覆盖的模型元素依赖于状态机的结构。可以使用模型转换来更改此结构。在本文中,我们提出了用于影响所应用覆盖标准的结果的保持语义的状态机转换。其贡献在于,应用于转换后的状态机的几乎每个可行的覆盖标准至少可以与应用于原始状态机的任何其他可行的、可能更强的覆盖标准具有相同的效果。我们引入模拟满意度作为覆盖标准之间的对应关系。我们为覆盖标准提供了正式的定义,并使用它们来证明证实模拟满意度关系的模型转换的正确性。本文的结果对于基于模型的测试生成工具来说是特别重要的,因为这些工具通常局限于满足一组有限的覆盖标准。
{"title":"Simulated Satisfaction of Coverage Criteria on UML State Machines","authors":"Stephan Weißleder","doi":"10.1109/ICST.2010.28","DOIUrl":"https://doi.org/10.1109/ICST.2010.28","url":null,"abstract":"UML state machines are widely used as test models in model-based testing. Coverage criteria are applied to them, e.g. to measure a test suite's coverage of the state machine or to steer automatic test suite generation based on the state machine. The model elements to cover as described by the applied coverage criterion depend on the structure of the state machine. Model transformations can be used to change this structure. In this paper, we present semantic-preserving state machine transformations that are used to influence the result of the applied coverage criteria. The contribution is that almost every feasible coverage criterion that is applied to the transformed state machine can have at least the same effect as any other feasible, possibly stronger coverage criterion that is applied to the original state machine. We introduce simulated satisfaction as a corresponding relation between coverage criteria. We provide formal definitions for coverage criteria and use them to prove the correctness of the model transformations that substantiate the simulated satisfaction relations. The results of this paper are especially important for model-based test generation tools, which are often limited to satisfy a restricted set of coverage criteria.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130283093","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}
引用次数: 36
Automated Test Data Generation on the Analyses of Feature Models: A Metamorphic Testing Approach 基于特征模型分析的自动化测试数据生成:一种变形测试方法
Sergio Segura, R. Hierons, David Benavides, Antonio Ruiz-Cortés
A Feature Model (FM) is a compact representation of all the products of a software product line. The automated extraction of information from FMs is a thriving research topic involving a number of analysis operations, algorithms, paradigms and tools. Implementing these operations is far from trivial and easily leads to errors and defects in analysis solutions. Current testing methods in this context mainly rely on the ability of the tester to decide whether the output of an analysis is correct. However, this is acknowledged to be time-consuming, error-prone and in most cases infeasible due to the combinatorial complexity of the analyses. In this paper, we present a set of relations (so-called metamorphic relations) between input FMs and their set of products and a test data generator relying on them. Given an FM and its known set of products, a set of neighbour FMs together with their corresponding set of products are automatically generated and used for testing different analyses. Complex FMs representing millions of products can be efficiently created applying this process iteratively. The evaluation of our approach using mutation testing as well as real faults and tools reveals that most faults can be automatically detected within a few seconds.
特征模型(FM)是软件产品线中所有产品的紧凑表示。从fm中自动提取信息是一个蓬勃发展的研究课题,涉及许多分析操作、算法、范式和工具。实现这些操作远非微不足道,并且很容易导致分析解决方案中的错误和缺陷。在这种情况下,当前的测试方法主要依靠测试人员的能力来决定分析的输出是否正确。然而,由于分析的组合复杂性,这被认为是耗时的,容易出错的,并且在大多数情况下是不可行的。在本文中,我们给出了输入fm与其产品集之间的一组关系(所谓的变质关系)以及依赖于它们的测试数据生成器。给定一个FM及其已知的产品集,将自动生成一组相邻FM及其相应的产品集,并用于测试不同的分析。应用这一迭代过程可以有效地创建代表数百万种产品的复杂FMs。利用突变测试、真实故障和工具对我们的方法进行了评估,结果表明大多数故障可以在几秒钟内自动检测到。
{"title":"Automated Test Data Generation on the Analyses of Feature Models: A Metamorphic Testing Approach","authors":"Sergio Segura, R. Hierons, David Benavides, Antonio Ruiz-Cortés","doi":"10.1109/ICST.2010.20","DOIUrl":"https://doi.org/10.1109/ICST.2010.20","url":null,"abstract":"A Feature Model (FM) is a compact representation of all the products of a software product line. The automated extraction of information from FMs is a thriving research topic involving a number of analysis operations, algorithms, paradigms and tools. Implementing these operations is far from trivial and easily leads to errors and defects in analysis solutions. Current testing methods in this context mainly rely on the ability of the tester to decide whether the output of an analysis is correct. However, this is acknowledged to be time-consuming, error-prone and in most cases infeasible due to the combinatorial complexity of the analyses. In this paper, we present a set of relations (so-called metamorphic relations) between input FMs and their set of products and a test data generator relying on them. Given an FM and its known set of products, a set of neighbour FMs together with their corresponding set of products are automatically generated and used for testing different analyses. Complex FMs representing millions of products can be efficiently created applying this process iteratively. The evaluation of our approach using mutation testing as well as real faults and tools reveals that most faults can be automatically detected within a few seconds.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132671693","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}
引用次数: 56
MbSRT2: Model-Based Selective Regression Testing with Traceability MbSRT2:具有追溯性的基于模型的选择性回归测试
L. Naslavsky, H. Ziv, D. Richardson
Widespread adoption of model-centric development has created opportunities for software testing, with Model-Based Testing (MBT). MBT supports the generation of test cases from models and the demonstration of model and source-code compliance. Models evolve, much like source code. Thus, an important activity of MBT is selective regression testing, which selects test cases for retest based on model modifications, rather than source-code modifications. This activity explores relationships between model elements and test cases that traverse those elements to locate retest able test cases. We contribute an approach and prototype to model-based selective regression testing, whereby fine-grain traceability relationships among entities in models and test cases are persisted into a traceability infrastructure throughout the test generation process: the relationships represent reasons for test case creation and are used to select test cases for re-run. The approach builds upon existing regression test selection techniques and adopts scenarios as behavioral modeling perspective. We analyze precision, efficiency and safety of the approach through case studies and through theoretical and intuitive reasoning.
以模型为中心的开发的广泛采用为基于模型的测试(MBT)的软件测试创造了机会。MBT支持从模型中生成测试用例,以及模型和源代码遵从性的演示。模型不断发展,就像源代码一样。因此,MBT的一个重要活动是选择性回归测试,它根据模型修改而不是源代码修改来选择测试用例进行重新测试。这个活动探索模型元素和测试用例之间的关系,遍历那些元素来定位可重新测试的测试用例。我们为基于模型的选择性回归测试提供了一种方法和原型,据此,模型和测试用例中实体之间的细粒度跟踪关系在整个测试生成过程中被持久化到一个跟踪基础结构中:这些关系表示测试用例创建的原因,并用于选择重新运行的测试用例。该方法建立在现有的回归测试选择技术之上,并采用场景作为行为建模视角。我们通过案例研究以及理论和直觉推理来分析该方法的准确性、效率和安全性。
{"title":"MbSRT2: Model-Based Selective Regression Testing with Traceability","authors":"L. Naslavsky, H. Ziv, D. Richardson","doi":"10.1109/ICST.2010.61","DOIUrl":"https://doi.org/10.1109/ICST.2010.61","url":null,"abstract":"Widespread adoption of model-centric development has created opportunities for software testing, with Model-Based Testing (MBT). MBT supports the generation of test cases from models and the demonstration of model and source-code compliance. Models evolve, much like source code. Thus, an important activity of MBT is selective regression testing, which selects test cases for retest based on model modifications, rather than source-code modifications. This activity explores relationships between model elements and test cases that traverse those elements to locate retest able test cases. We contribute an approach and prototype to model-based selective regression testing, whereby fine-grain traceability relationships among entities in models and test cases are persisted into a traceability infrastructure throughout the test generation process: the relationships represent reasons for test case creation and are used to select test cases for re-run. The approach builds upon existing regression test selection techniques and adopts scenarios as behavioral modeling perspective. We analyze precision, efficiency and safety of the approach through case studies and through theoretical and intuitive reasoning.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116510754","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}
引用次数: 21
Characterizing the Chain of Evidence for Software Safety Cases: A Conceptual Model Based on the IEC 61508 Standard 软件安全案例证据链表征:基于IEC 61508标准的概念模型
R. Panesar-Walawege, M. Sabetzadeh, L. Briand, T. Coq
Increasingly, licensing and safety regulatory bodies require the suppliers of software-intensive, safety-critical systems to provide an explicit software safety case – a structured set of arguments based on objective evidence to demonstrate that the software elements of a system are acceptably safe. Existing research on safety cases has mainly focused on how to build the arguments in a safety case based on available evidence; but little has been done to precisely characterize what this evidence should be. As a result, system suppliers are left with practically no guidance on what evidence to collect during software development. This has led to the suppliers having to recover the relevant evidence after the fact – an extremely costly and sometimes impractical task. Although standards such as the IEC 61508 – which is widely viewed as the best available generic standard for managing functional safety in software – provide some guidance for the collection of relevant safety and certification information, this guidance is mostly textual, not expressed in a precise and structured form, and is not easy to specialize to context-specific needs. To address these issues, we present a conceptual model to characterize the evidence for arguing about software safety. Our model captures both the information requirements for demonstrating compliance with IEC 61508 and the traceability links necessary to create a seamless chain of evidence. We further describe how our generic model can be specialized according to the needs of a particular context, and discuss some important ways in which our model can facilitate software certification.
越来越多的许可和安全监管机构要求软件密集型、安全关键型系统的供应商提供明确的软件安全案例——一组基于客观证据的结构化论证,以证明系统的软件元素是可接受的安全。现有的安全案件研究主要集中在如何根据现有证据在安全案件中建立论点;但几乎没有人做过什么来精确描述这些证据应该是什么。结果,系统供应商实际上没有任何关于在软件开发期间收集什么证据的指导。这导致供应商不得不在事后恢复相关证据,这是一项极其昂贵且有时不切实际的任务。尽管IEC 61508等标准——被广泛认为是管理软件功能安全的最佳通用标准——为相关安全和认证信息的收集提供了一些指导,但这些指导大多是文本的,没有以精确和结构化的形式表达,也不容易专门针对具体情况的需求。为了解决这些问题,我们提出了一个概念模型来描述关于软件安全争论的证据。我们的模型既捕获了证明符合IEC 61508的信息要求,也捕获了创建无缝证据链所需的可追溯性链接。我们进一步描述了如何根据特定上下文的需要对我们的通用模型进行专门化,并讨论了我们的模型能够促进软件认证的一些重要方法。
{"title":"Characterizing the Chain of Evidence for Software Safety Cases: A Conceptual Model Based on the IEC 61508 Standard","authors":"R. Panesar-Walawege, M. Sabetzadeh, L. Briand, T. Coq","doi":"10.1109/ICST.2010.12","DOIUrl":"https://doi.org/10.1109/ICST.2010.12","url":null,"abstract":"Increasingly, licensing and safety regulatory bodies require the suppliers of software-intensive, safety-critical systems to provide an explicit software safety case – a structured set of arguments based on objective evidence to demonstrate that the software elements of a system are acceptably safe. Existing research on safety cases has mainly focused on how to build the arguments in a safety case based on available evidence; but little has been done to precisely characterize what this evidence should be. As a result, system suppliers are left with practically no guidance on what evidence to collect during software development. This has led to the suppliers having to recover the relevant evidence after the fact – an extremely costly and sometimes impractical task. Although standards such as the IEC 61508 – which is widely viewed as the best available generic standard for managing functional safety in software – provide some guidance for the collection of relevant safety and certification information, this guidance is mostly textual, not expressed in a precise and structured form, and is not easy to specialize to context-specific needs. To address these issues, we present a conceptual model to characterize the evidence for arguing about software safety. Our model captures both the information requirements for demonstrating compliance with IEC 61508 and the traceability links necessary to create a seamless chain of evidence. We further describe how our generic model can be specialized according to the needs of a particular context, and discuss some important ways in which our model can facilitate software certification.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122046980","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}
引用次数: 56
Regression Test Selection and Product Line System Testing 回归测试选择和产品线系统测试
Emelie Engström
Context: Software product lines (SPL) are used in industry to achieve more efficient software development. To test a SPL is complex and costly and often becomes a bottleneck in the product line organization. Objective: This research aims to develop and evaluate strategies for improving system test selection in a SPL. Method: Initially industrial practices and research in both SPL testing and traditional regression test selection have been surveyed. Two systematic literature reviews, two industrial exploratory surveys and one industrial evaluation of a pragmatic test selection approach have been conducted. Results: There is a lack of industrial evaluations as well as of useful solutions, both regarding regression test selection and SPL testing. Test selection is an activity of varying scope and preconditions, strongly dependent on the context in which it is applied. Conclusions: Continued research will be done in close cooperation with industry with the goal to define a tool for visualizing system test coverage in a product line and the delta between a product and the covered part of the product line.
背景:软件产品线(SPL)在工业中用于实现更有效的软件开发。测试SPL是复杂且昂贵的,并且经常成为产品线组织中的瓶颈。目的:本研究旨在制定和评估改进SPL系统测试选择的策略。方法:对SPL检验和传统回归检验选择的行业实践和研究进行初步调查。两个系统的文献综述,两个工业探索性调查和一个实用测试选择方法的工业评价进行了。结果:缺乏工业评价以及有用的解决方案,无论是关于回归测试选择和SPL测试。测试选择是一个变化范围和前提条件的活动,强烈依赖于它所应用的环境。结论:持续的研究将在与工业界的密切合作下完成,目标是定义一个工具,用于可视化产品线中的系统测试覆盖率,以及产品与产品线中被覆盖部分之间的增量。
{"title":"Regression Test Selection and Product Line System Testing","authors":"Emelie Engström","doi":"10.1109/ICST.2010.45","DOIUrl":"https://doi.org/10.1109/ICST.2010.45","url":null,"abstract":"Context: Software product lines (SPL) are used in industry to achieve more efficient software development. To test a SPL is complex and costly and often becomes a bottleneck in the product line organization. Objective: This research aims to develop and evaluate strategies for improving system test selection in a SPL. Method: Initially industrial practices and research in both SPL testing and traditional regression test selection have been surveyed. Two systematic literature reviews, two industrial exploratory surveys and one industrial evaluation of a pragmatic test selection approach have been conducted. Results: There is a lack of industrial evaluations as well as of useful solutions, both regarding regression test selection and SPL testing. Test selection is an activity of varying scope and preconditions, strongly dependent on the context in which it is applied. Conclusions: Continued research will be done in close cooperation with industry with the goal to define a tool for visualizing system test coverage in a product line and the delta between a product and the covered part of the product line.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122153088","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}
引用次数: 35
From Nondeterministic UML Protocol Statemachines to Class Contracts 从不确定的UML协议状态机到类契约
Ivan Porres, I. Rauf
A UML protocol state machine describes a behavioral interface for a class as a number of states and transitions between states triggered by method calls. In this paper, we present an approach to generate behavioral class interfaces in the form of class contracts from UML protocol state machines. The generated contracts can be used for documentation, test case generation, test case oracle, and as run-time assertions and thus help to test and validate the implementation of a class against its interface. We formalize protocol state machines with its structure and semantics for generating class contracts. The state invariants of the source and target states are considered along with the pre- and post-conditions of the transitions. Different types of transitions like simple, join, fork, high-level, and self transitions are supported, as well as non-deterministic behavior. The approach is supported by a tool to generate automatically the contracts from UML models.
UML协议状态机将类的行为接口描述为由方法调用触发的许多状态和状态之间的转换。在本文中,我们提出了一种从UML协议状态机以类契约的形式生成行为类接口的方法。生成的契约可以用于文档、测试用例生成、测试用例oracle和运行时断言,从而帮助测试和验证针对其接口的类的实现。我们将协议状态机及其结构和语义形式化,用于生成类契约。源状态和目标状态的状态不变量与转换的前置和后置条件一起被考虑。支持不同类型的转换,如简单转换、连接转换、fork转换、高级转换和自转换,以及非确定性行为。该方法由一个从UML模型自动生成契约的工具支持。
{"title":"From Nondeterministic UML Protocol Statemachines to Class Contracts","authors":"Ivan Porres, I. Rauf","doi":"10.1109/ICST.2010.62","DOIUrl":"https://doi.org/10.1109/ICST.2010.62","url":null,"abstract":"A UML protocol state machine describes a behavioral interface for a class as a number of states and transitions between states triggered by method calls. In this paper, we present an approach to generate behavioral class interfaces in the form of class contracts from UML protocol state machines. The generated contracts can be used for documentation, test case generation, test case oracle, and as run-time assertions and thus help to test and validate the implementation of a class against its interface. We formalize protocol state machines with its structure and semantics for generating class contracts. The state invariants of the source and target states are considered along with the pre- and post-conditions of the transitions. Different types of transitions like simple, join, fork, high-level, and self transitions are supported, as well as non-deterministic behavior. The approach is supported by a tool to generate automatically the contracts from UML models.","PeriodicalId":192678,"journal":{"name":"2010 Third International Conference on Software Testing, Verification and Validation","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131553089","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
期刊
2010 Third International Conference on Software Testing, Verification and Validation
全部 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