En un caso de uso, actor y sistema intercambian información. El actor puede ingresar datos, seleccionar opciones o confirmar decisiones. El sistema puede mostrar resultados, solicitar correcciones, emitir comprobantes o informar errores.
Documentar datos de entrada, datos de salida y mensajes del sistema ayuda a precisar qué información participa en la interacción y qué debe comunicarse en cada momento importante.
Esto no significa diseñar la pantalla completa ni definir la base de datos. Significa aclarar qué información funcional es necesaria para cumplir el objetivo del caso de uso.
Los datos de entrada son datos que el actor, un sistema externo o un dispositivo entrega al sistema durante el caso de uso. Pueden ser escritos, seleccionados, enviados automáticamente o capturados desde otro medio.
Ejemplos en Solicitar turno:
Los datos de salida son datos que el sistema entrega al actor o a otra entidad externa. Pueden mostrarse en pantalla, enviarse por correo, entregarse como archivo, comunicarse por una integración o registrarse como comprobante.
Ejemplos:
Durante un caso de uso, los datos de entrada permiten al sistema procesar la solicitud y los datos de salida permiten al actor comprender el resultado. Los mensajes del sistema acompañan ese intercambio para guiar, confirmar o informar problemas.
Los mensajes del sistema comunican al actor qué ocurre, qué debe hacer o cuál fue el resultado. Pueden ser mensajes de confirmación, advertencia, error, solicitud de datos o información de estado.
Ejemplos:
Documentar datos no significa diseñar cada campo visual de la pantalla. El caso de uso debe indicar qué información se necesita, no necesariamente dónde aparece, de qué color es el botón o cómo se distribuye el formulario.
Por ejemplo, es válido indicar que el paciente debe seleccionar especialidad y fecha aproximada. No hace falta decidir en el caso de uso si esos datos aparecen en una lista desplegable, un calendario o una tarjeta visual, salvo que esa decisión sea funcionalmente relevante.
Al documentar datos de entrada, conviene distinguir cuáles son obligatorios y cuáles opcionales. Esto permite definir validaciones y mensajes claros.
Ejemplo:
| Dato | Tipo | Obligatoriedad | Observación |
|---|---|---|---|
| Especialidad | Selección | Obligatorio | Permite filtrar profesionales disponibles. |
| Profesional | Selección | Opcional | Puede elegirse si el paciente prefiere un médico específico. |
| Fecha aproximada | Fecha | Obligatorio | Debe ser igual o posterior a la fecha actual. |
| Correo de confirmación | Texto | Condicional | Obligatorio si el paciente desea recibir confirmación por correo. |
Los datos de entrada suelen estar asociados a validaciones. Algunas validaciones son simples, como formato o obligatoriedad. Otras dependen de reglas de negocio.
Ejemplos:
Algunos datos no los ingresa el actor directamente, sino que el sistema los calcula o deriva. Por ejemplo, el código de reserva, la fecha de creación, el estado inicial del turno o el usuario que realizó la operación.
Estos datos pueden ser importantes para la postcondición, auditoría o pruebas, aunque no sean datos de entrada del actor.
Si el caso de uso involucra un sistema externo, conviene indicar qué información se envía y qué respuesta se espera.
Por ejemplo, para enviar una confirmación de turno, el sistema puede enviar al servicio de mensajería: destinatario, fecha, hora, profesional y texto del mensaje. La salida esperada puede ser confirmación de envío o aviso de falla.
Los mensajes de confirmación informan que una operación se completó correctamente. Deben ser claros y contener la información necesaria para que el actor entienda el resultado.
Ejemplo:
Los mensajes de error deben explicar el problema y, cuando sea posible, orientar la recuperación. No deben limitarse a códigos técnicos incomprensibles.
Ejemplo poco útil:
Ejemplo más claro:
Las advertencias informan una condición importante antes de que el actor continúe. No necesariamente bloquean la operación.
Ejemplos:
Cuando el caso de uso maneja datos personales, médicos, financieros o sensibles, debe considerarse qué información se muestra, quién puede verla y qué se envía a sistemas externos.
Por ejemplo, un recepcionista quizá pueda ver datos administrativos del turno, pero no información clínica sensible. Estas restricciones pueden documentarse como reglas de negocio, requisitos no funcionales o políticas de acceso.
Los datos de entrada y salida ayudan a diseñar pruebas. Cada dato obligatorio debe probarse. Cada validación importante debe verificarse. Cada mensaje crítico debe comprobarse.
Por ejemplo, si la fecha no puede ser anterior al día actual, debe existir una prueba con una fecha inválida. Si el sistema debe mostrar un código de reserva, la prueba debe verificar que ese código exista y corresponda al turno creado.
Al documentar datos y mensajes, suelen aparecer estos errores:
Antes de cerrar esta parte del caso de uso, conviene revisar:
Datos de entrada, datos de salida y mensajes del sistema completan la comprensión de la interacción entre actor y sistema. Permiten saber qué información se necesita, qué resultado se comunica y cómo se orienta al usuario durante el caso de uso.
Documentarlos con claridad mejora la especificación, ayuda al diseño de interfaces y facilita las pruebas. En el próximo tema estudiaremos los requisitos no funcionales relacionados con casos de uso.