Please enable JavaScript.
Coggle requires JavaScript to display documents.
Metodologias para el Desarrollo de Software - Coggle Diagram
Metodologias para el Desarrollo de Software
Modelo Prototipo
Ventajas
Feedback temprano: Permite validar con el usuario.
Reducción de riesgos: Detecta problemas desde el inicio.
Claridad en requisitos: Ayuda a definir necesidades poco precisas.
Desventajas
Confusión: El prototipo puede confundirse con el producto final.
Costos adicionales: Iteraciones repetitivas pueden encarecer el proyecto.
Revisión constante: Puede generar cambios sin fin.
Concepto
Desarrollo rápido de una versión preliminar para clarificar y validar requisitos.
Fases
Recolección: Identificar requisitos básicos.
Diseño rápido: Esbozar el prototipo inicial.
Construcción: Desarrollo rápido del prototipo.
Evaluación: Recoger feedback del usuario.
Refinamiento: Ajustar y mejorar el prototipo.
Modelo Incremental
Concepto
Desarrollo en fases o “incrementos” funcionales que se van integrando.
Ventajas
Entregas parciales: Funcionalidades disponibles gradualmente.
Menor riesgo: Errores se detectan en cada incremento.
Flexibilidad: Permite ajustes basados en retroalimentación.
Desventajas
Integración compleja: Requiere planificación cuidadosa.
Planificación continua: Puede dificultar la coordinación general.
Posible sobrecoste: Incrementos mal definidos aumentan costos.
Fases
Recolección: Identificar requisitos para el primer incremento.
Diseño: Planificar la estructura modular.
Desarrollo: Codificar el incremento.
Pruebas: Verificar la funcionalidad del incremento.
Integración: Unir el incremento al sistema global.
Modelo Cascada
Concepto
Proceso secuencial con fases bien definidas que se ejecutan de forma lineal.
Ventajas
Simplicidad: Fácil de entender y gestionar.
Documentación completa: Cada fase genera documentación formal.
Estabilidad: Ideal cuando los requisitos son claros y fijos.
Desventajas
Rigidez: Difícil adaptarse a cambios posteriores.
Retroalimentación tardía: Los errores se detectan en fases avanzadas.
Poca flexibilidad: No favorece iteraciones o revisiones frecuentes.
Fases
Requisitos: Recoger y analizar necesidades.
Diseño: Planificar la arquitectura del sistema.
Implementación: Codificar según el diseño.
Pruebas: Verificar el funcionamiento y corregir errores.
Mantenimiento: Actualizar y corregir post-despliegue.
Desarrollo Basado en Componentes
Concepto
Construcción del software mediante ensamblaje de componentes reutilizables o preexistentes.
Ventajas
Reutilización: Ahorro de tiempo y recursos al aprovechar componentes existentes.
Mantenibilidad: Facilita actualizaciones y mejoras.
Escalabilidad: Permite ampliar el sistema integrando nuevos componentes.
Desventajas
Problemas de integración: Posibles incompatibilidades entre componentes.
Dependencia externa: Limitado por la calidad y disponibilidad de componentes de terceros.
Menor control: Difícil modificar componentes no desarrollados internamente.
Fases
Recolección: Definir requisitos y componentes necesarios.
Selección: Buscar y evaluar componentes existentes.
Integración: Ensamblar los componentes en el sistema.
Pruebas: Validar la interacción y funcionamiento de los componentes.
Implementación: Desplegar el sistema final.
Modelo en Espiral
Concepto
Enfoque iterativo que combina prototipado y análisis de riesgos en cada ciclo.
Ventajas
Gestión de riesgos: Evalúa y mitiga riesgos en cada ciclo.
Iterativo: Permite mejoras continuas.
Flexibilidad: Adapta el desarrollo según el feedback.
Desventajas
Complejidad: Difícil de gestionar y planificar.
Costoso: Requiere análisis y revisiones constantes.
Necesita experiencia: Implica conocimientos avanzados en gestión de riesgos.
Fases
Definición: Establecer objetivos y restricciones.
Análisis de riesgos: Identificar y evaluar riesgos.
Desarrollo: Construir y probar el prototipo.
Evaluación: Revisar con el cliente/usuarios.
Planificación: Decidir el siguiente ciclo.