The Aspect-Oriented Software Architecture Design Portal

 Advanced Separation of Concerns at the Architecture Design Level
 Identifying and Specifying Early Aspects
 

Home
Software Architecture
AOSD
Architectural Aspects
Publications
Events
Related Links
AOSAD Project
E-Tutorial

Site Map
Search
Contact

Edited by:
Bedir Tekinerdogan

State of the Art ASAAM AODA

 

Architectural Aspects

Software architecture forms one of the key artifacts in the entire software development life cycle since it embodies the earliest design decisions and includes the gross-level components that directly impact the subsequent analysis, design and implementation. Accordingly, it is important that the architecture design supports the software system qualities required by the various stakeholders. For ensuring the quality factors the common assumption is that identifying the fundamental concerns for architecture design is necessary and various architecture design methods have been introduced for this purpose.

It appears that some concerns, even at the architectural design level, can not be easily localized and specified in individual architectural components. Similar to the notion of aspect at the programming level, we say that these concerns are crosscutting and denote so-called architectural aspects. Since the crosscutting property of architectural aspects is inherent we claim that these cannot be undone simply by redefining the software architecture using conventional architectural abstractions. In fact, we believe that like various aspect-oriented programming abstractions we need explicit mechanisms to identify, specify and evaluate aspects at the architecture design level.

Current software architecture design methods do not make an explicit distinction between conventional architectural concerns that can be localized using current architectural abstractions and architectural concerns that crosscut multiple architectural components. The risk is that potential aspects might be easily overlooked during the software architecture design and remains unsolved at the design and programming level. This may lead to tangled code in the system and consequently the quality factors that the architecture analysis methods attempt to verify will still be impeded.

This section will discuss the following issues:

bullet State-of-the-art work on coping with crosscutting concerns at the software architecture design level (Architectural Styles, Architectural Views, Model-Driven Architecture)
bullet Aspect-Oriented Requirements Analysis
bullet ASAAM (Aspectual Software Architecture Analysis Method)
bullet Aspect-Oriented Domain Analysis
 
 
 
 
Identifying architectural concerns
 
 
 
 
 
 
Architectural Aspects
 
 
 
 
 
 
 
 
 
 
 
 
 
Goal of the section