问题
单项选择题
在关于逆向工程(reverse engineering)的描述中,正确的是______。
A.从已经安装的软件中提取设计规范,用以进行软件开发
B.按照“输出→处理→输入”的顺序设计软件
C.用硬件来实现软件的功能
D.根据软件处理的对象来选择开发语言和开发工具
答案
参考答案:A
解析: 逆向工程是软件再生(software rejuvenation)的一种方法。软件再生的4种基本方法是:
①文档重构。它对源代码进行静态分析,从而产生系统文档,帮助维护人员理解和引用源代码。
②结构重组。它对源代码进行重组,重新编写为结构化的源代码,使其复杂性有所降低。
③逆向工程。它通过对源代码进行静态分析得到系统规范和设计信息,并且提取出工程信息,例如模块和变量表、交叉引用表、数据接口表、测试路径等。
④再工程。它是逆向工程过程的扩展,根据逆向工程抽取的信息,在不改变原系统功能的前提下产生新的系统源代码。