Information Systems Frontiers

, Volume 9, Issue 4, pp 359–373 | Cite as

The adequacy of languages for representing interaction mechanisms

  • Remco M. DijkmanEmail author
  • Teduh Dirgahayu
  • Dick A. C. Quartel
Open Access


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: (1) be expressive enough to represent the mechanisms; (2) be easy to use when expressing them; (3) be platform independent in the sense that it does not force implementation decisions for a mechanism; and (4) 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.


Design language Design concept Communication patterns Middleware 


  1. Allan, R., & Garlan, D. (1997). A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology, 6(3), 213–249.CrossRefGoogle Scholar
  2. Andrade Almeida, J. P., Dijkman, R. M., van Sinderen, M. J., Quartel, D. A. C., & Ferreira Pires, L. (2006). Model driven design, refinement and transformation of abstract interactions. International Journal of Cooperative Information Systems, 15(4), 599–632.CrossRefGoogle Scholar
  3. Barros, A., Dumas, M., & ter Hofstede, A. H. M. (2005). Service interaction patterns. In Proc. of the 3rd International Conference on Business Process Management (pp. 236–251).Google Scholar
  4. Bastide, R., Sy, O., & Palanque, P. (2000). A formal notation and tool for the engineering of CORBA systems. Concurrency: Practice & Experience, 12, 1379–1403.CrossRefGoogle Scholar
  5. Dijkman, R. M., Dirgahayu, T., & Quartel, D. A. C. (2006a). Towards advanced interaction design concepts. In: Proc. of EDOC 2006 (pp. 331–342).Google Scholar
  6. Dijkman, R. M., Quartel, D. A. C., & van Sinderen, M. J. (2006b). Consistency in multi-viewpoint architectural design of enterprise information systems (BETA Working Paper WP-188). Eindhoven, The Netherlands: Eindhoven University of Technology.Google Scholar
  7. Hohpe, G., & Woolf, B. (2004). Enterprise integration patterns: Designing, building, and deploying messaging solutions. Boston, MA, USA: Addison Wesley.Google Scholar
  8. ITU-T (1995). Open distributed processing reference model (specification 901.4). Geneva, Switzerland: ITU-T.Google Scholar
  9. ITU-T (1999). Information technology—open distributed processing reference model—enterprise language (specification 911). Geneva, Switzerland: ITU-T.Google Scholar
  10. ITU-T (2002). Specification and description language (specification Z.100). Geneva, Switzerland: ITU-T.Google Scholar
  11. Lamport, L., Shostak, R., & Pease, M. (1982). The Byzantine generals problem. ACM Transactions on Programming Languages and Systems, 4(3), 382–401.CrossRefGoogle Scholar
  12. Luckham, D. C., & Vera, J. (1995). An event-based architecture definition language. IEEE Transactions on Software Engineering, 21(9), 717–734.CrossRefGoogle Scholar
  13. OMG (2002a). CORBA component model 3.0 (specification formal/2002-06-65). Needham, MA, USA: Object Management Group.Google Scholar
  14. OMG (2002b). Common object request broker architecture: Core specification, version 3.0 (specification formal/02-12-06). Needham, MA, USA: Object Management Group.Google Scholar
  15. OMG (2003). UML 2.0 infrastructure specification (specification ptc/03-09-15). Needham, MA, USA: Object Management Group.Google Scholar
  16. OMG (2004). UML 2.0 superstructure specification (specification ptc/04-10-02). Needham, MA, USA: Object Management Group.Google Scholar
  17. Quartel, D. A. C., Dijkman, R. M., & van Sinderen, M. J. (2005). Extending profiles with stereotypes for composite concepts. In Proc. of MODELS 2007 (pp. 232–247).Google Scholar
  18. Quartel, D. A. C., Ferreira Pires, L., & van Sinderen, M. J. (2002). On architectural support for behavior refinement in distributed systems design. Journal of Integrated Design and Process Science, 6.Google Scholar
  19. Ruh, W. A., Maginnis, F. X., & Brown, W. J. (2001). Enterprise application integration: A Wiley tech brief. New York, NY, USA: Wiley.Google Scholar
  20. van der Aalst, W. M. P., & ter Hofstede, A. H. M. (2002). Workflow patterns: On the expressive power of (Petri-net-based) workflow languages. In Proc. of CPN 2002 (pp. 1–20).Google Scholar
  21. van der Aalst, W. M. P., ter Hofstede, A. H. M., Kiepuszewski, B., & Barros, A. P. (2003). Workflow patterns. Distributed and Parallel Databases, 14(1), 5–51.CrossRefGoogle Scholar
  22. van Sinderen, M. J., Ferreira Pires, L., & Vissers, C. A. (1992). Protocol design and implementation using formal methods. The Computer Journal, 35, 478–491.CrossRefGoogle Scholar
  23. W3C (2004). Web services architecture (specification NOTE-ws-arch-20040211). Sophia-Antipolis Cedex, France: W3C.Google Scholar
  24. Wohed, P., van der Aalst, W. M. P., Dumas, M., & ter Hofstede, A. H. M. (2003). Analysis of web services composition languages: The case of BPEL4WS. In Proc. of the 22nd International Conference on Conceptual Modelling.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Remco M. Dijkman
    • 1
    Email author
  • Teduh Dirgahayu
    • 2
  • Dick A. C. Quartel
    • 2
  1. 1.Eindhoven University of TechnologyEindhovenThe Netherlands
  2. 2.University of TwenteEnschedeThe Netherlands

Personalised recommendations