PLANIFICACIÓN DEL CICLO DE VIDA. (James A. Senn)

El modelo del ciclo de vida escogido es un factor principal para conseguir los objetivos buscados, una mala elección del modelo del ciclo de vida puede que se nos retrase el trabajo enormemente o que tengamos una planificación perfecta del trabajo.


TIPOS DE MODELOS:

• Cascada pura

• Codificar y corregir

• Espiral

• Cascadas modificadas

• Prototipo evolutivo

• Entrega por etapas

• Diseño por planificación

• Entrega evolutiva

• Diseño por herramientas



Cascada Pura

Es el más antiguo de todos los modelos de ciclo de vida y sirve de modelo para otros modelos de ciclos de vida. En un modelo de cascada un proyecto progresa a través de una secuencia ordenada de pasos que son:

Concepto del software

• Análisis de requerimientos

• Diseño global

• Diseño detallado

• Codificación y depuración

• Prueba del sistema.

El modelo contiene una serie de etapas que no se solapan, y el proyecto se va revisando tras cada una de las etapas. Para poder pasar a la siguiente etapa se tiene que haber conseguido todos los objetivos de la etapa anterior, es un proceso secuencial.

Tiene una buena aplicación cuando el problema es estable y cuando se trabaja con metodología técnicas conocidas. Este modelo será apropiado para la migración de una aplicación o a una versión de mantenimiento bien definida.

Con este modelo se tiene un seguimiento de todas las fases del proyecto y del cumplimiento de todas las fases del proyecto y del cumplimiento de todos los objetivos marcados en cada etapa tanto de costes, fecha de entrega y lo más importante que pueden comprobar al final de cada etapa si el proyecto cumple todas las necesidades del usuario.

A su vez este es un problema ya que si el usuario se da cuenta de que falta una tarea de la empresa en el proyecto una vez pasada esta etapa, el trabajo que hay que realizar se retrasa en fechas de entrega y el coste es mayor. Por lo tanto esto produce un fracaso en la industria a las modificaciones de última hora.

Por este motivo se puede modificar el modelo en cascada pudiendo pasar de una etapa a la anterior, pero suele ser difícil ya que hay que rehacer la etapa anterior, este modelo es el ciclo de vida del salmón. Por lo tanto este es un modelo poco apropiado para proyectos con fecha de entrega corta, pero su rendimiento puede mejorar notablemente variando el modelo de cascada pura.

Variaciones sobre el ciclo de vida en cascada

El ciclo de vida en Cascada puede sufrir una serie de modificaciones para aumentar su eficiencia.

Una de estas variaciones puede ser EL SASHIMI o CASCADA CON FASES SOLAPADAS, en el que para evitar algunos inconvenientes del modelo en cascada solapando sus etapas, pero este enfoque genera nuevos problemas ya que debido al solapamiento los hitos resultan más ambiguos y esto hace más difícil trazar el proceso correctamente.

Otra variación sobre el ciclo de vida en Cascada con Subproyectos, en el que permite la ejecución de algunas de las tareas de la cascada en paralelo, pero esta modificación tiene el problema que la planificación tiene que ser mucho más cuidadosa, aunque se gana velocidad.


Codificar Y Corregir

Es el modelo utilizado cuando no nos paramos en busca del modelo más idóneo para nuestro proyecto. Es decir en este modelo no se pierde el tiempo en la planificación, en la calidad, en los documentos que hay que realizar cuando se terminan etapas o en cualquier otra actividad que no sea la codificación. Por lo tanto este modelo no necesita tener experiencia y una gran cantidad de conocimientos.

Al no seguir ningún modelo no tenemos ningún medio de ver si se cumplen las expectativas creadas, lo cual es un problema si encontramos un error casi al finalizar el proyecto ya que hay que empezar de nuevo.

Por consiguiente tardamos más en ver los errores que en otro modelo que sigue un mínimo de planificación.

Espiral

El modelo de la espiral es un modelo orientado a riesgo que divide el proyecto software en mini proyectos. Cada proyecto se encargará de resolver uno o varios riesgos hasta que estén todos controlados. Una vez que estén los riesgos más importantes controlados se finaliza igual que el ciclo de vida en cascada.

En el ciclo de vida en espiral localizan los riesgos, genera un plan para manejarlos y establece una aproximación a la siguiente iteración. Con cada iteración se produce una aproximación al producto final. En el modelo en espiral se comienza con una parte pequeña del proyecto y se expande tras reducir los riesgos para la siguiente iteración. En cada iteración seguimos los siguientes pasos:

• Determinar objetivos, alternativas y límites.

• Identificar y resolver riesgos.

• Evaluar las alternativas

• Generar entregas de esta iteración, y comprobar que son correctas.

• Planificar la siguiente iteración.

• Si se decide ejecutar la siguiente iteración, hay que establecer un enfoque para ella.

En este modelo las primeras iteraciones son menos costosas y a medida que se avanza aumenta el coste.

• Las ventajas de este modelo son:

Se disminuyen los riesgos.

Al final de cada iteración se obtienen los puntos de verificación.

Se obtiene con anterioridad indicaciones de cualquier riesgo insuperable.

• Las desventajas de este modelo son:

Un aumento de costes.

Es un modelo complicado de llevar a cabo porque exige una gestión concienzuda, atenta y unos conocimientos profundos.


Prototipo Evolutivo

Se comienza diseñando y construyendo las partes más importantes de la aplicación en un prototipo que posteriormente se refinará y ampliará hasta que el prototipo se termine. Este prototipo será el software que se entregará al final.

Se utiliza cuando los requerimientos cambian con celeridad, cuando el cliente es contrario a facilitar los requerimientos y especificaciones o cuando no está clara la forma del área de aplicación.

• Las ventajas son:

Se generan signos visibles de progreso.

Permite la modificación sobre la marcha.

El cliente se va familiarizando con el nuevo entorno.

• Las desventajas son:

Imposibilidad de conocer a prioridad el tiempo desarrollado.

La aproximación puede convertirse en excusa para realizar el desarrollo con el modelo de codificar y corregir.


Entrega Por Etapas

En este modelo se evita el problema del modelo en cascada de no terminar ninguna etapa del modelo hasta que este completamente finalizado. Tras el diseño global implementar y entregar la aplicación en etapas. La diferencia de este modelo con el prototipo evolutivo es que en este modelo conocemos exactamente lo que se va a construir.

Este modelo funciona exactamente igual que el de cascada en las tres primeras fases y en el diseño detallado se divide por etapas.

• Sus ventajas son:

Permite proporcionar una funcionalidad útil en manos del cliente sin tener la aplicación finalizada.

Proporciona signos tangibles de progreso.

• Su principal desventaja es que en este modelo no es viable sin una planificación adecuada.


Diseño Por Planificación

Es similar al modelo de entrega por etapas y es útil cuando el proyecto tiene un plazo concreto. Este modelo se utiliza cuando no se conoce si el producto se tendrá para la última entrega.

A diferencia del modelo de entrega por etapas, estas están ordenadas por orden de prioridad, así que la fecha tope aunque no hayamos terminado el proyecto estamos seguros de haber cubierto las funcionalidades más importantes.


Entrega Evolutiva


El modelo de entrega evolutiva ofrece el control que se obtiene con la entrega por etapas y la flexibilidad que se obtiene con el prototipo evolutivo. Este modelo puede ajustarse para proporcionar el control y la flexibilidad que se necesita.

Este modelo realmente se encuentra entre el prototipo evolutivo y la entrega por etapas ya que se van desarrollando versiones añadiendo funcionalidad a las anteriores y se le van mostrando al cliente.

Este proceso se repetirá hasta agotar el tiempo, es presupuesto o hasta que el cliente este satisfecho.

No hay comentarios:

Publicar un comentario