Skip to main content

Measuring Understandability of Aspect-Oriented Code

  • Conference paper
Digital Information and Communication Technology and Its Applications (DICTAP 2011)

Abstract

Software maintainability is one of important factors that developers should concern because two-thirds of a software system’s lifetime-cost involve maintenance. Understandability is one of sub-characteristics that can describe software maintainability. Aspect-oriented programming (AOP) is an alternative software development paradigm that aims to increase understandability, adaptability, and reusability. It focuses on crosscutting concerns by introducing a modular unit, called “aspect”. Based on the definition of understandability that “the related attributes of software components that users have to put their effort on to recognizing the logical concept of the components”, this paper proposes seven metrics for evaluating understandability of aspect-oriented code using different levels of dependence graphs. The metrics are applied to two versions of aspect-oriented programs to give an illustration.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Page-Jones, M.: The Practical Guide to Structured System Design. Yourdon Press, New York (1980)

    MATH  Google Scholar 

  2. Fenton, N.E., Pfleeger, S.L.: Software Metrics: A Rigorous and Practical Approach, 2nd edn. International Thomson Computer Press (1996)

    Google Scholar 

  3. Informatics Institute, http://www.ii.metu.edu.tr/~ion502/demo/ch1.html

  4. Shima, K., Takemura, Y., Matsumoto, K.: An Approach to Experimental Evaluation of Software Understandability. In: International Symposium on Empirical Software Engineering (ISESE 2002), pp. 48–55 (2002)

    Google Scholar 

  5. Stein, D., Hanenberg, S., Unland, R.: A UML-based Aspect-Oriented Design Notation. In: 1st International Conference on Aspect-Oriented Software Development, pp. 106–112 (2002)

    Google Scholar 

  6. Zhao, J.: Dependence Analysis of Aspect-Oriented Software and Its Applications to Slicing, Testing, and Debugging. Technical-Report SE-2001-134-17, Information Processing Society of Japan, IPSJ (2001)

    Google Scholar 

  7. Zhao, J.: Towards a Metrics Suite for Aspect-Oriented Software. Technical-Report SE-136-25, Information Processing Society of Japan, IPSJ (2002)

    Google Scholar 

  8. Zhao, J., Xu, B.: Measuring aspect cohesion. In: Wermelinger, M., Margaria-Steffen, T. (eds.) FASE 2004. LNCS, vol. 2984, pp. 54–68. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  9. Jindasawat, N., Kiewkanya, M., Muenchaisri, P.: Investigating Correlation between the Object-Oriented Design Maintainability and Two Sub-Characteristics. In: 13th International Conference on Intelligent & Adaptive Systems, and Software Engineering (IASSE 2004), pp. 151–156 (2004)

    Google Scholar 

  10. Sheldon, F.S., Jerath, K., Chung, H.: Metrics for maintainability of class inheritance hierarchies. Journal of Software Maintenance and Evolution: Research and Practice 14, 147–160 (2002)

    Article  MATH  Google Scholar 

  11. Genero, M., Piatini, M., Manso, E.: Finding "Early" Indicators of UML Class Diagrams Understandability and Modifiability. In: International Symposium on Empirical Software Engineering (ISESE 2004), pp. 207–216 (2004)

    Google Scholar 

  12. Gregor, K., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-Oriented Programming. In: Aksit, M., Auletta, V. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  13. Ramnivas, L.: AspectJ in Action: Practical Aspect-Oriented Programming. Manning Publications (2003)

    Google Scholar 

  14. Guyomarc’h, J.Y., Guéhéneuc, Y.G.: On the Impact of Aspect-Oriented Programming on Object-Oriented Metrics. In: 9th ECOOP workshop on Quantitative Approaches in Object-Oriented Software Engineering, pp. 42–47 (2005)

    Google Scholar 

  15. Zhao, J.: Applying Program Dependence Analysis to Java Software. In: Workshop on Software Engineering and Database Systems, International Computer Symposium, pp. 162–169 (1998)

    Google Scholar 

  16. Zhao, J.: Measuring Coupling in Aspect-Oriented Systems. In: 10th International Software Metrics Symposium (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Thongmak, M., Muenchaisri, P. (2011). Measuring Understandability of Aspect-Oriented Code. In: Cherifi, H., Zain, J.M., El-Qawasmeh, E. (eds) Digital Information and Communication Technology and Its Applications. DICTAP 2011. Communications in Computer and Information Science, vol 167. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22027-2_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-22027-2_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-22026-5

  • Online ISBN: 978-3-642-22027-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics