Unidad I: Fundamentos de la ingeniera del software Tema: Historia de la Ingeniera
INTRODUCCION
Cuando inicio la informtica se hablaba muy poco del software. Cuando se tena que hacer programacin era ms complicada de lo que es hoy ya que no existan mtodos correctos ni haba una planificacin. Prcticamente haba escasa programacin y quien lo haca era porque lo necesitaba, es decir las necesidades eran muy concretas, por eso mismo el mantenimiento del software corr ANTECEDENTES
El termino ingeniera del software fue utilizado por primera vez por Fritz Bauer en la primera conferencia sobre desarrollo de software patrocinada por el comit de ciencias de la OTAN celebrada e Alemania, en octubre de 1968, aunque ya haba sido utilizada por un holands de nombre Edsger Dijsktra en su obra llamada The Humble Programmer. DEFINICION DE INGENIERIA DE SOFTWARE
Existen muchas definiciones para el trmino ingeniera del software, sin embargo todos los conceptos coinciden en cierta manera. Teniendo en cuenta esto d informtica que tiene mtodos y tcnicas para desarrollar, mantener y documentar software de calidad, enfocados a resolver problemas satisfaciendo la necesidad del usuario y que se ejecuta en maquinas re Y para tener un concepto ms fiable incluimos la definicin que la IEEE ha desarrollado: Es la aplicacin de un enfoque sistemtico, disciplinado y cuantificable hacia el desarrollo, operacin y mantenimiento del software; es decir, la aplicacin de ingeniera al software. CRISIS DEL SOFTWARE
Entre los aos 1965 y 1985 ocurri la llamada crisis del software debido a la falta de mtodos y recursos en el sector informtico. Durante este tiempo muchos proyectos importantes no se cumplan en el tiem sealado ni el presupuesto asignado era suficiente, lo que causo grandes prdidas millonarias. Esta crisis no sucedi solo por el inadecuado funcionamiento de un producto, sino que adems problemas de: cmo desarrollar software, como mantener el softwar A continuacin estn los pasos que generaron lo que se llamo la crisis del software: 1. Durante los aos 1945-1955 la programacin maquina. En esta etapa comenz a usarse el lenguaje maquina y lenguaje ensamblador. 2. En los aos 1955-1965 aparecieron muchos lenguajes de programacin y se pens que poda hacerse casi todo. 3. Esta tercera fase es la de la crisis que abarco los aos de 1965 a razones por las cuales surgi la idea de la ingeniera del software que citaremos en el siguiente subtema. Material de consulta 1 Unidad I: Fundamentos de la ingeniera del software del Software Cuando inicio la informtica se hablaba muy poco del software. Cuando se tena que hacer programacin era lo que es hoy ya que no existan mtodos correctos ni haba una planificacin. Prcticamente haba escasa programacin y quien lo haca era porque lo necesitaba, es decir las necesidades eran muy concretas, por eso mismo el mantenimiento del software corra a cargo del mismo programador. El termino ingeniera del software fue utilizado por primera vez por Fritz Bauer en la primera conferencia sobre desarrollo de software patrocinada por el comit de ciencias de la OTAN celebrada e Alemania, en octubre de 1968, aunque ya haba sido utilizada por un holands de nombre Edsger Dijsktra en su obra llamada The Humble Programmer. SOFTWARE Existen muchas definiciones para el trmino ingeniera del software, sin embargo todos los conceptos coinciden en cierta manera. Teniendo en cuenta esto diremos que ingeniera del software es una rama de la informtica que tiene mtodos y tcnicas para desarrollar, mantener y documentar software de calidad, enfocados a resolver problemas satisfaciendo la necesidad del usuario y que se ejecuta en maquinas re Y para tener un concepto ms fiable incluimos la definicin que la IEEE ha desarrollado: Es la aplicacin de un enfoque sistemtico, disciplinado y cuantificable hacia el desarrollo, operacin y mantenimiento del ingeniera al software. Entre los aos 1965 y 1985 ocurri la llamada crisis del software debido a la falta de mtodos y recursos en el sector informtico. Durante este tiempo muchos proyectos importantes no se cumplan en el tiem sealado ni el presupuesto asignado era suficiente, lo que causo grandes prdidas millonarias. Esta crisis no sucedi solo por el inadecuado funcionamiento de un producto, sino que adems problemas de: cmo desarrollar software, como mantener el software existente y futuro y como satisfacer la demanda creciente. A continuacin estn los pasos que generaron lo que se llamo la crisis del software: 1955 la programacin era considerada tan complicada como el diseo de una En esta etapa comenz a usarse el lenguaje maquina y lenguaje ensamblador. 1965 aparecieron muchos lenguajes de programacin y se pens que poda Esta tercera fase es la de la crisis que abarco los aos de 1965 a 1970. El desarrollo de surgi la idea de la ingeniera del software que citaremos en el siguiente Material de consulta Cuando inicio la informtica se hablaba muy poco del software. Cuando se tena que hacer programacin era lo que es hoy ya que no existan mtodos correctos ni haba una planificacin. Prcticamente haba escasa programacin y quien lo haca era porque lo necesitaba, es decir las necesidades a a cargo del mismo programador. El termino ingeniera del software fue utilizado por primera vez por Fritz Bauer en la primera conferencia sobre desarrollo de software patrocinada por el comit de ciencias de la OTAN celebrada en Garmisch, Alemania, en octubre de 1968, aunque ya haba sido utilizada por un holands de nombre Edsger Dijsktra en Existen muchas definiciones para el trmino ingeniera del software, sin embargo todos los conceptos iremos que ingeniera del software es una rama de la informtica que tiene mtodos y tcnicas para desarrollar, mantener y documentar software de calidad, enfocados a resolver problemas satisfaciendo la necesidad del usuario y que se ejecuta en maquinas reales. Y para tener un concepto ms fiable incluimos la definicin que la IEEE ha desarrollado: Es la aplicacin de un enfoque sistemtico, disciplinado y cuantificable hacia el desarrollo, operacin y mantenimiento del Entre los aos 1965 y 1985 ocurri la llamada crisis del software debido a la falta de mtodos y recursos en el sector informtico. Durante este tiempo muchos proyectos importantes no se cumplan en el tiempo sealado ni el presupuesto asignado era suficiente, lo que causo grandes prdidas millonarias. Esta crisis no sucedi solo por el inadecuado funcionamiento de un producto, sino que adems problemas de: cmo e existente y futuro y como satisfacer la demanda creciente. era considerada tan complicada como el diseo de una En esta etapa comenz a usarse el lenguaje maquina y lenguaje ensamblador. 1965 aparecieron muchos lenguajes de programacin y se pens que poda desarrollo de algunas surgi la idea de la ingeniera del software que citaremos en el siguiente Plataforma Educativa UNIDEG Materia: Ingeniera de Software I CARENCIAS INICIALES DEL DESARROLLO DE S
Retrasos considerables en la planificacin. Poca pro Demandas cada vez mas desfasadas frente a las ofertas. Baja calidad y fiabilidad del producto Dependencia de los realizadores, Programas difciles de acabar y y costos muy elevados. Aqu se pens que nada era posible. concepto y comenzaron a aparecer fundamentos de programacin, verificacin de programas y metodologas de diseo. Algunos de los problemas y retrasos del lanzamiento del avin ms grande del mundo, el Airbus A380, se debieron a la incompatibilidad de las diferentes versiones usadas del software de diseo CATIA. Mientras los socios franceses utilizaban la ltima versin, la factora alemana h actualizacin del software empleado en el Ministerio de Trabajo y Pensiones britnico por la empresa de tecnologas de la informacin EDS, cost a los contribuyentes efecto 2000 y los miles de millones gastados para evitar el temido desastre que afortunadamente no sucedi. Las bateras explosivas de los porttiles y otros dispositivos como telfonos mviles estn siendo uno de los ltimos fiascos de la industria del sector con prd sistema informtico de Siemens implantado en 1999 sin probarse suficientemente y sin personal cualificado para su manejo, amarg las vacaciones a medio milln de britnicos. Esta etapa abarca del ao 1980 hasta la actualidad. En esta fase se descubre que parte del problema es el diseo del problema por lo que se desarrollan entornos de programacin, especificacin formal y programacin automtica. Aunque es importante mencionar que aun siguen habiendo esfu mejora de esta rama de la ingeniera. DESASTRES INFORMATICOS
No se puede culpar directamente a la tecnologa del software por los desastres informticos ocurridos en la historia, sin embargo un error en el software del sistema ha costado sector econmico sino tambin en cuanto a su reputacin social. Segn algunos redactores, estos son los desastres informticos ms grandes en la historia del software: 1. El sistema de alerta temprana de la Unin Sovitic Mundial cuando un error en el software indic que cinco misiles balsticos haban sido lanzados por los Estados Unidos. La red de AT&T se hundi en 1990 y dej por un error en una sola lnea de cdigo. Un software mal diseado fue el responsable en 1996 de la explosin de la lanzadera europea Ariane la iniciacin de la secuencia de vuelo, la lanzadera se desvi de de los problemas y retrasos del lanzamiento del avin ms grande del mundo, el Airbus A380, se debieron a la incompatibilidad de las diferentes versiones usadas del software de diseo CATIA. Mientras los socios franceses utilizaban la ltima versin, la factora alemana haban empleado otra. 2. En 2007, una simple tarjeta de red defectuosa dej en tierra a una parte de los 17000 aviones que maneja el aeropuerto de Los ngeles. LENGUAJES DE PROGRAMACION
Material de consulta 2 ARROLLO DE SOFTWARE Retrasos considerables en la planificacin. Poca productividad. Elevadas cargas de mantenimiento. Demandas cada vez mas desfasadas frente a las ofertas. Baja calidad y fiabilidad del producto Dependencia difciles de acabar y que generalmente eran ineficientes, con muchos e y costos muy elevados. Aqu se pens que nada era posible. En los aos 1970-1980 comenz a cambiar el concepto y comenzaron a aparecer fundamentos de programacin, verificacin de programas y y retrasos del lanzamiento del avin ms grande del mundo, el Airbus A380, se debieron a la incompatibilidad de las diferentes versiones usadas del software de diseo CATIA. Mientras los socios franceses utilizaban la ltima versin, la factora alemana haba empleado otra. Un fallo en la actualizacin del software empleado en el Ministerio de Trabajo y Pensiones britnico por la empresa de tecnologas de la informacin EDS, cost a los contribuyentes ms de mil millones de libras en 2004. El los miles de millones gastados para evitar el temido desastre que afortunadamente no sucedi. Las bateras explosivas de los porttiles y otros dispositivos como telfonos mviles estn siendo uno de los ltimos fiascos de la industria del sector con prdidas cuantiosas para su reemplazo. Un nuevo sistema informtico de Siemens implantado en 1999 sin probarse suficientemente y sin personal cualificado para su manejo, amarg las vacaciones a medio milln de britnicos. hasta la actualidad. En esta fase se descubre que parte del problema es el diseo del problema por lo que se desarrollan entornos de programacin, especificacin formal y programacin automtica. Aunque es importante mencionar que aun siguen habiendo esfu No se puede culpar directamente a la tecnologa del software por los desastres informticos ocurridos en la historia, sin embargo un error en el software del sistema ha costado muy caro a empresas no solo en el sector econmico sino tambin en cuanto a su reputacin social. Segn algunos redactores, estos son los desastres informticos ms grandes en la historia del software: El sistema de alerta temprana de la Unin Sovitica estuvo a punto en 1983 de causar la III Guerra Mundial cuando un error en el software indic que cinco misiles balsticos haban sido lanzados por los Estados Unidos. La red de AT&T se hundi en 1990 y dej sin respuesta a 75 millones de llamadas rror en una sola lnea de cdigo. Un software mal diseado fue el responsable en 1996 de la explosin de la lanzadera europea Ariane-5 el 4 de Junio de 1996, cuando a 40 segundos despus de la iniciacin de la secuencia de vuelo, la lanzadera se desvi de su ruta, se parti y explot. Algunos de los problemas y retrasos del lanzamiento del avin ms grande del mundo, el Airbus A380, se debieron a la incompatibilidad de las diferentes versiones usadas del software de diseo CATIA. es utilizaban la ltima versin, la factora alemana haban empleado otra. En 2007, una simple tarjeta de red defectuosa dej en tierra a una parte de los 17000 aviones que maneja el aeropuerto de Los ngeles. Material de consulta ductividad. Elevadas cargas de mantenimiento. Demandas cada vez mas desfasadas frente a las ofertas. Baja calidad y fiabilidad del producto Dependencia generalmente eran ineficientes, con muchos errores 1980 comenz a cambiar el concepto y comenzaron a aparecer fundamentos de programacin, verificacin de programas y y retrasos del lanzamiento del avin ms grande del mundo, el Airbus A380, se debieron a la incompatibilidad de las diferentes versiones usadas del software de diseo CATIA. Mientras los empleado otra. Un fallo en la actualizacin del software empleado en el Ministerio de Trabajo y Pensiones britnico por la empresa de ms de mil millones de libras en 2004. El los miles de millones gastados para evitar el temido desastre que afortunadamente no sucedi. Las bateras explosivas de los porttiles y otros dispositivos como telfonos mviles estn siendo idas cuantiosas para su reemplazo. Un nuevo sistema informtico de Siemens implantado en 1999 sin probarse suficientemente y sin personal cualificado hasta la actualidad. En esta fase se descubre que parte del problema es el diseo del problema por lo que se desarrollan entornos de programacin, especificacin formal y programacin automtica. Aunque es importante mencionar que aun siguen habiendo esfuerzos en la No se puede culpar directamente a la tecnologa del software por los desastres informticos ocurridos en la muy caro a empresas no solo en el sector econmico sino tambin en cuanto a su reputacin social. Segn algunos redactores, estos son los a estuvo a punto en 1983 de causar la III Guerra Mundial cuando un error en el software indic que cinco misiles balsticos haban sido lanzados por sin respuesta a 75 millones de llamadas rror en una sola lnea de cdigo. Un software mal diseado fue el responsable en 1996 de la 5 el 4 de Junio de 1996, cuando a 40 segundos despus de su ruta, se parti y explot. Algunos de los problemas y retrasos del lanzamiento del avin ms grande del mundo, el Airbus A380, se debieron a la incompatibilidad de las diferentes versiones usadas del software de diseo CATIA. es utilizaban la ltima versin, la factora alemana haban empleado otra. En 2007, una simple tarjeta de red defectuosa dej en tierra a una parte de los 17000 aviones que Plataforma Educativa UNIDEG Materia: Ingeniera de Software I Es bien sabido que en la actualidad tenemos muchos lenguajes de programacin que desde 1985 fueron apareciendo como solucin a la mala planificacin del desarrollo de software. As tenemos la programacin estructurada, la programacin orientada a objetos, de programacin ADA, la documentacin, los estndares, CORBA, los servicios web y el lenguaje UML, entre otros, han surgido para solucionar los problemas originados al desarrollar software y constant nuevas ideas dirigidas a esta rea. MITOS SOBRE EL SOFTWARE Los mitos que han surgido en cuanto al software de alguna manera han sido creados por profesionistas que no quieren usar metodologas o herramientas de la ingeniera del software. A continuacin tenemos algunos de los mitos ms comunes: Contamos con el mejor libro para construir software Tenemos lo ltimo en computadoras para desarrollar La planificacin no es tan indispensable Solamente necesitamos conocer el problema de manera general Ser fcil hacer cambios al sistema una vez implementado el software, ya que este lo har fcilmente La calidad de un software se ve cuando ya est en funcionamiento Lo que importa es entregar el software funcionando
EL SOFTWARE EN LA ACTUALIDAD
Se dice que el software hoy da tiene una doble funcin. Por un lado est el producto en s y a la vez la entrega del producto o servicio que proporciona y tambin proporciona una de las grandes necesidades del siglo XXI: la informacin. A travs del software se hacen ms eficientes los datos que se gestionan a travs de de la red haciendo ms fcil, rpido y eficiente el servicio realizado. Los cuenta de que la ingeniera del software es una nueva rea de la informtica que est creciendo y cada vez con ms demanda en el mundo profesional, surgiendo como una base importante para los sistemas cada vez ms complejos, aunque se piensa que todava no est siendo pagado como debera serlo; en Espaa, por ejemplo, se considera bajo el costo para un ingeniero del software, tomando en cuenta que es uno de los pases europeos donde el desarrollo de software es ms destac FUTURO DEL SOFTWARE DE LA INGENIERIA
En los aos 50 y 60 del siglo XX, muchos comentaristas especializados criticaban a la industria del metal en EE.UU. por la falta de inversin en las fbricas. Las fbricas aplicaban los mtodos de produccin modernos, la calidad quedaba en entredicho, y sin embargo el coste del producto final suba, como consecuencia la competencia externa gan una cuota de mercado considerable. Lo que sigui a continuacin fue que la industria del metal perdi gran parte del mercado que sirvi para beneficiar a empresas extranjeras con ms modernidad en todos los aspectos. Aunque hay todava algunos que se muestran regentes a adoptar prcticas y mtodos software, es ms probable que la ingeniera del software tendr ms fuerza y mientras ms informacin correcta se d al pblico, ms empresas estarn dispuestas a invertir. Material de consulta 3 Es bien sabido que en la actualidad tenemos muchos lenguajes de programacin que desde 1985 fueron apareciendo como solucin a la mala planificacin del desarrollo de software. As tenemos la programacin estructurada, la programacin orientada a objetos, orientada a aspectos, las herramientas CASE, el lenguaje de programacin ADA, la documentacin, los estndares, CORBA, los servicios web y el lenguaje UML, entre otros, han surgido para solucionar los problemas originados al desarrollar software y constant Los mitos que han surgido en cuanto al software de alguna manera han sido creados por profesionistas que metodologas o herramientas de la ingeniera del software. A continuacin tenemos algunos Contamos con el mejor libro para construir software. Tenemos lo ltimo en computadoras para desarrollar tan indispensable Solamente necesitamos conocer el problema de manera general Ser fcil hacer cambios al sistema una vez implementado el software, ya que este lo har La calidad de un software se ve cuando ya est en funcionamiento ta es entregar el software funcionando L SOFTWARE EN LA ACTUALIDAD Se dice que el software hoy da tiene una doble funcin. Por un lado est el producto en s y a la vez la roporciona y tambin proporciona una de las grandes necesidades del siglo XXI: la informacin. A travs del software se hacen ms eficientes los datos que se gestionan a travs de de la red haciendo ms fcil, rpido y eficiente el servicio realizado. Los ingenieros informticos se han dado cuenta de que la ingeniera del software es una nueva rea de la informtica que est creciendo y cada vez con ms demanda en el mundo profesional, surgiendo como una base importante para los sistemas cada vez jos, aunque se piensa que todava no est siendo pagado como debera serlo; en Espaa, por ejemplo, se considera bajo el costo para un ingeniero del software, tomando en cuenta que es uno de los pases europeos donde el desarrollo de software es ms destacable INGENIERIA DEL SOFTWARE En los aos 50 y 60 del siglo XX, muchos comentaristas especializados criticaban a la industria del metal en EE.UU. por la falta de inversin en las fbricas. Las fbricas haban comenzado a deteriorarse, no se aplicaban los mtodos de produccin modernos, la calidad quedaba en entredicho, y sin embargo el coste del producto final suba, como consecuencia la competencia externa gan una cuota de mercado sigui a continuacin fue que la industria del metal perdi gran parte del mercado que sirvi para beneficiar a empresas extranjeras con ms modernidad en todos los aspectos. Aunque hay todava algunos que se muestran regentes a adoptar prcticas y mtodos correctos de desarrollo de software, es ms probable que la ingeniera del software tendr ms fuerza y mientras ms informacin correcta se d al pblico, ms empresas estarn dispuestas a invertir. Material de consulta Es bien sabido que en la actualidad tenemos muchos lenguajes de programacin que desde 1985 fueron apareciendo como solucin a la mala planificacin del desarrollo de software. As tenemos la programacin orientada a aspectos, las herramientas CASE, el lenguaje de programacin ADA, la documentacin, los estndares, CORBA, los servicios web y el lenguaje UML, entre otros, han surgido para solucionar los problemas originados al desarrollar software y constantemente surgen Los mitos que han surgido en cuanto al software de alguna manera han sido creados por profesionistas que metodologas o herramientas de la ingeniera del software. A continuacin tenemos algunos Ser fcil hacer cambios al sistema una vez implementado el software, ya que este lo har Se dice que el software hoy da tiene una doble funcin. Por un lado est el producto en s y a la vez la roporciona y tambin proporciona una de las grandes necesidades del siglo XXI: la informacin. A travs del software se hacen ms eficientes los datos que se gestionan a travs de ingenieros informticos se han dado cuenta de que la ingeniera del software es una nueva rea de la informtica que est creciendo y cada vez con ms demanda en el mundo profesional, surgiendo como una base importante para los sistemas cada vez jos, aunque se piensa que todava no est siendo pagado como debera serlo; en Espaa, por ejemplo, se considera bajo el costo para un ingeniero del software, tomando en cuenta que es uno de los En los aos 50 y 60 del siglo XX, muchos comentaristas especializados criticaban a la industria del metal en haban comenzado a deteriorarse, no se aplicaban los mtodos de produccin modernos, la calidad quedaba en entredicho, y sin embargo el coste del producto final suba, como consecuencia la competencia externa gan una cuota de mercado sigui a continuacin fue que la industria del metal perdi gran parte del mercado que sirvi para beneficiar a empresas extranjeras con ms modernidad en todos los aspectos. Aunque hay correctos de desarrollo de software, es ms probable que la ingeniera del software tendr ms fuerza y mientras ms informacin Plataforma Educativa UNIDEG Materia: Ingeniera de Software I Sitios y fuentes de inters (2012, 02). Historia de la Ingeniera del Software. http://www.buenastareas.com/ensayos/Historia
Recursos bibliogrficos
[1]Un Enfoque Prctico, 7ma ed., Mc Graw Hill Interamericana, Edito [2]http://aprendeenlinea.udea.edu.co/lms/moodle/ mod/resource/view.php?id=14273 [3]http://www.slideshare.net/guest9ad165/intoducci on [4]http://www.um.es/docencia/barzana/IAGP/IAGP 2 [5]http://jcgm.ei.uvigo.es/miComunidad/isBlog/abo ut
Material de consulta 4 (2012, 02). Historia de la Ingeniera del Software. BuenasTareas.com. Recuperado 02, 2012, de http://www.buenastareas.com/ensayos/Historia-De-La-Ingenier%C3%ADa-Del-Software/3538890.htm Un Enfoque Prctico, 7ma ed., Mc Graw Hill Interamericana, Editores, S.A de C.V [2]http://aprendeenlinea.udea.edu.co/lms/moodle/ mod/resource/view.php?id=14273 [3]http://www.slideshare.net/guest9ad165/intoducci on-a-la-ingenieria-del-software [4]http://www.um.es/docencia/barzana/IAGP/IAGP 2-Ingenieria-software-introduccion.html [5]http://jcgm.ei.uvigo.es/miComunidad/isBlog/abo ut-2/evolucion-y-proceso-de-desarrollo Material de consulta . Recuperado 02, 2012, de Software/3538890.html res, S.A de C.V [2]http://aprendeenlinea.udea.edu.co/lms/moodle/ mod/resource/view.php?id=14273 cion.html desarrollo/