AN EMPIRICAL ASSESSMENT OF THE IMPACT OF ASPECT-ORIENTED PROGRAMMING ON SOFTWARE MODULARITY
Adam Przybylek
2010
Abstract
The term “crosscutting concern” describes a piece of system that cannot be cleanly modularized because of the limited abstractions offered by the traditional programming paradigms. Symptoms of implementing crosscutting concerns in the languages like C, C# or Java are “code scattering” and “code tangling” that both degrade software modularity. Aspect-oriented programming (AOP) was proposed as a new paradigm to overcome these problems. Although it is known that AOP allows programmers to separate crosscutting concerns, the impact of AOP on software modularity is not yet well investigated. This paper reports a quantitative study comparing OO and AO implementations with respect to modularity.
References
- Basili, V. R., Briand, L. C., Melo, W. L., 1996. A Validation of Object-Oriented Design Metrics as Quality Indicators. IEEE Transactions on Software Engineering vol. 22(10), pp. 751-761
- Briand, L. C., Daly, J. W., Wüst, J., 1998. A Unified Framework for Cohesion Measurement in ObjectOriented Systems. Empirical Softw. Engg. vol. 3(1), pp. 65-117
- Briand, L. C., Daly, J. W., Wüst, J. K., 1999. A Unified Framework for Coupling Measurement in ObjectOriented Systems. IEEE Transactions on Software Engineering vol. 25(1), pp. 91-121
- Briand, L. C., Morasca, S., Basili, V. R., 1999. Defining and Validating Measures for Object-Based High-Level Design. IEEE Trans. Softw. Eng. vol. 25(5), pp. 722- 743
- Briand, L. C., Wüst, J. K., Lounis, H., 2001. Replicated Case Studies for Investigating Quality Factors in Object-Oriented Designs. Empirical Software Eng., vol. 6(1), pp. 11-58
- Booch, G., 1994. Object-oriented Analysis and Design with Applications. Benjamin-Cummings, Redwood City, California
- Ceccato, M., Tonella, P., 2004. Measuring the Effects of Software Aspectization. In: 1st Workshop on Aspect Reverse Engineering, Delft, Netherlands
- Chidamber, S. R., Kemerer, C. F., 1994. A Metrics Suite for Object Oriented Design. IEEE Trans. Softw. Eng. 20, 6 (Jun. 1994), pp. 476-493
- Fenton, N., Melton, A., 1990. Deriving Structurally Based Software Measures. J. Syst. Software vol. 12, pp. 177- 187
- Filho, F. C., Cacho, N., Figueiredo, E., Maranhão, R., Garcia, A., Rubira, C. M., 2006. Exceptions and aspects: the devil is in the details. In: 14th ACM SIGSOFT international Symposium on Foundations of Software Engineering, Portland, Oregon
- Garcia, A., Sant'Anna, C., Figueiredo, E., Kulesza, U., Lucena, C., von Staa, A., 2005. Modularizing design patterns with aspects: a quantitative study. In: 4th international Conference on Aspect-Oriented Software Development (AOSD'05), Chicago, Illinois
- 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., 2007. On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study. In: 21st European Conference on Object-Oriented Programming (ECOOP'07), Berlin, Germany
- Guyomarc'h, J., Guéhéneuc, Y., 2005. On the Impact of Aspect-Oriented Programming on Object-Oriented Metrics. In: Workshop on Quantitative Approaches in Object-Oriented Software Engineering at ECOOP'05, Glasgow, UK
- Hannemann, J., Kiczales, G., 2002. Design Pattern Implementation in Java and AspectJ. In: 17th Conference on Object-Oriented Programming Systems, Languages, and Applications, Seattle
- Hitz, M., Montazeri, B., 1995. Measuring Coupling and Cohesion in Object-Oriented Systems. In: 3rd International Symposium on Applied Corporate Computing, Monterrey, Mexico
- Hoffman, K., Eugster, P., 2007. Bridging Java and AspectJ through explicit join points. In: 5th international Symposium on Principles and Practice of Programming in Java, Lisboa, Portugal
- Kästner, C., Apel, S., Batory, D., 2007. A Case Study Implementing Features using AspectJ. In: 11th International Conference of Software Product Line Conference (SPLC'07), Kyoto, Japan
- Kiczales, G., Lamping, J., Mendhekar, A., Maeda, Ch., Lopes, C. V., Loingtier, J., Irwin, J., 1997. AspectOriented Programming. LNCS, vol. 1241, pp. 220-242. Springer, New York
- Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W. G., 2001. An Overview of AspectJ. In: 15th European Conference on Object-Oriented Programming (ECOOP'01), Budapest, Hungary
- Lesiecki, N., 2002. Improve modularity with aspectoriented programming. http://www.ibm.com/ developerworks/library/j-aspectj/
- Madeyski, L., Szala, L., 2007. Impact of aspect-oriented programming on software development efficiency and design quality: an empirical study. IET Software Journal, vol. 1(5), pp. 180-187
- Mancoridis, S., Mitchell, B. S., Rorres, C., Chen, Y., Gansner, E. R., 1998. Using Automatic Clustering to Produce High-Level System Organizations of Source Code. In: 6th international Workshop on Program Comprehension (IWPC'98), Ischia, Italy
- Meyer B., 1989. Object-oriented Software Construction, Prentice Hall
- Monteiro, M. P., Fernandes, J. M., 2005. Towards a Catalog of Aspect-Oriented Refactorings. In: 4th international Conference on Aspect-Oriented Software Development (AOSD'05), Chicago, Illinois
- Munoz, F., Baudry, B., Barais, O., 2008. A classification of invasive patterns in AOP. In: 24th IEEE International Conference on Software Maintenance (ICSM'08), Beijing, China
- Ponnambalam, K., 1997. Characterization and Selection of Good Object-Oriented Design. In: Workshop on OO Design at OOPSLA'97, Atlanta, Georgia
- Przybylek, A., 2007. Post Object-Oriented Paradigms in Software Development: a Comparative Analysis. In: 1st Workshop on Advances in Programming Languages at IMCSIT'07, Wisla, Poland
- Sant'Anna, C., Garcia, A., Chavez, C. Lucena, C., von Staa, A., 2003. On the Reuse and Maintenance of Aspect-Oriented Software: An Assessment Framework. In: 17th Brazilian Symposium on Software Engineering (SEES'03), Manaus, Brazil
- Soares, S., 2004. An Aspect-Oriented Implementation Method. PhD thesis, Federal University of Pernambuco, Brazil
- Srivisut, K., Muenchaisri, P., 2006. Determining Threshold of Aspect-Oriented Software Metrics. In: 3rd International Joint Conference on Computer Science and Software Engineering, Bangkok, Thailand
- Stochmialek, M., 2005. AOPmetrics. http://aopmetrics.tigris.org
- Tsang, S. L., Clarke, S., Baniassad, E., 2004. Object metrics for aspect systems: Limiting empirical inference based on modularity. Technical Report, Trinity College Dublin
- Yourdon, E., Constantine, L. L., 1979. Structured Design: Fundamentals of a Discipline of Computer Program and System Design. Prentice-Hall, New York
Paper Citation
in Harvard Style
Przybylek A. (2010). AN EMPIRICAL ASSESSMENT OF THE IMPACT OF ASPECT-ORIENTED PROGRAMMING ON SOFTWARE MODULARITY . In Proceedings of the Fifth International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE, ISBN 978-989-8425-21-8, pages 139-148. DOI: 10.5220/0003000801390148
in Bibtex Style
@conference{enase10,
author={Adam Przybylek},
title={AN EMPIRICAL ASSESSMENT OF THE IMPACT OF ASPECT-ORIENTED PROGRAMMING ON SOFTWARE MODULARITY},
booktitle={Proceedings of the Fifth International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,},
year={2010},
pages={139-148},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0003000801390148},
isbn={978-989-8425-21-8},
}
in EndNote Style
TY - CONF
JO - Proceedings of the Fifth International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,
TI - AN EMPIRICAL ASSESSMENT OF THE IMPACT OF ASPECT-ORIENTED PROGRAMMING ON SOFTWARE MODULARITY
SN - 978-989-8425-21-8
AU - Przybylek A.
PY - 2010
SP - 139
EP - 148
DO - 10.5220/0003000801390148