-
Eniac
-
Lenguaje Fortran
-
Lenguaje Cobol
-
Crisis del software
Surge la crisis del software pues el proceso de desarrollo de
software sobrepasa los costos y el tiempo estimados y tiene demasiadas fallas. Se
acuña el nombre de Ingeniería de software -
Nace Ing. de Software
-
Period: to
Primeros principios de la programación
Se establecen los primeros principios como resultado de la
investigación en buenas prácticas de programación. Tales como: Diseño
descendente (top-down), Refinamiento sucesivo, Modularidad, Surgen los
lenguajes estructurados y la noción de desarrolladores de software dirigidos por un
líder. -
Lenguaje de programación C
-
Period: to
Programación estructurada
Surge la programación estructurada y el concepto de estilo de
programación. Aparece el concepto de ciclo de vida en el desarrollo de software.
Se proponen ayudas para la administración y de apoyo en el desarrollo. -
Period: to
Calidad del software
Se inicia el manejo de la noción de confiabilidad y calidad del
software. Se inician las pruebas sistemáticas, la noción de corrección formal,
modelos de tolerancia a fallas y confiabilidad total. -
Lenguaje de programación Basic
-
Period: to
Surgen técnicas de abstracción y descomposición modular
Se pone atención a las fases anteriores a la codificación como
análisis de requerimientos, especificación y diseño. Surgen las técnicas como
abstracción y descomposición modular. Se hacen esfuerzos para integrar y validar
las fases sucesivas del desarrollo. -
Period: to
Incremento en el uso de herramientas automatizadas
Incremento en el uso de herramientas automatizadas de
desarrollo de software. Se llevan a cabo cursos de ingeniería de software. Los
principios desarrollados en 69 a 71 se usan masivamente en la industria del
software. -
Period: to
Surgen herramientas para cada fase del ciclo de vida
Se inician las herramientas automatizadas para cada fase del
ciclo de vida siguiendo la programación estructurada. -
Period: to
Paradigma orientado a objetos
Aparece el paradigma orientado a objetos para el desarrollo
de software grande. Promueve conceptos como la abstracción, la herencia el
reuso. Se inicia el uso masivo de técnicas automatizadas de desarrollo de
software. -
Java
-
Inteligencia artificial
Aparecen redes de información, tecnologías orientadas a objetos, redes neuronales, sistemas expertos y SW de inteligencia artificial. -
Period: to
Modelos de mejora continua
La evaluación de los procesos evita especificaciones
incompletas o anómalas, la aplicación incorrecta de metodologías, etc. Para ello
se utilizan distintos modelos de madurez de procesos que tienen como objetivo
apoyar distintas estrategias de desarrollo y evaluación para así lograr una mejora
continua en los productos. -
Deep Blue