Principles and methods of testing finite state machines-a survey
Lee, D.; Yannakakis, M.
Proceedings of the IEEE
Volume 84, Issue 8, Aug 1996 Page(s):1090 - 1123
Digital Object Identifier 10.1109/5.533956
Summary:With advanced computer technology, systems are getting larger to
fulfill more complicated tasks: however, they are also becoming less
reliable. Consequently, testing is an indispensable part of system
design and implementation; yet it has proved to be a formidable task for
complex systems. This motivates the study of testing finite stare
machines to ensure the correct functioning of systems and to discover
aspects of their behavior. A finite state machine contains a finite
number of states and produces outputs on state transitions after
receiving inputs. Finite state machines are widely used to model systems
in diverse areas, including sequential circuits, certain types of
programs, and, more recently, communication protocols. In a testing
problem we have a machine about which we lack some information; we would
like to deduce this information by providing a sequence of inputs to the
machine and observing the outputs produced. Because of its practical
importance and theoretical interest, the problem of testing finite state
machines has been studied in different areas and at various times. The
earliest published literature on this topic dates back to the 1950's.
Activities in the 1960's mid early 1970's were motivated mainly by
automata theory and sequential circuit testing. The area seemed to have
mostly died down until a few years ago when the testing problem was
resurrected and is now being studied anew due to its applications to
conformance testing of communication protocols. While some old problems
which had been open for decades were resolved recently, new concepts and
more intriguing problems from new applications emerge. We review the
fundamental problems in testing finite state machines and techniques for
solving these problems, tracing progress in the area from its inception
to the present and the stare of the art. In addition, we discuss
extensions of finite state machines and some other topics related to
testing
View citation and abstract |