Using aspect oriented software architecture for enterprise systems development

A typical software system comprises of several crosscutting concerns (also known as aspects). Code tangling and scattering are two difficulties that occur in current software implementation methodologies which affect software design and development in many ways like, poor traceability, lower productivity, less code reuse and poor code quality. Aspect Oriented Programming (AOP), which allows for modularizing of concerns that normally cause crosscutting in object oriented system, has efficiently solved the problem that the Object Oriented Programming has encountered such as the scattered codes and tangled codes resulting from the cross cutting concerns. Aspect-Oriented Software Development (AOSD) is becoming a new technique, which provides modularization of crosscutting concerns. The aim of this paper is to define an Aspect Oriented Software Architecture for software development with minimum code tangling and scattering. By this architecture not only the design efficiency can be improved but also the model built is easier to comprehend and reuse.

[1]  Bedir Tekinerdogan,et al.  ASAAM: aspectual software architecture analysis method , 2003, Proceedings. Fourth Working IEEE/IFIP Conference on Software Architecture (WICSA 2004).

[2]  Carlos José Pereira de Lucena,et al.  Towards a Method for the Development of Aspect-Oriented Generative Approaches , 2004 .

[3]  Mohamed Mancona Kandé,et al.  A concern-oriented approach to software architecture , 2003 .

[4]  Deepak Dahiya,et al.  Modularization of concerns in a distributed framework: An aspect oriented approach , 2009, 2009 2nd IEEE International Conference on Computer Science and Information Technology.

[5]  Arvinder Kaur,et al.  Identification of Crosscutting Concerns: A Survey , 2009 .

[6]  Lidia Fuentes,et al.  DAOP-ADL: An Architecture Description Language for Dynamic Component and Aspect-Based Development , 2003, GPCE.

[7]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[8]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[9]  Siobhán Clarke,et al.  Composition patterns: an approach to designing reusable aspects , 2001, ICSE 2001.

[10]  Olivier Barais,et al.  TranSAT: A Framework for the Specication of Software Architecture Evolution , 2004 .

[11]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[12]  Alfred V. Aho,et al.  Do Crosscutting Concerns Cause Defects? , 2008, IEEE Transactions on Software Engineering.

[13]  David Garlan,et al.  Acme: architectural description of component-based systems , 2000 .

[14]  Siobhán Clarke,et al.  Composition patterns: an approach to designing reusable , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[15]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[16]  Hans-Arno Jacobsen,et al.  Generic Middleware Substrate Through Modelware , 2005, Middleware.

[17]  Siobhán Clarke,et al.  Towards a standard design language for AOSD , 2002, AOSD '02.

[18]  Mariano Ceccato,et al.  Aspect mining through the formal concept analysis of execution traces , 2004, 11th Working Conference on Reverse Engineering.