Modelo en cascada
Desventajas
En la vida real, un proyecto rara vez sigue una
secuencia lineal, esto crea una mala implementación del modelo, lo cual hace
que lo lleve al fracaso.
El proceso de creación del software tarda mucho
tiempo ya que debe pasar por el proceso de prueba y hasta que el software no
esté completo no se opera. Esto es la base para que funcione bien.
Cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costos del desarrollo.
Ventajas
Modelo y
planificación fácil y sencillos.
Sus fases son
conocidas por los desarrolladores.
Los usuarios lo
pueden comprender fácilmente.
Modelo en espiral
Ventajas
El análisis del riesgo se hace de forma explícita y
clara. Une los mejores elementos de los restantes modelos.
Reduce riesgos del proyecto
Incorpora objetivos de calidad
Integra el desarrollo con el mantenimiento, etc.
Además es posible tener en cuenta mejoras y nuevos
requerimientos sin romper con la metodología, ya que este ciclo de vida no es
rígido ni estático.
Desventajas
Genera mucho tiempo en el desarrollo del sistema
Modelo costoso
Requiere experiencia en la identificación de riesgos
Modelo
construcción de prototipos
Ventajas
Este modelo es útil cuando el cliente conoce los objetivos generales
para el software, pero no identifica los requisitos detallados de entrada,
procesamiento o salida.
También ofrece un mejor enfoque cuando el responsable del desarrollo del
software está inseguro de la eficacia de un algoritmo, de la adaptabilidad de
un sistema operativo o de la forma que debería tomar la interacción
humano-máquina.
La construcción de prototipos se puede utilizar
como un modelo del proceso independiente, se emplea más comúnmente como una
técnica susceptible de implementarse dentro del contexto de cualquiera de los
modelos del proceso expuestos. Sin importar la forma en que éste se aplique, el
paradigma de construcción de prototipos ayuda al desarrollador de software y al
cliente a entender de mejor manera cuál será el resultado de la construcción
cuando los requisitos estén satisfechos. De esta manera, este ciclo de vida en
particular, involucra al cliente más profundamente para adquirir el producto.
Desventajas
A los usuarios les gusta el sistema real y a los
desarrolladores les gusta construir algo de inmediato. Sin embargo, la
construcción de prototipos se torna problemática por las siguientes razones:
Ø El cliente ve funcionando lo que para el es la primera
versión del prototipo que ha sido construido con “chicle y cable para
embalaje”, y puede decepcionarse al indicarle que el sistema aun no ha sido
construido.
Ø El desarrollador puede caer en la tentación de aumentar
el prototipo para construir el sistema final sin tener en cuenta los
obligaciones de calidad y de mantenimiento que tiene con el cliente.
Modelo DRA
Ventajas
Es muy rápido.
Permite trabajar en él a varias personas a la vez
Desventajas
El enfoque DRA tiene inconvenientes para proyectos grandes, necesita
suficientes recursos humanos para crear el numero correcto de equipos.
Si los desarrolladores y clientes no se comprenden con las actividades
necesarias para completar el sistema, los proyectos fallarán.
El DRA sería inapropiado cuando los riesgos técnicos son altos.
Desventajas:
Genera mucho tiempo en el desarrollo del sistema - Modelo
costoso –Requiere experiencia en la identificación de riesgos
Inconvenientes
Genera mucho trabajo adicional. Cuando un sistema falla
se pierde tiempo y coste dentro de la empresa. Exige una cierta habilidad en
los analistas (es bastante difícil).
MODELOS EVOLUTIVOS DE PROCESOS DEL SOFTWARE
El software, al igual que todos los sistemas complejos, evoluciona con el tiempo.
El modelo lineal secuencial se diseña para el desarrollo en línea recta. En esencia, este enfoque en cascada asume que se va entregar un sistema completo una vez que la secuencia lineal se haya finalizado. El modelo de construcción de prototipos se diseña para ayudar al cliente (o al que desarrolla) a comprender los requisitos. En general, no se diseña para entregar un sistema de producción. En ninguno de los paradigmas de ingeniería del software se tiene en cuenta la naturaleza evolutiva del software. Los modelos evolutivos son iterativos. Se caracterizan por la forma en que permiten a los ingenieros del software desarrollar versiones cada vez más completas del software.
Modelo incremental
Ventajas:
Con un paradigma incremental se reduce el tiempo de
desarrollo inicial, ya que se implementa la funcionalidad parcial.
También provee un impacto ventajoso frente al cliente,
que es la entrega temprana de partes operativas del Software.
El modelo proporciona todas las ventajas del modelo en
cascada realimentado, reduciendo sus desventajas sólo al ámbito de cada
incremento.
Permite entregar al cliente un producto más rápido en
comparación del modelo de cascada.
Resulta más sencilo acomodar cambios al acotar el tamaño
de los incrementos.
Por su versatilidad requiere de una planeación cuidadosa
tanto a nivel administrativo como técnico.
Desventajas:
El modelo Incremental no es recomendable para casos de
sistemas de tiempo real, de alto nivel de seguridad, de procesamiento
distribuido, y/o de alto índice de riesgos.
Requiere de mucha planeación, tanto administrativa como
técnica.
Requiere de metas claras para conocer el estado del
proyecto.
Conclusion:
Un modelo incremental lleva a pensar en un desarrollo
modular, con entregas parciales del productoSoftware denomidados “incrementos”
del sistema, que son escogidos en base a prioridades predefinidas de algún
modo.
El modelo permite una implementación con refinacmientos
sucesivos (ampliación y/o mejora).
Con cada incremento se agrega nueva funcionalidad o se
cubren nuevos requisitos o bien se mejora la versión previamente implementada
del producto software.
El modelo de desarrollo concurrente
Ventajas
• Excelente para proyectos en los que se conforman grupos de trabajo independientes.
• Proporciona una imagen exacta del estado actual de un proyecto.
Desventajas
• Si no se dan las condiciones señaladas no es aplicable.
• Si no existen grupos de trabajo no se puede trabajar en este método
• Excelente para proyectos en los que se conforman grupos de trabajo independientes.
• Proporciona una imagen exacta del estado actual de un proyecto.
Desventajas
• Si no se dan las condiciones señaladas no es aplicable.
• Si no existen grupos de trabajo no se puede trabajar en este método
El modelo de métodos formales
Ventajas
Se
comprende mejor el sistema.
La
comunicación con el cliente mejora ya que se dispone de una descripción clara y
no ambigua de los requisitos del usuario.
El
sistema se describe de manera más precisa.
El
sistema se asegura matemáticamente que es correcto según las especificaciones.
Mayor
calidad software respecto al cumplimiento de las especificaciones.
Mayor
productividad
Desventajas
El
desarrollo de herramientas que apoyen la aplicación de métodos formales es
complicado y los programas resultantes son incómodos para los usuarios.
Los
investigadores por lo general no conocen la realidad industrial.
Es
escasa la colaboración entre la industria y el mundo académico, que en
ocasiones se muestra demasiado dogmático.
Se
considera que la aplicación de métodos formales encarece los productos y
ralentiza su desarrollo.
Técnicas de cuarta
generación
Ventajas
Reducción
en el tiempo de desarrollo
Desventajas
Código
ineficiente
No
mas fáciles de usar que l3g
Mantenimiento
cuestionable
No hay comentarios:
Publicar un comentario