Cuando leo en las noticias del fracaso de un proyecto de millones de Euros o de un proyecto más pequeño, pero más cercano me pregunto ¿por qué?
Somos gente inteligente en informática. ¿Cómo puede ser esto?
Analizando proyectos fracasados que he visto estos 20 años, hay tres razones principales, hay tres puntos principales que pueden «matar» un proyecto software si fallan.
Aquí va la primera razón para la «muerte» de un proyecto.
¿Alguna vez has preparado un software que estabas seguro que sería «la bomba» y cientos o miles de horas de trabajo después nadie quería comprarlo o usarlo?
¿Alguna vez seguiste los «requisitos» – ya fueran 1 párrafo o 100 páginas – y una vez finalizado, o incluso a mitad del proyecto te dijeron que eso no era lo que se quería y empezó una tremenda cantidad de cambios que multiplicó por varias veces el trabajo necesario en el proyecto, o peor, se perdió el proyecto?
Todo esto se resume en el tema de:
Se pueden desperdiciar decenas de miles de horas yendo en la dirección equivocada. Este es un error tan radical que bien puede ser la fuente de la mayor parte de «grandes fracasos totales».
El problema de todo esto es que unos requisitos incorrectos nos golpearán en la cara, incluso si no es «culpa nuestra».
Cuando «la basura golpea el ventilador» da a todo el mundo.
Es muy difícil cobrar un «proyecto fallido» aunque no sea «culpa nuestra» y podemos incluso acabar con mala reputación o acciones legales.
La solución es asegurarnos de que los requisitos son realmente correctos, sin importar si es «responsabilidad nuestra» o no. Requiere disciplina, ya que es demasiado fácil «atajar» y «suponer». Unas reglas funcionales al respecto son:
Seguro que hay muchos refinamientos y detalles, pero es el 1-2-3-4-5 más básico que hemos encontrado que si no lo respetamos en un proyecto, es muy posible que este fracase – y que muy para nuestro pesar hemos encontrado en alguno de nuestros proyectos donde relajamos estos requisitos y luego se requirió mucho trabajo para reconducir o rescatar el proyecto.
Espero que te sea útil.