首页> 外文会议>IEEE International Conference on Software Maintenance >A change impact analysis to characterize evolving program behaviors
【24h】

A change impact analysis to characterize evolving program behaviors

机译:改变影响分析,以表征不断变化的节目行为

获取原文

摘要

Change impact analysis techniques estimate the potential effects of changes made to software. Directed Incremental Symbolic Execution (DiSE) is an intraprocedural technique for characterizing the impact of software changes on program behaviors. DiSE first estimates the impact of the changes on the source code using program slicing techniques, and then uses the impact sets to guide symbolic execution to generate path conditions that characterize impacted program behaviors. DiSE, however, cannot reason about the flow of impact between methods and will fail to generate path conditions for certain impacted program behaviors. In this work, we present iDiSE, an extension to DiSE that performs an interprocedural analysis. iDiSE combines static and dynamic calling context information to efficiently generate impacted program behaviors across calling contexts. Information about impacted program behaviors is useful for testing, verification, and debugging of evolving programs. We present a case-study of our implementation of the iDiSE algorithm to demonstrate its efficiency at computing impacted program behaviors. Traditional notions of coverage are insufficient for characterizing the testing efforts used to validate evolving program behaviors because they do not take into account the impact of changes to the code. In this work we present novel definitions of impacted coverage metrics that are useful for evaluating the testing effort required to test evolving programs. We then describe how the notions of impacted coverage can be used to configure techniques such as DiSE and iDiSE in order to support regression testing related tasks. We also discuss how DiSE and iDiSE can be configured for debugging; finding the root cause of errors introduced by changes made to the code. In our empirical evaluation we demonstrate that the configurations of DiSE and iDiSE can be used to support various software maintenance tasks.
机译:更改影响分析技术估计对软件所做的更改的潜在影响。定向增量符号执行(禁用)是一种用于表征软件变化对节目行为的影响的跨型技术。禁用首先估计使用程序切片技术对源代码的更改的影响,然后使用影响集来指导符号执行以生成特征受影响程序行为的路径条件。然而,禁用无法推理方法之间的影响,并且将无法为某些受影响的程序行为产生路径条件。在这项工作中,我们呈现IDISE,延伸禁用进行中转分析。 IDISE结合了静态和动态调用上下文信息,以在呼叫上下文中有效地生成受影响的程序行为。有关受影响的程序行为的信息对于测试,验证和调试不断变化的程序有用。我们展示了我们对idise算法实施的案例研究,以展示其在计算受影响的程序行为时的效率。传统覆盖范围的概念不足以表征用于验证不断变化的程序行为的测试工作,因为它们没有考虑到代码更改的影响。在这项工作中,我们提出了对受影响的覆盖度量的小说定义,可用于评估测试不断发展的计划所需的测试工作。然后,我们描述了受影响的覆盖范围的概念如何配置诸如禁用和识别的技术,以支持与回归测试相关的任务。我们还讨论如何配置禁用和夹具以进行调试;找到对代码所做的更改引入的错误的根本原因。在我们的实证评估中,我们证明了禁用和idise的配置可用于支持各种软件维护任务。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号