Advertisement

Generalised Test Tables: A Practical Specification Language for Reactive Systems

  • Bernhard Beckert
  • Suhyun Cha
  • Mattias Ulbrich
  • Birgit Vogel-Heuser
  • Alexander WeiglEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10510)

Abstract

In industrial practice today, correctness of software is rarely verified using formal techniques. One reason is the lack of specification languages for this application area that are both comprehensible and sufficiently expressive. We present the concepts and logical foundations of generalised test tables – a specification language for reactive systems accessible for practitioners. Generalised test tables extend the concept of test tables, which are already frequently used in quality management of reactive systems. The main idea is to allow more general table entries, thus enabling a table to capture not just a single test case but a family of similar behavioural cases. The semantics of generalised test tables is based on a two-party game over infinite words.

We show how generalised test tables can be encoded into verification conditions for state-of-the-art model checkers. And we demonstrate the applicability of the language by an example in which a function block in a programmable logic controller as used in automation industry is specified and verified.

References

  1. 1.
    Armoni, R., Fix, L., Flaisher, A., Gerth, R., Ginsburg, B., Kanza, T., Landver, A., Mador-Haim, S., Singerman, E., Tiemeyer, A., Vardi, M.Y., Zbar, Y.: The ForSpec temporal logic: a new temporal property-specification language. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 296–311. Springer, Heidelberg (2002). doi: 10.1007/3-540-46002-0_21 CrossRefGoogle Scholar
  2. 2.
    Bitsch, F.: Safety patterns—the key to formal specification of safety requirements. In: Voges, U. (ed.) SAFECOMP 2001. LNCS, vol. 2187, pp. 176–189. Springer, Heidelberg (2001). doi: 10.1007/3-540-45416-0_18 CrossRefGoogle Scholar
  3. 3.
    Campos, J.C., Machado, J.: Pattern-based analysis of automated production systems. IFAC Proc. Vol. 42(4), 972–977 (2009)CrossRefGoogle Scholar
  4. 4.
    Cavada, R., Cimatti, A., Dorigatti, M., Griggio, A., Mariotti, A., Micheli, A., Mover, S., Roveri, M., Tonetta, S.: The nuXmv symbolic model checker. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 334–342. Springer, Cham (2014). doi: 10.1007/978-3-319-08867-9_22 Google Scholar
  5. 5.
    Cha, S., Ulewicz, S., Vogel-Heuser, B., Weigl, A., Ulbrich, M., Beckert, B.: Generation of monitoring functions in production automation using test specifications. In: 15th IEEE International Conference on Industrial Informatics, INDIN 2017, Emden, Germany. IEEE, 24–26 July 2017 (to appear)Google Scholar
  6. 6.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No. 99CB37002), pp. 411–420, May 1999Google Scholar
  7. 7.
    Heitmeyer, C.L., Archer, M., Bharadwaj, R., Jeffords, R.: Tools for constructing requirements specifications: the SCR toolset at the age of ten. Int. J. Comput. Syst. Sci. Eng. 20(1), 19–35 (2005)Google Scholar
  8. 8.
    Ljungkrantz, O., Åkesson, K., Fabian, M., Yuan, C.: A formal specification language for PLC-based control logic. In: 2010 8th IEEE International Conference on Industrial Informatics, pp. 1067–1072, July 2010Google Scholar
  9. 9.
    Moszkowski, B.: A temporal logic for multilevel reasoning about hardware. Computer 18(2), 10–19 (1985)CrossRefGoogle Scholar
  10. 10.
    Parnas, D.L., Madey, J., Iglewski, M.: Precise documentation of well-structured programs. IEEE Trans. Softw. Eng. 20(12), 948–976 (1994)CrossRefGoogle Scholar
  11. 11.
    Rösch, S.: Model-based testing of fault scenarios in production automation. Ph.D. thesis, Technische Universität München, München (2016)Google Scholar
  12. 12.
    Weigl, A., Wiebe, F., Ulbrich, M., Ulewicz, S., Cha, S., Kirsten, M., Beckert, B., Vogel-Heuser, B.: Generalized test tables: a powerful and intuitive specification language for reactive systems. In: 15th IEEE International Conference on Industrial Informatics, INDIN 2017, Emden, Germany. IEEE, 24–26 July 2017 (to appear)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Bernhard Beckert
    • 1
  • Suhyun Cha
    • 2
  • Mattias Ulbrich
    • 1
  • Birgit Vogel-Heuser
    • 2
  • Alexander Weigl
    • 1
    Email author
  1. 1.Karlsruhe Institute of TechnologyKarlsruheGermany
  2. 2.Technical University of MunichMunichGermany

Personalised recommendations