Sunteți pe pagina 1din 22

Introduccin al curso

MSc Carlos Humberto Carreo Daz

ASPECTOS ACADMICOS IMPORTANTES

Preguntas frecuentes
sobre Ingeniera del Software

Qu es el Software?
Cul es la importancia y coste del Software?
Qu es la Ingeniera del Software?
Cul es la diferencia entre Ingeniera del
Software e Ingeniera de Sistemas?
Ingeniera de Sistemas?
Qu es un sistema y un sistema de informacin?
Qu es un proceso software y un mtodo de
desarrollo?
Cmo se gestiona el proceso?
ASPECTOS ACADMICOS IMPORTANTES

Qu es la Ingeniera del
Software?
El IEEE define:
Ingeniera es la aplicacin de un mtodo sistemtico, estructurado y
cuantificable a estructuras, mquinas, productos, sistemas o procesos.
Ingeniera del software es la aplicacin de un mtodo sistemtico,
estructurado y cuantificable al desarrollo, operacin y mantenimiento
de software.
Bauer, 1972
La IS es el establecimiento y uso de slidos principios de ingeniera y
buenas prcticas de gestin, as como la evolucin de herramientas y
mtodos aplicables y su uso cuando sea apropiado para obtener,
dentro de las limitaciones de recursos existentes, software que sea de
alta calidad en un sentido explcitamente definido.

ASPECTOS ACADMICOS IMPORTANTES

La naturaleza del software

El software se desarrolla o modifica con


intelecto; no se manufactura en el sentido
clsico.
El software no se desgasta. pero s se
deteriora!
Aunque la industria se mueve hacia la
construccin basada en componentes, la
mayor parte del software se construye
para un uso individualizado.
ASPECTOS ACADMICOS IMPORTANTES

La naturaleza del software

El producto software es enteramente conceptual.



No tiene propiedades fsicas como peso, color o
voltaje, y, en consecuencia no est sujeto a leyes
fsicas o elctricas.

Su naturaleza conceptual crea una distancia
intelectual entre el software y el problema que el
software resuelve.

Difcil para una persona que entiende el problema
entender el sistema software que lo resuelve.

Para probar es necesario disponer de un sistema
fsico.

El mantenimiento no es slo una substitucin de
componentes.
ASPECTOS ACADMICOS IMPORTANTES

Dominios de aplicacin del


software
Software de sistemas (compiladores, editores y
herramientas para administrar archivos, componentes
de sistemas operativos, manejadores, software de
redes, procesadores de telecomunicaciones)
Software de aplicacin (procesamiento de
transacciones en punto de venta, control de procesos
de manufactura en tiempo real)
Software de ingeniera y ciencias (Las aplicaciones
van de la astronoma a la vulcanologa, del anlisis de
tensiones en automviles a la dinmica orbital del
transbordador espacial, y de la biologa molecular a la
manufactura automatizada

ASPECTOS ACADMICOS IMPORTANTES

Dominios de aplicacin del


software

Aplicaciones web (son poco ms que un


conjunto de archivos de hipertexto
vinculados que presentan informacin con
uso de texto y grficas limitadas)
Software de inteligencia artificial (robtica,
sistemas expertos, reconocimiento de
patrones (imagen y voz), redes neurales
artificiales, demostracin de teoremas y
juegos)
ASPECTOS ACADMICOS IMPORTANTES

Dominios de aplicacin del


software
Software incrustado (El software incrustado
ejecuta funciones limitadas y particulares (por
ejemplo, control del tablero de un horno de
microondas) o provee una capacidad significativa
de funcionamiento y control)
Software de lnea de productos (por ejemplo,
control del inventario de productos, procesamiento
de textos, hojas de clculo, grficas por
computadora, multimedios, entretenimiento,
administracin de base de datos y aplicaciones
para finanzas personales o de negocios)

ASPECTOS ACADMICOS IMPORTANTES

Dominios de aplicacin del


software

orreccin.
C
Completitud.

Concisin.

Robustez

Fiabilidad.

Eficiencia.

Integridad.

Facilidad de uso.

Facilidad de

mantenimiento.

Facilidad de traza.

Generalidad.

Modularidad

lexibilidad.
F
Facilidad de prueba.

Portabilidad.

Facilidad de reuso.

Interoperabilidad.

Facilidad de auditora.

Exactitud y precisin

de clculos.
Consistencia.

Estandarizacin de los

datos.
Independencia del

Hardware.
Legibilidad.

ASPECTOS ACADMICOS IMPORTANTES

1 generacin del software

???? - 1965

Hardware de propsito
general

Software como algo


aadido

Desarrollo a medida

Ninguna planificacin

Orientacin por lotes


ASPECTOS ACADMICOS IMPORTANTES

2 generacin del software

1965 - 1975

Sistemas multiusuario

Interactividad (Tiempo
Real)

Almacenamiento y
bases de datos

La industria del
software

Software de gran
volumen

Mantenimiento

ASPECTOS ACADMICOS IMPORTANTES

3 generacin del software

1975 - 1990

Microprocesadores, PCs
y sistemas distribuidos

Hardware de bajo coste

Industria planetaria

ASPECTOS ACADMICOS IMPORTANTES

4 generacin del software

1990 s

Tecnologas Orientadas a Objeto


Interfaces grficas de usuario

Sistemas expertos
Proceso paralelo

Tecnologas de componentes
Proceso paralelo

Tecnologas de componentes
ASPECTOS ACADMICOS IMPORTANTES

Y ahora?

ASPECTOS ACADMICOS IMPORTANTES

Crisis del software

C
recimiento espectacular de los costes
del software.
Incumplimiento de los plazos de
Incumplimiento de los plazos deentrega.
Muchas dudas sobre la calidad del
software construido.

ASPECTOS ACADMICOS IMPORTANTES

Crisis del software

Primera Fase. Los albores (1945-1955)


Programar no es una tarea diferenciada del
diseo de una mquina.
Uso de lenguaje mquina y ensamblador.


Segunda Fase. El florecimiento (1955-1965)
Aparecen multitud de lenguajes.
Era posible hacer de todo.


Tercera Fase. La crisis (1965-1970).
Desarrollo inacabable de grandes programas.
Ineficiencia, errores, coste impredecible.
Nada es posible.
ASPECTOS ACADMICOS IMPORTANTES

Crisis del software

Cuarta Fase. Innovacin conceptual (19701980)


Fundamentos de programacin.
Verificacin de programas.
Metodologas de diseo.


Quinta Fase. El diseo es el problema
(1980-????)
Entornos de programacin.
Especificacin formal.
Programacin automtica.
ASPECTOS ACADMICOS IMPORTANTES

Terminologa
Bug:
Chinche, bicho, microbio
Fastidiar, molestar

Patch:
Parche, remiendo, zurcido
Desfase de presupuesto
Costes por encima de lo previsto
Retrasos en entregas
No cumplimiento de plazos
Mantenimiento
Rehacer la aplicacin aadiendo nuevas posibilidades y
mejorando las existentes
ASPECTOS ACADMICOS IMPORTANTES

Crticas a las aplicaciones


Software

Retrasos no previstos
Desbordamiento de costes

Software no acorde con los requisitos

Errores en los programas

Sensibilidad a los errores humanos y a las averas

fsicas
Dificultad de puesta en marcha
Dificultad de evolucin

Mantenimiento ruinoso

La complejidad del software es una propiedad


esencial, no una propiedad accidental
ASPECTOS ACADMICOS IMPORTANTES

Motivos que llevan a que el


software sea complejo

Complejidad del dominio del problema
Imagen que del dominio del problema tiene el cliente
Imagen que del dominio del problema tiene el
desarrollador
El dominio del problema en si


La dificultad de la gestin del proceso de desarrollo

La flexibilidad del desarrollo software
Necesidad de grandes labores de abstraccin
Falta de estndares


Problemas en la caracterizacin del comportamiento
de sistemas discretos
Gran volumen de variables
Interacciones entre las mismas
ASPECTOS ACADMICOS IMPORTANTES

ASPECTOS ACADMICOS IMPORTANTES

S-ar putea să vă placă și