Estats Q : un conjunt finit de vèrtexs representats normalment per cercles i etiquetats amb sÃmbols designadors únics o paraules escrites dins d'ells (Booth (1967) p. 69, Hopcroft i Ullman (1979) p. 16, Sipser (2006) p. 34).
Les etiquetes d'entrada/Mealy sobre cada aresta (fletxa): "1/0" designa que el sÃmbol "1" va causar el sÃmbol "0" com a sortida.
SÃmbols de sortida Z : una col·lecció finita de "sÃmbols" de sortida o designadors (Booth, Hopcroft i Ullman, Sipser). Per a una Mà quina de Mealy, l'entrada i la sortida estan significats en cada aresta com es pot veure a continuació. Per a una Mà quina de Moore la sortida de l'estat està escrita normalment dins del cercle de l'estat, separat del designador de l'estat amb una barra "/".
La "Funció de sortida?" representa el mapejat ? de sÃmbols d'entrada R x estats Q en sÃmbols de sortida Z (Booth).
Arestes d : representa les "transicions" entre dos estats causats per l'entrada (identificats els seus sÃmbols dibuixats en els "arestes"). Un 'aresta' està dibuixat normalment com una fletxa dirigida des de l'estat present en el següent estat. d representa el mapejat dels sÃmbols d'entrada R x estats Q en els sÃmbols de sortida Z (Booth, Hopcroft i Ullman, Sipser).
Estat inicial qo : (no vist en els exemples anteriors). L'estat inicial qo està representat normalment per una "fletxa des de cap part" (cf. Sipser (2006) p. 34, Hopcroft i Ullman (1979) p. 16). En textos antics (per exemple Booth (1969), McCluskey (1965), Hill i Peterson (1974)) l'estat inicial no es mostrava i era inferit del text.
Els quadres d'estats (statecharts) Harel (desenvolupats en 1987 per David Harel) estan guanyant en ús ampli atès que una variant ha arribat a ser part del UML. El tipus de diagrama permet modelar superestat, diagrames d'estats concurrents i modelar les activitats com a part d'un estat.
Hi ha altres maneres de representar diagrames d'estat. Per exemple, existeixen eines per a la modelització i la lògica per al disseny de controladors encastats. Es combinen diagrames jerà rquics, grà fics de flux i taules de veritat en un sol llenguatge, donant lloc a un formalisme diferent.
Diagrama d'estats vs diagrama de flux
Molt sovint es confonen els diagrames d'estat amb diagrames de flux.
En un diagrama d'estat, el tractament s'associa als arcs (transicions), mentre que en un diagrama de flux, estan associats amb els vèrtexs.
La figura següent mostra una comparació d'un diagrama d'estat amb un diagrama de flux. Una mà quina d'estat (figura (a)) realitza accions en resposta a esdeveniments explÃcits. En canvi, el diagrama de flux (figura (b)) no necessita esdeveniments explÃcits, sinó transicions d'un node a node en el seu grà fic automà ticament en finalitzar les activitats.[1]
Quan un objecte està en un estat, generalment està esperant que succeeixi algun esdeveniment. Encara que, a vegades, volem modelar una activitat que s'està executant. És a dir, mentre un objecte està en un estat, dit objecte realitza un treball que continuarà fins que sigui interromput per un esdeveniment.
Llavors, una acció contrasta amb una activitat, ja que aquesta última pot ser interrompuda per altres esdeveniment.
Estats
Quan un estat identifica una condició o una situació en la vida d'un objecte durant la qual satisfà alguna condició, executa alguna activitat o espera que succeeixi algun event. Un objecte es queda en un estat durant un temps finit (no instantani). A continuació es definiran els element bà sics de notació.
Elements bà sics de notació que poden ser utilitzats per compondre un diagrama d'estats i altres
Rectangle arrodonit, denotant un estat. A la part superior del rectangle hi ha el nom de l'estat. Pot contenir una lÃnia horitzontal a la meitat, sota de la qual s'indiquen les activitats que es fan a l'estat
↑Samek, Miro. Newnes. Practical UML Statecharts in C/C++, Second Edition: Event-Driven Programming for Embedded Systems, 2008, p. 728. ISBN 978-0-7506-8706-5.