A Lightweight Remodularization Process Based on Structural Similarity

Abstract

Erosion process, when neglected over long periods, may reduce the concrete architecture to a small set of strongly-coupled and weakly-cohesive components. This nullifies the benefits provided by an architectural design, such as maintainability, scalability, portability, etc. In this scenario, the solution might be only achieved through a complete remodularization process. However, most remodularization approaches are heavyweight and lack tool support. This paper, therefore, proposes a lightweight and tool supported remodularization process based on structural similarity. The process is centered on the observation that the remodularization of a software system can be achieved by successive applications of Move Class, Move Method, and Extract Method refactorings. We evaluate the process in a modified version of an open-source software achieving a recall of 100% and a precision of 50%. The design decisions of the proposed process-such as the use of structural similarity, non-implementation of preconditions, and identification of the target entity on demand-were also evaluated obtaining outcome results.

DOI: 10.1109/SBCARS.2016.24

Cite this paper

@article{Terra2016ALR, title={A Lightweight Remodularization Process Based on Structural Similarity}, author={Ricardo Terra and Marco Tulio Valente and Nicolas Anquetil}, journal={2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)}, year={2016}, pages={111-120} }