Skip to main content

A formal approach to software design: The Clepsydra methodology

  • Methods
  • Conference paper
  • First Online:
ZUM '95: The Z Formal Specification Notation (ZUM 1995)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 967))

Included in the following conference series:

Abstract

In order to improve software quality, specifiers can take advantage of the use of formal methods in the software development process. With regard to requirements specifications, attempts in this sense have been successfully made. We claim that also in the design phase a formal approach could lead to several benefits, such as the possibility of formally checking if the produced documents satisfy initial requirements. To this purpose we emphasize the role of tools since they provide automatic support to verification. Because of the different aims of the requirements and design specification phases, we believe appropriate the use of two different formal languages for their definition. The above considerations are gathered in the Clepsydra methodology, where a relationship between these early phases of the software development process is introduced, by using Z and Larch as formal languages for requirements and design specifications respectively. Moreover, verification issues are also discussed, by outlining how the introduced methodology makes easier the verifier's task.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. Bowen and M. Gordon. Z and HOL. 1994. URL ftp://ftp.cl.cam.ac.uk/hvg/papers/zhol.ps.gz.

    Google Scholar 

  2. P. Ciaccia and P. Ciancarini. A Course on Formal Methods in Software Engineering. In A. Finkelstein and B. Nuseibeh, editors, Proceedings ACM/IEEE International Workshop on Software Engineeering Education, pages 97–110, Sorrento, Italy, 1994.

    Google Scholar 

  3. A. Diller. Z: An Introduction to Formal Methods. Wiley, 1990.

    Google Scholar 

  4. D. Evans. LCLint User's Guide. MIT/LCS Distribution Site, February 1994.

    Google Scholar 

  5. S. Garland and J. Guttag. An Overview of LP, the Larch Prover. In Proc. 3rd Int. Conf. on Rewriting Techniques and Applications, volume 355 of LNCS, pages 137–151. Springer-Verlag, Berlin, 1989.

    Google Scholar 

  6. J. Guttag and J. Horning. Larch: Languages and Tools for Formal Specification. Springer-Verlag, 1993.

    Google Scholar 

  7. I. Hayes. Specification Case Studies. Prentice Hall, 2 edition, 1993.

    Google Scholar 

  8. M. Hewitt. Automated Animation of Z Using Prolog. B.Sc. Project Report, Department of Computing, Lancaster University, UK, August 1991.

    Google Scholar 

  9. C. Hoare. Preface. In D. Bjorner, C. Hoare, and H. Langmaack, editors, Proc. VDM 90: Formal Methods in Software Development, volume 428, pages vii–x, Kiel, Germany, 1990. Springer-Verlag, Berlin.

    Google Scholar 

  10. D. Jordan. CADiZ — Computer Aided Design in Z. In S. Prehn and W. Toetenel, editors, VDM 91: Formal Software Development Methods, volume 551, pages 685–690. Springer-Verlag, Berlin, October 1991.

    Google Scholar 

  11. R. Kemmerer. Testing Formal Specifications to Detect Design Errors. IEEE Transactions on Software Engineering, 11(1):32–43, January 1985.

    Google Scholar 

  12. S. King. Z and the Refinement Calculus. In D. Bjorner, C. Hoare, and H. Langmaack, editors, VDM and Z-FORMAL METHODS, volume 428 of LNCS, pages 164–188. Springer-Verlag, 1990.

    Google Scholar 

  13. B. Liskov and J. Guttag. Abstraction and Specification in Program Development. MIT Press, Cambridge, 1986.

    Google Scholar 

  14. J. Spivey. The Fuzz Manual. 1988.

    Google Scholar 

  15. J. Spivey. The Z Notation. A Reference Manual. Prentice Hall, 2 edition, 1992.

    Google Scholar 

  16. S. Stepney, R. Barden, and D. Cooper. Object-Orientation in Z. Springer Verlag, 1990.

    Google Scholar 

  17. J. Wing. Writing Larch Interface Language Specifications. ACM Transactions on Programming Languages and Systems, 9(1):1–24, January 1987.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jonathan P. Bowen Michael G. Hinchey

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ciaccia, P., Ciancarini, P., Penzo, W. (1995). A formal approach to software design: The Clepsydra methodology. In: Bowen, J.P., Hinchey, M.G. (eds) ZUM '95: The Z Formal Specification Notation. ZUM 1995. Lecture Notes in Computer Science, vol 967. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60271-2_110

Download citation

  • DOI: https://doi.org/10.1007/3-540-60271-2_110

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60271-2

  • Online ISBN: 978-3-540-44782-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics