Refinement of Structured Interactive Systems

The refinement concept provides a formal tool for addressing the complexity of software-intensive systems, by verified stepwise development from an abstract specification towards an implementation. In this paper we propose a novel notion of refinement for a structured formalism dedicated to interactive systems, that combines a data-flow with a control-oriented approach. Our notion is based on scenarios, extending to two dimensions the trace-based definition for the refinement of classical sequential systems. We illustrate our refinement notion with a simple example and outline several extensions to include more sophisticated distributed techniques.

[1]  Michael J. Butler,et al.  Applying Atomicity and Model Decomposition to a Space Craft System in Event-B , 2011, NASA Formal Methods.

[2]  Gheorghe Stefanescu,et al.  Towards a Formal Representation of Interactive Systems , 2014, Fundam. Informaticae.

[3]  Ralph-Johan Back,et al.  Trace Refinement of Action Systems , 1994, CONCUR.

[4]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[5]  Kim G. Larsen,et al.  Memory Efficient Data Structures for Explicit Verification of Timed Systems , 2014, NASA Formal Methods.

[6]  J. Bergstra,et al.  Handbook of Process Algebra , 2001 .

[7]  Peter Wegner,et al.  Interactive , 2021, Encyclopedia of the UN Sustainable Development Goals.

[8]  Wei Wei,et al.  Formal Analysis of BPMN Models Using Event-B , 2010, FMICS.

[9]  Manfred Broy,et al.  The algebra of stream processing functions , 2001, Theor. Comput. Sci..

[10]  Kaisa Sere,et al.  Refinement-Preserving Translation from Event-B to Register-Voice Interactive Systems , 2012, IFM.

[11]  Michael K. Molloy,et al.  Petri net , 2003 .

[12]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[13]  Manfred Broy,et al.  Trace-Oriented Models of Concurrency , 2001, Handbook of Process Algebra.

[14]  Mária Bieliková,et al.  SOFSEM 2008: Theory and Practice of Computer Science, 34th Conference on Current Trends in Theory and Practice of Computer Science, Nový Smokovec, Slovakia, January 19-25, 2008, Proceedings , 2008, SOFSEM.

[15]  Jean-Raymond Abrial,et al.  Modeling in event-b - system and software engineering by Jean-Raymond Abrial , 2010, SOEN.

[16]  Gheorghe Stefanescu,et al.  High-level Structured Interactive Programs with Registers and Voices , 2007, J. Univers. Comput. Sci..

[17]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[18]  Gheorghe Stefanescu,et al.  On Compiling Structured Interactive Programs with Registers and Voices , 2008, SOFSEM.

[19]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[20]  Ralph-Johan Back,et al.  Refinement Calculus: A Systematic Introduction , 1998 .

[21]  Kaisa Sere,et al.  Reasoning about Action Systems using the B-Method , 1998, Formal Methods Syst. Des..

[22]  Bengt Jonsson,et al.  CONCUR ’94: Concurrency Theory , 1994, Lecture Notes in Computer Science.

[23]  Ian Stark,et al.  Randomised Testing of a Microprocessor Model Using SMT-Solver State Generation , 2014, FMICS.

[24]  Cristian S. Calude,et al.  Discrete Mathematics and Theoretical Computer Science , 2003, Lecture Notes in Computer Science.

[25]  Jayadev Misra,et al.  Computation Orchestration , 2007, Software & Systems Modeling.

[26]  Manfred Broy Compositional refinement of interactive systems , 1997, JACM.

[27]  Thai Son Hoang,et al.  Rodin: an open toolset for modelling and reasoning in Event-B , 2010, International Journal on Software Tools for Technology Transfer.

[28]  S Gheorghe,et al.  Towards a Floyd Logic for Interactive RV-Systems , 2004 .

[29]  Ralph-Johan Back,et al.  Decentralization of Process Nets with Centralized Control , 1983, PODC.

[30]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[31]  Gheorghe Stefanescu,et al.  A New Representation of Two-Dimensional Patterns and Applications to Interactive Programming , 2013, FSEN.

[32]  Gheorghe Stefanescu,et al.  Interactive Systems with Registers and Voices , 2006, Fundam. Informaticae.

[33]  Gheorghe Stefanescu,et al.  AGAPIA v0.1: A Programming Language for Interactive Systems and Its Typing System , 2008, FInCo@ETAPS.

[34]  Ralph-Johan Back,et al.  Agile Development with Stepwise Feature Introduction , 2012, ENASE.