{"title":"Inconsistency Management between Architectural Decisions and Designs Using Constraints and Model Fixes","authors":"Ioanna Lytra, Uwe Zdun","doi":"10.1109/ASWEC.2014.33","DOIUrl":null,"url":null,"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.","PeriodicalId":430257,"journal":{"name":"2014 23rd Australian Software Engineering Conference","volume":"7 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2014 23rd Australian Software Engineering Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ASWEC.2014.33","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4
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.