Skip to main content

Efficient Distributed Execution of Multi-component Scenario-Based Models

  • Conference paper
  • First Online:
Book cover Model-Driven Engineering and Software Development (MODELSWARD 2017)

Abstract

In scenario-based programming (SBP), the semantics, which enables direct execution of these intuitive specifications, calls, among others, for synchronizing concurrent scenarios prior to every event-selection decision. Doing so even when the running scenarios are distributed across multiple physical system components, may degrade system performance or robustness. In this paper we describe a technique for automated distribution of an otherwise-centralized specification, such that much of the synchronization requirement may be relaxed. The technique calls for replicating the entire scenario-based executable specification in each of the components, locally transforming it in a component-specific manner, and reducing the synchronization requirements to very specific and well-defined points during execution. Our evaluation of the technique shows promising results. Given that relaxed synchronization can lead to what appears as different runs in different components we discuss various criteria for what would constitute acceptable differences, or divergence, in the parallel, distributed runs of almost-identical copies of a single specification.

This paper incorporates and substantially extends the material of the paper published in MODLESWARD’17 Distributing Scenario-Based Models: A Replicate-and-Project Approach by the same authors [37].

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Alexandron, G., Armoni, M., Gordon, M., Harel, D.: Scenario-based programming: reducing the cognitive load, fostering abstract thinking. In: Proceedings of the 36th International Conference on Software Engineering (ICSE), pp. 311–320 (2014)

    Google Scholar 

  2. Bansal, N., Blum, A., Chawla, S.: Correlation clustering. Mach. Learn. 56(1–3), 89–113 (2004)

    Article  MathSciNet  Google Scholar 

  3. Błażewicz, J., Ecker, K., Plateau, B., Trystram, D.: Handbook on Parallel and Distributed Processing. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-662-04303-5

    Book  MATH  Google Scholar 

  4. Brenner, C., Greenyer, J., Schäfer, W.: On-the-fly synthesis of scarcely synchronizing distributed controllers from scenario-based specifications. In: Egyed, A., Schaefer, I. (eds.) FASE 2015. LNCS, vol. 9033, pp. 51–65. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46675-9_4

    Chapter  Google Scholar 

  5. Cheng, Y., Robertazii, T.: Distributed computation with communication delay (distributed intelligent sensor networks). IEEE Trans. Aerosp. Electron. Syst. 24(6), 700–712 (1988)

    Article  Google Scholar 

  6. Damm, W., Harel, D.: LSCs: breathing life into message sequence charts. J. Formal Methods Syst. Des. 19(1), 45–80 (2001)

    Article  Google Scholar 

  7. De La Puente, J.A., Alonso, A., León, G., Dueñas, J.C.: Distributed execution of specifications. Real-Time Syst. 5(2), 213–234 (1993)

    Article  Google Scholar 

  8. Eugster, P., Felber, P., Guerraoui, R., Kermarrec, A.: The many faces of publish/subscribe. ACM Comput. Surv. (CSUR) 35(2), 114–131 (2003)

    Article  Google Scholar 

  9. Fahland, D., Kantor, A.: Synthesizing decentralized components from a variant of live sequence charts. In: Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 25–38 (2013)

    Google Scholar 

  10. Ghosh, S., Gupta, A.: An exercise in fault-containment: self-stabilizing leader election. Inf. Process. Lett. 59(5), 281–288 (1996)

    Article  MathSciNet  Google Scholar 

  11. Gordon, M., Marron, A., Meerbaum-Salant, O.: Spaghetti for the main course? Observations on the naturalness of scenario-based programming. In: Proceedings of the 17th Confernce on Innovation and Technology in Computer Science Education (ITICSE), pp. 198–203 (2012)

    Google Scholar 

  12. Greenyer, J., Gritzner, D., Gutjahr, T., Duente, T., Dulle, S., Deppe, F.-D., Glade, N., Hilbich, M., Koenig, F., Luennemann, J., Prenner, N., Raetz, K., Schnelle, T., Singer, M., Tempelmeier, N., Voges, R.: Scenarios@run.time – distributed execution of specifications on IoT-connected robots. In: Proceedings of the 10th International Workshop on Models@Run.Time (MRT), pp. 71–80 (2015)

    Google Scholar 

  13. Greenyer, J., Gritzner, D., Katz, G., Marron, A.: Scenario-based modeling and synthesis for reactive systems with dynamic system structure in ScenarioTools. In: Proceedings of the 19th International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 16–32 (2016)

    Google Scholar 

  14. Greenyer, J., Gritzner, D., Katz, G., Marron, A., Glade, N., Gutjahr, T., König, F.: Distributed execution of scenario-based specifications of structurally dynamic cyber-physical systems. In: Proceedings 3rd International Conference on System-Integrated Intelligence: New Challenges for Product and Production Engineering (SYSINT), pp. 552–559 (2016)

    Article  Google Scholar 

  15. Harel, D., Kantor, A., Katz, G.: Relaxing synchronization constraints in behavioral programs. In: McMillan, K., Middeldorp, A., Voronkov, A. (eds.) LPAR 2013. LNCS, vol. 8312, pp. 355–372. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-45221-5_25

    Chapter  Google Scholar 

  16. Harel, D., Kantor, A., Katz, G., Marron, A., Mizrahi, L., Weiss, G.: On composing and proving the correctness of reactive behavior. In: Proceedings of the 13th International Conference on Embedded Software (EMSOFT), pp. 1–10 (2013)

    Google Scholar 

  17. Harel, D., Kantor, A., Katz, G., Marron, A., Weiss, G., Wiener, G.: Towards behavioral programming in distributed architectures. Sci. Comput. Program. 98(2), 233–267 (2015)

    Article  Google Scholar 

  18. Harel, D., Katz, G.: Scaling-up behavioral programming: steps from basic principles to application architectures. In: Proceedings of the 4th International Workshop on Programming based on Actors, Agents, and Decentralized Control (AGERE!), pp. 95–108 (2014)

    Google Scholar 

  19. Harel, D., Katz, G., Lampert, R. Marron, A., Weiss, G.: On the succinctness of idioms for concurrent programming. In: Proceedings of the 26th International Conference on Concurrency Theory (CONCUR), pp. 85–99 (2015)

    Google Scholar 

  20. Harel, D., Katz, G., Marelly, R., Marron, A.: An initial wise development environment for behavioral models. In: Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 600–612 (2016)

    Google Scholar 

  21. Harel, D., Katz, G., Marron, A., Weiss, G.: Non-intrusive repair of reactive programs. In: Proceedings of the 17th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS), pp. 3–12 (2012)

    Google Scholar 

  22. Harel, D., Katz, G., Marron, A., Weiss, G.: The effect of concurrent programming idioms on verification. In: Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 363–369 (2015)

    Google Scholar 

  23. Harel, D., Kugler, H., Marelly, R., Pnueli, A.: Smart play-out of behavioral requirements. In: Aagaard, M.D., O’Leary, J.W. (eds.) FMCAD 2002. LNCS, vol. 2517, pp. 378–398. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36126-X_23

    Chapter  Google Scholar 

  24. Harel, D., Lampert, R., Marron, A., Weiss, G.: Model-checking behavioral programs. In: Proceedings of the 11th International Conference on Embedded Software (EMSOFT), pp. 279–288 (2011)

    Google Scholar 

  25. Harel, D., Marelly, R.: Come, Let’s Play: Scenario-Based Programming Using LSCs and the Play-Engine. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-642-19029-2

    Book  Google Scholar 

  26. Harel, D., Marelly, R.: Specifying and executing behavioral requirements: the play in/play-out approach. Softw. Syst. Model. (SoSyM) 2, 82–107 (2003)

    Article  Google Scholar 

  27. Harel, D., Marron, A., Weiss, G.: Behavioral programming. Commun. ACM 55(7), 90–100 (2012)

    Article  Google Scholar 

  28. Harel, D., Marron, A., Weiss, G., Wiener, G.: Behavioral programming, decentralized control, and multiple time scales. In: Proceedings of the 1st SPLASH Workshop on Programming Systems, Languages, and Applications based on Agents, Actors, and Decentralized Control (AGERE!), pp. 171–182 (2011)

    Google Scholar 

  29. Harel, D., Segall, I.: Synthesis from live sequence chart specifications. Comput. Syst. Sci. (2011, to appear)

    Google Scholar 

  30. Katz, G.: On module-based abstraction and repair of behavioral programs. In: McMillan, K., Middeldorp, A., Voronkov, A. (eds.) LPAR 2013. LNCS, vol. 8312, pp. 518–535. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-45221-5_35

    Chapter  Google Scholar 

  31. Katz, G., Barrett, C., Harel, D.: Theory-aided model checking of concurrent transition systems. In: Proceedings of the 15th International Conference on Formal Methods in Computer-Aided Design (FMCAD), pp. 81–88 (2015)

    Google Scholar 

  32. Liu, J., Ahmed, E., Shiraz, M., Gani, A., Buyya, R., Qureshi, A.: Application partitioning algorithms in mobile cloud computing: taxonomy, review and future directions. J. Netw. Comput. Appl. 48, 99–117 (2015)

    Article  Google Scholar 

  33. Miller, C., Poellabauer, C.: A decentralized approach to minimum-energy broadcasting in static ad hoc networks. In: Ruiz, P.M., Garcia-Luna-Aceves, J.J. (eds.) ADHOC-NOW 2009. LNCS, vol. 5793, pp. 298–311. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04383-3_22

    Chapter  Google Scholar 

  34. Muth, P., Wodtke, D., Weissenfels, J., Dittrich, A.K., Weikum, G.: From centralized workflow specification to distributed workflow execution. J. Intell. Inf. Syst. 10(2), 159–184 (1998)

    Article  Google Scholar 

  35. Ramadge, P., Wonham, W.: Supervisory control of a class of discrete event processes. SIAM J. Control Optim. 25(1), 206–230 (1987)

    Article  MathSciNet  Google Scholar 

  36. Ştefănescu, A., Esparza, J., Muscholl, A.: Synthesis of distributed algorithms using asynchronous automata. In: Amadio, R., Lugiez, D. (eds.) CONCUR 2003. LNCS, vol. 2761, pp. 27–41. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45187-7_2

    Chapter  Google Scholar 

  37. Steinberg, S., Greenyer, J., Gritzner, D., Harel, D., Katz, G., Marron, A.: Distributing scenario-based models: a replicate-and-project approach. In: 5th International Conference on Model-Driven Engineering and Software Development (MODELSWARD) (2017)

    Google Scholar 

  38. van Gemund, A.: The importance of synchronization structure in parallel program optimization. In: Proceedings of the 11th International Conference on Supercomputing (ICS), pp. 164–171 (1997)

    Google Scholar 

  39. Yook, J., Tilbury, D., Soparkar, N.: Trading computation for bandwidth: reducing communication in distributed control systems using state estimators. IEEE Trans. Control Syst. Technol. 10(4), 503–518 (2002)

    Article  Google Scholar 

Download references

Acknowledgements

This work is funded by grants from the German-Israeli Foundation for Scientific Research and Development (GIF) and from the Israel Science Foundation (ISF).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Assaf Marron .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Steinberg, S., Greenyer, J., Gritzner, D., Harel, D., Katz, G., Marron, A. (2018). Efficient Distributed Execution of Multi-component Scenario-Based Models. In: Pires, L., Hammoudi, S., Selic, B. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2017. Communications in Computer and Information Science, vol 880. Springer, Cham. https://doi.org/10.1007/978-3-319-94764-8_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-94764-8_19

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-94763-1

  • Online ISBN: 978-3-319-94764-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics