Skip to main content
Log in

Specification and Animation of a Bank Transfer using KIDS/VDM

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

The development of formal specifications may benefit from prototyping activities. The production of an executable model for a given description helps bridging the gap between this specification and the corresponding reality. The KIDS/VDM system, based on the KIDS environment, provides these prototyping facilities for the model-based specification language of VDM. This paper illustrates its use in the specification of a bank transfer operation. The specification process starts from an abstract specification and details it by a series of refinements of either the control flow or the data structures. The case study shows how animation may be helpful at several stages of the process. It favours the dialog between the specifier and his customer and helps assessing the correspondence between the description and the actual problem. It also convinces the specifier of the validity of his refinements before he fulfills the necessary proof obligations.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Andrews, D., Bruun, H., Hansen, B., Larsen, P., Plat, N. et al. 1995, Information Technology—Programming Languages, their environments and system software interfaces—Vienna Development Method-Specification Language Part 1: Base language, ISO.

  2. Barclays Bank PLC,. 1991, The Barclays code of business banking, Barclays Bank, Commercial Banking Division.

  3. Bicarregui, J. C., Fitzgerald, J. S., Lindsay, P. A., Moore, R. and Ritchie, B. 1994, Proof in VDM: A Practitioner's Guide, FACIT, Springer-Verlag.

  4. Bowen, J. and Stavridou, V. 1992, Safety-critical systems, formal methods and standards, Technical Report PRG-TR-5-92, Oxford University Computing Laboratory.

  5. Chung, L., Nixon, B. and Yu, E. 1995, Using non-functional requirements to systematically support change, RE '95-Second IEEE international symposium on Requirements Engineering.

  6. Craigen, D., Gerhart, S. and Ralston, T. 1993, An international survey of industrial applications of formal methods, Technical Report NISTGCR 93/626, U.S. National Institute of Standards and technology.

  7. Elmstrom, R., Larsen, P. G. and Lassen, P. B. 1994, The IFAD VDM-SL toolbox: a practical approach to formal specifications, ACM SIGPLAN Notices 29(9), 77-80.

    Google Scholar 

  8. Hayes, I. J. and Jones, C. B. 1989, Specifications are not (necessarily) executable, IEE, Software Engineering Journal 4(6), 320-338.

    Google Scholar 

  9. Hekmatpour, S. and Ince, D. 1988, Software prototyping, formal methods and VDM, Addison-Wesley.

  10. Henderson, P. 1986, Functional programming, formal specification, and rapid prototyping, IEEE Transactions on Software Engineering 12(2), 241-250.

    Google Scholar 

  11. Jones, C. B. 1990, Systematic Software Development Using VDM (Secon Edition), Prentice-Hall, London.

    Google Scholar 

  12. Jones, C., Jones, K., Lindsay, P. and Moore, R. 1991, Mural: A Formal Development Support System, Springer-Verlag.

  13. Kans, A. and Hayton, C. 1994, Using ABC to prototype VDM specifications, ACM SIGPLAN Notices 29(1), 27-37.

    Google Scholar 

  14. Larsen, P. G. 1994, Response to ”the formal specification of safety requirements for storing explosives”, Formal Aspects of Computing 6(5), 565-568.

    Google Scholar 

  15. Ledru, Y. 1994, Proof-based development of specifications with KIDS/VDM, in M. Naftalin, T. Denvir and M. Bertran (eds), FME'94: Industrial Benefit of Formal Methods, Vol. 873 of Lecture Notes in Computer Science, Springer-Verlag, pp. 214-232.

  16. Ledru, Y. 1996, Using KIDS as a tool support for VDM, Proceedings of the 18th International Conference on Software Engineering, IEEE Computer Society Press.

  17. Ledru, Y. and Liégeois, M.-H. 1991, Integrating REFINE prototypes in a VDM development framework, in B. Möller (ed.), Proceedings of the IFIP TC2 Working conference on Constructing Programs from Specifications, North-Holland, pp. 243-265.

  18. Ledru, Y. and Liégeois, M.-H. 1992, Prototyping VDM specifications with KIDS, Proceedings of the 7th Knowledge-Based Software Engineering Conference, IEEE Computer Society Press, pp. 50-59.

  19. Mukherjee, P. 1995, Computer-aided validation of formal specifications, IEE, Software Engineering Journal pp. 133-140.

  20. Smith, D. 1990, KIDS: a semi-automatic program development system, IEEE Transactions on Software Engineering—Special Issue on formal Methods 16(9), 1024-1043.

    Google Scholar 

  21. Smith, D., Kotik, G. and Westfold, S. 1985, Research on Knowledge-Based Software Environments at Kestrel Institute, IEEE Transactions on Software Engineering 11(11), 1278-1295.

    Google Scholar 

  22. Spivey, J. 1992, The Z notation-A Reference Manual (Second Edition), Prentice Hall.

  23. Terwilliger, R. B. and Campbell, R. H. 1989, ENCOMPASS: An environment for the incremental development of software, The Journal of Systems and Software 10, 41-53.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ledru, Y. Specification and Animation of a Bank Transfer using KIDS/VDM. Automated Software Engineering 4, 33–51 (1997). https://doi.org/10.1023/A:1008603612253

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008603612253

Navigation