Mining Architectural Violations from Version History - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Journal Articles Empirical Software Engineering Year : 2016

Mining Architectural Violations from Version History


Software architecture conformance is a key software quality control activity that aims to reveal the progressive gap normally observed between concrete and planned software architectures. However, formally specifying an architecture can be difficult, as it must be done by an expert of the system having a high level understanding of it. In this paper, we present a lightweighted approach for architecture conformance based on a combination of static and historical source code analysis. The proposed approach relies on four heuristics for detecting absences (something expected was not found) and divergences (something prohibited was found) in source code based architectures. We also present an architecture conformance process based on the proposed approach. We followed this process to evaluate the architecture of two industrial-strength information systems, achieving an overall precision of 62.7% and 53.8%. We also evaluated our approach in an open-source information retrieval library, achieving an overall precision of 59.2%. We envision that an heuristic-based approach for architecture conformance can be used to rapidly raise architectural warnings, without deeply involving experts in the process.
Fichier principal
Vignette du fichier
2015_emse.pdf (1.85 Mo) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01075642 , version 1 (19-10-2014)



Cristiano Maffort, Marco Tulio Valente, Ricardo Terra, Mariza Bigonha, Nicolas Anquetil, et al.. Mining Architectural Violations from Version History. Empirical Software Engineering, 2016, 21 (3), pp.41. ⟨10.1007/s10664-014-9348-2⟩. ⟨hal-01075642⟩
273 View
195 Download



Gmail Facebook Twitter LinkedIn More