Questão de Engenharia de Software — Análise Essencial — FGV 2024
Engenharia de Software›Análise Essencial
Código
fg078343
Banca
FGV
Órgão
Câmara de Fortaleza - CE
Ano
2024
Nível
Superior
Cargo
Analista de Informática
Frederick Brooks, Prêmio Turing em 1999, e um pioneiro na área de Engenharia de Software destacou em seu ensaio Não Existe Bala de Prata: Essência e Acidentes em Engenharia de Software uma distinção crucial entre o desenvolvimento de software e de hardware.Ele identificou dois tipos de dificuldades: essenciais e acidentais. A analogia com a bala de prata se refere às dificuldades essenciais, aquelas que são intrínsecas e difíceis de serem superadas por novas tecnologias ou métodos.Assinale a opção que apresenta uma das dificuldades essenciais, segundo Brooks.
AA comunicação entre desenvolvedores e cliente.
BA necessidade de documentação detalhada do código.
CAs restrições de recursos de hardware.
DA complexidade inerente da arquitetura de software.
EA falta de ferramentas de desenvolvimento eficazes.
Revelar gabarito e comentário▾
GabaritoD — A complexidade inerente da arquitetura de software.
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”.
Frederick Brooks: Dificuldades Essenciais e Acidentais
Gabarito: letra D. Brooks, em seu ensaio "No Silver Bullet", distingue dificuldades essenciais (intrínsecas à natureza do software) e acidentais (relacionadas a ferramentas, processos e ambiente). A complexidade inerente da arquitetura de software é uma dificuldade essencial, pois decorre da própria complexidade do problema a ser resolvido. As demais alternativas são exemplos de dificuldades acidentais, superáveis com melhores tecnologias ou métodos.
Alternativa A — ❌ Incorreta
A comunicação entre desenvolvedores e cliente é uma dificuldade acidental, passível de melhoria com técnicas de comunicação e ferramentas colaborativas. Não é intrínseca ao software.
Alternativa B — ❌ Incorreta
A necessidade de documentação detalhada também é acidental, relacionada a processos e ferramentas de documentação, não sendo inerente ao software.
Alternativa C — ❌ Incorreta
Restrições de hardware são dificuldades acidentais, pois dependem do ambiente de execução e podem ser contornadas com upgrades ou otimizações.
Alternativa D — ✅ Correta ⟵ GABARITO
A complexidade inerente da arquitetura de software é uma dificuldade essencial, conforme Brooks. Ela surge da necessidade de modelar domínios complexos, gerenciar interdependências e garantir consistência, sendo parte intrínseca do desenvolvimento.
Alternativa E — ❌ Incorreta
A falta de ferramentas de desenvolvimento eficazes é uma dificuldade acidental, temporária e solucionável com avanços tecnológicos (ex.: IDEs, compiladores, frameworks).