Después de identificar casos de uso, el equipo debe decidir cuáles analizar, construir o entregar primero. Esa decisión se conoce como priorización.
No todos los casos de uso tienen el mismo valor, riesgo, urgencia o esfuerzo. Algunos son esenciales para que el sistema tenga sentido. Otros pueden esperar. Algunos parecen pequeños pero eliminan grandes riesgos técnicos. Otros son deseables, pero no críticos.
Priorizar casos de uso permite planificar entregas, enfocar el análisis y avanzar primero sobre las funcionalidades más importantes.
La priorización ayuda a responder preguntas prácticas:
Sin priorización, el equipo puede invertir mucho esfuerzo en funcionalidades secundarias mientras quedan pendientes casos críticos.
Una priorización razonable combina varios criterios. No alcanza con mirar solo el valor de negocio o solo el esfuerzo técnico. También importan riesgo, urgencia, dependencias, frecuencia de uso y aprendizaje esperado.
Una matriz simple permite comparar casos de uso según criterios clave. Los casos con alto valor, alta urgencia o alto riesgo suelen requerir atención temprana. El esfuerzo ayuda a decidir el orden y a planificar entregas realistas.
El valor para el negocio indica cuánto aporta un caso de uso a los objetivos de la organización. Puede estar relacionado con ingresos, reducción de costos, mejora del servicio, cumplimiento legal, eficiencia o satisfacción del usuario.
Por ejemplo, en un sistema de turnos médicos, Solicitar turno tiene alto valor porque permite cumplir el objetivo principal del sistema. Cambiar el color de una preferencia visual puede tener valor menor.
Un caso de uso también puede priorizarse por el valor que entrega al usuario. Si una funcionalidad resuelve una necesidad frecuente o dolorosa, puede merecer prioridad alta.
Por ejemplo, Cancelar turno puede ser importante para pacientes y para la clínica porque libera disponibilidad y evita ausencias innecesarias.
El riesgo indica incertidumbre técnica, funcional, legal, operativa o de integración. Un caso de uso riesgoso puede priorizarse temprano para aprender antes y evitar sorpresas al final.
Ejemplos de riesgos:
La urgencia indica cuándo se necesita una funcionalidad. Puede estar determinada por una fecha legal, una campaña, un compromiso con usuarios, una temporada de alta demanda o una necesidad operativa inmediata.
Un caso puede tener valor moderado pero urgencia alta si se necesita para una fecha específica.
El esfuerzo estima cuánto trabajo requiere analizar, diseñar, construir y probar el caso de uso. No debe usarse como único criterio, pero ayuda a ordenar entregas.
A veces conviene entregar primero casos de alto valor y esfuerzo bajo. Otras veces conviene abordar temprano casos de alto riesgo aunque requieran más trabajo.
Algunos casos de uso dependen de otros. Por ejemplo, Solicitar turno puede depender de que exista Administrar agenda o Configurar horarios de atención.
Ignorar dependencias puede llevar a planificar una funcionalidad antes de tener sus bases. Por eso conviene identificar qué casos habilitan a otros.
Una funcionalidad usada muchas veces por día puede merecer más atención que una usada ocasionalmente. La frecuencia influye en prioridad, usabilidad, rendimiento y calidad de pruebas.
En un sistema de turnos, Solicitar turno y Consultar agenda diaria probablemente tengan mayor frecuencia que Generar reporte anual.
Algunos casos de uso permiten aprender sobre el dominio, la tecnología o una integración clave. Priorizarlos temprano puede reducir incertidumbre.
Por ejemplo, si el sistema debe integrarse con una obra social, conviene probar esa integración antes de que el proyecto esté demasiado avanzado.
Una forma sencilla de priorizar es clasificar cada caso de uso como:
Esta clasificación puede ser suficiente en proyectos pequeños o medianos.
Una priorización inicial podría ser:
| Caso de uso | Valor | Riesgo | Prioridad |
|---|---|---|---|
| Solicitar turno | Alto | Alto | Alta |
| Administrar agenda | Alto | Medio | Alta |
| Cancelar turno | Medio | Medio | Media |
| Enviar recordatorio | Medio | Medio | Media |
| Generar reporte mensual | Bajo | Bajo | Baja |
La priorización ayuda a definir qué casos de uso entran en cada versión. Una primera versión puede incluir el conjunto mínimo de funcionalidades necesarias para entregar valor.
Ejemplo:
Los casos de uso de alta prioridad suelen necesitar más detalle antes. Pueden requerir especificaciones completamente vestidas, revisión con usuarios, prototipos y pruebas más completas.
Los casos de baja prioridad pueden permanecer en formato breve hasta que se acerque su implementación.
La prioridad no es fija para siempre. Puede cambiar si aparecen nuevas reglas, riesgos, fechas, necesidades de usuarios o restricciones técnicas.
Por eso conviene revisar periódicamente la priorización y no tratarla como una decisión definitiva e inmutable.
Al priorizar casos de uso, suelen aparecer estos errores:
Antes de cerrar la priorización, conviene revisar:
La priorización de casos de uso conecta el análisis con la planificación. Permite decidir qué funcionalidades estudiar, construir y probar primero, considerando valor y riesgo.
Una buena priorización ayuda a entregar antes lo más importante y a reducir incertidumbre. En el próximo tema estudiaremos la trazabilidad entre casos de uso, requisitos y pruebas.