|
计算机科学 2002
On A Multi-agent based Program Understanding Theory and Methods
|
Abstract:
一、引言软件逆向工程的研究是软件工程领域的一个重要而实用的研究内容。逆向工程是在给定源代码的情况下理解软件结构的一个途径,其目的是标识软件系统中的构造块,抽取结构依赖关系,为系统创造另一种更高抽象形式的表示。软件逆向工程是基于以下的假设:构造软件系统的过程是从问题域到实现域的映射过程,这种映射是在正向工程中完成的,而且也是一个可逆的过程,可以在不同的抽象级别上被重构。程序理解是软件逆向工程的一个重要组成部分,程序理解技术的研究具有广阔的应用前景:如1)对软件复用的支持,用于标识可复用的软构件;2)对软件测试的支持,有助于选择测试用例;3)用于设计验证和错误检测等;4)对软件维护的支