Scenario-Based Modeling and Programming of Distributed Systems

Software systems become increasingly distributed and interconnected. Single functions are usually realized by the interaction of multiple components, while single components participate in fulfilling multiple functions. During early development, engineers often design new functionalities by first taking an inter-component, interaction-oriented perspective, which must be mapped to a single-component implementation perspective later. This extended abstract reviews past and ongoing work on scenario-based modeling and programming techniques, which support engineers in this process. We also discuss new opportunities for applying these techniques as well as open research challenges.

[1]  Guy Katz,et al.  Distributed Execution of Scenario-based Specifications of Structurally Dynamic Cyber-Physical Systems , 2016 .

[2]  Joel Greenyer,et al.  Test-Driven Scenario Specification of Automotive Software Components , 2019, 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C).

[3]  Marsha Chechik,et al.  Synthesis of Partial Behavior Models from Properties and Scenarios , 2009, IEEE Transactions on Software Engineering.

[4]  Amir Pnueli,et al.  Controller Synthesis from LSC Requirements , 2009, FASE.

[5]  Ekkart Kindler,et al.  Compositional Synthesis of Controllers from Scenario-Based Assume-Guarantee Specifications , 2013, MoDELS.

[6]  Dirk Fahland,et al.  Oclets - Scenario-Based Modeling with Petri Nets , 2009, AWPN.

[7]  Ingolf Krüger,et al.  Distributed system design with message sequence charts , 2000 .

[8]  Guy Katz,et al.  Scenario-Based Modeling and Synthesis for Reactive Systems with Dynamic System Structure in ScenarioTools , 2016, D&P@MoDELS.

[9]  Joel Greenyer,et al.  BeSoS: A Tool for Behavior-driven and Scenario-based Requirements Modeling for Systems of Systems , 2021, REFSQ Workshops.

[10]  Joel Greenyer,et al.  A Scenario-based MDE Process for Developing Reactive Systems: A Cleaning Robot Example , 2017, MODELS.

[11]  Assaf Marron,et al.  Modeling and programming a leader-follower challenge problem with scenario-based tools , 2018, MODELS Workshops.

[12]  Thomas Maier,et al.  The Fujaba Statechart Synthesis Approach , 2003 .

[13]  David Harel,et al.  LSCs: Breathing Life into Message Sequence Charts , 1999, Formal Methods Syst. Des..

[14]  Pierre-Yves Schobbens,et al.  From live sequence charts to state machines and back: a guided tour , 2005, IEEE Transactions on Software Engineering.

[15]  Joel Greenyer,et al.  Iterative and Scenario-based Requirements Specification in a System of Systems Context , 2021, REFSQ.

[16]  Sebastián Uchitel,et al.  A workbench for synthesising behaviour models from scenarios , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[17]  Ketil Stølen,et al.  STAIRS towards formal design with sequence diagrams , 2005, Software & Systems Modeling.

[18]  Amir Pnueli,et al.  Synthesis of Reactive(1) designs , 2006, J. Comput. Syst. Sci..

[19]  Marsha Chechik,et al.  Behaviour Model Synthesis from Properties and Scenarios , 2007, 29th International Conference on Software Engineering (ICSE'07).

[20]  David Harel,et al.  Programming Coordinated Behavior in Java , 2010, ECOOP.

[21]  Krishnendu Chatterjee,et al.  Conditionally Optimal Algorithms for Generalized Büchi Games , 2016, MFCS.

[22]  David Harel,et al.  Come, let's play - scenario-based programming using LSCs and the play-engine , 2003 .

[23]  Manfred Broy,et al.  From MSCs to Statecharts , 1998, DIPES.

[24]  Joel Greenyer,et al.  Scenarios in the loop: integrated requirements analysis and automotive system validation , 2020, MoDELS.

[25]  Werner Damm,et al.  Using Traffic Sequence Charts for the Development of HAVs , 2018 .

[26]  Ulrich Eberle,et al.  Criticality Analysis for the Verification and Validation of Automated Vehicles , 2021, IEEE Access.

[27]  Holger Giese,et al.  Nobody's perfect: interactive synthesis from parametrized real-time scenarios , 2006, SCESM '06.

[28]  Johann Schumann,et al.  Generating statechart designs from scenarios , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[29]  Hillel Kugler,et al.  Compositional Synthesis of Reactive Systems from Live Sequence Chart Specifications , 2009, TACAS.

[30]  Kai Koskimies,et al.  Automated Support for Modeling OO Software , 1998, IEEE Softw..

[31]  Jörg Holtmann,et al.  Toward Learning Realizable Scenario-Based, Formal Requirements Specifications , 2017, 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW).

[32]  Joel Greenyer,et al.  Symbolic Execution for Realizability-Checking of Scenario-Based Specifications , 2017, 2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems (MODELS).

[33]  Joel Greenyer,et al.  A Scenario-Based MDE Process for Dynamic Topology Collaborative Reactive Systems - Early Virtual Prototyping of Car-to-X System Specifications , 2018, Modellierung.

[34]  Boleslaw Mikolajczak,et al.  Transformation from live sequence charts to colored Petri nets , 2007, SCSC.

[35]  Axel van Lamsweerde,et al.  Scenarios, goals, and state machines: a win-win partnership for model synthesis , 2006, SIGSOFT '06/FSE-14.

[36]  Maxime Cordy,et al.  Incrementally synthesizing controllers from scenario-based product line specifications , 2013, ESEC/FSE 2013.

[37]  Maxime Cordy,et al.  Features meet scenarios: modeling and consistency-checking scenario-based product line specifications , 2013, Requirements Engineering.

[38]  Holger Giese,et al.  The SceBaSy PlugIn for the Scenario-Based Synthesis of Real-Time Coordination Patterns for Mechatronic UML , 2005 .

[39]  David Harel,et al.  Synthesizing State-Based Object Systems from LSC Specifications , 2000, Int. J. Found. Comput. Sci..