23 software engineering homework help

Ingenieria del Software

  • La ingenieria de Software

    En un principio la diferenciacion entre la ingenieria de software y la de hardware era poca, se utilizaban los mismos modelos y procesos para ambos
  • Period: to

    50's Ingenieria de Hardware

    La ingenieria de hardware era la guia de la ingeniera de software
  • Se inicia el proyecto SAGE en E.U.

    Se inicia el proyecto SAGE en E.U.
    Se inicia el proyecto SAGE, para el departamento de defensa de los Estados Unidos, esto generaria una gran parte de los programadores para las siguientes decadas.
  • El desarrollo de SAGE se asocia con Lincoln Labs

    Esto agrega miles de programadores al desarollo del software de SAGE, esto llevaria a muchas formas de trabajar en los desarrollos de software, para la proxima decada de los 60's
  • Period: to

    60's Software Artesanal

    El software se desarrollaba artesanalmente, caos
  • Enfoque "Code and Fix"

    Debido a que la demanda del SAGE, supero a las empresas que intervenian en el, se empezo la capacitacion de personas ajenas al mundo de la computacion. Esto llevo a utilizar un enfoque conocido como Codifica y Arregla:
    - Se adaptaba mas a sus necesidades, de copiar el codigo y arreglo en otras maquinas, ahorrando un tiempo significativo.
    - Ahorraba en un principio costes de volver a comenzar cada codigo para cada maquina. Nace tambien lo que seria conocido como "Codigo Espageti"
  • Inicia el proyecto OS/360

    Inicia el proyecto OS/360
    Proyecto que revolucionaria el Software, debido a las tecnicas y sistemas implementados por IBM. El desarrollo de este sistema no fue el "Code an Fix"
  • NATO Science Committee Organiza junta para la Ingenieria de Software

    NATO Science Committee organiza 2 juntas de "Ingenieria de Software" por los años 1968 y 1969, estas proverian una fuerte linea base de entendimiento de la ingenieria de software y como gobiernos, industrias y practicantes, para desarrollar e implementar mejoras en sus procesos de desarrollo de software.
  • Period: to

    70's Metodos formales y el proceso de cascada

    Se acepta el proceso de cascada, como modelo formal en el desarrollo de software
  • Winston W. Royce publica el modelo de cascada

    Winston W. Royce publica el modelo de cascada
    Se presenta un articulo donde se describe un modelo para el desarrollo de proyectos, finalmente se terminaria adoptando para el desarrollo de software
  • The humble programmer

    Edsger W. Dijkstra escribe el articulo "The humble programmer"
  • Fred Brooks publica Mythical Man Month

    Fred Brooks publica Mythical Man Month
    Este libro nos habla sobre la administracion del software y las experiencias tomadas por brooks en el desarrollo del sistema OS/360 de IBM. Este nos habla de multiples problemas presentados en la ingeniera de software, descrita como una biblia, todos la leen pero nadie la aplica
  • Encuesta revela problemas en el desarrollo de Software

    Encuesta revela problemas en el desarrollo de Software
    En 1979, una encuesta revela que los costos de desarrollo de software, superan ya al desarrollo de hardware, esta tendencia seguiria cada vez mas a partir de los 80's. Esto es debido a que el era dificil, costoso y pesado, implementar el modelo de cascada en el desarollo. Habia muchas cosas que enfrentar, como las personas con experiencias de desarrollo de los 50's, que usualmente usaban frases autoprofeticas (hay que acelerar la documentacion, porque vamos a tener que hacer X cosa)
  • Period: to

    80's Productividad y Escalabilidad

    Los 80, son un año para mejorar los modelos de desarrollo de software, enfocado a evitar el re-trabajao y ahorrar costos
  • Creacion del SW-CMM

    Creacion del SW-CMM
    Se crea el SW-CMM (Capability Maturity Model for Software), apoyado por el gobierno norteamericano, esto ayuda a avalar la calidad de las empresas que proveen software al departamento de defensa norteamericano. Marcaria una tendencia de las empresas a seguir un modelo de procesos, como SW-CMM e ISO 9001. Mas reportes de exitos eran regresados y se reducian los costes de retrabajo
  • Brooks escribe el documento "No Silver Bullet — Essence and Accidents of Software Engineering"

    Brooks escribe el documento "No Silver Bullet — Essence and Accidents of Software Engineering"
    Documento que discute los problemas que surgian de la ingenieria de software, en el abarca temas, como la diferenciacion en la regla de la ganancia doble con el hardware. Tambien tocaba temas en que un sistema software no prometia mejorar aspectos como la "productividad, fiabilidad o simplicidad"
  • Auge de la Orientacion a Objetos

    Auge de la Orientacion a Objetos
    Crece el auga hacia la programacion orientada a objetos, esto orientaba los esfuerzos hacia la reutilizacion y daria hincapie en los 90 para la creacion y desarollo de UML, daba otra vision sobre lo que era los modelos de flujo estructurado (como el cascada)
  • Period: to

    90's Modelos de Concurrencia vs Secuenciales

    Empieza la decada de los 90's, el nacimiento de la web, el uml y la orientacion a objetos, cambiaria la perspectiva de los modelos estructurados seguidos durante mas de 3 decadas
  • Nace UML

    Nace UML
    Se crea UML para el Rational Software de IBM, este daria la primer version para la representacion y modelado de objetos de manera visual, posteriormente este lenguaje de modelado seria adoptado por el Object Management Group en 1998
  • Se crea el Proceso Unificado

    Se crea el Proceso Unificado
    Es el primer modelo creado para los llamados metodo agiles, esto en respuesta de que los modelados estructurados e inflexibles no funcionan en el mundo del software actual, donde los tiempos de mercado y la globalizacion reducen los tiempos de espera. Alguno de los modelos agiles que nacieron son:
    - Adaptive Software Development
    - Feature Driven Development
    - Extreme Programming
  • Creacion de la Open Source

    Creacion de la Open Source
    Nace como "empresa no lucrativa" la open source, quien anteriormente existia como "free source", esta organizacion demostraba nuevas metodologias agiles y libres para el desarrollo de software, otorgando otro enfoque a lo realizado en la epoca Algunas de sus contribuciones son:
    - Linux
    - World Wide Web (WWW)
    - Mozilla, Apache, Python
  • Period: to

    2000's Agilidad y Valor

    La epoca del 2000 incluia un desarrollo de software agil y una ingenieria de software basada en valor
  • Se crea el "Manifiesto Agil"

    Se crea el "Manifiesto Agil"
    El manifiest agil marcaria un efoque y un camino para el desarrollo de software cambiante y demandante de la epoca, en una respuesta a que el desarrollo en cascada era "obsoleto". Ver el Manifiesto Agil
  • Se crea el diseño de software MDA

    El OMG crea el diseño de Model-driven architecture el cual explica los conceptos que tendra que tener diferentes funcionalidades de un sistema, contiene aspectos como un modelo de plataforma independiente y un lenguaje especifico del dominio
  • Se publica el libro "Patterns of Enterprise Applications Architecture"

    Se publica el libro "Patterns of Enterprise Applications Architecture"
    Se publica el libro Patterns of Enterprise Applications
    Architecture de Martin Fowler, que muestra algunos de los problemas principales en Software y Computacion. En este libro se contiene definiciones como el MDD (Desarrollo de software dirigidos por modelos)
  • Autonomia computacional

    Actualmente los sistemas se tienden a hacer para tomar decisiones autonomas o independientes, evaluando situaciones y determinando los mejores cursos de accion a realizar
  • Period: to

    Globalizacion y los Sistemas de Sistemas

  • Conectividad global

    La conectividad global logra, una economica global y una interconectividad de la comunicacion y el conocimiento. Algunos procesos cambian como el cambio continuo de prestaciones y salarios, gracias al outsorcing
  • Tendencia de conexion entre sistema

    La tendencia actual es la conexion entre sistemas, anteriormente los sistemas se desarrollaban de manera independiente, ya que se comprobaba que la comunicacion entre ellos era lente, ineficente, con decisiones peligrosas. Gracias a algunos estandares creados para la comunicacion, ahora se desarrollan "sistemas de sistemas", para la agilisacion de procesos de desarrollo.