在关于逆向工程的描述中,正确的是( )_。

admin2015-05-22  22

问题 在关于逆向工程的描述中,正确的是(       )_。

选项 A、按照“输出→处理→输入”的顺序设计软件
B、用硬件来实现软件的功能
C、从已经安装的软件中提取设计规范,用于进行软件开发
D、根据软件处理的对象来选择开发语言和开发工具

答案C

解析 逆向工程(Reverse Engineering)又叫反向工程,其概念来自于硬件。硬件厂商总想弄到竞争对手产品的设计和制造的“奥秘”,但是又得不到现成的档案,只好拆卸对手的产品并进行分析,导出该产品的一个或多个设计与制造的规格说明。
    软件的逆向工程是完全类似的,由于受到法律的约束,进行逆向工程的程序常常不是竞争对手的,而是自己开发的程序,有些是多年以前开发出来的。这些程序没有规格说明,开发人员可能早已辞职,导致相关人员对软件的了解很模糊。因此,软件的逆向工程是分析程序,力图在比源代码更高的抽象层次上建立程序表示的过程。逆向工程是一个设计恢复的过程,其工具可以从已有的程序中抽取数据结构、体系结构和程序设计信息。
    因此,逆向工程可以从源程序抽取出设计信息,但是,抽象的层次、文档的完整性、工具和分析员一起工作的程度、以及过程的方向性却是高度可变的。
    逆向工程过程及用于实现该过程的工具的抽象层次,是指可从源代码中抽取出来的设计信息的精密程度。在理想情况下,抽象层次应该尽可能高,即逆向工程过程应该能够导出过程的设计表示(一种低层的抽象)、程序和数据结构信息(稍高一点层次的抽象)、数据和控制流模型(一种相对高层的抽象),以及实体.关系模型(一种高层抽象)。随着抽象层次增高,软件工程师将获得更有助于理解程序的信息。
转载请注明原文地址:https://kaotiyun.com/show/OcGZ777K
0

相关试题推荐
最新回复(0)