En el mundo de la fabricación y el software, no es raro escuchar términos como «ingeniería inversa» o «ingeniería directa». Pero, ¿qué significan estos términos y cómo se aplican a su negocio? Veamos qué significan estos términos y cómo pueden utilizarse en su negocio.
Se trata de dos técnicas que suelen utilizar los ingenieros al diseñar nuevos productos. La ingeniería directa consiste en construir algo a partir de planos, archivos CAD u otros planes preexistentes. Por el contrario, la ingeniería inversa consiste en tomar algo que ya se ha fabricado y averiguar cómo se ha construido.
Ingeniería inversa
La ingeniería inversa (también denominada tecnología inversa) es una tecnología de diseño que permite recrear un producto. Se trata de un procedimiento en el que se analiza e investiga un producto de forma inversa para descubrir el flujo de procesamiento, la estructura organizativa, las características funcionales y las especificaciones tecnológicas del producto, lo que da como resultado un producto que funciona de forma similar pero tiene un aspecto diferente. La ingeniería inversa tiene su origen en los sectores militar y comercial. El objetivo de la ingeniería inversa es establecer los principios de diseño de un producto sin obtener la información de producción esencial en situaciones en las que esta es inaccesible.

Aplicaciones de ingeniería inversa
La ingeniería inversa es necesaria por las siguientes razones:
Análisis del producto: investigar cómo funciona el producto, la composición de sus componentes, estimar el presupuesto e identificar posibles infracciones.
Recuperación de archivos perdidos: se han perdido los archivos de un dispositivo especial y, al mismo tiempo, no se puede localizar a la persona responsable del proyecto. Con la ingeniería RE, se puede obtener el esquema del diagrama de la placa de circuito impreso, la lista de materiales y los archivos bin o C de los circuitos integrados.
Actualización de software/hardware: analizar el producto existente, sustituir la placa principal, rediseñar el sistema antiguo e integrar la función original en el nuevo proyecto.
Permiso de acceso de inicio de sesión: eliminar o desactivar la sección de seguridad del dispositivo para su activación.
Secretos militares o comerciales: robar las últimas investigaciones o prototipos de productos de un enemigo o competidor.
Fines académicos/de aprendizaje: bioingeniería, enseñanza e investigación.
Ingeniería de avance
La ingeniería inversa es un procedimiento de creación de productos que comienza con el diseño y termina con el producto.
Los ingenieros conciben inicialmente el aspecto exterior del producto, su estructura y sus parámetros técnicos generales, partiendo de la función esperada y los objetivos de especificación. A continuación, diseñan, fabrican e inspeccionan cada componente y completan una amplia gama de modelos de datos. Este proceso se transfiere luego al proceso de desarrollo, que incluye el montaje y las pruebas de rendimiento. Al final, todo ello da como resultado un ciclo de diseño y desarrollo del producto terminado. Un proceso de diseño de productos como este se conoce como «ingeniería inversa».

Contraste entre ingeniería directa e ingeniería inversa
1. La ingeniería directa requiere el desarrollo de aplicaciones con las especificaciones requeridas. Mientras que la ingeniería inversa obtiene información de las aplicaciones.
2. La ingeniería directa es un proceso más lento y complejo que la ingeniería inversa.
3. En la ingeniería directa, la producción comienza con las especificaciones requeridas. En la ingeniería inversa, la producción comienza con los productos existentes.
Retos de la ingeniería prospectiva
El principal reto de la ingeniería prospectiva es que puede resultar difícil predecir con precisión el futuro. Esto se debe a que puede ser complicado saber qué tecnología estará disponible en el futuro y cómo se utilizará. Además, puede resultar difícil anticipar los cambios en las necesidades y preferencias de los usuarios. Como resultado, la ingeniería prospectiva puede dar lugar en ocasiones a productos que quedan obsoletos o que ya no satisfacen las necesidades de los usuarios.
Retos de la ingeniería inversa
La ingeniería inversa plantea varios retos, especialmente en lo que respecta al software. Uno de ellos es comprender el código en sí mismo; el software suele ser complejo y puede estar escrito en diversos lenguajes de programación, lo que dificulta su descifrado. Otro reto es averiguar cómo funciona el código en primer lugar, lo que puede resultar difícil, especialmente si el código está ofuscado o minificado. Además, la ingeniería inversa suele requerir el acceso al código fuente, que puede no estar disponible o estar protegido por derechos de autor u otras leyes de propiedad intelectual. Por último, incluso si la ingeniería inversa tiene éxito, puede resultar difícil crear una copia funcional del software que sea idéntica al original.
Artículo relacionado




