LSCs: Breathing Life into Message Sequence Charts
Formal Methods in System Design
Modularisation and composition of aspectual requirements
Proceedings of the 2nd international conference on Aspect-oriented software development
A Framework for the Detection and Resolution of Aspect Interactions
GPCE '02 Proceedings of the 1st ACM SIGPLAN/SIGSOFT conference on Generative Programming and Component Engineering
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
A Formal Definition of Crosscuts
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Eclipse Modeling Framework
A UML-Based Pattern Specification Technique
IEEE Transactions on Software Engineering
Modeling and Composing Scenario-Based Requirements with Aspects
RE '04 Proceedings of the Requirements Engineering Conference, 12th IEEE International
Implementing protocols via declarative event patterns
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Aspect-Oriented Analysis and Design
Aspect-Oriented Analysis and Design
Aspect-Oriented Software Development with Use Cases (Addison-Wesley Object Technology Series)
Aspect-Oriented Software Development with Use Cases (Addison-Wesley Object Technology Series)
Adding trace matching with free variables to AspectJ
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Expressing different conceptual models of join point selections in aspect-oriented design
Proceedings of the 5th international conference on Aspect-oriented software development
Semantic-based weaving of scenarios
Proceedings of the 5th international conference on Aspect-oriented software development
Efficient control flow quantification
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Expressive pointcuts for increased modularity
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Weaving executability into object-oriented meta-languages
MoDELS'05 Proceedings of the 8th international conference on Model Driven Engineering Languages and Systems
A Generic Approach for Automatic Model Composition
Models in Software Engineering
Semantics-Based Weaving of UML Sequence Diagrams
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
Semantics Preservation of Sequence Diagram Aspects
ECMDA-FA '08 Proceedings of the 4th European conference on Model Driven Architecture: Foundations and Applications
Generic Reusable Concern Compositions
ECMDA-FA '08 Proceedings of the 4th European conference on Model Driven Architecture: Foundations and Applications
A Semantics-Based Aspect Language for Interactions with the Arbitrary Events Symbol
ECMDA-FA '08 Proceedings of the 4th European conference on Model Driven Architecture: Foundations and Applications
Web Services Orchestrations Evolution: A Merge Process for Behavioral Evolution
ECSA '08 Proceedings of the 2nd European conference on Software Architecture
Aspect-oriented multi-view modeling
Proceedings of the 8th ACM international conference on Aspect-oriented software development
From sequence diagrams to state machines by graph transformation
ICMT'10 Proceedings of the Third international conference on Theory and practice of model transformations
Managing embedded systems complexity with aspect-oriented model-driven engineering
ACM Transactions on Embedded Computing Systems (TECS)
Issues in model-driven behavioural product derivation
Proceedings of the 5th Workshop on Variability Modeling of Software-Intensive Systems
A survey on UML-based aspect-oriented design modeling
ACM Computing Surveys (CSUR)
Workflow design using fragment composition: crisis management system design through ADORE
Transactions on aspect-oriented software development VII
Aspect-oriented design with reusable aspect models
Transactions on aspect-oriented software development VII
A framework for flexible and dependable service-oriented embedded systems
Architecting dependable systems VII
Workflow design using fragment composition: crisis management system design through ADORE
Transactions on aspect-oriented software development VII
Aspect-oriented design with reusable aspect models
Transactions on aspect-oriented software development VII
A feature-based approach for modeling role-based access control systems
Journal of Systems and Software
Aspect-oriented model-driven code generation: A systematic mapping study
Information and Software Technology
"Adore", a logical meta-model supporting business process evolution
Science of Computer Programming
Confluence of aspects for sequence diagrams
Software and Systems Modeling (SoSyM)
Hi-index | 0.00 |
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.