BDL: A Semantics Backbone for UML Dynamic Diagrams
Abstract
The UML (Unified Modelling Language) comprises various types of notations, to model the functional architecture, the behaviour of its components, and its deployment. Dynamic diagrams provide descriptions of the components and system behaviour. Examples of dynamic diagrams are collaboration and sequence diagrams to specify high level abstractions for sequences of actions involving several components of the system. Activity diagrams, state diagrams, and statecharts are used to specify the detailed behaviour of a single component. In this report we propose a new formalism, called BDL, to serve as a semantic backbone for dynamic diagrams of UML. BDL diagrams allow to provide a set of UML diagrams a global dynamic semantics. It allows to specify the behaviour of systems. It provides a common semantics to the different dynamic diagrams -this report analyses in detail sequence diagrams and statecharts. Composing components requires different types of communication, synchronous or asynchronous. While a precise description of these choices is essential at deployment stage, it is useful not to bother with this at early design stages. To this end, BDL supports a flexible, dual synchronous/asynchronous semantics for its communications. It provides sounded support for moving from synchronous to asynchronous communication while preserving dynamic semantics. We illustrate the use of BDL on a small example of service adaptation in telecommunications.