Chen Li, Linpeng Huang, Luxi Chen, Xu Li, Weichao Luo
{"title":"Dynamic software architectures: formal specification and verification with CSP","authors":"Chen Li, Linpeng Huang, Luxi Chen, Xu Li, Weichao Luo","doi":"10.1145/2430475.2430480","DOIUrl":null,"url":null,"abstract":"Compared to the traditional software architecture, Dynamic Software Architectures (DSAs) should be able to describe the changes of the system and to effect modifications during system execution, especially for dynamic evolution. To reflect the changes during system execution, we present a formalism for describing architecture structure and interaction behavior, and we also specify four evolution rules for software architecture. Our work expands the idea in three directions. The first is to formalize the architecture structure and interaction behavior including components, connectors and an architectural reference model. The second direction is that we formalize four dynamic evolution rules which DSAs should support, that is, addition, removal, replacement and reconfiguration. Another direction is that we verify software architecture consistency and integrity after dynamic evolution. We use a client/server application as a running example throughout the paper to demonstrate our approach. Our work provides a precise formal specification for software architecture and a rigorous verification for dynamic evolution.","PeriodicalId":20631,"journal":{"name":"Proceedings of the 8th Asia-Pacific Symposium on Internetware","volume":"27 1","pages":"5:1-5:8"},"PeriodicalIF":0.0000,"publicationDate":"2012-10-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 8th Asia-Pacific Symposium on Internetware","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2430475.2430480","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
Compared to the traditional software architecture, Dynamic Software Architectures (DSAs) should be able to describe the changes of the system and to effect modifications during system execution, especially for dynamic evolution. To reflect the changes during system execution, we present a formalism for describing architecture structure and interaction behavior, and we also specify four evolution rules for software architecture. Our work expands the idea in three directions. The first is to formalize the architecture structure and interaction behavior including components, connectors and an architectural reference model. The second direction is that we formalize four dynamic evolution rules which DSAs should support, that is, addition, removal, replacement and reconfiguration. Another direction is that we verify software architecture consistency and integrity after dynamic evolution. We use a client/server application as a running example throughout the paper to demonstrate our approach. Our work provides a precise formal specification for software architecture and a rigorous verification for dynamic evolution.