Skip to main content

Object Oriented Specification and Refinement

  • Conference paper
4th Refinement Workshop

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

The increasing demand for high integrity and safety critical systems is giving the development of formal methods for software production a high priority. A large number of different approaches to specifying, developing and implementing systems have been devised, however, despite this widespread (but mainly academic) research, formal methods are still very rarely used in industrial practice. This failure can be attributed to a number of causes, among them the inability of the techniques to scale easily to industrial sized problems.

This paper proposes an approach to specification that helps alleviate the problems of scalability by providing a strong separation between parts of a specification, allowing their independent refinement, and hence allowing refinements of the total specification to be produced relatively cheaply. The separation is provided by producing specifications as a set of objects, each of which is described by two specifications, an algebraic export specification and a model oriented body specification. The export describes the object to those who will use it, while the body specification will form the basis of subsequent refinement and implementation.

This approach to specification provides a framework within which to specify and develop software. We describe relationships within this framework for which we must be able to derive and discharge relevant proof obligations in order to verify the specifications. In particular we describe the refinement relation between the object’s export and body specifications, the substitution relation implied when we use one object within another, and the composition relation which allows us to correctly combine a set of objects to form a complete system.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. D Neilson, “From Z to C: A Rigorous Refinement Method for Z.”, D.Phil. Thesis, Programming Research Group, Oxford University (1990).

    Google Scholar 

  2. M C Atkins, Implementation Techniques for Object Oriented Systems, D hil Thesis, University of York (1989).

    Google Scholar 

  3. C Morgan, Programming from Specifications,Prentice Hall International (1990).

    Google Scholar 

  4. Carrington D, Duke D, Duke R, King P, Rose G and Smith G, Object-Z: An Object-Oriented Extension to Z, FORTE. 89 (December 1989).

    Google Scholar 

  5. A Hall, “Using Z as a Specification Calculus for Object Oriented Sytems”, in Proceedings of VDM-90, Springer-Verlag (1990).

    Google Scholar 

  6. Schuman S A and Pitt D H, “Object Oriented Subsystem Specification”, pp. 313–341 in Program Specification and Transformation, ed. Meertens L G L T, North Holland (1985).

    Google Scholar 

  7. Bartussek W and Parnas D, “Using Assertions About Traces to Write Abstract Specifications fo Software Modules”, pp. 111–130 in Software Specification Techniques, ed. Gehani N and McGettrick A D (1985).

    Google Scholar 

  8. Parnas D L and Wang Y, “The Trace Assertion Method of Module Interface Specification”, Technical Report 89–261, Queen’s University, Ontario (1989).

    Google Scholar 

  9. D Neilson, “Hierarchical Refinement of A Z Specification”, in The Theory and Practice of Refinement, ed. J A McDermid, Butterworth Scientific (1989).

    Google Scholar 

  10. C B Jones, “Development Methods for Computer Programs including a Notion of Interference”, D.Phil. Thesis, Programming Research Group, Oxford University (1981).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Whysall, P.J., McDermid, J.A. (1991). Object Oriented Specification and Refinement. In: Morris, J.M., Shaw, R.C. (eds) 4th Refinement Workshop. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3756-6_9

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3756-6_9

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19657-0

  • Online ISBN: 978-1-4471-3756-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics