Feature Driven Development
Introdução
Feature Driven Development (Desenvolvimento Guiado por Funcionalidades) é uma metodologia ágil para gerenciamento e desenvolvimento de software, criada em 1997 num grande projeto em Java para o United Overseas Bank, em Singapura. Nasceu a partir da experiência de análise e modelagem orientadas por objetos de Peter Coad, e de gerenciamento de projetos de Jeff de Luca.
Foi inicialmente publicada em 1999, no capítulo 6 do livro “Java Modeling in Color with UML”, de Peter Coad, Eric Lefebvre e Jeff De Luca. Em 2002, Stephen Palmer (gerente de desenvolvimento do projeto em Singapura) e John Mac Felsing (arquiteto senior na TogetherSoft) publicaram o livro “A Pratical Guide to Feature Driven Development”, com a versão completa, atualizada e comentada da metodologia. Em 2003, David Anderson, que foi o especialista em interface com o usuário, no projeto de Cingapura, publicou um marco na literatura Ágil, “Agile Management for Software Engineering: Using the Theory of Constraints for business Results”, onde oferece uma análise profunda sobre a FDD (entre outras metodologias), além de material inédito sobre a FDD.
A FDD chama a atenção por algumas características peculiares:
Resultados úteis a cada duas semanas ou menos
Blocos bem pequenos de funcionalidade valorizada pelo cliente, chamados "Features"
Planejamento detalhado e guia para medição
Rastreabilidade e relatórios com incrível precisão
Monitoramento detalhado dentro do projeto, com resumos de alto nível para clientes e gerentes, tudo em termos de negócio
Fornece uma forma de saber, dentro dos primeiros 10% de um projeto, se o plano e a estimativa são sólidos.
Princípios
Orientada à funcionalidades (features)
Agregação de valor ao cliente através da priorização das funcionalidades
Cada trecho do produto desenvolvido deve ter um responsável
Dar visibilidade ao andamento do projeto e seus resultados
As