Hierarchical Code-to-Architecture Mapping
2022 (English)In: Software Architecture: 15th European Conference, ECSA 2021 Tracks and Workshops; Växjö, Sweden, September 13–17, 2021, Revised Selected Papers / [ed] Patrizia Scandurra; Matthias Galster; Raffaela Mirandola; Danny Weyns, Springer, 2022, p. 86-104Conference paper, Published paper (Refereed)
Abstract [en]
Automating the mapping of a system’s code to its architecture is important in improving the adoption of successful Software Architecture Consistency Checking (SACC) methods like Reflexion Modelling. InMap is an interactive and iterative code-to-architecture mapping recommendation approach that achieves a rather decent recall and precision of 0.97 and 0.82 respectively, using minimal architecture documentation to apply natural language techniques to a software’s codebase. Nevertheless, InMap like most other automated recommendations techniques maps to architectural modules, low-level source code units like classes. For large complex systems, this can still hinder adoption due to the review effort required by a software architect when accepting or rejecting the recommendations. In this paper, we present a hierarchical package mapping technique that provides recommendations for higher-level source code units, i.e. packages. It utilizes InMap’s information retrieval capabilities to recommend mappings between the software’s packages and its architectural modules. We show that using our proposed technique we are able to reduce the recommendation review effort required by an architect, by 95% on average, for the six systems tested, and still achieve a code coverage of 75%.
Place, publisher, year, edition, pages
Springer, 2022. p. 86-104
Series
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 13365
Keywords [en]
Computer programming languages, Computer software maintenance, Iterative methods, Software architecture, Automated source code mapping, Consistency checking, ITS architecture, Large complex systems, Natural language techniques, Recall and precision, Recommendation techniques, Software architecture conformance, Software architecture consistency, Source codes, Mapping
National Category
Computer and Information Sciences
Research subject
Computer Science
Identifiers
URN: urn:nbn:se:kau:diva-91875DOI: 10.1007/978-3-031-15116-3_5ISI: 000874750000005Scopus ID: 2-s2.0-85136984508ISBN: 978-3-031-15115-6 (print)ISBN: 978-3-031-15116-3 (electronic)OAI: oai:DiVA.org:kau-91875DiVA, id: diva2:1695338
Conference
15th European Conference on Software Architecture, ECSA 2021, 13-17 September, 2021. Växjö, Sweden.
2022-09-132022-09-132022-11-11Bibliographically approved