ASPECT ORIENTATION VS. OBJECT ORIENTATION IN SOFTWARE PROGRAMMING - An Exploratory Case-study

Anna Lomartire, Gianfranco Pesce, Giovanni Cantone

Abstract

Aspect orientation is a software paradigm that is claimed to be more effective and efficient than Object orientation when software development and maintenance interventions are taken in consideration that affect transversally the application structure, namely Aspects. In order to start with providing evidence able to confirm or disconfirm that opinion in our context - software processes that we enact, and products that we develop at our University Data Center - before launching a controlled experiment, which would require the investment of large effort, we conducted a preliminary explorative investigation that we arranged as a case study. We started from a Web-based object-oriented application, which engineering students in Informatics had constructed under our supervision. We specified new user needs, which realization was expected to impact on many of the application’s classes and relationships. Hence, we applied another student to realize those extensive requirements by using both Aspect orientation and Object orientation. Results show that, in the average, both the completion time and the size of the additional code advantage significantly the Aspect orientation, for maintenance interventions that are transversal to the application’s structure, with respect to the characteristics of the experiment object utilized, the specified enhancement maintenance requirements, and the subject involved with performing in the role of programmer. Although the exploratory nature of the study, the limited generality of the utilized application, and the fact that just one programmer was utilized as experimental subjects, the experiment results push us to verify the findings by conducting further investigation involving a wider set of programmers and applications with different characteristics.

References

  1. Baccan M., 2004. Introduzione alla programmazione AOP con AspectJ. In Webbit, (Slides), May 2004, http://www.baccan.it/webbit2004/aspectj.pdf, last access 7.04.2007 (in Italian).
  2. Basili V., G. Caldiera, and D. Rombach, 1994. Goal/Question/Metric Paradigm. Encyclopedia of Software Engineering, John Wiley & Sons, Vol. 1, pp. 528-532.
  3. AOP, 2007. Alliance, http://aopalliance.sourceforge.net/, last access 7.04.2007
  4. AOP, 2007. JavaWorld, http://www.javaworld.com/javaworld/jw-01-2002/jw0118-aspect.html, last access 7.04.2007.
  5. Bonin H. E. G. , 2002. Aspect-Oriented Software Development: A Little Guidance to better Java Applications, University of Applied Sciences, Luneburg, Germany, May 2002-Nov. 2006. http://as.uni-lueneburg.de/publikation/aosdall.pdf, last access 7.04.2007.
  6. RCOST, 2007. Aspect Oriented Software Development: Analisi e Disegno. In Research Center On Software Technology,Benevento,Italy,(Slides), http://www.ing.unisannio.it/dilucca/LSISW/materiale0 506/aosd-aoad.pdf, last access 7.04.2007 (in Italian).
  7. TAODS, 2003. Aspect Oriented Programming. TAODS'03, Ed. Technerdokan B., DCE, Bilken Univeristy, Amkara, Turkey,
  8. http://trese.cs.utwente.nl/taosad/Papers/TAOSDProceedin gs.pdf , last access 7.04.2007.
  9. AOSD-Europe, 2007. http://www.aosd.net/, last access 7.04.2007.
  10. AOSD-Europe Project, 2007. http://www.aosdeurope.net/, last access 7.04.2007.
  11. Eclipse org., 2007a. AspectJ Development Tools Project (AJDT), http://www.eclipse.org/ajdt/, last access 7.04.2007.
  12. Eclipse org., 2007b. AspectJ Documentation and Resources, http://www.eclipse.org/aspectj/docs.php 7.04.2007.
  13. Eclipse org., 2007c. AspectJ Project, http://www.eclipse.org/aspectj/, last access 7.04.2007.
  14. Eclipse org., 2007d. AspectJ Programming Guide, http://www.eclipse.org/aspectj/doc/released/progguide /index.html, last access 7.04.2007.
  15. Keuler T., M. Naab, 2007. Supporting Architectural Design by Early Aspects Identification, Fraunhofer IESE, Kaiserslautern. Germany, http://dawis2.informatik.uniessen.de/events/AOM_AOSD2006/Keuler.pdf, last access 7.04.2007.
  16. Kiczales G., Lamping J., Mendhekar A., Maeda ., Lopes ., Loingtier J.-M., and Irwin J, 1997. Aspect-Oriented Programming, Proceedings of the European Conference on Object-Oriented Programming, http://citeseer.ist.psu.edu/ cache/papers/cs/1860/http:zSzzSzwwwsal.cs.uiuc.eduzSz kaminzSzdslzSzpaperszSzkiczales.pdf/kiczales97aspe ctoriented.pdf, last access 7.04.2007.
  17. Laddad Ramnivas, 2002. Separate software concerns with aspect-oriented programming, Java World, Jan. 2002, http://www.javaworld.com/javaworld/jw-01-2002/jw0118-aspect.html
  18. Merlo F., M. Miraz: Aspect-Oriented Programming, 2007. www.elet.polimi.it/upload/ghezzi/_PRIVATE/AOP.pd f, last access 7.04.2007 (in Italian).
  19. Merlo F., M. Miraz, 2007. Aspect-Oriented Programming (Slides), www.diit.unict.it/acalva/SE/slides/se2/aop_slides .pdf, last access 7.04.2007.
  20. ObjectWay Gruppo, Aspect-Oriented Programming and AspectJ, (Slides), http://it.sun.com/eventi/jc04/presentazioni/parallela2 /objectway.pdf, last access 7.04.2007 (in Italian).
Download


Paper Citation


in Harvard Style

Lomartire A., Pesce G. and Cantone G. (2007). ASPECT ORIENTATION VS. OBJECT ORIENTATION IN SOFTWARE PROGRAMMING - An Exploratory Case-study . In Proceedings of the Second International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-989-8111-05-0, pages 47-54. DOI: 10.5220/0001349800470054


in Bibtex Style

@conference{icsoft07,
author={Anna Lomartire and Gianfranco Pesce and Giovanni Cantone},
title={ASPECT ORIENTATION VS. OBJECT ORIENTATION IN SOFTWARE PROGRAMMING - An Exploratory Case-study},
booktitle={Proceedings of the Second International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2007},
pages={47-54},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001349800470054},
isbn={978-989-8111-05-0},
}


in EndNote Style

TY - CONF
JO - Proceedings of the Second International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - ASPECT ORIENTATION VS. OBJECT ORIENTATION IN SOFTWARE PROGRAMMING - An Exploratory Case-study
SN - 978-989-8111-05-0
AU - Lomartire A.
AU - Pesce G.
AU - Cantone G.
PY - 2007
SP - 47
EP - 54
DO - 10.5220/0001349800470054