Ingenieria Inversa

Páginas: 20 (4979 palabras) Publicado: 4 de febrero de 2014
Gisweb - Reingeniería para la implementación de un Web Feature Service

Capítulo 4
Ingeniería Inversa
[4. Ingeniería Inversa]
“El análisis de un sistema para identificar sus componentes actuales y las
dependencias que existen entre ellos, para extraer y crear abstracciones de dicho
sistema e información de su diseño” [Chifofsky, 1990].
“El proceso de analizar el código, documentación ycomportamiento de un sistema
para identificar sus componentes actuales y sus dependencias para extraer y crear
una abstracción del sistema e información de diseño. El sistema en estudio no es
alterado, sino que se produce conocimiento adicional acerca del sistema” [SEI,
2004].
En este capítulo se trata el proceso de ingeniería inversa, sus variantes, y la
realización de la misma sobre laimplementación particular de un WFS desarrollado
por una iniciativa privada para obtener una abstracción que nos permita generar la
documentación necesaria para hacer una implementación propia de ese servicio.
Como se mencionó en los alcances y limitaciones de esta tesis, el proceso de
ingeniería inversa es muy amplio y debido al tiempo para desarrollar esta tesis, toda
la información descrita enla sección 4.2 es para comprender el proceso, más no se
realizaron todas las etapas del mismo. La sección 4.3 contiene el trabajo realizado de
ingeniería inversa sobre la implementación particular del WFS que se estudió.

4.1 Ingeniería Inversa, un proceso de reingeniería
La ingeniería inversa tiene la misión de desentrañar los misterios y secretos de los
sistemas en uso. Consisteprincipalmente en recuperar el diseño de una aplicación a
partir del código.

Capítulo 4 – Ingeniería Inversa

40

Gisweb - Reingeniería para la implementación de un Web Feature Service

Esto se realiza principalmente mediante herramientas que extraen información de los
datos, procedimientos y arquitectura del sistema existente.
Es aplicable a sistemas con las siguientes características:
•Documentación inexistente o totalmente obsoleta.



Programación en bloque de códigos muy grandes y/o sin estructurar.



Inexistencia de documentación interna en los programas, o bien ésta es
incomprensible o está desfasada.



La aplicación cubre gran parte de los requisitos y del rendimiento esperado.



La aplicación está sujeta a cambios frecuentes, que pueden afectar aparte
del diseño.



Se prevé que la aplicación pueda tener aún larga vida.

La ingeniería inversa puede extraer información de diseño del código fuente, pero el
nivel de abstracción, la completitud de la documentación, el grado con el cual
trabajan al mismo tiempo las herramientas y el analista humano, y la direccionalidad
del proceso son sumamente variables [Cass, 1988].

4.1.1 Nivelde abstracción
El nivel de abstracción de un proceso de ingeniería inversa y las herramientas que se
utilizan para realizarlo aluden a la sofisticación de la información de diseño que se
puede extraer del código fuente. El nivel de abstracción ideal deberá ser lo más alto
posible, es decir, el proceso de ingeniería inversa debe ser capaz de derivar:


Sus representaciones de diseño deprocedimiento (con un bajo nivel de
abstracción).



La información de las estructuras de datos y de programas (un nivel de
abstracción ligeramente más elevado).



Modelos de flujo de datos y de control (un nivel de abstracción relativamente
alto)



Modelos de entidades y de relaciones (un elevado nivel de abstracción).

Capítulo 4 – Ingeniería Inversa

41

Gisweb -Reingeniería para la implementación de un Web Feature Service

A medida que crece el nivel de abstracción se proporciona al ingeniero de software
información

que

le

permitirá

comprender

más

fácilmente

estos

programas

[Pressman, 2003].

4.1.2 Completitud
La completitud de un proceso de ingeniería inversa alude al nivel de detalle que se
proporciona en un determinado...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ingenieria Inversa
  • Ingenieria inversa
  • Ingenieria inversa
  • Ingenieria inversa
  • Ingenieria Inversa
  • Ingenieria Inversa
  • Ingeniería inversa
  • Ingenieria inversa

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS