An Early Approach to Identify and Classify Crosscutting Concerns in Aspect-Oriented Requirement Engineering (AORE) for Better Software Modularity

n this era of science and technology, where dependability on computer based systems is increasing, the size of software code is also increasing due to diverse nature of user requirements. Large software systems must have understandable code and impact of change should also be known otherwise it would be quite reasonable to say that software is very complex. The software complexity can be minimized by increasing the modularity either by using Procedural languages or Object-orient ed languages but Code-tangling and Code-scattering cannot be avoided entirely by these approaches. Code-tangling and code-scattering would ultimately result in poor-traceability and difficulty in software evolution. Requirement gathering is a key task for any project but for a successful completion of any project common functionality of all the modules should also be known which is called crosscutting concerns. Besides identification of crosscutting concerns, the classification of crosscutting concerns is also very important especially when software modularity is concerned. Without identification and classification of crosscutting concerns, software development process would be devastating and is simply wastage of both time and money. The better identification, classification and separation of crosscutting concerns mean better modularity of the software system thus results in enhanced software quality. Aspect-oriented software engineering is relatively a new software paradigm which actually deals with the crosscutting concerns to avoid code tangling and scattering for better software modularity. The purpose of this paper is to establish a roadmap for identifying and classifying crosscutting concerns for better software modularity to support Aspect-oriented software development approach.

[1]  Joerg Evermann,et al.  A meta-level specification and profile for AspectJ in UML , 2007, J. Object Technol..

[2]  Ivar Jacobson,et al.  Aspect-oriented software development with use cases , 2005, Addison Wesley object technology series.

[3]  Julio Cesar Sampaio do Prado Leite,et al.  On Non-Functional Requirements in Software Engineering , 2009, Conceptual Modeling: Foundations and Applications.

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

[5]  Zarinah Mohd Kasirun,et al.  An approach for crosscutting concern identification at requirements level using NLP , 2011 .

[6]  Wouter Joosen,et al.  Aspect-Oriented Software Development in Practice: Tales from AOSD-Europe , 2010, Computer.

[7]  Ruzanna Chitchyan,et al.  Aspect-Oriented Requirements Engineering , 2013, Springer Berlin Heidelberg.

[8]  Paulo Borba,et al.  Separation of Crosscutting Concerns from Requirements to Design: Adapting an Use Case Driven Approach , 2004 .

[9]  Siobhán Clarke,et al.  Theme: an approach for aspect-oriented analysis and design , 2004, Proceedings. 26th International Conference on Software Engineering.

[10]  Mehmet Akşit,et al.  Characterization of Early Aspects Approaches , 2005 .

[11]  Adrian M. Colyer,et al.  Aspect-oriented programming with AspectJ , 2005, IBM Syst. J..

[12]  Adam Przybylek,et al.  Where the Truth Lies: AOP and Its Impact on Software Modularity , 2011, FASE.

[13]  Ivar Jacobson,et al.  Aspect-Oriented Software Development with Use Cases (Addison-Wesley Object Technology Series) , 2004 .

[14]  Mark T True,et al.  Software Requirements , 2005 .

[15]  Awais Rashid,et al.  Aspect-Oriented Requirements Engineering: An Introduction , 2008, 2008 16th IEEE International Requirements Engineering Conference.

[16]  Martin Glinz,et al.  On Non-Functional Requirements , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[17]  James Elliott Hibernate - a developer's notebook , 2004 .

[18]  Eduardo Figueiredo,et al.  ConcernMorph: metrics-based detection of crosscutting patterns , 2009, ESEC/FSE '09.

[19]  Mordechai Ben-Menachem,et al.  Writing effective use cases , 2001, SOEN.

[20]  Wolfgang Weber,et al.  Specifying Use Case Interaction: Types of Alternative Courses , 2003, J. Object Technol..

[21]  M. Cibrán,et al.  Aspect-Oriented Programming for Connecting Business Rules , 2003 .