Supongo que la mayoría de la gente ha estado en esta situación.
Comienza la planificación inicial del proyecto. Los requisitos están descritos. Después de la revisión arquitectónica y la clasificación a través de API / Frameworks, se elige la tecnología de ajuste. El desarrollo comienza.
Y luego comienza. Tan pronto como necesite hacer algunas cosas de soporte supuestamente simples, el marco / API comienza a ser contraproducente y, en lugar de hacer cualquier trabajo, termina luchando contra la tecnología. El tiempo de investigación se dispara, los foros son silenciosos, parece que no se hace nada, e incluso cuando tienes algo para trabajar, no estás realmente seguro de que se haga bien.
¿Cómo te las arreglas en estas situaciones? ¿Vas por hacks, investigas más, qué le dices a la gerencia?
fuente
Respuestas:
Prototipo, Prototipo, Prototipo !!
Si su equipo no está familiarizado con un marco particular, prototipo de algo en él para evaluar dónde están los puntos débiles.
Matt Raible (comparador de Java Web Framework) sugiere trabajar con un framework durante una semana si es posible.
La creación de prototipos incluye investigar el apoyo de la comunidad detrás de un marco y otros factores
fuente
Administrar dependencias externas es la ruina de muchos proyectos de TI. Hace muchos años, los programadores experimentados con los que trabajé siempre se aseguraban de que tuvieran control sobre sus dependencias, generalmente al insistir en que se compraran licencias de código fuente.
Personalmente, ese no ha sido mi enfoque. Tiendo a ser de la promesa, sobre entregar escuela de pensamiento. Hay momentos en los que he tenido que esforzarme, pero hago una investigación privada de antemano para estar 99% seguro, generalmente haciendo un proyecto privado a menudo en mi propio tiempo para asegurarme de que la tecnología pueda funcionar. En efecto, prototipo, prueba, validar y luego prometer.
Hay situaciones en las que me atrapan, y tengo que retroceder o ser inventivo. Tener una mente creativa con mucha experiencia amplia ayuda aquí, pero también lo hace hablar con otras personas. - Y no siempre los programadores. A veces las soluciones provienen de lugares realmente extraños.
En cuanto a la gestión, la clave es la honestidad. Hable temprano y con frecuencia. No lo deje para el último minuto, ya que decepcionar a los gerentes / clientes el día antes de una gran entrega simplemente lo hace parecer aficionados. Poder decir, 2 meses antes de la fecha límite, que los gerentes deben elegir entre dejar caer algunas funciones y / o retrasar el envío puede no ser popular en ese momento, pero sí permite que el resto de la organización haga su trabajo y planifique . La clave para poder hacer esto es tener un buen sistema de gestión de tareas que rastree los tiempos y las estimaciones de tareas. Tener evidencia sólida para respaldar su punto de vista hace que sea mucho más probable que lo escuchen.
fuente
"¿Cómo te las arreglas en estas situaciones?". Lo que he visto / experimentado:
el punto número 1 Estoy de acuerdo con Ptolomeo: se honesto:
Si realmente es un problema: ve a esa habitación, cuenta el problema, siéntate a esperar la respuesta de enojo y luego ... trabaja hacia un nuevo plan / solución. (El chico no está enojado contigo personalmente).
Hay cursos de TI que se ocupan solo de esta situación. Te colocan con actores y ellos colocan al cliente enojado que escucha esta noticia. Obtienes muchos consejos al respecto. Suena estúpido, pero probablemente solo después de hacerlo notas el valor. Me fui con una hoja con 80 puntos para recordar en esas situaciones ... (y práctica).
Esta situación es típica, probablemente aún más, hoy en día donde los presupuestos son ajustados, las ventas se realizan con la "oferta más baja", la planificación que usted dio se recorta 5 veces antes de que sea aceptada por el cliente ... (incluido ese prototipo ya que "está contratando" usted porque usted es el experto y de lo contrario son otros 10 esperando "), etc.
- Otra cosa podría ser el pensamiento lateral: si no se puede hacer de esta manera, intente proponer algo completamente diferente que proporcione el mismo valor para el cliente. Si la tecnología no funciona en absoluto / está en quiebra / salta del acuerdo / etc ... Si el cliente compra esto, puede entregar el mismo valor al final. Pero traerlo también es bastante difícil. (para algunos y totalmente no para otros). Necesitas los muchachos realmente experimentados para esto. Una situación similar es que la Tecnología NO ESTÁ A LA PARTE ... lleva algunos meses ... Por lo tanto, debe convencer al cliente para que vuelva a planificar y acepte la nueva planificación y el impacto en su organización ...
- Otra 'lección aprendida' es invocar a los hombres mayores senior tan pronto como note que va en esta dirección. A menudo se han ocupado de proyectos problemáticos y son realmente útiles en estas situaciones. A menudo solo viajan de proyecto problemático a proyecto problemático.
- Otra lección aprendida es dejar que su material arquitectónico pase por canales de verificación, especialmente en los proyectos más grandes. Una firma puede cubrir tu trasero. (guarde todos sus correos electrónicos LOL)
fuente