La ingeniería inversa
Enviado por dixontito • 4 de Diciembre de 2012 • Ensayo • 1.665 Palabras (7 Páginas) • 597 Visitas
INTRODUCCIÓN
La ingeniería inversa es el proceso de extraer el conocimiento o el diseño del proyecto de todo lo hecho por el hombre. El concepto ha existido desde hace mucho tiempo antes de los ordenadores o la tecnología moderna, y probablemente se remonta a los días de la revolución industrial. La ingeniería inversa se lleva a cabo normalmente para obtener conocimientos que faltan, ideas y la filosofía de diseño cuando dicha información no está disponible. En algunos casos, la información es propiedad de alguien que no está dispuesto a compartir. En otros casos, la información se ha perdido o destruido.
Los países más desarrollados que se mantienen a la vanguardia en filosofías de producción y en tecnología son quienes generan la mayor parte de la ingeniería en el mundo. Esto crea un fenómeno de desigualdad tecnológica a nivel mundial que, según afirman algunos expertos, se agudiza debido a la inmensa diferencia en calidad y cantidad de recursos que son destinados las instituciones dedicadas a la investigación y desarrollo en estos países, en comparación con aquellos que se enfocan sobre todo a formar técnicos (nacionales en vías de desarrollo). Ante este panorama, se buscan alternativas para aprovechar y reutilizar todos los conocimientos existentes sobre la forma de crear productos. Las formulas ingenieriles probadas cobran importancia especial en la feroz competencia de estos tiempos. La ingeniería tradicional parte de un conjunto de especificaciones técnicas que contienen información sobre la funcionalidad de la mercancía, su cumplimiento de normas, sustentabilidad ambiental y viabilidad económica entre otras, para plantear su adecuada fabricación y así llegar a un articulo físico. Como se podrá adivinar, se requiere de un considerable tiempo de estudio de mercado, diseño del producto y del proceso de producción, modelado, pruebas de factibilidad, funcionalidad y conformidad, estudio de materias primas, evaluaciones de costos y tiempos, etc. Es un procedimiento ineludible para la obtención de piezas originales.
Ingeniería Inversa
La ingeniería inversa se trata de tomar algo (un dispositivo mecánico o electrónico, un software de computadora, etc.) para analizar su funcionamiento en detalle, generalmente para intentar crear un dispositivo o programa que haga la misma o similar tarea sin copiar la original
El objetivo de la ingeniería inversa es obtener información o un diseño a partir de un producto accesible al público, con el fin de determinar de qué está hecho, qué lo hace funcionar y cómo fue fabricado.
Hoy en día (principios del siglo XXI), los productos más comúnmente sometidos a ingeniería inversa son los programas de computadoras y los componentes electrónicos, pero, en realidad, cualquier producto puede ser objeto de un análisis de Ingeniería Inversa.
El método se denomina así porque avanza en dirección opuesta a las tareas habituales de ingeniería, que consisten en utilizar datos técnicos para elaborar un producto determinado. En general, si el producto u otro material que fue sometido a la ingeniería inversa fue obtenido en forma apropiada, entonces el proceso es legítimo y legal. De la misma forma, pueden fabricarse y distribuirse, legalmente, los productos genéricos creados a partir de la información obtenida de la ingeniería inversa, como es el caso de algunos proyectos de Software libre ampliamente conocidos.
Usos De La Ingeniería Inversa
La ingeniería inversa suele ser empleada por empresas, para analizar si el producto de su competencia infringe patentes de sus propios productos.
Muchas veces, la ingeniería inversa es utilizada en el área militar para investigar (y copiar) las tecnologías de otras naciones, sin obtener planos ni detalles de su construcción o desarrollo.
En el software y en el hardware, la ingeniería inversa, muchas veces es empleada para desarrollar productos que sean compatibles con otros productos, sin conocer detalles de desarrollo de éstos últimos. En otras palabras, quien desarrolla los nuevos productos, no puede acceder a los detalles de fabricación de los productos de los que intenta ser compatibles.
La ingeniería inversa también es empleada para comprobar la seguridad de un producto, generar keygens de aplicaciones, reparación de productos, etc.
Tipos De Ingeniería Inversa
La ingeniería inversa puede ser de varios tipos:
Ingeniería inversa de datos: Se aplica sobre algún código de bases datos (aplicación, código SQL, etc) para obtener los modelos relacionales o sobre el modelo relacional para obtener el diagrama entidad-relación.
Ingeniería inversa de lógica o de proceso: Cuando la ingeniería inversa se aplica sobre código de un programa para averiguar su lógica o sobre cualquier documento de diseño para obtener documentos de análisis o de requisitos.
Ingeniería inversa de interfaces de usuario: Se aplica con objeto de mantener la lógica interna del programa para obtener los modelos y especificaciones que sirvieron de base para la construcción de la misma, con objeto de tomarlas como punto de partida en procesos de ingeniería directa que permitan modificar dicha interfaz.
Herramientas Para La Ingeniería Inversa
Los depuradores: Un depurador es un programa que se utiliza para controlar otros programas. Permite avanzar paso a paso por el código, rastrear fallos, establecer puntos de control y observar las variables y el estado de la memoria en un momento dado del programa que se esté depurando. Los depuradores son muy valiosos a la hora de determinar el flujo lógico del programa.
Un
...