{"title":"架构约束的模块化规范","authors":"Sândalo Bessa, M. T. Valente, Ricardo Terra","doi":"10.1109/SBCARS.2016.23","DOIUrl":null,"url":null,"abstract":"Due to the abstract nature of software architecture concepts, ensuring the correct implementation of architectural decisions is not a trivial task. Divergences between the planned architecture and source code may occur in the early stages of the software development, which denotes a phenomenon known as software architectural erosion. Architectural Conformance Checking techniques have been proposed to tackle the problem of divergences between the planned architecture and source code. Among such techniques, we can note the DCL language (Dependency Constraint Language), which is a domain-specific language that has interesting results in architectural conformance contexts. However, the current version of DCL has some limitations, such as lack of modularity and low degree of reuse, which may prevent its adoption in real software development scenarios. In this master dissertation, we extend DCL with a reusable, modular, and hierarchical specification. We evaluate the extended DCL-named DCL 2.0 by us-in a real-world system used by public State Government of Minas Gerais, Brazil. As main result, we were able to detect 771 architectural violations where 74% of them could only be detected due to the new violations types proposed in DCL 2.0.","PeriodicalId":122920,"journal":{"name":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"Modular Specification of Architectural Constraints\",\"authors\":\"Sândalo Bessa, M. T. Valente, Ricardo Terra\",\"doi\":\"10.1109/SBCARS.2016.23\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Due to the abstract nature of software architecture concepts, ensuring the correct implementation of architectural decisions is not a trivial task. Divergences between the planned architecture and source code may occur in the early stages of the software development, which denotes a phenomenon known as software architectural erosion. Architectural Conformance Checking techniques have been proposed to tackle the problem of divergences between the planned architecture and source code. Among such techniques, we can note the DCL language (Dependency Constraint Language), which is a domain-specific language that has interesting results in architectural conformance contexts. However, the current version of DCL has some limitations, such as lack of modularity and low degree of reuse, which may prevent its adoption in real software development scenarios. In this master dissertation, we extend DCL with a reusable, modular, and hierarchical specification. We evaluate the extended DCL-named DCL 2.0 by us-in a real-world system used by public State Government of Minas Gerais, Brazil. As main result, we were able to detect 771 architectural violations where 74% of them could only be detected due to the new violations types proposed in DCL 2.0.\",\"PeriodicalId\":122920,\"journal\":{\"name\":\"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)\",\"volume\":\"22 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2016-09-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/SBCARS.2016.23\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SBCARS.2016.23","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Modular Specification of Architectural Constraints
Due to the abstract nature of software architecture concepts, ensuring the correct implementation of architectural decisions is not a trivial task. Divergences between the planned architecture and source code may occur in the early stages of the software development, which denotes a phenomenon known as software architectural erosion. Architectural Conformance Checking techniques have been proposed to tackle the problem of divergences between the planned architecture and source code. Among such techniques, we can note the DCL language (Dependency Constraint Language), which is a domain-specific language that has interesting results in architectural conformance contexts. However, the current version of DCL has some limitations, such as lack of modularity and low degree of reuse, which may prevent its adoption in real software development scenarios. In this master dissertation, we extend DCL with a reusable, modular, and hierarchical specification. We evaluate the extended DCL-named DCL 2.0 by us-in a real-world system used by public State Government of Minas Gerais, Brazil. As main result, we were able to detect 771 architectural violations where 74% of them could only be detected due to the new violations types proposed in DCL 2.0.