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

Ioanna Lytra, Uwe Zdun
2014 2014 23rd Australian Software Engineering Conference  
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
more » ... 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.
doi:10.1109/aswec.2014.33 dblp:conf/aswec/LytraZ14 fatcat:wapfafou3ffann56aqssmuwp4e