Diagramas de Secuencia
Los diagramas de secuencia visualizan cómo los objetos interactúan a lo largo del tiempo. Muestran el orden de los mensajes intercambiados entre participantes para lograr una tarea o escenario específico.
Conceptos Fundamentales
Participantes
Los participantes representan los objetos o actores involucrados en la interacción. Cada participante tiene una línea de vida - una línea vertical discontinua que se extiende hacia abajo y representa el tiempo.
Mensajes
Los mensajes son las comunicaciones entre participantes, mostradas como flechas horizontales entre líneas de vida. El tiempo fluye de arriba hacia abajo.
Cajas de Activación
Las cajas de activación (también llamadas especificaciones de ejecución) son rectángulos delgados en una línea de vida que muestran cuándo un participante está procesando activamente.
Crear Participantes
Usando la Herramienta de Participante
Presiona P para activar la herramienta de Participante, luego haz clic en el lienzo para colocar participantes.

Tipos de Participantes
Los participantes pueden representar diferentes tipos de entidades:
- Actor - Un usuario o sistema externo (icono de figura de palo)
- Object - Una instancia de una clase (rectángulo)
- Component - Un componente del sistema (rectángulo con estereotipo)
- Boundary - Interfaz de usuario o límite del sistema
- Control - Lógica de proceso o controlador
- Entity - Objeto de datos o de dominio
Configura el tipo de participante en el panel Inspector.
Crear Mensajes
Usando la Herramienta de Mensaje
Presiona M para activar la herramienta de Mensaje, luego:
- Haz clic en la línea de vida del participante de origen
- Arrastra a la línea de vida del participante de destino
- Suelta para crear el mensaje
Tipos de Mensajes
| Tipo | Estilo de Flecha | Descripción |
|---|---|---|
| Síncrono | Línea sólida, flecha rellena | El emisor espera respuesta |
| Asíncrono | Línea sólida, flecha abierta | El emisor continúa sin esperar |
| Retorno | Línea discontinua, flecha abierta | Respuesta a una llamada síncrona |
| Crear | Línea discontinua, flecha abierta a caja | Crea un nuevo participante |
| Destruir | Línea terminando con X | Termina un participante |

Etiquetas de Mensajes
Haz doble clic en un mensaje para editar su etiqueta. Formatos comunes:
nombreMetodo()- Llamada simple a métodonombreMetodo(param1, param2)- Llamada con parámetrosresultado := nombreMetodo()- Llamada con asignación de retorno[condicion] nombreMetodo()- Mensaje condicional (guarda)
Cajas de Activación
Las cajas de activación muestran el período durante el cual un participante está ejecutando o esperando una respuesta.
Agregar Cajas de Activación
- Selecciona un mensaje
- En el Inspector, activa "Show Activation"
- La caja de activación aparece en la línea de vida del participante receptor
Activaciones Anidadas
Cuando un participante se llama a sí mismo (llamada recursiva) o maneja múltiples llamadas anidadas, las cajas de activación se pueden apilar.

Fragmentos
Los fragmentos agrupan mensajes para mostrar lógica condicional, bucles u otro flujo de control.
Tipos de Fragmentos
| Tipo | Palabra Clave | Propósito |
|---|---|---|
| Alternativa | alt | Ramificación si-sino |
| Opción | opt | Ejecución opcional (si sin sino) |
| Bucle | loop | Ejecución repetida |
| Interrupción | break | Salida del bucle contenedor |
| Paralelo | par | Ejecución concurrente |
| Crítico | critical | Sección atómica/crítica |
Crear Fragmentos
- Selecciona los mensajes que quieres agrupar
- Haz clic derecho y elige "Add Fragment" o usa la herramienta de Fragmento
- Selecciona el tipo de fragmento
- Agrega condiciones/guardas según sea necesario

Guardas de Fragmentos
Las guardas son condiciones mostradas entre corchetes:
[x > 0]- Condición numérica[user.isAdmin]- Verificación de propiedad[else]- Rama predeterminada/sino en fragmentos alt
Reordenar Elementos
Mover Participantes
Arrastra los participantes horizontalmente para reordenarlos. Los mensajes conectados seguirán el movimiento.
Mover Mensajes
Arrastra los mensajes verticalmente para cambiar su orden en la secuencia. Esto afecta el momento/orden de la interacción.
Mejores Prácticas
- Comienza con el flujo principal - Modela primero el camino exitoso, luego agrega alternativas
- Mantenlo legible - Limita a 5-7 participantes por diagrama
- Usa nombres significativos - Etiqueta los mensajes con nombres de métodos reales o descripciones
- Muestra mensajes de retorno - Especialmente para llamadas síncronas donde el valor de retorno importa
- Usa fragmentos con moderación - Demasiados fragmentos anidados reducen la legibilidad
- Agrega notas - Usa elementos de nota para explicar lógica compleja
Ejemplo: Flujo de Inicio de Sesión
Una secuencia típica de inicio de sesión podría incluir:
- El usuario introduce credenciales
- El cliente envía solicitud de inicio de sesión al servidor
- El servidor valida con la base de datos
- La base de datos devuelve el registro del usuario
- El servidor crea la sesión
- El servidor devuelve éxito/fallo al cliente
- El cliente actualiza la interfaz
Este flujo demuestra llamadas síncronas, mensajes de retorno y posibles fragmentos alt para rutas de éxito/fallo.