Reingeniería De Software
La reingeniería de software e refiere a la implementación de
los sistemas heredados para hacerlo más mantenerles (Pressman,
2005) .
Antes de adentraron en lo que es la reingeniería de software
como tal tenemos que haber que son los
sistema heredados,
Un sistema heredado es aquel que ha quedado anticuado pero
continúa siendo utilizado por el usuario y no se quiere o no se puede
reemplazar o actualizar de forma sencilla.
Reingeniería no quiere decir hacer un nuevo software, si no
que la funcionalidad sigue siendo la misma así como la arquitectura, antes
habíamos dicho que la producción de un software tiene un coste significativo, pero
el mantenimiento era el que realmente costaba más, sin embargo pensemos
que un banco no puede cambiar
constantemente su sistema, porque es bastante arriesgado, y podrían perderse
datos muy importantes, por ello, existe
la reingeniería de software.
El hecho de que no se vaya a hacer un nuevo software no
quiere decir que no tenga un modelo a seguir, o que se haga de manera
desordenada, de hecho se utiliza el
desarrollo convencional denominado, ingeniería hacia adelante, en donde el
primer paso sería especificación del sistema, pero dado que lo que vamos a
realizar no es un software nuevo,
empezamos con Sistema de Software existente, dentro de los pasos a seguir para
llegar al fin de este proceso se encuentran:
· Traducción
de Código Fuente: esto es, pasar de
un lenguaje de programación, a otro, esto solo es necesario cuando el lenguaje
en el que se ha programado, está obsoleto, es decir, ya no hay programadores,
dándole mantenimiento a este lenguaje, sin embargo, no siempre es necesario.
· Ingeniería
Inversa: A veces los programas han perdido parte de su documentación, a lo
que se le denomina ingeniería inversa es analizar el programa, y en base a lo
analizado, crear la documentación correspondiente.
· Mejora de
la Estructura de los programas: la manera de programar de cada persona,
puede variar mucho, pero cuando la diferencia es mucha, es necesario hacer que nuestro código sea más entendible,
a esto se le llama mejora, se trata de
hacer más entendible el código para su futuro mantenimiento.
· Popularización
de los programas: En base a nuestro análisis se dividen en módulos y se
eliminan lo que sean repetidos.
· Reingeniería
de Datos: hacer un a análisis de los datos
y actualizarlos
Conclusión:
A veces, es necesario saber identificó cuando se tiene que hacer un nuevo software, y cuando se puede “reparar“
aun, ya que si decimos que la mayor
parte del negocio es el dinero, el hecho
de tomar una mala decisión, puede causar grandes gastos significativos para una
empresa.
Bibliografía
Pressman, R. (2005). Ingeniería del Software, un
enfoque práctico. McGraw-Hill.
Sicilia, M.-A. (s.f.). connexions.
Obtenido de ¿Qué es Reingeniería del Software?:
http://cnx.org/content/m17438/latest/
Software, A.
(s.f.). Arbutus Software. Obtenido de SISTEMAS HEREDADOS:
http://www.arbutuslatino.com/legacy-systems.htm
Sommerville, I. (s.f.).
Ingeniería del software. Pearson.
No hay comentarios:
Publicar un comentario