Skip to main content
Log in

Using formal specifications to support software testing

  • Papers
  • Published:
Software Quality Journal Aims and scope Submit manuscript

Abstract

Formal specifications become more and more important in the development of software, especially but not only in the area of high integrity system design. In this paper it is demonstrated, how, apart from the specification phase, further benefits may be drawn from formal specifications for checking the implementation against the specification. It is shown how the specification can be used for systematically deriving test input data and for automatically evaluating test results. The approach is illustrated using the specification language Z. The same principles may be applied to other specification languages. The approach allows a high degree of automation, drastically improving productivity and quality of the testing process.

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

  • Carrington, D. and Stocks, P. (1994) A tale of two paradigms: formal methods and software testing. In J. P. Bowen and J. A. Hall, eds, Z User Workshop, Cambridge, June 1994, Workshops in Computing, pp. 51–68. BCS FACS, Springer Verlag.

  • DemilloR. and OffuttA.J. (1993) Experimental results from an automatic test case generator. ACM Transactions on Software Engineering 2(2) 109–127.

    Google Scholar 

  • Dick, J. and Faivre, A. (1993) Automating the generation and sequencing of test cases from model-based specifications. In J.C.P. Woodcock and P.G. Larsen, eds, FME'93: Industrial-Strength Formal Methods, number 670 in Lecture Notes in Computer Science, pp. 268–284. FME Europe, Springer Verlag.

  • Diller, A. (1990) Z: An Introduction to Formal Methods, 1st edn. (John Wile & Sons, 1990).

  • GrochtmannM. and GrimmK. (1993) Classification trees for partition testing. Software Testing, Verification and Reliability 3(2), 63–82.

    Google Scholar 

  • GutjahrW. (1993) Automatische Testdatengenerierung zur Unterstüzung des Softwaretests. Informatik Forschung und Entwicklung 8(3), 128–136.

    Google Scholar 

  • HörcherH.-M. (1993) Das DST-Unittestbed zur automatisierten Durchführung von Unittests. GI-Softwaretechnik Trends, Mitteilungen der Fachgruppe ‘Software-Engineering’ 13(2), 41–49.

    Google Scholar 

  • Hörcher, H.-M. (1995) Improving software tests using Z specifications. In Z User Meeting-ZUM'95, Lecture Notes in Computer Science. BCS FACS, Springer Verlag.

  • Hörcher, H.-M. and Peleska, J. (1993) The role of formal specifications in software testing. In Tutorial Notes for the FME'94 Symposium. Formal Methods Europe, October 1994.

  • Hamer, U. and Peleska, J. (1995) The Airbus A330/340 Cabin Communication System-A Z Application. In Michael G. Hinchey and Jonathan Bowen, eds, Applications of Formal Methods, Series in Computer Science. (Prentice Hall International, 1995).

  • Jones, C.B. (1986) Systematic Software Development using VDM. Series in Computer Science. (Prentice Hall International, 1986).

  • Mikk, E. (1993) Automatic compilation of Z specifications into C for automatic test result evaluation. Master's thesis, Christian Albrecht Universität Kiel, December 1993.

  • Mikk, E. (1995) Compilation of Z specifications into C for automatic test result evaluation. In Z User Meeting-ZUM'95, Lecture Notes in computer Science. (BCS FACS, Springer Verlag).

  • Myers, G.J. (1979) The Art of Software Testing. (John Wiley & Sons, 1979).

  • Scullard, G.T. (1988) Test case selection using VDM. In R. Bloomfield, L. Marshall, and R. Jones, eds, VDM88: VDM—The Way Ahead, number 328 in Lecture Notes in Computer Science, pp. 178–186. (VDM Europe, Springer Verlag).

  • Spivey, M. (1992) The Z Notation—A Reference Manual, 2nd edn. International Series in Computer Science. (Prentice Hall International, 1992).

  • Wordsworth, J.B. (1992) Software Development with Z. International Computer Science Series. (Addison Wesley, 1992).

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hörcher, HM., Peleska, J. Using formal specifications to support software testing. Software Qual J 4, 309–327 (1995). https://doi.org/10.1007/BF00402650

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00402650

Keywords

Navigation