软件演化中的修改模式的分析与研究
程序员在进行软件维护时往往需要考虑代码之间的依赖关系而修改多处代码。目前软件中普遍存在大量采用不同编程语言编写的辅助文件,采用程序分析的方法难以发现与其有关的依赖关系。本文采用频繁模式挖掘的方法对软件演化历史进行挖掘,发现修改模式,即在历史上相对频繁的同时发生修改的方法和辅助文件集合。本文采用抽象语法树比较的方法提取发生修改的方法,以开源项目Eclipse为例进行分析,提取其修改模式,抽样统计修改模式中的结构关系和非结构关系,应用查全率和查准率描述修改模式对代码变化的预测效果。实验表明修改模式既能反映部分程序分析可以发现的结构关系,也可以发现程序分析难以发现的非结构关系,并具有较高的查全率和查准率,能够在一定程度上辅助程序员进行软件修改。
软件演化 模式挖掘 修改模式 软件变化预测
王欢 王晓博 刘超
北京航空航天大学软件工程研究所 北京 100191
国内会议
广州
中文
359-365
2008-11-11(万方平台首次上网日期,不代表论文的发表时间)