Towards Automated Software Architecture Explanation: An AI-enabled method and industrial evaluation

Satrio Rukmono

(Co-)promotors: prof.dr. M.R.V. Chaudron (TU/e), dr. L.M. Ochoa Venegas (TU/e)
Eindhoven University of Technology
Date: 20 May 2026

Summary

Many modern software systems are large, long-lived, and continuously evolving. As systems grow in size and complexity, understanding their architecture—how components are structured, how they interact, and why design decisions were made—becomes increasingly difficult. In practice, architectural knowledge is often incomplete, outdated, or scattered across informal artefacts and personal expertise, and is therefore frequently conveyed through ad-hoc explanations rather than systematic documentation. This dissertation examines how software architecture explanations can be supported, structured, and partially automated in a way that aligns with real-world practice.

The central contribution of this dissertation is a framework for automated, context-aware software architecture explanation. The work is structured around five research questions spanning explanation practice, knowledge representation, enrichment, and presentation. Rather than treating explanation as a purely linguistic or visual task, the dissertation conceptualises explanation as a pipeline that incrementally transforms raw code into user-aligned architectural insight.

The dissertation begins with an empirical study of practising software engineers, investigating how architecture explanations are produced and consumed in practice. The study shows that explanations are layered, goal-driven, and highly sensitive to audience and task. Explanations typically combine multiple artefacts and operate within bounded regions of scope and detail, motivating the need for explanation mechanisms that can adapt content and abstraction levels to situational needs.

Building on these findings, the dissertation introduces the Software Architecture/Analysis Basic Ontology (SABO), a language-agnostic representation of software structure. SABO models software systems as labelled property graphs that capture code elements and their relations while preserving traceability across abstraction levels. Designed explicitly to support explanation, SABO provides a unified substrate for subsequent architectural analysis and interpretation.

To derive architectural meaning from structure, the dissertation proposes Deductive Software Architecture Recovery (DSAR), an enrichment approach that combines bottom-up code extraction with top-down architectural descriptions expressed in natural language. DSAR maps structural elements to architectural concepts such as layers and responsibilities, producing representations that better align with how practitioners reason about systems.

The dissertation further investigates how enriched architectural knowledge can be presented to human explainees. Interactive visualisation tools support exploration and abstraction over architectural structures, while natural-language explanations generated using Retrieval-Augmented Generation (RAG) ground fluent explanations in SABO-based knowledge graphs. Together, these approaches demonstrate how architectural knowledge can be translated into usable explanations across visual and textual modalities.

In synthesis, the dissertation integrates these contributions into a framework structured around three pillars: representation of factual software structure, enrichment through architectural interpretation, and presentation of user-aligned explanations, coordinated by the principle of context adaptation. Rather than replacing human architectural reasoning, the framework aims to reduce friction in recurring explanation tasks such as onboarding and maintenance, and to support sustained understanding of complex software systems.

Scroll to Top