Questão de Engenharia de Software — Desenvolvimento de Software — FGV 2024
Engenharia de Software›Desenvolvimento de Software
Código
fg089967
Banca
FGV
Órgão
Prefeitura de Macaé - RJ
Ano
2024
Nível
Superior
Cargo
Analista Previdenciário - Especialidade: Analista de Sistemas
Análise de Software ou Análise de Código é o processo de examinar o código fonte de um software para identificar e corrigir problemas, melhorar a qualidade e garantir que o código esteja alinhado com os requisitos e padrões estabelecidos. Duas das principais formas de se realizar Análise de Software é por meio da análise estática e da análise dinâmica. Assinale a opção que melhor descreve a diferença fundamental entre análise estática e análise dinâmica de software.
AA análise estática é realizada durante a execução do software, enquanto a análise dinâmica é feita antes do software ser executado.
BA análise estática examina o código fonte e a estrutura do software sem executá-lo, enquanto a análise dinâmica envolve a execução do software e a observação do comportamento em tempo real.
CA análise estática é usada para medir o desempenho do software, enquanto a análise dinâmica é usada para revisar a arquitetura do sistema.
DA análise estática é aplicada somente a softwares desenvolvidos em linguagens de programação de baixo nível, enquanto a análise dinâmica é usada para todos os tipos de linguagens.
EA análise estática foca na identificação de erros de tempo de execução, enquanto a análise dinâmica detecta erros de compilação.
Revelar gabarito e comentário▾
GabaritoB — A análise estática examina o código fonte e a estrutura do software sem executá-lo, enquanto a análise dinâmica envolve a execução do software e a observação do comportamento em tempo real.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Análise Estática vs Dinâmica de Software
Gabarito: letra B. A diferença fundamental é que a análise estática examina o código fonte e a estrutura do software sem executá-lo, enquanto a análise dinâmica envolve a execução do software e a observação do comportamento em tempo real. As demais alternativas invertem ou distorcem esse conceito.
Análise de Software
1Estática
Sem executar o código
Examina código fonte e estrutura
Detecta erros de compilação/sintaxe
Avalia arquitetura
2Dinâmica
Com execução do software
Observa comportamento em tempo real
Detecta erros de execução (exceções)
Mede desempenho (profiling)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que a análise estática é realizada durante a execução e a dinâmica antes da execução. É exatamente o oposto: a estática não executa o software; a dinâmica requer execução. A banca inverte o momento de aplicação.
Alternativa B — ✅ Correta ⟵ GABARITO
Descreve corretamente: estática examina o código sem executar; dinâmica executa e observa o comportamento em tempo real. É a definição consagrada na engenharia de software.
Alternativa C — ❌ Incorreta
Atribui à análise estática a medição de desempenho e à dinâmica a revisão de arquitetura. Na prática, o desempenho é medido dinamicamente (com profiling), enquanto a arquitetura é avaliada estaticamente (revisão de código, diagramas). A banca troca os objetivos.
Alternativa D — ❌ Incorreta
Restringe a análise estática a linguagens de baixo nível e a dinâmica a todas as linguagens. Isso é falso: ambas são aplicáveis independentemente da linguagem. A análise estática é útil em qualquer linguagem, mas não exclusiva de baixo nível.
Alternativa E — ❌ Incorreta
Diz que a análise estática foca em erros de tempo de execução e a dinâmica em erros de compilação. Também invertido: erros de compilação (sintaxe, tipos) são detectados estaticamente; erros de tempo de execução (exceções, falhas) são detectados dinamicamente.
NÃO CAIA NESSA!
A banca explora a confusão comum entre os conceitos, invertendo o momento (alternativa A), os objetivos (C) e os tipos de erro (E). O segredo é lembrar que "estática = sem execução" e "dinâmica = com execução". Com essa chave, você elimina as distorções.