miércoles, 5 de julio de 2017

Debilidades de SCRUM


          Estamos seguros de que si has llegado hasta este blog, ya conoces SCRUM, no obstante, si me permites, voy a hacer primero un breve resumen.


Resumen muy resumido de SCRUM


          Scrum es una metodología ágil que pretende dividir un problema grande en problemas pequeños de manera adaptativa y de la mano del cliente. En lugar de realizar una planificación del proyecto al inicio del mismo, cuando no se tiene suficiente información, lo que va haciendo SCRUM es pequeñas iteraciones cortas en el tiempo, donde cada iteración se conoce como sprint, y al finalizar cada sprint, se obtiene un producto entregable o enseñable, con funcionalidad real.


El cliente puede ver resultados progresivamente desde muy pronto en el tiempo, lo cual le permite transmitir feedback al equipo de desarrollo para realizar su trabajo mas acorde a los deseos del cliente.


Tiene una serie de roles, como el Product Owner, que es quien ejerce de nexo entre el cliente y el equipo y va marcando los hitos en función de la inteligencia de negocio. El Equipo de desarrollo es quien trabaja durante el sprint para lograr un incremento funcional al final del sprint. El Scrum Master es quien se ocupa de que se cumplan las reglas de scrum.  El objetivo es que el equipo sea autoorganizado y multifuncional.


Roles de Scrum

            - Product Owner
            - Scrum Master
            - Equipo de desarrollo

           
Artefactos de Scrum

            - Product Backlog (lista de funcionalidades del producto)
            - Sprint Backlog (subconjunto de la anterior que se realizara en el sprint)
            - Incremento de producto (resultado del sprint, entregable)


Hay algunas reuniones definidas, como la "Daily Scrum", que es una reunión diaria que se realiza de pie, donde cada uno cuenta qué hizo ayer, que hará hoy y si hay algún impedimento para realizar su trabajo. También destaca la reunión de "Scrum Retrospective", donde el equipo se inspecciona a sí mismo y trata de mejorar algunos aspectos que considera que son mejorables.


Reuniones SCRUM

            - Daily Scrum
            - Scrum Retrospective
            - Sprint Planning
            - Sprint Review


En esencia, esto es SCRUM
Y es una metodología que se ha demostrado que funciona si se aplica correctamente. Para ampliar conocimientos sobre scrum, puedes visitar la wikipedia https://en.wikipedia.org/wiki/Scrum_(software_development)
y también la web de SCRUM de sus creadores:


Las virtudes de SCRUM están claras, pero queremos conocer también cuales son sus limitaciones o en que puntos es más débil.






Debilidades de SCRUM


- Scrum es dificil de aplicar en una startup de pocos empleados: Scrum habla de la gestión de un solo proyecto y realizar iteraciones en torno a él. En una startup que está naciendo o creciendo, normalmente hay varios proyectos. (por pura supervivencia, suele ser así). Es muy dificil poner en práctica scrum en equipos tan reducidos, con varios proyectos a la vez.


- No queda muy claro cómo resuelve Scrum las incidencias de carácter grave que deben resolverse en el momento en que se producen y no estaban contempladas en el sprint.


- Scrum es contrario a realizar una planificacion inicial del proyecto de manera detallada, de hecho, scrum no proporciona herramientas para realizar planificaciones largas. Sin embargo, los clientes, antes de empezar quieren saber cuanto tiempo va a costar el proyecto y cuanto les va a costar. ¿cómo puede scrum dar respuesta al cliente?


- Derivado de lo anterior. Muchos clientes pueden no confiar en un proyecto sin tener garantias de cuanto tiempo va a durar y cuanto va a costarle. Al menos a día de hoy, la mentalidad de los clientes sigue siendo la misma de siempre, aunque las metodologías avancen. Eso implica que se van a perder muchos clientes por falta de confianza o información.


- Scrum no habla de como se factura el proyecto. ¿En cada iteración el cliente paga un poco? ¿Paga todo al final? ¿Paga la mitad al inicio y la mitad al final? El problema es que scrum no es capaz de decir cuanto va a durar el proyecto. Las empresas pueden encontrarse con problemas de flujo de caja si el cliente no va pagando iterativamente, ya que se debe pagar a los empleados mensualmente, y el cliente no querrá pagar hasta no tener terminado el trabajo.


- Derivado del problema anterior, Scrum no menciona en ningún momento el tema económico o financiero y consideramos que eso es un error. La gestión de proyectos debe ser conocedora de las finanzas de la empresa, no ser totalmente ajena y opaca a la facturación de los proyectos, incluso involucrarse en realizar estimaciones de costes. Sino, es probable que el proyecto no pueda salir adelante, no por problemas de rendimiento, organización o gestión, sino por problemas financieros.





En resumen, las limitaciones o debilidades son

- Scrum no es aplicable a todo tipo de empresas. (aunque sean de software)
- Scrum no se implica en el aspecto financiero de la empresa
- Scrum no da respuestas iniciales al cliente.


En conclusión

Existe una recopilación aún mayor de debilidades de SCRUM en http://tecnificator.com/index.php/2017/08/21/debilidades-y-desventajas-de-scrum-recopilacion/

- Scrum es muy útil, pero hay que saber dónde se puede aplicar y dónde no. Cómo se debe aplicar y qué limitaciones tiene para combatirlas.
- El aspecto económico no debe ser opaco al proyecto.

- Hay que buscar estrategias alternativas para dar estimaciones iniciales lo más acertadas posible sin que hacerlas resulte muy costoso.