Questão de Engenharia de Software — Processos de Software - Desenvolvimento Ágil — FUNDATEC 2023
Engenharia de Software›Processos de Software - Desenvolvimento Ágil
Código
qq897257
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2023
Nível
Superior
Cargo
ANC - Analista em Computação - Ênfase em Teste de Software e Garantia da Qualidade
Dentro das metodologias ágeis, TDD (Test-Driven Development ou Desenvolvimento Orientado a Testes) e BDD (Behavior Driven Development ou Desenvolvimento Orientando a Comportamentos) são considerados:
AUm framework de desenvolvimento ágil.
BTécnicas de desenvolvimento orientado a testes.
CDesign Patterns para Testes.
DPadrões de desenvolvimento Orientado a Objetos.
EElementos de Software Reutilizável Orientado a Objetos.
Revelar gabarito e comentário▾
GabaritoB — Técnicas de desenvolvimento orientado a testes.
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”.
TDD e BDD em Metodologias Ágeis
Gabarito: letra B. TDD (Test-Driven Development) e BDD (Behavior Driven Development) são técnicas de desenvolvimento orientado a testes, não frameworks, design patterns ou padrões de orientação a objetos. A alternativa B captura exatamente essa essência: são técnicas que priorizam a escrita de testes antes do código (TDD) ou a definição de comportamentos esperados (BDD) para guiar o desenvolvimento.
A questão testa o conhecimento básico sobre o que são TDD e BDD dentro do universo ágil. É comum o candidato confundir práticas específicas com metodologias completas (como Scrum ou XP) ou com conceitos de design de software. Vamos analisar cada alternativa:
Alternativa
Descrição
Correta?
Motivo
A
Framework de desenvolvimento ágil
❌
Frameworks ágeis (Scrum, XP) organizam o ciclo de vida; TDD/BDD são técnicas usadas dentro deles
B
Técnicas de desenvolvimento orientado a testes
✅
TDD escreve testes antes do código; BDD foca em comportamento (Given-When-Then)
C
Design Patterns para Testes
❌
Design Patterns são soluções de design reutilizáveis; TDD/BDD são processos, não padrões
D
Padrões de desenvolvimento Orientado a Objetos
❌
TDD/BDD não são específicos de OO; aplicam-se a qualquer paradigma
E
Elementos de Software Reutilizável Orientado a Objetos
❌
Não são elementos reutilizáveis de software OO
Alternativa A — ❌ Incorreta
Afirma que TDD e BDD são um "framework de desenvolvimento ágil". Erro: frameworks ágeis são conjuntos de práticas e processos que organizam o ciclo de vida do projeto (ex.: Scrum, Kanban, XP). TDD e BDD são técnicas (práticas) que podem ser usadas dentro desses frameworks, mas não são frameworks em si.
Alternativa B — ✅ Correta ⟵ GABARITO
Define corretamente TDD e BDD como técnicas de desenvolvimento orientado a testes. No TDD, escreve-se o teste antes da implementação; no BDD, os testes são escritos em linguagem natural (Given-When-Then) focando no comportamento esperado. Ambos são abordagens de teste que guiam o desenvolvimento, portanto se enquadram perfeitamente em "técnicas de desenvolvimento orientado a testes".
Alternativa C — ❌ Incorreta
Diz que são "Design Patterns para Testes". Erro: Design Patterns são soluções reutilizáveis para problemas comuns de design de software (ex.: Singleton, Factory). TDD e BDD são processos de desenvolvimento, não padrões de projeto. Embora existam padrões de teste (como Page Object), TDD/BDD não são deles.
Alternativa D — ❌ Incorreta
Classifica como "Padrões de desenvolvimento Orientado a Objetos". Erro: TDD e BDD não são específicos de orientação a objetos; podem ser aplicados em qualquer paradigma. São técnicas de teste, não padrões de projeto OO.
Alternativa E — ❌ Incorreta
Considera como "Elementos de Software Reutilizável Orientado a Objetos". Erro: Reutilização de software refere-se a componentes, bibliotecas ou frameworks reutilizáveis. TDD/BDD são práticas de desenvolvimento, não elementos reutilizáveis.
NÃO CAIA NESSA!
Na hora da prova, lembre-se: TDD e BDD são práticas/técnicas de teste, não metodologias, frameworks ou padrões de design. Associe-os sempre à ideia de "testes antes do código" ou "comportamento esperado". Isso evita cair na armadilha de confundir com Scrum ou XP.