Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diagramas de Estados
Diagrama de
Actividades (UML
Ilustrado)
Diagramas de
Estados
2
Diagramas de Estados
(¿Qué Muestran?)
3
Diagramas de Estados
(Máquina de
Estados)
Una máquina 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)
4
Diagramas de Estados
(Máquina de
Estados)
busca
buena
ayuda
noticia
contento
en deprimido
tratamiento buena
tiempo
evaluación noticia noticia
favorable normal devastadora
evaluación (vivo)
anti depresivos
desfavorable mala
tiempo
noticia
mala
noticia
triste
mucho menos
muerto menos deprimid
(sobredosis) deprimido o
antidepresivos antidepresivos
...
buena noticia, buena noticia, tiempo, noticia devastadora, busca ayuda,
5
evaluación favorable, noticia devastadora, ad, ad, ad ...
Diagramas de Estados
(Conceptos)
6
Diagramas de Estados
(Máquina de
Estados)
busca
buena
ayuda
noticia
contento
en deprimido
tratamiento buena
tiempo
evaluación noticia noticia
favorable normal devastadora
evaluación (vivo)
desfavorable mala anti depresivos
estados tiempo
noticia
mala
transiciones noticia
eventos triste
mucho menos
muerto menos deprimido
(sobredosis) deprimido
antidepresivos antidepresivos ...
Transición
¿Como implementaría la
guarda?
8
Diagrama de Estado
(Ejemplo)
Estado
Inicial
Estado
Final
9
Diagrama de Estado
(Ejemplo)
Acción (Se ejecuta
cuando se dispara la Do / seleccionar
transición) producto es
una actividad
¿Cómo
implementaría esto? ¿Cómo implementaría
esto?
10
Diagrama de Estado
(Ejemplo)
11
Diagrama de Estado
(Ejemplo)
Estado Compuesto
¿Cómo implementaría
esto?
12
Diagrama de Estado
(Ejemplo)
Mostrar Ejemplo de
Implementación
Mostrar HTML de
los USB
13
Diagramas de Actividades
Diagramas de
Actividades
14
Diagramas de Actividades
(¿Qué Muestran?)
15
Diagramas de Actividades
(¿Qué Muestran?)
contento triste
mala
noticia
Los estados
generalmente son
atómicos y se pasa al Las actividades no son atómicas y
siguiente estado por generalmente se pasa a la siguiente
medio de un evento actividad cuando la actividad actual termina
Buscando
Preparando Haciendo
niños al
Torta Cena
colegio
Suena el Se van las
Timbre visitas
Atendiendo
Visitas :-/
18
Diagramas de Actividades
(¿Qué Muestran?)
20
Diagramas de Actividades
(¿Conceptos Básicos?)
Actividad:
Es la especificación de un comportamiento que puede ser
parametrizado y que define la secuenciación coordinada
de unidades subordinadas denominadas acciones
Acción:
Una acción es la unidad fundamental de especificación
de comportamiento. Una acción es generalmente
atómica, es decir, indivisible
Transiciones:
Representan el paso de una acción a otra
21
Diagramas de Actividades
(Ejemplo)
Separación Acción Unión
(Fork /
Split) (Join)
Inicio
Eje de
Actividad o
Transición
Fin
Mezcla
Decisión (Choose
Nodo / Branch) (Merge)
Objeto o
Parámetro
de Entrada
Nodo Objeto o
Parámetro de Salida Recordar Etique2ta2
Diagramas de Actividades
(Ejemplo)
Acción
Evento
de
Tiempo
¿Por qué no hay nodo de inicio?
23
Diagramas de Actividades
(Ejemplo)
Swimlanes
Final de (Carrileras /
Flujo Calles)
24
Diagramas de Actividades
(Ejemplo)
Acción
Recurrente
(Iterativa)
Nota
Carrilera
(Calle)
Doble
27
Diagramas de Actividades
(Ejemplo)
Noten el equilibrio
entre las separaciones
y uniones
28
Ejemplo de Workflow (1)
(Ejemplo tomado de CLEDA)
MDocOferta
BD
Preparar
Recepción de * Contrato
(Dpto. Legal)
Documentos
(Secretaria)
[else
]
Análisis Notificar Firma de
por Junta Aprobación
(Junta) [aprobar] (Secretaria) Contrato
(Cliente)
(Analista)
Firmar
Contrato
(Cliente)
Notificar
Aprobación
Preparar
Contrato Rechazar
(Junta)
BD
(Dpto. Legal)
(Secretaria)
Aceptar
Recaudos Recaudos
Faltantes
Completos
(Sistema) (Sistema)
<net
petri
def name="..." doc
type="...">
<!
*********************************** >
<!
The list of places in the net
petri >
<!
*********************************** >
<!
*********************************** >
<!
The list of trans
set and trans >
<!
*********************************** >
<!
*********************************** >
<!
The list of states in the net
petri >
<!
*********************************** >
</net
petri
def>
31
XML (Versión 1.5) (3)
(Ejemplo tomado de CLEDA)
<net
petri
def name="..." doc
type="...">
<!
*********************************** >
<!
The list of places in the net
petri
>
<!
*********************************** >
<place
list>
<place name="..." />
<place name="..." />
...
</place
list>
...
</net
petri
def>
32
XML (Versión 1.5) (4)
(Ejemplo tomado de CLEDA)
<net
petri
def name="..." doctype="...">
...
<trans
list>
<transset name="...">
<agentdef time="..." class="..." method="..." />
<meta
data key="..." val="..." />
<meta
data key="..." val="..." />
...
<doc
sectionstate name="..." state="..." />
<doc
sectionstate name="..." state="..." />
...
<trans name="..." type="...">
<metadata key="..." val="..." />
<metadata key="..." val="..." />
...
<preplace name="..." />
<preplace name="..." />
...
<posplace name="..." />
<posplace name="..." />
...
</trans>
...
</transset>
...
</translist>
...
</net
petridef>
33
XML (Versión 1.5) (5)
(Ejemplo tomado de CLEDA)
<net
petri
def name="..." doctype="...">
...
<state
list>
<stategrp name="..." terminal="...">
<meta
data key="..." val="..." />
<meta
data key="..." val="..." />
...
<doc
section
state name="..." state="..." />
<doc
section
state name="..." state="..." />
...
<state
set name="...">
<place name="..." tokens="..." />
<place name="..." tokens="..." />
...
</state
set>
...
</stategrp>
...
</statelist>
...
</net
petridef>
34
Arquitectura (General)
(Ejemplo tomado de CLEDA)
Servlets Aplicación
Modelo
de
Dominio
CledaTags
MVC
Hibernate
CledaMVC
JDBC
Navegador (Struts1) Documentos
WEB o
BD
Echo2
CledaCor e Motor
de
Workf
low
(CledaFlow, CledaScheduler y
CledaBase)
DISCUSIÓN
¿Por qué los
diagramas de estados
/ actividades son
importantes?
36
Gracia
s
¡Gracias!
37
(21)TODO: Ojo con estos conceptos que entran en contradicción con los conceptos
presentados en los diagramas de estado (Y no debería ser)
(24) TODO: Revisar en el estándar el final de flujo y ver
si está bien utilizado
TODO: Investigar si existen buenas
prácticas en cuanto a los nombres de los
eventos, acciones, transiciones, etc
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