Skip to main content

Deriving Software Specifications from Event Based Models

  • Conference paper
  • First Online:
ZB 2000: Formal Specification and Development in Z and B (ZB 2000)

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

Included in the following conference series:

Abstract

We present a method to derive sequential program specifications from system models. We use an event based approach to model systems, as it allows us to specify parallel, concurrent and distributed systems. We refine the specification of a system until we have introduced all the events needed by its components to interact with the environment. Then, we derive an environment specification and a specification for each component. We use pre-conditions and post-conditions in these specifications, so that they can be implemented using the classical refinement relation for sequential programs. The derived components share the environment module to interact with each other.

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, Conjoining Specifications, ACM Transactions on Programming Languages and Systems 17,3, 507–534, 1995.

    Article  Google Scholar 

  2. Abrial J.R., The B Book. Assigning programs to Meanings, Cambridge University Press, 1996

    Google Scholar 

  3. Abrial J.R., Extending B without changing it, for Developing Distributed Systems, in First B conference, H. Habrias editor, 169–190, Nantes, 1996.

    Google Scholar 

  4. Abrial J.R., Mussat L., Specification and Design of a Transmission Protocol by successive Refinements using B, in Mathematical Methods in Program Development, Edited by M. Broy and B. Schieder, Springer-Verlag, 1997.

    Google Scholar 

  5. Back R.J., A calculus of refinements for program derivations, Acta Informatica 25, 593–624, 1988.

    Article  MATH  MathSciNet  Google Scholar 

  6. Back R.J., J. von Wright, Refinement Calculus, Part 1: Sequential Nondeterministic Programs, in J.W. deBakker, W.P. deRoever, and G. Rozenberg editors, Lecture Notes in Computer Science 430, 42–66, Springer, 1990.

    Google Scholar 

  7. Back R.J., Refinement Calculus, Part 2: Parallel and Reactive Programs, in J.W. deBakker, W.P. deRoever, and G. Rozenberg editors, Lecture Notes in Computer Science 430, 67–93, Springer, 1990.

    Google Scholar 

  8. Back R.J.R., Kurki-Suonio R., Decentralization of Process Nets with Centralized Control, in 2nd ACM SIGACT-SIGOPS Symp. on Principles of Distributed Computing, 131–142, ACM, 1983.

    Google Scholar 

  9. Back R.J.R., Sere K., Stepwise Refinement of Actions Systems, in Mathematics of Program Construction, Lectures Notes in Computer Science 375, 115–138, Springer, 1989.

    Google Scholar 

  10. Behm P., Benoit P., Faivre A., Meynadier J-M., Meteor: A Successful Application of B in a Large Project, in Jeannette M. Wing, Jim Woodcock, Jim Davies editors, Lecture Notes in Computer Science 1708, 369–387, Springer, 1999.

    Google Scholar 

  11. Butler M.J., Stepwise refinement of communicating systems, Science of Computer Programming 27, 139–173, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  12. Butler M., Walden M., Distributed System Development in B, in First B conference, H. Habrias editor, 155–168, Nantes, 1996.

    Google Scholar 

  13. Dijkstra E.W., A Discipline of programming, Prentice-Hall International, 1976.

    Google Scholar 

  14. Hoare C.A.R., An Axiomatic Bases For computer Programming, Comm. ACM 12,10, 576–580, 1969.

    Article  MATH  Google Scholar 

  15. Hoare C.A.R., Communicating Sequential Processes, Prentice-Hall. 1985.

    Google Scholar 

  16. Lam S.S., Shankar U., A Relational Notation for State Transition Systems, in IEEE Transactions on Software Engineering, Vol 16, No 7, 755–775, 1990.

    Article  Google Scholar 

  17. Lopez N., Construction de la specification formelle d’un systeme complexe, in First B conference, H. Habrias editor, 63–119, Nantes, 1996.

    Google Scholar 

  18. Lopez N., Construction de la specification formelle d’un systeme complexe, Memoire d’ingenieur CNAM, 1996.

    Google Scholar 

  19. Lopez N., An’ event based B’ industrial experience, in the proceedings of the B user Group Meeting, edited by Ken Robinson, Applying B in an industrial context, World Congress on Formal Methods 1999.

    Google Scholar 

  20. Morgan C., The Specification Statement, in ACM Transactions on Programming Languages and Systems, Vol 10, No 3, 403–419, 1988.

    Article  MATH  Google Scholar 

  21. Morgan C., Programming from Specifications, Prentice-Hall International. 1990.

    Google Scholar 

  22. Morris J.M., A Theoretical Basis for Stepwise refinement and the Programming Calculus, Science of Computer Programming 9, 287–306, North-Holland, 1987.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lopez, N., Simonot, M., Donzeau-Gouge, V.V. (2000). Deriving Software Specifications from Event Based Models. In: ZB 2000: Formal Specification and Development in Z and B. ZB 2000. Lecture Notes in Computer Science, vol 1878. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44525-0_13

Download citation

  • DOI: https://doi.org/10.1007/3-540-44525-0_13

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67944-8

  • Online ISBN: 978-3-540-44525-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics