逆向工程
逆向工程是设计的恢复过程
四个过程:
- 实现级
- 包括程序的抽象语法树、符号表、过程的设计表示
- 结构级
- 包括反映程序分量之间的相互依赖关系的信息,例如调用图、结构图、程序和数据结构
- 功能级
- 包括反映程序段功能及程序段之间关系的信息,例如数据和控制流模型
- 领域级
- 包括反映程序分量或程序诸实体与应用概念之间对应关系的信息,例如实体关系模型
相关概念:
- 重构/重组
- 重构是指在【同一抽象级别】上【转换关系描述形式】
- 设计恢复
- 从已有程序中抽象出有关数据设计、总体结构设计和过程设计等方面的信息
- 逆向工程
- 逆向工程是分析程序,力图在比源代码更高抽象层次上建立程序的表示过程,逆向工程是设计的恢复过程
- 正向工程
- 正向工程是指不仅从现有系统中恢复设计信息,而且使用该信息去改变或重构现有系统,以改善其整体质量
- 再工程/重构工程
- 再工程是对吸纳有系统的重新开发过程,包括逆向工程、新需求的考虑和正向工程三个步骤