A Engenharia Reversa é o processo de exame e compreensão do ...
A Engenharia Reversa é o processo de exame e compreensão do software existente, para recapturar ou recriar o projeto e decifrar os requisitos atualmente implementados pelo sistema, apresentando-os em um nível ou grau mais alto de abstração. Os elementos de engenharia reversa são:
- Gabarito Comentado (1)
- Aulas (12)
- Comentários (1)
- Estatísticas
- Cadernos
- Criar anotações
- Notificar Erro
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é C.
Vamos entender melhor o tema da questão para facilitar sua compreensão. A questão aborda a Engenharia Reversa, que é um processo crucial na área de desenvolvimento de software e sistemas. A ideia central da engenharia reversa é analisar e compreender um software existente para recriar seu projeto ou documentar os requisitos implementados sem ter acesso ao código original.
A engenharia reversa é frequentemente usada para manutenção de software, atualização de sistemas legados, ou até mesmo para a análise de software de terceiros. Ela envolve várias etapas e conceitos importantes, como níveis de abstração, completitude do processo, interatividade e direcionalidade.
Agora, vamos justificar a alternativa correta e explicar por que as outras alternativas estão incorretas:
C - Níveis de abstração, completitude do processo, interatividade e direcionalidade.
Esta é a alternativa correta porque inclui todos os elementos fundamentais da engenharia reversa:
- Níveis de abstração: Refere-se à capacidade de representar o sistema em diferentes níveis de detalhe, desde uma visão geral do sistema até detalhes minuciosos do código.
- Completitude do processo: Indica que o processo de engenharia reversa é abrangente e cobre todos os aspectos do software.
- Interatividade: Envolve a interação entre diferentes componentes e partes do sistema durante a análise.
- Direcionalidade: Refere-se à orientação do processo, seja de cima para baixo (top-down) ou de baixo para cima (bottom-up).
Observando as alternativas incorretas:
A - Níveis de composição, completitude do processo, funcionalidades e direcionalidade.
Embora a alternativa mencione "completitude do processo" e "direcionalidade", que são elementos corretos, ela fala em "níveis de composição" e "funcionalidades", que não são termos padrão usados em engenharia reversa.
B - Níveis de abstração, completitude do software, interatividade e ortogonalidade.
Essa alternativa menciona "níveis de abstração" e "interatividade", que são corretos, mas "completitude do software" e "ortogonalidade" não são conceitos aplicáveis diretamente à engenharia reversa. A "completitude do software" se refere mais ao estágio de desenvolvimento do software, e "ortogonalidade", geralmente, é um conceito usado em design de sistemas e não diretamente em engenharia reversa.
D - Níveis de implementação, completitude do processo, interatividade e direcionalidade.
Apesar de mencionar "completitude do processo", "interatividade" e "direcionalidade", que são corretos, "níveis de implementação" não é o termo correto usado em engenharia reversa. O termo adequado é "níveis de abstração".
Espero que esta explicação tenha ajudado a esclarecer o tema! Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Gabarito C
Cada elemento descreve uma dimensão diferente do processo de "olhar para trás" em um software:
- Níveis de Abstração: Refere-se ao grau de detalhe recuperado. A engenharia reversa busca sair de um nível baixo (código de máquina ou código-fonte) para um nível mais alto (diagramas de arquitetura, modelos de dados ou requisitos de negócio).
- Completitude do Processo: Indica o quanto do sistema original foi recuperado. O processo pode ser parcial (focado apenas em um módulo específico) ou total (tentando reconstruir todo o sistema).
- Interatividade: Refere-se ao grau de envolvimento do ser humano no processo. A engenharia reversa raramente é 100% automática; ela geralmente exige um analista interagindo com ferramentas para interpretar o que o código "quis dizer".
- Direcionalidade: Define se o processo é apenas de extração de conhecimento (unidirecional) ou se as mudanças feitas no modelo recuperado podem ser refletidas de volta no código original (bidirecional, também conhecido como Round-trip engineering).
Retroceder Nunca Render-se Jamais !
Força e Fé !
Fortuna Audaces Sequitur !
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo