ABSTRACT
While traditional, one-dimensional approaches to the problem of separation of concerns have been adequate for current software development, they are often brittle and resistant to evolutionary change. Aspects and aspect-orientation offer a controllable, modular mechanism for describing the separation of concerns that are orthogonal to the object model that is the primary developmental focus of a wide range of software applications. This dissertation research project involves the creation of an aspect-oriented infrastructure to support a variety of software development tools. Use of this infrastructure is demonstrated in domain areas such as ecological modeling software and web development in order to establish aspect-orientation as a feasible and straightforward solution to the problem of separation of concerns in object-oriented software systems. In the process of establishing the viability of the aspect-oriented solution, this dissertation investigates several new directions in aspect-orientation: aspects in system software, language independent aspects, aspect integration techniques, and opportunities for aspect reuse. In comparing the two-dimensional, aspect-oriented approach to the traditional, one-dimensional approach, the assertion of this research is that a two-dimensional approach offers an inherently more flexible software system while maintaining the advantages of modularity and code reuse that have long been ascribed to object-oriented systems.
- K. Boellert. The AOP/ST homepage, http://www.theoinf.tuilmenau.de/~kaib/aop/.Google Scholar
- The AspectJ homepage, http://www.aspectj.org.Google Scholar
- R. Hirschfeld. AspectS--AOP with Squeak. OOPSLA 2001 Workshop on Advanced Separation of Concerns in Object-Oriented Systems. 2001.Google Scholar
- G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold. Getting Started with AspectJ. Communications of the ACM, 44(10):59--65, October 2001. Google ScholarDigital Library
- The ModCom homepage, http://biosys.bre.orst.edu/ModCom/.Google Scholar
Recommendations
Experimental aspect-oriented language - AspectCOOL
SAC '02: Proceedings of the 2002 ACM symposium on Applied computingAspect-oriented programming (AOP) is a programming technique for modularizing concerns that crosscut the basic functionality of programs. In AOP, aspect languages are used to describe properties, which crosscut basic functionality, in a clean and a ...
Weaving aspects in a persistent environment
This paper discusses two mechanisms for weaving aspects in persistent environments founded on object-oriented databases. The first mechanism is based on exploiting existing aspect languages and their associated weavers while the second mechanism is ...
Aspect-oriented Requirement and Reuse Aspect
CINC '09: Proceedings of the 2009 International Conference on Computational Intelligence and Natural Computing - Volume 02Aspect-oriented programming may improve the design level of software, the reusability of components and the implementation of separation of concerns. Component-based software development approach is one of the most promising solutions for the emerging ...
Comments