Upload
claudio-lopez-antypas
View
2.967
Download
4
Embed Size (px)
Citation preview
Diagrama de Secuencia
Claudio López Fabiola Alvarado
Victoria GalenoMoisés Heredia
¿Qué es un diagrama de ¿Qué es un diagrama de secuencia?secuencia?
• El diagrama de secuencias en UML muestra la forma en que los objetos se comunican entre sí al transcurrir el tiempo y qué mensajes proyectan esas comunicaciones.
• Para poder realizar un diagrama de secuencias es necesario haber tenido antes un desarrollo de un casos de uso.
• Un caso de uso es una descripción de los pasos o las actividades que deberán realizarse para llevar a cabo algún proceso.
Diagrama de Diagrama de SecuenciaSecuencia
• El diagrama de secuencia muestra:Los objetos participando en la interacción La secuencia de mensajes intercambiados
• Un diagrama contiene: Objetos Mensajes Línea de tiempo
ObjetosObjetos • El diagrama de secuencias consta de
objetos que se representan del modo usual: rectángulos con nombre (subrayado), mensajes entre los objetos representados por líneas continuas con una punta de flecha y el tiempo representado como una progresión vertical.
• Los objetos se colocan cerca de la parte superior del diagrama de izquierda a derecha y se acomodan de manera que simplifiquen el diagrama.
• La extensión que está debajo (y en forma descendente) de cada objeto será una línea discontinua conocida como la línea de tiempo de un objeto.
ObjetosObjetos
ObjetosObjetos
Simbología
Simbología
Un mensaje puede ser simple, síncrono y asíncrono:
• Mensaje simple: es la transferencia de datos de un objeto a otro.
• Mensaje síncrono: es cuando el objeto espera la respuesta a ese mensaje antes de continuar con su trabajo.
• Mensaje asíncrono: es cuando el objeto no espera la respuesta a ese mensaje antes de continuar.
Mensaje
Tipos de Mensajes
Línea de Tiempo
• Expresan el tiempo de vida del objeto.• La función del rectángulo es representar el tiempo de duración del mensaje.
Recursividad
• En ocasiones un objeto posee una operación que se invoca (o envía) un mensaje a sí mismo.
• Es una característica fundamental de varios lenguajes de programación.
Recursividad
Para representar esto en UML, dibujamos una flecha de mensaje fuera de la activación, y un pequeño rectángulo encima de la activación.
Propósito y Utilidad
• Uno de los principales usos de los diagramas de secuencia está en la transición de los requisitos expresados en los casos de uso al siguiente nivel y más formal de refinamiento.
• Los casos de uso son a menudo refinados en uno o varios diagramas de secuencia.
• Contiene detalles de implementación del escenario, incluyendo los objetos y clases que se usan para implementar el escenario y mensajes intercambiados entre los objetos.
• Si se dispone de la descripción de cada caso de uso como una secuencia de varios pasos, entonces se puede "caminar sobre" esos pasos para descubrir qué objetos son necesarios para que se puedan seguir los pasos.• Su uso en el diseño de nuevos sistemas.• Se pueden utilizar para documentar cómo los objetos en un sistema existente (lo llaman "legacy") actualmente interactúan.• Esta documentación es muy útil cuando la transición de un sistema a otro persona u organización.
Propósito y Utilidad
Características
• Muestra la secuencia de mensajes entre objetos durante un escenario concreto.
• Cada objeto viene dado por una barra vertical.
• El tiempo transcurre de arriba abajo.
• Se muestra el tiempo durante el cual se encuentra un objeto activo.
Características• Se hace énfasis en el orden en que
ocurren las interacciones.
• Cuando existe demora entre el envío y la atención se puede indicar
usando una línea oblicua
:A Hacer( ) :B
Objetivo Diagrama de Secuencias
• Descubrir las interfaces requeridas para cada objeto y validar que cada interfaz se usa realmente.
• El diagrama de Secuencias modela interacciones entre objetos. Ya que estas interacciones pueden ser muy complejas, se modelan un pequeño juego de interacciones como un solo escenario
Ejemplo
• Casos de uso: Cancelar Pedido • 1. A: Indicar al sistema que se desea cancelar
un pedido.• 2. S : Pedir la identificación al Socio• 3. A: Caso de uso Identificación ante el Sistema
de un Socio• 4. A: Indicar el pedido a cancelar• 5. S : Tramitar la cancelación del Pedido
Pasos:Actores: Socio , Sistema
: Cliente : Centro Comercial Virtual : Sistema
Distribución : Responsable
Comercio
cancelarPedido()
evaluarCancelación()
[si es posible cancelar] tramitarCancelación()
cancelarSolicitud()
Resumen
• Identificar a los objetos participantes• Dibujar una línea vertical bajo cada objeto, que
representa la línea de tiempo• Cada mensaje se convierte en una línea
horizontal del objeto que manda al que recibe.• Para un mensaje síncrono o procedimiento de
llamada se requiere una respuesta.• Los asíncronos no necesitan respuesta.