Logo Studenta

Resumen Capitulo 30

¡Estudia con miles de materiales!

Vista previa del material en texto

Reingeniería 
Cuando un producto se rompe con frecuencia, tarda en recuperarse o ya no representa la última tecnología, se necesita reconstruirlo
La Reingenierìa creará un producto con una funcionalidad nueva, un mejor rendimiento y fiabilidad, y un mantenimiento mejorado.
 Las demandas de funciones de negocios y de tecnología de información que las soportan están cambiando a un ritmo que impone mucha presión competitiva en todas las organizaciones comerciales. Tanto los negocios como el software que soportan (o es) el negocio deberán diseñarse una vez más para mantener el ritmo. 
La ingeniería se produce en 2 niveles distintos de abstracción.
· Nivel de Negocios 
· Nivel de Software
Reingeniería de Procesos de Negocios (rpn):
La reingeniería de procesos de negocios se concentra en el proceso de negocios con la intención de efectuar cambios que mejoren la competitividad en algún aspecto de los negocios.
define los objetivos de negocios, identifica y evalúa los procesos de negocios ya existentes (en el contexto de los objetivos definidos), específica y diseña los procesos revisados, y construye prototipos, refina e instancia esos procesos en el seno de un negocio. La RPN tiene un objetivo que va más allá del software. Su resultado suele ser la definición de formas en que las tecnologías de la información puedan prestar un mejor apoyo a los negocios. 
la reingeniería de procesos de negocio es iterativa. Los objetivos de negocio, y los procesos que los logran, deberán adaptarse a un entorno de negocio cambiante.
Este modelo define seis actividades: 
Definición del negocio: se definen objetivos como la reducción de costes, reducción de tiempos, mejora de calidad y desarrollo y potenciación del personal.
Identificación de procesos: se identifican los procesos críticos para alcanzar los objetivos definidos en la definición del negocio
Evaluación de procesos: Los procesos existentes deberán analizarse y medirse exhaustivamente. Las tareas de procesos se identificarán; los costes y los tiempos consumidos por las tareas de proceso se anotarán cuidadosamente, y se aislarán los problemas de calidad y rendimiento.
Especificación y diseño de procesos: Basándose en la información obtenida durante las tres primeras actividades de la RPN, se prepararan casos prácticos.
los casos prácticos identifican un escenario que proporciona resultados a un cliente.
Creación de Prototipos: construir un prototipo del proceso de negocios rediseñado antes de integrarlo por completo en el negocio.
Refinamiento e Instalación: Basándose en la realimentación procedente del prototipo, se refina el proceso de negocio y después se instancia en el seno de un 
sistema de negocio. 
Si la RPN se Ileva a cabo de forma efectiva, los sistemas de información 
se integran mejor con los procesos de negocios.
Reingeniería de Software:
La reingeniería del software abarca una serie de actividades entre las que se incluye el análisis de inventario, la reestructuración de documentos, la ingeniería inversa, la reestructuración de programas y datos, y la ingeniería directa
La reingeniería de sistemas de información es una actividad que absorberá recursos de las tecnologías de la información durante muchos años. Esta es la razón 
por la cual toda organización necesita una estrategia pragmática para la reingeniería del software. 
Análisis de inventario
Todas las organizaciones de software deberán disponer de un inventario de todas sus aplicaciones. El inventario puede que no sea más que una hoja de cálculo con la información que proporciona una descripción detallada (por ejemplo: tamaño, edad, importancia para el negocio) de todas las aplicaciones activas.
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. 
Reestructuración de Documentos
Tiene 3 opciones:
1) Dejar tal cual estaban ya que los costes de documentar son elevados y el software esta llegando al fin de su vida util 
2) al tener recursos limitados se documentarán por completo aquellas partes del sistema que estén experimentando cambios en ese momento
3) Volver a documentarlo por completo 
Ingeniería Inversa
es el proceso de analizar un programa en un esfuerzo por extraer información acerca de los datos, de su arquitectura y del diseño de procedimientos.
La ingeniería inversa de datos suele producirse a diferentes niveles de abstracción
 Las técnicas de ingeniería inversa para datos de programa internos se centran en la definición de clases de objetos. Esto se logra examinando el código del programa en un intento de agrupar variables de programa que estén relacionadas
 Antes de que se pueda reconstruir una interfaz de usuario, deberá tener lugar una actividad de ingeniería inversa. 
.
Restructuración:
La reestructuración del software modifica el código fuente y/o los datos en un intento de adecuar a futuros cambios
Si el esfuerzo de la reestructuración se extiende más allá de los límites de los módulos y abarca la arquitectura del software, la reestructuración pasa a ser 
ingeniería directa
beneficios que se pueden lograr cuando se reestructura el 
software: 
· Programas de mayor calidad 
· Reduce la frustración entre ingenieros del software que deban trabajar con el programa
· Reduce el esfuerzo requerido para llevar a cabo las actividades de mantenimiento
· Hace que el software sea más sencillo de comprobar y de depurar
La reestructuración del código se lleva a cabo para conseguir un diseño que produzca la misma función pero con mayor calidad que el programa original
Ingeniería Directa
reconstruye el programa empleando prácticas de ingeniería moderna del software y la información obtenida durante la ingeniería inversa. 
La ingeniería directa no se limita a crear un equivalente moderno de un programa anterior, sino que más bien se integran los nuevos requisitos y las nuevas tecnologías 'en ese esfuerzo de volver a aplicar reingeniería. El programa que se ha vuelto a desarrollar amplíando las capacidades de la aplicación anterior. 
Economia: 
La reingeniería consume recursos que se pueden utilizar para otros propósitos de negocio
Los costes y beneficios de la reingeniería se pueden determinar de forma cuantitativa
Los costes asociados al mantenimiento y soporte que conlleva una aplicación existente se puede comparar con los costes estimados de la reingeniería, y con la reducción resultante de los costes de mantenimiento

Continuar navegando