¿Qué hechos y fuentes puedo usar para convencer a un gerente con el que estoy trabajando actualmente de que reescribir un proyecto de ~20 000 líneas de código en un mes es un plan completamente irreal y que escribir ~5000 líneas de código funcional en 3 semanas es realmente un buen resultado?
Una respuesta anterior que escribí aquí en Project Management Stack Exchange proporciona valores altos/bajos/nominales para las líneas de código fuente escritas según el tipo de proyecto por mes de personal. Los datos más específicos siempre son mejores: sería más relevante usar datos históricos de sus experiencias pasadas o proyectos anteriores en su empresa de tamaño y alcance similares. Como puede ver en esos datos, incluso 5000 SLOC/mes-personal está muy por fuera de los rangos nominales para cada tipo y tamaño de aplicación.
Hay más para estimar/evaluar un proyecto que solo las líneas de código que necesitan ser (o fueron) creadas/modificadas. Tamaño y naturaleza de la modificación/adición, complejidad del código, reutilización del código, lenguaje de programación, verbosidad del código (puede hacer que una línea haga exactamente lo mismo que cinco líneas, y esto puede ser bueno o malo dependiendo de situación y opinión) y uso de paquetes externos, por nombrar algunos. Y muchos de estos cambiarán, no solo de equipo a equipo, sino de proyecto a proyecto .
Las únicas personas que están realmente equipadas para dar algún tipo de estimación razonable y realista, dados todos estos factores, son las personas que realmente hacen el trabajo.Si un gerente trata de estimar qué es "realista", su estimación se verá afectada por otros factores, como los plazos y otras limitaciones, que falsearían dichas estimaciones, incluso si el gerente tuviera la capacidad de estimar adecuadamente el trabajo.
Un sistema más efectivo es que los desarrolladores hagan la estimación, el gerente confíe en la capacidad del desarrollador para hacer estimaciones (si el gerente no lo hace, ese es un problema aparte que debe abordarse), y luego el gerente debe tomar una decisión sobre si el valor agregado por el trabajo vale la pena el esfuerzo estimado invertido para lograrlo.
Dado que está hablando de líneas de código, puede consultar los gráficos de proyectos populares de github para ver cuántas líneas se han comprometido en períodos de tiempo similares.
Todd A. Jacobs
XenoMind
nathan cooper
XenoMind
pato de goma
pato de goma
XenoMind
Tomas Owens