Questão de Arquitetura de Software — Conceitos Básicos em Arquitetura de Software — FGV 2025
Arquitetura de Software›Conceitos Básicos em Arquitetura de Software
Código
fg107143
Banca
FGV
Órgão
CPRM
Ano
2025
Nível
Superior
Cargo
Analista em Geociências - Análise e Desenvolvimento de Sistemas
A arquitetura limpa, proposta por Robert C. Martin (2019), é um dos conceitos mais recentes em arquitetura de software.Assinale a afirmativa incorreta sobre esse conceito.
ATestabilidade deve fazer parte do design.
BA arquitetura não depende dos testes, mas os testes dependem internamente dos componentes do sistema.
CA função dos testes é apoiar o desenvolvimento e a operação do sistema.
DO problema dos "Testes Frágeis" ocorre quando os testes são fortemente acoplados ao sistema.
EAs regras de negócio devem ser testadas sem a utilização do Front End da aplicação.
Revelar gabarito e comentário▾
GabaritoC — A função dos testes é apoiar o desenvolvimento e a operação do sistema.
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”.
Clean Architecture (Robert C. Martin)
Gabarito: letra C. A afirmativa incorreta é a letra C, pois, na Clean Architecture, os testes não têm como função principal apoiar a operação do sistema; sua função primordial é validar as regras de negócio e garantir a corretude do software durante o desenvolvimento e a manutenção, não a operação em si.
A banca testa o conhecimento sobre os princípios da Clean Architecture, especialmente o papel da testabilidade e a independência entre arquitetura e testes. A armadilha está na alternativa C, que atribui aos testes um papel operacional que não lhes é inerente nesse contexto.
Alternativa
Afirmativa
Correta/Incorreta
Justificativa
A
Testabilidade deve fazer parte do design.
✅ Correta
Na Clean Architecture, a testabilidade é um pilar: o design deve permitir testes isolados, sem dependências de infraestrutura.
B
A arquitetura não depende dos testes, mas os testes dependem internamente dos componentes do sistema.
✅ Correta
A arquitetura é independente de frameworks e testes; os testes dependem das abstrações e regras de negócio internas.
C
A função dos testes é apoiar o desenvolvimento e a operação do sistema.
❌ Incorreta (Gabarito)
Os testes apoiam o desenvolvimento e a manutenção, não a operação do sistema. A operação refere-se à execução contínua, não afetada por testes.
D
O problema dos "Testes Frágeis" ocorre quando os testes são fortemente acoplados ao sistema.
✅ Correta
Testes frágeis quebram facilmente devido ao acoplamento excessivo com detalhes de implementação, o que a Clean Architecture busca evitar.
E
As regras de negócio devem ser testadas sem a utilização do Front End da aplicação.
✅ Correta
Na Clean Architecture, as regras de negócio são independentes de interface, permitindo testes sem Front End.
Alternativa A — ✅ Correta
"Testabilidade deve fazer parte do design." Na Clean Architecture, a testabilidade é um dos pilares: o design deve ser concebido de modo que os componentes possam ser testados isoladamente, sem dependências de infraestrutura ou frameworks.
Alternativa B — ✅ Correta
"A arquitetura não depende dos testes, mas os testes dependem internamente dos componentes do sistema." A arquitetura deve ser independente de qualquer framework ou biblioteca, inclusive de testes. Já os testes dependem dos componentes internos (abstrações, interfaces e regras de negócio) para serem escritos.
Alternativa C — ❌ Incorreta ⟵ GABARITO
"A função dos testes é apoiar o desenvolvimento e a operação do sistema." O erro está em incluir a "operação" como finalidade dos testes na Clean Architecture. Os testes automatizados apoiam o desenvolvimento (verificam comportamento, previnem regressões) e a manutenção, mas não se destinam a apoiar a operação do sistema. A operação refere-se à execução contínua do software, que não é afetada pelos testes unitários ou de integração. A frase correta seria que os testes apoiam o desenvolvimento e a verificação, não a operação.
NÃO CAIA NESSA!
A banca utiliza o termo "operação" para induzir o candidato a achar que os testes têm um papel operacional direto. Fique atento: na Clean Architecture, a testabilidade existe para validar as regras de negócio e permitir refatorações seguras, não para manter o sistema funcionando (operação).
Alternativa D — ✅ Correta
"O problema dos 'Testes Frágeis' ocorre quando os testes são fortemente acoplados ao sistema." Exato: testes frágeis quebram facilmente porque dependem de implementações concretas, contrariando o princípio de depender de abstrações.
Alternativa E — ✅ Correta
"As regras de negócio devem ser testadas sem a utilização do Front End da aplicação." Na Clean Architecture, as regras de negócio (entidades e casos de uso) são testadas isoladamente, sem dependência de UI, banco de dados ou outros frameworks.
Gabarito: letra C — a afirmativa incorreta sobre Clean Architecture é a que atribui aos testes a função de apoiar a operação do sistema.