Se puede aprender mucho de una solución inicial lenta, e incluso puede tener algo de valor para el usuario. En este caso la estrategia de división trata de implementar la funcionalidad en diversos grados de perfección y optimización, puede resumirse en "hazlo funcionar" y después "haz que sea rápido". Ayuda al Propietario del Producto a priorizar las historias resultantes dando prioridad a lo que sea más necesario para la gran mayoría de los clientes.
Es importante resaltar que esta estrategia se refiere a la optimización funcional, no a una optimización de código que pueda servir de excusa para incurrir en deuda técnica.
¿Cuándo aplicarla?
Cuando la funcionalidad pueda implementarse a diferentes niveles de perfeccionamiento y optimización, hacerla funcionar primero y después mejorarla para cumplir con los requerimientos no funcionales.
Ejemplo de una historia de búsqueda de hoteles:
Como visitante
Quiero buscar hoteles en un vecindario
Para poder restringir mi búsqueda a la zona donde esté ubicado
División considerando los diferentes grados de optimización para implementar la funcionalidad:
Como visitante
Quiero buscar hoteles considerando un radio a partir de una dirección base
Para poder acotar mis búsquedas
Como visitante
Quiero introducir el código postal y buscar en el vecindario
Para poder no tener que completar la dirección base
Como visitante
Quiero usar la ubicación de mi GPS y buscar en el vecindario
Para poder no tener que completar la dirección base
Como visitante
Quiero obtener los hoteles más buscados en el vecindario de forma inmediata
mientras que otros hoteles se cargan en background
Para poder obtener resultados más rápidamente
My thanks to Christiaan Verwijs on who I have based and who inspired me for this post :-)
No hay comentarios:
Publicar un comentario