methodologies management agile scrum development-process process-management

management - agile vs scrum



Scrum Process Management-Consejos, trampas, ideas (4)

En primer lugar, ¿cuál debería ser el papel de los evaluadores, diseñadores y no desarrolladores en general en el proceso de scrum? Si son iguales a otros miembros del equipo, surgen un par de problemas. Los diseñadores y probadores generalmente trabajan en una tarea una vez que se ha completado el desarrollo, por lo que no pueden planear adecuadamente un sprint debido a esta dependencia.

Si los diseñadores y probadores no pueden planear un sprint debido a una dependencia de desarrollo, eso significa que su desarrollo no está siendo planeado correctamente. Ese es un problema que necesita ser reparado.

Su equipo debería ser capaz de decir: "La Tarea B requiere que la Tarea A se realice primero. La Tarea A llevará 8 horas, luego la Tarea B llevará 4 horas". Si las estimaciones de su tarea son precisas, entonces las dependencias no son un problema en absoluto.

Segundo, tenemos fechas límite. Estos son estrictos y tienen un gran impacto en la priorización. El resultado final es un retraso en los cambios a mitad de un sprint debido a cambios en la fecha límite o malos resultados al final del sprint. También tenemos mucho trabajo no técnico, como soporte al cliente, que debe hacerse mientras tanto y no se puede planificar ya que varía mucho.

Si esto está sucediendo, entonces el problema es que no estás haciendo Scrum. La única forma en que funciona Scrum es si la administración compra completamente en el proceso. Esto significa dejar a los desarrolladores solos durante 30 días mientras trabajan en su sprint planificado y agregar nuevos trabajos a través de los métodos que Scrum ha implementado para hacerlo. Agregue elementos de la lista de deseos al registro acumulado del producto y, luego, durante la planificación del sprint, los desarrolladores y las partes interesadas acordarán en qué se trabajará en el próximo sprint.

Si constantemente tiene problemas de soporte al cliente que interrumpen el desarrollo normal, entonces debería considerar seriamente dividir el equipo y tener un grupo dedicado a trabajar en el desarrollo en Scrum y tener otro grupo que se encargue de los problemas de soporte al cliente. A continuación, podría rotar personas hacia adelante y hacia atrás al final de cada carrera.

He estado haciendo scrum con un equipo por un tiempo, pero las cosas parecen complicadas por algunas razones. He estado pensando en cómo podrían cambiarse y tengo un par de preguntas que me gustaría plantear aquí.

En primer lugar, ¿cuál debería ser el papel de los evaluadores, diseñadores y no desarrolladores en general en el proceso de Scrum? Si son iguales a otros miembros del equipo, surgen un par de problemas. Los diseñadores y probadores generalmente trabajan en una tarea una vez que se ha completado el desarrollo, por lo que no pueden planear adecuadamente un sprint debido a esta dependencia.

Segundo, tenemos fechas límite. Estos son estrictos y tienen un gran impacto en la priorización. El resultado final es un retraso en los cambios a mitad de un sprint debido a cambios en la fecha límite o malos resultados al final del sprint. También tenemos mucho trabajo no técnico, como soporte al cliente, que debe hacerse mientras tanto y no se puede planificar ya que varía mucho. Así que estoy pensando que la estructura del equipo, la cultura y las prácticas no son compatibles con Scrum. Scrum for me es una herramienta de gestión de procesos para equipos que trabajan en el desarrollo de un único producto de software.

¿Qué piensan ustedes acerca de aplicarlo en escenarios más específicos y complicados? ¿Tienes alguna experiencia para compartir?


En general, los probadores y documentadores (y otros no desarrolladores) son todos miembros iguales de un equipo scrum. La idea detrás de eso es minimizar el riesgo.

Exigir una definición de hecho, que incluye un producto potencialmente desplazable que está completamente probado y documentado, obliga al proyecto a unirse al final de cada sprint.

Si las pruebas no comienzan hasta AFTER dev. está hecho, lo que sucede es que se descubren muchos errores después de que los desarrolladores terminan una tarea. Así que ahora tienes que corregir esos errores, y eso es muy lento y caro, ya que los errores interactúan y porque la regla general es: "El costo de arreglar un error crece exponencialmente con el tiempo". Los errores que captas temprano son baratos y fáciles de corregir, los errores tardíos son una pesadilla.

Es por eso que desea que las pruebas (y la documentación) se muevan de acuerdo con el desarrollo. Y ahora mismo deberías estar preguntando, ¿cómo? Las pruebas son lentas, ¿cómo diablos se puede mover en el paso con dev?

La respuesta es la automatización, es decir, SCRUM siempre se ubica encima de XP o Agile, ambos exigen una excelente cobertura de prueba unitaria y TDD. Aquí hay otro problema para tener en cuenta. Las características de los desarrolladores deben ser las que escriban tanto la unidad como la prueba del sistema. La función de desarrollo debe realizar todas las pruebas de automatización. equipo. Algunos lugares dividen la característica de desarrollo. de la automatización dev. y eso es malo

OK, entonces ahora tiene excelentes pruebas automatizadas y lo ejecuta AL MENOS una vez al día. Y, obviamente, practicas la integración continua, ¿verdad? Esto reduce la carga de trabajo de los probadores en una gran cantidad. Y así es como las pruebas pueden seguir el paso del desarrollador. Una cosa más, los probadores ahora trabajan en lo realmente difícil y creativo que es imposible o muy difícil de automatizar, cada vez que encuentran un error de esa manera, lo que sea necesario para exponer el error es automático y se convierte en parte de las pruebas de regresión diarias . ¡Uf, esa es una respuesta larga!

Ahora a la segunda parte de tu pregunta. Scrum es acerca de la disciplina. Los sprints son cortos y los cambios de retraso durante un sprint NO deberían suceder. El trabajo no técnico debe ser ramificado en un equipo de atención al cliente y pueden hacer Scrum al respecto. Tiene razón cuando dice que parece que su cultura y sus prácticas son incompatibles con el scrum.

En mi experiencia, la transición a Scrum / Agile es un proceso muy doloroso y estresante, y la mayoría de los intentos de transición fracasan. Una de las claves del éxito es un campeón para Scrum / Agile en el equipo ejecutivo. Según su descripción, parece que no tiene uno.

Existen costos y beneficios para Scrum, pero lo está haciendo mal, es posible que incurra en costos con poco o ningún beneficio. Si está haciendo mal y mal Scrum, será mejor que no haga Scrum en absoluto.


En primer lugar, no está utilizando Scrum en absoluto, puede estar utilizando algunas prácticas de scrum, pero no todo el proceso.

Los diseñadores y probadores generalmente trabajan en una tarea una vez que se ha completado el desarrollo, por lo que no pueden planear adecuadamente un sprint debido a esta dependencia.

No existe relación en la dependencia de tareas, que rara vez ocurre, y la capacidad de planificar adecuadamente. En la planificación del sprint, el equipo debe estimar las historias con respecto a la definición de hecho. Si incluye, y realmente debería, diseñar y probar la historia, la estimación del esfuerzo necesario para cumplir los criterios de aceptación de la historia debe incluir tareas de diseño y prueba.

El resultado final es un retraso en los cambios a mitad de un sprint debido a cambios en la fecha límite o malos resultados al final del sprint.

Parece que tu longitud de sprint es más amplia de lo que necesitas. ¿Por qué no tratas de acortarlo? Una buena longitud de sprint es la longitud que puedes comprometer para mantener los cambios fuera del sprint. Supongo que 1 semana funcionaría.

Y este comportamiento demuestra que su Scrum Master no está haciendo su trabajo correctamente ya que no está eliminando los impedimentos.


No deberías agregar cambios a la acumulación de Sprint en función de los cambios que surjan a mitad de Sprint, solo deberían entrar en la acumulación del Producto e ignorarse hasta que termine Sprint.

Debería alinear sus fechas límite con Sprints. Creo que es aceptable retirar una tarea a mediados de Sprint, pero no presentar una nueva.

Si descubres que estás agregando muchas tareas a mitad de Sprint, tus Sprints probablemente sean demasiado largos. ¡Recuerda que apuntas a más de 20 días de trabajo en cada Sprint, y sigues teniendo los problemas que estás describiendo!

Los probadores son importantes para cualquier proceso ágil, pero realmente no se ajustan a Scrum, donde la teoría es que cualquier persona sin una tarea activa elige la siguiente tarea. ¡Intentar elegir asociaciones entre las tareas y las personas comienza a entrar en la programación, que todo el asunto estaba tratando de evitar!

Los evaluadores, si trabajan cerca de los desarrolladores, pueden ayudar a determinar si un elemento de trabajo está realmente completo.