Imagen software

Evolución de la Ingeniería de Software

  • Década del '40 y '50

    Década del '40 y '50
    El coste del hardware era muy superior al del software. Se consideraba que ambos se desarrollaban de la misma forma.
    Los ingenieros de esa época se encargaban de ambas.
    Las primeras actividades de programación consistían en dar vuelta varias switches de control eléctrico, sobre la consola de una computadora. Lo que permitía configurar una secuencia numérica de instrucciones.
  • Década del '60

    Década del '60
    Se analiza lo que se llamó "La Crisis del Spftware", donde se plantearon ideas como "reutilización" o "Arquitectura de Software". Se impulsa la programación estructurada y se introduce el concepto de "Fábrica de Software"
  • Década del '70

    Década del '70
    Se introduce la planeación y administración. Surge el modelo de cascada como respuesta al modelo de procesos.
    Las ideas de Dijkstra formaron las bases para la programación estructurada. Esta incluye:
    -Desarrollar programas Top-Down
    -Usa contructores formales como secuencia, selección e iteración.
    -Seguir pasos formales para descomponer grande problemas
    Nace una nueva disciplina llamada "Ingeniería de Software".
    Brooks publica "The Mythical Man-Month".
  • Década del '80

    Década del '80
    Se automatiza parte del ciclo de vida del software, apareciendo la oriera generación de herramientas CASE, y los lenguajes de programación orientados a objetos con la aparición de C++, Objective-C y Eiffel. La formación de los profesionales del software requiere del manejo de las herramientas CASE, comprender el gran cambio de paradigma que supine la orientación a objetos, y adquirir conocimientos sobre los procesos software y los modelos de madurez.
  • Década del '90

    Década del '90
    Se desarrollan los modelos relacionados con la mejora de procesos software y las normas, y estándares de calidad.
    Se consolida la orientación a objetos 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).
    Surgen multitud de técnicas y conocimientos sobre la contrucción de sistemas orientados a objetos.
  • Década de los 2000

    Década de los 2000
    Se difunde el Desarrollo de Software Dirigido por Modelos (DSDM) y las líneas o familias de productos software, que suponen un esfuerzo al Ingeniero de Software al trabajar con modelos de alto nivel como elemento principal en el desarrollo y mantenimiento de software.
    Desarrollo Distribuído de Software: Requiere de una formación más amplia del Ingeniero para resolver problemas.
    Ingeniería de Software Empírica (ESE) y Basada en Evidencia (EBSE), que sientan las bases para la experimentación.
  • 2010 en adelante

    2010 en adelante
    Integración entre la Ingeniería de Software y la de Sistemas.
    Necesidad de adaptar los métodos de desarollo de software para trabajar en un mundo abierto.
    Sistemas de Sistemas Intensivos de Software (SISOS).
    Implantación de la Ingeniería de 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 ponda en producción normal.