Você está na página 1de 16

Engenharia de Software I

FDD - FEATURE DRIVEN


DEVELOPMENT
TÓPICOS
01 O QUE É O FEATURE DRIVEN DEVELOPMENT (FDD)?

02 A HISTÓRIA DO FDD EM METODOLOGIAS


ÁGEIS

03 OS 5 PROCESSOS DO FEATURE DRIVEN DEVELOPMENT.

COMO EXECUTAR UM PROJETO FDD? CONHEÇA A EQUIPE


04 NECESSÁRIA.

05 FDD EM METODOLOGIAS ÁGEIS ENTENDA A RELAÇÃO.

06 VANTAGENS E DESVANTAGENS DO FDD.


O QUE É O FEATURE DRIVEN
DEVELOPMENT (FDD)?

O processo do FDD é altamente


O FDD é uma abordagem de
estruturado e inclui etapas como criação
desenvolvimento de software ágil que
de um modelo global, elaboração de uma
coloca o foco na entrega iterativa e lista de funcionalidades, planejamento,
incremental. de funcionalidades design, construção e inspeção de cada
específicas em um sistema. funcionalidade.
A HISTÓRIA DO FDD
EM METODOLOGIAS
ÁGEIS
Sua criação

• A metodologia foi conce bida originalmente por


Jeff De Luca.

• Método Coad/Yourdon: identificar a razã o dos


problemas
Trajetória inicial

1997: Primeiro uso da me todologia

Utilizado em um grande projeto em Java, para o


United Oversea s Bank, em Singapura.

1999: Publicaçã o da me todologia no livro Java


Modeling in Color with UML.

2002: Publicaçã o do livro “A Practical Guide To


Feature Driven Developme nt”.
Trajetória inicial

2003: Publicaçã o do livro Agile


Manage ment 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.
Os 5 processos do Feature Driven
Development.
Desenvolvimento de um Lista de funcionalidades Planejamento por funcionalidade
modelo global A equipe de desenvolvimento trabalha em Com a lista de funcionalidades em mãos, a equipe de
Neste processo, a equipe de conjunto para identificar e listar todas as desenvolvimento cria planos de projeto específicos para
desenvolvimento cria um modelo global de funcionalidades necessárias para o sistema. cada funcionalidade. Isso envolve a alocação de
alto nível do sistema. O modelo captura as Cada funcionalidade é descrita em termos recursos, definição de prazos e a criação de tarefas
principais funcionalidades do sistema, seus claros e inclui informações sobre sua detalhadas para a implementação de cada
relacionamentos e os objetos ou classes que prioridade, complexidade e dependências funcionalidade.
serão necessários para implementá-los. com outras funcionalidades.
Modelar por funcionalidade Construção por funcionalidade:
Neste processo, a equipe de desenvolvimento cria designs A equipe de desenvolvimento inicia a implementação das
detalhados para cada funcionalidade. Isso inclui a definição funcionalidades com base nos designs criados. Cada
da arquitetura de software, a criação de diagramas de funcionalidade é desenvolvida e testada separadamente antes
classes e a especificação de como a funcionalidade será de ser integrada ao sistema como um todo.
implementada.
COMO EXECUTAR UM PROJETO
FDD? CONHEÇA A EQUIPE
NECESSÁRIA.
A execução de um projeto FDD (Front-end, Design, Development) requer uma equipe multifuncional
composta por profissionais de diversas áreas para garantir o sucesso do projeto

O FDD se destaca por seu foco na


Gerente de Projeto colaboração entre equipes A execução de um projeto FDD
Analista de Negócios multidisciplinares, como designers, (Front-End, Design,
Designer de UI/UX desenvolvedores e especialistas em UX Development) segue uma
Desenvolvedores Front-end (User Experience), desde o início do abordagem iterativa e
projeto colaborativa
01 02 03 04

DEFINIÇÃO DO ESCOPO MONTAGEM DA EQUIPE PLANEJ AMENTO DO DESENVOLVIMENTO


PROJ ETO
Os desenvolvedores front-end
Definir claramente os Gerente de projeto O gerente de projeto e a e outros membros da equipe
objetivos do projeto, as Arquiteto chefe equipe definem um plano técnica começam a
necessidades dos usuários Equipe de modelagem detalhado do projeto, implementar o projeto com
e o escopo do trabalho Equipe “features” incluindo cronograma, base nos designs e na
tarefas, responsabilidades e arquitetura de dados
recursos necessários definidos
06 07 08 09

TESTE DE QUALIDADE LANÇAMENTO SUPORTE E MANUTENÇÃO AVALIAÇÃO E FEEDBACK

A equipe de teste (QA) Após testes bem-sucedidos Após o lançamento, a Após o lançamento, é
realiza testes rigorosos e aprovação, o software equipe de suporte técnico importante colet ar
para garantir que o está pronto para ser pode fornecer assistência feedback dos usuários e
software atenda aos lançado. aos usuários e lidar com avaliar o desempenho do
requisitos e funcione problemas emergentes software para identificar
corretamente. áreas de melhoria contínua.
FDD EM METODOLOGIAS ÁGEIS:
ENTENDA A RELAÇÃO

FDD em conjunto de outras Características do FDD em


metodologias prática

• Mesmo tendo seus princípios focados • Conjunto de ações executadas de


no processo de desenvolvimento do acordo com comandos pré-
software, ela é bastante flexível; determinados;

• Consegue ser adaptada e utilizada com • Pequenas iterações com curto período
outras metodologias. de tempo, sem afetar no longo período
de desenvolvimento do projeto;

• Processos definidos no início do


projeto.
Verificação de critérios para
Detalhes do FDD
aderir o FDD

• Estrutura das equipes: • Tamanho da equipe


Times grandes, divididos em grandes
equipes. • Tipo de projeto

• Características dos projetos: • Prós e contras do uso da metodologia


Grandes projetos envolvendo muitas
funções para execução.

• Riscos:
O gerente do projeto é responsável por
identificar os riscos durante o
desenvolvimento do software.
VANTAGENS E DESVANTAGENS DO FDD.

VANTAGENS DESVANTAGENS

• Foco em Funcionalidades Importantes • Complexidade Inicial

• Ênfase em Design
• Entregas Iterativas e Incrementais
• Comunicação Eficaz:
• Comunicação Eficaz: • Não é Adequado para Todos os
Projetos
• Design Orientado a Objetos
• Requer Equipe Experiente
• Controle de Qualidade
press start
P R E PA R E N S E PA R A
DINÂMICA

Você também pode gostar