A Systematic Review on Performance Evaluation of Aspect-Oriented Programming Techniques used to Implement Crosscutting Concerns

Rodrigo F. G. da Silva, Marcelo A. Maia, Michel S. Soares

2014

Abstract

Aspect-Oriented Programming (AOP) was proposed with the main objective of addressing an important software quality principle that is modularization. The basic idea of the paradigm is to capture crosscutting concerns as a programming abstraction called aspect. Since the introduction of aspects as a complement to object-oriented programming, many evaluations and empirical studies were provided to the new paradigm, including the application of a variety of software metrics in order to provide evidence of the benefits or problems with the new paradigm. There is no consensus about the impact on performance of the use of AOP techniques to deal with crosscutting concerns. The use of AOP to implement crosscutting concerns and its impact on performance is the motivation for this study. This paper explores further the evaluation of performance by proposing a systematic literature review with the purpose of finding out how performance is affected by the introduction of aspects. The result of this systematic review is that there has been few studies on scientific literature concerning AOP and performance and most of these studies are too specific, and sometimes even inconclusive. This article presents these miscellaneous results and how they were extracted from the literature.

References

  1. Ali, M. S., Ali Babar, M., Chen, L., and Stol, K.-J. (2010). A Systematic Review of Comparative Evidence of Aspect-Oriented Programming. Information and Software Technology, 52:871-887.
  2. Ansaloni, D., Binder, W., Villazón, A., and Moret, P. (2010). Parallel Dynamic Analysis on Multicores with Aspect-Oriented Programming. In Proceedings of the 9th International Conference on Aspect-Oriented Software Development, AOSD 7810, pages 1-12, New York, NY, USA. ACM.
  3. Bijker, R. (2005). Performance effects of Aspect Oriented Programming. Technical report, Twente University, Enchede, The Netherlands.
  4. Cannon, B. and Wohlstadter, E. (2009). Enforcing Security for Desktop Clients using Authority Aspects. In Proceedings of the 8th ACM international conference on Aspect-oriented software development, AOSD 7809, pages 255-266, New York, NY, USA. ACM.
  5. de Roo, A., Sozer, H., and Aksit, M. (2012). Verification and Analysis of Domain-Specific Models of Physical Characteristics in Embedded Control Software. Information and Software Technology, 54(12):1432-1453. Special Section on Software Reliability and Security.
  6. Dyer, R. and Rajan, H. (2010). Supporting Dynamic Aspect-Oriented Features. ACM Transactions on Software Engeneering Methodology, 20(2):7:1-7:34.
  7. Evangelin Geetha, D., Suresh Kumar, T., and Rajani Kanth, K. (2011). Predicting the Software Performance During Feasibility Study. IET Software, 5(2):201-215.
  8. Fabry, J., Tanter, Ó ., and D'Hondt, T. (2008). KALA: Kernel Aspect Language for Advanced Transactions. Science of Computer Programming, 71(3):165-180.
  9. Franc¸a, J. M. S. and Soares, M. S. (2012). A Systematic Review on Evaluation of Aspect Oriented Programming using Software Metrics. In ICEIS 2012 - Proceedings of the 14th International Conference on Enterprise Information Systems, Volume 2, pages 77-83.
  10. Froihofer, L., Glos, G., Osrael, J., and Goeschka, K. M. (2007). Overview and Evaluation of Constraint Validation Approaches in Java. In Proceedings of the 29th international conference on Software Engineering, ICSE 7807, pages 313-322, Washington, DC, USA. IEEE Computer Society.
  11. Ganesan, D., Keuler, T., and Nishimura, Y. (2009). Architecture compliance checking at run-time. Information and Software Technology, 51(11):1586-1600. Third IEEE International Workshop on Automation of Software Test (AST 2008) Eighth International Conference on Quality Software (QSIC 2008).
  12. Georg, G., Ray, I., Anastasakis, K., Bordbar, B., Toahchoodee, M., and Houmb, S. H. (2009). An AspectOriented Methodology for Designing Secure Applications. Information and Software Technology, 51(5):846-864.
  13. Hundt, C. and Glesner, S. (2009). Optimizing Aspectual Execution Mechanisms for Embedded Applications. Electronic Notes in Theoretical Computer Science, 238(2):35-45. Proceedings of the First Workshop on Generative Technologies (WGT) 2008.
  14. Jain, R. (1991). The art of computer systems performance analysis - techniques for experimental design, measurement, simulation, and modeling. Wiley professional computing. Wiley.
  15. Janik, A. and Zielinski, K. (2010). AAOP-Based Dynamically Reconfigurable Monitoring System. Information and Software Technology, 52(4):380-396.
  16. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., marc Loingtier, J., and Irwin, J. (1997). Aspect-Oriented Programming. pages 220-242. Springer-Verlag.
  17. Kirsten, M. (2005). AOP@Work: AOP tools comparison, Part 1: Language mechanisms. Technical report, IBM Developer Works.
  18. Kitchenham, B. (2004). Procedures for Performing Systematic Reviews. Keele university. technical report tr/se-0401, Department of Computer Science, Keele University, UK.
  19. Liu, W.-L., Lung, C.-H., and Ajila, S. (2011). Impact of Aspect-Oriented Programming on Software Performance: A Case Study of Leader/Followers and HalfSync/Half-Async Architectures. In Proceedings of the 2011 IEEE 35th Annual Computer Software and Applications Conference, COMPSAC 7811, pages 662- 667, Washington, DC, USA. IEEE Computer Society.
  20. Malek, S., Ramnath Krishnan, H., and Srinivasan, J. (2010). Enhancing Middleware Support for ArchitectureBased Development through Compositional Weaving of Styles. Journal of Systems and Software, 83(12):2513-2527.
  21. Mortensen, M., Ghosh, S., and Bieman, J. (2012). AspectOriented Refactoring of Legacy Applications: An Evaluation. IEEE Transactions on Software Engineering, 38(1):118-140.
  22. Ortiz, G. and Prado, A. G. D. (2010). Improving deviceaware web services and their mobile clients through an aspect-oriented, model-driven approach. Information and Software Technology, 52(10):1080-1093.
  23. Przybylek, A. (2011). Impact of Aspect-Oriented Programming on Software Modularity. In Proc. of the 15th European Conference on Software Maintenance and Reengineering, pages 369-372.
  24. Smith, C. U. (1990). Performance Engineering of Software Systems. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1st edition.
  25. Toledo, R., Leger, P., and Tanter, E. (2010). AspectScript: Expressive Aspects for the Web. In Proceedings of the 9th International Conference on Aspect-Oriented Software Development, AOSD 7810, pages 13-24, New York, NY, USA. ACM.
  26. Woodside, M., Franks, G., and Petriu, D. (2007). The Future of Software Performance Engineering. In Future of Software Engineering, 2007. FOSE 7807, pages 171- 187.
  27. Zhang, C. (2009). FlexSync: An Aspect-Oriented Approach to Java Synchronization. In Proceedings of the 31st International Conference on Software Engineering, ICSE 7809, pages 375-385, Washington, DC, USA. IEEE Computer Society.
Download


Paper Citation


in Harvard Style

F. G. da Silva R., A. Maia M. and S. Soares M. (2014). A Systematic Review on Performance Evaluation of Aspect-Oriented Programming Techniques used to Implement Crosscutting Concerns . In Proceedings of the 16th International Conference on Enterprise Information Systems - Volume 2: ICEIS, ISBN 978-989-758-028-4, pages 5-13. DOI: 10.5220/0004863800050013


in Bibtex Style

@conference{iceis14,
author={Rodrigo F. G. da Silva and Marcelo A. Maia and Michel S. Soares},
title={A Systematic Review on Performance Evaluation of Aspect-Oriented Programming Techniques used to Implement Crosscutting Concerns},
booktitle={Proceedings of the 16th International Conference on Enterprise Information Systems - Volume 2: ICEIS,},
year={2014},
pages={5-13},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0004863800050013},
isbn={978-989-758-028-4},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 16th International Conference on Enterprise Information Systems - Volume 2: ICEIS,
TI - A Systematic Review on Performance Evaluation of Aspect-Oriented Programming Techniques used to Implement Crosscutting Concerns
SN - 978-989-758-028-4
AU - F. G. da Silva R.
AU - A. Maia M.
AU - S. Soares M.
PY - 2014
SP - 5
EP - 13
DO - 10.5220/0004863800050013