{"title":"Capturing nontrivial concerns in object-oriented software","authors":"M. Trifu, Volker Kuttruff","doi":"10.1109/WCRE.2005.11","DOIUrl":null,"url":null,"abstract":"Code that is scattered and tangled as a result of orthogonal concerns seriously hinders software maintenance and reuse. As OO decompositions are unable to cleanly encapsulate such orthogonal (cross-cutting) concerns simultaneously, new ideas and languages were devised to capture and encapsulate them. In this paper, we argue that the current leading approaches (AOP as it is understood in AspectJ and MDSOC), although a step forward in the right direction, have some serious limitations. We, then, propose a new conceptual model for encapsulating concerns identified in existing OO code, which we apply to an example taken from the Java Swing library. Our case study shows that our approach is able to capture cross-cutting concerns in a cleaner and more elegant fashion than current state of the art approaches.","PeriodicalId":119724,"journal":{"name":"12th Working Conference on Reverse Engineering (WCRE'05)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2005-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"10","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"12th Working Conference on Reverse Engineering (WCRE'05)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/WCRE.2005.11","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 10
Abstract
Code that is scattered and tangled as a result of orthogonal concerns seriously hinders software maintenance and reuse. As OO decompositions are unable to cleanly encapsulate such orthogonal (cross-cutting) concerns simultaneously, new ideas and languages were devised to capture and encapsulate them. In this paper, we argue that the current leading approaches (AOP as it is understood in AspectJ and MDSOC), although a step forward in the right direction, have some serious limitations. We, then, propose a new conceptual model for encapsulating concerns identified in existing OO code, which we apply to an example taken from the Java Swing library. Our case study shows that our approach is able to capture cross-cutting concerns in a cleaner and more elegant fashion than current state of the art approaches.