martes, 25 de noviembre de 2008

Los Ciclos de Vida del Software (II)

Vamos a continuar la labor comenzada en el post anterior acerca de los distintos modelos de ciclos de vida de software.

Ciclo de vida PROTOTIPADO

Este modelo se basa en la realización continua de diversos prototipos, cada vez más refinados, a partir del conjunto inicial de necesidades del cliente, de tal manera que los entragables van aumentando en su complejidad, con el fin de incrementar la comprensión que tiene del sistema tanto el usuario como el desarrollador.


Su principal ventaja es ese control continuo que se tiene sobre el producto que se está desarrollando, porque está supervisado y guiado por el propio cliente, que va modificándolo a su parecer, con lo que se evita la entrega de sistemas que, al final, no satisfacen las necesidades reales del usuario.

En su contra, estas características pueden hacerle débil, porque el cliente puede exigir plazos más cortos al ver sistemas en "pseudofuncionamiento", creyendo que son los finales. Algo similar puede ocurrir en el equipo de desarrollo, que puede caer en el relajamiento y descuido del compromiso de calidad adquirido.

Ciclo de vida EN ESPIRAL

En este modelo las actividades se conforman en una espiral, representando cada bucle un conjunto determinado de actividades. Éstas no están fijadas a priori, sino que se van eligiendo en base a los distintos análisis de riesgos que se van elaborando en las sucesivas iteraciones, comenzando siempre por el último bucle efectuado.

Cada bucle empieza identificando los objetivos, las alternativas y las restricciones del ciclo. Una vez evaluadas las alternativas respecto a los objetivos y teniendo en cuenta las restricciones, se lleva a cabo el ciclo correspondiente para, una vez finalizado, empezar a plantear el próximo.

El segundo paso es evaluar las diferentes alternativas que se plantean teniendo en cuenta los objetivos a conseguir y las restricciones impuestas. Frecuentemente,este paso identifica las áreas de incertidumbre del proyecto con sus correspondientes riesgos. Si existen riesgos, el siguiente paso conlleva la formulación de una estrategia efectiva en coste (utilizando prototipos, simulación, bancos de prueba, cuestionarios para los usuarios...) para resolverlos.

El tercer paso consiste en revisar los resultados del análisis de riesgos, y el cuarto paso en planificar la fase posterior. Una vez realizado el primer ciclo se volvería a empezar, modificando los requisitos y reformulando los objetivos, estrategias, alternativas, etc.

Como veis hay mútiples alternativas... en nuestro proyecto casi todos optamos, en un principio, por un modelo en cascada, algo que viene determinado por los distintos hitos y entregables que hay que cumplir, pero creemos que va mutando en un modelo híbrido, puesto que se van realizando distintas etapas de manera disjunta con el fin de obtener una mayor productividad y, casi siempre, debido a los rechazos por parte del cliente.

No hay comentarios: