Aspect Weaving in UML Activity Diagrams: A Semantic and Algorithmic Framework

Aspect-Oriented Modeling (AOM) is an emerging solution for handling crosscutting concerns at the software modeling level in order to reduce the complexity of software models and application code. Most existing work on weaving aspects into UML design models is presented from a practical perspective and lacks formal syntax and semantics. In this paper, we propose formal specifications for aspect weaving into UML activity diagrams and the implementation strategies of the proposed weaving semantics. To this end, we define syntax for activity diagrams and UML aspects. We also show the correctness and the completeness of the matching and the weaving processes in terms of the semantics and the algorithms provided in this paper. Finally, we demonstrate the viability and the relevance of our propositions using a case study.