Financiamiento de proyectos ágiles

13

La compañía en la que trabajo se está moviendo tentativamente hacia una estrategia de gestión de proyectos ágil, habiendo experimentado las "alegrías" de la cascada una vez para muchos. La clave para esto es un cambio en el énfasis hacia la entrega de funcionalidad en lugar de cumplir con plazos estrictos.

Si bien el proceso de desarrollo y la relación con el cliente ciertamente han mejorado gracias a los lanzamientos iterativos promovidos a través de Agile, está resultando un poco más difícil aplicar la misma lógica a las estrategias de financiamiento para el proyecto. Los clientes a menudo no están acostumbrados a conceptos como Agile, y expresan una gran preocupación por lo que perciben como un caso de "estará listo cuando esté listo".

Me gustaría escuchar los pensamientos y experiencias de las personas en la financiación de proyectos ágiles.

editar: Quiero enfatizar que no le estoy pidiendo a la gente que me explique los pros y los contras del método Agile , ni que creo que Agile equivale a "estará listo cuando esté listo", este es un temor expresado por el clientes / empresas con las que he trabajado para defender las prácticas de desarrollo ágil.

Lo que me interesa es la experiencia que las personas han tenido al resolver los conflictos entre los métodos de presupuesto en cascada "tradicionales" arraigados en las relaciones / clientes comerciales y los métodos de desarrollo más progresivos, y las estrategias de presupuesto que han adoptado para apoyar esa evolución.

sunwukung
fuente
2
Lisa Crispin y David Norton de Gartner tienen algunas buenas ideas sobre "Selling Agile". Eche un vistazo a lo que tienen que decir: bit.ly/rlRF4U
Agile Scout

Respuestas:

4

Si ha podido ofrecer una cotización de un proyecto con una fecha final exacta para todas las funciones, ¿por qué cambió a un enfoque ágil? Usted y todos los demás luchan con esto y un enfoque ágil es estar al frente con este hecho. Úselo como propaganda contra la competencia. Southwest Airline no le promete un asiento en la isla como todos los que lo hacen y luego se lo da a otra persona.

Por supuesto, el cliente quiere una fecha de finalización exacta. Quieren un software económico y sin errores entregado con anticipación, independientemente de cualquier cambio en la solicitud original. Dígale a su equipo de ventas que aprenda a vender un proyecto utilizando principios ágiles. Cuantas más interacciones tenga, más cerca podrá saber cuándo finalizará el proyecto. El cliente también aprende a factorizar los efectos de las solicitudes de cambio.

JeffO
fuente
"Dígale al equipo de ventas que aprenda a vender un proyecto utilizando principios ágiles" - Le daré mi mejor oportunidad ... {;)
sunwukung
5

Los proyectos ágiles no funcionan como "estará listo cuando esté listo". Esa es una línea clásica de la ingeniería en cascada.

Los proyectos ágiles se completan cuando el cliente decide que no quiere gastar más dinero en funciones adicionales. Su personal de ventas podría convertirlo en un punto de venta clave. En lugar de comprometerse con un conjunto fijo de características (cuya necesidad puede o no conocerse por adelantado) por una cantidad fija de dinero, el cliente puede comenzar con una cantidad inicial para un conjunto inicial de características y luego llevarlo por etapas. Esto garantizará un par de cosas:

  • Siempre que la lista de funciones tenga la prioridad adecuada, el cliente siempre obtiene las siguientes funciones más importantes que se entregan a continuación, maximizando así su beneficio de su gasto (obtiene "la mayor inversión por su dinero").
  • Si el cliente se queda sin dinero, ha maximizado su inversión Y le han pagado por lo que ha entregado. Nadie sale herido, todos se benefician.
  • El cliente puede cambiar de opinión sobre las prioridades y características en cada giro de la rueda (cada final de una interacción). Una clara ventaja sobre los contratos normales de precio fijo.

Probablemente haya más, pero lo anterior debería ser suficiente para que su personal de ventas avance en la dirección correcta.

wolfgangsz
fuente
Re: "Nadie se lastima, todos se benefician" - Excepto por el tipo que fue despedido porque le prometió a su jefe que por $ X obtendría un paquete de software que hace XYZ. Desafortunadamente, gracias a Agile, el paquete de software solo hace XY. P'd fuera del gerente, despide al tipo que se entrega mal. Tal vez solo he estado en industrias completamente diferentes de la mayoría de los defensores ágiles, porque no pueden ver un problema en la entrega de soluciones parciales al cliente. OTOH, no puedo ver el propósito de ofrecer una solución parcial, ya que es probable que el producto sea bastante inútil para el cliente.
Dunk
Claramente, aún no ha trabajado en un entorno ágil adecuado, de lo contrario no haría este tipo de comentario. Si se requiere XYZ, se entregará XYZ. Es posible que RST y UVQ no se entreguen, pero como son de menor prioridad, el cliente tampoco tuvo que pagar por ellos. Por supuesto, si sus desarrolladores están tan lejos de la marca con sus estimaciones que ni siquiera pueden entregar XYZ según sus propias estimaciones, entonces hay lecciones que aprender.
wolfgangsz
3

Bueno, no lo veo como un caso de "Estará listo cuando esté listo". La metodología ágil promueve la entrega de productos en forma regular, como cada dos semanas. Es por eso que el cliente es una parte importante y muy activa del proyecto a lo largo de su vida, ya que proporciona orientación en términos de cómo tomarán forma las características de su producto. En todo caso, un cliente comenzará a ver resultados antes, en lugar de hacia el final de un proyecto, como en el enfoque de cascada.

Siempre y cuando reitere el hecho de que el cliente será una parte activa del proyecto, y que verá que el proyecto comienza a tomar forma temprano, eso podría asegurarles que no se trata de esperar hasta que esté terminado.

Marlon
fuente
Para ser claros, no estoy diciendo que creo que Agile equivale a esa descripción, pero así es como los clientes / ventas a menudo lo ven. Agile es excelente en las iteraciones, pero hace que sea difícil precisar el final del proyecto, ¿verdad?
sunwukung
44
@sunwukung: su equipo de ventas no está vendiendo el hecho de que nadie puede predecir el final de un proyecto largo con precisión desde el principio.
JeffO
Me imagino que la mejor manera de tener una idea para el final del proyecto sería tener una reunión de planificación del proyecto con su cliente y enumerar todas las características que desean. Luego puede construir una cartera de proyectos completa y completa. Siéntese con su equipo y haga que completen las estimaciones para toda la cartera de pedidos. Use estas estimaciones como una guía aproximada de cuándo terminará su proyecto.
JuniorDeveloper1208
1
@sunwukung: No, en realidad no, sentarse y planificar un trabajo atrasado también es una buena idea para Agile, es la implementación del proceso de desarrollo lo que diferencia a Agile de Waterfall (Agile es más iterativo). Creo que su principal obstáculo después de vender Agile a su consumidor será implementarlo, ya lo he pasado varias veces y puede ser un proceso doloroso.
JuniorDeveloper1208
1
lo siento, sí, lo entiendo, hemos estado utilizando el método de acumulación para reducir la ventana de entrega estimada (usando Pivotal Tracker, una gran aplicación por cierto). La tensión surge de la confusión que produce este método en términos de la discrepancia entre los hitos iniciales derivados de este método y los ETA reales una vez que la velocidad comienza a establecerse. OMI es todo acerca de cómo manejamos la relación cliente - pero eso es un componente tanto político
sunwukung
2

Aunque el lugar donde trabajo tiene una horrible bastarización de Agile, creo que es más probable que los clientes prefieran el desarrollo de software en iteraciones que en las versiones completas.

Las iteraciones se prestan a solicitudes individuales de los clientes, en el sentido de que solicitan algo y lo obtienen cuando se implementa la característica, no una vez que se realiza y todas las otras cosas que se han agrupado para un lanzamiento también se hacen.

Nunca he visto a un cliente decir: "Queremos esta característica, y queremos esperar 8 meses para que se entregue con un montón de otras características que no nos interesan".

Shawn D.
fuente
1
Esto puede depender del tamaño del cliente. Creo que en el caso del software de escritorio, no es raro que las grandes empresas no quieran pasar por la reinstalación masiva / prueba de imagen / etc. con frecuencia y en esos casos preferirían "lanzamientos" menos frecuentes. Sin embargo, el desarrollador aún podría realizar iteraciones internamente y simplemente presentar un corte oficial de la aplicación a esos clientes en el intervalo que prefiera.
Adam Lear
+1 para "Queremos esta función, y queremos esperar 8 meses para que se entregue con otras funciones que no nos interesan".
sunwukung
2

¿Qué tal establecer un ciclo de pago que esté en sintonía con las iteraciones? La idea de ágil es que solo se puede planificar y estimar en períodos cortos, y el impulso y el compromiso siguen siendo fuertes para estos ciclos cortos. Entonces, ¿por qué no enfocarse en la financiación de la misma manera? Haga que los clientes contribuyan al trabajo con $$ al mismo tiempo que contribuyen con orientación. Después de todo, si no obtienen lo que quieren, no deberían pagar por ello.

Y luego averigüe qué sucede al finalizar un proyecto; por ejemplo, ¿el cliente posee el código o solo el ejecutable? Pero eso estaría en línea con los proyectos anteriores de tipo cascada.

bethlakshmi
fuente
Estoy de acuerdo con esto, sospecho que parte del problema para el negocio radica en proyectar sus ingresos anuales (apaciguando así a los inversores) con estas explosiones de financiamiento a "corto plazo".
sunwukung
Me pregunto si puedes robar de un modelo de contratación. ¿Agrega el riesgo de tiempo de inactividad si los clientes dicen abruptamente "gracias pero no", que debería ser similar al modelo de trabajo por contrato?
bethlakshmi
1

La idea de Agile es que iteres rápido y establezcas exactamente lo que vas a entregar al final de cada sprint, por lo que cuando terminen las 2/3/4 semanas de tu sprint, tienes características tangibles en tu aplicación / proyecto que puede presentar a su cliente y obtener comentarios.

ETA: podría agrupar 'sprints' en 'hitos', con entregables establecidos, y recibir el pago por hito.

JuniorDeveloper1208
fuente
Esto es lo que estoy tratando de promover en el negocio: pagar por "puertas de escenario". La cuestión clave es la fecha de entrega final: ¿el cliente tiene que renunciar a ese plazo final concreto?
sunwukung
Difícil de decir, después de unos pocos sprints, deberías poder establecer la velocidad de tu equipo (Cantidad de trabajo que puedes hacer por sprint), y demostrar que tienes una cartera completa y completa (Lista de tareas / historias de usuarios que conforman un proyecto completo) debería poder predecir razonablemente su fecha de finalización observando sus quemaduras (una tabla de velocidad del equipo que puede usar para extrapolar su fecha de finalización y ver si podrá completar todo el trabajo en el sprint )
JuniorDeveloper1208
2
@sunwukung, Una vez más, te estás perdiendo el punto después de que todo el mundo te lo describe perfectamente. Agile garantiza que el cliente obtenga software de trabajo al final de cada sprint. Si todavía quieren una FECHA FIRME para que TODAS LAS CARACTERÍSTICAS SE COMPLETEN, entonces pueden tener eso, pero solo para las características acordadas cuando firmaron el acuerdo. ¡Es injusto e irrazonable que cambien sus requisitos y esperen que la fecha límite se QUEDA MISMO!
maple_shaft
1
Bueno, solo diles que durante el desarrollo podrán ver su proyecto al final de cada sprint, siempre en un estado de trabajo y listo para recibir comentarios, no debería ser difícil de vender, ágil es excelente.
JuniorDeveloper1208
1
@sunwukung, parece que a la compañía le iría mejor si USTED representara al brazo comercial en este caso :) No sé qué puede decirle al brazo comercial para convencerlos de lo que ya sabe. Probablemente no te escuchen. Desafortunadamente, parece que la parte técnica está progresando hacia el siglo XXI y la parte comercial está en el pasado. Este no es un problema fácil y es probable que no esté en condiciones de solucionarlo.
maple_shaft