Specifying and verifying requirements of real-time systems

AbstracfAn approach to specification of requirements and verification of design for real-time systems is presented. A system is defined by a conventional mathematical model for a dynamic system where application specific states denote functions of real time. Specifications are formulas in duration calculus, a realtime interval logic, where predicates define durations of states. Requirements define safety and functionality constraints on the system or a component. A top-level design is given by a control law: a predicate that defines an automaton controlling the transition between phases of operation. Each phase maintains certain relations among the system states; this is analogous to the control functions known from conventional control theory. The top-level design is decomposed into an architecture for a distributed system with specifications for sensor, actuator, and program components. Programs control the distributed computation through synchronous events. Sensors and actuators relate events with system states. Verification i s a deduction showing that a design implies requirements.

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

[2]  F. Fairman Introduction to dynamic systems: Theory, models and applications , 1979, Proceedings of the IEEE.

[3]  Naresh K. Sinha,et al.  Modern Control Systems , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[4]  P. M. Melliar-Smith,et al.  An interval logic for higher-level temporal reasoning , 1983, PODC '83.

[5]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[6]  James F. Allen Towards a General Theory of Action and Time , 1984, Artif. Intell..

[7]  Ben C. Moszkowski,et al.  A Temporal Logic for Multilevel Reasoning about Hardware , 1985, Computer.

[8]  David Lorge Parnas,et al.  A rational design process: How and why to fake it , 1986, IEEE Transactions on Software Engineering.

[9]  Aloysius K. Mok,et al.  Safety analysis of timing properties in real-time systems , 1986, IEEE Transactions on Software Engineering.

[10]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[11]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[12]  Lennart Ljung,et al.  System Identification: Theory for the User , 1987 .

[13]  A. W. Roscoe,et al.  Metric Spaces as Models for Real-Time Concurrency , 1987, MFPS.

[14]  Amir Pnueli,et al.  Applications of Temporal Logic to the Specification of Real-time Systems , 1988, FTRTFT.

[15]  Luqi,et al.  A Prototyping Language for Real-Time Software , 1988, IEEE Trans. Software Eng..

[16]  Alan C. Shaw,et al.  Reasoning About Time in Higher-Level Language Software , 1989, IEEE Trans. Software Eng..

[17]  Martín Abadi,et al.  Temporal Logic Programming , 1989, J. Symb. Comput..

[18]  Carlo Ghezzi,et al.  TRIO: A logic language for executable specifications of real-time systems , 1990, J. Syst. Softw..

[19]  Keith Marzullo,et al.  Tolerating failures of continuous-valued sensors , 1990, TOCS.

[20]  Anders P. Ravn,et al.  PROVABLY CORRECT SAFETY CRITICAL SOFTWARE , 1990 .

[21]  Franco Turini,et al.  RSF: A Formalism for Executable Requirement Specifications , 1990, IEEE Trans. Software Eng..

[22]  Nancy G. Leveson,et al.  Software Requirements Analysis for Real-Time Process-Control Systems , 1991, IEEE Trans. Software Eng..

[23]  J. Willems Paradigms and puzzles in the theory of dynamical systems , 1991 .

[24]  John Dawes,et al.  The VDM-SL Reference Guide , 1991 .

[25]  Rogério de Lemos,et al.  The role of formal methods in the requirements analysis of safety-critical systems: a train set example , 1991, [1991] Digest of Papers. Fault-Tolerant Computing: The Twenty-First International Symposium.

[26]  Michael R. Hansen,et al.  Semantics and Completeness of Duration Calculus , 1991, REX Workshop.

[27]  Alan M. Davis,et al.  Guest Editors' Introduction Requirements Engineering , 1991, IEEE Trans. Software Eng..

[28]  C. A. R. Hoare,et al.  A Calculus of Durations , 1991, Inf. Process. Lett..

[29]  Zohar Manna,et al.  From Timed to Hybrid Systems , 1991, REX Workshop.

[30]  Anders P. Ravn,et al.  Duration Specifications for Shared Processors , 1992, FTRTFT.

[31]  Mathai Joseph,et al.  ISL: An Interval Logic for the Specification of Real-time Programs , 1992, FTRTFT.

[32]  Anders P. Ravn,et al.  Specifying and Verifying Requirements of Real-Time Systems , 1993, IEEE Trans. Software Eng..