摘要
在现代软件工程中 ,逆向工程是软件维护、软件重工程、软件重用和软件重结构中的起点 ,它本身是一个设计知识发现、知识抽象的过程 ,而面向对象软件和传统软件相比有着自己的语言特点和不同的设计知识内容 通过对面向对象程序中知识类别和逆向工程过程的分析 ,总结出了面向对象软件逆向工程的基本知识内容 ,并以此为分类线索 ,综述了目前此领域中具有代表性的技术、工具和研究方向
In modern software engineering, software reverse engineering is the first step of software maintenance, software reengineering, software reuse and software restructure It actually is a design recovery and knowledge abstracting process The differences between object oriented language and procedural language demand other reverse engineering techniques In this paper, the design knowledge in object oriented design and the software reverse engineering process are thoroughly analyzed According to the analysis result, the contents of object oriented software reverse engineering are summarized and a classification method about its techniques is proposed Then, the representative techniques, tools and research directions in this area are surveyed Finally, further research directions of general interest on this topic are proposed
出处
《计算机研究与发展》
EI
CSCD
北大核心
2003年第7期1062-1068,共7页
Journal of Computer Research and Development
基金
国家自然科学基金 ( 60 2 72 0 3 1)
浙江省自然科学基金 (ZD0 2 12 )
浙江省科技计划基金 ( 2 0 0 3C2 10 10 )
关键词
软件工程
逆向工程
面向对象
软件理解
设计知识
software engineering
reverse engineering
object oriented
software comprehension
design knowledge