arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv cs/0503068cs.SE
收藏

逆向工程与程序理解综述

A Survey of Reverse Engineering and Program Comprehension

Michael L. Nelson

摘要:

逆向工程已经成为硬件社区的标准实践有一段时间了。仅仅在过去的十年里,逆向工程,或“程序理解”,已经成长为软件工程的当前子学科。传统的软件工程主要集中在新软件的开发和设计上。然而,大多数程序员都在其他人设计和开发的软件上工作。一个软件维护人员可能会花费50%的时间来确定源代码的意图。由于客户服务器和万维网技术的激增,对重新评估和重新实施遗留软件系统的需求日益增长,这突出了对逆向工程工具和技术的需要。本文介绍了逆向工程的相关术语,并给出了使逆向工程难以实施的一些障碍。虽然逆向工程仍然严重依赖于人类的组成部分,一些自动化的工具,提出了帮助逆向工程。

英文摘要:

Reverse engineering has been a standard practice in the hardware community for some time. It has only been within the last ten years that reverse engineering, or "program comprehension", has grown into the current sub-discipline of software engineering. Traditional software engineering is primarily focused on the development and design of new software. However, most programmers work on software that other people have designed and developed. Up to 50% of a software maintainers time can be spent determining the intent of source code. The growing demand to reevaluate and reimplement legacy software systems, brought on by the proliferation of clientserver and World Wide Web technologies, has underscored the need for reverse engineering tools and techniques. This paper introduces the terminology of reverse engineering and gives some of the obstacles that make reverse engineering difficult. Although reverse engineering remains heavily dependent on the human component, a number of automated tools are presented that aid the reverse engineer.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑