La trazabilidad permite relacionar elementos del análisis, diseño, desarrollo y pruebas. En el contexto de casos de uso, ayuda a saber de dónde surge una funcionalidad, qué requisitos la detallan, qué reglas la condicionan y qué pruebas verifican su cumplimiento.
Sin trazabilidad, un cambio aparentemente pequeño puede generar dudas: ¿qué casos de uso afecta?, ¿qué requisitos deben actualizarse?, ¿qué pruebas hay que repetir?, ¿qué pantallas o servicios pueden cambiar?
La trazabilidad no es solo una actividad documental. Es una herramienta práctica para controlar cambios, validar cobertura y reducir riesgos durante el proyecto.
Trazar significa establecer una relación explícita entre dos o más elementos. Por ejemplo, una necesidad del usuario puede relacionarse con un caso de uso; ese caso de uso puede relacionarse con requisitos funcionales; y esos requisitos pueden relacionarse con pruebas.
La trazabilidad permite recorrer esas relaciones hacia adelante y hacia atrás. Desde una necesidad se puede llegar a las pruebas que la verifican. Desde una prueba fallida se puede volver al requisito y al caso de uso que intenta validar.
Una cadena típica conecta la necesidad inicial con el caso de uso, los requisitos derivados, las reglas de negocio, los elementos de diseño y las pruebas. Esta conexión ayuda a comprobar que no se construyen funcionalidades sin justificación y que no quedan necesidades sin verificar.
La trazabilidad hacia adelante parte de una necesidad o caso de uso y permite ver qué elementos lo desarrollan o verifican.
Ejemplo:
La trazabilidad hacia atrás permite tomar un requisito, una prueba o una funcionalidad implementada y encontrar su origen. Esto ayuda a detectar trabajo sin justificación o pruebas desconectadas de objetivos reales.
Por ejemplo, si existe una prueba para validar recordatorios por mensaje, la trazabilidad debería indicar qué caso de uso o requisito justifica ese comportamiento.
Para lograr trazabilidad, cada elemento importante necesita un identificador estable. Por ejemplo:
Los identificadores permiten crear relaciones claras sin depender solo de nombres que pueden cambiar.
Una matriz de trazabilidad es una tabla que muestra relaciones entre elementos. Puede ser simple o muy detallada, según el proyecto.
| Caso de uso | Requisito funcional | Regla de negocio | Prueba |
|---|---|---|---|
| CU-01 Solicitar turno | RF-01 Mostrar horarios disponibles | RN-01 No reservar horarios ocupados | TC-01 Reserva exitosa |
| CU-01 Solicitar turno | RF-02 Registrar reserva | RN-02 Evitar doble reserva | TC-02 Horario ya reservado |
| CU-02 Cancelar turno | RF-05 Cancelar reserva existente | RN-03 Cancelación hasta 24 horas antes | TC-06 Cancelación fuera de plazo |
La trazabilidad permite verificar cobertura. Si un requisito no tiene pruebas asociadas, quizá no se está verificando. Si una prueba no se relaciona con ningún requisito, quizá está mal ubicada o falta documentar su origen.
La cobertura no garantiza calidad por sí sola, pero ayuda a detectar huecos importantes.
Cuando cambia un caso de uso, la trazabilidad ayuda a identificar impacto. Por ejemplo, si cambia la regla de cancelación de turnos, se pueden localizar los requisitos y pruebas relacionados.
Esto evita que el equipo actualice la especificación pero olvide modificar pruebas, mensajes, reglas o documentación relacionada.
La trazabilidad puede llegar al nivel de flujos. Un flujo alternativo o una excepción pueden tener pruebas específicas.
Ejemplo:
Las reglas de negocio suelen afectar varios casos de uso. Por eso conviene trazarlas explícitamente.
Por ejemplo, la regla "un médico no puede tener dos turnos en el mismo horario" puede afectar Solicitar turno, Modificar turno y Registrar turno presencial. Una prueba de esa regla debe considerar esos contextos.
Los requisitos no funcionales también deben trazarse. Si Solicitar turno exige respuesta en menos de 3 segundos, debe existir alguna verificación de rendimiento relacionada.
Si el caso de uso maneja datos sensibles, la trazabilidad puede relacionarlo con requisitos de privacidad, permisos y auditoría.
La trazabilidad puede mantenerse con diferentes herramientas:
La herramienta importa menos que la disciplina de mantener las relaciones actualizadas.
No todos los proyectos necesitan el mismo nivel de trazabilidad. En sistemas críticos, regulados o contractuales, puede ser necesaria una matriz detallada. En proyectos pequeños, puede alcanzar con relaciones simples entre casos de uso y pruebas.
La trazabilidad debe aportar control y claridad, no convertirse en una carga que nadie mantiene.
Para CU-01 Solicitar turno, podríamos tener:
Al trabajar con trazabilidad, suelen aparecer estos errores:
Antes de cerrar la trazabilidad, conviene revisar:
La trazabilidad evita que casos de uso, requisitos y pruebas queden desconectados. Permite saber por qué existe una funcionalidad, cómo se expresa en requisitos y cómo se verifica.
Cuando se mantiene con criterio, mejora el control de cambios, la cobertura de pruebas y la comunicación del equipo. En el próximo tema estudiaremos la relación entre casos de uso y prototipos de interfaz.