1

Here is a statechart diagram: http://www.jointjs.com/demos/run.html?unit=uml.statechart

Here is a finite statemachine: http://www.jointjs.com/demos/fsa

What are the differences between these diagrams?

Tasawer Khan
  • 5,994
  • 7
  • 46
  • 69
ajsie
  • 77,632
  • 106
  • 276
  • 381
  • Duplicate of your own question here? http://stackoverflow.com/questions/8192724/does-statemachine-and-statechart-mean-the-same – Christian Nov 19 '11 at 15:11

2 Answers2

2

The finite statemachine is a math conception. The statechart diagram is a notation which is based on this conception.

Denis Ivanov
  • 174
  • 5
1

State machines and state diagrams are two completely different things.

A state machine is an abstract machine for parsing strings of input in a formal language, while a state diagram is a UML description of the different states a system (subsystem, etc) may assume and how it may transition between them.

In your linked example, the state machine would successfully parse the string "ac" but would not parse the string "befd" (because there is no path from the starting state to a final state that successively picks off those symbols in that order).

The state diagram on the other hand says (among other things) that some system may be in one of three main states; that it assumes state 1 upon startup; that it can transition from state 1 to state 2 or state 3; and that it can terminate from state 2 but not from state 3.

So while they may appear visually similar, they are different tools from different toolboxes used for different purposes: one's from computational theory, the other is from a design description formalism.

Uffe
  • 10,396
  • 1
  • 33
  • 40