Pular para o conteúdo principal

Questão de Engenharia de Software — Outros modelos de Processo de Software — FGV 2023

Engenharia de SoftwareOutros modelos de Processo de Software
Código
fg069580
Banca
FGV
Órgão
SEFAZ-MG
Ano
2023
Nível
Superior
Cargo
Auditor Fiscal da Receita Estadual - Tecnologia da Informação (Tarde)
Você entrou para um projeto novo, já em andamento, no qual a metodologia que a equipe do projeto segue é a de definir e escrever testes de software a partir das regras de negócio antes mesmo de implementar as funcionalidades propostas.Assinale a opção que indica o nome desse processo de desenvolvimento de software.
  1. ADDD
  2. BTDD
  3. CBDD
  4. DXP
  5. EScrum
Revelar gabarito e comentário

GabaritoB — TDD

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”.

Processo de Desenvolvimento de Software

Gabarito: letra B (TDD). A descrição do enunciado — "definir e escrever testes de software a partir das regras de negócio antes mesmo de implementar as funcionalidades" — corresponde exatamente ao Test-Driven Development (TDD), que preconiza escrever o teste antes do código, utilizando os requisitos como base. Embora o BDD (Behavior-Driven Development) também empregue testes prévios com foco em comportamento, o TDD é a abordagem original e mais diretamente associada ao ciclo "teste-falha-código-sucesso".

Alternativa A — ❌ Incorreta

DDD (Domain-Driven Design) é uma metodologia de design de software que prioriza o modelo de domínio, não tendo como característica central a escrita de testes antes da implementação.

Alternativa B — ✅ Correta ⟵ GABARITO

TDD (Test-Driven Development) é um processo de desenvolvimento em que o programador escreve inicialmente um teste automatizado que falha, depois implementa o código mínimo para passar no teste e, por fim, refatora. O enunciado descreve exatamente essa prática: definir os testes a partir das regras de negócio (requisitos) antes de codificar as funcionalidades.

Alternativa C — ❌ Incorreta

BDD (Behavior-Driven Development) também escreve testes antes da implementação, mas utiliza uma linguagem mais próxima do cliente (ex.: Gherkin) e foca no comportamento esperado do sistema. Apesar da semelhança, o TDD é o método clássico e mais abrangente, sendo a resposta esperada para a descrição genérica apresentada.

Alternativa D — ❌ Incorreta

XP (Extreme Programming) é uma metodologia ágil que inclui práticas como TDD, programação em pares e integração contínua, mas não é o nome do processo específico de escrever testes antes do código.

Alternativa E — ❌ Incorreta

Scrum é um framework de gerenciamento de projetos ágeis, focado em sprints, reuniões e papéis, não definindo a prática de desenvolvimento orientado a testes.

NÃO CAIA NESSA!

A banca explora a confusão entre TDD e BDD. Ambos utilizam testes antes do código, mas o BDD enfatiza a linguagem de comportamento e o envolvimento do cliente. A descrição genérica do enunciado (“a partir das regras de negócio”) pode levar ao BDD, mas o TDD é a resposta correta por ser o termo consagrado para o ciclo de teste-pré-código.

Gabarito: letra B (TDD).

Link permanente: /questoes/fg069580