Integrating protocol modelling into reusable aspect models
Aspect-oriented modelling approaches, e.g. the multi-view modelling approach Reusable Aspect Models (RAM), advocate to model concerns separately, and then to use model composition to create complex models in which these concerns are intertwined. In such a context, specifying the composition of the models is a non-trivial task, in particular when it comes to specifying the composition of behavioural models. This is the case for RAM message views, which define behaviour using sequence diagrams. In this paper we describe how we added an additional behavioural view to RAM -- the state view -- that specifies the allowed invocation protocol of class instances.. We discuss why Protocol Modelling, a compositional modelling approach based on state diagrams, is an ideal notation to specify such a state view, and show how we added support for protocol modelling to the RAM metamodel. Finally, we demonstrate how to model using the new state views by means of an example, and explain how state views can be exploited to verify the correctness of compositions.