Discovering architectural rules in practice

Authors Sandra Schröder
Georg Buchgeher
Editors L. Duchien
C. Trubiani
R. Scandariato
et al.
Title Discovering architectural rules in practice
Booktitle Proceedings of the 13th European Conference on Software Architecture - Volume 2 (ECSA '19)
Type in proceedings
Publisher ACM
ISBN 978-1-4503-7142-1
DOI 10.1145/3344948.3344956
Month September
Year 2019
Pages 10-13
SCCH ID# 19070

Architecture conformance checking is an important technique to verify whether a software system's implementation adheres to predefined architectural rules. The adherence to architectural rules is crucial, since architectural rules are intended to ensure that fundamental properties are correctly implemented in the source code. A lot of tools have been proposed and developed for automatic conformance checking. They are also successfully applied in industry. However, those tools mainly focus on the validation of static dependencies between modules or on ensuring the adherence to the layered architecture. In this poster, we present an industrial case study which discovers architectural rules from three industrial projects. This study shows that software architects also define other types of architectural rules that are not yet covered by state-of-the-art conformance checking tools. The architectural rules found in the projects are categorized into architectural rule categories. We use four representative tools as examples and show that the tools are able to formalize only a specific extent of the discovered rules. The results of the study motivate for improving existing tools and to collect further examples of architectural rules that can potentially be reused in projects with similar characteristics.