Abstract
Over the last few years, a growing number of studies have explored how Aspect-Oriented Programming (AOP) might impact software maintainability. Most of the studies use coupling metrics to assess the impact of AOP mechanisms on maintainability attributes such as design stability. Unfortunately, the use of such metrics is fraught with dangers, which have so far not been thoroughly investigated. To clarify this problem, this paper presents a systematic review of recent AOP maintainability studies. We look at attributes most frequently used as indicators of maintainability in current aspect-oriented (AO) programs; we investigate whether coupling metrics are an effective surrogate to measure theses attributes; we study the extent to which AOP abstractions and mechanisms are covered by used coupling metrics; and we analyse whether AO coupling metrics meet popular theoretical validation criteria. Our review consolidates data from recent research results, highlights circumstances when the applied coupling measures are suitable to AO programs and draws attention to deficiencies where coupling metrics need to be improved.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Arisholm, E., Briand, L., Foyen, A.: Dynamic Coupling Measurement for Object-Oriented Software. IEEE Trans. Soft. Eng. 30(8), 491–506 (2004)
The AspectJ Prog. Guide, http://eclipse.org/aspectj
Bartsch, M., Harrison, R.: An Evaluation of Coupling Measures for AOP. In: LATE Workshop AOSD (2006)
Briand, L., Daly, J., Wüst, J.: A Unified Framework for Coupling Measurement in Object-Oriented Systems. IEEE Trans. Software Eng. 25(1), 91–121 (1999)
Briand, L., Wüst, J.: Empirical Studies of Quality Models in Object-Oriented Systems. In: Advances in Computers. Academic Press, London (2002)
Basili, V., et al.: GQM Paradigm. Comp. Encyclopedia of Soft. Eng. JW&S 1, 528–532 (1994)
Cacho, N., et al.: Composing design patterns: a scalability study of aspect-oriented programming. In: AOSD 2006, pp. 109–121 (2006)
CaesarJ homepage, http://caesarj.org
Cai, Y., Sullivan, K.J.: Modularity Analysis of Logical Design Models. ASE 21, 91–102 (2006)
Ceccato, M., Tonella, P.: Measuring the Effects of Software Aspectization. WARE cd-rom (2004)
Chidamber, S., Kemerer, C.: A Metrics Suite for OO Design. IEEE Trans. Soft. Eng. 20(6), 476–493 (1994)
Fenton, N.E., Pfleeger, S.L.: Software Metrics: a Rigorous and Practical Approach, 2nd edn. PWS Publishing Co., Boston (1998)
Figueiredo, E., et al.: Assessing Aspect-Oriented Artifacts: Towards a Tool-Supported Quantitative Method. In: ECOOP (2005)
Filho, F.C., et al.: Exceptions and aspects: the devil is in the details. FSE 14, 152–156 (2006)
Filho, F.C., Garcia, A., Rubira, C.M.F.: A quantitative study on the aspectization of exception handling. In: Proc. ECOOP (2005)
Garcia, A., et al.: On the modular representation of architectural aspects. In: Gruhn, V., Oquendo, F., et al. (eds.) EWSA 2006. LNCS, vol. 4344, pp. 82–97. Springer, Heidelberg (2006)
Garcia, A., et al.: Separation of Concerns in Multi-Agent Systems: An Empirical Study. Software Engineering for Multi-Agent Systems with Aspects and Patterns. J. Brazilian Comp. Soc. 1(8), 57–72 (2004)
Garcia, A., et al.: Aspectizing Multi-Agent Systems: From Architecture to Implementation. In: Choren, R., Garcia, A., Lucena, C., Romanovsky, A. (eds.) SELMAS 2004. LNCS, vol. 3390, pp. 121–143. Springer, Heidelberg (2005)
Garcia, A., et al.: Modularizing Design Patterns with Aspects: A Quantitative Study. In: Proc. AOSD, pp. 3–14 (2005)
Greenwood, P., et al.: On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 176–200. Springer, Heidelberg (2007)
Harrison, R., Counsell, S., Nithi., R.: An Overview of Object-Oriented Design Metrics. In: Proc. STEP, pp. 230–234 (1997)
Hitz, M., Montezeri, B.: Measuring Coupling and Cohesion in Object-Oriented Systems. In: Proc. Int. Symposium on Applied Corporate Computing (1995)
Hyper/J home page, http://www.research.ibm.com/hyperspace/HyperJ.htm
IEEE Glossaries, http://www.computer.org/portal/site/seportal/index.jsp
JBoss AOP, http://labs.jboss.com/jbossaop
Kastner, C., Apel, S., Batory, D.: Case Study Implementing Features Using AspectJ. In: Proc. SPLC, pp. 223–232 (2007)
Kiczales, G., et al.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S., et al. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Kitchenham, B., et al.: Systematic Literature Reviews in Software Engineering – A Systematic Literature Review. Information and Software Technology (2008)
Kitchenham, B.: Procedures for Performing Systematic Reviews. Joint Tech. Rep. S.E.G. (2004)
Kitchenham, B., Pfleeger, S.L., Fenton, N.: Towards a Framework for Software Validation Measures. IEEE TSE 21(12), 929–944 (1995)
Kulesza, U., et al.: Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study. In: Proc. ICSM, pp. 223–233 (2006)
Lopes, C.V., Bajracharya, S.K.: An analysis of modularity in aspect oriented design. In: AOSD, pp. 15–26 (2005)
Marchetto, A.: A Concerns-based Metrics Suite for Web Applications. INFOCOMP journal of computer science 4(3) (2004)
Pressman, R.S.: Software Engineering: a Practitioner’s Approach. McGraw Hill, NY (1987)
Sant’Anna, C., et al.: On the Modularity of Software Architectures: A Concern-Driven Measurement Framework. In: Oquendo, F. (ed.) ECSA 2007. LNCS, vol. 4758, pp. 207–224. Springer, Heidelberg (2007)
Sant’Anna, C., et al.: On the Reuse and Maintenance of Aspect-Oriented Software: An Assessment Framework. In: Proc. SBES, pp. 19–34 (2003)
Sant’Anna, C., et al.: On the Modularity of Software Architectures: A Concern-Driven Measurement Framework. In: Proc. ECSA (2008)
Spring AOP, http://www.springframework.org
Zhao, J.: Measuring Coupling in Aspect-Oriented Systems. In: Int. Soft. Metrics Symp. (2004)
Zimmermann, T., Nagappan, N.: Predicting defects using network analysis on dependency graphs. In: ICSE, pp. 531–540 (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Burrows, R., Garcia, A., Taïani, F. (2010). Coupling Metrics for Aspect-Oriented Programming: A Systematic Review of Maintainability Studies. In: Maciaszek, L.A., González-Pérez, C., Jablonski, S. (eds) Evaluation of Novel Approaches to Software Engineering. ENASE ENASE 2009 2008. Communications in Computer and Information Science, vol 69. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14819-4_20
Download citation
DOI: https://doi.org/10.1007/978-3-642-14819-4_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-14818-7
Online ISBN: 978-3-642-14819-4
eBook Packages: Computer ScienceComputer Science (R0)