Tenemos el mismo problema en mi empresa. Hay un historial de proyectos de precio fijo y cronograma fijo, y nuestros clientes generalmente no son muy progresistas.
Con respecto al desarrollo sin compromisos iniciales, he escuchado a muchos agilistas fundamentalistas decir: "Sé que es difícil, pero solo necesitas impulsar los beneficios" o "Pueden ser escépticos, pero verán qué tan bien fue y volveré a ti la próxima vez ". En algunas industrias, tal vez. En el nuestro, eso es un montón de basura. No veo que ninguno de nuestros clientes acepte dejarnos hacer lo nuestro sin ningún compromiso en cuanto al alcance o el precio.
Lo que hemos descubierto es que no siempre es necesario cambiar la forma de cotizar / ofertar / facturar a los clientes para un proyecto ágil. Puede mantener el proceso ágil mientras se adhiere a su presupuesto si lo gestiona correctamente.
Cite como lo haría normalmente (con relleno) y establezca algunos límites alrededor del alcance del proyecto. A partir de ese momento, siga su metodología ágil:
- Priorice el trabajo con el cliente: desarrolle primero las cosas importantes
- Desarrolla en pequeñas iteraciones, mostrando tu progreso
- Colabore con el cliente para asegurarse de que realmente está desarrollando lo que quiere
- Aumenta la especificación a medida que escribes el software
Pero mas importante:
- Si una función resulta ser más complicada de lo que se solicitó originalmente, informe al cliente de inmediato y asegúrese de que sepa que afectará la línea de tiempo y / o el precio.
- Trate los cambios importantes (o incluso menores) como solicitudes de cambio con cargo.
Todavía está usando Agile internamente y obtiene los beneficios, pero el cliente está viendo un proyecto más familiar de precio fijo, línea de tiempo fija y alcance fijo. Cualquier cambio cuesta dinero y arruina el tiempo.
La parte más difícil de esto es establecer los límites por adelantado. Definitivamente no es algo que pueda hacer solo su vendedor, BA o gerente de proyecto. Necesita un desarrollador experimentado en esas reuniones. Debe definir las áreas que podrían causar problemas y decidir las expectativas.