Composition patterns: an approach to designing reusable aspects
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Term Rewriting Systems
Aspect Weaving with Graph Rewriting
GCSE '99 Proceedings of the First International Symposium on Generative and Component-Based Software Engineering
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
An Aspect Language for Robust Programming
Proceedings of the Workshop on Object-Oriented Technology
Process-Algebraic Foundations of Aspect-Oriented Programming
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Confluence of Typed Attributed Graph Transformation Systems
ICGT '02 Proceedings of the First International Conference on Graph Transformation
Composition, reuse and interaction analysis of stateful aspects
Proceedings of the 3rd international conference on Aspect-oriented software development
Verifying aspect advice modularly
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
A classification system and analysis for aspect-oriented programs
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Using Aspect Oriented Techniques to Support Separation of Concerns in Model Driven Development
COMPSAC '05 Proceedings of the 29th Annual International Computer Software and Applications Conference - Volume 01
Semantic-based weaving of scenarios
Proceedings of the 5th international conference on Aspect-oriented software development
Fundamentals of Algebraic Graph Transformation (Monographs in Theoretical Computer Science. An EATCS Series)
Defining and validating transformations of UML models
HCC '03 Proceedings of the 2003 IEEE Symposium on Human Centric Computing Languages and Environments
A graph-based approach to modeling and detecting composition conflicts related to introductions
Proceedings of the 6th international conference on Aspect-oriented software development
Incremental analysis of interference among aspects
Proceedings of the 7th workshop on Foundations of aspect-oriented languages
The Epsilon Transformation Language
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
Semantics-Based Weaving of UML Sequence Diagrams
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
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
A General Approach for Scenario Integration
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
Aspect-Oriented Model Weaving Beyond Model Composition and Model Transformation
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Aspect-oriented multi-view modeling
Proceedings of the 8th ACM international conference on Aspect-oriented software development
From sequence diagrams to Java-stairs aspects
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Modular verification of strongly invasive aspects: summary
Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
Confluence in Domain-Independent Product Line Transformations
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Detection and Resolution of Weaving Interactions
Transactions on Aspect-Oriented Software Development V
AspectOptima: A Case Study on Aspect Dependencies and Interactions
Transactions on Aspect-Oriented Software Development V
Analysis of Aspect-Oriented Model Weaving
Transactions on Aspect-Oriented Software Development V
MATA: A Unified Approach for Composing UML Aspect Models Based on Graph Transformation
Transactions on Aspect-Oriented Software Development VI
Transactions on Aspect-Oriented Software Development VI
Weaving multiple aspects in sequence diagrams
Transactions on aspect-oriented software development III
MoDELS'05 Proceedings of the 2005 international conference on Satellite Events at the MoDELS
Modeling crosscutting services with UML sequence diagrams
MoDELS'05 Proceedings of the 8th international conference on Model Driven Engineering Languages and Systems
Conflict detection for graph transformation with negative application conditions
ICGT'06 Proceedings of the Third international conference on Graph Transformations
Term rewriting meets aspect-oriented programming
Processes, Terms and Cycles
Confluence of graph transformation revisited
Processes, Terms and Cycles
HiLA: high-level aspects for UML state machines
MODELS'09 Proceedings of the 2009 international conference on Models in Software Engineering
Hi-index | 0.00 |
The last decade has seen several aspect language proposals for UML 2 sequence diagrams. Aspects allow the modeler to define crosscutting concerns of sequence diagrams and to have these woven with the sequence diagrams of a so-called base model, in order to create a woven model. In a real-world scenario, there may be multiple aspects applicable to the same base model. This raises the need to analyse the set of aspects to identify possible aspect interactions (dependencies and conflicts) between applications of aspects. We call a set of aspects terminating if they may not be applied infinitely many times for any given base model. Furthermore, we call a set of terminating aspects confluent, if they, for any given base model, always yield the same final result regardless of the order in which they are applied. Since confluence must hold for any base model, this is a much stronger result than many of the current approaches that have addressed detection of aspect interactions limited to a specific base model. Our aspects are specified using standard sequence diagrams with some extensions. In this paper, we present a confluence theory specialized for our highly expressive aspect language. For the most expressive aspects, we prove that confluence is undecidable. For another class of aspects with considerable expressiveness, we prescribe an algorithm to check confluence. This algorithm is based on what we call an extended critical pair analysis. These results are useful both for modelers and researchers working with sequence diagram aspects and for researchers wanting to establish a confluence theory for other aspect-oriented modelling or model transformation approaches.