Reverse engineering of legacy code exposed

13Citations
Citations of this article
22Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Reverse engineering of large legacy software systems generally cannot meet its objectives because it cannot be cost-effective. There are two main reasons for this. First, it is very costly to 'understand' legacy code sufficiently well to permit changes to be made safely, because reverse engineering of legacy code is intractable in the usual computational complexity sense. Second, even if legacy code could be cost-effectively reverse engineered, the ultimate objective - re-engineering code to create a system that will not need to be reverse engineered again in the future - is presently unattainable. Not just crusty old systems, but even ones engineered today, from scratch, cannot escape the clutches of intractability until software engineers learn to design systems that support modular reasoning about their behavior. We hope these observations serve as a wake-up call to those who dream of developing high-quality software systems by transforming them from defective raw materials.

Cite

CITATION STYLE

APA

Weide, B. W., Heym, W. D., & Hollingsworth, J. E. (1995). Reverse engineering of legacy code exposed. In Proceedings - International Conference on Software Engineering (pp. 327–331). IEEE. https://doi.org/10.1145/225014.225045

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free