Modelo en Espiral de Bohem
Sectores de cada ciclo:
Planeación
Desarrollo y Validación
Valoración y Reducción del Riesgo
Establecimiento de Objetivos
Entrelazadas
MODELOS
REUTILIZACIÓN
Desventajas
Se pierde control sobre la evolución del sistema
Compromisos de requerimientos
Sistema no cubre necesidades reales de clientes
Ventajas
Reducir cantidad de software a desarrollar
Entregas más rápidas
Disminuir costos y riesgos
Componentes de Software
Sistemas de Software Independientes
Colecciones de Objetos
Servicios Web
Desarrollo e Integración
Diseño de Sistema con Reutilización
Modificación de Requerimientos
Análisis de Componentes
INCREMENTAL
Problemas
Estructura se degrada en cada incremento
Proceso no es visible
Beneficios
Mas rápida entrega e implementación de software útil
Retroalimentación del cliente
Reduce costo de adaptar requerimientos cambiantes del cliente
Especificación
Validación
Fundamental en Enfoques Ágiles
CASCADA
Operación y Mantenimiento
Integración y Prueba de Sistema
Implementación y Prueba de Unidad
Diseño del Sistema y del Software
Análisis y Definición de Requerimientos
PROCESOS DE SOFTWARE
RUP
Buenas Prácticas
Controlar los cambios al software
Verificar la calidad del software
Software modelado visualmente
Usar arquitecturas basadas en componentes
Gestión de requerimientos
Desarrollo de software de manera iterativa
Fases
Transición
Cambio del sistema hacia la comunidad de usuarios y que funcione en un ambiente real
Construcción
Diseño, programación y pruebas del sistema
Elaboración
Diseñar el plan del proyecto
Identificar los riesgos clave del proyecto
Establecer un marco conceptual arquitectónico para el sistema
Desarrollar la comprensión del problema de dominio
Concepción
Identificar entidades externas que interactuarán con el sistema y definirán interacciones
Perspectivas
Práctica
Estática
Dinámica
ENFRENTAR EL CAMBIO
ENFOQUES
Tolerancia al cambio
Entrega Incremental
Implementar incremento
Validar sistema
Integrar incremento
Validar incremento
Desarrollo de incremento
Diseño de Arquitectura
Asignación de requerimeintos
Evitar el cambio
Prototipo del Sistema
Etapas
Evaluación
Desarrollo
Definir la funcionalidad
Establecer objetivos
CLASIFICACIÓN
Procesos Ágiles
Dirigidos por un plan
DESCRIPCIONES DE LOS PROCESOS
Precondiciones y Postcondiciones
Roles
Productos
ACTIVIDADES DE UN PROCESO
Evolución del Software
Mantenimiento de Software
Validación del Software
Pruebas de Aceptación
Pruebas del Sistema
Prueba de desarrollo
Diseño e Implementación del Software
Diseño de Base de Datos
Diseño de Componentes
Diseño de Interfaz
Diseño Arquitectónico
Especificación del Software
Validación de Requerimientos
Especificación de Requerimientos
Obtención y Análisis de Requerimientos
Estudio de factibilidad