FSM — Finite-state Machine

A “finite-state machine” is also known to be called “finite automaton”, “finite-state automaton” or simply a “state machine”, being a “mathematical model of computation”. Being an abstract machine in exactly one of a finite number of states at some given time. The finite-state machine is known for being able to change from being in one particular state to another, doing it in response to some external inputs. Such change from one state to another is known to be called a “transition”. Any finite-state machine can be defined by its initial state, a list of its states and the conditions for each of the existing transitions.

The behaviour of any of the state machines can be checked by using many different devices in order to perform a pre-determined sequence of different actions, which may depend on a sequence of different events which they are presented with. The examples of the finite-state machine may be the vending machines, dispensing products once the proper combination of the coins is deposited. The elevators may be also a very good example of the finite-state machine, or FSM. The sequence of stops all the elevators make can be determined by the quantity of the floors requested by its riders. The traffic lights may be another example of the finite-state machines changing their sequence every time the cars have to wait stopping. All the combination locks require the input of the combination of the different numbers in some definite, proper order, that’s why they are a good example of the FSM as well.

The finite state machine is known to be having less computational power comparing to some other models of computation, for example, the so called “Turing machine”. The mentioned “computational power distinction” may mean there are the computational tasks that each Turing machine can do, but which a FSM one can not. The reason for this is a FSM's memory being quite limited by the number of the states which it has. The finite-state machines are known to be studied in the more general field of the so called “automata theory”. The complete action's information is never described in the table, but it can only be added by using the so called “footnotes”. A FSM definition is always possible by using the so called “state tables”.

The Unified Modelling Language has a notation for describing state machines. UML state machines are known to be introducing the new concepts of the so called “hierarchically nested states” as well as “orthogonal regions” during the process of extending the so called “notion of actions”. UML state machines have the characteristics of both “Mealy machines” and so called “Moore machines”, known to be supporting the actions depending on the triggering event as well as on the state of the system, as well as entry and exit actions, which are associated with states rather than transitions.

The Specification and Description Language is a standard from ITU. It includes numerous graphical symbols for describing different actions in the transition – for example, to send an event, to start a timer, to cancel a timer, to receive an event, to start another state machine, etc. There are many different variants used for representing a FSM, knowing to be significant in many different areas, including electrical engineering, computer science, mathematics, philosophy, biology, logic, linguistics, etc. One of the classes of the automata studied in the so called “automata theory” as well as the “theory of computation” is a finite state machine, widely used in computer science for modeling the application behaviour, for designing different hardware digital systems, as well as used in software engineering, network protocols, the study of computation, languages and compilers.

It is possible to subdivide the finite state machines into acceptors, classifiers, transducers and sequencers. The acceptors are also known to be called as “recognizers and sequence detectors”, producing the binary output and indicating if received input is accepted or not. Each of the possible states of any FSM is either "not accepting" or "accepting". As long as all input is received, in case its current state is an accepting one, then the input is known to be “accepted”. And vice versa, in case its current state is a rejecting one, then it is known to be “rejected”. As a general rule, any input is a sequence of symbols and actions are not normally used.

A set of the mentioned symbol sequences is known to be called as a “regular language”, but only in case there is some finite state machine that accepts exactly that set. For example, the set of binary strings with an even number of zeroes is a regular language, while the set of all strings which length is a prime number is not a regular language. A machine can be described as the one containing a string, which is accepted by the mentioned machine, but not the rejected ones. Thus, that language is known to be "accepted" by the machine, called the “regular languages”. Any language is known to be called as “regular” in case there is some finite-state machine accepting it. An instance of the algebraic path problem is determining the language which was accepted by a so called “finite state acceptor”. It is itself simply a generalization of the shortest path problem to graphs with edges which are weighted by the elements of a semi-ring.

To create FMS diagram, all you need is ConceptDraw PRO diagramming and drawing software. It is always better, though, to have a Specification and Description Language (SDL) Solution from ConceptDraw STORE application to simplify your work with drawing any FMS related drawings any complexity as the mentioned solution offers the pre-made examples as well as the stencil libraries with the design elements that all can be used while working in ConceptDraw PRO.

FSM

Example 1. Finite State Machine (FSM) Diagram

Finite state machines are widely used in systems engineering, system design, in developing computer programs and sequential logic circuits. Specification and Description Language (SDL) Solution offers all needed tools for designing without efforts. These are the SDL Connnectors and SDL Diagrams libraries which contain numerous predesigned vector objects, collection of FSM and SDL samples represented in ConceptDraw STORE.

Specification and Description Language (SDL) Solution in ConceptDraw STORE

Example 2. Specification and Description Language (SDL) Solution in ConceptDraw STORE

All samples included in Specification and Description Language (SDL) Solution are well thought-out and professionaly designed. You can choose any desired of them from ConceptDraw STORE, it will be automatically opened in ConceptDraw PRO. Then you are able to change some details in it or use the sample as the base for your own FSM diagram.

SDL Architecture

Example 3. SDL Architecture

The samples you see on this page were created in ConceptDraw PRO software using the tools of Specification and Description Language (SDL) Solution. First of them demonstrates the Finite State Machine (FSM) diagram, the second represents the SDL architecture and describes the processes within the sub-blocks also with help of finite state machines. An experienced user spent 10-20 minutes creating each of these samples.

Use the Specification and Description Language (SDL) Solution for ConceptDraw PRO software to create your own professional looking FSM and SDL diagrams fast, easy and effective.

All source documents are vector graphic documents. They are available for reviewing, modifying, or converting to a variety of formats (PDF file, MS PowerPoint, MS Visio, and many other graphic formats) from the ConceptDraw STORE. The Specification and Description Language (SDL) Solution is available for all ConceptDraw PRO v10 users.




Related Solution:

TEN RELATED HOW TO's:

UML State Machine Diagram.Design Elements

UML state machine's goal is to overcome the main limitations of traditional finite-state machines while retaining their main benefits. ConceptDraw has 393 vector stencils in the 13 libraries that helps you to start using software for designing your own UML Diagrams. You can use the appropriate stencils of UML notation from UML State Machine library.UML State Machine Diagram: Design Elements
Picture: UML State Machine Diagram.Design Elements
Related Solution:

Building Drawing Software for DesignSeating Plan

Nowadays, it's easy to create any drawing with appropriate software tools. Special Seating Plan solution from Building Plans area has all the design elements possible to create any seating plan that you might need. It might be a plan of a theater, or a cinema or even a wedding plan. A seating plan is an indispensable element of any public event organization. Well thought-out arrangement of seats, furniture and other items help making the event a successful and effective. If you are organizing a spectacular event in a big theater or in a banquet hall, ConceptDraw Seating Plans solution is the tool for you. Especially its library of graphic elements for large and small blocks of seats, stairs, sectors, stage and backstage - just 67 vector objects. The Seating Plans Solution is specially developed for seating plans easy construction. With the help of this solution you'll quickly sketched the seating plan for any eventBuilding Drawing Software.  Design Elements — Seating Plan
Picture: Building Drawing Software for DesignSeating Plan
Related Solution:

Landscape Architecture with ConceptDraw PRO

Nowadays, any architect or landscape designer can't do without a pack of digital tools for designing and projecting. Thus, there will be no problem to develop any landscape architecture plan with ConceptDraw PRO, especially since there are so many ready-to use templates and examples included. It's just as easy as drawing sketches on paper. If you using ConceptDarw PRO there is no needs to have a professional skills on landscape and garden design. As well as you don't need to be an expert in architectural charts and plans drawing. The all you need is the Landscape and Garden solution. This solution contains a unique collection of the professional designed vector objects depicting flower and grass, bushes and trees, garden furniture, pools and accessories. In one word - the full set of graphical elements enabling to focus on the creativeness while creating your landscape and garden plan.landscape design software
Picture: Landscape Architecture with ConceptDraw PRO
Related Solution:

IDEF1 standard

Use Case Diagrams technology. Using visual graphical objects IDEF1 standard allows to model information interrelations.IDEF1 standard diagram example
Picture: IDEF1 standard

Geo Map - Europe - Denmark

The vector stencils library Denmark contains contours for ConceptDraw PRO diagramming and vector drawing software. This library is contained in the Continent Maps solution from Maps area of ConceptDraw Solution Park.Geo Map - Europe - Denmark
Picture: Geo Map - Europe - Denmark
Related Solution:

Basic Flowchart Symbols and Meaning

While creating flowcharts and process flow diagrams, you should use special objects to define different statements, so anyone aware of flowcharts can get your scheme right. There is a short and an extended list of basic flowchart symbols and their meaning. Basic flowchart symbols include terminator objects, rectangles for describing steps of a process, diamonds representing appearing conditions and questions and parallelograms to show incoming data. This diagram gives a general review of the standard symbols that are used when creating flowcharts and process flow diagrams. The practice of using a set of standard flowchart symbols was admitted in order to make flowcharts and other process flow diagrams created by any person properly understandable by other people. The flowchart symbols depict different kinds of actions and phases in a process. The sequence of the actions, and the relationships between them are shown by special lines and arrows. There are a large number of flowchart symbols. Which of them can be used in the particular diagram depends on its type. For instance, some symbols used in data flow diagrams usually are not used in the process flowcharts. Business process system use exactly these flowchart symbols.Flowchart Symbols and Meaning, workflow diagram symbols, process flow diagram symbols
Picture: Basic Flowchart Symbols and Meaning
Related Solution:

UML Diagram Types List

Two types of diagrams are used in UML: Structure Diagrams and Behavior Diagrams. Behavior Diagrams represent the processes proceeding in a modeled environment. Structure Diagrams represent the elements that compose the system.UML class diagram of the AbstractFactory pattern
Picture: UML Diagram Types List
Related Solution:

Finite State Machine

You need design a Finite State Machine (FSM) diagram and dream to find a powerful software to make it easier? ConceptDraw PRO extended with Specification and Description Language (SDL) Solution from the Engineering Area of ConceptDraw Solution Park is the best software for achievement this goal.Finite State Machine
Picture: Finite State Machine
Related Solution:

Process Flowchart

When trying to figure out the nature of the problems occurring within a project, there are many ways to develop such understanding. One of the most common ways to document processes for further improvement is to draw a process flowchart, which depicts the activities of the process arranged in sequential order — this is business process management. ConceptDraw PRO is business process mapping software with impressive range of productivity features for business process management and classic project management. This business process management software is helpful for many purposes from different payment processes, or manufacturing processes to chemical processes. Business process mapping flowcharts helps clarify the actual workflow of different people engaged in the same process. This samples were made with ConceptDraw PRO — business process mapping software for flowcharting and used as classic visio alternative because its briefly named "visio for mac" and for windows, this sort of software named the business process management tools. This flowchart diagram shows a process flow of project management. The diagram that is presented here depicts the project life cycle that is basic for the most of project management methods. Breaking a project into phases allows to track it in the proper manner. Through separation on phases, the total workflow of a project is divided into some foreseeable components, thus making it easier to follow the project status. A project life cycle commonly includes: initiation, definition, design, development and implementation phases. Distinguished method to show parallel and interdependent processes, as well as project life cycle relationships. A flowchart diagram is often used as visual guide to project. For instance, it used by marketing project management software for visualizing stages of marketing activities or as project management workflow tools. Created with ConceptDraw PRO — business process mapping software which is flowcharting visio alternative or shortly its visio for mac, this sort of software platform often named the business process management tools.business process flowcharts, flowchart symbols, process flow diagram, workflow diagram, flowchart maker
Picture: Process Flowchart
Related Solution:

Building Drawing Design Element: Piping Plan

A technical drawing of a building is called an architectural drawing. According to a set of conventions, a building drawing includes a number of views, as well as unit measurements, scales, sheet sizes, cross referencing and annotation. Computer progress had a major impact of the methods of architectural drawing, making manual drawing almost obsolete. Digital drawing software, such as ConceptDraw PRO, offers a number of tools for each design element: piping plan, floor plan, etc. Any building should have its plumbing and piping plans for every room, that has a water supply. Plans are applied to indicate arrangement of piping system in the building. This diagram presents a suite of standard piping icons for making building plans that include plumbing and piping layout. This diagram was designed using ConceptDraw solution for Piping and Plumbing planning. Using symbols is valuable for making a valid piping plan. Because any professional will properly interpreted such plan as a piece of technical documentation of a construction project.Building Drawing.Design Element: Piping Plan
Picture: Building Drawing Design Element: Piping Plan
Related Solution:
1 Diagram Software
Professional business graphics tool for drawing schemes, diagrams and illustrating business documentation
1 Mind Map Software
Excellent tool for Mind Mapping, Planning, Brainstorming, and Building Processes
1 Project Management Software
The full complement of features needed to successfully plan and execute projects, including task and resource management, reporting, and change control