<< Chapter < Page | Chapter >> Page > |
Reingeniería del software se puede definir como:“modificación de un producto software, o de ciertos componentes, usando para el análisis del sistema existente técnicas de Ingeniería Inversa y, para la etapa de reconstrucción, herramientas de Ingeniería Directa, de tal manera que se oriente este cambio hacia mayores niveles de facilidad en cuanto a mantenimiento, reutilización, comprensión o evaluación.”
Cuando una aplicación lleva siendo usada años, es fácil que esta aplicación se vuelva inestable como fruto de las múltiples correcciones, adaptaciones o mejoras que han podido surgir a lo largo del tiempo. Esto deriva en que cada vez que se pretende realizar un cambio se producen efectos colaterales inesperados y hasta de gravedad, por lo que se hace necesario, si se prevéque la aplicación seguirásiendo de utilidad, aplicar reingeniería a la misma.
Entre los beneficios de aplicar reingeniería a un producto existente se puede incluir:
La reingeniería del software involucra diferentes actividades como son:
con la finalidad de crear versiones de programas ya existentes que sean de mejor calidad y los mismos tengan una mayor facilidad de mantenimiento.
Figura 1. Pasos de la Reingeniería del Software
Todas las organizaciones de software deberían tener un inventario de todas sus aplicaciones. El inventario tal vez no sea más que un modelo en una hoja de cálculo que contenga información que proporcione una descripción detallada (tamaño, edad, importancia para el negocio) de las aplicaciones activas.
Los candidatos a la reingeniería aparecen cuando se ordena esta información en función de su importancia para el negocio, longevidad, mantenibilidad actual y otros criterios localmente importantes. Es entonces cuando es posible asignar recursos a las aplicaciones candidatas para el trabajo de reingeniería.
Es importante señalar que el inventario deberávisitarse con regularidad, el estado de las aplicaciones puede cambiar en función del tiempo y, como resultado, cambiarán las prioridades para la reingeniería.
La documentación débil es la marca de muchos sistemas heredados.¿Pero que se hace acerca de ellos?¿Cuáles son las opciones? Crear documentación consume mucho tiempo, si el sistema funciona vivirácon lo que tenga. La documentación debe actualizarse pero se tiene recursos limitados. Se utiliza un enfoque de“documentar cuando se toque”. El sistema es crucial para el negocio y debe volver a documentarse por completo incluso en este caso un enfoque inteligente es recortar la documentación a un mínimo esencial. Cada una de estas opciones es viable. Una organización de software debe elegir la más apropiada para cada caso.
Notification Switch
Would you like to follow the 'Técnicas de mantenimiento de software' conversation and receive update notifications?