arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2001.02467cs.SE
收藏

比较从执行过程中挖掘的约束以理解软件演化

Comparing Constraints Mined From Execution Logs to Understand Software Evolution

Thomas Krismayer, Michael Vierhauser, Rick Rabiser, Paul Grünbacher

摘要:

复杂的软件系统经常演变,例如,在维护期间引入新功能或修复错误时。然而,理解这种变化对系统行为的影响往往是困难的。因此,已经提出了许多方法来分析变化之前和之后的系统,例如,通过比较源代码、基于模型的表示或系统执行日志。在本文中,我们提出了一种比较运行时的约束,合成的约束挖掘算法,根据执行日志记录前后的变化。具体而言,自动挖掘的约束定义了重复发生事件的预期时间和顺序以及附加到事件的数据元素的值。我们的方法提出了不同的挖掘约束的用户,从而提供了一个更高层次的软件演化的看法,并支持对系统行为的变化的影响分析。我们提出了一个激励的例子和初步评估的基础上控制无人机的网络物理系统。我们的初步评估结果表明,我们的方法可以帮助分析改变的行为,从而有助于理解软件演化。

英文摘要:

Complex software systems evolve frequently, e.g., when introducing new features or fixing bugs during maintenance. However, understanding the impact of such changes on system behavior is often difficult. Many approaches have thus been proposed that analyze systems before and after changes, e.g., by comparing source code, model-based representations, or system execution logs. In this paper, we propose an approach for comparing run-time constraints, synthesized by a constraint mining algorithm, based on execution logs recorded before and after changes. Specifically, automatically mined constraints define the expected timing and order of recurring events and the values of data elements attached to events. Our approach presents the differences of the mined constraints to users, thereby providing a higher-level view on software evolution and supporting the analysis of the impact of changes on system behavior. We present a motivating example and a preliminary evaluation based on a cyber-physical system controlling unmanned aerial vehicles. The results of our preliminary evaluation show that our approach can help to analyze changed behavior and thus contributes to understanding software evolution.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑