sábado, 8 de agosto de 2009

Definición:

Se entiende como una variación sobre el ciclo de vida en Cascada del software, denominada Cascada con Subproyectos, porque permite la ejecución de algunas de las tareas de la cascada en paralelo.


Un ejemplo de aplicación de esta metodología podría ser el desarrollo de un sistema de información para una empresa, en donde deben estar involucradas todas las áreas de la misma porque siempre están compartiendo información. Para ello se pueden ir adelantando de forma paralela las etapas del ciclo de vida como análisis, diseño, desarrollo y pruebas de forma independiente para cada área de la organización y hacia el final se realiza la integración de los resultados de cada subproyecto.



Figura. Modelo de cascada con subproyectos


Esta metodología tiene el problema que la planificación tiene que ser mucho más cuidadosa, aunque se gana velocidad.


Para implementar la metodología de cascada con sub proyectos se puede pensar “¿Por qué demorar la implementación de las áreas que son fáciles de diseñar solo porque estamos esperando el diseño de un área difícil?” Si la arquitectura dividió el problema en subsistemas independientes, se puede separar en subproyectos y cada uno puede proceder a su forma. La Figura siguiente muestra otra visión del tema.






Figura. Modelo de cascada con subproyectos. La planificación cuidadosa puede permitirte hacer alguna de las tareas de la cascada en paralelo.


El principal riesgo de esta aproximación son las interdependencias no detectadas. Para solucionar esto parcialmente al eliminar dependencias en la arquitectura se debe esperar hasta que el diseño detallado este terminado para dividir en subproyectos.

METODOLOGIA
Cuenta con tres etapas iniciales:
concepto del software, análisis de requerimientos y diseño global, las cuales se realizan linealmente, y luego propone separar el proyecto global en subproyectos más pequeños de forma que las siguientes fases: el diseño detallado, la codificación y depuración, y las pruebas iniciales se realicen linealmente para cada subproyecto definido, logrando así que cada subproyecto se desarrolle llevando a cabo tareas y técnicas particulares de acuerdo a sus respectivas necesidades.
La etapa final de la metodología consiste en llevar a cabo la integración de los subproyectos y la realización de pruebas globales.

Se pueden realizar varias partes del proyecto al mismo tiempo por diferentes desarrolladores Adecuada para el desarrollo de proyectos complejos que estiman de 1 a 3 años de desarrollo.