Abstract
Distributed systems consist of subsystems that usually need to coordinate with each other. Each subsystem must decide its actions locally, based on its limited knowledge. However, these decisions can be interdependent due to global requirements, i.e., one subsystem may need to know how another one decided. Complex communication can be required to exchange this knowledge. With rising complexity, a correct manual implementation of all subsystems becomes unlikely. Therefore, our goal is to automate the implementation process as far as possible. This paper presents a novel approach for the automatic synthesis of a distributed implementation from a global specification. In our approach, MSDs—a scenario-based specification language—can be used to intuitively, but formally define the requirements. The resulting implementation comprises one automaton for each subsystem, controlling its behavior. Contrary to similar approaches, we automatically add communication behavior to the system only when local knowledge is insufficient.
Chapter PDF
References
Bontemps, Y., Heymans, P., Schobbens, P.-Y.: Lightweight formal methods for scenario-based software engineering. In: Leue, S., Systä, T.J. (eds.) Scenarios: Models, Transformations and Tools. LNCS, vol. 3466, pp. 174–192. Springer, Heidelberg (2005)
Brenner, C., Greenyer, J., Holtmann, J., Liebel, G., Stieglbauer, G., Tichy, M.: Scenariotools real-time play-out for test sequence validation in an automotive case study. In: Proc. of 13th Int. Workshop on Graph Transformation and Visual Modeling Techniques, GT-VMT 2014 (2014)
Brenner, C., Greenyer, J., Panzica La Manna, V.: The ScenarioTools play-out of modal sequence diagram specifications with environment assumptions. In: Proc. of 12th Int. Workshop on Graph Transformation and Visual Modeling Techniques, GT-VMT 2013 (2013)
Damm, W., Harel, D.: LSCs: Breathing life into message sequence charts. In: Formal Methods in System Design, vol. 19, pp. 45–80. Kluwer (2001)
Finkbeiner, B., Schewe, S.: Uniform distributed synthesis. In: Proc. of 20th IEEE Symp. on Logic in Computer Science, pp. 321–330 (2005)
Halle, S., Bultan, T.: Realizability Analysis for Message-based Interactions Using Shared-State Projections. In: Proc. of 18th ACM SIGSOFT Int. Symp. on Foundations of Software Engineering, FSE 2010, Santa Fe, New Mexico (2010)
Harel, D., Kugler, H.: Synthesizing state-based object systems from LSC specifications. Foundations of Computer Science 13(1), 5–51 (2002)
Harel, D., Kugler, H.-J., Pnueli, A.: Synthesis revisited: Generating statechart models from scenario-based requirements. In: Kreowski, H.-J., Montanari, U., Orejas, F., Rozenberg, G., Taentzer, G. (eds.) Formal Methods in Software and Systems Modeling. LNCS, vol. 3393, pp. 309–324. Springer, Heidelberg (2005)
Harel, D., Maoz, S.: Assert and negate revisited: Modal semantics for UML sequence diagrams. Software and Systems Modeling (SoSyM) 7(2), 237–252 (2008)
Harel, D., Marelly, R.: Come, Let’s Play: Scenario-Based Programming Using LSCs and the Play-Engine. Springer (2003)
Katz, G., Peled, D., Schewe, S.: Synthesis of distributed control through knowledge accumulation. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 510–525. Springer, Heidelberg (2011)
Peled, D., Schewe, S.: Practical distributed control synthesis. In: Yu, F., Wang, C. (eds.) Proc. Int. Workshop on Verification and Infinite State Systems (INFINITY 2011). EPTCS, vol. 73, pp. 2–17 (2011)
Sun, J., Dong, J.S.: Synthesis of distributed processes from scenario-based specifications. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 415–431. Springer, Heidelberg (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brenner, C., Greenyer, J., Schäfer, W. (2015). On-the-Fly Synthesis of Scarcely Synchronizing Distributed Controllers from Scenario-Based Specifications. In: Egyed, A., Schaefer, I. (eds) Fundamental Approaches to Software Engineering. FASE 2015. Lecture Notes in Computer Science(), vol 9033. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-46675-9_4
Download citation
DOI: https://doi.org/10.1007/978-3-662-46675-9_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-46674-2
Online ISBN: 978-3-662-46675-9
eBook Packages: Computer ScienceComputer Science (R0)