Professional Documents
Culture Documents
Diagramas de Estados
Diagramas de Estados
2
Diagramas de Estados (Qu Muestran?) Los Diagramas de Estados muestran una Mquina de Estado
Son tiles para modelar la vida de un objeto Un diagrama de estados muestra el flujo de control entre estados (en qu estados posibles puede estar cierto algo y como se producen los cambios entre dichos estados)
3
Diagramas de Estados (Mquina de Estados) Una mquina de estados es un comportamiento que especifica las secuencias de estados por las que pasa un objeto a lo largo de su vida en respuesta a eventos, junto con sus respuestas a esos eventos (Booch, Rumbaugh, Jacobson)
normal
(vivo)
mala noticia
antidepresivos
antidepresivos
buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda, evaluacin favorable, noticia devastadora, ad, ad, ad ...
normal
(vivo)
mala noticia
antidepresivos
antidepresivos
buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda, evaluacin favorable, noticia devastadora, ad, ad, ad ...
Estado Final
9
10
11
12
13
Diagramas de Actividades
Diagramas de Actividades
14
Diagramas de Actividades (Qu Muestran?) Un Diagrama de Actividades no es ms que un caso especial de un diagrama de estados, en el que todos los estados (o la gran mayora) son actividades
15
Si estoy contento, eso es un estado o una actividad? Cmo paso de contento a triste? Cul es la diferencia entre estar contento o preparar una torta? Qu sucede despus de que termino de preparar la torta?
16
Los estados generalmente son atmicos y se pasa al siguiente estado por medio de un evento Buscando nios al colegio Suena el Timbre
Las actividades no son atmicas y generalmente se pasa a la siguiente actividad cuando la actividad actual termina
Haciendo Cena
17
El flujo de un objeto a lo largo de una serie de estados o actividades Se pueden usar para modelar la dinmica de una sociedad de objetos o el flujo de control de una operacin (Diagramas de flujo?)
18
Diagramas de Actividades (Qu Muestran?) Un Diagrama de Actividades muestra el flujo de control entre una serie de tareas o actividades Los Diagramas de Actividades son usados (entre otras cosas) para elaborar modelos de flujos de trabajo* (workflow) de un sistema. En general, un Diagrama de Actividades muestra una serie de acciones o tareas que se ejecutan en cierto orden (y otros elementos adicionales)
*Un flujo de trabajo se puede ver como una serie de tareas (acciones) que son ejecutadas o realizadas por ciertos actores en 19 cierto orden preestablecido
Diagramas de Actividades (Conceptos Bsicos?) Actividad: Es la especificacin de un comportamiento que puede ser parametrizado y que define la secuenciacin coordinada de unidades subordinadas denominadas acciones Accin: Una accin es la unidad fundamental de especificacin de comportamiento. Una accin es generalmente atmica, es decir, indivisible Transiciones: Representan el paso de una accin a otra
21
22 Recordar Etiquetas
Final de Flujo
24
26
Nota
27
[aprobar]
[else]
0..n
BD
Recepcin de Documentos (Secretaria)
[else] Anlisis por Junta (Junta) Notificar Aprobacin (Secretaria) Firma de Contrato (Cliente)
[aprobar]
29
0..n
Firmar Contrato (Cliente) Notificar Aprobacin (Secretaria) Preparar Contrato (Dpto. Legal) Rechazar (Junta)
BD
30
<netpetridefname="..."doctype="..."> <!***********************************> <!Thelistofplacesinthenetpetri> <!***********************************> <!***********************************> <!Thelistoftranssetandtrans> <!***********************************> <!***********************************> <!Thelistofstatesinthenetpetri> <!***********************************> </netpetridef>
31
<netpetridefname="..."doctype="..."> <!***********************************> <!Thelistofplacesinthenetpetri> <!***********************************> <placelist> <placename="..."/> <placename="..."/> ... </placelist> ... </netpetridef>
32
33
<netpetridefname="..."doctype="..."> ... <statelist> <stategrpname="..."terminal="..."> <metadatakey="..."val="..."/> <metadatakey="..."val="..."/> ... <docsectionstatename="..."state="..."/> <docsectionstatename="..."state="..."/> ... <statesetname="..."> <placename="..."tokens="..."/> <placename="..."tokens="..."/> ... </stateset> ... </stategrp> ... </statelist> ... </netpetridef>
34
CledaTags
Navegador WEB
Hibernate
Documentos
JDBC
BD
CledaCore
Arquitectura a 3 capas bien definida. Validada con la experiencia de los proyectos desarrollados. En constante evolucin y refinacin.
35
Discusin
Gracias
Gracias!
37
(21)TODO: Ojo con estos conceptos que entran en contradiccin con los conceptos presentados en los diagramas de estado (Y no debera ser) (24) TODO: Revisar en el estndar el final de flujo y ver si est bien utilizado TODO: Investigar si existen buenas prcticas en cuanto a los nombres de los eventos, acciones, transiciones, etc TODO: Quizs faltan algunas cosas, como acciones de entrada, de salida, la evaluacin de expresiones, maquinas de estado concurrentes y anidadas, etctera... TODO: Este ejemplo (11) es bueno, pero puede ser un poco confuso, sobre todo porque aqu hay un poco de mezcla entre diagrama de estados (Esperando/Enviando) y diagrama de actividades TODO: (11) No sigue la convencin de [guarda] evento / accin de las lminas anteriores La informacin en: http://en.wikipedia.org/wiki/UML_state_machine est bastante interesante... (18)TODO: Hay que revisar y consolidar, me parece que se habla mucho aqu repitiendo conceptos. Esto debera ser algo mucho ms concreto y que confunda menos a los estudiantes
38