Modelo Relacional
Nataniel7sama31 de Agosto de 2013
582 Palabras (3 Páginas)463 Visitas
Modelo Evolutivo
El modelo Evolutivo surge por la necesidad de generar una aproximación flexible y no monolítica al proceso de desarrollo del software, se define como un modelo cuyas etapas consisten en ampliar los requerimientos de un software, los requerimientos pueden ser entregados al cliente a medida que son desarrollados; a esto se le denomina una entrega evolutiva he incremental.
Aunque la entrega incremental no implica un modelo evolutivo, esto añade un valor al modelo al proveer feedback al usuario desde el inicio del desarrollo. Un aspecto muy importante de estas entregas al usuario es que estos incrementos deben consistir no solo de códigos y documentaciones internas del proyecto, sino también de documentación orientada al usuario, que este redactada lo más cercano al lenguaje natural y que provea de un glosario de aquellos términos técnicos que se manejen en la documentación.
Se puede definir un incremento como una unidad autónoma funcional del software que desarrolla algunos objetivos útiles para el usuario, con todo el material de apoyo (requerimientos y datos específicos de diseño, proyectos de prueba, un manual de usuario, material de adiestramiento, entre otros).
El modelo evolutivo puede describirse de la siguiente forma:
1. Entregar algo al usuario.
2. Medir el valor agregado al usuario en todas las dimensiones críticas.
3. Ajustar tanto el diseño como los objetivos en función a la realidad observada.
En el modelo evolutivo se puede decir que desaparece el mantenimiento como una etapa del ciclo de vida del software o que todo el ciclo de vida es un mantenimiento, esto debido a que continuamente se evalúa y se mejora al software.
Otra de las características del modelo evolutivo es el prototipaje. En el caso de este modelo el prototipo es progresivamente transformado en una aplicación y permite a los desarrolladores realizar pruebas desde las primeras etapas del desarrollo a las funcionalidades del software.
El modelo de desarrollo evolutivo (algunas veces denominado como prototipaje evolutivo) construye una serie de grandes versiones sucesivas de un producto. Sin embargo, mientras que la aproximación incremental presupone que el conjunto completo de requerimientos es conocido al comenzar, el modelo evolutivo asume que los requerimientos no son completamente conocidos al inicio del proyecto.
Los requerimientos son cuidadosamente examinados, y sólo esos que son bien comprendidos son seleccionados para el primer incremento. Los desarrolladores construyen una implementación parcial del sistema que recibe sólo estos requerimientos.
El sistema es entonces desarrollado, los usuarios lo usan, y proveen retroalimentación a los desarrolladores. Basada en esta retroalimentación, la especificación de requerimientos es actualizada, y una segunda versión del producto es desarrollada y desplegada. El proceso se repite indefinidamente.
El desarrollo evolutivo es 100% compatible con el modelo cascada. El desarrollo evolutivo no demanda una forma específica de observar el desarrollo de algún incremento. Así, el modelo cascada puede ser usado para administrar cada esfuerzo de desarrollo. Obviamente, el desarrollo incremental y evolutivo puede ser combinado también.
El desarrollo de software en forma evolutiva requiere un especial cuidado en la manipulación de documentos, programas, datos de test, etc. desarrollados para distintas versiones del software. Cada paso debe ser registrado, la documentación debe ser recuperada con facilidad, los cambios deben ser efectuados de una manera controlada.
La especificación y el desarrollo están intercalados.
Problemas y riesgos del modelo evolutivo.
• Poca visibilidad en el proceso.
• Los sistemas están pobremente especificados.
• Se
...