EL PRODUCTO Capitulo 1 Roger S. Presman. LA EVOLUCION DEL SOFTWARE Hoy en día el software tiene un...

Post on 24-Jan-2016

213 views 0 download

Transcript of EL PRODUCTO Capitulo 1 Roger S. Presman. LA EVOLUCION DEL SOFTWARE Hoy en día el software tiene un...

EL PRODUCTO

Capitulo 1 Roger S. Presman

LA EVOLUCION DEL SOFTWARE

Hoy en día el software tiene un doble papel. Es un producto y al mismo tiempo el vehículo para entregarlo.

LA EVOLUCION DEL SOFTWAREDurante los años 70 y 80

-“nueva revolución industrial”- “la tercera ola del cambio”- “sociedad de información”

Al comienzo de los años 90- “cambio de poder” - “declive y la caída del programador americano”- “reingeniería de la compañía”

A mediados de los años 90Se genero una erupción de libros donde critican enormemente la computadora.

LA EVOLUCION DEL SOFTWARE

Al final de los 90-“la resurrección y evaluación” del programador americano.

Al final del sigo XX- “bomba de relojería” Y2K.

Hoy en día - “la computación omnipresente”

“El papel del software continua su

expansión.”

EL SOFTWARE

Características del Software

El software es un elemento del sistema que es lógico, en lugar de físico.

El software se desarrolla no se fabrica. El software no se estropea. Aunque la industria tiende a ensamblar

componentes, la mayoría del software se construye a medida.

Aplicaciones del Software Software de Sistemas Software de Tiempo Real Software de Gestión Software de Ingeniería y Científico. Software Empotrado Software de computadoras personales Software basado en Web Software de Inteligencia Artificial

SOFTWARE ¿UNA CRISIS EN EL HORIZONTE?

El conjunto de problemas encontrados en el desarrollo del software de computadoras no

se limita al software que “no funciona correctamente”.

Mitos de Gestión

o “Tenemos ya un libro que esta lleno de estándares y procedimiento para construir software ¿no le proporciono a mi gente todo lo que necesita saber?”

o “Mi gente dispone de las herramientas de desarrollo del software mas avanzadas, después de todo les compramos las computadoras mas modernas”.

o “Si fallamos en la planificación podemos añadir mas programadores y adelantar el tiempo perdido”

Mitos de Clientes

o “Una declaración general de los objetivos es suficiente para comenzar a escribir programas –podemos dar los detalles mas adelante-.”

o “Los requisitos del cliente cambian continuamente, pero los cambios pueden acomodarse fácilmente, ya que el software es flexible.”

Mitos de los Desarrolladores

o “Una vez que termine el programa y hacemos que funcione, nuestro trabajo a terminado.”

o “Hasta que no tengo el programa ejecutándose, realmente no tengo forma de probar la calidad.”

o “Lo único que se entrega al terminar el proyecto es el programa funcionando“

EL PROCESO

Capitulo 2 Roger S. Presman

INGENIERA DEL SOFTWARE: UNA TECNOLOGIA ESTRATIFICADA

Fritz Bauer: La Ingeniería de software es el establecimiento y uso de principios robustos de la ingeniería a fin de obtener econonómicamente software que sea fiable y que funcione eficientemente sobre máquinas reales.

Procesos, métodos y herramientas

Un enfoque de calidadUn enfoque de calidadProcesosProcesos

MétodosMétodos

HerramientasHerramientas

Una visión general de la ingeniería del software

La fase de definición se centra en el qué. La fase de desarrollo se centra en el

como.

La fase de mantenimiento se centra en el cambio.

Proceso de Software

Marco de Trabajo común para el procesoMarco de Trabajo común para el proceso

Actividades de ProtecciónActividades de Protección

Actividades del Marco de trabajoActividades del Marco de trabajo

Conjunto de TareasConjunto de Tareas

Tareas

Hitos, entregas

Puntos SQA

Niveles de Madurez del Proceso

• Nivel 1 Inicial • Nivel 2 Repetible • Nivel 3 Definido • Nivel 4 Gestionado • Nivel 5 Optimización

MODELOS DE PROCESO DE SOFTWARE

EstadoActualEstadoActual

Desarrollotécnico

Desarrollotécnico

Integraciónde SoluciónIntegraciónde Solución

Definición de problemas

Definición de problemas

El Modelo Lineal Secuencial

AnálisisAnálisis DiseñoDiseño CódigoCódigo PruebaPrueba

Ingeniería de sistemas/información

El Modelo de Construcción de Prototipos

Escuchar al Cliente

El cliente pruebala maqueta

Construir/revisar la maqueta

El Modelo DRAEquipo No. 1

Modelado de Gestión

Modelado de Gestión

Modeladode datos

Modeladode datos

Modelado de procesos

Modelado de procesos

Generación de aplicaciones

Generación de aplicaciones

Pruebas y entregas

Pruebas y entregas

Modelado de Gestión

Modelado de Gestión

Modeladode datos

Modeladode datos

Modelado de procesos

Modelado de procesos

Generación de aplicaciones

Generación de aplicaciones

Pruebas y entregas

Pruebas y entregas

Equipo No. 2

Modelado de Gestión

Modelado de Gestión

Modeladode datos

Modeladode datos

Modelado de procesos

Modelado de procesos

Generación de aplicaciones

Generación de aplicaciones

Pruebas y entregas

Pruebas y entregas

Equipo No. 3

Modelos Evolutivos de procesos de Software

El modelo incremental

AnálisisAnálisis

DiseñoDiseño

CódigoCódigo

PruebaPrueba

Ingeniería de sistemas/información Incremento 1

Entrega del 1er. incremento

AnálisisAnálisis

DiseñoDiseño

CódigoCódigo

PruebaPruebaIncremento 2 Entrega del

2do. incremento

AnálisisAnálisis

DiseñoDiseño

CódigoCódigo

PruebaPruebaIncremento 3 Entrega del

3er. incremento

El Modelo espiral

Planificación

Análisis de Riesgo

Ingeniería

Construcción y adaptación

Evaluación delCliente

Comunicación con el Cliente

Eje de punto de entrada de proyecto

Proyecto de mantenimiento de productos Proyecto de mejora de productos Proyecto de desarrolla de nuevos productos Proyecto de desarrollo de conceptos

Modelo Espiral WINWIN

1. Identificar el siguiente nivel para los directivos

2. Identificar las Condiciones de victoria de los directivos

3ª. Reunir las condiciones de victoria3b. Establecer los objetivos Restricciones y alternativas del siguiente nivel

4. Evaluar las alternativasdel producto y del proceso Y resolución de riesgos

5. Definir el siguiente Nivel del producto y delProceso incluyendo particiones

6. Validar las Definiciones del producto y del proceso

7. Revisión y comentarios

Modelo de Desarrollo Concurrente

NingunaNinguna

Bajo Desarrollo

En línea base

Bajo Revisión

Bajo Revisión

Bajo modificación

Cambios enespera

Realizado

Actividad de Análisis

Desarrollo basado en Componentes

Planificación

Análisis de Riesgo

Construcción y adaptación dela ingeniería

Evaluación Del Cliente

Comunicación con el Cliente

Identificar componentes

candidatos

Construir la iteracióndel sistema

Poner nuevoscomponentes

en la biblioteca

Extraer Componentes

Si están disponibles

Buscar Componentesen biblioteca

Extraer ComponentesSi No están disponibles

El Modelo de Métodos Formales

Cuando se utilizan métodos formales durante el diseño, sirven como base para la verificación de programas y por consiguiente permiten que el ingeniero de software descubra y corrija errores que no se pudieron detectar de otra manera.

Técnicas de cuarta generación

Facilitan al ingeniero de software la especificación de algunas características del software de alto nivel.

Tecnología de Procesos

Se han desarrollado herramientas de tecnología de procesos para ayudar a organizaciones de software a analizar los procesos actuales, organizar tareas de trabajo, controlar y supervisar el progreso y gestionar la calidad técnica.

Producto y Proceso

“Si el proceso el débil el producto va a sufrir indudablemente.”