Verifying model oriented specifications through animation

In this paper we demonstrate how light weight tools can be used to increase the level of confidence in Z specifications. In particular we outline the Pipedream approach to exploring Z specifications through animation, and illustrate the range of analyses that can be performed. We argue that, while a light weight approach does not give the same levels of assurance that an automated reasoning system would, it does give levels of assurance which are adequate for most projects and with significantly less overhead. We illustrate how animation can be used to perform verification using the example of a simple dependency management system.

[1]  Karl A. Smith,et al.  How to Model It: Problem Solving for the Computer Age , 1994 .

[2]  Zoltan Somogyi,et al.  The Execution Algorithm of Mercury, an Efficient Purely Declarative Logic Programming Language , 1996, J. Log. Program..

[3]  Colin O'Halloran,et al.  Experiences with PiZA, an Animator for Z , 1997, ZUM.

[4]  Paul A. Strooper,et al.  Requirements engineering and verification using specification animation , 1998, Proceedings 13th IEEE International Conference on Automated Software Engineering (Cat. No.98EX239).

[5]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[6]  Jeremy Dick,et al.  Making the Most of Formal Specification Through Animation, Testing and Proof , 1997, Sci. Comput. Program..

[7]  Bernard Sufrin,et al.  Type Inference in Z , 1990, VDM Europe.

[8]  John Kelly,et al.  Experiences Using Lightweight Formal Methods for Requirements Modeling , 1998, IEEE Trans. Software Eng..

[9]  Barry Eaglestone,et al.  Software development: two approaches to animation of Z specifications using Prolog , 1992, Softw. Eng. J..

[10]  Leon Sterling,et al.  On the Animation of "not Executable" Specifications by Prolog , 1996, Int. J. Softw. Eng. Knowl. Eng..

[11]  Michael Winikoff,et al.  Rapid Prototyping using Formal Specifications , 1998 .

[12]  Michael Winikoff,et al.  Analysing Modes and Subtypes in Z Specifications , 1998 .

[13]  J. Lloyd Foundations of Logic Programming , 1984, Symbolic Computation.

[14]  Charles Leake Mathematical Modelling: A Tool for Problem Solving in Engineering, Physical, Biological and Social Sciences , 1993 .

[15]  Xiaoping Jia A pragmatic approach to formalizing object-oriented modeling and development , 1997, Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97).