HISTORIA DE LA INGENIERÍA DE SOFTWARE
TAREA II
Arturo Rangel Castillo
¿CUÁNDO Y DÓNDE SE ESTABLECIÓ EL TÉRMINO 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.
El Comité de ciencia de la OTAN patrocinó dos conferencias sobre ingeniería del
software en 1968 y en 1969, que dio al campo su impulso inicial. Muchos creen que estas
conferencias marcaron el inicio oficial de la profesión de la ingeniería de software.
El software como se ha visto, no surge con los equipos electrónicos, -aunque es con
ellos que adopta el nombre- ya está presente desde el empleo de ábacos o sumadoras
mecánicas. Sin embargo, en estos casos, el (software) no se encuentra incorporado en el
equipo.
¿A QUÉ SE LE DENOMINÓ LA CRISIS DEL SOFTWARE?
¿QUÉ LO ORIGINÓ Y QUÉ SOLUCIONES SE PROPUSIERON PARA
REMEDIAR ESTE PROBLEMA?
El término “crisis del software” se acuñó en 1968 Bauer, Bolliet, & Helms, en la
primera conferencia qeu la organización OTAN celebró sobre desarrollo de software.
Con dicho término se definieron los problemas que surgían en el desarrollo de
sistemas de software, cuyos proyectos terminaban tarde, desbordando los presupuestos y
con problemas de funcionamiento.
Es en este contexto donde comienza a tener razón de ser el concepto de proyecto de
software. Según Roger Pressman “la gestión de proyectos implica la planificación,
supervisión y control del personal, del proceso y de los eventos que ocurren mientras
evoluciona el software desde la fase preliminar a la implementación operacional.
La gestión eficaz del proyecto de software se centra en las cuatro “P”: personal,
producto, proceso y proyecto. El gestor que se olvida de que el trabajo de ingeniera del
software es un esfuerzo humano intenso nunca tendrá éxito en la gestión de proyectos.
Un gestor que no fomenta una minuciosa comunicación con el cliente al principio de
la evolución del proyecto se arriesga a construir una elegante solución para un problema
equivocado. El administrador que presta poca atención al proceso corre el riesgo de arrojar
métodos técnicos y herramientas eficaces al vacío.”
Existen múltiples causas que originan la crisis del software. Una de ellas es que el
desarrollo de un software es un proceso relativamente “nuevo”, del cual no se tiene
personal lo suficientemente capacitado, debido a una pobre implementación de los procesos
más organizados. Por otro lado, debido a que el software es el conjunto de programas o
instrucciones de una computadora, y que por lo tanto, no es un elemento de carácter físico;
es poco probable que resulte exitoso el primer intento de elaboración, ya que el personal
encargado de su realización no posee total claridad de los requerimientos de su cliente, lo
que a su vez, vuelve en exceso complicado hacer un diseño detallado de requerimientos,
pues es importante mencionar que su calidad se mide con respecto a su funcionamiento.
Para dar solución a los problemas que se presentaban en esta conferencia se creó una
nueva rama de ingeniería, la ingeniería de software.
¿A QUÉ SE LE APLICA EL TÉRMINO DE “SILVER BULLET” EN EL ÁMBITO
DE LA INGENIERÍA DE SOFTWARE Y QUÉ CRÍTICAS GENERÓ ESTA IDEA?
"No Silver Bullet - Esencia y accidentes de la Ingeniería de Software" es un
documento ampliamente discutido en la ingeniería de software escrito por Fred Brooks en
1986 argumentando que ninguna tecnología individual o práctica nunca haría una mejora de
10 veces en la productividad dentro de 10 años.
Brooks decía que "no hay desarrollo individual, en cualquiera de las técnicas o la
gestión de la tecnología, que por sí misma promete incluso un orden de magnitud. También
afirma que "no podemos esperar a ver alguna vez de dos veces las ganancias cada dos años"
en el desarrollo de software, como hay en el desarrollo de hardware.
Brooks hace una distinción entre complejidad accidental y complejidad esencial, y
afirma que la mayor parte de lo que los ingenieros de software ahora se está dedicado a lo
esencial, por lo que la reducción de todas las actividades accidentales a cero no da una
mejora de un orden de magnitud. Brooks defiende frente a las partes esenciales del proceso
de software. Aunque Brooks insiste en que no hay una SILVER BULLET, cree que una
serie de innovaciones que atacan complejidad esencial podría tener importantes mejoras.
Durante décadas, la solución de la crisis del software era de suma importancia para
los investigadores y las empresas productoras de herramientas de software.
El costo de poseer y mantener el software en la década de 1980 fue dos veces tan caro
como el desarrollo del software.
• En 1990, el costo de propiedad y mantenimiento aumentaron un 30% durante la
década de 1980. • En 1995, las estadísticas muestran que la mitad de los proyectos de
desarrollo estudiados se encontraban en funcionamiento, pero no se consideraron un éxito.
• El proyecto de software promedio rebasa su programa a la mitad. • Tres cuartas
partes de todos los productos de software grandes entregados al cliente son fallas que o bien
no se usan en absoluto, o no cumplen con los requisitos del cliente.
Algunos interpretan que NO SILVER BULLET en el sentido de que la ingeniería de
software ha fallado. Sin embargo, con otras lecturas, Brooks continúa diciendo:
"Seguramente vamos a hacer progresos sustanciales durante los próximos 40 años, de un
orden de magnitud más de 40 años es casi mágico".
¿CUÁLES SON LOS MÉTODOS DE DESARROLLO ÁGIL EN EL CONTEXTO
DE LA IS Y EN QUÉ ÉPOCA APARECIERON?
El desarrollo de software ágil es un concepto usado en el desarrollo de software para
describir las metodologías de desarrollo incrementales (Cohen, Lindvall & Costa, 2003).
Es una alternativa en la gestión tradicional de proyectos TI, donde se hace hincapié en
el empoderamiento de las personas para colaborar y tomar decisiones en equipo, además
potencia la planificación continua, pruebas permanentes y la integración conjunta del
código y los despliegues.
Como parte de este modelo, se han agrupado varias metodologías de desarrollo, las
cuales se basan en el Manifiesto Ágil.
Este es un documento elaborado en febrero de 2001 por líderes y expertos de la
industria del software, que está basado en la experiencia de lo que funciona y no funciona
en dicho campo de la ingeniería.
Las técnicas ágiles varían en prácticas y énfasis, pero comparten características
comunes, incluyendo el desarrollo iterativo y un enfoque en la interacción, la comunicación
y la reducción de artefactos intermedios que consumen muchos recursos.
Desarrollar en iteraciones permite al equipo adaptarse rápidamente a las necesidades
cambiantes. Trabajando en instalaciones cercanas y centrándose en la comunicación,
permite que los equipos puedan tomar decisiones y actuar sobre ellas de inmediato, en lugar
de esperar respuestas de otras instancias posteriores.
La reducción de los artefactos intermedios que no agregan valor a la entrega final
representa más recursos, que se pueden dedicar al desarrollo del producto en sí y su
terminación oportuna.
BIBLIOGRAFÍA
Arturo Rangel Castillo
Addison,Wesley, ´´Historia De La Ingeniería Del Software´´, Wikipedia, 12-X-2020,
México,
https://es.wikipedia.org/wiki/Historia_de_la_ingenier%C3%ADa_del_software#:~:text=util
izaban%20en%20programaci%C3%B3n.-
,De%201950%20a%201960%3A%20Los%20or%C3%ADgenes,la%20ingenier%C3%ADa
%20para%20el%20software.
C. Böhm y G, ´´Crisis Del Software´´, scrummanager, 12-X-2020, México,
https://www.scrummanager.net/bok/index.php?title=Crisis_del_software#:~:text=El%20t%
C3%A9rmino%20%E2%80%9Ccrisis%20del%20software,celebr%C3%B3%20sobre%20d
esarrollo%20de%20software.&text=Tambi%C3%A9n%20se%20acu%C3%B1%C3%B3%
20el%20t%C3%A9rmino,dar%20soluci%C3%B3n%20a%20la%20situaci%C3%B3n.
Karam, Orlando, Tsui, Frank, ´´Crisis Del Software´´, Wikipedia, 12-X-2020,
México,
https://es.wikipedia.org/wiki/Crisis_del_software#:~:text=Existen%20m%C3%BAltiples%
20causas%20que%20originan,de%20los%20procesos%20m%C3%A1s%20organizados.
Captain Jose, ´´NO SILVER BULLET´´, blogspot, 12-X-2020, México,
http://captain-jose.blogspot.com/2012/08/no-silver-bullet.html
Evaluando Software, ´´ ¿Qué es desarrollo de software ágil? ´´, evaluandosoftware,
12-X-2020, México, https://www.evaluandosoftware.com/desarrollo-software-agil/