Upload
julio-guzman-aguirre
View
213
Download
0
Embed Size (px)
Citation preview
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.”