SlideShare une entreprise Scribd logo
1  sur  28
Télécharger pour lire hors ligne
1
UML
Diagramas de Actividades
(UML Ilustrado)
Universidad de los Andes
Demián Gutierrez
Noviembre 2012
2
Diagramas de Actividades
(¿Qué Muestran?)
Un Diagrama de Actividades no es más
que un caso especial de un diagrama de
estados, en el que todos los estados
(o la gran mayoría) son acciones
¿qué es una actividad y cuál es la
diferencia con un estado?
3
Diagramas de Actividades
(Estados y Actividades)
¿si estoy contento, eso es un
estado o una actividad?
¿cuál es la diferencia entre estar
contento o preparar una torta?
¿cómo paso de contento a triste?
¿qué sucede después de que
termino de preparar la torta?
4
Diagramas de Actividades
(Estados y Actividades)
¿Qué es una actividad y cual es la diferencia con un estado?
Suena el
Timbre
Buscando
niños al
colegio
Preparando
Torta
Haciendo
Cena
Atendiendo
Visitas :-/
Se van las
visitas
contento triste
mala
noticia
En las actividades generalmente se hace
algún trabajo y se pasa a la siguiente
actividad cuando la actividad actual termina
En los estados generalmente
no se hace nada,
simplemente “estoy” contento
Es común que una
actividad esté
compuesta por una
secuencia de acciones
5
Diagramas de Actividades
(Estados y Actividades)
Estado
Actividad
Las actividades
pueden estar
compuestas por otras
actividades o acciones
(sub-diagramas)
6
Diagramas de Actividades
(¿Qué Muestran?)
Se pueden usar para modelar la dinámica de una
sociedad de objetos
El flujo de control entre un conjunto de estados o
actividades, el flujo de control de una operación
(¿diagramas de flujo?)
Tomado de Booch, Rumbaugh, Jacobson, El Lenguaje Unificado de Modelado
La relación (de entrada / salida) de un conjunto de
objetos con una serie de estados o actividades
7
Diagramas de Actividades
(¿Qué Muestran?)
Los Diagramas de Actividades son usados (entre otras
cosas) para elaborar modelos de flujos de trabajo*
(workflow) de un sistema.
*Un flujo de trabajo se puede ver como una serie de tareas
(acciones) que son ejecutadas o realizadas por ciertos actores en
cierto orden preestablecido
Se pueden usar para modelar el flujo de navegación de
una interfaz de usuario
(aunque los diagramas de estado también)
8
Diagramas de Actividades
(¿Qué Muestran?)
Conjunto de actividades ¿Qué hacen las actividades?
¿En qué orden se ejecutan?
¿Dónde ocurren? ¿Quién las ejecuta?
¿Qué insumos requieren?
(entradas)
¿Qué productos generan?
(salidas)
¿Cuándo ocurren?
Los Diagramas de Actividades expresan:
9
Diagramas de Actividades
(Ejemplo)
Inicio
Fin
Acción/Actividad
Eje de
Actividad o
Transición
Actividad
Separación
(Fork / Split)
Unión (Join)
Decisión
(Choose /
Branch)
Mezcla
(Merge)
Nodo Objeto
o Parámetro
de Entrada
Nodo Objeto o
Parámetro de SalidaRecordar Etiquetas
10
Diagramas de Actividades
(Ejemplo)
Noten el equilibrio
entre las separaciones
y las uniones
Noten el equilibrio
entre las separaciones
y las uniones
11
Diagramas de Actividades
(Ejemplo)
Final de
Flujo
Swimlanes
(Carrileras /
Calles)
12
Diagramas de Actividades
(Ejemplo)
El mismo diagrama anterior pero sin carrileras / calles, ver:
http://www.jot.fm/issues/issue_2004_07/column4/
13
Diagramas de Actividades
(Ejemplo)
Acción
Evento
de
Tiempo
¿por qué no hay nodo de inicio?
14
Diagramas de Actividades
(Ejemplo)
Nota
Swimlanes Doble
(Carrileras /
Calles)
Documento / Objeto
Señal (Recepción)
Señal (Emisión)
15
Diagramas de Actividades
(Ejemplo)
Acción Recurrente (Iterativa)
Envío de
Señal
(Evento)
Recepción
de Señal
(Evento)
¿cómo eliminaría la señal
de ingreso de repuestos
duplicada?
16
Diagramas de Actividades
diagramas de actividades y
casos de uso
17
Diagramas de Actividades
y Casos de Uso
18
Diagramas de Actividades
y Casos de Uso
Opción A:
Un caso de uso
general/abstracto para todo
el proceso (actividades
especificadas por separado)
19
Diagramas de Actividades
y Casos de Uso
Opción B:
Casos de Uso separados para
las actividades más significativas
20
Implementación
¿implementación?
a continuación una de muchas
formas de implementar estos
conceptos
21
Ejemplo de Workflow (1)
(Ejemplo tomado de CLEDA)
Recibir Solicitud
(Cliente)
Análisis Legal
(Analista)
*
Recepción de
Documentos
(Secretaria)
*
Notificar
Aprobación
(Secretaria)
Notificar
Rechazo
(Secretaria)
Preparar
Contrato
(Dpto. Legal)
Análisis
por Junta
(Junta)
Notificar
Aprobación
(Secretaria)
Firma de
Contrato
(Cliente)
[aprobar] [else]
[aprobar]
[else]
MDocSolicitud
id
nombre
apellido
cedula
...
workflow_id
MRecaudo
id
nombre
tipo
...
1
0..n
BD
Proceso de Solicitud de Préstamo
Modelado con un Diagrama de Actividades
22
Ejemplo de Workflow (2)
(Ejemplo tomado de CLEDA)
Recibir Solicitud
(Cliente)
Aceptar
(Analista)
Rechazar
(Analista)
Guardar
Temporalmente
(Analista)
Notificar
Rechazo
(Secretaria)
Recibir
Recaudo
(Secretaria)
Recaudos
Faltantes
(Sistema)
Recaudos
Completos
(Sistema)
Rechazar
(Junta)
Aceptar
(Junta)
Notificar
Aprobación
(Secretaria)
(Auto)
Notificar
Aprobación
(Secretaria)
Firmar
Contrato
(Cliente)
Preparar
Contrato
(Dpto. Legal)
MDocSolicitud
id
nombre
apellido
cedula
...
workflow_id
MRecaudo
id
nombre
tipo
...
1
0..n
BD
Proceso de Solicitud de Préstamo
Modelado con Redes de Petri
23
XML (Versión 1.5) (2)
(Ejemplo tomado de CLEDA)
<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>
24
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>
25
XML (Versión 1.5) (4)
(Ejemplo tomado de CLEDA)
<net-petri-def name="..." doc-type="...">
...
<trans-list>
<trans-set name="...">
<agent-def time="..." class="..." method="..." />
<privilege name="..." />
<work-list name="..." />
<meta-data key="..." val="..." />
<meta-data key="..." val="..." />
...
<doc-section-state name="..." state="..." />
<doc-section-state name="..." state="..." />
...
<trans name="..." type="...">
<meta-data key="..." val="..." />
<meta-data key="..." val="..." />
...
<pre-place name="..." />
<pre-place name="..." />
...
<pos-place name="..." />
<pos-place name="..." />
...
</trans>
...
</trans-set>
...
</trans-list>
...
</net-petri-def>
26
XML (Versión 1.5) (5)
(Ejemplo tomado de CLEDA)
<net-petri-def name="..." doc-type="...">
...
<state-list>
<state-grp 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>
...
</state-grp>
...
</state-list>
...
</net-petri-def>
27
Arquitectura (General)
(Ejemplo tomado de CLEDA)
BD
Motor
de
Workflow
(CledaFlow, CledaScheduler y
CledaBase)
Hibernate
JDBC
Documentos
MVC
CledaMVC
(Struts1)
o
Echo2
Modelo
de
Dominio
Servlets
Navegador
WEB
CledaTags
CledaCore
Aplicación
arquitectura a 3 capas bien definida,
validada con la experiencia de los proyectos desarrollados
y en constante evolución
28
Gracias
¡Gracias!

Contenu connexe

Tendances

Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionalesAngel Minga
 
*Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1**Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1*venusprinz583
 
Ejercicios resueltos diagramas de claseaula (1)
Ejercicios resueltos diagramas de claseaula (1)Ejercicios resueltos diagramas de claseaula (1)
Ejercicios resueltos diagramas de claseaula (1)William Lozano
 
Gestión de archivos
Gestión de archivosGestión de archivos
Gestión de archivoseduardoed5
 
Qué es un documento de requerimientos
Qué es un documento de requerimientosQué es un documento de requerimientos
Qué es un documento de requerimientosCarlos Alonso
 
Diagrama de Flujo de Datos (DFD)
Diagrama de Flujo de Datos (DFD)Diagrama de Flujo de Datos (DFD)
Diagrama de Flujo de Datos (DFD)Yaskelly Yedra
 
Monitores-sistemas operativos
Monitores-sistemas operativosMonitores-sistemas operativos
Monitores-sistemas operativosDaniel Vargas
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xmlJuan Anaya
 
Unidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesUnidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesSergio Sanchez
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraAlexandraMolinaSanchez
 
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...José Antonio Sandoval Acosta
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalizaciónMarcelo Herrera
 
Proyecto Final Base De Datos
Proyecto Final Base De DatosProyecto Final Base De Datos
Proyecto Final Base De Datosguestcde16b
 
100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativos100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativosPatriciaDavila16
 

Tendances (20)

Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionales
 
*Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1**Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1*
 
Ejercicios resueltos diagramas de claseaula (1)
Ejercicios resueltos diagramas de claseaula (1)Ejercicios resueltos diagramas de claseaula (1)
Ejercicios resueltos diagramas de claseaula (1)
 
Diagrama de casos de usos
Diagrama de casos de usosDiagrama de casos de usos
Diagrama de casos de usos
 
Gestión de archivos
Gestión de archivosGestión de archivos
Gestión de archivos
 
Qué es un documento de requerimientos
Qué es un documento de requerimientosQué es un documento de requerimientos
Qué es un documento de requerimientos
 
Diagrama de Flujo de Datos (DFD)
Diagrama de Flujo de Datos (DFD)Diagrama de Flujo de Datos (DFD)
Diagrama de Flujo de Datos (DFD)
 
Monitores-sistemas operativos
Monitores-sistemas operativosMonitores-sistemas operativos
Monitores-sistemas operativos
 
Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02
 
Metodologias web
Metodologias webMetodologias web
Metodologias web
 
Metodología WEB UWE
Metodología WEB UWEMetodología WEB UWE
Metodología WEB UWE
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
Unidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesUnidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De Clases
 
Ensayo Cliente Servidor
Ensayo Cliente ServidorEnsayo Cliente Servidor
Ensayo Cliente Servidor
 
Trabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandraTrabajo de compiladores completo alexandra
Trabajo de compiladores completo alexandra
 
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
Programacion de base de datos - Unidad 1: Conexion a la base de datos con un ...
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalización
 
Proyecto Final Base De Datos
Proyecto Final Base De DatosProyecto Final Base De Datos
Proyecto Final Base De Datos
 
Diagrama de Colaboración
Diagrama de ColaboraciónDiagrama de Colaboración
Diagrama de Colaboración
 
100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativos100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativos
 

En vedette (20)

Clase 13 uml_paquetes
Clase 13 uml_paquetesClase 13 uml_paquetes
Clase 13 uml_paquetes
 
Clase 09c seleccion
Clase 09c seleccionClase 09c seleccion
Clase 09c seleccion
 
Clase 14a uml_estados
Clase 14a uml_estadosClase 14a uml_estados
Clase 14a uml_estados
 
Clase 04 diseno_ui
Clase 04 diseno_uiClase 04 diseno_ui
Clase 04 diseno_ui
 
Estructuras de Datos Espaciales (Topico Especial)
Estructuras de Datos Espaciales (Topico Especial)Estructuras de Datos Espaciales (Topico Especial)
Estructuras de Datos Espaciales (Topico Especial)
 
Clase 12b uml_clases_ejemplos
Clase 12b uml_clases_ejemplosClase 12b uml_clases_ejemplos
Clase 12b uml_clases_ejemplos
 
Clase 02 Scrum
Clase 02 ScrumClase 02 Scrum
Clase 02 Scrum
 
Hg mini manual
Hg mini manualHg mini manual
Hg mini manual
 
Clase 01 agilidad
Clase 01 agilidadClase 01 agilidad
Clase 01 agilidad
 
Clase 05b pruebas introduccion
Clase 05b pruebas introduccionClase 05b pruebas introduccion
Clase 05b pruebas introduccion
 
Clase 03 XP
Clase 03 XPClase 03 XP
Clase 03 XP
 
Clase 09a frameworks_ejemplo
Clase 09a frameworks_ejemploClase 09a frameworks_ejemplo
Clase 09a frameworks_ejemplo
 
Clase 10 mvc
Clase 10 mvcClase 10 mvc
Clase 10 mvc
 
Clase 05a calidad verificacion validacion
Clase 05a calidad verificacion validacionClase 05a calidad verificacion validacion
Clase 05a calidad verificacion validacion
 
Clase 05d cobertura de codigo
Clase 05d cobertura de codigoClase 05d cobertura de codigo
Clase 05d cobertura de codigo
 
Clase 09a frameworks
Clase 09a frameworksClase 09a frameworks
Clase 09a frameworks
 
Clase 01 presentacion
Clase 01 presentacionClase 01 presentacion
Clase 01 presentacion
 
Clase 08c ejemplo_maquina_virtual
Clase 08c ejemplo_maquina_virtualClase 08c ejemplo_maquina_virtual
Clase 08c ejemplo_maquina_virtual
 
Clase 12a uml_clases
Clase 12a uml_clasesClase 12a uml_clases
Clase 12a uml_clases
 
Clase 08b ejemplo_capas_cleda
Clase 08b ejemplo_capas_cledaClase 08b ejemplo_capas_cleda
Clase 08b ejemplo_capas_cleda
 

Similaire à Clase 14b uml_actividades

Similaire à Clase 14b uml_actividades (20)

Uml clase 03_uml_actividades_estados
Uml clase 03_uml_actividades_estadosUml clase 03_uml_actividades_estados
Uml clase 03_uml_actividades_estados
 
Clase 6 contexto y procesos
Clase 6 contexto y procesosClase 6 contexto y procesos
Clase 6 contexto y procesos
 
Manual de trello
Manual de trello Manual de trello
Manual de trello
 
DIAGRAMA DE ACTIVIDADES UML
DIAGRAMA DE ACTIVIDADES UMLDIAGRAMA DE ACTIVIDADES UML
DIAGRAMA DE ACTIVIDADES UML
 
Diagrama de actividades
Diagrama de actividadesDiagrama de actividades
Diagrama de actividades
 
Diagrama de actividades uml
Diagrama de actividades umlDiagrama de actividades uml
Diagrama de actividades uml
 
Clase 12
Clase 12Clase 12
Clase 12
 
Diagramas de flujo
Diagramas de flujo Diagramas de flujo
Diagramas de flujo
 
Modelo de análisis Estructurado
Modelo de análisis Estructurado Modelo de análisis Estructurado
Modelo de análisis Estructurado
 
Flujogramas
FlujogramasFlujogramas
Flujogramas
 
Taller Tecnología 1 .pdf
Taller Tecnología 1 .pdfTaller Tecnología 1 .pdf
Taller Tecnología 1 .pdf
 
Taller Tecnología .pdf
Taller Tecnología .pdfTaller Tecnología .pdf
Taller Tecnología .pdf
 
Taller #1 Tecnología 2022.docx
Taller #1 Tecnología 2022.docxTaller #1 Tecnología 2022.docx
Taller #1 Tecnología 2022.docx
 
Taller Tecnología .docx
Taller Tecnología .docxTaller Tecnología .docx
Taller Tecnología .docx
 
¿Qué es un diagrama de flujo.docx
¿Qué es un diagrama de flujo.docx¿Qué es un diagrama de flujo.docx
¿Qué es un diagrama de flujo.docx
 
Uml
UmlUml
Uml
 
Diagrama de flujo
Diagrama de flujoDiagrama de flujo
Diagrama de flujo
 
Clase 25
Clase 25Clase 25
Clase 25
 
Actividad III Interpretar diagramas
Actividad III Interpretar diagramasActividad III Interpretar diagramas
Actividad III Interpretar diagramas
 
Flujogramas 2021
Flujogramas 2021Flujogramas 2021
Flujogramas 2021
 

Plus de Demián Gutierrez

Clase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicosClase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicosDemián Gutierrez
 
Clase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemploClase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemploDemián Gutierrez
 
Clase 06 diseno_arquitectura
Clase 06 diseno_arquitecturaClase 06 diseno_arquitectura
Clase 06 diseno_arquitecturaDemián Gutierrez
 
Clase 05c niveles de pruebas
Clase 05c niveles de pruebasClase 05c niveles de pruebas
Clase 05c niveles de pruebasDemián Gutierrez
 
Clase 04b requerimientos documentacion
Clase 04b requerimientos documentacionClase 04b requerimientos documentacion
Clase 04b requerimientos documentacionDemián Gutierrez
 
Clase 04a requerimientos introduccion
Clase 04a requerimientos introduccionClase 04a requerimientos introduccion
Clase 04a requerimientos introduccionDemián Gutierrez
 

Plus de Demián Gutierrez (8)

Clase 11 uml_casos_de_uso
Clase 11 uml_casos_de_usoClase 11 uml_casos_de_uso
Clase 11 uml_casos_de_uso
 
Clase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicosClase 08a estilos_arquitectonicos
Clase 08a estilos_arquitectonicos
 
Clase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemploClase 07b patrones_diseno_ejemplo
Clase 07b patrones_diseno_ejemplo
 
Clase 07a patrones_diseno
Clase 07a patrones_disenoClase 07a patrones_diseno
Clase 07a patrones_diseno
 
Clase 06 diseno_arquitectura
Clase 06 diseno_arquitecturaClase 06 diseno_arquitectura
Clase 06 diseno_arquitectura
 
Clase 05c niveles de pruebas
Clase 05c niveles de pruebasClase 05c niveles de pruebas
Clase 05c niveles de pruebas
 
Clase 04b requerimientos documentacion
Clase 04b requerimientos documentacionClase 04b requerimientos documentacion
Clase 04b requerimientos documentacion
 
Clase 04a requerimientos introduccion
Clase 04a requerimientos introduccionClase 04a requerimientos introduccion
Clase 04a requerimientos introduccion
 

Dernier

PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 

Dernier (11)

PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 

Clase 14b uml_actividades

  • 1. 1 UML Diagramas de Actividades (UML Ilustrado) Universidad de los Andes Demián Gutierrez Noviembre 2012
  • 2. 2 Diagramas de Actividades (¿Qué Muestran?) Un Diagrama de Actividades no es más que un caso especial de un diagrama de estados, en el que todos los estados (o la gran mayoría) son acciones ¿qué es una actividad y cuál es la diferencia con un estado?
  • 3. 3 Diagramas de Actividades (Estados y Actividades) ¿si estoy contento, eso es un estado o una actividad? ¿cuál es la diferencia entre estar contento o preparar una torta? ¿cómo paso de contento a triste? ¿qué sucede después de que termino de preparar la torta?
  • 4. 4 Diagramas de Actividades (Estados y Actividades) ¿Qué es una actividad y cual es la diferencia con un estado? Suena el Timbre Buscando niños al colegio Preparando Torta Haciendo Cena Atendiendo Visitas :-/ Se van las visitas contento triste mala noticia En las actividades generalmente se hace algún trabajo y se pasa a la siguiente actividad cuando la actividad actual termina En los estados generalmente no se hace nada, simplemente “estoy” contento Es común que una actividad esté compuesta por una secuencia de acciones
  • 5. 5 Diagramas de Actividades (Estados y Actividades) Estado Actividad Las actividades pueden estar compuestas por otras actividades o acciones (sub-diagramas)
  • 6. 6 Diagramas de Actividades (¿Qué Muestran?) Se pueden usar para modelar la dinámica de una sociedad de objetos El flujo de control entre un conjunto de estados o actividades, el flujo de control de una operación (¿diagramas de flujo?) Tomado de Booch, Rumbaugh, Jacobson, El Lenguaje Unificado de Modelado La relación (de entrada / salida) de un conjunto de objetos con una serie de estados o actividades
  • 7. 7 Diagramas de Actividades (¿Qué Muestran?) Los Diagramas de Actividades son usados (entre otras cosas) para elaborar modelos de flujos de trabajo* (workflow) de un sistema. *Un flujo de trabajo se puede ver como una serie de tareas (acciones) que son ejecutadas o realizadas por ciertos actores en cierto orden preestablecido Se pueden usar para modelar el flujo de navegación de una interfaz de usuario (aunque los diagramas de estado también)
  • 8. 8 Diagramas de Actividades (¿Qué Muestran?) Conjunto de actividades ¿Qué hacen las actividades? ¿En qué orden se ejecutan? ¿Dónde ocurren? ¿Quién las ejecuta? ¿Qué insumos requieren? (entradas) ¿Qué productos generan? (salidas) ¿Cuándo ocurren? Los Diagramas de Actividades expresan:
  • 9. 9 Diagramas de Actividades (Ejemplo) Inicio Fin Acción/Actividad Eje de Actividad o Transición Actividad Separación (Fork / Split) Unión (Join) Decisión (Choose / Branch) Mezcla (Merge) Nodo Objeto o Parámetro de Entrada Nodo Objeto o Parámetro de SalidaRecordar Etiquetas
  • 10. 10 Diagramas de Actividades (Ejemplo) Noten el equilibrio entre las separaciones y las uniones Noten el equilibrio entre las separaciones y las uniones
  • 11. 11 Diagramas de Actividades (Ejemplo) Final de Flujo Swimlanes (Carrileras / Calles)
  • 12. 12 Diagramas de Actividades (Ejemplo) El mismo diagrama anterior pero sin carrileras / calles, ver: http://www.jot.fm/issues/issue_2004_07/column4/
  • 14. 14 Diagramas de Actividades (Ejemplo) Nota Swimlanes Doble (Carrileras / Calles) Documento / Objeto Señal (Recepción) Señal (Emisión)
  • 15. 15 Diagramas de Actividades (Ejemplo) Acción Recurrente (Iterativa) Envío de Señal (Evento) Recepción de Señal (Evento) ¿cómo eliminaría la señal de ingreso de repuestos duplicada?
  • 16. 16 Diagramas de Actividades diagramas de actividades y casos de uso
  • 18. 18 Diagramas de Actividades y Casos de Uso Opción A: Un caso de uso general/abstracto para todo el proceso (actividades especificadas por separado)
  • 19. 19 Diagramas de Actividades y Casos de Uso Opción B: Casos de Uso separados para las actividades más significativas
  • 20. 20 Implementación ¿implementación? a continuación una de muchas formas de implementar estos conceptos
  • 21. 21 Ejemplo de Workflow (1) (Ejemplo tomado de CLEDA) Recibir Solicitud (Cliente) Análisis Legal (Analista) * Recepción de Documentos (Secretaria) * Notificar Aprobación (Secretaria) Notificar Rechazo (Secretaria) Preparar Contrato (Dpto. Legal) Análisis por Junta (Junta) Notificar Aprobación (Secretaria) Firma de Contrato (Cliente) [aprobar] [else] [aprobar] [else] MDocSolicitud id nombre apellido cedula ... workflow_id MRecaudo id nombre tipo ... 1 0..n BD Proceso de Solicitud de Préstamo Modelado con un Diagrama de Actividades
  • 22. 22 Ejemplo de Workflow (2) (Ejemplo tomado de CLEDA) Recibir Solicitud (Cliente) Aceptar (Analista) Rechazar (Analista) Guardar Temporalmente (Analista) Notificar Rechazo (Secretaria) Recibir Recaudo (Secretaria) Recaudos Faltantes (Sistema) Recaudos Completos (Sistema) Rechazar (Junta) Aceptar (Junta) Notificar Aprobación (Secretaria) (Auto) Notificar Aprobación (Secretaria) Firmar Contrato (Cliente) Preparar Contrato (Dpto. Legal) MDocSolicitud id nombre apellido cedula ... workflow_id MRecaudo id nombre tipo ... 1 0..n BD Proceso de Solicitud de Préstamo Modelado con Redes de Petri
  • 23. 23 XML (Versión 1.5) (2) (Ejemplo tomado de CLEDA) <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>
  • 24. 24 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>
  • 25. 25 XML (Versión 1.5) (4) (Ejemplo tomado de CLEDA) <net-petri-def name="..." doc-type="..."> ... <trans-list> <trans-set name="..."> <agent-def time="..." class="..." method="..." /> <privilege name="..." /> <work-list name="..." /> <meta-data key="..." val="..." /> <meta-data key="..." val="..." /> ... <doc-section-state name="..." state="..." /> <doc-section-state name="..." state="..." /> ... <trans name="..." type="..."> <meta-data key="..." val="..." /> <meta-data key="..." val="..." /> ... <pre-place name="..." /> <pre-place name="..." /> ... <pos-place name="..." /> <pos-place name="..." /> ... </trans> ... </trans-set> ... </trans-list> ... </net-petri-def>
  • 26. 26 XML (Versión 1.5) (5) (Ejemplo tomado de CLEDA) <net-petri-def name="..." doc-type="..."> ... <state-list> <state-grp 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> ... </state-grp> ... </state-list> ... </net-petri-def>
  • 27. 27 Arquitectura (General) (Ejemplo tomado de CLEDA) BD Motor de Workflow (CledaFlow, CledaScheduler y CledaBase) Hibernate JDBC Documentos MVC CledaMVC (Struts1) o Echo2 Modelo de Dominio Servlets Navegador WEB CledaTags CledaCore Aplicación arquitectura a 3 capas bien definida, validada con la experiencia de los proyectos desarrollados y en constante evolución