Para que el diagrama comience desde varios puntos, añade un comentario especial al principio de tu requisito:
// @initial: estado_A, estado_B
Esto creará flechas desde el nodo de inicio (`[*]`) hacia `estado_A` y `estado_B`.
Para modelar un evento que es recibido pero no causa un cambio de estado, usa la acción `no.operacion`. El sistema lo visualizará automáticamente como un bucle.
Si escribes:
estado_actual ⇒ [no.operacion(evento_ignorado)] ⇒ no_cambia
El diagrama mostrará una flecha que sale de `estado_actual` y vuelve a entrar en él, etiquetada como `no.operacion`.
La herramienta analiza continuamente los requisitos seleccionados para detectar los siguientes errores lógicos y de sintaxis:
Ocurre cuando una línea parece una regla (porque contiene `⇒`), pero no cumple con la estructura esperada, por ejemplo, por falta de corchetes o paréntesis. Esa línea no se renderizará.
// ADVERTENCIA: Falta un ']' al final del evento
A ⇒ [no.operacion((BT1).cambio) ⇒ B
Ocurre cuando desde un mismo estado, el mismo evento o condición puede llevar a dos estados finales diferentes. Esto crea ambigüedad.
// ADVERTENCIA: 'evento' lleva a dos sitios desde 'A'
A ⇒ [accion(evento)] ⇒ B
A ⇒ [accion(evento)] ⇒ C
Es un estado que no es final, pero del que no sale ninguna transición. Si el sistema llega aquí, se queda "atrapado" sin poder continuar.
// ADVERTENCIA: 'B' es un callejón sin salida
A ⇒ [evento1] ⇒ B
C ⇒ [evento2] ⇒ D
Es un estado definido en las reglas al que es imposible llegar desde cualquier estado inicial. Representa "código muerto" en el diagrama.
// @initial: A
// ADVERTENCIA: Es imposible llegar a 'C'
A ⇒ [evento1] ⇒ B
C ⇒ [evento2] ⇒ D
La vista "Dependencia de Requisitos" genera un diagrama de alto nivel que muestra cómo se conectan lógicamente los diferentes requisitos entre sí.
La aplicación detecta una dependencia de un Requisito A hacia un Requisito B si se cumple una de estas dos condiciones:
// @initial:
) del Requisito B.
⇒
).
⇒
pero nunca a la izquierda. ¡Asegúrate de que tus flujos terminan en estados bien definidos!
// Requisito A
A ⇒ [evento] ⇒ Estado_Intermedio
// Requisito B
// @initial: Estado_Intermedio
Estado_Intermedio ⇒ [otro_evento] ⇒ C
// Resultado: Se dibujará una flecha desde "Requisito A" hacia "Requisito B".
Tipo | Nombre |
---|
Puedes seleccionar y copiar este bloque de texto para pegarlo en una hoja de cálculo.