逆向工程分类
从广义讲,逆向工程可分以下三类。
(1)实物逆向:顾名思义,它是在已有实物条件下,通过试验、测绘和分 折。提出再创造的关键;其中包括功能逆向、性能逆向、方案、结构、材质、 精度、使用规范等多方面的逆向。实物逆向对象可以是整机、部件、组件和 零件。 (2)软件逆向:产品样本、技术文件、设计书、使用说明书、图纸、有关 规范和标准、管理规范和质量保证手册等均称为技术软件。软件逆向中有三 类情况:1)既有实物,又有全套技术软件;2)有实物而无技术软件;3)无实 物,仅有全套或部分技术软件。 (3)影像逆向:无实物,无技术软件,仅有产品相片、图片、广告介绍、 参观印象和影视画面等,要从其中去构思、想象来逆向,称为影像逆向,这 是逆向对象中难度最大的。影像逆向本身就是创新过程。目前还未形成成熟 的技术。一般要利用透视变换和透视投影.形成不同透视图,从外形、尺寸、 比例和专业知识,去琢磨其功能和性能,进而分析其内部可能的结构。
正向工程:从高层抽象和独立于实现的逻辑设计到一个系统的物理实现的传 统开发过程。 逆向工程:分析目标系统,认定系统的构件及其交互关系,并且通过高层抽 象或其它形式来展现目标系统的过程。
c)再文档:主要是在同一抽象层次做语义等价描述,实际上是逆向工程的 一种简单形式; d)设计再现:利用领域知识和外部信息在较高抽象层次产生系统的等价描 述,这样要使用除了源代码外的很多信息; e)重构:在同一抽象层次把系统从一种表示方式转换到另一种表示方式, 一个重要方面是新系统和原始系统的语义行为应该一样,而且功能也不 能变; f)再工程:目的是研究系统,产生较高抽象层次描述,增加新功能到这个描 述,使用正向工程技术在原始系统的基础上开发一个新系统。
逆向工程,有的人也叫反求工程、反向工程(Reverse Engineering,RE), 是20世纪80年代末期发展起来的一项先进制造技术,是以产品及设备的实 物、软件(图样、程序及技术文件等)或影像(图片、照片等)为研究对 象,反求出初始的设计意图。简单地说,就是指用一定的测量手段对实物 或模型进行测量,根据测量数据通过三维几何建模方法重构实物的CAD模型 的过程,是一个从样品生成产品数字化信息模型,并在此基础上进行产品设计 开发及生产的全过程。 在软件工程领域,迄今为止没有统一的逆向工程定义。较为通用的是Elliot Chikafsky和Cross在文献中定义的逆向工程的相关术语。