{"title":"面向方面的契约式设计","authors":"Tim Molderez, D. Janssens","doi":"10.1145/2162010.2162015","DOIUrl":null,"url":null,"abstract":"Run-time contract enforcement is a useful means to help ensure the reliability of a software system. Due to the scattering and tangling nature of crosscutting concerns, aspects can have a high degree of coupling with other modules. Contract enforcement should therefore prove especially useful for aspects. This paper presents such a run-time enforcement algorithm for a minimal aspect-oriented language, guided by the advice substitution principle: an aspect-oriented version of Liskov substitution. As contract enforcement in itself is a crosscutting concern, the algorithm is specified using aspects as well.","PeriodicalId":245301,"journal":{"name":"Workshop on Foundations of Aspect-Oriented Languages","volume":"50 25","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-03-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"Design by contract for aspects, by aspects\",\"authors\":\"Tim Molderez, D. Janssens\",\"doi\":\"10.1145/2162010.2162015\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Run-time contract enforcement is a useful means to help ensure the reliability of a software system. Due to the scattering and tangling nature of crosscutting concerns, aspects can have a high degree of coupling with other modules. Contract enforcement should therefore prove especially useful for aspects. This paper presents such a run-time enforcement algorithm for a minimal aspect-oriented language, guided by the advice substitution principle: an aspect-oriented version of Liskov substitution. As contract enforcement in itself is a crosscutting concern, the algorithm is specified using aspects as well.\",\"PeriodicalId\":245301,\"journal\":{\"name\":\"Workshop on Foundations of Aspect-Oriented Languages\",\"volume\":\"50 25\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2012-03-26\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Workshop on Foundations of Aspect-Oriented Languages\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2162010.2162015\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Workshop on Foundations of Aspect-Oriented Languages","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2162010.2162015","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Run-time contract enforcement is a useful means to help ensure the reliability of a software system. Due to the scattering and tangling nature of crosscutting concerns, aspects can have a high degree of coupling with other modules. Contract enforcement should therefore prove especially useful for aspects. This paper presents such a run-time enforcement algorithm for a minimal aspect-oriented language, guided by the advice substitution principle: an aspect-oriented version of Liskov substitution. As contract enforcement in itself is a crosscutting concern, the algorithm is specified using aspects as well.