Towards Containment Checking of Behaviour in Architectural Patterns

Towards Containment Checking of Behaviour in Architectural Patterns

Abstract

The behaviour of architectural patterns must be consistent in terms of the artefacts produced in the various activities of the software development process, such as requirements, software architecture, detailed design and implementation. In this context, high-level models are mainly used to convey the core concepts or principles of the reality they represent in an abstract and/or concise way (e.g., requirements or architecture design). If a specific architectural pattern like model-view-controller is used in such high-level models, the corresponding detailed designs and implementations are also based on the particular pattern. Low-level or detailed design models are used to provide a (more) precise specification of the source code. However, because of the involvement of different stakeholders and independent evolution of software systems, inconsistencies might occur in architectural patterns’ behaviour at those different abstraction levels. Previous studies have not considered the checking of architectural patterns’ behaviour. In this paper, we present a solution to the containment checking problem that verifies whether the behaviour described by a low-level model still is consistent with the pattern specifications provided in its high-level counterparts. Here, the interactions between architectural pattern elements are captured using UML2 sequence diagrams. This paper also aims at providing more informative and comprehensive feedbacks to the stakeholders for identification of violation causes and their resolutions. The applicability of the proposed solution is demonstrated by applying it on three architectural patterns, namely model-view-controller, layers, and pipe and filter. The proposed solutions can also be applied to other types of behaviour models, such as state machines, activity diagrams and BPMN models, as well as other architectural patterns.

Grafik Top
Authors
  • UL Muram, Faiz
  • Tran, Huy
  • Zdun, Uwe
Grafik Top
Shortfacts
Category
Paper in Conference Proceedings or in Workshop Proceedings (Paper)
Event Title
22nd European Conference on Pattern Languages of Programs (EuroPLoP 2017)
Divisions
Software Architecture
Subjects
Software Engineering
Event Location
Irsee in Bavaria, Germany
Event Type
Conference
Event Dates
12-16 July 2017
Page Range
pp. 1-19
Date
2017
Export
Grafik Top