Introdução à Engenharia Reversa

Engenharia reversa é um método de restauração de um produto a partir de uma avaliação de sua estrutura de software, requisitos de funcionalidade e funções. Isso cria uma lista do software e extrai conhecimento dele. Essa tecnologia visa promover o trabalho de manutenção, melhorando a compreensibilidade de um sistema e gerando os documentos necessários para um sistema legado.

Quais são alguns usos comuns da engenharia reversa?

1. Tornar novos produtos compatíveis mais baratos do que atualmente disponíveis no mercado.

2. Tornar o código mais poderoso para interoperar ou vincular diferentes sistemas operacionais ou bancos de dados.

3. Descobrir características comerciais descoordenadas do produto.

4. Essa forma de investigação envolve indivíduos em um processo produtivo de aprendizado sobre a operação de programas e serviços. O método de identificar algo e explicar como ele funciona é uma maneira importante de aprender e desenvolver como criar um sistema. A engenharia reversa torna possível duplicar um componente existente, coletando as dimensões físicas, características e propriedades do componente. Uma análise bem planejada do ciclo de vida e uma análise de custo ou benefício devem ser realizadas para justificar os projetos de engenharia reversa antes de tentar a engenharia reversa.

Consiste nas seguintes etapas, de acordo com a Metodologia:

  • Compare suas observações com o dispositivo real e sugira uma melhoria.
  • Observe e analise os mecanismos operacionais do sistema.
  • Dissecar e estudar o funcionamento interno de um dispositivo mecânico.

Um pesquisador pode coletar os dados técnicos necessários para registrar a função do software ou parte de um processo através da engenharia reversa. Os pesquisadores podem examinar a força dos sistemas e identificar suas fraquezas em termos de desempenho, interoperabilidade e segurança ao usar software de engenharia reversa. O método de engenharia reversa ajuda os pesquisadores a entender como um sistema funciona e quais elementos do software levam ao seu não funcionamento. Produtores independentes podem estar interessados ​​em um mercado competitivo que reconheça as melhorias feitas nos bens dominantes. Por exemplo, é necessário auditorias de segurança que permitam aos usuários de código proteger melhor seus sistemas e redes, descobrindo falhas de segurança. Geralmente começa com a criação de melhores projetos e a interoperabilidade dos produtos existentes.

Os passos a seguir para a Engenharia Reversa são dados da seguinte maneira:

  1. Informações de Coleta
  2. Gravando a funcionalidade
  3. Examinando as informações
  4. Fluxo de controle de gravação
  5. Extraindo a estrutura
  6. Gravando fluxo de dados
  7. Revisar o design extraído
  8. Gerar documentação

Quais são alguns casos legais ou questões éticas?

Novas decisões judiciais mostram que a existência ética e legal das técnicas de engenharia reversa é usada para obter interoperabilidade com um programa de computador desenvolvido independentemente. A Lexmark entrou com uma ação contra a SCC em dezembro de 2002, acusando-a de violar a lei de direitos autorais e a DMCA. O código usado no cartucho da impressora Lexmark foi submetido à engenharia reversa pelo SCC para criar cartuchos compatíveis. De acordo com o mundo dos computadores, a alegação da Lexmark de que os chips Smartek da SCC contêm tecnologia Lexmark protegida por direitos autorais. O programa gerencia a interação entre impressoras Lexmark e cartuchos de toner; sem ele, os cartuchos de toner reabilitados não funcionarão com as impressoras da Lexmark. “O tribunal decidiu que 'a lei de direitos autorais não deve ser usada para impedir a interoperabilidade entre os produtos de uma empresa e os de seus concorrentes. Em uma decisão dos EUA. "A DMCA não proíbe os desenvolvedores de códigos de usar engenharia reversa para acessar material protegido por direitos autorais, se o fizerem, a fim de obter interoperabilidade com um programa de computador desenvolvido de forma independente", disse o Escritório de Direitos Autorais em outubro de 2003.

O que é implementação legal?

  • Proteção de patente - protege o conceito por trás da operação de um novo produto.
  • A proteção de direitos autorais cobre apenas a forma e o design de um produto.

Uma patente nada mais é do que um sinal de alerta para um rival, a fim de desencorajar a concorrência, de acordo com as soluções da NPD. Somente as soluções NPD afirmam que um rival pode executar uma das seguintes ações se houver interesse em uma idéia: o ER geralmente é realizado usando a parede chinesa ou de sala limpa. Sala limpa, é feito sequencialmente.

É antiético fazer engenharia reversa?

Esse problema é amplamente discutido e, aparentemente, não há resposta exata para a divisão. A propriedade intelectual é a principal reclamação contra a engenharia reversa. Como a Lexmark e empresas como elas gastam tempo e dinheiro desenvolvendo produtos, acham antiético que outras pessoas possam fazer engenharia reversa de seus produtos. Também existem itens que foram prejudicados por essas atividades, como o Bit Keeper. Por que empresas e indivíduos devem gastar grandes quantidades de recursos na aquisição de propriedade intelectual que os rivais poderiam reverter por uma fração do custo ?.

Artigos recomendados

Este é um guia para engenharia reversa. Aqui discutimos os usos, casos legais, questões éticas e implementação legal da engenharia reversa. Você também pode consultar o seguinte artigo para saber mais -

  1. Engenharia reversa com Python
  2. Perguntas da entrevista de engenharia de software
  3. Carreiras como engenheiro de software
  4. Perguntas da entrevista sobre engenharia elétrica