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.
Similar content being viewed by others
References
Woodcock J C P, Davies J. Using Z: Specification, Refinement, and Proof. New Jersey: Prentice Hall, 1996
Morgan C C. Programming From Specifications. New Jersey: Prentice Hall, 1990
de Roever W P, Engelhardt K. Data Refinement: Model-Oriented Proof Methods and Their Comparison. New York: Cambridge University Press, 1998
Swartout W, Balzer R. On the inevitable intertwining of specification and implementation. Communications of the ACM, 1982, 25(7): 438–440
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
Hayes I J, Sanders J W. Specification by interface separation. Formal Aspects of Computing, 1995, 7(4): 430–439
Guerra S. Defaults in the specification of reactive systems. Dissertation for the Doctoral Degree. London: University College London, 1999
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
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
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
Smith G. Stepwise development from ideal specifications. In: Proceedings of 23rd Australasian Computer Science Conference. 2000, 227–233
Banach R, Poppleton M, Jeske C, Stepney S. Engineering and theoretical underpinnings of retrenchment. Science of Computer Programming, 2007, 67(2–3): 301–329
Emerson E A. Temporal and Modal Logic. Handbook of Theoretical Computer Science (Vol. B): Formal Models and Semantics. Cambridge: MIT Press, 1990, 995–1072
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
Smith G, Wildman L. Model checking Z specifications using SAL. In: Proceedings of 4th International Conference of Z and B Users. 2005, 85–103
Derrick J, Boiten E. Refinement in Z and Object-Z: Foundations and Advanced Applications. London: Springer-Verlag, 2001
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
Peterson G L. Myths about the mutual exclusion problem. Information Processing Letters, 1981, 12(3): 115–116
Smith G. The Object-Z Specification Language. Hingham: Kluwer Academic Publishers, 2000
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
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
Author information
Authors and Affiliations
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11704-010-0112-5