domingo, 17 de febrero de 2013


1.2.- El papel evolutivo del software

El software es el producto derivado del proceso de desarrollo, según la ingeniería de software. Este producto es intrínsecamente evolutivo durante su ciclo de vida, el software evoluciona, en general, generando versiones cada vez más completas, complejas, mejoradas, optimizadas en algún aspecto, adecuadas a nuevas plataformas. Cuando un sistema deja de evolucionar, eventualmente cumplirá con su ciclo de vida, entrara en obsolescencia e inevitablemente tarde o temprano será reemplazado por un producto nuevo. El software evoluciona sencillamente porque debe de adaptar los cambios del entorno, sean funcionales (exigencias de usuarios). La dinámica de la evolución del software es el estudio de los cambios de sistema. La mayor contribución en esta área fue realizada por meir m. Lehman comenzando en los años 70 y 80. Su trabajo continúo en la década de 1990 con Leman y otros investigadores de relevancia en la realimentación en los procesos de la evolución. A partir de estos estudios propusieron un conjunto de leyes son invariantes y ampliamente aplicables.

Cambio continuo:
Programa que se usa en un entorno real necesariamente menos útil de ese entorno.

Complejidad creciente:
A medida que un programa en evolución cambia, su estructura tiende a ser cada vez más compleja, se deben dedicar recursos extras para preservar y simplificar la estructura.

Evolución prolongada del sistema:
La evolución de los programas es un proceso autorregulativo. Los atributos de los sistemas, tales como tamaño, tiempo entre entregas y la cantidad de errores y documentados son aproximadamente invariantes para cada entrega del sistema.

Estabilidad organizacional:
Durante el tiempo de vida de un programa su velocidad de desarrollo es aproximadamente constante e independiente de los recursos dedicados al desarrollo del sistema.
Crecimiento continuado: la funcionalidad ofrecida por los sistemas tiene que crecer continuamente para,  tener la satisfacción de los usuarios.

Realimentación del sistema:
Los procesos de evolución incorporan sistemas de realimentación, multiagente y multibucle y estos deben ser tratados como sistemas de realimentación para lograr una mejora significativa del producto.






 Elaborado: Ivan hdez. sosa ingenieria en sistemas computacionales 4° semestre

No hay comentarios:

Publicar un comentario