一种基于行为规则的程序特征定位方法
2015-07-21宋艳王炜
科技与创新 2015年12期
宋艳++王炜



摘 要:程序特征定位是成功实施动态演化意图的前提条件,其核心是识别代码集合与特征之间的映射关系。将程序运行时有规律的消息传递模式抽象为规则,通过规则获取和注释识别了程序特征与代码集合之间的映射关系,提出了规则空间用于刻画程序特征间存在的大小和层次等粒度属性,并基于此实现了对复杂程序特征的层次化理解,完成了特征定位。通过对Eclipse3.0的45个测试用例(含4822个对象)进行分析,在置信度和支持度设置为75%和30%的情况下,生成了645条规则和规则空间,实现了特征定位。其平均准确率为34.33%,这证明该方法是可行的。
关键词:软件动态演化;程序特征;行为规则;特征定位
中图分类号:TP311.5 文献标识码:A DOI:10.15913/j.cnki.kjycx.2015.12.001
特征定位(Feature Location)是指构建程序特征与软件代码之间映射关系的过程,它将来自系统问题域的特征映射到了系统实现域的代码实体(Source Code Entities)。IEEE 829认为,程序的特征是“一个软件项目的显著特点”,例如功能、可移植性或性能特性。文献2中指出,在长生命周期软件系统中,50%~75%的系统成本和相关费用用于软件维护,其中1/2以上的工作量用于特征定位。
各国研究人员针对特征定位开展了广泛而深入的研究,提出了静态、动态和基于文本的特征定位方法。其中,由于动态方法具有比较高的查准率,所以,其被广泛应用于特征定位领域。1995年,Wilde提出了最早的动态特征定位方法——软件侦测技术。该方法关注获取特征与代码实体之间的特定追踪关系。……
登录APP查看全文
