Diagrama de Secuencia

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 18

Diagrama de secuencia

Saltar a: navegacin, bsqueda


El diagrama de secuencia es un tipo de diagrama usado para modelar interaccin entre
objetos en un sistema segn UML. En ingls se pueden encontrar como "sequence
diagram", "event-trace diagrams", "event scenarios" o "timing diagrams"1

Ejemplo de Diagrama de Secuencia

ndice

1 Utilidad
o 1.1 Tipos de mensajes
o 1.2 Pueden ser usados en dos formas

2 Estructura

3 Relacionados

4 Referencias

5 Enlaces externos

Utilidad
Un diagrama de secuencia muestra la interaccin de un conjunto de objetos en una
aplicacin a travs del tiempo y se modela para cada caso de uso. Mientras que el diagrama
de casos de uso permite el modelado de una vista business del escenario, el diagrama de
secuencia contiene detalles de implementacin del escenario, incluyendo los objetos y
clases que se usan para implementar el escenario y mensajes intercambiados entre los
objetos.

Tpicamente se examina la descripcin de un caso de uso para determinar qu objetos son


necesarios para la implementacin del escenario. Si se dispone de la descripcin 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 lneas
discontinuas verticales, y los mensajes pasados entre los objetos como flechas horizontales.

Tipos de mensajes
Existen dos tipos de mensajes: sincrnicos y asincrnicos. Los mensajes sincrnicos se
corresponden con llamadas a mtodos del objeto que recibe el mensaje. El objeto que enva
el mensaje queda bloqueado hasta que termina la llamada. Este tipo de mensajes se
representan con flechas con la cabeza llena. Los mensajes asincrnicos terminan
inmediatamente, y crean un nuevo hilo de ejecucin dentro de la secuencia. Se representan
con flechas con la cabeza abierta.
Tambin se representa la respuesta a un mensaje con una flecha discontinua.

Pueden ser usados en dos formas

De instancia: describe un escenario especfico (un escenario es una instancia de la


ejecucin de un caso de uso).

Genrico: describe la interaccin para un caso de uso; Utiliza ramificaciones


("Branches"), condiciones y bucles.

Estructura
Los mensajes se dibujan cronolgicamente desde la parte superior del diagrama a la parte
inferior; la distribucin horizontal de los objetos es arbitraria. Durante el anlisis inicial, el
modelador tpicamente coloca el nombre 'business' de un mensaje en la lnea del mensaje.
Ms tarde, durante el diseo, el nombre 'business' es reemplazado con el nombre del
mtodo que est siendo llamado por un objeto en el otro. El mtodo llamado, o invocado,
pertenece a la definicin de la clase instanciada por el objeto en la recepcin final del
mensaje
DIAGRAMA DE SECUENCIA

El diagrama de secuencia de uml muestran la forma en que los objetos se


comunican entre si al transcurrir el tiempo.
Los diagramas de secuencia, formalmente diagramas de traza de eventos o de interaccin de objetos, se

utilizan con frecuencia para validar los casos de uso.

El diagrama muestra:

Los objetos participando de la interaccin

La secuencia de mensajes intercambiados

Un diagrama de secuencia contiene:

Objetos con su lnea de vida

Mensajes intercambiados entre objetos de una secuencia ordenada

Lnea de vida activa

OBJETOS

Los diagramas de secuencia constan de objetos que se representan de modo


usual: rectngulo con nombre, mensajes entre los objetos representados por
lneas continuas con una punta de flecha y el tiempo representado como una
progresin 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 extensin que esta debajo (en forma descendente) de cada objeto ser una
lnea discontinua conocida como la lnea de vida de un objeto, junto con la lnea de
vida de un (objeto rectngulo) se le conoce como activacin, el cual una operacin
que realiza el objeto la interpreta como la duracin de la activacin.

LINEA DE VIDA

Una lnea de vida representa un participante individual en un diagrama de secuencia. Una


lnea de vida usualmente tiene un rectngulo que contiene el nombre del objeto. Si el
nombre es self entonces eso indica que la lnea de vida representa el clasificador que posee
el diagrama de secuencia.

MENSAJE
Un mensaje que va de un objeto a otro pasa de la lnea de vida de un objeto al de otro. Un
objeto puede enviarse un objeto a si mismo es decir de su lnea de vida as propia lnea de
vida.

Un mensaje puede ser simple, sncrono y asncrono

Mensaje simple: es la transferencia del control de un objeto a otro.

Mensaje sncrono: es cuando el objeto espera la respuesta a ese mensaje antes de


continuar con su trabajo.

Mensaje asncrono: es cuando el objeto no espera la respuesta a ese mensaje antes


de continuar.

TIEMPO
El diagrama representa el tiempo en direccin vertical. El tiempo se inicia en la parte
superior y avanza hacia la parte inferior. Un mensaje que este mas cerca de la parte superior
ocurrir antes que uno que est cerca de la parte inferior.
Con ellos el diagrama de secuencia tiene 2 dimensiones: la dimensin horizontal (es la
disposicin de los objetos) y la dimensin vertical (muestra el paso del tiempo).
La siguiente figura muestra el conjunto basico de simbolos del diagrama desecuencia, junto
con los simbolos de su funcionamiento.

RECURCIVIDAD
En ocasiones un objeto posee una operacin que se invoca a si misma. A esto se le conoce
como recursividad y es una caracterstica fundamental de varios lenguajes de
programacin.
La siguiiente figura muestra este tipo de reprecentacion.

PALABRAS CLAVES

Diagrama

Secuencia

Objeto

Mensaje

Tiempo

Recurcividad

Linea

Vida

self

OBJETIVO

Descubrir las interfases requeridas para cada objeto y validar que cada interfase se usa
realmente.
El diagrama de Secuencias modela interacciones entre objetos. Ya que estas interacciones
pueden ser muy complejas, se modelan un pequeo juego de interacciones como un solo
escenario.

EJEMPLO
Juego del ajedrez

El diagrama de secuencia es un tipo de diagrama usado para modelar


interaccin entre objetos en un sistema segn UML. En ingls se pueden

encontrar como "sequence diagram", "event-trace diagrams", "event


scenarios" o "timing diagrams"

Diagramas de secuencia UML: Referencia


Visual Studio 2012
Otras versiones

En Visual Studio Ultimate, un diagrama de secuencia muestra una interaccin, que


representa la secuencia de mensajes entre las instancias de clases, componentes,
subsistemas o actores. El tiempo fluye hacia abajo en el diagrama y muestra el flujo de
control de un participante a otro. Para crear un diagrama de secuencia de UML, en el men
Arquitectura, haga clic en Nuevo diagrama.
El diagrama muestra instancias y eventos de ejemplo, en lugar de clases y mtodos; ms de
una instancia del mismo tipo puede aparecer en el diagrama y ms de una aparicin del
mismo mensaje tambin puede aparecer.
Existen dos tipos de diagrama de secuencia:

Diagramas de secuencia basados en cdigo se pueden generar a partir del cdigo de


programa .NET, y se pueden colocar dentro de cualquier proyecto. Para obtener ms
informacin, vea Visualizar cdigo generando diagramas de secuencia.

Los diagramas de secuencia UML forman parte de un modelo UML y slo existe
dentro de los proyectos de modelado UML. Para obtener ms informacin, vea
Diagramas de secuencia de UML: Instrucciones.

Los dos tipos de diagrama de secuencia son similares, aunque algunas propiedades de los
elementos son diferentes.
Para obtener ms informacin acerca de cmo se crean y dibujan diagramas de modelado,
vea Cmo: Modificar diagramas y modelos UML.
Leer diagramas de secuencia
En la tabla siguiente se describen los elementos que se pueden ver en un diagrama de
secuencia. Para obtener informacin sobre las propiedades de estos elementos, vea
Propiedades de los elementos de diagramas de secuencia de UML.
Para obtener informacin acerca de cmo usar los diagramas de secuencia, vea Diagramas
de secuencia de UML: Instrucciones.

Forma

Elemento

Lnea de vida

Descripcin

Una lnea vertical que representa la secuencia de eventos que se


producen en un participante durante una interaccin, mientras el
tiempo avanza. Este participante puede ser una instancia de una
clase, componente o actor.

Un participante que es externo al sistema que est desarrollando.


2

Actor

Mensaje

Puede hacer que aparezca un smbolo de actor en la parte superior


de una lnea de vida estableciendo su propiedad Actor.

El remitente espera una respuesta a un mensaje sincrnico antes


de continuar. El diagrama muestra la llamada y el retorno. Los

sincrnico

mensajes sincrnicos se utilizan para representar llamadas de


funcin ordinarias dentro de un programa, as como otros tipos de
mensaje que se comportan de la misma manera.

Mensaje
asincrnico

Un mensaje que no requiere una respuesta antes de que el


remitente contine. Un mensaje asincrnico muestra slo una
llamada del remitente. Se utiliza para representar la comunicacin
entre subprocesos diferentes o la creacin de un nuevo
subproceso.

Incidencia de
ejecucin

Un rectngulo sombreado vertical que aparece en la lnea de la


vida de un participante y representa el perodo durante el que el
participante est ejecutando una operacin.
La ejecucin comienza donde el participante recibe un mensaje.
Si el mensaje inicial es un mensaje sincrnico, la ejecucin
finalizar con una flecha de devolucin al remitente.

Mensaje de
devolucin de
llamada

Un mensaje que vuelve a un participante que est esperando la


devolucin de una llamada anterior. La aparicin de ejecucin
resultante aparece encima de la existente.

Automensaje

Un mensaje de un participante a s mismo. La aparicin de


ejecucin resultante aparece encima de la ejecucin de envo.

Crear mensajes

Un mensaje que crea un participante. Si un participante recibe un


mensaje de creacin, este debe ser el primer mensaje que recibe.

Mensaje
encontrado

Un mensaje asincrnico de un participante desconocido o no


especificado.

10

Mensaje perdido

Un mensaje asincrnico a un participante desconocido o no


especificado.

11

Comentario

Un comentario se puede adjuntar a cualquier punto de una lnea

de vida.

12

13

Uso de
interaccin

Fragmento
combinado

Agrega una secuencia de mensajes que se definen en otro


diagrama.
Para crear un Uso de interaccin, haga clic en la herramienta y
arrastre por las lneas de vida que desee incluir.

Una coleccin de fragmentos. Cada fragmento puede agregar uno


o ms mensajes. Existen distintos tipos de fragmentos
combinados. Para obtener ms informacin, vea Describir el flujo
de control con fragmentos de diagramas de secuencia de UML.
Para crear un fragmento, haga clic con el botn secundario en un
mensaje, elija Rodear con y, a continuacin, haga clic en un tipo
de fragmento.

14

Proteccin de
fragmentos

Se puede utilizar para enunciar una condicin relativa a si el


fragmento se producir.
Para establecer la proteccin, seleccione un fragmento, seleccione
despus la proteccin y escriba un valor.

Evento de
destruccin

Representa el punto en el que se elimina el objeto o ya no est


disponible. Aparece en la parte inferior de cada lnea.

Interaccin

La coleccin de mensajes y lneas de vida que se muestra en el


diagrama de secuencia. Para ver las propiedades de una
interaccin, debe seleccionarla en el Explorador de modelos
UML.

Diagrama de
secuencia

Diagrama en el que se muestra una interaccin. Para ver sus


propiedades, haga clic en una parte vaca del diagrama.
Nota
Los nombres del diagrama de secuencia, la interaccin que
muestra y el archivo que contiene el diagrama pueden ser diferen

Diagramas de secuencia UML

Caractersticas:

Barra de herramientas para acceder rpidamente a los elementos de los diagramas

Asigne elementos a diferentes capas del diagrama, que se pueden ver u ocultar

Los mensajes de los diagramas de secuencia pueden hacer referencia a operaciones


de clases

Genere cdigo Java, C# o VB .NET a partir de diagramas de secuencia

Genere diagramas de secuencia a partir de cdigo Java, C# o VB .NET

Sincronice el diagrama y el cdigo con la funcin de ingeniera de ida y vuelta

Nmero ilimitado de operaciones de deshacer/rehacer

Prubelo gratis

Los diagramas de secuencia describen la interaccin entre los objetos de una


aplicacin y los mensajes recibidos y enviados por los objetos
Cuando cree un diagrama de secuencia nuevo, UModel 2013 muestra automticamente la
barra de herramientas de diagrama de secuencia. Desde ella tendr acceso directo a los
distintos elementos: lneas de vida, fragmentos combinados, puertas, mensajes de llamada y
respuesta, flechas de mensajes que crean lneas de vida nuevas o destruyen objetos ya
existentes, etc. UModel ofrece diferentes opciones especiales para diagramas de secuencia
para que pueda crear diagramas UML a su manera. Por ejemplo, con UModel puede:

Crear automticamente una respuesta sintcticamente correcta cada vez que se


aada un mensaje

Seleccionar la opcin "Ir a la operacin" en el men contextual para asignar un


mensaje basado en una operacin presente en la estructura del modelo

Seleccionar el uso de nmeros de mensaje consecutivos o con notacin decimal


(anidados) en la barra de herramientas de diagrama de secuencia

Aplicar restricciones de tiempo a secuencias, mediante notaciones de diagrama de


ciclo de vida

En un diagrama de secuencia ponemos varios de los objetos o clases


que forman parte de nuestro programa y ponemos qu llamadas van
haciendo unos a otros para realizar una tarea determinada.
Hacemos un diagrama de secuencia por cada caso de uso o para una
parte de un caso de uso (lo que llamo subcaso de uso). En nuestro
ejemplo de ajedrez, podemos hacer diagramas de secuencia para "jugar
partida" o bien para partes de "jugar partida", como puede ser "mover
pieza".
El detalle del diagrama depende de la fase en la que estemos, lo que
pretendamos contar con el diagrama y a quin. En una primera fase de
diseo podemos poner clases grandes y ficticias, que representen un
paquete/librera o, si nuestro programa est compuesto por varios
ejecutables corriendo a la vez, incluso clases que representen un
ejecutable.
Si estamos en una fase avanzada, estamos diseando el programa y
queremos dejar bien atados los detalles entre dos programadores, que
cada uno va a programar una de las clases que participan, entonces
debemos posiblemente ir al nivel de clase real de codificacin y mtodo,
con parmetros y todo, de forma que los programadores tengan claro
que mtdos van a implementar, que deben llamar de la clase del otro,

etc. Incluso si es un diagrama para presentar al cliente, podemos hacer


un diagrama de secuencia en el que slo salga el actor "jugador" y una
nica clase "juego ajedrez" que representa nuestro programa completo,
de forma que el cliente vea qu datos y en qu orden los tiene que
meter en el programa y vea qu salidas y resultados le va a dar el
programa

También podría gustarte