Modelo de cascada
Desventajas
Los proyectos reales raramente siguen el flujo secuencial que propone el modelo.
Ventajas
este método radica en su sencillez ya que sigue los pasos intuitivos necesarios a la hora de desarrollar el software
El software debe ser construido, rigurosamente, a través de una transformación sucesiva de documentos, siguiendo una estrategia lineal de desarrollo. Primero saber qué se quiere y después, cuando se conozca todo lo que se quiere, empezar a construirlo.
Modelos evolutivos
Modelo incremental
Software en partes pequeñas, pero utilizables
Es útil cuando el personal no esta disponible para una implementación completa.
El plan afronta la modificación del producto central a fin de cumplir mejor las necesidades del cliente y la entrega de funciones, y características adicionales.
Modelo en espiral
modelo de proceso de software evolutivo
para cubrir las mejores características.
Proporciona el potencial para el desarrollo rápido de versiones incrementales del software.
Ingeniería
elige un modelo para el desarrollo del sistema.
Análisis de riesgo
El proyecto se revisa y se toma la decisión de si se debe continuar con un ciclo posterior de la espiral
Evaluación del cliente
El cliente evalúa el trabajo de ingeniería
Planificacion
se definen los objetivos, las alternativas y las restricciones, se analizan e identifican los riesgos.
Modelos de proceso Modelos de proceso
Procesos agiles
Los procesos ágiles constituyen un nuevo enfoque en el desarrollo
de software
Algunos ejemplos
Crystal
Proceso Software Adaptativo
Scrum
eXtreme Programming.
basado en el modelo incremental
Programación en parejas.
Integración continua.
Cliente in-situ
Estándares de codificación
Caracteristicas
Menor énfasis en el análisis, diseño y documentación.
Equipos pequeños.
Desarrollo incremental.
Programación en cajas de tiempo.
Supervivencia en un entorno caótico.
Sistemas orientados a objetos
Eliminación de las fronteras entre fases.
Desarrollo basado en componentes re utilizables.
Desarrollo iterativo e incremental.
Se pueden combinar con modelos tradicionales.
Fuente
Dos modelos de ciclo de vida
Para cada clase o módulo
Para el sistema completo
Representa gráficamente el alto grado de iteración y
solapamiento que hace posible la tecnología de objetos.
Agrupamiento
Unidad organizativa básica Unidad organizativa básica.
Grupo de clases relacionadas o, recursivamente, clusters
relacionados.
Unidad natural para el desarrollo por parte de un único desarrollador.
Evita el efecto todo-nada propio del modelo en cascada
Orientados a la reutilizacion
Basado en componentes
Proceso de desarrollo unificado
Proceso que puede adaptarse y extenderse en función de las necesidades de cada empresa.
Características del Proceso Unificado de Desarrollo
Centrado en la Arquitectura.
arquitectura software incluye los aspectos estáticos y dinámicos más significativos del sistema.
Dirigido por casos de uso
Establecer el comportamiento deseado del sistema
Iterativo e Incremental
reduce el riesgo a los costos de un solo incremento
Mantenimiento
El software sufrirá cambios como:
adaptarse al entorno externo, o debido a que el cliente requiera ampliaciones funcionales o del rendimiento.
Prueba
comprueba que funciona correctamente antes de ser puesto en explotación.
Ingeniería y Análisis del Sistema
establecer los requisitos de todos los elementos del sistema
Análisis de los requisitos del software
Se analizan las necesidades de los usuarios
para determinar qué objetivos debe cubrir.
Diseño
Se divide en 4 atributos.
La estructura de los datos, la arquitectura del software, el detalle procedimental y la caracterización de la interfaz.
Codificación
desarrolla el código fuente
Modelos tradicionales
Basado en prototipos