Professional Documents
Culture Documents
Ingeniera de Software
Introduccin
1.1 Evolucin histrica de la ingeniera de software.
1.2 El software como producto y proceso.
1.3 Factores que intervienen en la ingeniera de software.
1.4 El ciclo de vida de desarrollo de sistemas.
1.5 El mbito de la ingeniera de software.
Introduccin
Segn la definicin del IEEE, citada por [
Lewis 1994] "software es la suma total de
los programas de computadora,
procedimientos, reglas, la documentacin
asociada y los datos que pertenecen a un
sistema de cmputo". Segn el mismo
autor, "un producto de software es un
producto diseado para un usuario".
4
Introduccin
"la Ingeniera de Software es la rama de
la ingeniera que aplica los principios de la
ciencia de la computacin y las
matemticas para lograr soluciones costoefectivas (eficaces en costo o econmicas)
a los problemas de desarrollo de
software", es decir, "permite elaborar
consistentemente productos correctos,
utilizables y costo-efectivos" [Cota 1994].
5
Software de Aplicacin
Consiste en programas independientes que resuelven
una necesidad de negocios especfica (adems del
procesamiento de datos convencional, se utiliza para
controlar las funciones de los negocios en tiempo real)
Software emportado
Reside dentro de la memoria de slo lectura del sistema
y con l se implementan y controlan caractersticas y
funciones para el usuario final y el sistema mismo
(control de combustible, teclado de microondas,
sistemas de frenado, etc..)
7
Computacin Ubicua
El crecimiento rpido de las redes inalmbricas podra
conducir pronto a la verdadera computacin distribuida.
9
Fuente Abierta
Existe la tendencia creciente que impulsa la distribucin del cdigo
fuente para aplicaciones de sistemas, de forma que los clientes
hagan modificaciones locales.
La nueva economa
El reto para los ingenieros de software es construir aplicaciones que
faciliten la comunicacin y la distribucin de productos en masa
mediante productos en formacin
10
11
Significados
Orgenes
La Ingeniera del Software, trmino utilizado 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 Garmish, Alemania, en
octubre de 1968, puede definirse segn Alan
Davis como "la aplicacin inteligente de
principios probados, tcnicas, lenguajes y
herramientas para la creacin y mantenimiento,
dentro de un coste razonable, de software que
satisfaga las necesidades de los usuarios"...
12
Econmicamente
En los EEUU, el software contribuy a 1/4 de todo el
incremento del PIB durante los 90's (alrededor de
90,000 millones de dlares por ao), y 1/6 de todo el
crecimiento de productividad durante los ltimos aos de
la dcada (alrededor de 33,000 millones de dlares por
ao). La ingeniera de software contribuy a $1 billn de
crecimiento econmico y productividad en esa dcada.
Alrededor del globo, el software contribuye al
crecimiento econmico en formas similares, aunque es
difcil de encontrar estadsticas fiables.
13
Socialmente
La ingeniera de software cambia la cultura del mundo
debido al extendido uso de la computadora. El correo
electrnico (E-mail), la WWW y la mensajera
instantnea permiten a la gente interactuar en nuevas
formas. El software baja el costo y mejora la calidad de
los servicios de salud, los departamentos de bomberos,
las dependencias gubernamentales y otros servicios
sociales. Los proyectos exitosos donde se han usado
mtodos de ingeniera de software incluyen a Linux, el
software del transbordador espacial, los cajeros
automticos y muchos otros.
14
Significados
Como el trmino usual contemporneo de un amplio
rango de actividades que se sola llamar programacin y
anlisis de sistemas;
Como un trmino amplio de todos los aspectos de la
prctica de la programacin de computadoras, en
oposicin a la teora, que es llamada ciencia
computacional o computacin;
La ingeniera de software es "(1) la aplicacin de un
mtodo sistemtico, disciplinado y cuantificable al
desarrollo, operacin y mantenimiento de software, esto
es, la aplicacin de la ingeniera al software" y "(2) el
estudio de los mtodos de (1)", estndar IEEE 610.12.
16
Significados
Como el trmino usual contemporneo de un amplio
rango de actividades que se sola llamar programacin y
anlisis de sistemas;
Como un trmino amplio de todos los aspectos de la
prctica de la programacin de computadoras, en
oposicin a la teora, que es llamada ciencia
computacional o computacin;
La ingeniera de software es "(1) la aplicacin de un
mtodo sistemtico, disciplinado y cuantificable al
desarrollo, operacin y mantenimiento de software, esto
es, la aplicacin de la ingeniera al software" y "(2) el
estudio de los mtodos de (1)", estndar IEEE 610.12
17
19
20
21
23
25
Herramientas
Mtodos
Proceso
Un enfoque de calidad
31
33
35
Actividades sombrilla
36
Planeacin
Modelado
Identifica
modificaciones a
Es examinado por
Identifica capacidades y
riesgos de
Evaluacin del
proceso de software
Conduce a
Mejoramiento del
proceso de software
Conduce a
Motiva
Determinacin
de la calidad
39
40
41
43
Recursos
45
Recursos
Herramientas
de software
Nmero
Habilidades
Hardware
Entorno
Personal
Ubicacin
Recursos
de red
Proyecto
Componentes
OTS
Software
reutilizable
Componentes de
Experiencia
completa
Nuevos
componentes
Componentes de
experiencia
parcial
47
Componentes ya desarrollados
Componentes experimentados
51
de
53
55
56
57
Operacin y
mantenimiento
Diseo del
programa
Prueba
de aceptacin
Prueba
del sistema
Codificacin
Pruebas Unitarias
Y de integracin
58
Validar
Diseo del
sistema
Diseo del
programa
Verificar
Codificacin
Prototipado
Pruebas Unitarias
Y de integracin
Prueba
del sistema
Prueba
de aceptacin
Operacin y
mantenimiento
60
Operacin y
mantenimiento
Validar los requerimientos
Anlisis de
requerimientos
Prueba
de aceptacin
Diseo del
sistema
Verificar el diseo
Prueba
del sistema
Pruebas Unitarias
Y de integracin
Diseo del
programa
Codificacin
63
LISTA DE
REVISIONES
Revisar
prototipo
LISTA DE
REVISIONES
LISTA DE
REVISIONES
PROTOTIPAR
EL DISEO
PROTOTIPAR
EL SISTEMA
Revisin del
usuario/cliente
PROTOTIPAR LOS
REQUERIMIENTOS
REQUERIMIENTOS
DEL SISTEMA
(a veces informal
o incompleto)
PROBAR
SISTEMA
ENTREGADO
65
66
67
68
69
Recursos de entorno.
71
72
73
El Modelo COCOMO.
76
77