Compositional Synthesis of Controllers from Scenario-Based Assume-Guarantee Specifications

  • Joel Greenyer
  • Ekkart Kindler
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8107)


Modern software-intensive systems often consist of multiple components that interact to fulfill complex functions in sometimes safety-critical situations. During the design, it is crucial to specify the system’s requirements formally and to detect inconsistencies as early as possible in order to avoid flaws in the product or costly iterations during its development. We propose to use Modal Sequence Diagrams (MSDs), a formal, yet intuitive formalism for specifying the interaction of a system with its environment, and developed a formal synthesis approach that allows us to detect inconsistencies and even to automatically synthesize controllers from MSD specifications. The technique is suited for specifications of technical systems with real-time constraints and environment assumptions. However, synthesis is computationally expensive. In order to employ synthesis also for larger specifications, we present, in this paper, a novel assume-guarantee-style compositional synthesis technique for MSD specifications. We provide evaluation results underlining the benefit of our approach and formally justify its correctness.


Scenario-Based Specification Compositional Controller Synthesis Consistency Checking Assume-Guarantee 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alur, R., Dill, D.L.: A Theory of Timed Automata. Theoretical Computer Science 126(2), 183–235 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Behrmann, G., Cougnard, A., David, A., Fleury, E., Larsen, K.G., Lime, D.: UPPAAL-Tiga: Time for playing games! In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 121–125. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  3. 3.
    Cassez, F., David, A., Fleury, E., Larsen, K.G., Lime, D.: Efficient on-the-fly algorithms for the analysis of timed games. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 66–80. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Chatterjee, K., Henzinger, T.A.: Assume-Guarantee Synthesis. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 261–275. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Clarke Jr. E.M., Grumberg, O., Peled, D.A.: Model Checking. The MIT Press (1999)Google Scholar
  6. 6.
    Damm, W., Harel, D.: LSCs: Breathing life into message sequence charts. In: Formal Methods in System Design, vol. 19, pp. 45–80. Kluwer Academic Publishers (2001)Google Scholar
  7. 7.
    Greenyer, J.: Scenario-based Design of Mechatronic Systems. Ph.D. thesis, University of Paderborn (October 2011)Google Scholar
  8. 8.
    Harel, D., Maoz, S.: Assert and negate revisited: Modal semantics for UML sequence diagrams. Software and Systems Modeling (SoSyM) 7(2), 237–252 (2008)CrossRefGoogle Scholar
  9. 9.
    Harel, D., Marelly, R.: Come, Let’s Play: Scenario-Based Programming Using LSCs and the Play-Engine. Springer (August 2003)Google Scholar
  10. 10.
    Harel, D., Marelly, R.: Playing with time: On the specification and execution of time-enriched LSCs. In: Proc. 10th Int. Symp. on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, pp. 193–202 (2002)Google Scholar
  11. 11.
    Kindler, E.: Modularer Entwurf verteilter Systeme mit Petrinetzen, Edition Versal, vol. 1. Bertz Verlag, dissertation, Technische Universität München (December 1995)Google Scholar
  12. 12.
    Krüger, I.: Distributed System Design with Message Sequence Charts. Ph.D. thesis, Technische Universität München, Institut für Informatik (2000)Google Scholar
  13. 13.
    Kugler, H., Segall, I.: Compositional synthesis of reactive systems from live sequence chart specifications. In: Kowalewski, S., Philippou, A. (eds.) TACAS 2009. LNCS, vol. 5505, pp. 77–91. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  14. 14.
    Lewerentz, C., Lindner, T.: KORSO: Methods, Languages, and Tools for the Construction of Correct Software. In: Jähnichen, S., Broy, M. (eds.) KORSO 1995. LNCS, vol. 1009, pp. 388–416. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  15. 15.
    Maoz, S., Harel, D.: From multi-modal scenarios to code: Compiling LSCs into AspectJ. In: Proc. Int. 14th Symp. on Foundations of Software Engineering (FSE 2005), pp. 219–230. ACM (2006)Google Scholar
  16. 16.
    Maoz, S., Sa’ar, Y.: Assume-guarantee scenarios: Semantics and synthesis. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds.) MODELS 2012. LNCS, vol. 7590, pp. 335–351. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  17. 17.
    Nejati, S., Sabetzadeh, M., Chechik, M., Uchitel, S., Zave, P.: Towards compositional synthesis of evolving systems. In: Harrold, M.J., Murphy, G.C. (eds.) Proc. 16th Int. Symp. on Foundations of Software Engineering, pp. 285–296. ACM (2008)Google Scholar
  18. 18.
    Stark, E.W.: A proof technique for rely/guarantee properties. In: Maheshwari, S.N. (ed.) FSTTCS 1985. LNCS, vol. 206, pp. 369–391. Springer, Heidelberg (1985)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Joel Greenyer
    • 1
  • Ekkart Kindler
    • 2
  1. 1.Software Engineering GroupLeibniz Universität HannoverGermany
  2. 2.DTU Compute, Technical University of DenmarkDenmark

Personalised recommendations