A Taxonomy of Aspects in Terms of Crosscutting Concerns
نویسنده
چکیده
Aspect-orientation provides support for “ Separation of Concerns” by means of techniques that first isolate and then weave concerns. Most work in aspect-orientation has achieved such goals at the programming level, even also at the modeling level. Though, in some cases the application of these techniques is independent of the problem itself. In other words, the techniques for weaving either code or models are in principle applicable to a number of problems without a clear criterion to answer questions like: in what software processes we may actually discuss aspect-orientation? This also brings other questions: what do we consider an aspect?, how do we deal with it?, are aspects crosscutting concerns? The first notions of aspect-orientation relate to crosscutting in code. We consider this a bottom-up approach. We believe though, that aspect-orientation can be better understood from an architectural perspective. We call this a top-down approach. We explore the question of “what makes an aspect an aspect” and “when do aspects arise” from a top-down perspective. Our work relates to a definition of aspects in terms of requirements traceability, proposes a classification, and altogether a taxonomy.
منابع مشابه
A Method Based on Petri Nets for Identification of Aspects
One of the important factors in creating complexity in software systems is the existence of crosscutting concerns. The concept of aspect orientation with presentation of a method could modulate crosscutting concerns into the single unit that is called aspect, and solve many problems which are created such as tangling and scattering. However, identification and specification of crosscutting conc...
متن کاملImproving Software Modularity through Crosscutting Concern Extraction
Aspect-oriented programming (AOP) is a programming paradigm for improving the modularity of software systems by localizing crosscutting concerns in the system into aspects. Aspect-oriented refactorings extend AOP to legacy systems, by identifying and encapsulating existing crosscutting concerns through aspect-mining (discovery of crosscutting concerns) and aspect refactoring (semantic-preservin...
متن کاملRefactoring of Crosscutting Concerns with Metaphor-Based Heuristics
It has been advocated that Aspect-Oriented Programming (AOP) is an effective technique to improve software maintainability through explicit support for modularising crosscutting concerns. However, in order to take the advantages of AOP, there is a need for supporting the systematic refactoring of crosscutting concerns to aspects. Existing techniques for aspect-oriented refactoring are too fine-...
متن کاملA Taxonomy of Asymmetric Requirements Aspects
The early aspects community has received increasing attention among researchers and practitioners, and has grown a set of meaningful terminology and concepts in recent years, including the notion of requirements aspects. Aspects at the requirements level present stakeholder concerns that crosscut the problem domain, with the potential for a broad impact on questions of scoping, prioritization, ...
متن کاملCrosscutting , what is and what is not ? : A Formal definition based on a Crosscutting Pattern
Crosscutting is usually described in terms of scattering and tangling. However, the distinction between these concepts is vague, which could lead to ambiguous statements. Sometimes, precise definitions are required, e.g. for the formal identification of crosscutting concerns. We propose a conceptual framework for formalizing these concepts based on a crosscutting pattern that shows the mapping ...
متن کامل