{"title":"Empirical investigation of introducing Aspect Oriented Programming across versions of an SOA application","authors":"A. S. Deepiga, Senthil Velan S, C. Babu","doi":"10.1109/ICACCCT.2014.7019405","DOIUrl":null,"url":null,"abstract":"Service Oriented Architecture (SOA) is an architectural style used to provide services to consumers that promotes loose coupling between services. The scattered and tangled functionalities modeled in an SOA application can be redesigned using Aspect Oriented Programming (AOP). This results in two sets of services, the first set having services for the base functionalities and the other modeling cross-cutting functionalities. During compilation, cross-cutting functionalities in the second set are woven to the functionalities modeled in the first set. By introducing AOP in SOA, the quality attributes such as re-usability, extendibility and maintainability can be improved. The objective of this paper is to perform an empirical investigation by quantitatively measuring the effect of introducing Aspect Orientation (AO) in SOA by developing with multiple versions of a given application. An AO based SOA application (University Automation System) for automating the functionalities of a typical University with multiple versions has been developed as an experimental test bed. An equivalent set of versions without introducing aspectization are also developed in parallel. The values of the AOP metrics are measured for the different versions of University Automation System both aspectized and unaspectized. The measured values show that the quality attributes namely maintainability, reusability and extendibility improve whereas the complexity of the application decreases during the evolution of the case study application.","PeriodicalId":239918,"journal":{"name":"2014 IEEE International Conference on Advanced Communications, Control and Computing Technologies","volume":"18 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-05-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2014 IEEE International Conference on Advanced Communications, Control and Computing Technologies","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICACCCT.2014.7019405","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7
Abstract
Service Oriented Architecture (SOA) is an architectural style used to provide services to consumers that promotes loose coupling between services. The scattered and tangled functionalities modeled in an SOA application can be redesigned using Aspect Oriented Programming (AOP). This results in two sets of services, the first set having services for the base functionalities and the other modeling cross-cutting functionalities. During compilation, cross-cutting functionalities in the second set are woven to the functionalities modeled in the first set. By introducing AOP in SOA, the quality attributes such as re-usability, extendibility and maintainability can be improved. The objective of this paper is to perform an empirical investigation by quantitatively measuring the effect of introducing Aspect Orientation (AO) in SOA by developing with multiple versions of a given application. An AO based SOA application (University Automation System) for automating the functionalities of a typical University with multiple versions has been developed as an experimental test bed. An equivalent set of versions without introducing aspectization are also developed in parallel. The values of the AOP metrics are measured for the different versions of University Automation System both aspectized and unaspectized. The measured values show that the quality attributes namely maintainability, reusability and extendibility improve whereas the complexity of the application decreases during the evolution of the case study application.