Resolving race conditions in asynchronous partial order scenarios

Scenario-based requirements specifications are the industry norm for defining communication protocols. However, such scenarios often contain race conditions. A race condition occurs when events are specified to occur in a particular order, but in practice, this order cannot be guaranteed. The paper considers UML/MSC scenarios that can be described with standard partial order theoretic asynchronous behavioral semantics. We define these to be partial order scenarios. The paper proves there is a unique minimal generalization of a partial order scenario that is race free. The paper also proves there is a unique minimal race free refinement of the behavioral semantics of a partial order scenario. Unlike the generalization, the refinement cannot be realized in the form of a partial order scenario, although it can always be embedded in one. The paper, also proves the results can be generalized to a subclass of iterative scenarios.

[1]  Sebastián Uchitel,et al.  Scenarios and state machines: models, algorithms, and tools , 2002, ICSE '02.

[2]  Anca Muscholl,et al.  Compositional message sequence charts , 2001, International Journal on Software Tools for Technology Transfer.

[3]  Robyn R. Lutz,et al.  Analyzing software requirements errors in safety-critical, embedded systems , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[4]  Byung-Sun Lee,et al.  Testing of concurrent programs based on message sequence charts , 1999, 1999 Proceedings International Symposium on Software Engineering for Parallel and Distributed Systems.

[5]  Dick Bowman,et al.  Principles of software engineering management , 1989, APLQ.

[6]  Markus Lohrey Safe Realizability of High-Level Message Sequence Charts , 2002, CONCUR.

[7]  Patrick Heymans,et al.  Turning High-Level Live Sequence Charts into Automata , 2002 .

[8]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[9]  Rajeev Alur,et al.  Model Checking of Message Sequence Charts , 1999, CONCUR.

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

[11]  Rajeev Alur,et al.  Realizability and verification of MSC graphs , 2005, Theor. Comput. Sci..

[12]  Robyn R. Lutz Targeting safety-related errors during software requirements analysis , 1993, SIGSOFT '93.

[13]  Winfried Dulz,et al.  Automated TTCN-3 test case generation by means of UML sequence diagrams and Markov chains , 2003, 2003 Test Symposium.

[14]  Sebastián Uchitel,et al.  Incremental elaboration of scenario-based specifications and behavior models using implied scenarios , 2004, TSEM.

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

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

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

[18]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[19]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[20]  Ina Schieferdecker,et al.  Development of a MSC/UML Test Format , 2000, FBT.

[21]  Rajeev Alur,et al.  An Analyser for Mesage Sequence Charts , 1996, TACAS.

[22]  Enrico Tronci 1997 , 1997, Les 25 ans de l’OMC: Une rétrospective en photos.

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

[24]  Bill Mitchell,et al.  Phase Automaton for Requirements Scenarios , 2003, FIW.

[25]  Arend Rensink,et al.  An Algebraic Semantics for Message Sequence Chart Documents , 1998, FORTE.

[26]  Pierre-Yves Schobbens,et al.  Synthesis of open reactive systems from scenario-based specifications , 2003, Third International Conference on Application of Concurrency to System Design, 2003. Proceedings..

[27]  Joseph Robert Horgan,et al.  Applying design metrics to a large-scale software system , 1998, Proceedings Ninth International Symposium on Software Reliability Engineering (Cat. No.98TB100257).

[28]  Mohammad Reza Mousavi,et al.  Synthesizing software architecture descriptions from Message Sequence Chart specifications , 1998, Proceedings 13th IEEE International Conference on Automated Software Engineering (Cat. No.98EX239).

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

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

[31]  Jon Whittle,et al.  From scenarios to code: An air traffic control case study , 2004, Software & Systems Modeling.

[32]  Doron A. Peled,et al.  Specification and Verification using Message Sequence Charts , 2002, VISS@ETAPS.

[33]  Bill Mitchell,et al.  Automatic Generation of Conformance Tests from Message Sequence Charts , 2002, SAM.