Testing of Finite State Systems

  • Mihalis Yannakakis
  • David Lee
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1584)


Finite state machines have been used to model a wide variety of systems, including sequential circuits, and more recently, communication protocols. In testing problems we are given a system M, which we may test by providing inputs and observing the outputs produced. The goal is to design test sequences so that we can deduce desired information, such as the state of M, or whether M implements correctly a given specification machine S. In this paper we will discuss algorithmic work on basic testing problems for systems modeled by different types of finite state machines.


State Machine Test Sequence Finite State Machine Reachability Graph State Transition Diagram 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AS88]
    Agrawal, V.D., Seth, S.C.: Test Generation for VLSI Chips. Computer Society Press (1988)Google Scholar
  2. [ADLU91]
    Aho, A.V., Dahbura, A.T., Lee, D., Uyar, M.U.: An optimization technique for protocol conformance test generation based on UIO sequences and rural Chinese postman tours. IEEE Trans. on Communication 39(11), 1604–1615 (1991)CrossRefGoogle Scholar
  3. [ACY95]
    Alur, R., Courcoubetis, C., Yannakakis, M.: Distinguishing tests for nondeterministic and probabilistic machines. In: Proc. 27th Ann. ACM Symp. on Theory of Computing, pp. 363–372 (1995)Google Scholar
  4. [An87]
    Angluin, D.: Learning regular sets from queries and counter examples. Inform. and Comp. 75, 87–106 (1987)zbMATHCrossRefMathSciNetGoogle Scholar
  5. [ANSI89]
    International standard ISO 8802-2, ANSI/IEEE std 802.2 (1989)Google Scholar
  6. [Ap95]
    Apfelbaum, L.: Automated functional test generation. In: Proc. IEEE Autotestcon Conference (1995)Google Scholar
  7. [CVI89]
    Chan, W.Y.L., Vuong, S.T., Ito, M.R.: An improved protocol test generation procedure based on UIOs. In: Proc. SIGCOM, pp. 283–294 (1989)Google Scholar
  8. [CZ93]
    Chanson, S.T., Zhu, J.: A unified approach to protocol test sequence generation. In: Proc. INFOCOM, pp. 106–114 (1993)Google Scholar
  9. [CCK90]
    Chen, M.-S., Choi, Y., Kershenbaum, A.: Approaches utilizing segment overlap to minimize test sequences. In: Logrippo, L., Probert, R.L., Ural, H. (eds.) Proc. IFIP WG6.1 10th Intl. Symp. on Protocol Specification, Testing, and Verification, pp. 85–98. North-Holland, Amsterdam (1990)Google Scholar
  10. [Ch78]
    Chow, T.S.: Testing software design modeled by finite-state machines. IEEE Trans. on Software Engineering SE-4(3), 178–187 (1978)CrossRefGoogle Scholar
  11. [EJ73]
    Edmonds, J., Johnson, E.L.: Matching, Euler tours and the Chinese postman. Mathematical Programming 5, 88–124 (1973)zbMATHCrossRefMathSciNetGoogle Scholar
  12. [FM71]
    Friedman, A.D., Menon, P.R.: Fault Detection in Digital Circuits. Prentice-Hall, Englewood Cliffs (1971)Google Scholar
  13. [He64]
    Hennie, F.C.: Fault detecting experiments for sequential circuits. In: Proc. 5th Ann. Symp. Switching Circuit Theory and Logical Design, pp. 95–110 (1964)Google Scholar
  14. [Ho91]
    Holzmann, G.J.: Design and Validation of Computer Protocols. Prentice-Hall, Englewood Cliffs (1991)Google Scholar
  15. [Kn93]
    Knightson, K.G.: OSI Protocol Conformance Testing. McGraw Hill, New York (1993)Google Scholar
  16. [Ko78]
    Kohavi, Z.: Switching and Finite Automata Theory, 2nd edn. McGraw-Hill, New York (1978)zbMATHGoogle Scholar
  17. [Ku95]
    Kurshan, R.P.: Computer-aided Verification of Coordinating Processes. Princeton University Press, Princeton (1995)zbMATHGoogle Scholar
  18. [LSKP96]
    Lee, D., Sabnani, K.K., Kristol, D.M., Paul, S.: Conformance testing of protocols specified as communicating finite state machines - a guided random walk based approach. IEEE Trans. on Communications 44(5), 631–640 (1996)CrossRefGoogle Scholar
  19. [LY92]
    Lee, D., Yannakakis, M.: On-line minimization of transition systems. In: Proc. 24th Ann. ACM Symp. on Theory of Computing, pp. 264–274 (1992)Google Scholar
  20. [LY94]
    Lee, D., Yannakakis, M.: Testing finite state machines: state identification and verification. IEEE Trans. on Computers 43(3), 306–320 (1994)CrossRefMathSciNetGoogle Scholar
  21. [LY96a]
    Lee, D., Yannakakis, M.: Principles and Methods of Testing Finite State Machines - a Survey. Proceedings of IEEE 84(8), 1089–1123 (1996)CrossRefGoogle Scholar
  22. [LY96b]
    Lee, D., Yannakakis, M.: Optimization Problems from Feature Testing of Communication Protocols. In: Proc. of Intl. Conf. on Network Protocols, pp. 66–75 (1996)Google Scholar
  23. [LY99a]
    Lee, D., Yannakakis, M.: in preparationGoogle Scholar
  24. [LY99b]
    Lee, D., Yannakakis, M.: Pithia - An automatic test generation software tool for communication systems (in preparation)Google Scholar
  25. [MP93]
    Miller, R.E., Paul, S.: On the generation of minimal length test sequences for conformance testing of communication protocols. IEEE/ACM Trans. on Networking 1(1), 116–129 (1993)CrossRefGoogle Scholar
  26. [Mo56]
    Moore, E.F.: Gedanken-experiments on sequential machines. In: Automata Studies, Annals of Mathematics Studies, vol. 34, pp. 129–153. Princeton University Press, Princeton (1956)Google Scholar
  27. [NT81]
    Naito, S., Tsunoyama, M.: Fault detection for sequential machines by transitions tours. In: Proc. IEEE Fault Tolerant Comput. Symp., pp. 238–243. IEEE Computer Society Press, Los Alamitos (1981)Google Scholar
  28. [RS89]
    Rivest, R.L., Schapire, R.E.: Inference of finite automata using homing sequences. In: Proc. 21st Ann. Symp. on Theory of Computing, pp. 411–420 (1989)Google Scholar
  29. [SD88]
    Sabnani, K.K., Dahbura, A.T.: A protocol test generation procedure. Computer Networks and ISDN Systems 15(4), 285–297 (1988)CrossRefGoogle Scholar
  30. [SB84]
    Sarikaya, B., Bochmann, G.v.: Synchronization and specification issues in protocol testing. IEEE Trans. on Commun. COM-32(4), 389–395 (1984)CrossRefGoogle Scholar
  31. [SL89]
    Sidhu, D.P., Leung, T.-K.: Formal methods for protocol testing: a detailed study. IEEE Trans. Soft. Eng. 15(4), 413–426 (1989)CrossRefGoogle Scholar
  32. [So71]
    Sokolovskii, M.N.: Diagnostic experiments with automata. Kibernetika 6, 44–49 (1971)MathSciNetGoogle Scholar
  33. [UD86]
    Uyar, M.U., Dahbura, A.T.: Optimal test sequence generation for protocols: the Chinese postman algorithm applied to Q.931. In: Proc. IEEE Global Telecommunications Conference (1986)Google Scholar
  34. [Va73]
    Vasilevskii, M.P.: Failure diagnosis of automata. Kibernetika 4, 98–108 (1973)MathSciNetGoogle Scholar
  35. [YU90]
    Yang, B., Ural, H.: Protocol conformance test generation using multiple UIO sequences with overlapping. In: Proc. SIGCOM, pp. 118–125 (1990)Google Scholar
  36. [YL95]
    Yannakakis, M., Lee, D.: Testing finite state machines: fault detection. J. of Computer and System Sciences 50(2), 209–227 (1995)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Mihalis Yannakakis
    • 1
  • David Lee
    • 1
  1. 1.Bell LaboratoriesLucent TechnologiesMurray HillUSA

Personalised recommendations