Los grandes proyectos de software son muy propensos a sufrir retrasos e incluso fracasos. Para tener éxito, se necesita una planificación cuidadosa, una comunicación eficaz y un alto nivel de experiencia técnica y un enfoque en la calidad para superar muchos de estos desafíos.
El Informe del caos standish y el Informe sobre el coste de la mala calidad del grupo CISQ 2022 Ambos confirman que los grandes proyectos de software tienen una probabilidad muy alta de fracasar. Y que las tasas de fracaso no se han reducido, a pesar de Agile.
Escala
El trabajo del conocimiento no escala. De hecho, existen deseconomías en el trabajo del software, es decir, cuanto mayores son, más costosas se vuelven. Los gerentes de proyectos de software deben conocer el tamaño funcional de un proyecto, poder gestionar el alcance y planificar de manera más efectiva. La ampliación es posible hasta cierto punto, pero tiene un coste. Los ejecutivos deberían apoyar todos los esfuerzos para dividir los grandes proyectos en proyectos independientes más pequeños. La segregación técnica a través de arquitecturas y disciplinas de software apropiadas también puede ayudar a escalar proyectos más grandes.
Dirección y propósito
Mantener a todas las partes enfocadas en el resultado deseado del proyecto puede ser un desafío ya que las actividades de cada contribuyente pueden parecer distantes del objetivo general. Esto requiere una trazabilidad clara de los requisitos hasta los objetivos. y excelente liderazgo.
Complejidad
A medida que los proyectos de software crecen en tamaño y alcance, la complejidad aumenta exponencialmente. Los analistas, diseñadores y desarrolladores deben lidiar con una mayor cantidad de interacciones, módulos, componentes y dependencias. El uso de herramientas, técnicas y disciplina puede ayudar a gestionar y minimizar las complejidades.
Coordinación
Los equipos más grandes conllevan mayores desafíos de coordinación. Los equipos deben comunicarse y colaborar de manera efectiva para garantizar que todos trabajen hacia las mismas metas y objetivos. La comunicación sobre lo que se debe desarrollar y en qué secuencia debe ser clara.
Calidad
El resultado más rápido y económico sólo se consigue con una alta disciplina y atención a la calidad. Mantener la calidad de todos los artefactos del proyecto se vuelve cada vez más difícil a medida que crece el tamaño del proyecto. Los compromisos de calidad en cualquier aspecto del proyecto conducirán a un castillo de naipes que se desmorona. La atención a la calidad debe cubrir: gestión de proyectos, requisitos, arquitectura, diseño, documentación, datos, codificación, pruebas, gestión de configuración e implementación.
Requisitos cambiantes
A medida que los proyectos evolucionan, también lo hacen los requisitos. Gestionar los requisitos cambiantes puede ser un desafío importante, especialmente cuando participan múltiples partes interesadas. Todos los proyectos de software sufren cambios imprevisibles; Muchos proyectos también sufren los cambios en los requisitos intermedios que eran previsibles; detectar estos requisitos conocibles con anticipación reducirá la volatilidad y la agitación durante todo el proyecto.
Tiempo
La confusión entre los objetivos temporales y el realismo es una fuente clave de problemas. Los líderes deben preocuparse por el tamaño y la cantidad de tiempo que llevará lograr que el software (en su mayor parte) funcione correctamente a la primera. Las presiones de tiempo inadecuadas por parte de los líderes generalmente dan lugar a la necesidad de corregir o reescribir errores durante mucho tiempo y, en algunos casos, cancelarlos. Conocer el tamaño funcional permite a los gerentes de proyectos asignar y proteger los cronogramas de desarrollo de presiones ejecutivas inviables.
Tipos de grandes proyectos de software
Existen numerosos tipos diferentes de grandes proyectos de software: implementación de ERP, configuración de paquetes, migración a la nube, nueva construcción interna, reemplazo de legados o incluso híbridos de estos. Además, el trabajo técnico se puede dividir entre interno o subcontratado a uno o más proveedores.
Independientemente del tipo o incluso de la metodología, ScopeMaster puede ayudar a todos estos grandes proyectos de software a reducir el riesgo, porque el análisis que automatiza y facilita es un enfoque genérico, de buenas prácticas y basado en principios para mejorar el trabajo del software.