Tipos de Desarrollo

Tipos de Desarrollo:

Desarrollo en Cascada:

Modelo en Cascada

Es donde se trabaja en base a documentos de análisis, diseño, codificación y pruebas. Después de cada etapa se realiza una revisión para comprobar si se puede pasar a la siguiente etapa


Ventajas:

Dispone de una Planificación Sencilla 
El Resultado del producto es de alta calidad
El personal implicado en el proyecto no necesita una gran cualifiacion.

Desventajas:

Deben quedar definidos todos los requisitos en la etapa inicial de proyecto.
Si se produce algún error en alguna etapa, es muy complicado volver a la anterior para solucionarla.
El cliente final no ve el resultado del proyecto hasta que esté completamente finalizado.
Carece de indicadores seguros del progreso del trabajo.
Es más lento y más costoso que otros.


Desarrollo en Espiral

Desarrollo en Espiral

Es el tipo de desarrollo donde se trabaja mediante una serie de ciclos que se repiten, conectado uno a otro con el anterior. Las actividades de este modelo se conforman en una espiral, en la que cada bucle o iteración representa un conjunto de actividades. Las actividades no están fijadas a ninguna prioridad, sino que las siguientes se eligen en función del análisis de riesgo, comenzando por el bucle interior.

Ventajas

No es necesario disponer de todos los requisitos en la etapa inicial.
Los riesgos son menores.
La inversión del tiempo es mejor, puesto que se pueden identificar los problemas en cada ciclo.
Se adapta fácilmente a cualquier tipo de tarea adicional.


Desventajas

La evaluación de riesgos es más complicada.
El imprescindible una implicación total y continua por parte del cliente.
Es un tipo de ciclo más costoso.
Requiere invertir mucho tiempo en la etapa de desarrollo.



Desarrollo en Prototipo

Modelo de Desarrollo en Prototipo

Pertenece a los modelos de desarrollo evolutivo. El prototipo debe ser construido en poco tiempo, usando los programas adecuados y no se debe utilizar muchos recursos.
El diseño rápido se centra en una representación de aquellos aspectos del software que serán visibles para el cliente o el usuario final. Este diseño conduce a la construcción de un prototipo, el cual es evaluado por el cliente para una retroalimentación; gracias a ésta se refinan los requisitos del software que se desarrollará. La interacción ocurre cuando el prototipo se ajusta para satisfacer las necesidades del cliente. Esto permite que al mismo tiempo el desarrollador entienda mejor lo que se debe hacer y el cliente vea resultados a corto plazo.





Ventajas:

Reduce el Riesgo de Incumplir con las necesidades planteadas al inicio
Reduce los costes y el riesgo de fracaso
No necesita de un equipo de desarrollo muy grande y muy especializado

Desventajas

No es muy robusto ni ofrece calidad.
Requiere de la utilización de herramientas adecuadas.
Debe desarrollarse apresuradamente. 


Modelo Incremental:

Modelo Incremental de Desarrollo

El modelo incremental es una combinación del modelo en cascada, aplicado en forma iterativa. Aplica secuencias lineales de manera escalonada según avance el tiempo. En cada incremento, el desarrollo del software recorre nuevamente todas las etapas del modelo.

Desventajas:

Origina un software que puede estar débilmente estructurado y difícil de comprender y mantener.
Permite que los requerimientos y las decisiones de diseño se retrasen.
Durante el desarrollo no se aceptan cambios en los requerimientos para el incremento actual.


Ventajas:

Se basa en la entrega de un producto operacional con cada incremento, permitiendo utilizar en menor tiempo una versión incompleta.
Los clientes no deben esperar hasta obtener el sistema completo se entregue para sacar provecho del mismo ya que el primer incremento satisface los requerimientos más urgentes.
Siendo que los requerimientos críticos son los primeros en entregarse, son los que son puestos bajo más pruebas, logrando así que no se encuentren fallos en funcionamientos del software en sus partes más importantes.


Modelo DRA (Desarrollo Rápido de Aplicaciones):

Desarrollo Rápido de Aplicaciones DRA


Es un modelo de proceso de software incremental que resalta un ciclo de desarrollo corto. Es una adaptación a gran velocidad del modelo en cascada en el que se logra un desarrollo rápido mediante un enfoque en construcción basado en componentes. Como característica principal varios equipos de software trabajan en paralelo sobre diferentes funciones del sistema.


Desventajas:

Si los requisitos y las tareas no son claras, las divisiones de las mismas dificultaría el trabajo en paralelo provocando una demora en dicho proceso.
Si el proyecto es grande, se necesita suficientes recursos humanos para poder crear el número correcto de equipos DRA.
Sería inapropiado cuando los riesgos técnicos son altos.

Ventajas:

Si se entiende bien los requisitos y se limita el ámbito del proyecto, va a permitir que un equipo de desarrollo cree un sistema totalmente funcional dentro de un periodo de tiempo muy corto.
Es ideal para una aplicación de negocios que se puede modular en forma que cada gran función pueda completarse en menos de tres meses