Clase 14b uml_actividades
-
Upload
demian-gutierrez -
Category
Technology
-
view
1.222 -
download
2
Transcript of Clase 14b uml_actividades
![Page 1: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/1.jpg)
1
UMLDiagramas de Actividades
(UML Ilustrado)
Universidad de los AndesDemián GutierrezNoviembre 2012
![Page 2: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/2.jpg)
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?
![Page 3: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/3.jpg)
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?
![Page 4: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/4.jpg)
4
Diagramas de Actividades(Estados y Actividades)
¿Qué es una actividad y cual es la diferencia con un estado?
Suena el Timbre
Buscandoniños alcolegio
PreparandoTorta
HaciendoCena
AtendiendoVisitas :-/
Se van las visitas
contento tristemala
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
![Page 5: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/5.jpg)
5
Diagramas de Actividades(Estados y Actividades)
Estado
Actividad
Las actividades pueden estar
compuestas por otras actividades o acciones
(sub-diagramas)
![Page 6: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/6.jpg)
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
![Page 7: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/7.jpg)
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)
![Page 8: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/8.jpg)
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:
![Page 9: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/9.jpg)
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
![Page 10: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/10.jpg)
10
Diagramas de Actividades(Ejemplo)
Noten el equilibrioentre las separaciones
y las uniones
Noten el equilibrioentre las separaciones
y las uniones
![Page 11: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/11.jpg)
11
Diagramas de Actividades(Ejemplo)
Final deFlujo
Swimlanes (Carrileras /
Calles)
![Page 12: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/12.jpg)
12
Diagramas de Actividades(Ejemplo)
El mismo diagrama anterior pero sin carrileras / calles, ver:
http://www.jot.fm/issues/issue_2004_07/column4/
![Page 13: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/13.jpg)
13
Diagramas de Actividades(Ejemplo)
AcciónEvento
de Tiempo
¿por qué no hay nodo de inicio?
![Page 14: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/14.jpg)
14
Diagramas de Actividades(Ejemplo)
Nota
Swimlanes Doble (Carrileras /
Calles)
Documento / Objeto
Señal (Recepción)
Señal (Emisión)
![Page 15: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/15.jpg)
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?
![Page 16: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/16.jpg)
16
Diagramas de Actividades
diagramas de actividades y casos de uso
![Page 17: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/17.jpg)
17
Diagramas de Actividadesy Casos de Uso
![Page 18: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/18.jpg)
18
Diagramas de Actividadesy Casos de Uso
Opción A:Un caso de uso general/abstracto para todo el proceso (actividades especificadas por separado)
![Page 19: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/19.jpg)
19
Diagramas de Actividadesy Casos de Uso
Opción B:Casos de Uso separados para
las actividades más significativas
![Page 20: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/20.jpg)
20
Implementación
¿implementación?
a continuación una de muchas formas de implementar estos
conceptos
![Page 21: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/21.jpg)
21
Ejemplo de Workflow (1)(Ejemplo tomado de CLEDA)
Recibir Solicitud(Cliente)
Análisis Legal(Analista)
*
Recepción deDocumentos(Secretaria)
*
NotificarAprobación(Secretaria)
NotificarRechazo
(Secretaria)
PrepararContrato
(Dpto. Legal)
Análisispor Junta(Junta)
NotificarAprobación(Secretaria)
Firma deContrato(Cliente)
[aprobar] [else]
[aprobar]
[else]
MDocSolicitud
idnombreapellidocedula...workflow_id
MRecaudo
idnombretipo...
1
0..n
BD
Proceso de Solicitud de PréstamoModelado con un Diagrama de Actividades
![Page 22: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/22.jpg)
22
Ejemplo de Workflow (2)(Ejemplo tomado de CLEDA)
Recibir Solicitud(Cliente)
Aceptar(Analista)
Rechazar(Analista)
GuardarTemporalmente
(Analista)
NotificarRechazo
(Secretaria)
RecibirRecaudo
(Secretaria)
RecaudosFaltantes(Sistema)
RecaudosCompletos(Sistema)
Rechazar(Junta)
Aceptar(Junta)
NotificarAprobación(Secretaria)
(Auto)Notificar
Aprobación(Secretaria)
FirmarContrato(Cliente)
PrepararContrato
(Dpto. Legal)
MDocSolicitud
idnombreapellidocedula...workflow_id
MRecaudo
idnombretipo...
1
0..n
BD
Proceso de Solicitud de PréstamoModelado con Redes de Petri
![Page 23: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/23.jpg)
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>
![Page 24: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/24.jpg)
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>
![Page 25: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/25.jpg)
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>
![Page 26: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/26.jpg)
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>
![Page 27: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/27.jpg)
27
Arquitectura (General)(Ejemplo tomado de CLEDA)
BD
Motorde
Workflow(CledaFlow, CledaScheduler y
CledaBase)
Hib
erna
te
JDB
C
Documentos
MVCCledaMVC(Struts1)
oEcho2
Modelode
Dominio
Servlets
NavegadorWEB
CledaTags
CledaCore
Aplicación
arquitectura a 3 capas bien definida,validada con la experiencia de los proyectos desarrollados
y en constante evolución
![Page 28: Clase 14b uml_actividades](https://reader034.fdocuments.mx/reader034/viewer/2022052307/558ffd3b1a28abb90d8b4680/html5/thumbnails/28.jpg)
28
Gracias
¡Gracias!