O Feature-Driven Development (FDD) é uma metodologia ágil que se concentra no desenvolvimento orientado a funcionalidades. Sua principal característica é o desenvolvimento incremental baseado em uma lista de funcionalidades que são testadas e operacionais. O FDD é especialmente eficaz para grandes projetos com necessidades de escalabilidade e foco em resultados rápidos. Qual é o principal benefício de organizar o desenvolvimento de software em torno de funcionalidades, como no FDD?
Questão
O Feature-Driven Development (FDD) é uma metodologia ágil que se concentra no desenvolvimento orientado a funcionalidades. Sua principal característica é o desenvolvimento incremental baseado em uma lista de funcionalidades que são testadas e operacionais. O FDD é especialmente eficaz para grandes projetos com necessidades de escalabilidade e foco em resultados rápidos. Qual é o principal benefício de organizar o desenvolvimento de software em torno de funcionalidades, como no FDD?
Alternativas
A) Reduzir a necessidade de interações com o cliente durante o desenvolvimento.
B) Evitar a implementação de requisitos que não estão completamente definidos.
C) Garantir que o software seja desenvolvido apenas após todos os testes serem concluídos.
D) Permitir entregas incrementais que agreguem valor ao negócio de forma contínua.
E) Garantir que o planejamento inicial nunca precise ser revisado.
Explicação
No Feature-Driven Development (FDD), o trabalho é organizado e planejado a partir de uma lista de funcionalidades (features), e cada feature é projetada, implementada e validada em ciclos curtos.
O principal benefício de organizar o desenvolvimento em torno de funcionalidades é que isso facilita entregas incrementais e frequentes, em que cada entrega representa uma capacidade concreta do sistema que pode ser demonstrada, testada e potencialmente colocada em produção. Assim, o projeto mantém foco em valor de negócio, com evolução contínua do produto.
Analisando as alternativas:
- A) Incorreta. Metodologias ágeis (incluindo FDD) não têm como objetivo reduzir interação com o cliente; pelo contrário, feedback é importante.
- B) Incorreta. FDD não “evita” requisitos incompletos; ele busca decompor o trabalho em features e entregar em incrementos.
- C) Incorreta. Testes acontecem continuamente por feature; não se espera “todos os testes” do sistema para entregar.
- D) Correta. O desenvolvimento por funcionalidades favorece incrementos frequentes e valor contínuo ao negócio.
- E) Incorreta. Em abordagens ágeis, o planejamento pode (e deve) ser revisado conforme aprendizado e mudanças.
Alternativa correta: (D).