Results 1 - 10
of
14
Weaving multiple aspects in sequence diagrams
- IN: TRANS. ON ASPECT ORIENTED SOFTWARE DEVELOPMENT
, 2007
"... Handling aspects within models looks promising for managing crosscutting concerns early in the software life-cycle, up from programming to design, analysis and even requirements. At the modeling level, even complex behavioral aspects can easily be described for instance as pairs of sequence diagram ..."
Abstract
-
Cited by 14 (7 self)
- Add to MetaCart
Handling aspects within models looks promising for managing crosscutting concerns early in the software life-cycle, up from programming to design, analysis and even requirements. At the modeling level, even complex behavioral aspects can easily be described for instance as pairs of sequence diagrams: one for the pointcut specifying the behavior to detect, and the second one for an advice representing the wanted behavior at the join point. While this is fine for informal documentation purposes, or even intuitive enough when a single aspect has to be woven, a more precise semantics of both join point detection and advice weaving is needed for using these modeling artifacts for Model Driven Engineering activities such as code generation or test synthesis. This paper proposes various interpretations for pointcuts that allow multiple behavioral aspects to be statically woven. The idea is to allow join points to match a pointcut even when some extra-messages occur in between. However, with this new way of specifying join points, the composition of the advice with the detected part cannot any longer be just a replacement of the detected part by the advice. We have to consider the events (or the messages) of the join point, but also the events which occur between them, and merge them with the behavior specified within the advice. We thus also propose a formal definition of a new merge operator, and describe its implementation on the Kermeta platform.
Semantic Join Point Models: Motivations, Notions and Requirements
- In Proceedings of the Software Engineering Properties of Languages and Aspect Technologies Workshop (SPLAT’06
, 2006
"... Aspect-oriented programming (AOP) has been designed to provide a better separation of concerns at development level by modularizing concerns that would otherwise be tangled and scattered across other concerns. Current mainstream AOP techniques separate crosscutting concerns on a syntactic basis wher ..."
Abstract
-
Cited by 7 (3 self)
- Add to MetaCart
Aspect-oriented programming (AOP) has been designed to provide a better separation of concerns at development level by modularizing concerns that would otherwise be tangled and scattered across other concerns. Current mainstream AOP techniques separate crosscutting concerns on a syntactic basis whereas a concern is more a semantic matter. Therefore, a different, more semanticoriented, approach to AOP is needed. In this position paper, we investigate the limitations of mainstream AOP techniques, mainly AspectJ, in this regard and highlight the issues that need to be addressed to design semantic-based join point models.
Verifying scenario-based aspect specifications
- Proc. Formal Methods(FM2005), LNCS 3582
, 2005
"... The research was done under the supervision of Prof. Shmuel Katz in the department of Computer Science. The generous financial help of the AOSD-EUROPE Network of Excellence is gratefully acknowledged. I wish to express my sincere gratitude to my supervisor, Assoc. Prof. Shmuel Katz, ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
The research was done under the supervision of Prof. Shmuel Katz in the department of Computer Science. The generous financial help of the AOSD-EUROPE Network of Excellence is gratefully acknowledged. I wish to express my sincere gratitude to my supervisor, Assoc. Prof. Shmuel Katz,
Interaction Analysis in Aspect-Oriented Models
"... Aspect-oriented concepts are currently introduced in all phases of the software development life cycle. However, the complexity of interactions among different aspects and between aspects and base entities may reduce the value of aspect-oriented separation of cross-cutting concerns. Some interaction ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Aspect-oriented concepts are currently introduced in all phases of the software development life cycle. However, the complexity of interactions among different aspects and between aspects and base entities may reduce the value of aspect-oriented separation of cross-cutting concerns. Some interactions may be intended or may be emerging behavior, while others are the source of unexpected inconsistencies. It is therefore desirable to detect inconsistencies as early as possible, preferably at the modeling level. We propose an approach for analyzing interactions and potential inconsistencies at the level of requirements modeling. We use a variant of UML to model requirements in a use case driven approach. Activities that are used to refine use cases are the join points to compose crosscutting concerns. The activities and their composition are formalized using the theory of graph transformation systems, which provides analysis support for detecting potential conflicts and dependencies between rule-based transformations. This theory is used to effectively reason about potential interactions and inconsistencies caused by aspectoriented composition. The analysis is performed with the graph transformation tool AGG. The automatically analyzed conflicts and dependencies also serve as an additional view that helps in better understanding the potential behavior of the composed system. 1
M.: AspectOriented Modeling with Integrated Object Models. Modellierung 2006
- Proc. Modellierung 2006
, 2006
"... Abstract: With the advent of aspect-oriented programming, the need for adequate techniques for handling aspect-oriented artifacts in the early phases of the software engineering process has emerged. In this paper, we present an aspect-oriented language extension for an integrated modeling language b ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Abstract: With the advent of aspect-oriented programming, the need for adequate techniques for handling aspect-oriented artifacts in the early phases of the software engineering process has emerged. In this paper, we present an aspect-oriented language extension for an integrated modeling language based on object models. We present the way aspect constructs can be handled in requirements and architectural models, and identify the impact on existing modeling languages and models. 1
The Role of Aspects in Modeling Product Line Variabilities
- In Proceedings of the 1 st Workshop on Aspect-Oriented Product Line Engineering (AOPLE), GPCE
, 2006
"... As of today, it is unclear whether aspect-oriented modeling can benefit the model-driven development of software product lines. Although some preliminary studies exist at the requirements and implementation level that investigate the interaction of crosscutting behaviors and product-line variabiliti ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
As of today, it is unclear whether aspect-oriented modeling can benefit the model-driven development of software product lines. Although some preliminary studies exist at the requirements and implementation level that investigate the interaction of crosscutting behaviors and product-line variabilities, to the best of our knowledge these interactions at the modeling level are not yet investigated. The contribution of this work is a preliminary study of the object-oriented and aspect-oriented approaches for handling crosscutting variabilities. This study helps us identify desired characteristics of aspect-oriented modeling techniques for product lines. A pacemaker product line, extracted from the real industry case, serves as a running example to illustrate our findings.
Reducing the Complexity of AspectJ Mechanisms for Recurring Extensions 14
, 2007
"... 2 Preface Aims and Goals of the Workshop Product Line Engineering (PLE) is an increasingly important paradigm in software development whereby commonalities and variations among similar systems are systematically identified and exploited. PLE covers a large spectrum of activities, from domain analysi ..."
Abstract
- Add to MetaCart
2 Preface Aims and Goals of the Workshop Product Line Engineering (PLE) is an increasingly important paradigm in software development whereby commonalities and variations among similar systems are systematically identified and exploited. PLE covers a large spectrum of activities, from domain analysis to product validation and testing. Variability is manifested throughout this spectrum in artefacts such as models, requirements, code and components and it is often of crosscutting nature. These characteristics make Aspect-Oriented Software Development (AOSD) techniques appealing as suitable candidates to modularise variability. Work on Generative Programming (GP) and Component Engineering (CE) has shown the crucial role they play in PLE and the potential benefits of its synergy with AOSD. The workshop aimed at expanding and capitalising on the increasing
A SCENARIO AND ASPECT-ORIENTED REQUIREMENTS AGILE APPROACH
"... Software development agile methodologies aim at promoting fast communication and incremental software delivery. The success of these methodologies in permanently evolving systems depends on how software engineers identify and structure changing requirements. Current agile methodologies fail to expli ..."
Abstract
- Add to MetaCart
Software development agile methodologies aim at promoting fast communication and incremental software delivery. The success of these methodologies in permanently evolving systems depends on how software engineers identify and structure changing requirements. Current agile methodologies fail to explicitly deal with the crosscutting nature of requirements, compromising the speed and capacity of systems to evolve. Since Aspect Oriented Requirements Engineering deals with crosscutting requirements systematically, its concepts and mechanisms can be integrated to agile methodologies. This work proposes a scenario based requirements approach – AspOrAS – that incorporates aspects. Keywords: Aspect-oriented requirements; Agile modeling; Scenarios. 1.
1 ISLAM ALI, 1 JAHANGIR MARWAT,
"... Focus of Aspect Oriented Software Development is on the identification, separation, representation and composition of crosscutting concerns. Crosscutting concerns behavior effects the whole system development. Traditional requirement engineering process does not cater for these crosscutting concerns ..."
Abstract
- Add to MetaCart
Focus of Aspect Oriented Software Development is on the identification, separation, representation and composition of crosscutting concerns. Crosscutting concerns behavior effects the whole system development. Traditional requirement engineering process does not cater for these crosscutting concerns. A new aspect oriented requirement engineering process is proposed to overcome this deficiency. Focus of this research activity is to justify why this new aspect oriented requirement engineering process is needed.

