You are on page 1of 8

PRIMERA ERA Durante los primeros años de la era de la computadora, el software se contemplaba como un añadido.

Desde entonces el campo se ha desarrollado tremendamente. La programación de computadoras era un “arte de andar por casa” para el que existían pocos métodos sistemáticos. El desarrollo del software se realizaba virtualmente sin ninguna planificación, hasta que los planes comenzaron a descalabrarse y los costos a correr. Los programadores trataban de hacer las cosas bien, y con un esfuerzo heroico, a menudo salían con éxito. Los problemas a ser resueltos eran principalmente de una naturaleza técnica, el énfasis estaba en expresar algoritmos conocidos eficazmente en algún lenguaje de programación. En estos primeros años lo normal era que el hardware fuera de propósito general. Por otra parte, el software se diseña a medida para cada aplicación y tenía una distribución relativamente pequeña. El software como producto estaba en su infancia. La mayoría del software se desarrollaba y era utilizado por la misma persona un organización. La misma persona lo escribía , lo ejecutaba y, si fallaba, lo depuraba. Debido a que la movilidad en el trabajo era baja, los ejecutivos estaban seguros de que esa persona estará allí cuando se encontrara algún error. Debido a este entorno personalizado del software, el diseño era un proceso implícito, realizado en la mente de alguien, y la documentación normalmente no existía. A lo largo de los primeros años aprendimos mucho sobre la implementación de sistemas informáticos, pero relativamente poco sobre la ingeniería de las computadoras. Sin embargo, en honor de la verdad, debemos reconocer que durante esa era se desarrollaron muchos sistemas informáticos excepcionales. Algunos de ellos todavía se siguen utilizando hoy y, por sus características, siguen siendo admirados con toda justicia. SEGUNDA ERA La segunda era en la evolución de los sistemas de computadora se extienden desde la mitad de la década de los sesenta hasta finales de los setenta. La multiprogramación y los sistemas multiusuario introdujeron nuevos conceptos de interacción hombre - máquina. Las técnicas interactivas abrieron un nuevo mundo de aplicaciones y nuevos niveles de sofisticación del hardware y del software. Los sistemas de tiempo real podían recoger, analizar y transformar datos de múltiples fuentes, controlando así los procesos y produciendo salidas en milisegundos en lugar de en minutos. Los avances en los dispositivos de almacenamiento en línea condujeron a la primera generación de sistemas de gestión de bases de datos. La segunda era se caracterizó también por el establecimiento del software ya se desarrollaba para tener una amplia distribución en un mercado multidisciplinario. Los programas se distribuían para computadoras grandes y para minicomputadoras, a cientos e incluso a miles de usuarios. Los patronos de la industria, del gobierno y de la universidad se aprestaban a “desarrollar el mejor paquete de software” y ganar así mucho dinero. Conforme crecía el número de sistemas informáticos, comenzaron a extenderse as bibliotecas de software de computadora. Las casas desarrollaban proyectos en los que se producían programas de decenas de miles de sentencias fuente. Los productos de software comprados al exterior incorporaban cientos de miles de nuevas sentencias. Una nube negra apareció en el horizonte. Todos esos programas, todas esas sentencias fuente tenían que ser corregidos cuando se detectaban fallos, modificados cuando cambiaban los requisitos de los usuarios o adaptados a nuevos dispositivos hardware que se hubieran adquirido. Esta actividades se llamaron colectivamente mantenimiento del software. El esfuerzo gastado en el mantenimiento del software comenzó a absorber recursos en una medida alarmante. Aún peor, la naturaleza personalizada de muchos programas los hacía virtualmente imposibles de mantener. Había comenzado una crisis del “software”

APORTACIONES AL CAMPO . Aunque las predicciones de las computadoras de “quinta generación”” continúan eludiéndonos. dirigiéndose al impacto colectivo de las computadoras individuales y de los programas de computadoras. Las decisiones tomadas por gigantes de la industria tales como Microsoft arriesgan billones de dólares. Potentes máquinas personales controladas por sistemas operativos sofisticados. cada una ejecutando funciones concurrentemente y comunicándose con alguna otra. Las redes de área local y de área global. En menos de una década. El microprocesador ha producido un extenso grupo de productos inteligentes. acompañadas por aplicaciones de software avanzadas se han convertido en la norma. las comunicaciones digitales de alto ancho de banda y creciente demanda de acceso “instantáneo” a los datos. Los sistemas expertos y el software de inteligencia artificial han salido del laboratorio para entrar en aplicaciones prácticas de una gran variedad de problemas del mundo real. “Los algoritmos genéricos” ofrecen el potencial para el software que reside dentro de las computadoras biológicas masivamente en paralelo. La industria del software ya es la cuna de la economía del mundo. Las redes de información en todo el mundo proporcionan una infraestructura que iguala a expertos y políticos en pensar sobre una “superautopista de información” y una “conexión del ciberespacio”. desde productos inteligentes. CUARTA ERA La cuarta era de la evolución de sistemas informáticos se aleja de las computadoras individuales y da los programas de computadoras. La programación de realidad virtual y los sistemas multimedia ofrecen formas radicalmente diferentes de comunicar información al usuario final. desde automóviles hasta hornos microondas. han comenzado a surgir nuevas tecnologías. las computadoras llegarán a ser fácilmente accesibles al público. A medida que la cuarta generación progresa. desde robots industriales a equipos de diagnóstico de suero sanguíneo. en redes globales y locales. Sin embargo. dirigiéndose al impacto colectivo de las computadoras y del software. y estos problemas continúan aumentado. pero ninguno ha sido más importante que la computadora personal. múltiples computadoras.TERCERA ERA La tercera era en la evolución de los sistemas de computadora comenzó a mediados de los años setenta y continuó más allá de una década. De hecho internet se puede observar como un “software” al que pueden acceder usuarios individuales. los sistemas y el software que lo permitían continuaron residiendo dentro de la industria y de la academia. Aún más. Las tecnologías orientadas a objetos están desplazando rápidamente los enfoques de desarrollo de software más convencionales en muchas áreas de aplicaciones. incrementó notablemente la complejidad de los sistemas informáticos. El uso personal era extraño. supusieron una fuente presión sobre los desarrolladores del software. El sistema distribuido. La conclusión de la tercera era se caracterizó por la llegada y amplio uso de los microprocesadores. “las técnicas de cuarta generación” para el desarrollo del software están cambiando en forma en que la comunidad del software construye programas informáticos. El software de redes neuronales artificiales junto con la aplicación de lógica difusa ha abierto posibilidades excitantes para el reconocimiento de patrones y habilidades de procesamiento de información de carácter humano. Las arquitecturas informáticas están cambiando de entornos centralizados de grandes computadoras a entornos descentralizados cliente/servidor. un conjunto de problemas relacionados con el software ha persistido a través de la evolución de los sistemas basados en computadora.

reportó una alarma acerca de la Unión Soviética de Repúblicas Socialistas había iniciado un ataque de proyectiles nucleares en contra de ese país. En los primeros dos casos se atacó hacia los recursos financieros de grandes empresas a nivel internacional. nosotros como desarrolladores de Software. al momento de diseñarlo debemos de darnos cuenta de varias cosas para no tener ese tipo de errores que existieron con anterioridad. fue en un caso en Inglaterra. Pero no sólo existieron pérdidas materiales en los malos desarrollos de Software de aquellos días. ya que al enviar facturas de pago. . Esto fue debido a un mensaje de un sistema informatizado hizo de la compañía de Seguro Social. Actualmente. En pánico.00. Además de otras cosas creemos que entre lo más importante que debemos saber es:     ¿Hacia quién va dirigido el SW? ¿Quienes serán los usuarios? ¿Qué tipo de información les será proporcionada? La facilidad de acceso. Finalmente el juez culpó el error de la computadora y no consideró a la mujer responsable de sus acciones. en donde se enjuiciaba a una mujer de 54 años de edad por asesinar a su hija. se le decía que padecía una forma incurable de sífilis. ella estranguló a su hija de 15 años e intento matar a su hijo de 13. Como nos podemos dar cuenta estas consecuencias fueron de gran gravedad. el muchacho escapó y consiguió ayuda para después impedir que su madre se suicidará. nos hemos percatado del problema que existió en algún momento respecto a que no se llevaba una planificación para un buen desarrollo del software. su total de pago presentaba $0. se pierde una vida humana por un error en el Software acerca de un padecimiento. los programadores aprendían solamente practicando. mientras que físicamente el vuelo contaba con demasiados asientos libres. Esto origino una pérdida de $50 millones de dólares. Muchas de estas consecuencias originaron pérdidas millonarias en diferentes Empresas como el caso de una Aerolínea Internacional de los Estados Unidos de América.Durante el desarrollo del tema. Una computadora que se usaba para el servicio militar de los Estados Unidos de América. Es así como se observa los diferentes tipos de consecuencias que se originaban por un mal desarrollo de Software. se alistaron a los bombarderos atómicos norteamericanos. pero al día siguiente a través de un periódico se daba la noticia que todo había sido un error en el Software de la computadora. además de que había infectado a sus dos hijos. el Sistema de Información mostraba que los asientos se encontraban ocupados. lo cual originó bastantes pérdidas. Esto trajo consecuencias que repercutieron en las Organizaciones. A la vez se presentaron casos en los cuales las pérdidas eran iguales o mayores materialmente hablando. y ante la falta de documentación para la enseñanza de la creación de Software. En aquel entonces el programador no se adentraba hacia las repercusiones que pudiera tener el Software que estaba creando. En los siguientes casos aparte de afectar materialmente a la Sociedad. Esto origino una gran movilización para contrarrestar el ataque. Otra de las consecuencias en donde si hubo pérdidas humanas. que tuvo el problema de que al momento de que un pasajero pretendía hacer su reservación de vuelo. Las transacciones financieras de aquél entonces se empezaron a llevar por medio de Software Especializado. Con este tipo de casos nos hemos percatado de la importancia que tiene una planeación acerca del desarrollo del Software. Pero también tuvo errores. informaba a la mujer que ella estaba gravemente enferma.

Parte importante de este aspecto es la documentación. entre muchas otras cosas más. y Comunicadores Digitales. 1ª 1950 . Aparecen: Redes de área local y global. Sistemas de Tiempo Real apoyan la toma de decisiones. Después de que los programas estén terminados deben recibir mantenimiento. sino que se cambia la forma de conceptualizar la vida. Aparición de Multiprogramación y Sistemas Multiusuarios. Existencia de pocos métodos formales y pocos creyentes en ellos. (Casas de Software).esto. Se deben documentar el Software y los procedimientos para que estén codificados en un formato que pueda ser fácilmente accesado. Aparición de Software como producto. programadores y analistas observen el sistema. y los esfuerzos de mantenimiento normalmente sobrepasan el esfuerzo gastado en el diseño y programación original.1972      3ª 1972 . no es del todo satisfactorio dejar las cosas simplemente en las etapas de planeación. Se busca simplificar código. y en caso drástico podemos ver que se cambian las costumbres y cultura de la Sociedad Actual. ¿Quién vive ya sin la ayuda de una computadora que agilice procesos?. INICIO DE LA CRISIS DEL SOFTWARE. Desarrollo a base de prueba y error. queremos finalizar con una semblanza ágil y rápida que nos permitirá observar los aspectos más relevantes que a nuestro juicio han marcado con hechos la Evolución del Software. Pero ante todo siempre debemos adoptar la postura de todos los tipos de usuarios que vayan a trabajar con el Software. Se buscan procedimientos para el desarrollo del Software. Software y procedimientos sin tener que interactuar con él. Después de ver todos los avances podemos observar que no sólo se cambia una manera de trabajar. Amplio Uso de Microprocesadores. No existía un planteamiento previo. es decir todo en base a una buena planeación. La documentación permite que los usuarios. Complejidad en los Sistemas de Información.1965 2ª 1965 . ya que así podremos observar si los resultados que se obtienen son los que se requieren. Nuevo Concepto: Sistemas Distribuidos.1989   . No existía documentación de ningún tipo. ERA AÑOS         CARACTERÍSTICAS Se trabajaba con la idea de “Codificar y Corregir”. CONCLUSIONES A manera de conclusión. Sin embargo.

C++. Diseñado por IBM. Desarrollado como lenguaje de tiempo compartido. Desarrollada en 1979. Éxito comercial a través de Borland. Tecnologías Orientadas a Objetos. Desarrollado en los ochentas. Lenguaje estándar para aplicaciones comerciales. se utiliza para la tecnología orientada a objetos. Sistemas Expertos y SW de Inteligencia Artificial. Desarrollado en Francia. Ramas colaterales: Clipper. Sistema de Multiprogramación. La información como valor preponderante dentro de las Organizaciones. Traza elementos gráficos estableciendo la geometría de lápiz. Ampliamente usado en programación en minicomputadores. Versión mejorada de Pascal. Incluye su propia base de datos. FoxBase.¿?   Creemos de suma relevancia el mencionar algunas de los lenguajes de programación que fueron utilizados en sus respectivas eras. 4ª 1989 . Aparecen: Redes de Información.  Impacto Colectivo de Software. C++ Modula-2 dBase      3ª   . 1973. Utilizado también para aplicaciones comerciales. Programa aplicaciones en IA. Fortran Basic Logo Cobol         1ª     Pascal Prolog Mumps Lisp          2ª     C. Lenguaje Académico. Esto nos ayudará a comprender mejor el objetivo que se perseguía en cada una de ellas. Utilizado en aplicaciones médicas. Sus características son copiadas por otros lenguajes. ERA LENGUAJES   CARACTERÍSTICAS Fue el primer y principal lenguaje Científico. Aparecen: Redes Neuronales. Aplicaciones en Inteligencia Artificial (IA). Sintaxis muy diferente de los demás lenguajes. Se utiliza en aplicaciones comerciales.

El origen del término Ingeniería del Software. programas de pregrado de Ingeniería Software. La industria del software tiene un gran peso en la economía mundial. Muchos expertos concluyeron que este último objetivo requería un conjunto de cursos y la experiencia de proyectos aplicados que iban más allá de lo que podría ser adicionada a un currículo de Ciencias de la Computación. junto con la lógica difusa. Esto supuso mucha presión para los desarrolladores. y era quien lo mantenía. Principalmente orientado a la tecnología de objetos. el software era un añadido. Se utiliza para aplicaciones comerciales. ya que permite interactuar con tablas de manejadores de bases de datos y lenguaje SQL. La programación se consideraba un "arte". Principalmente para aplicaciones comerciales. Versión cotizada. habitualmente quien lo escribía era porque lo necesitaba. comenzó a emerger durante los 1990’s. aunque los ordenadores para uso personal. Esta época acabó con la aparición de los microprocesadores. Aparecen las técnicas de redes neuronales. para el que no existían metodologías. La cuarta era de la evolución de los sistemas informáticos. comienza hacia 1990 y se dirige al impacto colectivo de los ordenadores y el software. apenas estaban difundidos. En una segunda época (a partir de mitad de la década de 1960) se estableció el software como producto y aparecieron las empresas dedicadas al desarrollo y distribución masiva del mismo. En esta época toda la programación se desarrollaba a medida para cada necesidad concreta. como se ha visto previamente se atribuye a dos conferencias organizadas por la OTAN en 1967 y 1968 La tercera era comenzó a mediados de la década de 1970. Originalmente el término “Ingeniería de Software” fue introducido para reflejar la aplicación de ideas tradicionales de la Ingeniería a los problemas de desarrollar software. La experiencia con cursos de Ingeniería de Software dentro del currículo de Ciencias de la Computación mostró a muchos que tales cursos pueden enseñar a los estudiantes “acerca del campo de Ingeniería de Software” pero usualmente no lograban enseñar a ellos “como ser Ingeniero de Software”. en todos los entornos. época en la que los sistemas informáticos aumentaron mucho en su complejidad. diseñados para proporcionar una completa fundamentación que la que podría ser proporcionada dentro del currículo de Ciencias de la Computación. En la medida que la Ingeniería de Software maduraba. y nacieron las redes de ordenadores. de interés en el campo de la Inteligencia Artificial. En los Estados Unidos.    Desarrollado por Microsoft. 4ª Visual C++ Visual Basic    Historia de la Ingeniería del Software Durante los primeros años de la informática. . y en consecuencia tenía muy poca difusión. el alcance de su desafío se hacía más claro. era un proceso que se realizaba sin planificación alguna. La Ingeniería de Software en los 90's 1990 La Ingeniería de Software comenzó a desarrollarse como una disciplina por sí misma.

realmente durante los primeros años de la informática. los servicios web y el lenguaje UML. Fue en esa época donde muchos proyectos importantes superaban con creces los presupuestos y fechas estimados. metodologías y tecnologías que se presentaban como la solución definitiva al problema de la planificación. CORBA. las herramientas CASE. entre otros. Fue entonces donde surgió el término que hoy conocemos como ingeniería del software. disciplinado y con reglas bien definidas que se convertirían en estándares para el desarrollo de aplicaciones. dando su inicio a finales de la década de los sesenta. dado a que la mayoría de desarrolladores de la época se dieron cuenta de la crisis que existía en la elaboración de los proyectos software y que todo era consecuencia de la informalidad que reinaba en el proceso del desarrollo de software de esos años. el lenguaje de programación ADA. brindando técnicas y herramientas para hacer frente a la crisis. Ya que este surgió como un medio o manera para expresar el área de conocimiento que se estaba desarrollando en torno a las problemáticas que ofrecía el software en ese momento. Todos estos fueron anunciados en su momento como la solución a los problemas de la ingeniería del software. proporcionándonos un enfoque ordenado. y algunos de ellos eran tan críticos que sus implicaciones iban más allá de las pérdidas millonarias que causaban. especialmente en grandes proyectos. para el que no existían metodologías. los estándares. previsión de costes y aseguramiento de la calidad en el desarrollo de software. el software era un añadido. Donde esta trata con áreas muy diversas de la informática y de las ciencias de la computación. la programación orientada a objetos. Pero. . porque era un proceso que se realizaba sin planificación alguna. cada año surgen nuevas ideas e iniciativas encaminadas a ello. la documentación. y lo que es más.La Ingeniería del Software es aquella que ofrece métodos y técnicas para desarrollar y mantener software de calidad. Por lo tanto desde 1985 hasta el presente. posibles por las nuevos y más potentes hardware de computadoras. a los aspectos. se han ido apareciendo herramientas. ya que la programación se consideraba un "arte". Cabe mencionar que el término ingeniería de software comenzó a ser utilizado en 1968. siendo estas las que conocemos hoy en día como la programación estructurada.

pero gracias a la aparición de la Ingeniería de Software que fue un término utilizado. y no había. como dijo Alan Davis que la aplicación inteligente es producto de la ingeniería de software que brinda un conjunto de principios probados. y es por ello.En conclusión. nuestro objetivo fundamental es lograr desarrollar software de calidad. actualmente los métodos de ingeniería de software cambian constantemente de acuerdo a las nuevas necesidades que surgen. que toda persona que desee desempeñarse en este campo tiene que tener capacidad para adaptarse a este dinamismo que caracteriza a la carrera. ni existía un orden en la codificación de los programas. lenguajes y herramientas para la creación y mantenimiento. dentro de un coste razonable. técnicas. de software que satisfaga las necesidades de los usuarios. en un inicio la programación era caótica. Alemania. y la ingeniería de software surgió porque es necesario crear software que sea robusto. en octubre de 1968 genero que hoy en día y en la actualidad existan infinidad de herramientas que apoyan totalmente al desarrollo de software de alto nivel. como ya mencione. por primera vez por Fritz Bauer en la primera conferencia sobre desarrollo de software patrocinada por el Comité de Ciencia de la OTAN celebrada en Garmisch. . Por lo que. eficiente y económico.