A case study on building COTS-based system using aspect-oriented programming

Axel Anders Kvale,Jingyue Li,R. Conradi
DOI: https://doi.org/10.1145/1066677.1067015
2005-03-13
Abstract:More and more software projects are using COTS (Commercial-off-the-shelf) components. Using COTS components brings both advantages and risks. To manage some risks in using COTS components, it is necessary to increase the reusability of the glue-code so that the problematic COTS components can easily be replaced by other components. Aspect-oriented programming (AOP) claims to make it easier to reason about, develop, and maintain certain kinds of application code. To investigate whether AOP can help to build an easy-to-change COTS-based system, a case study was performed by comparing changeability between an object-oriented application and its aspect-oriented version. Results from this study show that integrating COTS component using AOP may help to increase the changeability of the COTS component-based system, if the cross-cutting concerns in the glue-code are homogenous (i.e., consistent application of the same or very similar policy in multiple places). Extracting heterogeneous or partial homogenous crosscutting concerns in glue-code as aspects does not provide benefits. Results also show that some limitations in AOP tools may make it impossible to use AOP in COTS-based development.
What problem does this paper attempt to address?