Ingenieria de desarrollo de sistemas

Ing. en Sistemas Computacionales

Fundamentos de Desarrollo de Sistemas

Unidad II
Ingeniería del software

Mexicali, Baja California. Noviembre 30 2009

UNIDAD II
INTRODUCCION A LA INGENIERIA DE SOFTWARE

DEFINICION DE INGENIERIA DE SOFTWARE

Definición de Ingeniería del software (Software engineering en inglés). La ingeniería del software es el desarrollo, operación ymantenimiento del software de forma sistemática, disciplinada y cuantificable, y el estudio de dichos métodos. En otras palabras, es el estudio dedicado a la creación de software de buena calidad, barato y fácil de desarrollar y mantener. Es la aplicación de la ingeniería al software.
El termino ingenieria de software fue utilizado por primera vez por Feliz Baver en la primera conferencia sobredesarrollo de software patrocinada por el comite de Ciencias de la OXAN celebrado en Garmich Alemania en 1968.
La Ingeniería del Software trata de áreas muy diversas de la informática y de las ciencias computacionales, tales como constantes de compiladores, sistemas operativos o desarrollos de Internet.
“La ingeniería de Software es el establecimiento y uso de principios sólidos de la ingenieríapara obtener económicamente un software confiable y que funcione de modo eficiente en máquinas reales” (Fritz Baver)
La IEE la define como la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento de software, es decir, la aplicación de la ingeniería al software.

HISTORIA DE LA INGENIERIA DEL SOFTWARE
La Ingeniería del Software, términoutilizado 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, Alemania, en octubre de 1968, puede definirse según Alan Davis como “la aplicación inteligente de principios probados, técnicas, lenguajes y herramientas para la creación y mantenimiento, dentro de un coste razonable, de software quesatisfaga las necesidades de los usuarios”… Fuente Wikipedia..
El término ingeniería del software empezó a usarse a finales de la década de los sesenta, para expresar el área de conocimiento que se estaba desarrollando en torno a las problemáticas que ofrecía el software en ese momento.
En esa época, el crecimiento espectacular de la demanda de sistemas de computación cada vez más y más complejos,asociado a la inmadurez del propio sector informático (totalmente ligado al electrónico) y a la falta de métodos y recursos, provocó lo que se llamó la crisis del software (en palabras de Edsger Dijkstra) entre los años 1965 y 1985. Durante esa época muchos proyectos importantes superaban con creces los presupuestos y fechas estimados, algunos de ellos eran tan críticos (sistemas de control deaeropuertos, equipos para medicina, entre otros) que sus implicaciones iban más allá de las pérdidas millonarias que causaban.
La crisis del software pasó, no tanto por la mejora en la gestión de los proyectos, sino en parte porque no es razonable estar en crisis más de veinte años, y en parte porque se estaban haciendo progresos en los procesos de diseño y metodologías.
Así pues, desde 1985 hastael presente, han ido apareciendo herramientas, metodologías y tecnologías que se presentaban como la solución definitiva al problema de la planificación, previsión de costes y aseguramiento de la calidad en el desarrollo de software. Entre las que se encuentran la programación estructurada, la programación orientada a objetos, a los aspectos, las herramientas CASE, el lenguaje de programación ADA,la documentación, los estándares, CORBA, los servicios web y el lenguaje UML (entre otros) fueron todos anunciados en su momento como la solución a los problemas de la ingeniería del software, la llamada “bala de plata” (por silver bullet). Y lo que es más, cada año surgen nuevas ideas e iniciativas encaminadas a ello.
En combinación con las herramientas, también se han hecho esfuerzos por…