Alternativa B - Detalhar por Funcionalidade / Construir por Funcionalidade
Introdução ao FDD
O FDD (Feature-Driven Development, ou Desenvolvimento Orientado a Funcionalidades) é um método ágil focado em orientação a objetos e na entrega incremental de software. Sua principal característica é dividir o sistema em pequenas funcionalidades ("features") que são desenvolvidas em ciclos curtos.
Embora a metodologia seja classicamente descrita por 5 processos, a questão refere-se às duas fases centrais de execução iterativa do ciclo de desenvolvimento, conforme abordado na literatura especializada (como no livro de Wazlawick citado na questão).
Análise das Alternativas
Para identificar a resposta correta, devemos conhecer os processos oficiais do FDD e eliminar as opções que pertencem a outros métodos.
1. Os 5 Processos do FDD
O FDD é estruturado em cinco passos sequenciais e iterativos:
- Desenvolver um Modelo Global
- Construir uma Lista de Funcionalidades
- Planejar por Funcionalidade
- Projetar (Detalhar) por Funcionalidade
- Construir por Funcionalidade
As alternativas A e B utilizam a terminologia correta do FDD ("por Funcionalidade"), enquanto C, D e E referem-se a conceitos gerais ou outros frameworks.
2. Identificação das Duas Fases de Execução
No contexto do desenvolvimento prático do FDD, após o planejamento inicial (modelagem e lista), o time entra em um ciclo contínuo de trabalho. Este ciclo é fundamentalmente composto por:
- Detalhar por Funcionalidade: Criação do design técnico para a funcionalidade selecionada.
- Construir por Funcionalidade: Codificação, testes unitários e integração daquela funcionalidade.
Portanto, a Alternativa B é a correta, pois resume as duas etapas principais de produção do método.
3. Por que as outras estão incorretas?
| Alternativa | Conteúdo | Método Relacionado |
|---|
| A | Construir Lista / Planejar | São processos iniciais do FDD, mas não representam as fases completas de execução (falta a construção). |
| C | Teste / Integração Contínua | Conceitos típicos de TDD (Test Driven Development) e DevOps. |
| D | Concepção / Construção | Termos genéricos usados em modelos tradicionais como RUP (Rational Unified Process). |
| E | Design Simples / Ritmo Sustentável | São princípios do Manifesto Ágil e pilares do XP (Extreme Programming). |
Conclusão
A Alternativa B é a correta porque utiliza a nomenclatura específica do FDD ("por Funcionalidade") e identifica as etapas de projeto e implementação que compõem o coração do desenvolvimento iterativo deste método.