Crisis del software

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar

Crisis de software es un término utilizado en los primeros días de la informática para referirse a la dificultad de escribir programas informáticos útiles y eficientes en el tiempo necesario. La crisis del software se debió a los rápidos aumentos en el poder de las computadoras y la complejidad de los problemas que no podían abordarse. Con el aumento de la complejidad del software, surgieron muchos problemas de software debido a que los métodos existentes eran inadecuados.

El término "crisis de software" fue acuñado por algunos asistentes a la primera Conferencia de Ingeniería de Software de la OTAN en 1968 en Garmisch, Alemania. La Conferencia del Premio Turing de 1972 de Edsger Dijkstra hace referencia a este mismo problema:

La principal causa de la crisis del software es que las máquinas se han convertido en varias órdenes de magnitud más potente! Para decirlo con toda claridad: mientras no hubiera máquinas, la programación no era ningún problema; cuando teníamos unos pocos ordenadores débiles, la programación se convirtió en un problema leve, y ahora tenemos computadoras gigantescas, la programación se ha convertido en un problema igualmente gigantesco.

Edsger Dijkstra, The Humble Programmer (EWD340), Communications of the ACM

Las causas de la crisis del software estaban relacionadas con la complejidad general del hardware y el proceso de desarrollo del software. La crisis se manifestó de varias maneras:

  • Proyectos sobre presupuesto
  • Proyectos que ejecutan horas extraordinarias
  • El software era muy ineficiente
  • El software era de baja calidad
  • El software a menudo no cumple los requisitos
  • Los proyectos eran inmanejables y el código difícil de mantener
  • El software nunca fue entregado

La causa principal es que las mejoras en el poder de cómputo superaron la capacidad de los programadores para usar esas capacidades de manera efectiva. Se han desarrollado varios procesos y metodologías en las últimas décadas 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 que involucran aspectos desconocidos, aún son vulnerables a problemas grandes e imprevistos.

Contenido relacionado

Guión de shell

Tubo de Pitot

Iluminación global

Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save