A Lightweight Remodularization Process Based on Structural Similarity

  • Ricardo Terra UFLA
  • Marco Tulio Valente UFMG
  • Nicolas Anquetil INRIA

Resumo


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.
Palavras-chave: Software, Visualization, Computer architecture, Electronic mail, Java, Concrete, remodularization, structural similarity, refactoring
Publicado
19/09/2016
TERRA, Ricardo; VALENTE, Marco Tulio; ANQUETIL, Nicolas. A Lightweight Remodularization Process Based on Structural Similarity. In: SIMPÓSIO BRASILEIRO DE COMPONENTES, ARQUITETURAS E REUTILIZAÇÃO DE SOFTWARE (SBCARS), 10. , 2016, Maringá/PR. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2016 . p. 111-120.