Procesos de Software y Ciclos de Vida
Actividades
Validación del software
Las etapas son
Pruebas de aceptación
Pruebas del sistema
Prueba de desarrollo
Diseño e implementacion del sotfware
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
Como enfrentar el cambio
Entrega Incremental
Desventajas
No hay especificación completa del sistema, sino hasta que se define el incremento
final.
El desarrollo iterativo resulta complicado cuando se diseña un sistema de
reemplazo.
La mayoría de los sistemas requieren de una serie de recursos que se utilizan para
diferentes partes del sistema.
Ventajas
los servicios de sistema más importantes reciben mayores pruebas.
Es sencillo incorporar cambios al sistema.
Los clientes deben esperar hasta la entrega completa del sistema, antes de ganar
valor del mismo.
Los clientes pueden usar los primeros incrementos como prototipos y adquirir experiencia que informe sobre sus requerimientos.
¿Qué es?
Es un enfoque al desarrollo de software donde algunos de los incrementos diseñados se entregan al cliente y se implementan para usarse en un entorno operacional.
Creación del prototipo
No se recomienda entregar prototipos desechables
Los prototipos no tienen que ser ejecutables para ser útiles.
Un prototipo de software se usa en un proceso de desarrollo de software para contribuir a anticipar los cambios que se requieran.
Formas de enfrentar el cambio
Entrega incremental, donde los incrementos del sistema se entregan al cliente para
su comentario y experimentación.
Prototipo de sistema, donde rápidamente se desarrolla una versión del sistema o una parte del mismo.
Enfoques para reducir costo
Tolerancia al cambio, donde el proceso se diseña de modo que los cambios se ajusten
con un costo relativamente bajo.
Evitar el cambio, donde el proceso de software incluye actividades que anticipan cambios posibles antes de requerirse la labor significativa de rehacer.
Proceso Unificado Racional
Mejores practicas fundamentales recomendadas
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
Construcción
Elaboración
Concepción
Perspectivas
Práctica
Estática
Dinámica
Modelos
Modelo en espiral de Boehm
Sectores
Planeación
Desarrollo y validación
Valoración y reducción del riesgo
Establecimiento de objetivos
Ingeniería del Software Orientada a la Reutilización
Se divide en
Desarrollo e integración
Diseño de sistema con reutilización
Modificacion de requerimientos
Analisis de componentes
Desarrollo Incremental
Beneficion con respecto a Cascada
Es posible que sea mas rapida la entrega e implementación de software útil al cliente
Es mas sencillo obtener retroalimentación del cliente sobre el desarrollo que se realizo
Reduce el costo de adaptar los requerimientos constantes del cliente
Cascada
Operación y mantenimiento
Integración y prueba de sistema
Implementacion y prueba de unidad
Diseño del sistema y software
Analisis y definición de requerimientos