Skip to main content
Log in

Property transformation under specification change

  • Research Article
  • Published:
Frontiers of Computer Science in China Aims and scope Submit manuscript

Abstract

Formal specifications of software systems need to evolve in many ways during system development. Not only are changes required to refine the specification toward an implementation, they are also required in response to changes in requirements, or to incorporate different aspects of the system, e.g., fault tolerance or timing, initially ignored in order to simplify reasoning. This paper presents an approach for evolving Z specifications by the step-wise application of a number of simple rules. These rules not only document the evolution of the specification, but also make precise how properties of the system evolve with the specification. Hence, reasoning about these properties performed on the original specification need not be repeated on the new specification.

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. Woodcock J C P, Davies J. Using Z: Specification, Refinement, and Proof. New Jersey: Prentice Hall, 1996

    MATH  Google Scholar 

  2. Morgan C C. Programming From Specifications. New Jersey: Prentice Hall, 1990

    MATH  Google Scholar 

  3. de Roever W P, Engelhardt K. Data Refinement: Model-Oriented Proof Methods and Their Comparison. New York: Cambridge University Press, 1998

    Book  MATH  Google Scholar 

  4. Swartout W, Balzer R. On the inevitable intertwining of specification and implementation. Communications of the ACM, 1982, 25(7): 438–440

    Article  Google Scholar 

  5. van Schouwen A J, Parnas D, Madey J. Documentation of requirements for computer systems. In: Proceedings of 1st IEEE Symposium on Requirements Engineering. 1993, 198–207

  6. Hayes I J, Sanders J W. Specification by interface separation. Formal Aspects of Computing, 1995, 7(4): 430–439

    Article  MATH  Google Scholar 

  7. Guerra S. Defaults in the specification of reactive systems. Dissertation for the Doctoral Degree. London: University College London, 1999

    Google Scholar 

  8. Bredereke J. Families of formal requirements in telephone switching. In: Calder M, Magill E H, eds. Feature Interactions in Telecommunications and Software Systems. IOS Press, 2000, 257–273

  9. van Lamsweerde A, Darimont R, Massonet P. Goaldirected elaboration of requirements for a meeting scheduler: Problems and lessons learnt. In: Proceedings of 2nd IEEE Symposium on Requirements Engineering. 1995, 194–203

  10. Liu S. Evolution: A more practical approach than refinement for software development. In: Proceedings of 1997 IEEE International Conference on Engineering of Complex Computer Systems. 1997, 142–151

  11. Smith G. Stepwise development from ideal specifications. In: Proceedings of 23rd Australasian Computer Science Conference. 2000, 227–233

  12. Banach R, Poppleton M, Jeske C, Stepney S. Engineering and theoretical underpinnings of retrenchment. Science of Computer Programming, 2007, 67(2–3): 301–329

    Article  MathSciNet  MATH  Google Scholar 

  13. Emerson E A. Temporal and Modal Logic. Handbook of Theoretical Computer Science (Vol. B): Formal Models and Semantics. Cambridge: MIT Press, 1990, 995–1072

    Google Scholar 

  14. Smith G, Winter K. Proving temporal properties of Z specifications using abstraction. In: Proceedings of 3rd International Conference of Z and B Users. 2003, 260–270

  15. Smith G, Wildman L. Model checking Z specifications using SAL. In: Proceedings of 4th International Conference of Z and B Users. 2005, 85–103

  16. Derrick J, Boiten E. Refinement in Z and Object-Z: Foundations and Advanced Applications. London: Springer-Verlag, 2001

    MATH  Google Scholar 

  17. Fu Z, Smith G. Towards more flexible development of Z specifications. In: Proceedings of 2nd IFIP/IEEE International Symposium on Theoretical Aspects of Software Engineering. 2008, 281–288

  18. Peterson G L. Myths about the mutual exclusion problem. Information Processing Letters, 1981, 12(3): 115–116

    Article  MATH  Google Scholar 

  19. Smith G. The Object-Z Specification Language. Hingham: Kluwer Academic Publishers, 2000

    MATH  Google Scholar 

  20. Derrick J, Smith G. Linear temporal logic and Z refinement. In: Proceedings of 10th International Conference on Algebraic Methodology and Software Technology. 2004, 117–131

  21. McComb T, Smith G. A minimal set of refactoring rules for Object-Z. In: Proceedings of 10th IFIP WG 6.1 international conference on Formal Methods for Open Object-Based Distributed Systems. 2008, 170–184

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zheng Fu.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fu, Z., Smith, G. Property transformation under specification change. Front. Comput. Sci. China 5, 1–13 (2011). https://doi.org/10.1007/s11704-010-0112-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11704-010-0112-5

Keywords

Navigation