Skip to Main Content
The framework of aspect-oriented software reverse engineering is proposed for the solution of comprehension and evolution problems of crosscutting properties in legacy system. Based on it, an approach of use-cases driven formal concept analysis is discussed. The goal of this approach is recovering system's crosscutting concerns on requirements level. With the approach, execution profiles of legacy system are analyzed using concept lattices and the invoked computational units that traverse system's use-case models can be identified. Finally, they can be abstracted into early-aspects for re-engineering of the legacy systems with AOSD (Aspect-Oriented Software Development). Compared with existing aspect-mining techniques, which are mainly applied for refactoring legacy system's program source codes, this given approach is more effective when it is used for comprehending and evolving legacy system on higher abstract level. The results of case study show that quite a few crosscutting properties of legacy system can be recovered at requirements level with the introduced domain knowledge.