Questão de Engenharia de Software — Desenvolvimento de Software — FGV 2024
Engenharia de Software›Desenvolvimento de Software
Código
fg084711
Banca
FGV
Órgão
EPE
Ano
2024
Nível
Superior
Cargo
Analista de Gestão Corporativa - Tecnologia da Informação (Soluções)
O Desenvolvimento Orientado por Comportamento (BDD) facilita a colaboração entre as partes interessadas e desenvolvedores ao usar uma linguagem comum para descrever o comportamento do sistema.Sobre o BDD, analise as afirmativas a seguir.I. No BDD, os novos comportamentos são adicionados e testados em pequenos ciclos contínuos, sendo assim um método iterativo, mas não incremental.II. No BDD, a documentação é atualizada automaticamente a cada ciclo.III. A prática de escrever testes antes do desenvolvimento do código é um elemento essencial do BDD.Está correto o que se afirma em
AI, apenas.
BII, apenas.
CIII, apenas.
DII e III, apenas.
EI, II e III.
Revelar gabarito e comentário▾
GabaritoD — II e III, apenas.
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”.
Behavior-Driven Development (BDD)
Gabarito: letra D. Estão corretas apenas as afirmativas II e III. O BDD é uma metodologia ágil baseada em TDD que utiliza uma linguagem comum (Gherkin) para descrever o comportamento do sistema. É tanto iterativo quanto incremental (diferentemente do que afirma I). A documentação é atualizada automaticamente por meio dos cenários executáveis (II) e a escrita de testes antes do código é essencial (III).
A banca testa o conhecimento sobre as características fundamentais do BDD. A afirmativa I é a pegadinha: o BDD é sim incremental, pois novos comportamentos são adicionados em ciclos, cada um agregando funcionalidade ao sistema.
NÃO CAIA NESSA!
A afirmativa I afirma que BDD é iterativo, mas não incremental – isso é falso. O BDD é ambos: os comportamentos são desenvolvidos em pequenos ciclos (iterativo) e cada ciclo adiciona nova funcionalidade ao sistema (incremental). Cuidado para não confundir com abordagens puramente iterativas, como prototipação descartável.
BDD (Behavior-Driven Development)
1Características
Iterativo (ciclos contínuos)
Incremental (agrega funcionalidade)
Linguagem comum (Gherkin)
Especificação executável
2Práticas essenciais
Testes antes do código (outside-in)
Cenários Given-When-Then
Documentação viva
Atualizada automaticamente
3Relação com TDD
Evolução do TDD
Foco no comportamento
LEVEL · soulevel.com.br
Afirmativa I — ❌ Incorreta
"No BDD, os novos comportamentos são adicionados e testados em pequenos ciclos contínuos, sendo assim um método iterativo, mas não incremental."
O BDD adota ciclos contínuos (iteração) e também agrega valor incrementalmente (cada novo cenário implementado aumenta a funcionalidade). Portanto, é incorreto afirmar que não é incremental.
Afirmativa II — ✅ Correta
"No BDD, a documentação é atualizada automaticamente a cada ciclo."
Os cenários escritos em linguagem Gherkin (Given-When-Then) servem como especificação executável e documentação viva. Ao adicionar novos comportamentos, os cenários são atualizados, refletindo automaticamente o estado atual do sistema.
Afirmativa III — ✅ Correta
"A prática de escrever testes antes do desenvolvimento do código é um elemento essencial do BDD."
BDD é uma evolução de TDD; ambos preconizam escrever o teste (cenário) antes de implementar a funcionalidade (outside-in development).
Conclusão: Apenas as afirmativas II e III estão corretas, correspondendo à alternativa D.