Automated software remodularization based on move refactoring - A complex systems approach
dc.contributor.author | Scholtes, Ingo | |
dc.contributor.author | Zanetti, Marcelo Serrano | |
dc.contributor.author | Tessone, Claudio Juan | |
dc.contributor.author | Schweitzer, Frank | |
dc.contributor.editor | Aßmann, Uwe | |
dc.contributor.editor | Demuth, Birgit | |
dc.contributor.editor | Spitta, Thorsten | |
dc.contributor.editor | Püschel, Georg | |
dc.contributor.editor | Kaiser, Ronny | |
dc.date.accessioned | 2017-06-30T20:56:07Z | |
dc.date.available | 2017-06-30T20:56:07Z | |
dc.date.issued | 2015 | |
dc.description.abstract | Modular design is a desirable characteristic that fosters the comprehensibility and thus maintainability of software systems. While many software systems are initially created in a modular way, over time modularity typically degrades. In our work, we propose an automated strategy to remodularize software based on move refactorings, i.e. moving classes between packages without changing other aspects of the source code. Taking a complex systems perspective, our approach applies network theory to the dynamics of software dependency structures. Drawing inspiration from statistical physics, we use the Potts Spin Model and turn it into a stochastic remodularization algorithm which is based on probabilistically moving classes between modules. We test our method on 39 open source JAVA software projects. Comparing the modular structure produced by developers with that optimized by our algorithm, we find that our method is able to improve modularity by an average of $166 \pm 77$ percent. Our work highlights the potential of interdisciplinary applications of methods from the statistical physics perspective on complex systems to software engineering. | en |
dc.identifier.isbn | 978-3-88579-633-6 | |
dc.identifier.pissn | 1617-5468 | |
dc.language.iso | en | |
dc.publisher | Gesellschaft für Informatik e.V. | |
dc.relation.ispartof | Software-engineering and management 2015 | |
dc.relation.ispartofseries | Lecture Notes in Informatics (LNI) - Proceedings, Volume P-239 | |
dc.title | Automated software remodularization based on move refactoring - A complex systems approach | en |
dc.type | Text/Conference Paper | |
gi.citation.endPage | 86 | |
gi.citation.publisherPlace | Bonn | |
gi.citation.startPage | 85 | |
gi.conference.date | 17.-20. März 2015 | |
gi.conference.location | Dresden |
Dateien
Originalbündel
1 - 1 von 1