This paper presents criteria for the adequacy of languages to represent interaction mechanisms. It then uses
these criteria to analyse the adequacy of UML. We focus on the interaction mechanisms provided by Web Services technology and by CORBA for request/response, callback, polling and (multicast) message passing.
We argue that the criteria for adequacy of a design language are that the language should: (i) be expressive
enough to represent the mechanisms; (ii) be easy to use when expressing them; (iii) be platform independent in
the sense that it does not force implementation decisions for a mechanism; and (iv) behave corresponding to
the mechanisms that it represents. We show that these criteria follow logically from the use of a design
language in the design process.
For UML we evaluate the first three criteria in a qualitative manner. To evaluate the fourth criteria, we
present Coloured Petri Nets that capture the behaviour of both the mechanisms precisely and the UML constructs that represent them. Subsequently, we check the correspondence of their behaviour.
|Name||CTIT Technical Report Series|
|Publisher||Centre for Telematics and Information Technology, University of Twente|