Captura de pantalla 2021 08 12 113251

Ingeniería de Software

  • Period: to

    Programación y técnicas de codificación

    Se crean lenguajes de programación de tercera generación, conocidos como lenguajes de alto nivel, estos contaban con instrucciones de alto nivel los cuales pueden ser compresibles por el programador, y eran independientes a las máquinas.
  • Entre estas fechas...

    Entre estas fechas...

    Aparecen los analistas
    programadores y analistas de sistemas
  • Period: to

    Modelo de procesos

    El modelo de procesos predominaba en los años 60 y consistía en codificar y corregir.
    En la década de los 70 con las grandes pérdidas provocadas se da origen a una nueva disciplina llamada "ingeniería de Software" que abarcaría los aspectos técnicos del software y gestión de datos.
  • Entre estas fechas...

    Entre estas fechas...

    Ejemplos de lenguajes de tercera generación: FORTRAN, que fue desarrollado para aplicaciones científicas y de ingeniería, y COBOL que fue desarrollado para aplicaciones de gestión o administración.
    Época de los famosos códigos espagueti (código muy difícil de entender hasta para quien lo había escrito)
    En el NASA / IEEE Software Engineering Workshop se analizo la "crisis del software" y se planteo la "reultizacion" o la "arquitectura de sooftware"
  • Modelo de Cascada

    Modelo de Cascada

    El modelo toma el nombre de Modelo de Cascada definido por Winston Royce, el cual se comenzó a diseñarse en 1966 y terminó en 1970, este modelo sugiere un enfoque sistemático y secuencial para el desarrollo de software.
  • Period: to

    Proceso de Desarrollo de Software y Modelos Tradicionales del Ciclo de Vida

    El proceso de desarrollo de software surge como una ayuda para el proceso de resolución de problemas intentando transformar la necesidad en una solución automatizada.
    Surgen los Modelos de ciclo de vida del software, los cuales buscan abarcar todo el proceso completo creando cada paso normativas y parámetros describiendo el desarrollo de software desde la fase inicial hasta la fase final y ajustarlo a orientarse a las necesidades de cada empresa.
  • Modelo V

    Modelo V

    Surge el Modelo V propuesto por Alan Davis diseñado para resolver problemas del diseño de cascada, este modelo permitió hacer más explícita la tarea de la iteración de las actividades del proceso.
  • Modelo Iterativo

    Modelo Iterativo

    Estos modelos darían paso al Modelo Iterativo, este modelo buscaría un mejor desempeño al reducir el riesgo que surge entre las necesidades del usuario y el producto final por malentendidos durante la etapa de recogida de requisitos. Propondría la iteración de varios ciclos de vida en cascada que al final de cada iteración se le entregaría al cliente una versión mejorada.
  • Desarrollo Incremental

    Desarrollo Incremental

    En 1980 se propone el Modelo de Desarrollo Incremental por Harlan Mills, el cual combinaría elementos del modelo en cascada con la filosofía interactiva de construcción de prototipos, surge como una forma de reducir la repetición del trabajo en el proceso de desarrollo y dar oportunidad de retrasar la toma de decisiones en los requisitos hasta adquirir conocimiento del sistema.
  • Desarrollo en espiral

    Desarrollo en espiral

    En 1985 aparece el desarrollo en espiral de Barry Boehm el cual sería utilizado de forma generalizada en la ingeniería de software. A diferencia de otros modelos de proceso que finalizan cuando se entregan, este adaptaría para aplicarse a lo largo de toda la vida del software.
  • Period: to

    Métodos Rápidos e inicios del Desarrollo Ágil de la ingeniería de Software

    Surge el desarrollo de software de métodos rápidos los cuales reducirían el tiempo del ciclo de vida del software al desarrollar, en primera instancia, una versión prototipo y después integrar la funcionalidad de manera iterativa para satisfacer los requisitos del cliente y controlar todo el ciclo de desarrollo.
  • Entre estas fechas

    Entre estas fechas

    Empezando con las ideas de Brian Gallagher, Alex Balchin, Barry Boehm y Scott Shultz, James Martin desarrolló el enfoque de desarrollo rápido de aplicaciones durante los 80 en IBM y lo formalizó finalmente en 1991, con la publicación del libro "Desarrollo rápido de aplicaciones", aparece entonces el Desarrollo rápido de aplicaciones (RAD), para responder a la necesidad de entregar sistemas muy rápido.
  • Sistemas Dinámicos

    Sistemas Dinámicos

    En 1994 nace el Método de desarrollo de sistemas dinámicos (DSDM), desarrollado como un proceso de entrenamiento de negocios en Inglaterra, se estableció para crear una metodología RAD unificada, el cual definiría el marco para desarrollar un proceso de producción de software.
  • Scrum

    Scrum

    En 1995 Schwaber y Sutherland, presentaron en paralelo una serie de artículos describiendo Scrum, siendo esta la primera aparición pública del método.
  • En estas fechas...

    En estas fechas...

    Se destacó el uso de metodologías ligeras completas como la programación extrema (XP), que intentó simplificar muchas áreas de la ingeniería de software, incluyendo la recopilación de requerimientos y las pruebas de confiabilidad.
  • Period: to

    Metodologías del Proceso de la Ingeniería de Software

    La necesidad de software de bajo costo llevó al crecimiento de métodos más simples y rápidos que desarrollaran software funcional.
    El uso de prototipos rápidos, procedimientos y normas evolucionó al uso del concepto de Metodología del Proceso de la Ingeniería de Software
  • Alianza Ágil

    En el año 2001, miembros prominentes de la comunidad de desarrollo software se reunieron en Snowbird, Utah, y adoptaron el nombre de "métodos ágiles", poco se después se forma la "alianza ágil", la cual era una organización sin fines de lucro que promueve el desarrollo ágil de aplicaciones.
  • Enfoque estructurado

    Enfoque estructurado

    En el 2002 Sommervile define que una metodología de ingeniería de software es un enfoque estructurado para el desarrollo de software cuyo propósito es facilitar la producción de software de alta calidad de una forma costeable.