Digamos que el tiempo estimado para un caso es de 3 días. En el segundo día, notará que el caso está creciendo y están surgiendo nuevos escenarios que no se contaron cuando se realizó la estimación del tiempo. El nuevo hallazgo lleva a 2 días extra (total 5 días). Este es un problema típico que enfrentarás tarde o temprano como desarrollador.
- ¿Qué estrategia se puede utilizar para notificar al líder del proyecto la nueva hora de entrega?
- A menudo te preguntas por qué. ¿Cómo motivar el nuevo tiempo de entrega?
El hecho es que muchos proyectos no dedican mucho tiempo al análisis y diseño durante SDLC.
EDITAR: En proyectos muy complejos, no importa cuánto tiempo razonable dedique a Análisis y Diseño, siempre hay sorpresas ya que las reglas de negocio son demasiado complejas. Sin embargo, en tales casos, creo que el líder del proyecto debe ser consciente de la complejidad y tener una actitud correcta cuando surgen sorpresas inesperadas. La pregunta es cómo abordar a los líderes de proyectos que no entienden la complejidad.
fuente
Respuestas:
Entregando malas noticias
Es absolutamente necesario plantear el asunto de inmediato, sin embargo, si puede hacerlo en un plazo razonable (es decir, unas pocas horas, no más), debe hacer una pequeña evaluación de impacto antes de hacerlo.
Al igual que con todas las malas noticias, es mejor proporcionar información detallada (en lugar de simplemente decir "va a llegar tarde"), así que proporcione la mayor cantidad posible de:
1) Estimaciones / escalas de tiempo revisadas para las tareas que se han deslizado.
2) Estimaciones / escalas de tiempo revisadas para tareas futuras que ahora piensa, a la luz de saber que algunas cosas ya se han superado, puede llevar más tiempo.
3) Razones muy breves por las que se produjo el deslizamiento (no gire, solo la verdad, pero no parezca que está inventando excusas). En este caso, usted declara "Estimamos en base a las reglas X e Y, pero ahora han incluido Z, que nunca se mencionó". Es posible que pueda usar esto para explicar el retraso a los clientes y educarlos sobre la importancia de ser minucioso en primer lugar.
4) Si son posibles alternativas para volver a encaminar las cosas (generalmente reduciendo el alcance, pero puede haber otras opciones; otras partes del proyecto pueden adelantarse y es posible mover las tareas).
Recuerde con deslizamientos el impacto psicológico / credibilidad es culminante. Es posible que pueda salirse con la suya, pero la segunda será mucho más dura y la tercera aún más dura.
Es por eso que el punto 2 es importante: revise no solo lo que ya se deslizó, sino también las tareas futuras que ahora cree que pueden llevar más tiempo de lo previsto originalmente. Los resbalones suceden en las TI, no aprender de sus errores es un pecado mayor.
Prevenir tener que entregar malas noticias
Aquí hay dos escenarios: primero, usted no hizo las estimaciones usted mismo, en cuyo caso no hay mucho que pueda hacer aparte de presionar para participar en las estimaciones la próxima vez.
En segundo lugar, hizo las estimaciones usted mismo, en cuyo caso necesita ver cómo hacer mejores estimaciones. Para mí, la frase clave en la pregunta es "siempre hay sorpresas ya que las reglas de negocios son demasiado complejas" .
Con respeto, si siempre sucede, no debería ser una sorpresa . Si solo obtiene la mitad de las reglas de negocio, entonces debe suponer eso en sus estimaciones y permitir el deslizamiento de la característica.
Puede hacer esto aumentando las estimaciones de las reglas que tiene (funciona, pero no está educando a nadie sobre lo que realmente está sucediendo), pero es mejor establecer con sus estimaciones "Históricamente, las reglas que obtenemos son una versión simplificada de lo que realmente quieren. Las reglas que establecieron tardarán 3 días en implementarse, sin embargo, debemos permitir otros 3 días de contingencia para las reglas que no se han mencionado pero que probablemente se descubrirán durante el desarrollo y las pruebas ".
Si el primer ministro cuestiona esto, entonces debe recordarle todas las veces que ha sido cierto (con ejemplos, es difícil argumentar ejemplos) y también sugerirle gentilmente que le conviene entregar a tiempo tanto como a usted, así que ¿no es así? mejor ser conservador?
Pero la conclusión: si siempre se subestima debido a un factor específico (en este caso, la característica de fluencia), calcule eso en sus estimaciones.
fuente
Las estimaciones basadas en el tiempo son suposiciones sobre el futuro, y eso siempre fallará a largo plazo. Es una batalla sin sentido que no puedes ganar.
Deje de estimar en días y comience a usar la estimación relativa en su lugar. Aquí hay un ejemplo simple:
La próxima semana, repita el proceso nuevamente. Apuesto a que tu velocidad cambiará, pero no mucho. Después de algunas semanas con esto, su velocidad debería ser bastante estable y eso es a lo que apuntamos. Ahora puede comenzar a hacer planes con confianza. Elija tareas que sumen su velocidad y su PM puede estar bastante seguro de que se completará según lo prometido. Así es como debe abordar a los líderes de su proyecto.
fuente
Tan pronto como vea que la estimación es incorrecta, debe levantar la campana de alarma. Informe a quienes esperan la entrega sobre el retraso.
Pide ayuda a tus compañeros de equipo si es posible. Asegúrese de seguir entregando el software de mayor calidad posible.
Un atajo probablemente hará más daño al final, y todos los involucrados deberían saberlo. O al menos debería ser posible explicárselos.
fuente
Esto sucede con tanta frecuencia que ningún gerente de proyecto experimentado hará gran parte de ello. Solo sea honesto al respecto y no haga nuevas estimaciones demasiado optimistas; cuando veas que tomará mucho más tiempo, dilo. No diga "Necesito un poco más de tiempo" a diario.
Tendrá que explicarle al gerente: ¿fue la estimación incorrecta en primer lugar o fueron las circunstancias adversas (pasaron un día cazando un error) la razón del retraso? En el primer caso, algo está mal con el proceso de estimación, tal vez es demasiado optimista o ingenuo. En el segundo caso, es un caso para el búfer que se incluyó en el plan del proyecto.
fuente
Siempre mantenga a las partes interesadas relevantes al tanto de su progreso, incluido (¡especialmente!) El hecho de que sus estimaciones fueron demasiado optimistas. No estarán contentos, pero sabrán dónde se encuentra realmente el proyecto y pueden planificar en consecuencia.
Idealmente, su lista de características habrá sido MoSCoWed: debe, debería, podría, no lo hará.
Cuando te dirijas a una invasión, corta los poderosos, luego los deberes. Reduzca las funciones para que pueda enviar a tiempo: su proyecto generalmente no vive de forma aislada, y pasar la fecha de lanzamiento significa que los proyectos posteriores ahora también superarán su calendario.
Idealmente solo tendrás ~ 60% de mostos. Si tiene que cortar los que está en problemas muy profundos (tener un exceso muy grave), en cuyo caso tendrá que cortar esquinas.
¡Asegúrese de darse el tiempo suficiente después de la liberación para limpiar el desorden hecho al cortar esquinas!
fuente
La estimación del proyecto es de juego, simple y llanamente. No hay recompensa sin riesgo.
Si el gerente no entiende esto, eso es lo primero que explicaría.
La pregunta es, ¿quién cubre el riesgo?
Si tiene un contrato de precio fijo, está cubriendo el riesgo.
Si el tiempo y los materiales, entonces él está cubriendo el riesgo.
Por lo tanto, al estimar, es importante comprender que está adivinando, y debe tener una idea de cuán incierto es el cálculo y quién cubre el riesgo.
fuente
Creo que la mejor estrategia es refinar constantemente su estimación . Lo sé, estoy diciendo: tu pregunta está de alguna manera fuera de lugar.
Lectura Introducción al descubrimiento deliberado de Dan North Llegué a la conclusión de que colocar el esfuerzo de estimación en la fase inicial equivale a hacer una predicción exactamente cuando su ignorancia del problema y el dominio está en un nivel máximo. Acéptalo, no puedes predecir lo que es incierto, especialmente si aún es desconocido .
Las metodologías ágiles resuelven este problema dividiendo la vida útil del proyecto en varias partes (sprints, en Scrum) y repitiendo la estimación (historias de dimensionamiento) cada semana. Cada semana, lo que sabe sobre el problema se refina, y también lo es la estimación.
Para mí, una estimación no puede ser verdadera o falsa. Simplemente puede ser cada vez más refinado . Una estimación no es un compromiso. Por eso se llama estimación.
Lo mejor que puede hacer cuando llega tarde (y también cuando "se arriesga a entregar por adelantado", porque el problema es el mismo: lo ha estimado mal) es escalar y comunicar el hecho al cliente lo antes posible. Se llama gestión de riesgos. Cuanto antes dé su opinión, más efectiva será la contramedida. Por lo general, eso significa que, si tiene evidencias de que no puede entregar todo, debe hablar con su cliente, decirle que solo puede entregar el 70% del compromiso y dejarle decidir qué tiene más valor comercial para ella y debe desplegar primero .
Escribí sobre esto aquí Estimación incorrecta, ¡ayuda! ¡Voy tarde! ¡Corta las características y deja de caer en cascada!
fuente
Se llama una estimación porque es una suposición educada. No es una descripción infalible del futuro, y tengo poca paciencia con las personas que tratan las estimaciones de software de esa manera. En última instancia, muchas cosas llevarán más tiempo de lo esperado, en raras ocasiones pueden tomar un orden de magnitud más tiempo. Esto le sucede incluso a los mejores programadores del mundo. ¿Cómo podría un gerente esperar que no te suceda? Si su gerente no entiende eso, no tiene mucha experiencia. Si ella finge no entenderlo para aplicar presión en el horario, no está siendo razonable.
El mejor enfoque es el más obvio. Tan pronto como tenga una idea clara de que una función llevará más tiempo de lo esperado, discútala con su gerente. A menudo hay formas de proceder que resolverán tanto sus problemas como los de su gerente. Es decir, la parte de la característica que está ralentizando las cosas puede ser relativamente poco importante o fácil de modificar de una manera que permita un progreso más rápido posible. Sin embargo, en cualquier caso, no se deje intimidar por una segunda estimación optimista.
fuente
Deje que todo el equipo lo sepa e intente encontrar una solución. Recomiendo 3 soluciones, de mayor a menor prioridad:
a. Trate de encontrar una solución temporal o una solución rápida
si. El trabajo que puedes hacer, hazlo mejor. Después de mostrarle al cliente su excelente parte del trabajo, solicite su ayuda: podemos hacer esto, pero hay algún problema y puede ralentizar la productividad de su trabajo ... Tal vez pueda preguntarles si hay alguna solicitud innecesaria / característica que se puede soltar o reducir.
Proponer un enfoque alternativo para su problema puede ser una buena idea.
do. Horas extras
fuente
Opciones:
fuente
Este es un problema común :)
Uno de los enfoques más simples es agregar un búfer a cualquier estimación que haga, ya que siempre ocurren problemas imprevistos. El tamaño del búfer depende del tamaño del equipo y la incertidumbre de la tecnología y el problema en sí.
Los equipos más grandes tienen más personas que podrían enfermarse y menos personas que saben "todo".
Las nuevas tecnologías siempre son más riesgosas que las que ya conoce.
Y cuando vea que no terminará en la fecha estimada, comuníquese temprano con las partes interesadas. Tal vez pueda volver a priorizar cosas o retrasar ciertas funciones después de hablar con el cliente / parte interesada.
fuente