Skip to main content

On the Benefit of Quantification in AOP Systems-A Quantitative and a Qualitative Assessment

  • Conference paper
Advances in Computer Science and Information Technology (CCSIT 2011)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 131))

  • 1054 Accesses

Abstract

In this paper, we support the statement that the most favorable uses of aspects happen when their code relies extensively on quantified statements, i.e., statements that may affect many parts of a system. When this happens, aspects better contribute to separation of concerns, since the otherwise duplicated and tangled code related to the implementation of a crosscutting concern is confined in a single block of code. In this paper we try to provide some insight both qualitative and quantitative arguments in favor of quantification. We describe an Eclipse plugin, called ConcernMetrics and AOPMetric tool that estimates the proposed metrics directly from the object-oriented code of an existing system, i.e., before crosscutting concerns are extracted to aspects. The strategy is applied to the JHOTDRAW open source project and study, how AOP system quantification provides help to developers and maintainers to decide in a cost-effective way.

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 139.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 179.00
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. http://www.ercim.eu/publication/Ercim_News/enw58/mens.html

  2. Steimann, F.: The paradoxical success of aspect-oriented programming. In: 21st Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA), pp. 481–497 (2006)

    Google Scholar 

  3. Wand, M.: Understanding aspects: extended abstract. In: 8th International Conference on Functional Programming (ICFP), pp. 299–300. ACM, New York (2003)

    Google Scholar 

  4. Apel, S.: How AspectJ is used: an analysis of eleven AspectJ programs. J. Object Technol. 9(1), 117–142 (2010)

    Article  Google Scholar 

  5. Sant’Anna, C., Garcia, A., Chavez, C., Lucena, C., von Staa, A.: On the reuse and maintenance of aspect-oriented software: an assessment framework. In: 17th Brazilian Symposium on Software Engineering (SBES), pp. 19–34 (2003)

    Google Scholar 

  6. Wand, M.: Understanding aspects: extended abstract. In: 8th International Conference on Functional Programming (ICFP), pp. 299–300. ACM, New York (2003)

    Google Scholar 

  7. Kulesza, U., Sant’Anna, C., Garcia, A., Coelho, R., von Staa, A., Luce Na, C.: Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study. In: Proc. Int’l. Conf. Software Maintenance (2006)

    Google Scholar 

  8. Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun ACM 15(12), 1053–1058 (1972)

    Article  Google Scholar 

  9. Valente, M.T., et al.: On the benefits of quantification in Aspect J systems. J. Braz Comput. Soc., doi: 10.1007/s13173-010-0008-0

    Google Scholar 

  10. 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 

  11. Zhang, C., Jacobsen, H.-A.: Resolving Feature Convolution in Middleware Systems. In: Proc. Int’l. Conf. Object-Oriented Programming, Systems, Languages, and Applications (2004)

    Google Scholar 

  12. Garcia, A., Sant’Anna, C., Figueiredo, E., Kulesza, U., Lucena, C.J.P., von Staa, A.: Modularizing Design Patterns with Aspects: A Quantitative Study. In: Rashid, A., Liu, Y. (eds.) Transactions on Aspect-Oriented Software Development I. LNCS, vol. 3880, pp. 36–74. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  13. Kulesza, U., Sant’Anna, C., Garcia, A., Coelho, R., von Staa, A., Luce Na, C.: Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study. In: Proc. Int’l. Conf. Software Maintenance (2006)

    Google Scholar 

  14. Gelinas, J.F., Badri, M., Badri, L.: A Cohesion Measure for Aspects. J. Object Technology 5(7) (2006)

    Google Scholar 

  15. Lopez-Herrejon, R.E., Apel, S.: Measuring and Characterizing Crosscutting in Aspect-Based Programs: Basic Metrics and Case Studies. In: Dwyer, M.B., Lopes, A. (eds.) FASE 2007. LNCS, vol. 4422, pp. 423–437. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  16. Apel, S.: How AspectJ is used: an analysis of eleven AspectJ programs. J. Object Technol. 9(1), 117–142 (2010)

    Article  Google Scholar 

  17. Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15(12), 1053–1058 (1972)

    Article  Google Scholar 

  18. Colyer, A., Rashid, A., Blair, G.: On the Separation of Concerns in Program Families. Technical Report COMP-001-2004, Computing Department, Lancaster University (2004)

    Google Scholar 

  19. Apel, S., Leich, T., Saake, G.: Aspectual Feature Modules. IEEE Trans. Software Engineering 34(2) (2008)

    Google Scholar 

  20. Garcia, A., Sant’Anna, C., Figueiredo, E., Kulesza, U., de Lucena, C.J.P., von, S.: Modularizing design patterns with aspects: a quantitative study. In: 4th International Conference on Aspect Oriented Software Development (AOSD), pp. 3–14 (2005)

    Google Scholar 

  21. Greenwood, P., Bartolomei, T.T., Figueiredo, E., Dósea, M., Garcia, A.F., Cacho, N., Sant’Anna, C., Soares, S., Borba, P., Kulesza, U., Rashid, A.: On the impact of aspectual decompositions on design stability: An empirical study. In: Bateni, M. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 176–200. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  22. Marin, M., van Deursen, A., Moonen, L., van der Rijst, R.: An integrated crosscutting concern migration strategy and its Semiautomated application to JHotDraw. Autom. Softw. Eng. 16(2), 323–356 (2009)

    Article  Google Scholar 

  23. Binkley, D., Ceccato, M., Harman, M., Ricca, F., Tonella, P.: Automated refactoring of object oriented code into aspects. In: 21st IEEE International Conference on Software Maintenance (ICSM), pp. 27–36 (2005)

    Google Scholar 

  24. Eaddy, M., Zimmermann, T., Sherwood, K.D., Garg, V., Murphy Gail, C., Nagappan, N., Aho, A.V.: Do crosscutting concerns cause defects? IEEE Trans. Softw. Eng. 34(4), 497–515 (2008)

    Article  Google Scholar 

  25. Marin, M., van Deursen, A., Moonen, L.: Identifying crosscutting concerns using fan-in analysis. ACM Trans. Softw. Eng. Methodol. 17(1) (2007)

    Google Scholar 

  26. http://aopmetrics.tigris.org/

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

Sirbi, K., Kulkarni, P.J. (2011). On the Benefit of Quantification in AOP Systems-A Quantitative and a Qualitative Assessment. In: Meghanathan, N., Kaushik, B.K., Nagamalai, D. (eds) Advances in Computer Science and Information Technology. CCSIT 2011. Communications in Computer and Information Science, vol 131. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17857-3_45

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-17857-3_45

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-17856-6

  • Online ISBN: 978-3-642-17857-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics