Rule Type Based Reasoning on Architecture Violations: A Case Study

Publication date

2016

Authors

Pruijt, Leo
Wiersema, Wiebe
van der Werf, Jan Martijn E. M.ORCID 0000-0002-7264-381XISNI 0000000119806432
Brinkkemper, SjaakISNI 0000000374861981

Editors

Advisors

Supervisors

Document Type

Part of book
Open Access logo

License

taverne

Abstract

Software architecture compliance checking (SACC) is an approach to monitor the consistency between the intended and the implemented architecture. In case of static SACC, the focus is mainly on the detection of dependencies that violate architectural relation rules. Interpretation of reported violations may be cumbersome, since the violations need to be connected to architectural resolutions and targeted qualities such as maintainability and portability. This paper describes an SACC case study which shows that inclusion of different types of rules in the SACC process enhances reasoning on architecture violations, especially if a rule type is related to specific architectural pattern. The SACC is performed with HUSACCT, an SACC-tool that provides rich sets of module and rule types in support of patterns such as layers, facade, and gateway. The case system is a governmental system developed in C#, which follows the .NET common application architecture. Even though the system appeared to be well-structured, the SACC revealed that 10 of the 17 architectural rules were violated.

Keywords

Taverne

Citation

Pruijt, L, Wiersema, W, van der Werf, J M E M & Brinkkemper, S 2016, Rule Type Based Reasoning on Architecture Violations: A Case Study. in Software Architectures (QRASA), 2016 Qualitative Reasoning about. IEEE. https://doi.org/10.1109/QRASA.2016.7