Las metodologías de desarrollo de software han evolucionado rápidamente durante las últimas décadas, pasando de la documentación pesada y previa del modelo cascada a prácticas ágiles ligeras e iterativas. Durante mucho tiempo, el tradicional «caso de uso»—un pilar de la ingeniería de software orientada a objetos—se consideró incompatible con los marcos modernosmarcos ágilescomo Scrum y Kanban. A menudo se criticaba por ser demasiado centrado en documentos y lento.
EntrenCaso de uso 2.0. Introducido por Ivar Jacobson, Ian Spence y Brian Kerr, este marco moderno reinventa el caso de uso clásico para que sea ligero, escalable y versátil. Está diseñado para cerrar la brecha entre los beneficios estructurales de los casos de uso y la flexibilidad del desarrollo ágil.
El caso de uso 2.0 es la evolución moderna del enfoque de casos de uso, desarrollado específicamente para abordar las limitaciones de la recopilación tradicional de requisitos. A diferencia de su predecesor, que a menudo requería detalles exhaustivos antes de comenzar la codificación, el caso de uso 2.0 se centra en lo esencial, la entrega iterativa y el corte vertical.
La innovación central de este marco es la capacidad de dividir los casos de uso en piezas más pequeñas y manejables conocidas comorebanadas de caso de uso. Esto permite a los equipos mantener la «visión general» de la arquitectura del sistema al mismo tiempo que entregan valor en pequeños incrementos, adaptados a los sprints, compatibles con Scrum, SAFe y Agile disciplinado.
El caso de uso 2.0 se basa en seis principios directrices que garantizan que el proceso permanezca ágil y orientado al valor:
Para comprender cómo encaja Use-Case 2.0 en Agile, uno debe entender sus artefactos. El marco simplifica la documentación pesada del pasado en tres componentes principales.
Un caso de uso aún describe una interacción orientada a objetivos entre un actor (usuario) y el sistema. Sin embargo, en la versión 2.0, no se detalla completamente desde el principio. Comienza con un nombre, una breve descripción y elescenario principal de éxito. Los detalles sobre flujos alternativos y excepciones se añaden «justo a tiempo» cuando se priorizan para el desarrollo.
Larebanada del caso de usoes la innovación más crítica en este marco. Una rebanada es un corte vertical a través de un caso de uso que constituye un flujo completo de valor. Incluye una parte de la narrativa (historias), los casos de prueba relevantescasos de prueba, y el código necesario para implementarlo.
La división permite que un único caso de uso (por ejemplo, «Procesar pedido») se divida entre múltiples sprints:
Cada rebanada actúa como un elemento del backlog: es estimable, comprobable y entregable dentro de una iteración.
Mientras las rebanadas se gestionan en el trabajo diario, elmodelo del caso de usopermanece como el mapa. Es la agregación de todos los casos de uso, proporcionando el contexto y la visión arquitectónica que a menudo faltan en las historias de usuario individuales. Esto resuelve el problema común de Agile en el que un equipo completa cientos de historias pero pierde de vista el comportamiento general del sistema.
Muchos equipos tienen dificultades paraelegir entre historias de usuario y casos de uso. Use-Case 2.0 argumenta que no tienes que elegir; ofrece la estructura de los casos de uso con la agilidad de las historias.
| Aspecto | Casos de uso clásicos (pre-2.0) | Historias de usuario | Casos de uso 2.0 |
|---|---|---|---|
| Esfuerzo inicial | Alto (especificaciones detalladas) | Muy bajo | Bajo → Incremental |
| Visión general | Sí | A menudo perdido | Sí (a través del modelo de casos de uso) |
| Capacidad iterativa | Pobre | Excelente | Excelente (a través de fragmentos) |
| Rastreabilidad | Fuerte | Débil | Fuerte (fluye hacia las pruebas) |
| Enfoque en pruebas | Manual / Etapa tardía | Criterios de aceptación | Incorporado por fragmento (TDD) |
| Mejor entorno | Cascada / Estructurado | Proyectos ágiles simples | Complejos / Ágiles empresariales |
Adoptar esta metodología implica un flujo de trabajo cíclico que encaja perfectamente en los sprints ágiles estándar:
Use-Case 2.0 es particularmente eficaz para sistemas empresariales, industrias reguladas o dominios complejos donde las historias de usuario simples son insuficientes.
Proporcionaescalabilidadpermitiendo a los equipos comenzar de forma ligera y añadir formalidad solo donde sea necesaria. Garantizaenfoque en el valorobligando a los equipos a pensar en recorridos completos desde el punto de vista del usuario en lugar de tareas técnicas aisladas. Finalmente, resuelve el problema dela deuda de documentaciónel problema; porque el modelo de casos de uso se actualiza de forma iterativa, la documentación evoluciona junto con el código, actuando como un conjunto de requisitos “vivo” en lugar de un archivo obsoleto.