ON THE IMPLEMENTATION OF FINITE STATE MACHINES

Finite State Machines (FSM) provide a powerful way to describe dynamic behavior of systems and components. However, the implementation of FSMs in OO languages, often suffers from maintenance problems. The State pattern described in [5] that is commonly used to implement FSMs in OO languages, also suffers from these problems. To address this issue we present an alternative approach. In addition to that a blackbox framework is presented that implements this approach. In addition to that a tool is presented that automates the configuration of our framework. The tool effectively enables developers to create FSMs from a specification.

[1]  J. Postel Transmission Control Protocol , 1981, RFC.

[2]  R. E. Johnson,et al.  The Conduit: A Communication Abstraction in C++ , 1990, C++ Conference.

[3]  Subrata Mitra,et al.  ObjChart: Tangible Specification of Reactive Object Behavior , 1993, ECOOP.

[4]  James Odell,et al.  Events and Their Specification , 1994, J. Object Oriented Program..

[5]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[6]  Barry Alan Feigenbaum Object-Oriented Design of a Finite State Machine. , 1995 .

[7]  Michael Ackroyd Object-Oriented Design of a Finite State Machine , 1995, J. Object Oriented Program..

[8]  Douglas C. Schmidt,et al.  Reactor: an object behavioral pattern for concurrent event demultiplexing and event handler dispatching , 1995 .

[9]  Roy H. Campbell,et al.  Object-oriented state machines: subclassing, composition, delegation, and genericity , 1995, OOPSLA.

[10]  James O. Coplien,et al.  Pattern languages of program design , 1995 .

[11]  Michael Mattsson,et al.  Object-Oriented Frameworks : A Survey of Methodological Issues , 1996 .

[12]  Alexander Ran,et al.  MOODS: models for object-oriented design of state , 1996 .

[13]  Jan Bosch Abstracting object state , 1997, Object Oriented Syst..

[14]  Paul Dyson,et al.  State patterns , 1997 .

[15]  Don Roberts,et al.  Patterns for evolving frameworks , 1997 .

[16]  Henri Briand,et al.  The Executability of Object-Oriented Finite State Machines , 1998, J. Object Oriented Program..