Ciclo de vida del Software
Proceso: Conjunto de pasos a seguir para conseguir un objetivo
Etapas principales Análisis Diseño Codificación Pruebas Mantenimiento
Code and Fix En otras palabras…. El método “chafa!” Bueno para programas muy, pero muy chicos. El código suele tener mala estructura. Arreglar el código de este tipo es muy costoso. Usualmente no se ajusta a las necesidades del cliente.
Modelo en cascada Propuesto por Royce en 1970 También conocido como el modelo clásico, tradicional o lineal. Sigue secuencialmente los siguientes pasos: Definición de Requisitos Diseño de Sistema y Software Implementación y Pruebas de Unidad Integración y Prueba del Sistema Operación y Mantenimiento
Modelo en cascada Difícilmente se usa como tal en la práctica, ya que requeriría tener un conocimiento absoluto de los requerimientos Por esta razón lo que usualmente se hace es regresar a pasos anteriores en el modelo. El principal problema es que es muy lenta y las iteraciones suelen ser muy costosas Es muy inflexible al momento de incorporar nuevos requerimientos
Modelo en cascada ¿Cúando debe usarse? Proyectos que no son novedosos o son rutinarios. Proyectos donde se cuenta con todas las especificaciones desde un principio. Proyectos donde conocemos con certeza la mayoría de los requerimientos del proyecto.
Modelo de prototipo El prototipo debe ser construido lo más rápido posible Usualmente es una interfaz de usuario sin funcionalidad Funciona mejor cuando los clientes deben ver resultados en corto plazo Es un mecanismo para la definición de requerimientos
Modelo de prototipo Esta compuesto por las siguientes etapas: Planeacion Modelado y diseño Construcción del prototipo Retroalimentación
Modelo de prototipo El prototipo puede ser construido de las siguientes dos formas: Una interfaz de usuario sin funcionalidad, que represente las necesidades del usuario en cuanto a entradas y salidas refiere. Este modelo es fácil de descartar Utilizando herramientas de cuarta generación (Herramientas CASE) para generar el prototipo y así acortar el tiempo de desarrollo.
Modelo de prototipo ¿Qué son las herramientas de cuarta generación (CASE)?
Modelo de prototipo Una vez que el cliente apruebe el prototipo y que el desarrollador entiende las necesidades del cliente se puede proceder de dos formas: Optar por un modelo de prototipo evolutivo Optar por un modelo de desarrollo tradicional
Prototipo =! Producto final Modelo de prototipo Es importante recalcar con el cliente que: Prototipo =! Producto final ¿Por qué?
Modelo de prototipo No es recomendado para proyectos grandes o de larga duración o para aplicaciones muy chicas. Lo recomendado es para proyectos cuya duración sea de 3 a 5 meses
Modelo en espiral Uno de los modelos más conocidos propuesto por Barry Boehm El ciclo de desarrollo se presenta como una espiral en lugar de una serie de pasos lineales
Modelo en espiral Los ciclos de desarrollo se dividen en 6 fases: Comunicación con el cliente Planificación Análisis de riesgos Desarrollo Despliegue y validación Evaluación del cliente
Riesgo Desempeño Seguridad Proceso Implementación de tecnología Base de datos Calendarización Externo Estabilidad
Modelo en espiral Ventajas No se necesita una versión completa de los requisitos para poder comenzar. El riesgo es menor, en términos generales, ya que si se cometen errores los podemos corregir a tiempo.
Modelo en espiral En teoría el mejor de los modelos… en la práctica es complicado de aplicar por las siguientes desventajas Falta de conocimiento de la administración del riesgo por los líderes del proyecto. El cliente puede que vea muy riesgoso este tipo de desarrollo o no lo comprenda. La constante comunicación con el cliente en ocasiones no es tan sencilla de agendar.
Modelo en espiral ¿Cuándo usarlo? Sistemas complejos y de gran tamaño Proyectos donde el riesgo sea un factor fundamental. Cuando no podamos definir todos los requisitos de un inicio. Cuando podamos contar con el contacto constante con el cliente.