DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a...

31
DIAGRAMA DE SECUENCIAS DIAGRAMA DE SECUENCIAS MsC (c) Esp. Alexis Ovany Torres Ch. [email protected] Orientador Analisis y Diseño de Sistemas de Informacion

Transcript of DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a...

Page 1: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

DIAGRAMA DE SECUENCIASDIAGRAMA DE SECUENCIAS

MsC (c) Esp. Alexis Ovany Torres Ch.

[email protected]

Orientador Analisis y Diseño de Sistemas de Informacion

Page 2: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Describe las secuencias de intercambios de mensajesentre roles que implementan el comportamiento delsistema.Muestra el flujo de control a través de muchosobjetos.

Un diagrama de secuencia muestra:Un diagrama de secuencia muestra:Un diagrama de secuencia muestra:Un diagrama de secuencia muestra:

VISTA DE LA INTERACCIÓNVISTA DE LA INTERACCIÓNVISTA DE LA INTERACCIÓNVISTA DE LA INTERACCIÓN

Un diagrama de secuencia muestra:Un diagrama de secuencia muestra:Un diagrama de secuencia muestra:Un diagrama de secuencia muestra:

� Interacción de un conjunto de objetos en una aplicación a través del tiempo.� Un conjunto de mensajes, dispuestos en una secuencia temporal.� Cada rol en la secuencia como una línea de vida, es decir: una línea vertical.

Page 3: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� La dimensión vertical: es el eje del tiempo

� La dimensión horizontal muestra los roles de clasificador

que representan objetos individuales en la colaboración

Un diagrama de secuencia representa una interacción

como un gráfico bidimensional.

Un rol de clasificador:Un rol de clasificador:

Es la descripción de un objeto que desempeña un determinado

papel dentro de una interacción, distinto de los otros objetos de

la misma clase.

Page 4: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� La primera utilización de los diagramas de La primera utilización de los diagramas de La primera utilización de los diagramas de La primera utilización de los diagramas de secuencia corresponde a la secuencia corresponde a la secuencia corresponde a la secuencia corresponde a la documentación de los casos de uso, se concentra en la descripción de la se concentra en la descripción de la se concentra en la descripción de la se concentra en la descripción de la interacción,interacción,interacción,interacción,

� La segunda utilización corresponde a un uso más La segunda utilización corresponde a un uso más La segunda utilización corresponde a un uso más La segunda utilización corresponde a un uso más informático informático informático informático y permite la representación precisa de informático informático informático informático y permite la representación precisa de las interacciones entre objetos.

Por lo tanto puede mostrar:

� Escenario como la historia individual de la transacción

que detalla los casos de uso, aclarándolos al nivel de

mensajes de los objetos existentes, como también

� El uso de los mensajes de las clases diseñadas en el

contexto de una operación.

Page 5: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Cuando está implementado el comportamiento,

cada mensaje en un diagrama de secuencia

corresponde a:

� Una operación en una clase,

� A un evento disparador, o

� A una transición en una máquina de estados.

Page 6: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Es la ejecución de un procedimiento, incluyendo el tiempo que

espera a los procedimientos anidados para ejecutarse.

� Muestra el periodo de tiempo en el cual el objeto se

ACTIVACION:ACTIVACION:

Muestra el periodo de tiempo en el cual el objeto se

encuentra desarrollando alguna operación, bien sea por sí

mismo o por medio de delegación a alguno de sus atributos.

� Se denota como un rectángulo delgado sobre la línea de

vida del objeto.

Page 7: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

El diagrama siguiente muestra el caso de un objeto A que activa otro objeto B.

Page 8: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

El mensaje denota el hecho de aportar

información de un objeto (u otra instancia) a otro.

Puede ser una señal o llamadas a una operación.

MensajeMensaje

La notación para UML del envío de mensajes

entre objetos es con una flecha dirigida, desde el objeto

que emite el mensaje hacia el objeto que lo ejecuta.

Page 9: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

�Cuando el diagrama de secuencia corresponde a la

documentación de los casos de uso se concentra en la

descripción de la interacción, a menudo en términos

próximos al usuario y sin entrar en detalles de

sincronización.

�La indicación que acompaña a las flechas corresponde

entonces, a eventos que ocurren en el ámbito de la

aplicación.

�En este estadio del modelamiento, las flechas no

corresponden aún a envíos de mensajes en el sentido de

lenguajes de programación, y la distinción entre flujos de

control y flujos de datos generalmente no se opera

Page 10: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� Cuando el diagrama de secuencia corresponde a un uso más informático, permite la representación precisa de las interacciones entre objetos.

� En este caso el concepto de mensaje unifica todas las formas de comunicación entre objetos, en particular la llamada de procedimiento, el evento discreto, la señal entre flujos de ejecución o la interrupción de hardware.

Page 11: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Los envíos síncronos (flujos de control plano)

� Muestran la progresión al próximo paso de la secuencia.

Tipos de flujos de control:Tipos de flujos de control:

� Muestran la progresión al próximo paso de la secuencia.

� Son envíos secuenciales, en los que el emisor está

bloqueado y espera que el receptor haya terminado de

tratar el mensaje;

Page 12: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Los envíos o flujos de control asíncronos:Los envíos o flujos de control asíncronos:

� En los que el emisor no está bloqueado y puede continuar

su ejecución.

Llamada a procedimiento u otro flujo de control anidado

� La secuencia anidada completa debe finalizar antes de

reanudar la secuencia de nivel externo.

� Se puede emplear en llamadas normales a procedimiento.

� También se puede usar con objetos activos

concurrentemente cuando uno de ellos envía una señal y

espera a que finalice una secuencia de comportamiento

anidada.

Page 13: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� La flecha de retorno puede suprimirse, por cuanto queda

implícita al final de la activación

Retorno Retorno de una llamada a procedimientode una llamada a procedimiento

Page 14: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� La flecha que simboliza un mensaje puede representarse oblicua para materializar las demoras de transmisión respecto a la dinámica general de la aplicación.

Page 15: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� Un objeto puede enviarse un mensaje a si mismo, o sea un mensaje reflexivo que se representa de la siguiente forma:

Page 16: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� Ocurre una llamada recursiva cuando el control vuelve a entrar en una operación en un objeto, pero la segunda llamada es una activación separada de la primera.

Page 17: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Es un objeto que contiene la raíz de una pila de activaciones.Es un objeto que contiene la raíz de una pila de activaciones.

� Cada objeto activo tiene su propio hilo de control dirigido

por eventos que se ejecuta en paralelo a otros objetos activos.

� Los objetos que son llamados por un objeto activo son objetos

Objeto activoObjeto activo

� Los objetos que son llamados por un objeto activo son objetos

pasivos; reciben el control solamente cuando son llamados y lo ceden

cuando retornan.

� Si varios hilos de control concurrentes tienen sus propios

flujos de procedimientos de control usando llamadas

anidadas, los diversos hilos deben distinguirse usando los

nombres de los hilos, colores u otros medios para evitar

confusión.

Page 18: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

La Línea de vida de un objeto se representa como una línea

vertical punteada con un rectángulo de encabezado y con

rectángulos a través de la línea principal que denotan la

ejecución de métodos (activación)

Línea de vida de un objetoLínea de vida de un objeto

Creación y Destrucción de objetosCreación y Destrucción de objetosCreación y Destrucción de objetosCreación y Destrucción de objetos

• La creación de objetos se representa haciendo apuntar el

mensaje de creación sobre un rectángulo que simboliza el objeto

creado.

• La destrucción se indica por el fin de la línea de vida y por una

letra x, bien a la altura del mensaje que causa la destrucción, o

bien tras el último mensaje enviado por un objeto que se suicida.

Page 19: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Creación y Destrucción de objetosCreación y Destrucción de objetos

Page 20: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Las formas de diagramas de secuencia reflejan indirectamente

las opciones de estructura.

Estructuras de controlEstructuras de control

Page 21: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� Los diagramas de secuencia pueden completarse por

indicaciones textuales, expresadas en forma de texto libre

o de pseudocódigo.

� El instante de emisión de un mensaje llamado

transición, puede tener nombre en el diagrama cerca del transición, puede tener nombre en el diagrama cerca del

punto de partida de la flecha que simboliza el mensaje.

Este nombre sirve entonces, de referencia, por ejemplo,

para construir restricciones temporales.

� Cuando la propagación de un mensaje toma un tiempo

significativo respecto a la dinámica del sistema, los

instantes de emisión y de recepción de los mensajes se

materializan por un par (nombre, nombre primo).

Page 22: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,
Page 23: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

� La adición de pseudocódigo sobre la parte izquierda del diagrama permite la representación de bucles y bifurcaciones

� De modo que los diagramas de secuencia pueden presentar la forma general de una interacción, más allá de la simple consideración de un escenario particular.

Page 24: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

El objeto A envía sin solución de continuidad un mensaje a B

mientras la condición X es verdad.

Bucles o iteraciones: Bucles o iteraciones:

Page 25: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

El bucle whilewhile puede representarse también por medio de una

condición de iteración colocada directamente sobre el mensaje.

La iteración se simboliza entonces por el carácter * ,

colocado delante de la condición entre corchetes.

Page 26: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Pueden materializarse por medio de pseudocódigo colocado a la

izquierda del diagrama.

El diagrama siguiente muestra que el objeto A envía un mensaje al

objeto B o al objeto C según la condición X.

Las Las bifurcaciones condicionales bifurcaciones condicionales

Page 27: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Las condiciones colocadas delante de los mensajespueden sustituir al pseudocódigo.Las diferentes ramas se materializan entonces por variasflechas que tienen su origen en el mismo instante y sedistinguen por las condiciones colocadas delante de losmensajes.A cada bifurcación, las condiciones debenA cada bifurcación, las condiciones debenser mutuamente exclusivas, y deben cubrirse todos loscasos.

Page 28: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Las alternativas, en el lado del destinatario delmensaje, se representan desdoblando la línea de vidadel objeto destinatario.La distinción entre las ramas se indica por unacondición colocada esta vez detrás del mensaje, cercadel punto de entrada sobre la línea de vida del objetodestinatario.destinatario.La representación gráfica de las bifurcacionescondicionales es la siguiente:

Page 29: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Ejemplo: Diagrama de secuencia para un control Ejemplo: Diagrama de secuencia para un control Ejemplo: Diagrama de secuencia para un control Ejemplo: Diagrama de secuencia para un control asíncronoasíncronoasíncronoasíncrono

Page 30: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,
Page 31: DIAGRAMA DE SECUENCIAS - asiup.files.wordpress.com · Cuando el diagrama de secuencia corresponde a la documentación de los casos de uso se concentra en la descripción de la interacción,

Lorem ipsum dolor sit amet, quidam apeirian iudicabit ex est, vix eu

suscipiantur

Lorem ipsum dolor sit amet, quidam apeirian iudicabit ex est, vix eu suscipiantur vituperatoribus. Cibo saepecommodo ius an. Suas sadipscing eloquentiam his et, mellatine debitis ei. Ex movet efficiantur mea, pro in natumzril. Eam ei adhuc impedit, ad usu alterum aliquando. Discere dissentiunt per id, has soluta forensibusreprehendunt ad.Discere dissentiunt per id, has soluta forensibusreprehendunt ad.

� Graeci perfecto mandamus eum ne

� Nusquam nominati persecuti per eu. Sea mundisententiae ad, et diam case his.� Mel at quod magna accusam, usu id nihil reformidans.

� Ad has appetere scripserit, tamquam habemus pericula usu no, mei aperiam imperdiet posidonium ex. Mea et semper explicari.