Abstract
This work revisits the problem of program synthesis from specifications described by high-level message sequence charts. We first show that in the general case, synthesis by a simple projection on each component of the system allows more behaviors in the implementation than in the specification. We then show that differences arise from loss of ordering among messages and show that behaviors can be preserved by addition of communication controllers that intercept messages to add stamping information before resending them and deliver messages to processes in the order described by the specification.
Similar content being viewed by others
References
Abdalla, M., Khendek, F., Butler, G.: New results on deriving SDL specifications from MSCs, pp. 51–66. In SDL, Forum (1999)
Akshay, S., Mukund, M., Kumar, N.K.: Checking coverage for infinite collections of timed scenarios. In CONCUR’07, pp. 181–196 (2007)
Amyot, D., Eberlein, A.: An evaluation of scenario notations and construction approaches for telecommunication systems development. Telecommun. Syst. 24(1), 61–94 (2003)
Amyot, D., Mussbacher, G.: User requirements notation: the first ten years, the next ten years. J. Softw. 6(5), 747–768 (2011)
Baudru, N., Morin, R.: Synthesis of safe message-passing systems. In FSTTCS, pp. 277–289 (2007)
Ben-Abdallah, H., Leue, S.: Syntactic detection of process divergence and non-local choice in Message Sequence Charts. In Proc. of TACAS’97, vol 1217 of LNCS, pp. 259–274 (1997)
Bochmann, G., Gotzhein, R.: Deriving protocol specifications from service specifications. In Proceedings of the ACM SIGCOMM conference on Communications architectures & protocols, pp 148–156 (1986)
Bollig, B., Hélouët, L.: Realizability of dynamic MSC languages. In Proc. of CSR (Computer Science in Russia), volume 6072 of LNCS, pp. 48–59. Springer, New York (2010)
Brand, D., Zafiropoulo, P.: On communicating finite state machines. Technical Report RZ1053, IBM Zurich Research Lab (1981)
Caillaud, B., Darondeau, P., Hélouët, L., Lesventes, G.: HMSCs en tant que spécifications partielles et leurs complétions dans les réseaux de Petri. Research Report RR-3970, INRIA (2000)
Fidge, C.: Logical time in distributed computing systems. IEEE Comput 24(8), 28–33 (1991)
Genest, B., Muscholl, A., Seidl, H., Zeitoun, M.: Infinite-state high-level MSCs: Model-checking and realizability. In ICALP, volume 2380 of LNCS, pp. 657–668 (2002)
Harel, D., Kugler, H.: Synthesizing state-based object systems from lsc specifications. Int. J. Found. Comput. Sci. 13(1), 5–51 (2002)
Hélouët, L., Abdallah, R., Bhatia, D.: SOFAT : Scenario formal analysis toolbox (2011). www.irisa.fr/distribcom/Prototypes/SOFAT/
Hélouët, L., Jard, C.: Conditions for synthesis of communicating automata from HMSCs. In 5th International Workshop on Formal Methods for Industrial Critical Systems (FMICS) (2000)
Hopcroft, J.E., Ullman, J.D.: Introduction to Automata Theory. Addison-Wesley, Languages and Computation (1979)
ITU-T. Z.120: Message sequence charts (MSC). Technical report, International Telecommunication Union (1998)
ITU-T. Z.100: Specification and description language (SDL). Technical report, International Telecommunication Union (2011)
ITU-T. Z.150: User requirements notation (URN)—language requirements and framework. Technical report, International Telecommunication Union (2011)
Leue, S., Mehrmann, L., Rezai, M.: Synthesizing software architecture descriptions from message sequence chart specifications. In ASE, pp. 192–195 (1998)
Liang, H., Dingel, J., Diskin, Z.: A comparative survey of scenario-based to state-based model synthesis approaches. In Proc. of SCESM ’06: the 2006 International Workshop on Scenarios and State Machines: Models, Algorithms, and Tools, pp. 5–12 (2006)
Mansurov, N., Zhukov, D.: Automatic synthesis of sdl models in use case methodology, pp. 225–240. In SDL, Forum (1999)
Mattern, F.: Time and global states of distributed systems. In: Proceedings of International Workshop on Parallel and Distributed Algorithms, Bonas, France, North Holland, pp. 215–226 (1988)
Mukund, M., Kumar, K.N., Sohoni, M.: Synthesizing distributed finite-state systems from MSCs. In CONCUR, pp. 521–535 (2000)
Muscholl, A., Peled, D., Su, Z.: Deciding properties for Message Sequence Charts. In FoSSaCS, volume 1378 of LNCS, pp. 226–242 (1998)
Object Management Group. UML 2.0: Unified Modeling, Language (2005)
Raynal, M., Schiper, A., Toueg, S.: The causal ordering abstraction and a simple way to implement it. Inf. Process. Lett. 39(6), 343–350 (1991)
Saleh, K.: Synthesis of communications protocols: an annotated bibliography. SIGCOMM Comput. Commun. Rev. 26, 40–59 (1996)
Uchitel, S., Kramer, J.: A workbench for synthesising behaviour models from scenarios. In ICSE, pp. 188–197 (2001)
Uchitel, S., Kramer, J., Magee, J.: Detecting implied scenarios in Message Sequence Chart specifications. In ESEC / SIGSOFT FSE, pp. 74–82 (2001)
Uchitel, S., Kramer, J., Magee, J.: Incremental elaboration of scenario-based specifications and behavior models using implied scenarios. ACM Trans. Softw. Eng. Methodol. 13(1), 37–85 (2004)
Ziadi, T., Hélouët, L., Jézéquel, J.-M.: Revisiting statechart synthesis with an algebraic approach. In ICSE, pp. 242–251 (2004)
Acknowledgments
We wish to thank anonymous reviewers for careful reading of this paper and for numerous comments which helped improving it.
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Prof. Wolfgang Reisig.
Rights and permissions
About this article
Cite this article
Abdallah, R., Hélouët, L. & Jard, C. Distributed implementation of message sequence charts. Softw Syst Model 14, 1029–1048 (2015). https://doi.org/10.1007/s10270-013-0357-1
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-013-0357-1