Skip to main content

Coupling Metrics for Aspect-Oriented Programming: A Systematic Review of Maintainability Studies

  • Conference paper
Evaluation of Novel Approaches to Software Engineering (ENASE 2009, ENASE 2008)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Arisholm, E., Briand, L., Foyen, A.: Dynamic Coupling Measurement for Object-Oriented Software. IEEE Trans. Soft. Eng. 30(8), 491–506 (2004)

    Article  Google Scholar 

  2. The AspectJ Prog. Guide, http://eclipse.org/aspectj

  3. Bartsch, M., Harrison, R.: An Evaluation of Coupling Measures for AOP. In: LATE Workshop AOSD (2006)

    Google Scholar 

  4. 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)

    Article  Google Scholar 

  5. Briand, L., Wüst, J.: Empirical Studies of Quality Models in Object-Oriented Systems. In: Advances in Computers. Academic Press, London (2002)

    Google Scholar 

  6. Basili, V., et al.: GQM Paradigm. Comp. Encyclopedia of Soft. Eng. JW&S 1, 528–532 (1994)

    Google Scholar 

  7. Cacho, N., et al.: Composing design patterns: a scalability study of aspect-oriented programming. In: AOSD 2006, pp. 109–121 (2006)

    Google Scholar 

  8. CaesarJ homepage, http://caesarj.org

  9. Cai, Y., Sullivan, K.J.: Modularity Analysis of Logical Design Models. ASE 21, 91–102 (2006)

    Google Scholar 

  10. Ceccato, M., Tonella, P.: Measuring the Effects of Software Aspectization. WARE cd-rom (2004)

    Google Scholar 

  11. Chidamber, S., Kemerer, C.: A Metrics Suite for OO Design. IEEE Trans. Soft. Eng. 20(6), 476–493 (1994)

    Article  Google Scholar 

  12. Fenton, N.E., Pfleeger, S.L.: Software Metrics: a Rigorous and Practical Approach, 2nd edn. PWS Publishing Co., Boston (1998)

    Google Scholar 

  13. Figueiredo, E., et al.: Assessing Aspect-Oriented Artifacts: Towards a Tool-Supported Quantitative Method. In: ECOOP (2005)

    Google Scholar 

  14. Filho, F.C., et al.: Exceptions and aspects: the devil is in the details. FSE 14, 152–156 (2006)

    Google Scholar 

  15. Filho, F.C., Garcia, A., Rubira, C.M.F.: A quantitative study on the aspectization of exception handling. In: Proc. ECOOP (2005)

    Google Scholar 

  16. 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)

    Chapter  Google Scholar 

  17. 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)

    Google Scholar 

  18. 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)

    Chapter  Google Scholar 

  19. Garcia, A., et al.: Modularizing Design Patterns with Aspects: A Quantitative Study. In: Proc. AOSD, pp. 3–14 (2005)

    Google Scholar 

  20. 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)

    Chapter  Google Scholar 

  21. Harrison, R., Counsell, S., Nithi., R.: An Overview of Object-Oriented Design Metrics. In: Proc. STEP, pp. 230–234 (1997)

    Google Scholar 

  22. Hitz, M., Montezeri, B.: Measuring Coupling and Cohesion in Object-Oriented Systems. In: Proc. Int. Symposium on Applied Corporate Computing (1995)

    Google Scholar 

  23. Hyper/J home page, http://www.research.ibm.com/hyperspace/HyperJ.htm

  24. IEEE Glossaries, http://www.computer.org/portal/site/seportal/index.jsp

  25. JBoss AOP, http://labs.jboss.com/jbossaop

  26. Kastner, C., Apel, S., Batory, D.: Case Study Implementing Features Using AspectJ. In: Proc. SPLC, pp. 223–232 (2007)

    Google Scholar 

  27. 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)

    Chapter  Google Scholar 

  28. Kitchenham, B., et al.: Systematic Literature Reviews in Software Engineering – A Systematic Literature Review. Information and Software Technology (2008)

    Google Scholar 

  29. Kitchenham, B.: Procedures for Performing Systematic Reviews. Joint Tech. Rep. S.E.G. (2004)

    Google Scholar 

  30. Kitchenham, B., Pfleeger, S.L., Fenton, N.: Towards a Framework for Software Validation Measures. IEEE TSE 21(12), 929–944 (1995)

    Google Scholar 

  31. Kulesza, U., et al.: Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study. In: Proc. ICSM, pp. 223–233 (2006)

    Google Scholar 

  32. Lopes, C.V., Bajracharya, S.K.: An analysis of modularity in aspect oriented design. In: AOSD, pp. 15–26 (2005)

    Google Scholar 

  33. Marchetto, A.: A Concerns-based Metrics Suite for Web Applications. INFOCOMP journal of computer science 4(3) (2004)

    Google Scholar 

  34. Pressman, R.S.: Software Engineering: a Practitioner’s Approach. McGraw Hill, NY (1987)

    MATH  Google Scholar 

  35. 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)

    Chapter  Google Scholar 

  36. Sant’Anna, C., et al.: On the Reuse and Maintenance of Aspect-Oriented Software: An Assessment Framework. In: Proc. SBES, pp. 19–34 (2003)

    Google Scholar 

  37. Sant’Anna, C., et al.: On the Modularity of Software Architectures: A Concern-Driven Measurement Framework. In: Proc. ECSA (2008)

    Google Scholar 

  38. Spring AOP, http://www.springframework.org

  39. Zhao, J.: Measuring Coupling in Aspect-Oriented Systems. In: Int. Soft. Metrics Symp. (2004)

    Google Scholar 

  40. Zimmermann, T., Nagappan, N.: Predicting defects using network analysis on dependency graphs. In: ICSE, pp. 531–540 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics