Está en la página 1de 25

Definicin y caractersticas del

SW
Software: (1) instrucciones de computador
que cuando se ejecutan cumplen una
funcin y tienen un comportamiento
deseados, (2) estructuras de datos
que facilitan a los programadores la
adecuada
manipulacin
de
la
informacin, y (3) documentos que
describen la operacin y el uso de
los programas.
Caractersticas del software:
z
z
z

El software se desarrolla, no se fabrica en sentido estricto.


El software no se estropea.
La mayora del software se construye a medida.

Influencia de los costos de


ingeniera
20000

1000

Costes totales

18000

Costes Unitarios

16000
14000
12000
10000

500

8000
6000
4000
2000

100

20

100

200

300

20

Hardware

100

Software

200

300

Curvas de fallos
ndice de fallo

HW

ndice de fallo

tiempo

SW

tiempo

Aplicaciones del software


Software de sistemas.
Software de tiempo real.
Software de gestin.
Software cientfico y de ingeniera.
Software de computadores personales.
Software empotrado.
Software de inteligencia artificial.

La Ingeniera del Software


Problemas del software.
La planificacin y la estimacin de costos son muy
imprecisas.
La productividad es baja.
La calidad es mala.
El cliente queda insatisfecho.
Ingeniera del software: Establecimiento y uso
de principios de ingeniera robustos,
orientados a garantizar la obtencin de
software econmico, fiable y eficiente
sobre mquinas reales.

Mtodos
Herramientas
Procedimientos

Visin genrica de la
Ingeniera del Software.
Definicin. Qu?

Diseo.

Anlisis del sistema.


Establecer
software.

el

mbito

Anlisis de requisitos
sistema de software.
Definicin detallada
funcin del software.

Desarrollo. Cmo?

de

Planificacin.
Anlisis de riesgos.
Asignacin de recursos.
Definicin de tareas.
Estimacin de costos.

Arquitectura de la aplicacin.
Estructura de los datos.
Estructura
interna
de
programas.
Diseo de las interfaces.

del

del

los

Codificacin.
Pruebas.

la

Mantenimiento. El cambio.
Correccin de errores.
Cambios en el entorno.
Cambios en los requisitos.

El proceso
Sommerville:
Un conjunto de actividades y resultados asociados que
conducen a la creacin de un producto de software

Pressman:
Marco de trabajo de las tareas que se requieren para
construir software de alta calidad

IEEE:
Aplicacin de un enfoque sistemtico, disciplinado y
cuantificable hacia el desarrollo, operacin y
mantenimiento del software; es decir, la aplicacin de
ingeniera al software

El proceso

herramientas
mtodos
proceso
un enfoque de calidad

El proceso
Enfoque de calidad: Cultura continua de
mejoras de procesos
El Proceso: Define un marco de trabajo para
un conjunto de reas clave de proceso
Los Mtodos: Indican cmo construir
tcnicamente el software
Las Herramientas: Proporcionan un soporte
para el proceso y los mtodos

El proceso
Marco de trabajo del proceso comn
Actividades del marco de trabajo
Tareas
Conjunto
de tareas

Hitos, entregas
Puntos SQA

Actividades de proteccin

Paradigmas de la Ingeniera de
Software
El modelo lineal secuencial
El modelo de construccin de prototipos
El modelo DRA (desarrollo rpido de
aplicaciones)
El modelo incremental
El modelo en espiral
El modelo de ensamblaje de componentes

Modelo lineal secuencial


Anlisis

Diseo

Cdigo

Pruebas

El ms antiguo y extensamente utilizado


Inconvenientes:
Los proyectos reales rara vez siguen el flujo
secuencial
Es difcil establecer explcitamente al principio
todos los requisitos
El cliente debe ser paciente
Se producen estados de bloqueo

Modelo de construccin de
prototipos
Recoleccin
refinamiento
requisitos
Producto de
ingeniera

Diseo
rpido

Refinamiento
del prototipo

Construccin
del prototipo
Evaluacin
del prototipo
por el cliente

Modelo de construccin de
prototipos
Ventajas
Ayuda a identificar los requisitos
Agrada tanto a los clientes como a los
desarrolladores

Inconvenientes
El cliente considera al prototipo como el producto
final, listo para usar.
la calidad del software o la factibilidad de
mantenimiento no se tienen en cuenta
El desarrollador a menudo hace compromisos de
implementacin

El modelo DRA
Equipo n3
Anlisis
Equipo n2

Diseo

Anlisis
Equipo n1

Cdigo

Diseo

Anlisis

Pruebas

Cdigo
Diseo

Pruebas
Cdigo
Pruebas
De 60 a 90 das

El modelo DRA
Inconvenientes
Para proyectos grandes requiere recursos
humanos suficientes
Los clientes y desarrolladores deben estar
comprometidos en las rpidas actividades
Si el sistema no se puede modularizar ser
problemtico
No es adecuado con riesgos tcnicos altos

El modelo incremental
Combina elementos del modelo lineal con la
filosofa de creacin de prototipos
El primer incremento a menudo es un
producto esencial (ncleo)
A partir de la evaluacin se planea el
siguiente incremento y as sucesivamente
Es interactivo por naturaleza
Es til cuando el personal no es suficiente
para la implementacin completa

El modelo incremental
Anlisis

Diseo

Anlisis

Incremento 1
Cdigo Pruebas

Diseo

Anlisis

Entrega de

1er incremento

Incremento 2
Cdigo Pruebas

Diseo

Anlisis

Entrega de
2 incremento

Incremento 3
Cdigo Pruebas

Diseo

Entrega de
incremento

3er

Incremento 4
Cdigo Pruebas

Tiempo de calendario

Entrega de
incremento

4o

El modelo incremental
Ventajas
Se puede financiar el proyecto por partes
Apropiado para proyectos grandes de larga
duracin
No se necesita tanto personal al principio como
para una implementacin completa

Inconvenientes
Se necesitan pruebas de regresin
Pueden aumentar el coste debido a las pruebas

El modelo en espiral
Tiene la naturaleza interactiva de
construccin de prototipos y los aspectos
controlados y sistemticos del modelo
lineal secuencial
Durante las primeras iteraciones, la
versin incremental podra ser un modelo
en papel o un prototipo
Durante las ltimas iteraciones, se
producen versiones cada vez ms
completas de ingeniera de sistemas

El modelo en espiral
Determine objetivos
alternativas y
restricciones

Anlisis de
Riesgos
Anlisis de
Riesgos

Evale alternativas,
identifique y resuelva
riesgos

Anlisis de
Riesgos

REVISIN

Anlisis
de Proto
Riesgos tipo 1

Plan de requerimientosConcepto de
Plan del ciclo de vida Operacin

Planea la
siguiente fase

Prototipo
Prototipo
3
2

Prototipo
Operacional

Simulaciones, modelos y benchmarks

RequeriDiseo
Diseo
mientos de
del
Detallado
SW
Plan de
Validacin de
Producto Codificacin
Desarrollo
Requerimientos
Prueba de
Unidades
Plan de Integracin Diseo
Prueba de
y Prueba
V &V
Prueba de Integracin
Desarrolla y verifica
Aceptacin
el siguiente nivel
Servicio
del producto

El modelo en espiral
Planificacin

Anlisis de riesgos

Comunicacin
con el cliente

Ingeniera

Evaluacin del
cliente

Construccin y adaptacin

El modelo en espiral
Tareas
Comunicacin con el cliente: Para establecer comunicacin
entre el desarrollador y el cliente.
Planificacin: Para definir los recursos, el tiempo y otras
informaciones relacionadas con el proyecto.
Anlisis de riesgos: Para evaluar riegos tcnicos y
operativos.
Ingeniera: Para construir una o ms representaciones de la
aplicacin.
Construccin y adaptacin: Para construir, probar, instalar y
proporcionar soporte al usuario
Evaluacin del cliente: Para obtener la reaccin del cliente
segn la evaluacin de las representaciones del software

El modelo de ensamblaje de
componentes
El modelo utiliza el marco de trabajo tcnico
del paradigma orientado a objetos
Incorpora muchas caractersticas del modelo
en espiral
La actividad de ingeniera comienza con la
identificacin de clases candidatas
Segn estudios realizados este modelo:
Reduce el tiempo de desarrollo en un 70%
Reduce el costo del proyecto en un 84%

El modelo de ensamblaje de
componentes
Planificacin

Identificar
componentes
candidatos
Anlisis de
riesgos

Comunicacin
con el cliente

Ingeniera

Evaluacin del
cliente

Construccin y
adaptacin

Construir n
interacciones
del sistema

Buscar
componentes
en biblioteca

Poner
componentes
nuevos en la
biblioteca

Extraer
componentes
si estn
disponibles

Construir
componentes
si no estn
disponibles

También podría gustarte