Please enable JavaScript.
Coggle requires JavaScript to display documents.
MODELOS DE PROCESOS DE DESARROLLO - Coggle Diagram
MODELOS DE PROCESOS DE DESARROLLO
Modelos de proceso de software.
El modelo de proceso de software es una representación simplificada de este proceso. Cada modelo del proceso representa a otro desde una particular perspectiva y, por lo tanto, ofrece sólo información parcial acerca de dicho proceso.
Desarrollo incremental
El desarrollo de software incremental, que es una parte fundamental de los enfoques ágiles, es mejor que un enfoque en cascada para la mayoría de los sistemas empresariales, de comercio electrónico y personales. El desarrollo incremental refleja la forma en que se resuelven problemas.
Comparado con el modelo en cascada, el desarrollo incremental tiene tres beneficios
importantes:
Es más sencillo obtener retroalimentación del cliente sobre el trabajo de desarrollo que se realizó.
Es posible que sea más rápida la entrega e implementación de software útil al cliente, aun si no se ha incluido toda la funcionalidad.
Se reduce el costo de adaptar los requerimientos cambiantes del cliente.
El modelo en cascada
El modelo en cascada es un ejemplo de un proceso dirigido por un plan, en principio, se debe planear y programar todas las actividades del proceso, antes de comenzar a trabajar con ellas.
Las principales etapas del modelo en cascada reflejan directamente las actividades
fundamentales del desarrollo:
Integración y prueba de sistema
Implementación y prueba de unidad
Diseño del sistema y del software
Operación y mantenimiento
Análisis y definición de requerimientos
Ingeniería en software orientada a la reutilización
Esta reutilización informal ocurre independientemente del proceso de desarrollo que se emplee. Los enfoques orientados a la reutilización se apoyan en una gran base de componentes de software reutilizable y en la integración de marcos para la composición de dichos componentes. Del mismo modo se muestra un modelo del proceso general para desarrollo basado en reutilización.
Contienen diferentes etapas las cuales son:
Modificación de requerimientos
Diseño de sistema con reutilización
Análisis de componentes
Desarrollo e integración
Existen tres tipos de componentes de software que pueden usarse en un proceso orientado a la reutilización:
Colecciones de objetos que se desarrollan como un paquete para su integración con un marco de componentes como .NET o J2EE.
Sistemas de software independientes que se configuran para usar en un entorno particular.
Servicios Web que se desarrollan en concordancia para atender servicios estándares y que están disponibles para la invocación remota.
Modelo en espiral de Boehm
Boehm en 1988 propuso un marco del proceso de software dirigido por el riesgo (el modelo
en espiral). El proceso de software se representa como una espiral, y no como una secuencia de actividades con cierto retroceso de una actividad a otra. Cada ciclo en la espiral representa una fase del proceso de software. El modelo en espiral combina el evitar el cambio con la tolerancia al cambio.
Cada ciclo en la espiral se divide en cuatro sectores:
Valoración y reducción del riesgo: En cada uno de los riesgos identificados del proyecto, se realiza un análisis minucioso.
Desarrollo y validación: Después de una evaluación del riesgo, se elige un modelo de desarrollo para el sistema.
Establecimiento de objetivos: Se definen objetivos específicos para dicha fase del
proyecto.
Planeación: El proyecto se revisa y se toma una decisión sobre si hay que continuar con otro ciclo de la espiral.
El Proceso Unificado Racional
Es un ejemplo de un modelo de proceso moderno que se derivó del trabajo sobre el UML y el proceso asociado de desarrollo de software unificado, del mismo modo es un buen
ejemplo de un modelo de proceso híbrido.
El RUP reconoce que los modelos de proceso convencionales presentan una sola visión
del proceso. En contraste, el RUP por lo general se describe desde tres perspectivas:
Una perspectiva estática que presenta las actividades del proceso que se establecen.
El RUP es un modelo en fases que identifica cuatro fases discretas en el proceso de software.
Elaboración: Las metas de la fase de elaboración consisten en desarrollar la comprensión del problema de dominio, establecer un marco conceptual arquitectónico para el sistema, diseñar el plan del proyecto e identificar los riesgos clave del proyecto.
Construcción: La fase de construcción incluye diseño, programación y pruebas del sistema.
Concepción: La meta de la fase de concepción es establecer un caso empresarial
para el sistema.
Transición La fase final del RUP se interesa por el cambio del sistema desde la comunidad de desarrollo hacia la comunidad de usuarios, y por ponerlo a funcionar en un ambiente real.
Una perspectiva práctica que sugiere buenas prácticas a usar durante el proceso.
Una perspectiva dinámica que muestra las fases del modelo a través del tiempo.
Diseño e implementación del software
Un diseño de software se entiende como una descripción de la estructura del software que se va a implementar, los modelos generales y las estructuras de datos utilizados por el sistema, las interfaces entre componentes del sistema y, en ocasiones, los algoritmos usados.
El desarrollo dirigido por modelo MDD crean modelos de software a diferentes niveles de abstracción. En el MDD hay mayor énfasis en los modelos arquitectónicos con una separación entre modelos abstractos independientes de implementación y modelos específicos de implementación. Los modelos se desarrollan con detalle suficiente, de manera que el sistema ejecutable puede generarse a partir de ellos.
Se muestran cuatro actividades que podrían formar parte del proceso de diseño para sistemas de información:
Diseño de interfaz
Diseño de componentes
Diseño arquitectónico
Diseño de base de datos