首页> 外文会议>International symposium of formal methods Europe >A Combined Testing and Verification Approach for Software Reliability
【24h】

A Combined Testing and Verification Approach for Software Reliability

机译:软件可靠性的组合测试和验证方法

获取原文

摘要

Automatic and manual software verification is based on applying mathematical methods to a model of the software. Modeling is usually done manually, thus it is prone to modeling errors. This means that errors found in the model may not correspond to real errors in the code, and that if the model is found to satisfy the checked properties, the actual code may still have some errors. For this reason, it is desirable to be able to perform some consistency checks between the actual code and the model. Exhaustive consistency checks are usually not possible, for the same reason that modeling is necessary. We propose a methodology for improving the throughput of software verification by performing some consistency checks between the original code and the model, specifically, by applying software testing. In this paper we present such a combined testing and verification methodology and demonstrate how it is applied using a set of software reliability tools. We introduce the notion of a neighborhood of an error trace, consisting of a tree of execution paths, where the original error trace is one of them. Our experience with the methodology shows that traversing the neighborhood of an error is extremely useful in locating its cause. This is crucial not only in understanding where the error stems from, but in getting an initial idea of how to redesign the code. We use as a case study a robot control system, and report on several design and modeling errors found during the verification and testing process.
机译:自动和手动软件验证是基于应用数学方法对软件的模式。建模通常是手工完成,因此很容易出现建模误差。这意味着,在该模型中发现的错误可能不符合真正的错误代码,并且如果该模型被发现满足性能检查,实际的代码可能仍然有一些错误。出于这个原因,期望的是能够实际代码和型号之间执行某些一致性检查。穷尽的一致性检查通常是不可能的,同样的原因,建模是必要的。我们提出了一个方法,通过原始代码和模型之间执行某些一致性检查,特别是,通过应用软件测试改进软件验证的吞吐量。在本文中,我们目前这种组合的测试和验证方法,并证明它是如何使用一套软件可靠性的工具应用。我们引入一个错误跟踪的附近的概念,包括执行路径树,其中原来的错误跟踪就是其中之一。我们用的方法显示,遍历一个错误附近经验在定位其原因是非常有用的。这不仅是理解其中的错误源于,但在获得的如何重新设计代码的最初的想法是至关重要的。我们使用作为一个案例研究机器人控制系统,并报告一些设计过程中验证和测试过程中发现的建模错误。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号