Skip to main content

The Ecology of Class Refinement

  • Conference paper
4th Refinement Workshop

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

Abstract

The behaviour of an object depends not only upon its class but also upon the environment within which it operates: the class specifies all possible behaviour; the environment determines a framework for behaviour. An object’s behaviour must fall within the framework set by the environment but subject to the possibilities determined by its class. Intuitively, class refinement will lead to some kind of behavioural compatibility; hence a theory of class refinement must take account of the environment and its effect upon behaviour. In this paper we construct formal models for class and environment and unify them into a coherent theory of class refinement. This unified view incorporates existing refinement theories as special cases.

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. M. Abadi and L. Lamport. Composing specifications. In J.W. de Bakker, W.-P. de Roever, and G.Rozenberg, editors, Proc. REX Workshop on Stepwise Refinement of Distributed Systems, volume 430 of Lect. Notes in Comput. Sci., pages 1–41. Springer-Verlag, 1990.

    Google Scholar 

  2. M. Abadi, L. Lamport, and P. Wolper. Realizable and unrealizable specifications of reactive systems. In G. Ausiello, M. Dezani-Ciancaglini, and S. Ronchi Della Rocca, editors, Proc. 16th Intl. Colloquium on Automata, Languages and Programming (ICALP’89), volume 372 of Lect. Notes in Comput. Sci., pages 1–17. Springer-Verlag, 1989.

    Google Scholar 

  3. P. America. Inheritance and subtyping in a parallel object-oriented language. In J. Bézivin, J.-M. Hullot, P. Cointe, and H. Lieberman, editors, Proc. European Conf. on Object-Oriented Programming (ECOOP’87), volume 276 of Lect. Notes in Comput. Sci., pages 234–242. Springer-Verlag, 1987.

    Google Scholar 

  4. R.J.R. Back. Refinement calculus, Part II: Parallel and reactive programs. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Proc. REX Workshop on Stepwise Refinement of Distributed Systems, volume 430 of Lect. Notes in Comput. Sci., pages 67–93. Springer-Verlag, 1990.

    Google Scholar 

  5. R.J.R. Back and J. von Wright. Refinement calculus, Part I: Sequential nondeterministic programs. In J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Proc. REX Workshop on Stepwise Refinement of Distributed Systems, volume 430 of Lect. Notes in Comput. Sci., pages 42–66. Springer-Verlag, 1990.

    Google Scholar 

  6. S.D. Brookes, C.A.R. Hoare, and A.W. Roscoe. A theory of communicating sequential processes. J. ACM, 31 (7): 560–599, 1984.

    Article  MathSciNet  MATH  Google Scholar 

  7. D. Carrington, D. Duke, R. Duke, P. King, G. Rose, and G. Smith. Object-Z: An object-oriented extension to Z. In S. Vuong, editor, Formal Description Techniques, II (FORTE’89), pages 281–296. North-Holland, 1990.

    Google Scholar 

  8. J.W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors. Proc. REX Workshop on Stepwise Refinement of Distributed Systems, volume 430 of Lect. Notes in Comput. Sci. Springer-Verlag, Mook, The Netherlands, 1990.

    Google Scholar 

  9. R. De Nicola. Extensional equivalences for transition systems. Acta Informatica, 24: 211–237, 1987.

    Article  MathSciNet  MATH  Google Scholar 

  10. D. Duke and R. Duke. Towards a semantics for Object-Z. In D. Bjorner, C.A.R. Hoare, and H. Langmaack, editors, VDM’90: VDM and Z!, volume 428 of Lect. Notes in Comput. Sci., pages 242–262. Springer-Verlag, 1990.

    Google Scholar 

  11. R. Duke, G. Rose, and A. Lee. Object-oriented protocol specification. In L. Logrippo, R.L. Probert, and H. Ural, editors, Protocol Specification, Testing, and Verification, X, pages 325–338. North-Holland, 1990.

    Google Scholar 

  12. D. Harel and A. Pnueli. On the development of reactive systems. In K. Apt, editor, Proc. NATO Advanced Course on Logics and Models of Concurrent Systems, pages 477–499. Springer-Verlag, 1985.

    Google Scholar 

  13. I. Hayes, editor. Specification Case Studies. International Series in Computer Science. Prentice-Hall, 1987.

    Google Scholar 

  14. J. He. Process simulation and refinement. Formal Aspects of Computing, 1: 229241, 1989.

    Google Scholar 

  15. J. He, C.A.R. Hoare, and J. Sanders. Data refinement refined. In B. Robinet and R. Wilhelm, editors, European Symp. on Programming (ESOP’86), volume 213 of Lect. Notes in Comput. Sci., pages 187–196, 1986.

    Google Scholar 

  16. C.A.R. Hoare. Communicating Sequential Processes. International Series in Computer Science. Prentice-Hall, 1985.

    MATH  Google Scholar 

  17. C. Jones. Systematic Software Development Using VDM. International Series in Computer Science. Prentice-Hall, 1986.

    MATH  Google Scholar 

  18. M. Josephs. A state-based approach to communicating processes. Distributed Computing, 3: 9–18, 1988.

    Article  MATH  Google Scholar 

  19. B. Meyer. Object-Oriented Software Construction. International Series in Computer Science. Prentice-Hall, 1988.

    Google Scholar 

  20. R. Milner. A Calculus of Communicating Systems, volume 92 of Lect. Notes in Comput. Sci. Springer-Verlag, 1980.

    Google Scholar 

  21. C. Morgan. Programming from Specifications. International Series in Computer Science. Prentice-Hall, 1990.

    MATH  Google Scholar 

  22. J.M. Spivey. The Z Notation: A Reference Manual. International Series in Computer Science. Prentice-Hall, UK, 1989.

    MATH  Google Scholar 

  23. B. Stroustrup. The C++ Programming Language. Addison-Wesley, 1986.

    Google Scholar 

  24. P. Wegner. The object-oriented classification paradigm. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 479–560. MIT Press, 1987.

    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

Bailes, C., Duke, R. (1991). The Ecology of Class 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_10

Download citation

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

  • 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