{"title":"A Lightweight Remodularization Process Based on Structural Similarity","authors":"Ricardo Terra, M. T. Valente, N. Anquetil","doi":"10.1109/SBCARS.2016.24","DOIUrl":null,"url":null,"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.","PeriodicalId":122920,"journal":{"name":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","volume":"2014 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SBCARS.2016.24","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
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.