Describing interactions between MSC components: the MSC connectors
The description of the interactions between components play a prominent role in today's compositional system development strategies. In particular, system family engineering focuses on the description and evolution of interfaces. The communication between the parts of a system, (that is, its components) follows interaction patterns that are expressed in the component-oriented world as software connectors. Message sequence charts (MSCs) are well suited to provide the adequate descriptions for both components and connectors. However, a few new language constructs are required to achieve an adequate description of the component communication. The syntax of these constructs is presented here, together with a brief discussion of their semantics. The interaction of MSC components via an MSC connector is defined by matching the component and connector interface descriptions, based upon a partitioning of the component environment. MSC connectors may be considered as a high-level message construct for the refinement of the communication behaviour, a construct which is still missing in the MSC language. The concepts, originally derived from system family and component oriented software engineering, turn out to be useful as well for interaction abstractions between the smaller MSC language constructs such as operator expressions or plain instances, thus providing a uniform approach to the abstraction of communication features in the MSC language.