System Analysis and Modeling: Models and Reusability

Volume 8769 of the series Lecture Notes in Computer Science pp 96-109

Associativity between Weak and Strict Sequencing

  • Gregor v. BochmannAffiliated withSchool of Electrical Engineering and Computer Science, University of Ottawa


In this paper, we consider workflows (called collaborations) involving several system components (or roles) where different components may independently start their participation in the collaboration, or terminate their participation. We consider a global workflow that is composed out of several sub-collaborations which should be executed in a specified order. For sequential execution, strict and weak sequencing have been defined. With strict sequencing all actions of the first sub-collaboration must be completed before the second sub-activity may start. Weak sequencing was introduced for sequencing distributed activities, in particular sequence diagrams, and implies only local sequencing at each system component, but no global sequencing rule. We define the semantics of a collaboration in terms of the partial order among its internal actions, and we also use partial orders to define the semantics of strict and weak sequencing of sub-collaborations. Then we concentrate on the associativity between weak and strict sequencing. Based on the given definitions, it is shown that such associativity is satisfied in most situations, however, its validity depends on certain conditions about the participation of the different system components in the sequenced sub-collaborations and on the question whether they play an initiating or terminating role in these activities. The lack of associativity may lead to ambiguities when the dynamic behavior of complex workflows is developed and specified. These difficulties can be avoided by conventions for priorities between weak or strict sequencing, and/or some appropriate bracketing structure in the workflow notation.