Communication">
Nothing Special   »   [go: up one dir, main page]

DS Lab04 PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 9

Desarrollo de Software

Sesión 04: Diagrama de secuencia

I. OBJETIVOS

- Conocer los diagramas de secuencia


- Modelar los diagramas de secuencia usando herramientas UML

II. TEMAS A TRATAR

● Diagramas de secuencia
● Componentes de los diagramas de secuencia

III. MARCO TEORICO

DIAGRAMAS DE SECUENCIA
Los diagramas de clases y los de objetos representan información estática. No obstante, en un
sistema funcional, los objetos interactúan entre sí, y tales interacciones suceden con el tiempo.
El diagrama de secuencia UML muestra la mecánica de la interacción con base en tiempos.

UTILIDAD
Un diagrama de secuencia muestra la interacción de un conjunto de objetos en una aplicación a
través del tiempo y se modela para cada caso de uso. A menudo es útil para complementar a un
diagrama de clases, pues el diagrama de secuencia se podría describir de manera informal como
"el diagrama de clases en movimiento", por lo que ambos deben estar relacionados entre sí
(mismas clases, métodos, atributos...). Mientras que el diagrama de casos de uso permite el
modelado de una vista business del escenario, el diagrama 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.

Típicamente se examina la descripción de un caso de uso para determinar qué objetos son
necesarios para la implementación del escenario. 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. Un diagrama de
secuencia muestra los objetos que intervienen en el escenario con líneas discontinuas verticales,
y los mensajes pasados entre los objetos como flechas horizontales.

Componentes

Símbolo de objeto

Representa una clase u objeto en UML. El símbolo objeto demuestra cómo se comportará un
objeto en el contexto del sistema. Los atributos de las clases no deben aparecer en esta figura.
Desarrollo de Software
Desarrollo de Software

Activación

Los cuadros de activación, representan el tiempo necesario para que un objeto finalice una
tarea. Cuanto más tiempo lleve la tarea, más largo será el cuadro de activación.

Mensajes

Los mensajes son flechas que representan comunicaciones entre objetos. Las medias flechas
representan mensajes asincrónicos. Los mensajes asincrónicos son enviados desde un objeto
que no va a esperar una respuesta del receptor para continuar con sus tareas.

Se puedes usar los siguientes símbolos de mensaje y flechas para indicar cómo se transmite la
información entre objetos. Estos símbolos pueden reflejar el inicio y la ejecución de una
operación o el envío y la recepción de una señal.
Desarrollo de Software

Símbolo Nombre Descripción

Representados por una línea continua y una


Símbolo de punta de flecha sólida. Este símbolo se utiliza
mensaje cuando un remitente debe esperar una respuesta
sincrónico a un mensaje antes de proseguir. El diagrama
debe mostrar el mensaje y la respuesta.

Representados por una línea continua y una


Símbolo de punta de flecha simple. Los mensajes asincrónicos
mensaje no necesitan una respuesta para que el remitente
asincrónico siga adelante. Solo la llamada se debe incluir en
el diagrama.

Símbolo de
mensaje de Representados por una línea discontinua y una
respuesta punta de flecha simple.
asincrónico

Símbolo de crear Representados por una línea discontinua y una


mensaje punta de flecha simple. Este mensaje crea un
asincrónico nuevo objeto.

Símbolo de Están representados con una línea discontinua y


mensaje de una punta de flecha simple. Estos mensajes son
respuesta las respuestas a las llamadas.

Están representados por una línea continua y una


Símbolo de
punta de flecha sólida, seguida de una X. Este
eliminar mensaje
mensaje destruye
Desarrollo de Software

Líneas de vida

Las líneas de vida son verticales y en línea de puntos, ellas indican la presencia del objeto
durante el tiempo.

Destrucción de objetos

Los objetos pueden ser eliminados tempranamente usando una flecha etiquetada
"<<destruir>>" que apunta a una X.

Ejemplo:
En el siguiente ejemplo se muestra la secuencia que sigue un usuario del metro para comprar
un ticket:
Desarrollo de Software

IV. ACTIVIDADES (La práctica tiene una duración de 2 horas)

1. En un sistema de caja, el comprador requiere calcular el total de la compra (este cálculo se


realiza en la caja)

2. Dado un subsistema en un robot, grafique el diagrama de secuencia en el que se verifique al


microcontrolador requiriendo Avanzar al motor, luego de esto el microcontrolador espera un
momento antes de realizar otra acción
Desarrollo de Software

3. Cuando un objeto fuera del diagrama envía un mensaje a un objeto que pertenece al diagrama,
usamos el tipo de mensaje “mensaje encontrado” el objeto1 recibirá el mensaje encontrado:
“imprimir”

4. Cuando un objeto del diagrama quiere enviar un mensaje a otro objeto que no forma parte del
diagrama, usamos el “mensaje perdido”. Graficaremos este mensaje perdido en la secuencia de
impresión:

5. En un Sistema de registro de pedido, tenemos:


⚫ Dicha aplicación debe guardar la información de los pedidos que realizan sus clientes y la fecha
en que se formalizan.
⚫ Los pedidos constan habitualmente de varios productos.
⚫ El coste total del pedido se calcula a partir de los precios individuales de cada producto, así
como de la cantidad e impuestos asociados a cada uno.
⚫ Es importante mantener información sobre las existencias de cada producto con el fin de
poder informar al cliente si habrá retrasos en la entrega del pedido.
⚫ El pedido podrá pagarse de una vez o en varios pagos.
⚫ Las formas de pago posible son:
◼ Tarjeta de crédito (fecha de caducidad, número, VISA o MASTERCARD)
◼ Efectivo (moneda)
◼ Cheque (nombre, entidad bancaria)
⚫ El pedido podrá estar en uno de los siguientes estados: pendiente, pagado, procesando,
enviado y entregado
Desarrollo de Software

Describir el diagrama de secuencia según la notación utilizada en el proceso unificado para el siguiente caso
⚫ Identificador: Realiza_pedido
⚫ Actor que lo inician: Cliente
⚫ Precondiciones: Un cliente registrado en el sistema ha accedido correctamente al sistema
⚫ Secuencia de eventos de flujo
◼ El cliente solicita la realización de un pedido
◼ El sistema pedidos muestra al cliente un listado con los productos
◼ El cliente selecciona el producto que desea incluir en el pedido
◼ El sistema muestra la descripción y el precio del producto al cliente
◼ El cliente confirma la selección
◼ El sistema devuelve el id del pedido al usuario
⚫ Postcondiciones: Si el pedido no ha sido cancelado, es registrado en el sistema y confirmado al cliente
Desarrollo de Software

VII. Ejercicios

1. : Realizar un pedido en un almacén


Precondiciones: el cliente registrado se ha logueado correctamente
Descripción del problema: El cliente introduce al sistema su nombre y dirección, si el
cliente introduce el code zip, el sistema introduce la ciudad y la región. A continuación, el
cliente introduce los códigos de los productos que desea incluir en el pedido. Por cada código
de producto introducido: el sistema da la descripción precio del producto, y el sistema suma
el precio del producto en el total del pedido (acorde a la cantidad del producto solicitada por
el cliente). Posteriormente, el sistema almacena temporalmente la lista de productos incluidos
en el pedido, y a continuación en cliente introduce la información de la tarje utilizada como
medio de pago, y pulsa el botón “ejecutar pago”, ante lo cual el sistema pide y recibe la
confirmación del banco. Si la información es rechaza, el sistema le solicita al cliente la
corrección de la información, ante lo cual el cliente realiza el mismo proceso anterior. Cuando
el pago es confirmado, se acepta el pedido, se almacena y se le asigna un id que se le retorna
al cliente.
Pos condiciones: Si el pedido no ha sido cancelado, es registrado en el sistema y se le
informa al cliente
2. Una persona introduce en el sistema el nombre de un disco y el nombre de una canción del
catálogo; hecho esto, el sistema busca la información de la canción solicitada y muestra los
siguientes datos: el precio, el tamaño en megabytes, la duración en minutos y segundos, la
calidad y el número de unidades vendidas.
3. Un call center funciona de la siguiente forma. La telefonista que ofrece un servicio crea un
objeto llamada la cual realiza una petición de datos al objeto cliente. Este objeto lo que hace es
una consulta aleatoria a la base de datos de aquellos clientes a los que no se le ha llamado los
últimos seis meses. Una vez que recibe los datos realiza la llamada el propio sistema. Durante la
llamada el objeto llamada va mostrando la información que la telefonista le tiene que dar al
cliente. Si la llamada dura más de 20 segundos el objeto llamada hace una petición al registro de
morosos el cual responderá de forma no síncrona y aparecerá un mensaje en pantalla de la
operadora que el cliente es un moroso y esta terminará la llamada. Si por último, el cliente está
interesado, el objeto llamada cederá el control de ejecución a otro objeto registro el cual lanzará
una locución de contratación. En ese momento el objeto llamada termina su ejecución (justo en
la llamada del objeto registro).
Realice el diagrama de secuencia en UML del supuesto planteado anteriormente. Solamente
plantee los objetos llamada, cliente, Reg-morosos y registro.

VII. Bibliografía y referencias

1. https://sites.google.com/site/alfonsoperezr/investigacion/estructuracin-y-especificacin-de-casos-de-uos
2. https://docs.staruml.io/
3. https://www.lucidchart.com/pages/es/tutorial-de-diagrama-de-clases-uml
4. https://www.ediciones-eni.com/open/mediabook.aspx?idR=67d52f308b3eda2855042d904e2f5c2f

También podría gustarte