MoSCoW es una técnica de priorización comúnmente utilizada en Scrum. La priorización es su capacidad para ver qué tareas y objetivos son más importantes en el momento actual. Al determinar sus prioridades, trate de centrarse en lo que es más importante a expensas de las actividades de menor valor.
El término MoSCoW en sí mismo es un acrónimo derivado de la primera letra de cada una de las cuatro categorías de priorización, como se muestra en la siguiente figura:
- Debe tener – Los requisitos etiquetados como «DEBE» tienen que ser incluidos en el cuadro de tiempo de entrega actual para que sea un éxito. Si no se incluye ni siquiera un requisito «DEBE», la entrega del proyecto debe considerarse un fracaso.
- Debería tener – Los requisitos «DEBERÍA» también son críticos para el éxito del proyecto, pero no son necesarios para la entrega en el cuadro de tiempo de entrega actual.
- Podría tener – Los requisitos etiquetados como «PODRÍA» son menos críticos y a menudo se consideran agradables de tener.
- ◾ No tendrá – Los requisitos etiquetados como «NO» son los menos críticos, los que menos se amortizan, o no son apropiados en ese momento.
MoSCoW se utiliza a menudo con timeboxing, donde se fija una fecha límite para que el enfoque debe ser en los requisitos más importantes, y como tal es una técnica comúnmente utilizada en los enfoques de desarrollo de software ágil como Scrum y DSDM.
Toma un cuerpo humano como un ejemplo hipotético:
- Debe- un corazón es «debe». Sin él, no hay organismo vivo. ¿Qué es imprescindible en su aplicación?
- Deber- una mano es «deber». Sin ella es difícil. Pero se puede sobrevivir incluso sin mano. Bueno, en la mayoría de los casos.
- Podría- el pelo es «podría». Está bien tenerlos, incluso te ves más bonito, pero definitivamente sobrevivirás sin ellos
- No lo haré- desperdicio innecesario. Por cierto, ¿hay algo que «no» en un cuerpo? (Probablemente, podría ser tu apéndice…)
Priorización del Backlog del Producto utilizando el método MoSCoW
El Product Owner es el responsable de tener listo el Backlog del Producto y de priorizar los elementos del mismo. La priorización es uno de los aspectos más importantes de cualquier forma de trabajo de desarrollo porque la elección de lo correcto permite maximizar el valor entregado en un Sprint. Los ítems del Product Backlog deben ser ordenados de tal manera que los requerimientos con máximo valor de negocio sean completados primero y faculta a un equipo a moverse en una dirección uniforme hacia un objetivo común.