Para empezar, let's face it: los estimados son absolutamente necesarios. Puede que los desarrolladores los odiemos, pero los clientes necesitan planificar fechas y presupuestos. Personalmente soy el primer enemigo de todo lo que clasifica en "planificación futura", pero desgraciadamente nadie firma cheques en blanco para el desarrollo de aplicaciones.
Entonces no nos queda otro remedio que aprender a "adivinar" (y recalco la palabra "adivinar" pues es lo más parecido que conozco a un estimado). Tenemos que convertirnos en buenos "adivinadores". Tenemos que lograr que nuestras "predicciones" sean lo más ajustadas posible a la realidad.
Nunca he encontrado una receta 100% efectiva para esto, pero sí hay métodos para evitar dar fechas locas y sin sentido. Estimar correctamente requiere sobre todo mucha experiencia, pero con un poco de disciplina y aplicando algunas técnicas se puede mejorar mucho en poco tiempo.
Sin más preámbulos, les dejo aquí las 10 reglas que uso cada vez que tengo que dar un estimado:
- Estimar no es una ciencia exacta. Déjale saber a todos que estás dando un "estimado" que puede cambiar durante el transcurso del tiempo. Rectifica el rumbo cada vez que tengas nueva información y mantén informados a los implicados.
- Nunca permitas que otra persona dé un estimado por ti. Si eres quién va a hacer el trabajo, comprométete solamente a un tiempo con el que personalmente te encuentres cómodo.
- Ten en cuenta cada cambio que te adicionan durante el transcurso del proyecto. Ajusta el estimado como corresponde y notifícale a todos.
- Tómate el mayor tiempo posible para analizar todos los factores antes de hablar. Nunca des una fecha sin pensarla antes. No hables bajo presión pues es muy probable que pases por alto muchos detalles que no están a simple vista.
- Utiliza tu experiencia para estimar. Puede parecer obvio, pero muchas veces olvidamos que en algún momento ya hicimos algo parecido.
- Enfócate principalmente en lo "desconocido". Reserva tiempo suficiente para estos puntos, ya que dicho extra puede ser muy útil si algo se complica.
- Si usualmente trabajas 8 horas al día, da tus estimados basándote en 7 horas solamente. Recuerda que es imposible enfocarte el 100% del tiempo laboral. Además, es muy probable que esa hora extra resulte de mucho valor al final.
- Evita frases coloquiales como "eso se acaba en 10 segundos" ya que a pesar que usualmente son valores sin sentido, las personas los toman al pie de la letra y los restriegan en tu cara cuando no puedes cumplirlo.
- Siempre da tus estimados en un rango de tiempo. Por ejemplo, siempre di "entre 8 y 10 días" en vez de "8 días". Asegúrate estar confiado en completar la tarea en el menor valor del rango.
- Recuerda que siempre es mejor decir 10 y hacerlo en 5, que decir 5 y hacerlo en 10. En el primer caso serás un héroe. En el segundo... bueno, ya sabes que sucede cuando entregas tarde.
Por último, me gustaría saber si alguien tiene algún otro truco para sus estimados. ¿Qué hacen al respecto? Comentarios bienvenidos que toda la ayuda que puedan brindar me va a servir de mucho.
Creo que ya este lo habías publicado, en inglés si mal no recuerdo, aquí sí te puedo asegurar que estoy al 120% contigo.
ReplyDeleteYo agregaría un punto más, y es tratar de obtener del cliente el tiempo que aproximadamente puede esperar por el proyecto.
Sabemos que es complicado y depende mucho del cliente así como del tipo de relación que tengas con él, imagino que en grandes empresas esto sea casi imposible.
Conociendo este tiempo tienes algo de margen para planificar, si es poco y sabes que no lo puedes lograr pues se le convence que ese no será el estimado, pero si es igual o mayor al que tú piensas ya ganamos algo.
Sí, sería muy bueno saber cuál es el tiempo con el que contamos, pero por desgracia casi nunca esto es posible. De todos modos, creo que es válido el punto.
ReplyDelete