La mayor desventaja es que depende en gran medida de tener requisitos bien definidos y estabilizados por adelantado sin muchos cambios una vez que el proyecto está en progreso. Ese enfoque simplemente no funciona bien en un entorno con un alto nivel de incertidumbre. Es por eso que Agile ha ganado un uso tan extendido tan rápidamente.
Otras desventajas incluyen:
- Alto costo de sobrecarga de documentación y largos tiempos de inicio para desarrollar requisitos detallados y diseño antes del inicio del proyecto
- Un enfoque secuencial de la calidad que se basa en una persona de control de calidad para probar un producto después de completar el desarrollo en lugar de integrar la calidad en el diseño del producto.
- El usuario generalmente no ve nada hasta que todo el proyecto esté completo y para ese momento puede ser demasiado tarde para hacer cambios
- Hay un gran potencial para los problemas de integración de sistemas porque la integración final de los sistemas se realiza típicamente al final del proyecto en lugar de hacerse de forma incremental a medida que el proyecto está en progreso
- ¿Cuáles son los casos de automatización de pruebas de software en organizaciones comerciales amplias?
- ¿Qué es mejor, NUST ingeniería de software o BSCS rápido?
- ¿Qué tan importante es la matemática aplicada en el desarrollo de software?
- ¿Cómo manejan los ingenieros de software el cambio de la programación a la ejecución de una startup?
- Se dice que copiar código es malo, pero ¿qué tal copiar solo patrones y arquitectura de software?