3.2 - Engenharia reversa com o código-fonte
O primeiro trabalho que se deve fazer: extrair informações, ou seja, coletar dados sobre o sistema a ser estudado. As atividades da engenharia reversa se fazem sobre essas informações extraídas, mais do que sobre o próprio sistema. As informações podem ser extraídas de várias fontes:
A análise do código-fonte permite extrair as informações mais básicas do sistema, como:
Para executar quaisquer desses procedimentos é preciso conhecer a sintaxe da linguagem de programação usada. Dependendo das necessidades, podem-se usar programas específicos (parsers), que vão buscar só um tipo particular de informação.
Outra fonte de informação é o banco de dados, que representa um papel importante na engenharia reversa de um sistema. Contudo, a engenharia reversa de dados é também um trabalho específico que pode ser feito independentemente de qualquer sistema que possa manipular esses dados. Um exemplo seria a mudança do banco de dados.
Se uma rotina A chamar a rotina B, A depende de B porque uma modificação na definição de B pode ter consequências sobre a execução de A.
X