Reverse engineering: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Hi-index | 0.00 |
This tutorial discusses the problem of identifying candidate software components from legacy systems and determining their reuse potential for insertion in a new architecture, particularly in a software product line architecture. The tutorial outlines Options Analysis for Reengineering (OAR), which is a systematic method for evaluating the feasibility and benefits of mining existing components for a product line. OAR operates like a funnel in which a set of potential assets is screened out so that the effort can focus on those components that will most effectively meet the technical and programmatic needs of the target architecture. The method incorporates a set of scalable techniques and exercises to collaboratively analyze existing components, determine viable mining options, and evaluate the most promising options. It provides a structured approach to determine the cost, effort, and risk of mining a set of software components from legacy systems.