-
La primera teoría sobre el software fue propuesta por Alan Turing en su ensayo
-
El término "software" fue utilizado por primera vez de forma escrita por John W. Tukey
El estudio de los campos académicos sobre el software se dividend en informática y la ingeniería de software. -
Década de los 60
A pesar de importantes éxitos como
las misiones de la NASA, se empieza a hacer evidente
que el software se diferencia demasiado del hardware
para poder ser tratado de la misma manera. -
Compañia ADR hizo un programa para los fabicantes de ordenadores RCA
Para que lo ofreciera gratis a sus clientes, como era la costumbre.
El programa se llamó Autoflow y ADR pidió por él 25.000 dólares. -
Apareció el articulo de Dijkstra “Go To Statement Considered Harmful”
Este impulsó la programación estructurada y
en el congreso IFIP se cita por primera vez el concepto
de “factoría o fábrica de software”. Sin embargo, la
formación de los profesionales sigue siendo ad-hoc y
más centrada en los sistemas y en la programación, que
en una verdadera Ingeniería del Software. -
Década de los 70
En esta década las organizaciones
empezaron a comprobar que los costes del software
superaban a los del hardware. Parnas propone la
descomposición modular y el concepto de ocultamiento
de información (information hiding), Chen el modelo
E/R y Royce el modelo de ciclo de vida en cascada.
La formación de los profesionales de la Ingeniería
del Software se centra entonces en las metodologías
estructuradas (Warnier, Jackson, Myers, Yourdon y
Constantine, Gane y Sarson, Demarco, SSADM, MERISE,
etc.) -
Década de los 80
Leo Osterweil impartió una charla
invitada en la International Conference on Software
Engineering (ICSE) cuyo título fue “Software processes
are software too” que supuso el inicio de una nueva
forma de abordar los procesos software.
En cuanto a la tecnología, se automatiza
parte del ciclo de vida del software, apareciendo la
conocida como primera generación de herramientas
CASE -
Década de los 90
Se desarrollan los modelos relacionados con la mejora de procesos software, como Ideal, TSP o PSP, y las normas y estándares de calidad como la ISO 9126, ISO 12207, ISO 9000-3, etc. se consolida la orientación a objetos (OO) como aproximación para el desarrollo de sistemas informáticos, apareciendo más de cien metodologías, que terminan dando lugar a la aparición del Lenguaje de modelado Unificado (UML) y el Proceso Unificado (UP). -
Década de los 2000
Se firma el “Manifiesto Ágil” como
intento de simplificar la complejidad de las metodologías
existentes.
Se difunden el Desarrollo Software Dirigido por Modelos (DSDM).
Otro tema relevante es el Desarrollo Distribuido de Software (especialmente cuando los equipos se distribuyen más allá de las fronteras de una nación, recibiendo el nombre de Desarrollo Global de Software (GSD). -
Década de los 2010
Mayor integración entre la Ingeniería del Software
y la Ingeniería de Sistemas destacando el papel de los
requisitos no funcionales y, sobre todo, de la seguridad.
También estamos viendo ya la implantación de la
“Ingeniería del Software Continua”, y su correspondiente
tecnología y “filosofía” “DevOps”, que logran reducir
el tiempo entre que se compromete un cambio en
el sistema y que se ponga en producción normal.