-
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
-
La ingenieria de hardware era la guia de la ingeniera de software
-
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.
-
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
-
El software se desarrollaba artesanalmente, caos
-
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" -
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 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.
-
Se acepta el proceso de cascada, como modelo formal en el desarrollo de software
-
Se presenta un articulo donde se describe un modelo para el desarrollo de proyectos, finalmente se terminaria adoptando para el desarrollo de software
-
Edsger W. Dijkstra escribe el articulo "The humble programmer"
-
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
-
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)
-
Los 80, son un año para mejorar los modelos de desarrollo de software, enfocado a evitar el re-trabajao y ahorrar costos
-
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
-
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"
-
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)
-
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
-
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
-
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 -
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 -
La epoca del 2000 incluia un desarrollo de software agil y una ingenieria de software basada en valor
-
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
-
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 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) -
Actualmente los sistemas se tienden a hacer para tomar decisiones autonomas o independientes, evaluando situaciones y determinando los mejores cursos de accion a realizar
-
-
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
-
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.