Multi-Objective Reconstruction Of Software Architecture
This addresses the need for tools to assist software architects in managing legacy systems, though it is incremental as it focuses on evaluating existing algorithms for a specific domain.
The paper tackles the problem of design erosion in legacy software systems by evaluating a Search Based Software Engineering approach to reconstruct high-level architecture designs from low-level artefacts, finding that metaheuristic search algorithms can handle high-dimensional objectives to support trade-off analysis in architecture reconstruction.
Design erosion is a persistent problem within the software engineering discipline. Software designs tend to deteriorate over time and there is a need for tools and techniques that support software architects when dealing with legacy systems. This paper presents an evaluation of a Search Based Software Engineering (SBSE) approach intended to recover high-level architecture designs of software systems by structuring low-level artefacts into high-level architecture artefact configurations. In particular , this paper describes the performance evaluation of a number of metaheuristic search algorithms applied to architecture reconstruction problems with high dimensionality in terms of objectives. These problems have been selected as representative of the typical challenges faced by software architects dealing with legacy systems and the results inform the ongoing developed of a software tool that supports the analysis of trade-offs between different reconstructed architectures.