论文部分内容阅读
软件在生命周期中一直在发生演化,对软件演化的分析可以揭示软件发展的一些基本规律。现有方法通常使用改变的代码行数作为软件演化的指标,但是这项指标不能反映软件架构的变化,也不能帮助理解软件演化的具体情况。使用抽象语法树匹配ATS(Abstract Syntax Tree)进行代码分析能够更清楚地了解软件中发生改变的具体内容。针对Java语言编写的软件,可以了解静态域的添加、删除和类型修改;类的添加、删除、类型修改和方法体修改。这些信息能更好地帮助理解软件演化。