论文部分内容阅读
对象行为协议对于理解对象行为语义、对象行为验证、测试以及指导其他开发者正确使用对象所提供的外部行为都有十分重要的意义。然而在很多遗产系统中,对象行为协议常常缺失或随着长期的代码维护而出现不一致。针对这一问题,本文提出了一种静态的对象行为协议逆向恢复方法。该方法首先通过源代码分析获取对象(类)内部各方法之间直接和间接的依赖关系,然后在对象(类)内部依赖关系的基础上构建行为协议状态机。由于对象(类)内部的依赖关系是对象行为约束的主要根源,而静态分析具有全面、准确的优点,因此该方法获得的行为协议具有较好的准确性