Synthesis of Reo circuits from scenario-based interaction specifications (Q541679)
From MaRDI portal
scientific article
Language | Label | Description | Also known as |
---|---|---|---|
English | Synthesis of Reo circuits from scenario-based interaction specifications |
scientific article |
Statements
Synthesis of Reo circuits from scenario-based interaction specifications (English)
0 references
7 June 2011
0 references
The authors propose a novel synthesis technique for generating Reo circuits from scenario-based interaction specifications. A scenario corresponds to a sequence of interactions among system components/services and thus is a ``partial system description''. Reo [the second author, Math. Struct. Comput. Sci. 14, No. 3, 329--366 (2004; Zbl 1085.68552)] is an exogenous coordination language that can be used to develop coordinator ``glue code \dots that establishes the necessary communication links among the parties and engages them in the specified protocol''. Exogenous models ``relegate the task of conducting\dots coordination to a coordinator glue code''. The scenarios are described using UML sequence diagrams, the precise semantics of which is defined by the authors using the coalgebraic approach [the first author and \textit{L. S. Barbosa}, ``A coalgebraic semantic framework for reasoning about UML sequence diagrams'', QSIC'08, IEEE 8th international conference on quality of software. Oxford: IEEE Press. 17--26 (2008)]. The authors note that this paper extends their previous work [the first two authors, ``Synthesis of connectors from scenario-based interaction specifications'', Lect. Not. Comput. Sci. 5282, 114--129 (2008)] ``toward bridging the gap between low-level implementations and scenario-based specifications''. While the authors' claim that scenarios are close to users' understanding appears to be valid, it should be noted that scenarios are volatile (for example, as the authors properly observe, ``it is possible to add more scenarios during the development'') and exist within the context of a stable domain model (see, e.g., [\textit{D. Björner}, Software engineering, Vol. 1--3. Berlin: Springer (2006; Zbl 1095.68020; Zbl 1095.68021; Zbl 1095.68022)]). Such a domain model is never mentioned in the paper. Further, it is well-known that clear and precise semantics of UML constructs is not specified in the UML standard [\textit{M. Broy} and \textit{M. V. Cengarle}, ``UML formal semantics: lessons learned'', Software \& Systems Modeling 10, No. 4, 441--446 (2011)] and many and varied attempts to rectify this problem have been made. The authors present an overview of Reo and of syntax and semantics of UML sequence diagrams, and use a rather primitive bank customer login scenario as a running example throughout this paper. Even from this example, however, it can be seen that relatively simple UML sequence diagrams are hardly understandable by business stakeholders (who, after all, have to agree or disagree with these fragments of the business specifications). Perhaps more importantly, the Reo circuits constructed from these sequence diagrams are much more difficult to understand, and the authors themselves note that ``for simplicity'' they ``do not give the Reo circuit for the whole scenario''. Thus, it is doubtful that such Reo circuits would be of much help to those who will have to implement the specifications of these scenarios. It is also not clear from the paper how the ``glue code'' is (to be) generated from the Reo circuits. The authors appear to recognize at least some problems of this kind complaining about (previously synthesized) ``verbose circuits that do not `look natural' to the human eye''. At the same time, they properly note that their approach, unlike certain other related approaches, emphasizes semantics rather than just signatures and also observe that when the scenario specifications are modified, part of the previously synthesized Reo circuits can be reused. They expect their current work to be useful in model-based development of service-oriented applications. The authors' emphasis, however, is on coalgebraic semantics of sequence diagrams and on correctness proof of their synthesis approach.
0 references
connector
0 references
Reo circuits
0 references
scenario-based specifications
0 references
UML sequence diagrams
0 references
exogenous models
0 references
coalgebraic approach
0 references
synthesis
0 references