Towards Living Software Architecture Diagrams

Filipe F. Correia,Ricardo Ferreira,Paulo G. G Queiroz,Henrique Nunes,Matilde Barra,Duarte Figueiredo
2024-07-25
Abstract:Software architecture often consists of interconnected components dispersed across source code and other development artifacts, making visualization difficult without costly additional documentation. Although some tools can automatically generate architectural diagrams, these hardly fully reflect the architecture of the system. We propose the value of automatic architecture recovery from multiple software artifacts, combined with the ability to manually adjust recovered models and automate the recovery process. We present a general approach to achieve this and describe a tool that generates architectural diagrams for a software system by analyzing its software artifacts and unifying them into a comprehensive system representation. This representation can be manually modified while ensuring that changes are reintegrated into the diagram when it is regenerated. We argue that adopting a similar approach in other types of documentation tools is possible and can render similar benefits.
Software Engineering
What problem does this paper attempt to address?