Programación de derecha a izquierda.
Alguien en la gerencia siempre piensa que son Steve Jobs con su famosa zona de distorsión de la realidad. Hasta que alguien en el desarrollo de productos los eduque, los gerentes no técnicos a menudo pueden tener una visión sobre la programación que es tan sofisticada como la primera película francesa "Le voyage dans la lune" ("Un viaje a la luna") era para la ciencia de los cohetes.
El problema ha estado presente por un tiempo. Fred Brooks habla sobre la estimación sin tripas en Mythical Man-Month . Barry Boehm habla de ello en sus propuestas para un enfoque de gestión de Theory-W . Más recientemente, Steve McConnell (autor de Code Complete ) enfoca el concepto de negociación de principios en "Cómo defender un programa impopular" .
Agile empuja el alcance de los proyectos a un lugar donde sea altamente visible. El Manifiesto Ágil llama a la "colaboración del cliente sobre la negociación del contrato". También, espero, empodera a las personas responsables. El juego de planificación evita que los interesados no técnicos coaccionen a los desarrolladores con las promesas que hicieron hace mucho tiempo que han sido invadidas por cambios en los requisitos o nuevos descubrimientos.
Si su organización rechaza ágil, existen excelentes métodos relacionados con la calibración de estimaciones para volver a ajustar un cronograma basado en el valor ganado . No creo que el valor ganado haga un gran trabajo con algunos de los problemas reales con la predicción, pero puede ayudar a disipar las ilusiones sobre la velocidad de los proyectos y la arpa en las estimaciones que tenemos como hechos.
Hay un dicho que dice que cuanto antes comience a codificar, más tardará. La presión del horario puede tener el efecto de forzar el cambio de metodología. A veces es de cascada a "código como el infierno". Esto puede tener un impacto negativo en la calidad, por no mencionar la moral cuando los trabajadores no pueden hacer lo mejor y sus compañeros y futuros mantenedores los ven en su peor momento, no en su mejor momento. En un entorno como este, cierto grado del caos puede controlarse con control de fuente, creación y prueba diaria (o integración continua y prueba de unidad), revisiones de código, utilizando un equipo experimentado y altamente calificado, resistiendo la tentación de agregar personal tarde el proyecto, y el viejo standby, horas extras.
Otras veces, el cambio de metodología puede ser de cascada a incremental iterativo. Mi experiencia ha sido que la administración tardó en adoptar a Agile. Pero luego, después de un tiempo, hubo una nueva administración que fue más solidaria con Agile. Time boxing puede ser como presupuestar: puede obligarnos a pensar en el mejor uso de un recurso limitado. Scrum tiene dos cuadros de tiempo: uno es diario para comentarios entre los miembros del equipo, el otro es mensual para el sprint a través de la lista de grabación.
Licencia Creative Commons: consulte http://en.wikipedia.org/wiki/File:Scrum_process.svg