Ing sof

Linea de Tiempo de la Ingenieria de Software

  • La teoría que forma la base de la mayor parte del software moderno

    La teoría que forma la base de la mayor parte del software moderno
    Alan Mathison Turing en 1936 publicó el artículo “Sobre números computables, que resultó ser el origen de la informática teórica. En él definía qué era computable y qué no lo era. Lo computable era todo aquello que podía resolverse con un algoritmo (conjunto de instrucciones finito que, mediante pasos sucesivos, lleva a la solución de un problema). El resto eran tareas no computables.
    Turing predijo incluso los fallos que hoy afectan a nuestros ordenadores, como el hecho de que se "cuelguen".
  • La primera computadora

    La primera computadora
    En 1941, Konrad Zuse fue el primero en construir una computadora que funcionase. Lo hizo en el salón de la casa de sus padres en Berlín. Este ordenador podía guardar 64 palabras.
  • Period: to

    Primera Fase. Los Arboles

    Programar no es una tarea diferenciada del diseño de una máquina.
    Uso de lenguaje máquina y ensamblador.
  • La Era Pionera

    La Era Pionera
    Al inicio de los tiempos el software se desarrollaba usando técnicas de gestión orientadas al hardware, porque éste era el centro de la informática y del presupuesto, el software se consideraba como un producto añadido y la programación de computadores era un arte para el que no existían métodos sistemáticos.
  • Period: to

    Los Orígenes de Ingeniería de Software

    El término ingeniería del software apareció por primera vez en la década de 1950 y principios de los años 1960. Los programadores siempre habían sabido sobre ingenieros civiles, eléctricos y de computadores y debatían qué podría significar la ingeniería para el software.
  • Period: to

    1ra Era

    Se trabajaba con la idea de " Codificar y corregir".
    No existía un planteamiento previo.
    No existía documentación de ningún tipo.
    Existencia de pocos métodos formales y pocos creyentes en ellos.
    Desarrollo a base de ensayo y error.
  • Period: to

    Los Primeros Lenguajes de Programación Modernos

    Los tres primeros lenguajes de programación modernos, cuyos descendientes aún continúan siendo utilizados, son:
    FORTRAN (1955), creado por John Backus.
    LISP (1958), creado por John McCarthy.
    COBOL (1959), creado por el Short Range Committee, altamente influenciado por Grace Hopper.
  • Period: to

    Segunda Fase. El florecimiento

    Aparecen multitud de lenguajes
    Se pensaba que era posible hacer casi todo.
  • El primer Sistema Operativo

    El primer Sistema Operativo
    El primer Sistema Operativo de la historia fue creado en 1956 para un ordenador IBM 704, y básicamente lo único que hacía era comenzar la ejecución de un programa cuando el anterior terminaba.
  • Period: to

    La Crisis del Software

    Muchos proyectos de software sobrepasaron el presupuesto y el tiempo estimados. Algunos proyectos causaron daños a la propiedad y pérdidas de vidas. Algunos utilizan el término de crisis del software para referirse a su incapacidad de contratar programadores suficientemente calificados.
    Costo y desbordamiento de presupuesto: el sistema operativo S/360.
    Daños a la propiedad: Defectos de software pueden causar daños a la propiedad.
    Vida y muerte: Defectos de software pueden matar.
  • Period: to

    2da Era

    Se busca simplificar los códigos.
    Aparición de multiprogramación y sistemas multiusuario.
    Sistemas de tiempo real apoyan la toma de decisiones.
    Aparición de software como producto.
    Inicio de la crisis del software.
    Se busca procedimientos para el desarrollo de l software.
  • Period: to

    Tercera Fase. La crisis

    Desarrollo inacabable de grandes programas
    Ineficiencia, errores, coste impredecible
    Nada es posible.
  • Period: to

    Historia de los Lenguajes de Programación Orientada a Objetos

    En 1967 con un lenguaje llamado Simula 67, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en el centro de cálculo noruego.
    En los 70’s científicos del centro de investigación en Palo Alto Xerox inventaron el lenguaje Small talk.
    En los 80’s Bjarne Stroustrup de AT&T Labs., amplió el lenguaje C para crear C++ que soporta la programación Orientada a Objetos.
    En los 90’s se consolida la Orientación a Objetos como una de las mejores maneras para resolver problemas.
  • Nace la Programación Orientada a Objetos

    Nace la Programación Orientada a Objetos
    La Programación Orientación a Objetos (P.O.O.) surge en Noruega en 1967 con un lenguaje llamado Simula 67, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en el centro de cálculo noruego.
    Simula 67 introdujo por primera vez los conceptos de clases, corrutinas y subclases (conceptos muy similares a los lenguajes Orientados a Objetos de hoy en día).
  • El Origen del Concepto de Ingeniería del Software

    El Origen del Concepto de Ingeniería del Software
    Ingeniería del Software, es el término que utilizó Fritz Bauer en la primera conferencia sobre desarrollo de software patrocinada por el Comité de Ciencia de la OTAN celebrada en Garmisch (Alemania), en octubre de 1968, previamente había sido utilizado por el holandés Edsger Dijkstra en su obra The Humble Programmer.
  • Period: to

    Cuarta Fase. Innovación conceptual

    Fundamentos de programación
    Verificación de programas
    Metodologías de diseño.
  • Period: to

    3ra Era

    Nuevo concepto: Sistemas distribuidos.
    Complejidad en los sistemas de información.
    Aparición de las redes de área local y global, además de los comunicadores digitales.
    Amplio uso de Microprocesadores.
  • Metodologías mas usadas

    Metodologías mas usadas
    El Dr. Peter Pin-Shan Chen - modelo entidad relacion.
    El modelo en cascada, basado en las propuestas de Winston W. Royce
  • Period: to

    Quinta Fase. El diseño es el problema

    Entornos de programación
    Especificación formal
    Programación automática.
  • Period: to

    No Hay Balas de Plata

    Es el título de un artículo científico sobre ingeniería del software presentado en 1986 por Fred Brooks con ocasión del X Congreso Mundial de Informática de la IFIP.
    Solucionar la crisis del software fue de suprema importancia para investigadores y empresas productoras de herramientas de software. El costo de propiedad y mantenimiento del software en la década de 1980 fue dos veces más caro que el propio desarrollo del software.
  • No Hay Balas de Plata

    No Hay Balas de Plata
    Fred Brooks publicó su artículo No hay balas de plata, argumentando que ninguna tecnología individual o práctica jamás haría una mejora de 10 veces en la productividad dentro de 10 años.
    El Proyecto parece inocente, simple y directo, pero se transforma en un monstruo; de plazos no alcanzados, presupuesto sobrepasados y productos con errores.
    Y es cuando se busca una solución mágica, como el caso del hombre lobo, una bala de plata, no para matar, si no que ayude a bajar los costos del software.
  • El desarrollo de los servidores web

    El desarrollo de los servidores web
    El físico e informático británico Tim Berners-Lee, quien en 1989 sugirió que el intercambio de información en el CERN (Organización Europea para la Investigación Nuclear) debería realizarse a través de un sistema de hipertexto más fácil y rápido. En 1990, junto con Robert Cailliau, presentó un proyecto que con el paso del tiempo, junto con el primer servidor web, llamado “CERN httpd”, también se creó el primer navegador web y otros elementos básicos de Internet como HTML y HTTP.
  • Period: to

    4ta Era

    Impacto colectivo del Software.
    Aparición de las redes de información y de las tecnologías orientadas a objetos
    Aparecen las redes neuronales, sistemas expertos y SW de Inteligencia Artificial.
    La información como valor preponderante dentro de las Organizaciones.
  • El Primer Navegador de Internet

    El Primer Navegador de Internet
    El británico Tim Berners-Lee fue su inventor. Con ayuda del belga Robert Cailliau y otros desarrolladores, mientras trabajaban en el CERN (Consejo Europeo para la Investigación Nuclear), Berners-Lee y su equipo crearon el primer navegador de la historia, que llamaron WorldWideWeb. Más tarde, para evitar confusiones, se le cambió el nombre a Nexus.
  • Period: to

    Prominencia de Internet

    El crecimiento del uso del navegador, corriendo en el lenguaje HTML, cambió la manera en que estaba organizada la visualización y la recuperación de la información. Las amplias conexiones de red condujeron al crecimiento y la prevención de virus informáticos internacionales en computadores con MS Windows, y la proliferación de correo basura se convirtió en un diseño importante en sistemas de correo electrónico, inundando canales de comunicación y requiriendo de precalificación semiautomatizada.
  • Aparición del Lenguaje de Modelado Unificado (UML) y el Proceso Unificado (UP)

    Aparición del Lenguaje de Modelado Unificado (UML) y el Proceso Unificado (UP)
    En 1995, Rational Software compró Objectory AB, y en los siguientes años desarrollaron y lanzaron el estándar UML (Unified Modeling Language)
    Se trata de un estándar que se ha adoptado a nivel internacional por numerosos organismos y empresas para crear esquemas, diagramas y documentación relativa a los desarrollos de software (programas informáticos)..
  • Surge un desarrollo llamado JAVA

    Surge un desarrollo llamado JAVA
    El lenguaje de programación Java fue desarrollado originalmente por James Gosling.
    Surge un desarrollo llamado JAVA (extensión de C++). Su filosofía es aprovechar el software existente. Facilitar la adaptación del mismo a otros usos diferentes a los originales sin necesidad de modificar el código ya existente.
  • Herramientas ‘CASE’

    Herramientas ‘CASE’
    Las herramientas CASE (Computer Aided Software Engineering, Ingeniería de Software Asistida por Computadora) son diversas aplicaciones informáticas o programas informáticos destinadas a aumentar el balance en el desarrollo de software reduciendo el costo de las mismas en términos de tiempo y de dinero.
  • Period: to

    Metodologías ligeras

    Con la creciente demanda de software en muchas organizaciones pequeñas, la necesidad de soluciones de software de bajo costo llevó al crecimiento de metodologías más simples y rápidas que desarrollaran software funcional, de los requisitos de implementación, más rápidos y más fáciles.
  • Metodologías Ágiles

    Metodologías Ágiles
    Métodos de desarrollo de software basados en procesos iterativos e incrementales, donde los requisitos y soluciones evolucionan durante la colaboración.
    Metodologías como Scrum (1995), Extreme Programming (1999) o DSDM (1995) fueron evolucionando hasta que en Febrero del 2001 se publicó “Manifesto for Agile Software Development” para definir la aproximación ahora conocida como metodologías ágiles.
  • Primer Dispositivo Android

    Primer Dispositivo Android
    El sistema operativo por excelencia en teléfonos celulares.
    Android fue presentado en 2007 junto la fundación del Open Handset Alliance (un consorcio de compañías de hardware, software y telecomunicaciones) para avanzar en los estándares abiertos de los dispositivos móviles. El primer móvil con el sistema operativo Android fue el HTC Dream y se vendió en octubre de 2008.
  • Redes Sociales

    Redes Sociales
    La primera semilla de lo que se puede considerar como una red social se plantó hace varias décadas. En 1971 se realizó el primer envío de un email a través de dos ordenadores que estaban uno al lado del otro. Lo realizó Ray Tomlinson. sin embargo su apogeo empezó en el 2013 con la red que predomina hasta hoy "FACEBOOK".
  • Ingeniería de Software Experimental

    Ingeniería de Software Experimental
    Es la parte de la Ingeniería de Software que se enfoca en reunir evidencia, a través de mediciones y experimentos que involucran sistemas de software (productos de software, procesos y recursos). Esta información está destinada a ser utilizada como la base de teorías sobre los procesos involucrados en la Ingeniería de Software (la teoría respaldada por datos es un principio fundamental del método científico). Varios grupos de investigación usan principalmente técnicas empíricas y experimentales.
  • Tendencias

    Tendencias
    Hoy en día, contamos con carreras universitarias, másteres, y una gran oferta formativa para profesionales del software. A pesar de ser una disciplina joven y que sigue evolucionando, los resultados de todos los esfuerzos y métodos desarrollados con el paso de los años, así como de la experiencia, permiten desarrollar productos de calidad al nivel de cualquier otra ingeniería.
  • El software en la Actualidad

    El software en la Actualidad
    Con la creciente demanda de software en organizaciones cada vez más pequeñas, surge la necesidad de soluciones de software de bajo costo. Esta circunstancia, llevó al crecimiento de metodologías de desarrollo y programación más simples que desarrollaran software en ejecución, desde los requisitos hasta la implementación, de manera más rápida y sencilla.
  • Period: to

    Futuro de la Ingeniería Software

    Según comenta el autor, Jan Bosch, hay tres factores fundamentales para el progreso de la ingeniería de software:
    La innovación.
    De productos a servicios.
    Innovación dirigida por el Cliente.
    Autonomía computacional.
    Combinación de biología y computación.
    Abundancia computacional.