Professional Documents
Culture Documents
REINGENIERIA
ndice
INTRODUCCION
REINGENIERIA DE PROCESOS DE NEGOCIO (RPN)
REINGENIERIA DE SOFTWARE
INGENIERIA INVERSA
REESTRUCTURACION
INGENIERIA DIRECTA
LA ECONOMIA DE LA INGENIERIA
Introduccin
Qu es la reingeniera?
Es el proceso de reconstruccin del software, crear un producto con una
mejor funcionalidad, mejor desempeo y fiabilidad, as como una mejor
facilidad de mantenimiento.
Quin la hace?
En el mbito de las organizaciones, la reingeniera la llevan a cabo
especialistas en negocios. En nuestro mbito lo realizan los ingenieros de
software.
Por qu es importante?
Por que nos permite mantenernos en el ritmo de las exigencias de las
nuevas tecnologas, por tal motivo el software tendr que redisearse para
estar en ritmo.
Introduccin
Cules son los pasos?
El proceso de reingeniera de software incluye anlisis de inventarios,
reestructuracin de documentos, ingeniera inversa, reestructuracin de
programas y datos, e ingeniera avanzada.
Cul es el producto obtenido?
Se produce una diversidad de productos de trabajo de reingeniera.
Ejemplo: Modelos de anlisis, modelos de diseo, procedimientos de prueba,
entre otros.
Cmo puedo estar seguro de que lo he hecho correctamente?
Utilizando las mismas prcticas que se aplican a cualquier proceso de
ingeniera del software: las revisiones tcnicas formales evalan los modelos
de anlisis y de diseo; las revisiones especializadas consideran la
aplicabilidad y la compatibilidad en el negocio; y las pruebas se aplican para
descubrir errores en contenido, funcionalidad e interoperabilidad.
Reingeniera de Procesos de
Negocios (RPN)
La (RPN) rebasa el mbito de las tecnologas de la informacin y de la
ingeniera de software. Una de las definiciones mas relevantes pala la
(RPN) en la publicada por la revista fortune La bsqueda e
implementacin de un cambio radical en el proceso de negocios
para lograr resultados de vanguardia.
Pero:
Reingeniera de Procesos de
Negocios (RPN)
Procesos de negocios.
Reingeniera de Procesos de
Negocios (RPN)
Un Modelo de RPN
La RPN es iterativa, las metas del negocio y los procesos con que se logran se
deben adaptar a un entorno de negocios cambiante. Por tal razn no existe
principio ni fin para la RPN.
Reingeniera de Procesos de
Negocios (RPN)
Definicin del negocio: El mismo que se identifica con cuatro controladores
clave:
Reduccin de costo.
Reduccin de tiempos.
Mejora de la calidad.
Desarrollo y fortalecimiento del personal.
Reingeniera de Procesos de
Negocios (RPN)
Un Modelo de RPN
Especificacin y diseo del proceso: Preparamos casos de uso para cada
proceso que ser rediseado. Aqu los casos de uso identifican un escenario
que entrega cierto resultado a un cliente. Con el caso de uso como la
especificacin del proceso se disea un nuevo conjunto de tareas para el
proceso.
Elaboracin de Prototipos: Un proceso de negocios rediseado debe
convertirse en prototipo antes de que sea integrado por completo en el
negocio.
Refinamiento y particularizacin: Con base en la retroalimentacin del
prototipo, el proceso de negocio se refina y luego se particulariza dentro de un
sistema de negocio.
Reingeniera de Software
La reingeniera de software involucra diferentes actividades como lo son:
anlisis de inventarios, reestructuracin de documentos, ingeniera inversa,
reestructuracin de programas y datos, e ingeniera directa; con la finalidad de
crear versiones de programas ya existentes que sean de mejor calidad y los
mismos tengan una mayor facilidad de mantenimiento.
Mantenimiento del software
El mantenimiento del software se define identificando cuatro actividades
deferentes como lo son: mantenimiento correctivo, mantenimiento adaptativo,
mejora o mantenimiento de perfeccionamiento y mantenimiento preventivo o
reingeniera. Segn estadsticas el 20 % del trabajo de mantenimiento se
emplea en componer errores. El restante 80% se dedica a adaptar los
sistemas existentes a los en su entorno externo.
Reingeniera de Software
Un modelo de Proceso de Reingeniera del software.
Reingeniera de Software
Anlisis de Inventarios: Las organizaciones de software deberan tener un inventario
de todas sus aplicaciones. El inventario tal vez no sea ms que un modelo en una hoja
de clculo que contenga informacin que proporcione una descripcin detallada
(tamao, edad, importancia para el negocio) de las aplicaciones activas. Es importante
sealar que el inventario deber visitarse con regularidad, el estado de las aplicaciones
puede cambiar en funcin del tiempo y, como resultado, cambiaran las prioridades para
la reingeniera.
Reestructuracin de documentos. La documentacin dbil es la marca de muchos
sistemas heredados. Pero que se hace acerca de ello? Cules son las opciones?.
Crear documentacin consume mucho tiempo, si el sistema funciona Vivir con lo que
tenga. La documentacin debe actualizarse pero se tiene recursos limitados. Se utilizara
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 documentacin a un mnimo esencial. Cada una de estas opciones es viable.
Una organizacin de software debe elegir la ms apropiada para cada caso.
Reingeniera de Software
Un modelo de Proceso de Reingeniera del software.
Ingeniera Inversa: Es el proceso de analizar un programa con la finalidad de
crear una representacin del programa en un mayor grado de abstraccin que
el cdigo fuente. La ingeniera inversa es un proceso de recuperacin de
diseo. Las herramientas de la ingeniera inversa obtienen informacin del
diseo de datos, arquitectnico y de procedimientos a partir de un programa
existente.
Reestructuracin de cdigo: El tipo ms comn de reingeniera es la
reestructuracin de cdigo, se lo puede hacer con mdulos individuales que se
codifican de una manera que dificultan comprenderlos, probarlos y
mantenerlos. Llevar a cabo esta actividad requiere analizar el cdigo fuente
empleando una herramienta de reestructuracin.
Reingeniera de Software
Un modelo de Proceso de Reingeniera del software.
Reestructuracin de datos: La reestructuracin de datos es una actividad de
reingeniera a gran escala. En la mayora de los casos, la reestructuracin de
datos comienza con una actividad de ingeniera inversa. La arquitectura de
datos actual se analiza con minuciosidad y se define los modelos de datos
necesarios, se identifican los objetivos de datos y los atributo, y despus se
revisa la calidad de las estructuras de datos existentes.
Ingeniera directa: La ingeniera directa, tambin llamada renovacin o
reclamacin, no solo recupera la informacin de diseo a partir del software
existente, tambin utiliza esta informacin para alterar o reconstruir el sistema
existente con la finalidad de mejorar su calidad global. En la mayora de los
casos el software sometido a reingeniera vuelve a implementar la funcin del
sistema existente y tambin aade nuevas funciones o mejora el desempeo
global.
Ingeniera Inversa
Ingeniera Inversa
Ingeniera Inversa
Para comprender el
Procesamiento.
Interfaces de Usuario.
Consideraciones
Cules son las acciones bsicas que procesa la interfaz?
Descripcin del comportamiento del sistema a dichas acciones?
Qu equivalencia de las interfaces es mas relevante?.
Reestructuracin.
Reestructuracin de cdigo
Reestructuracin de datos.
Reestructuracin de datos.
Ingeniera Directa.
Economa de la Reingeniera.
Costo mantenimiento
(p3 (p1+ p2) * L
Costo reingeniera
(p6 (p4+ p5)*(L p8) (p7*p9)).
Costo beneficio
Costo reingeniera - Costo mantenimiento