Replaying Play In and Play Out: Synthesis of Design Models from Scenarios by Learning

  • Benedikt Bollig
  • Joost-Pieter Katoen
  • Carsten Kern
  • Martin Leucker
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4424)


This paper is concerned with bridging the gap between requirements, provided as a set of scenarios, and conforming design models. The novel aspect of our approach is to exploit learning for the synthesis of design models. In particular, we present a procedure that infers a message-passing automaton (MPA) from a given set of positive and negative scenarios of the system’s behavior provided as message sequence charts (MSCs). The paper investigates which classes of regular MSC languages and corresponding MPA can (not) be learned, and presents a dedicated tool based on the learning library LearnLib that supports our approach.


  1. 1.
    Adsul, B., et al.: Causal closure for MSC languages. In: Ramanujam, R., Sen, S. (eds.) FSTTCS 2005. LNCS, vol. 3821, pp. 335–347. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  2. 2.
    Alur, R., Etessami, K., Yannakakis, M.: Inference of message sequence charts. IEEE Trans. Softw. Eng. 29(7), 623–633 (2003)CrossRefGoogle Scholar
  3. 3.
    Alur, R., Etessami, K., Yannakakis, M.: Realizability and verification of MSC graphs. Th. Comp. Sc. 331(1), 97–114 (2005)MATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Angluin, D.: Learning regular sets from queries and counterexamples. Inf. Comput. 75(2), 87–106 (1987)MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    AT&T. Grappa - A Java Graph Package,
  6. 6.
    Bollig, B., et al.: Replaying play in and play out: Synthesis of design models from scenarios by learning. Research Report AIB-2006-12, RWTH Aachen (2006)Google Scholar
  7. 7.
    Bollig, B., et al.: MSCan: A tool for analyzing MSC specifications. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006 and ETAPS 2006. LNCS, vol. 3920, pp. 455–458. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Bollig, B., Leucker, M.: Message-passing automata are expressively equivalent to EMSO logic. Th. Comp. Sc. 358(2-3), 150–172 (2006)MATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Bontemps, Y., Heymand, P., Schobbens, P.-Y.: From live sequence charts to state machines and back: a guided tour. IEEE Trans. Softw. Eng. 31(12), 999–1014 (2005)CrossRefGoogle Scholar
  10. 10.
    Brand, D., Zafiropulo, P.: On communicating finite-state machines. J. of the ACM 30(2), 323–342 (1983)MATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Damm, W., Harel, D.: LSCs: Breathing life into message sequence charts. Formal Methods in System Design 19(1), 45–80 (2001)MATHCrossRefGoogle Scholar
  12. 12.
    Harel, D., Marelly, R.: Come, Let’s Play: Scenario-Based Programming Using LSCs and the Play-Engine. Springer, Heidelberg (2003)Google Scholar
  13. 13.
    Sadri, F., et al.: Logic-Based Agent Communication Protocols. In: Dignum, F.P.M. (ed.) ACL 2003. LNCS (LNAI), vol. 2922, pp. 91–107. Springer, Heidelberg (2004)Google Scholar
  14. 14.
    Endriss, U., et al.: Protocol conformance for logic-based agents. In: IJCAI 2003, pp. 679–684 (2003)Google Scholar
  15. 15.
    Genest, B.: Compositional message sequence charts (CMSCs) are better to implement than MSCs. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 429–444. Springer, Heidelberg (2005)Google Scholar
  16. 16.
    Genest, B., Kuske, D., Muscholl, A.: A Kleene theorem and model checking algorithms for existentially bounded communicating automata. Inf. Comput. 204(6), 920–956 (2006)MATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Henriksen, J.G., et al.: A theory of regular MSC languages. Inf. and Comput. 202(1), 1–38 (2005)MATHCrossRefMathSciNetGoogle Scholar
  18. 18.
    Hungar, H., Niese, O., Steffen, B.: Domain-specific optimization in automata learning. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 315–327. Springer, Heidelberg (2003)Google Scholar
  19. 19.
    Krüger, I., et al.: From MSCs to statecharts. In: DIPES 1998. IFIP Conf. Proc., vol. 155, pp. 61–72. Kluwer Academic Publishers, Dordrecht (1998)Google Scholar
  20. 20.
    Kuske, D.: Regular sets of infinite message sequence charts. Inf. Comput. 187, 80–109 (2003)MATHCrossRefMathSciNetGoogle Scholar
  21. 21.
    Lohrey, M.: Realizability of high-level message sequence charts: closing the gaps. Th. Comp. Sc. 309(1-3), 529–554 (2003)MATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    JGraph Ltd.: JGraph - Java Graph Visualization and Layout,
  23. 23.
    Mäkinen, E., Systä, T.: MAS – An interactive synthesizer to support behavioral modeling in UML. In: ICSE 2001, pp. 15–24. IEEE Computer Society Press, Los Alamitos (2001)Google Scholar
  24. 24.
    Morin, R.: Recognizable sets of message sequence charts. In: Alt, H., Ferreira, A. (eds.) STACS 2002. LNCS, vol. 2285, pp. 523–534. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  25. 25.
    Muscholl, A., Peled, D.: From finite state communication protocols to high-level message sequence charts. In: Orejas, F., Spirakis, P.G., van Leeuwen, J. (eds.) ICALP 2001. LNCS, vol. 2076, pp. 720–731. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  26. 26.
    Nuseibeh, B., Easterbrook, S.: Requirements engineering: a roadmap. In: ICSE 2000, pp. 35–46. ACM Press, New York (2000)CrossRefGoogle Scholar
  27. 27.
    Raffelt, H., Steffen, B.: LearnLib: A library for automata learning and experimentation. In: Baresi, L., Heckel, R. (eds.) FASE 2006 and ETAPS 2006. LNCS, vol. 3922, pp. 377–380. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  28. 28.
    Sengupta, B., Cleaveland, R.: Triggered message sequence charts. IEEE Trans. Softw. Eng. 32(8), 587–607 (2006)CrossRefGoogle Scholar
  29. 29.
    Uchitel, S., Kramer, J., Magee, J.: Synthesis of behavioral models from scenarios. IEEE Trans. Softw. Eng. 29(2), 99–115 (2003)CrossRefGoogle Scholar
  30. 30.
    Varol, Y.L., Rotem, D.: An algorithm to generate all topological sorting arrangements. Comput. J. 24(1), 83–84 (1981)MATHCrossRefGoogle Scholar

Copyright information

© Springer Berlin Heidelberg 2007

Authors and Affiliations

  • Benedikt Bollig
    • 1
  • Joost-Pieter Katoen
    • 2
  • Carsten Kern
    • 2
  • Martin Leucker
    • 3
  1. 1.LSV, CNRS UMR 8643 & ENS de CachanFrance
  2. 2.Software Modeling and Verification Group, RWTH Aachen UniversityGermany
  3. 3.Institut für Informatik, TU MünchenGermany

Personalised recommendations