Towards an automated development methodology for dependable systems with application to sensor networks

A general-purpose method to mechanically transform system requirements into a provably equivalent model has yet to appear. Such a method represents a necessary step toward high-dependability system engineering for numerous possible application domains, including sensor networks and autonomous systems. Currently available tools and methods that start with a formal model of a system and mechanically produce a provably equivalent implementation are valuable but not sufficient. The "gap" unfilled by such tools and methods is that their formal models cannot be proven to be equivalent to the system requirements as originated by the customer. For the classes of systems whose behavior can be described as a finite (but significant) set of scenarios, we offer a method for mechanically transforming requirements (expressed in restricted natural language, or in other appropriate graphical notations) into a provably equivalent formal model that can be used as the basis for code generation and other transformations.

[1]  Jonathan P. Bowen,et al.  Industrial-Strength Formal Methods in Practice , 1999, Formal Approaches to Computing and Information Technology (FACIT).

[2]  Michael J. Butler csp2B: A Practical Approach to Combining CSP and B , 1999, World Congress on Formal Methods.

[3]  Christopher A. Rouff,et al.  Experience using formal methods for specifying a multi-agent system , 2000, Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000.

[4]  Christopher A. Rouff,et al.  Experiences with a requirements-based programming approach to the development of a NASA autonomous ground control system , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

[5]  Christopher A. Rouff,et al.  A formal approach to requirements-based programming , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

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

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

[8]  Mike Hinchey,et al.  Verification and validation of autonomous systems , 2001, Proceedings 26th Annual NASA Goddard Software Engineering Workshop.

[9]  Jonathan P. Bowen,et al.  Seven More Myths of Formal Methods , 1994, FME.

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

[11]  Jonathan P. Bowen,et al.  Seven More Myths of Formal Methods , 1995, IEEE Softw..

[13]  K. Rose,et al.  Panel Session , 2005, ICDM.

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

[15]  Stephen A. Jarvis,et al.  Concurrent systems - formal development in CSP , 1995, McGrawhill international series in software engineering.

[16]  Walter Truszkowski,et al.  Some autonomic properties of two legacy multi-agent systems - LOGOS and ACT , 2004, Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004..

[17]  Anthony Hall,et al.  Seven myths of formal methods , 1990, IEEE Software.

[18]  Jonathan P. Bowen,et al.  Applications of Formal Methods , 1995 .

[19]  M.G. Hinchey,et al.  Autonomous and autonomic systems: a paradigm for future space exploration missions , 2006, IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews).

[20]  Michael J. Butler,et al.  csp2B: A Practical Approach to Combining CSP and B , 1999, Formal Aspects of Computing.