Inconsistency Management Between Architectural Decisions and Designs Using Constraints and Model Fixes

Inconsistency Management Between Architectural Decisions and Designs Using Constraints and Model Fixes

Abstract

The software architecture community has proposed to document the design rationale of software architectures by means of architectural design decisions (ADDs). The constant evolution of software systems requires that both architectural designs and corresponding ADDs are continuously documented and synchronized. However, in practice, designs and ADDs become inconsistent over time. Usually, the potential inconsistencies need to be detected and resolved manually. We propose to alleviate this problem by providing semi-automated support for detecting and handling these inconsistencies. For this, we use constraints for consistency checking between reusable ADDs and component-and-connector (C&C) models. These constraints apply on the C&C models and their invalidation is resolved by software architects either 1) by executing automatically suggested model fixes on the C&C models, or 2) by reconsidering ADDs and subsequently updating the corresponding C&C diagrams, in order to align designs to decisions. We demonstrate our approach in the context of a case study and evaluate its efficiency and scalability.

Grafik Top
Authors
  • Lytra, Ioanna
  • Zdun, Uwe
Grafik Top
Shortfacts
Category
Paper in Conference Proceedings or in Workshop Proceedings (Full Paper in Proceedings)
Event Title
23rd Australasian Software Engineering Conference (ASWEC) 2014
Divisions
Software Architecture
Subjects
Software Engineering
Event Location
Sydney, Australia
Event Type
Conference
Event Dates
7-10 April
Page Range
pp. 230-239
Date
April 2014
Export
Grafik Top