DIAGRAMA DE SECUENCIA Y ACTIVIDADES. Jorge Perrusquia Martinez . Gustavo Barrera Osornio .
UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes...
Transcript of UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes...
![Page 1: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/1.jpg)
1
UMLDiagrama de Secuencia
Universidad de los AndesDemián Gutierrez
Mayo 2011
![Page 2: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/2.jpg)
2
Diagramas de Secuencia
Los Diagramas de Secuencias muestran la forma en que un grupo de objetos se comunican (interactúan)
entre sí a lo largo del tiempo
Un Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del
objeto representada por una línea vertical
pedro = new Persona()
Es importante recordar la diferenciaentre una clase y un objeto
![Page 3: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/3.jpg)
3
Diagramas de Secuencia(Los tres cerditos)
¿Qué tiene que ver un diagrama de secuenciascon la fábula de los tres cerditos?
(Gracias Ken Howard)http://kenhoward01.blogspot.com/2008/06/three-little-pigs-in-uml.html
![Page 4: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/4.jpg)
4
Diagramas de Secuencia(Los tres cerditos)
Los diagramasde Secuencias
“cuentan” historias
![Page 5: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/5.jpg)
5
Diagramas de Secuencia(Los tres cerditos)
Fuente: http://kenhoward01.blogspot.com/2008/06/three-little-pigs-in-uml.html
![Page 6: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/6.jpg)
6
Diagramas de Secuencia(Los tres cerditos)
Ejecución enParalelo
ActoresInvolucrados
ObjetoInstanciación
Objeto(Ejecución)
Activo
Separador delas ejecucionesconcurrentes
Línea de Vidade un Actor
u Objeto
Recordar Etiquetas
Fuente: http://www.tracemodeler.com/articles/pimp-my-diagram-three-little-pigs/
![Page 7: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/7.jpg)
7
Diagramas de Secuencia(Los tres cerditos)
Fin de la vidade un objeto
Mensaje
Comentario
RetornoExplícito
Pila deLlamada
RecordarEtiquetas
Fuente: http://www.tracemodeler.com/articles/pimp-my-diagram-three-little-pigs/
![Page 8: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/8.jpg)
8
Diagramas de Secuencia(Los tres cerditos)
Fuente: http://www.tracemodeler.com/articles/pimp-my-diagram-three-little-pigs/
Ojo, aquíhay un error
![Page 9: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/9.jpg)
9
Diagramas de Secuencia(Relación con Casos de Uso)
Flujo Normal:
Flujo Alternativo:
1.- El actor pulsa sobre el botón para crear un nuevo mensaje.2.- El sistema muestra una caja de texto para introducir el título del mensaje y una zona de mayor tamaño para introducir el cuerpo del mensaje.3.- El actor introduce el título del mensaje y el cuerpo del mismo.4.- El sistema comprueba la validez de los datos y los almacena.5.- El moderador recibe una notificación de que hay un nuevo mensaje.6.- El moderador acepta y el sistema publica el mensaje si éste fue aceptado por el moderador.
4.A.- El sistema comprueba la validez de los datos, si los datos no son correctos, se avisa al actor de ello permitiéndole que los corrija.
7.B.- El moderador rechaza el mensaje, de modo que no es publicado sino devuelto al usuario.
![Page 10: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/10.jpg)
10
Descripción Textual de un Caso de Uso(Requerimientos: ¿Qué debe hacer el sistema?)
Distintos símbolosusados para diferenciar
distintos tipos deobjetos
Numeración(Orden)de los
Mensajes
Mensajea si mismo
MensajeAsíncrono
RecordarEtiquetas
![Page 11: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/11.jpg)
11
Diagramas de Secuencia(Implementación)
protected void doPaint(Painter painter) { painter.drawRect(x, y, width, height); // Cause painting of shapes to be relative to this shape painter.translate(x, y);
for (Shape s : shapes) { s.paint(painter); }}
Es posible utilizar un diagrama de secuencia para modelar el método anterior
![Page 12: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/12.jpg)
12
Diagramas de Secuencia(Implementación)
Origen delMensaje
Indeterminado
Destino delMensaje
Indeterminado
Argumentosdel Mensaje
Repetición *mientras / para
[condición]RecordarEtiquetas
![Page 13: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/13.jpg)
13
Diagramas de Secuencia(Implementación)
protected void doPaint(Painter painter, Config config) { painter.drawRect(x, y, width, height); // Cause painting of shapes to be relative to this shape painter.translate(x, y);
for (Shape s : shapes) { Rectangle clip = s.getClip(); painter.setClip(clip); s.paint(painter); }
// Restore graphics origin painter.translate(-x, -y);}
![Page 14: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/14.jpg)
14
Diagramas de Secuencia(Implementación)
Lazo / RepeticiónExplícito demás de unainstrucción
Mientras / para[condición]
Valor deRetorno
MarcoCompuesto
RecordarEtiquetas
![Page 15: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/15.jpg)
15
Diagramas de Secuencia(Implementación)
protected void doPaint(Painter painter, Config config) { painter.drawRect(x, y, width, height); // Cause painting of shapes to be relative to this shape boolean translate = config.needsTranslation();
if (translate) { painter.translate(x, y); }
for (Shape s : shapes) { s.paint(painter); }}
![Page 16: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/16.jpg)
16
Diagramas de Secuencia(Implementación)
Condicional[condición]
![Page 17: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/17.jpg)
17
Diagramas de Secuencia(Implementación)
protected void doPaint(Painter painter, Config config) { painter.drawRect(x, y, width, height); // Cause painting of shapes to be relative to this shape boolean translate = config.needsTranslation();
if (translate) { painter.setTransformsEnabled(true); painter.translate(x, y); }
for (Shape s : shapes) { s.paint(painter); }}
![Page 18: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/18.jpg)
18
Diagramas de Secuencia(Implementación)
Condicional(Opcional)
[condición]
![Page 19: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/19.jpg)
19
Diagramas de Secuencia(Implementación)
protected void doPaint(Painter painter, Config config) { painter.drawRect(x, y, width, height); // Cause painting of shapes to be relative to this shape boolean translate = config.needsTranslation();
if (translate) { painter.setTransformsEnabled(true); painter.translate(x, y); } else { painter.setTransformsEnabled(false); painter.translate(0, 0); }
for (Shape s : shapes) { s.paint(painter); }}
![Page 20: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/20.jpg)
20
Diagramas de Secuencia(Implementación)
FlujosAlternativos
(if/else)[condición]
Se puedentener todos los
compartimientosque sean
necesarios
![Page 21: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/21.jpg)
21
Diagramas de Secuencia(Implementación)
Identificacióndel diagrama
![Page 22: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/22.jpg)
22
Diagramas de Secuencia(Implementación)
Identificacióndel diagrama
![Page 23: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/23.jpg)
23
Diagramas de Secuencia(Implementación)
Una referencia rápida de UML
http://www.holub.com/goodies/uml/
Tutorial de Diagramas de Secuencia (IBM)http://www.ibm.com/developerworks/rational/library/3101.html
Tutorial de Diagramas de Secuencia (Trace Modeler)http://www.tracemodeler.com/articles/a_quick_introduction_to_uml_sequence_diagrams/index.html
![Page 24: UML Diagrama de Secuencia - · PDF fileUn Diagrama de Secuencia consta de objetos, mensajes entre estos objetos y una línea de vida del objeto representada por una línea vertical](https://reader033.fdocument.pub/reader033/viewer/2022052300/5a7875787f8b9a7b698b5b1d/html5/thumbnails/24.jpg)
24
Gracias
¡Gracias!