{"title":"UML-based tool support for separating application and architectural evolution","authors":"T. Mikkonen, Mika Pussinen","doi":"10.1109/IWPSE.2004.1334770","DOIUrl":null,"url":null,"abstract":"In analogy to civil engineering, the \"load-bearing walls\" of a software system bear significant importance for software evolution. Unfortunately, documentation and evolution of such \"walls\" in the form of software architecture has proven to be problematic, because instead of individual classes and objects, the important artifacts may be collections of design elements and their relations, whose collective evolution should be considered. In this paper, we introduce a tool where architecturally significant concepts, defined in the form of patterns, can be separated from application specific details. This separation allows diverging evolution of applications and patterns forming their architecture, with an option to enforce the architecture in applications. Moreover, the tool helps in correcting the designs in case an error has been made or patterns forming the architecture have been upgraded.","PeriodicalId":359040,"journal":{"name":"Proceedings. 7th International Workshop on Principles of Software Evolution, 2004.","volume":"37 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2004-09-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings. 7th International Workshop on Principles of Software Evolution, 2004.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IWPSE.2004.1334770","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
In analogy to civil engineering, the "load-bearing walls" of a software system bear significant importance for software evolution. Unfortunately, documentation and evolution of such "walls" in the form of software architecture has proven to be problematic, because instead of individual classes and objects, the important artifacts may be collections of design elements and their relations, whose collective evolution should be considered. In this paper, we introduce a tool where architecturally significant concepts, defined in the form of patterns, can be separated from application specific details. This separation allows diverging evolution of applications and patterns forming their architecture, with an option to enforce the architecture in applications. Moreover, the tool helps in correcting the designs in case an error has been made or patterns forming the architecture have been upgraded.