Capturing and understanding the drift between design, implementation, and documentation
Informazioni aggiuntive
Autori
Romeo J.,
Raglianti M.,
Nagy C.,
Lanza M.
Tipo
Contributo in atti di convegno
Anno
2024
Lingua
Inglese
Sommario
UML artifacts constitute a key (but often neglected) asset supporting the comprehension of a system. Design documents "bind" developers in implementation phases and close the loop as documentation of the implemented system itself. Nevertheless, the intended system (design), its current version (implementation), and its documentation, naturally tend to drift apart, negatively impacting the usefulness of UML diagrams contained in such artifacts. We present a novel approach to capture and understand the Design-Implementation-Documentation (DID) drift. We connect UML references in human-readable text-based UML formats (e.g., PlantUML) to the corresponding source code entities (e.g., Java classes), implementing novel metrics to capture the UML coverage of the system. We analyze project and file coverage evolution across releases and commits, with overall, method-level, and attributelevel detailedness, showing how they support DID drift analysis. We present interesting case studies exemplifying how through Drifter, the visual exploration tool we developed to validate our approach, we identify DID drift and ways to tackle it in the future.
Parole chiave
Design implementation documentation drift, DID drift, UML
Titolo atti di convegno
Proceedings of the 32nd IEEE/ACM International Conference on Program Comprehension (ICPC '24)
Pagine (o numero dell’articolo)
382–386
Diffusione
Licenza
Licenza non definita
Visibilità
Pubblico
Status open access
Green