• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html><head>
2      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
3   <title>State machine glossary</title><link rel="stylesheet" href="boostbook.css" type="text/css"><meta name="generator" content="DocBook XSL-NS Stylesheets V1.75.2"><link rel="home" href="index.html" title="Meta State Machine (MSM)"><link rel="up" href="ch02.html" title="Chapter&nbsp;2.&nbsp;UML Short Guide"><link rel="prev" href="ch02s03.html" title="Added concepts"><link rel="next" href="ch03.html" title="Chapter&nbsp;3.&nbsp;Tutorial"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">State machine glossary</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;2.&nbsp;UML Short Guide</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="ch03.html">Next</a></td></tr></table><hr></div><div class="sect1" title="State machine glossary"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e264"></a>State machine glossary</h2></div></div></div><p>
4                    </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>state machine: the life cycle of a thing. It is made of states,
5                                regions, transitions and processes incoming events.</p></li><li class="listitem"><p>state: a stage in the life cycle of a state machine. A state (like
6                                a submachine) can have an entry and exit behaviors.</p></li><li class="listitem"><p>event: an incident provoking (or not) a reaction of the state
7                                machine</p></li><li class="listitem"><p>transition: a specification of how a state machine reacts to an
8                                event. It specifies a source state, the event triggering the
9                                transition, the target state (which will become the newly active
10                                state if the transition is triggered), guard and actions.</p></li><li class="listitem"><p>action: an operation executed during the triggering of the
11                                transition.</p></li><li class="listitem"><p>guard: a boolean operation being able to prevent the triggering of
12                                a transition which would otherwise fire.</p></li><li class="listitem"><p>transition table: representation of a state machine. A state
13                                machine diagram is a graphical, but incomplete representation of the
14                                same model. A transition table, on the other hand, is a complete
15                                representation.</p></li><li class="listitem"><p>initial state: The state in which the state machine starts. Having
16                                several orthogonal regions means having as many initial
17                                states.</p></li><li class="listitem"><p>submachine: A submachine is a state machine inserted as a state in
18                                another state machine and can be found several times in a same state
19                                machine.</p></li><li class="listitem"><p>orthogonal regions: (logical) parallel flow of execution of a
20                                state machine. Every region of a state machine gets a chance to
21                                process an incoming event.</p></li><li class="listitem"><p>terminate pseudo-state: when this state becomes active, it
22                                terminates the execution of the whole state machine. MSM does not
23                                destroy the state machine as required by the UML standard, however,
24                                which lets you keep all the state machine's data.</p></li><li class="listitem"><p>entry/exit pseudo state: defined for submachines and are defined
25                                as a connection between a transition outside of the submachine and a
26                                transition inside the submachine. It is a way to enter or leave a
27                                submachine through a predefined point.</p></li><li class="listitem"><p>fork: a fork allows explicit entry into several orthogonal regions
28                                of a submachine.</p></li><li class="listitem"><p>history: a history is a way to remember the active state of a
29                                submachine so that the submachine can proceed in its last active
30                                state next time it becomes active.</p></li><li class="listitem"><p>completion events (also called completion/anonymous transitions):
31                                when a transition has no named event triggering it, it automatically
32                                fires when the source state is active, unless a guard forbids
33                                it.</p></li><li class="listitem"><p>transition conflict: a conflict is present if for a given source
34                                state and incoming event, several transitions are possible. UML
35                                specifies that guard conditions have to solve the conflict.</p></li><li class="listitem"><p>internal transitions: transition from a state to itself without
36                                having exit and entry actions being called.</p></li></ul></div><p>
37                </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="ch03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Added concepts&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;3.&nbsp;Tutorial</td></tr></table></div></body></html>