• DocumentCode
    569763
  • Title

    An easy-to-use and flexible object-oriented framework for extended finite state machines

  • Author

    Lopes, Sérgio F. ; Silva, Sérgio ; Monteiro, João L.

  • Author_Institution
    Algoritmi Res. Center, Univ. of Minho, Guimaraes, Portugal
  • fYear
    2012
  • fDate
    25-27 July 2012
  • Firstpage
    35
  • Lastpage
    40
  • Abstract
    Finite state machines (FSMs) are widely used as a mean to model the behavior of systems and/or processes, but they are not supported by general purpose programming languages. To avoid implementations that are difficult to develop, and mostly maintain, frameworks have been developed for the FSM domain. Ideally, frameworks should be easy to learn and use, and provide as much support as possible. They should also enforce design rules, while keeping flexibility. However, there are tradeoffs between these aspects, and thus a balance must be found. Object-oriented frameworks that we have found in the literature do not meet this set of characteristics, but one stands out. We discuss its use to develop an example application (electric lock control), demonstrating important limitations. Based on that analysis, we propose a new framework that is small, efficient, and provides a powerful set of features for implementing FSMs. The framework is easy to learn and use, fully supports both Mealy and Moore machines, enables semantically correct state minimization, and offers conditional transitions.
  • Keywords
    C++ language; Java; control engineering computing; design engineering; finite state machines; keys (locking); mechanical engineering computing; object-oriented programming; C++; FSM; Java; Mealy machines; Moore machines; design rules; electric lock control; extended finite state machines; general purpose programming languages; object-oriented framework; object-oriented languages; processes behavior modeling; systems behavior modeling; Automata; Context; Dispatching; Java; Minimization; Object oriented modeling; Unified modeling language; finite state machines; framework design; object-oriented programming;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Industrial Informatics (INDIN), 2012 10th IEEE International Conference on
  • Conference_Location
    Beijing
  • Print_ISBN
    978-1-4673-0312-5
  • Type

    conf

  • DOI
    10.1109/INDIN.2012.6301360
  • Filename
    6301360