A atividade de reengenharia de software que tem como característica a análise do programa na tentativa de criar uma representação dele em um nível mais alto de abstração que o código-fonte é denominada