软件再工程

软件再工程(software reengineering)是指对既存软件系统进行调查,并重新开发的过程,其目的是重新審視現有的系統,以便進一步利用新技術來改善系統或促進現存系統的再利用。

名词由来

契科夫斯基克罗斯1990年的论文《Reverse Engineering and Design Recovery: A Taxonomy》当中首先提出该定义为:检查现有的系统,并试图进行修改或重构而组成新的模式。

在某些不正式的场合,软件再工程也被用于泛指对软件进行修改以增加新的功能或除错。

软件再工程有时候被与另一个定义:‘软件反求工程’(software reverse engineering,或称逆向工程)相混淆。比较准确地说,反求工程用于软件的起始建造阶段,而再工程用于软件后续的修改阶段。

参考文献

  • Chikofsky, E. and Cross, J., 1990. Reverse Engineering and Design Recovery: A Taxonomy. IEEE Software, 7(1):13-18.

外部链接