Formal Composition of Distributed Scenarios

Eliciting, modeling, and analyzing the requirements are the main challenges to face up when you want to produce a formal specification for distributed systems. The distribution and the race conditions between events make it difficult to include all the possible scenario combinations and thus to get a complete specification. Most research about formal methods dealt with languages and neglected the process of how getting a formal specification. This paper describes a scenario-based process to synthesize a formal specification in the case of a distributed system. The requirements are represented by a set of use cases where each one is composed of a collection of distributed scenarios. The architectural assumptions about the communication between the objects of the distributed system imply some completions and reorganizations in the use cases. Then, the latter are composed into a global finite state machine (FSM) from which we derive a communicating FSM per object in the distributed system.

[1]  Hideto Tomabechi,et al.  Automatic Synthesis of State Machines from Trace Diagrams , 1994, Softw. Pract. Exp..

[2]  Guy Lapalme,et al.  Compiling Real-Time Scenarios into a Timed Automaton , 2001, FORTE.

[3]  Juan Manuel Fernández Peña,et al.  Unified Modeling Language Unified Modeling Language , 2006 .

[4]  Sjouke Mauw,et al.  Message Sequence Chart (MSC) , 1996 .

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

[6]  T. Systa,et al.  MAS - an interactive synthesizer to support behavioral modeling in UML , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

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

[8]  Kousha Etessami,et al.  Optimizing Büchi Automata , 2000, CONCUR.

[9]  Holger Giese Towards Scenario-Based Synthesis for Parametric Timed Automata , 2003 .

[10]  Richard Fikes,et al.  STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving , 1971, IJCAI.

[11]  Madhavan Mukund,et al.  Synthesizing Distributed Finite-State Systems from MSCs , 2000, CONCUR.

[12]  Erkki Mäkinen,et al.  MAS — an interactive synthesizer to support behavioral modelling in UML , 2001, ICSE.

[13]  Rajeev Alur,et al.  An Analyzer for Message Sequence Charts , 1996, Softw. Concepts Tools.

[14]  Nancy A. Lynch,et al.  I/o automata: a model for discrete event systems , 1988 .

[15]  Rajeev Alur,et al.  Inference of message sequence charts , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[16]  Stéphane S. Somé,et al.  Toward an Automation of Requirements Engineering using Scenarios , 1996 .

[17]  Hanêne Ben-Abdallah,et al.  Syntactic Detection of Process Divergence and Non-local Choice inMessage Sequence Charts , 1997, TACAS.

[18]  Henry Muccini,et al.  Detecting Implied Scenarios Analyzing Non-local Branching Choices , 2003, FASE.

[19]  Sebastián Uchitel,et al.  Synthesis of Behavioral Models from Scenarios , 2003, IEEE Trans. Software Eng..

[20]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[21]  David Harel,et al.  From Play-In Scenarios to Code: An Achievable Dream , 2000, Computer.

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

[23]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[24]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.