AOSE: Aspect Oriented Software Engineering
“The Aspect-Oriented Software Engineering aims to develop systematic means for the identification, modularization, representation and composition of crosscutting concerns (the aspects) throughout the software life cycle” (AOSE Special Interest Group: Lancaster University). (OR)
AOSE means “Thinking about requirements of a stakeholders and system design based on separation of concern”
Concept and Terminology:
Aspect-oriented means explicit support for localize the separation of concern, called aspects. An aspect is a module that encapsulates concern and co-exists with other functionalities. There is a complex relation between requirements and system components. AOSE is the approach to solve the problems that arise. AOSE encapsulates system functionality that has cross cuts other functionalities. Basically key benefit is the “separation of concerns”.
Separation of concerns means that software organized in such a way that each program element done only one thing in one time. Some concerns cross cut other concerns. AOSE solve the problem of cross cuts concerns. “Concerns” are not program issues; these reflect the system requirements and priorities of the stakeholders. Some of types of concerns are:
VII. Organizational etc.
An Aspect includes further three things and these are:
“An aspect includes information where it should be included in a program because it implements concern”.
- A join point is a place where an aspect may be included in a program.
- A point cut defines at which join point an aspect included in a program.
- Advice means the implementing the concern.
- Weaving means incorporation of advice at a join point.
Software Engineering with Aspect:
Thinking about requirements of a stakeholders and system design based upon separation of concern. The...