La crisis del software es un término utilizado en los primeros tiempos de la informática para referirse a la dificultad de escribir programas informáticos útiles y eficientes en el tiempo requerido. La crisis del software se debió al rápido aumento de la potencia de los ordenadores y a la complejidad de los problemas que se podían resolver. Con el aumento de la complejidad del software, surgieron muchos problemas de software porque los métodos existentes eran inadecuados.
El término "crisis del software" fue acuñado por algunos asistentes a la primera Conferencia de Ingeniería de Software de la OTAN en 1968 en Garmisch , Alemania. [1] [2] La conferencia del Premio Turing de Edsger Dijkstra de 1972 hace referencia a este mismo problema: [3]
La principal causa de la crisis del software es que las máquinas se han vuelto mucho más potentes. Para decirlo sin rodeos: mientras no había máquinas, la programación no era un problema en absoluto; cuando teníamos unos pocos ordenadores débiles, la programación se convirtió en un problema menor, y ahora que tenemos ordenadores gigantescos, la programación se ha convertido en un problema igualmente gigantesco.
Las causas de la crisis del software estuvieron relacionadas con la complejidad general del hardware y del proceso de desarrollo del software. La crisis se manifestó de varias maneras:
La causa principal es que las mejoras en la capacidad de procesamiento han superado la capacidad de los programadores para utilizar esas capacidades de manera efectiva. En las últimas décadas se han desarrollado diversos procesos y metodologías para mejorar la gestión de la calidad del software, como la programación procedimental y la programación orientada a objetos . Sin embargo, los proyectos de software que son grandes, complicados, mal especificados o involucran aspectos desconocidos, aún son vulnerables a problemas grandes e imprevistos.