SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Técnicas em Projetos de Sistemas Professor: Marinaldo
FDD FEATURE DRIVEN DEVELOPMENT ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
  HISTÓRICO ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
CONCEITOS ,[object Object],[object Object],[object Object],[object Object]
CARACTERÍSTICAS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
PRÁTICAS DO FDD ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
CONCEITO DE FEATURE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ESTRUTURA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
ESTRUTURA
PRINCIPAIS PAPÉIS
Os 5 processos do FDD 1.Desenvolver  um Modelo  geral 2. Construir  uma lista de características 3. Planejar  através de característica 4. Projetar  através de característica 5. Construir  através de característica Modelo de Objeto (mais formas do que conteúdo) Uma lista de características categorizada Um plano de desenvolvimento Um pacote de projeto (seqüências) Uma função do cliente completada (mais conteúdo do que forma)
Descrição dos Processos de FDD ,[object Object],[object Object]
FDD Processo #1:  Desenvolver um modelo geral ,[object Object],[object Object],[object Object]
FDD Processo #1- Atividades Formar a Equipe de Modelagem Estudo dirigido sobre o Domínio Estudar Documentos Desenvolver pequenos Modelos de Grupo Desenvolver um Modelo da Equipe Refinar o Modelo Geral Escrever Anotações do Modelo
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],FDD Processo #1: Entradas e Saídas
FDD Processo #2: Construir lista de características ,[object Object],[object Object],[object Object]
FDD Processo #2 - Atividades Formar a Equipe da Lista de Características Construir a lista de características
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],FDD Processo #2: Entradas e Saídas
FDD Processo #3: Planejar através de características ,[object Object],[object Object],[object Object]
FDD Processo #3 - Atividades Formar a Equipe de Planejamento Determinar a Seqüência  de Desenvolvimento Atribuir Conjuntos de Características  para Programadores Chefes Atribuir Classes para Desenvolvedores
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],FDD Processo #3:  Entradas e Saídas
FDD Processo #4: Projetar através de características ,[object Object],[object Object],[object Object],[object Object]
FDD Processo #4 - Atividades Formar a Equipe de Características Estudo do Domínio Estudar Documentos de Referências Desenvolver Diagramas de Seqüência Refinar o Modelo Descrever os prefácios de  classes e métodos
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],FDD Processo #4: Entradas e Saídas
FDD Processo #5: Construir através de características ,[object Object],[object Object],[object Object]
FDD Processo #5- Atividades Codificar Testar Unidades Inspecionar Código Promover à versão atual (Build) Ponto de integração para a funcionalidade inteira
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],FDD Processo #5: Entradas e Saídas
[object Object],[object Object],Divulgando Resultados
Os seis marcos do FDD Projetar pelas características Construir pelas características Análise do domínio Projeto Inspeção do projeto Código Inspeção do código Geração de build 1% 40% 3% 45% 10% 1%
Relatando resultados Dez 2001 Porcentagem completa: Status Completo: Completo Mês de conclusão Exemplo: Conjunto de características: Fazendo avaliação de produtos – Trabalho em progresso CP-1 é o programador chefe inicial (14) esse conjunto de características possui 14 características Conjunto de características está 75% completado A conclusão é para dezembro de 2001 Status Geral: MY Barra de progresso Trabalhos em progresso Atenção (ie, atrasado) Completo Fazendo avaliação de produtos (14) 75% Não iniciado CP-1
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Conclusão

Weitere ähnliche Inhalte

Was ist angesagt?

Fdd em uma casca de banana
Fdd em uma casca de bananaFdd em uma casca de banana
Fdd em uma casca de bananaejedelmal
 
Segurança física e lógica e análise de vulnerabilidade 1
Segurança física e lógica e análise de vulnerabilidade 1Segurança física e lógica e análise de vulnerabilidade 1
Segurança física e lógica e análise de vulnerabilidade 1Diego BBahia
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme ProgrammingRodrigo Branas
 
FDD (Feature Driven Development)
FDD (Feature Driven Development)FDD (Feature Driven Development)
FDD (Feature Driven Development)urumisama
 
Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentaçãoerysonsi
 
Aula Modelos de Processos Tradicionais para Desenvolvimento de Software
Aula Modelos de Processos Tradicionais para Desenvolvimento de Software Aula Modelos de Processos Tradicionais para Desenvolvimento de Software
Aula Modelos de Processos Tradicionais para Desenvolvimento de Software Cloves da Rocha
 
Comparativo entre Processos Ágeis
Comparativo entre Processos ÁgeisComparativo entre Processos Ágeis
Comparativo entre Processos ÁgeisDaniel Ferreira
 
Palestra sobre metodologia Scrum
Palestra sobre metodologia ScrumPalestra sobre metodologia Scrum
Palestra sobre metodologia ScrumPersonal
 
Arquitetura Hexagonal: uma introdução
Arquitetura Hexagonal: uma introduçãoArquitetura Hexagonal: uma introdução
Arquitetura Hexagonal: uma introduçãoMorvana Bonin
 
Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Luís Fernando Richter
 
Metodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresMetodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresAragon Vieira
 
Processo Unificado(RUP)
Processo Unificado(RUP)Processo Unificado(RUP)
Processo Unificado(RUP)elliando dias
 

Was ist angesagt? (20)

Fdd em uma casca de banana
Fdd em uma casca de bananaFdd em uma casca de banana
Fdd em uma casca de banana
 
Segurança física e lógica e análise de vulnerabilidade 1
Segurança física e lógica e análise de vulnerabilidade 1Segurança física e lógica e análise de vulnerabilidade 1
Segurança física e lógica e análise de vulnerabilidade 1
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
FDD (Feature Driven Development)
FDD (Feature Driven Development)FDD (Feature Driven Development)
FDD (Feature Driven Development)
 
Modelo cascata apresentação
Modelo cascata apresentaçãoModelo cascata apresentação
Modelo cascata apresentação
 
Aula Modelos de Processos Tradicionais para Desenvolvimento de Software
Aula Modelos de Processos Tradicionais para Desenvolvimento de Software Aula Modelos de Processos Tradicionais para Desenvolvimento de Software
Aula Modelos de Processos Tradicionais para Desenvolvimento de Software
 
Comparativo entre Processos Ágeis
Comparativo entre Processos ÁgeisComparativo entre Processos Ágeis
Comparativo entre Processos Ágeis
 
Palestra sobre metodologia Scrum
Palestra sobre metodologia ScrumPalestra sobre metodologia Scrum
Palestra sobre metodologia Scrum
 
Arquitetura Hexagonal: uma introdução
Arquitetura Hexagonal: uma introduçãoArquitetura Hexagonal: uma introdução
Arquitetura Hexagonal: uma introdução
 
Teste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e AplicandoTeste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e Aplicando
 
Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006
 
Fundamentos de Testes de Software
Fundamentos de Testes de SoftwareFundamentos de Testes de Software
Fundamentos de Testes de Software
 
Metodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresMetodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de Softwares
 
Introdução ao RUP
Introdução ao RUPIntrodução ao RUP
Introdução ao RUP
 
Scrum
ScrumScrum
Scrum
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
 
Processo Unificado(RUP)
Processo Unificado(RUP)Processo Unificado(RUP)
Processo Unificado(RUP)
 
Scrum Overview
Scrum OverviewScrum Overview
Scrum Overview
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
Aula 4- Engenharia de Software
Aula 4- Engenharia de SoftwareAula 4- Engenharia de Software
Aula 4- Engenharia de Software
 

Andere mochten auch

Feature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por FuncionalidadesFeature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por FuncionalidadesHiury Araújo
 
TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)Augusto Pascutti
 
Aula FDD CESAR Recife GAP
Aula FDD CESAR Recife GAPAula FDD CESAR Recife GAP
Aula FDD CESAR Recife GAPJorge Bublitz
 
Desenvolvimento de software LEAN
Desenvolvimento de software LEAN Desenvolvimento de software LEAN
Desenvolvimento de software LEAN Venícios Gustavo
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4André Vidal
 
Métodos Ágeis - Manifesto Ágil, Scrum e XP
Métodos Ágeis - Manifesto Ágil, Scrum e XPMétodos Ágeis - Manifesto Ágil, Scrum e XP
Métodos Ágeis - Manifesto Ágil, Scrum e XPJoaquim Lopes Júnior
 
Introdução à Engenharia de Requisitos e RUP
Introdução à Engenharia de Requisitos e RUPIntrodução à Engenharia de Requisitos e RUP
Introdução à Engenharia de Requisitos e RUPVagner Santana
 
Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...
Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...
Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...Edivandro Conforto
 
Metodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de ProjetosMetodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de ProjetosLeandro Faria
 
Agile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs LeanAgile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs LeanAbdul Wahid
 
Lean product development implementation
Lean product development implementationLean product development implementation
Lean product development implementationITZHAK123
 

Andere mochten auch (16)

Feature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por FuncionalidadesFeature Driven Development – Desenvolvimento Guiado por Funcionalidades
Feature Driven Development – Desenvolvimento Guiado por Funcionalidades
 
TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)TDD - Test Driven Development (em PHP)
TDD - Test Driven Development (em PHP)
 
Aula FDD CESAR Recife GAP
Aula FDD CESAR Recife GAPAula FDD CESAR Recife GAP
Aula FDD CESAR Recife GAP
 
TDD - Test Driven Development com JAVA
TDD - Test Driven Development com JAVATDD - Test Driven Development com JAVA
TDD - Test Driven Development com JAVA
 
Que tal fdd
Que tal fddQue tal fdd
Que tal fdd
 
Desenvolvimento de software LEAN
Desenvolvimento de software LEAN Desenvolvimento de software LEAN
Desenvolvimento de software LEAN
 
GERENCIAMENTO ÁGIL DE PROJETOS - Aplicação em Produtos Inovadores
GERENCIAMENTO ÁGIL DE PROJETOS - Aplicação em Produtos InovadoresGERENCIAMENTO ÁGIL DE PROJETOS - Aplicação em Produtos Inovadores
GERENCIAMENTO ÁGIL DE PROJETOS - Aplicação em Produtos Inovadores
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
 
Métodos Ágeis - Manifesto Ágil, Scrum e XP
Métodos Ágeis - Manifesto Ágil, Scrum e XPMétodos Ágeis - Manifesto Ágil, Scrum e XP
Métodos Ágeis - Manifesto Ágil, Scrum e XP
 
Introdução à Engenharia de Requisitos e RUP
Introdução à Engenharia de Requisitos e RUPIntrodução à Engenharia de Requisitos e RUP
Introdução à Engenharia de Requisitos e RUP
 
Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...
Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...
Inovação Disruptiva na Gestão de Projetos de Inovação - rumo à agilidade e ba...
 
Metodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de ProjetosMetodologias Ágeis de Gestão de Projetos
Metodologias Ágeis de Gestão de Projetos
 
Introdução ao HTML e CSS
Introdução ao HTML e CSSIntrodução ao HTML e CSS
Introdução ao HTML e CSS
 
Agile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs LeanAgile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs Lean
 
Lean product development implementation
Lean product development implementationLean product development implementation
Lean product development implementation
 
DSDM
DSDMDSDM
DSDM
 

Ähnlich wie Apresentação fdd

FDD para equipes não tão ágeis
FDD para equipes não tão ágeisFDD para equipes não tão ágeis
FDD para equipes não tão ágeisguilhermepinter
 
Este trabalho trata
Este trabalho trataEste trabalho trata
Este trabalho trataRoni Reis
 
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCPFrank Coelho
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcpFrank Coelho
 
Operações - Base de Conhecimento - Parte 01
Operações - Base de Conhecimento - Parte 01Operações - Base de Conhecimento - Parte 01
Operações - Base de Conhecimento - Parte 01Alan Carlos
 
C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010
C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010
C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010Facuuldade Norte Sul
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Rennan Martini
 
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixModelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixCris Fidelix
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = ProdutividadeAdriano Bertucci
 
Visao geraldorup 20slides
Visao geraldorup 20slidesVisao geraldorup 20slides
Visao geraldorup 20slideshoraciosila
 
GP_04_Gerenciamento de Escopo (1).pdf
GP_04_Gerenciamento de Escopo (1).pdfGP_04_Gerenciamento de Escopo (1).pdf
GP_04_Gerenciamento de Escopo (1).pdfMarciodias402888
 
Arquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócioArquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócioRalph Rassweiler
 
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...Allan Ferreira
 

Ähnlich wie Apresentação fdd (20)

Fdd
FddFdd
Fdd
 
Metodologias Ageis
Metodologias AgeisMetodologias Ageis
Metodologias Ageis
 
FDD para equipes não tão ágeis
FDD para equipes não tão ágeisFDD para equipes não tão ágeis
FDD para equipes não tão ágeis
 
38484931 questionario-es
38484931 questionario-es38484931 questionario-es
38484931 questionario-es
 
Rational Unified Process (RUP)
Rational Unified Process (RUP)Rational Unified Process (RUP)
Rational Unified Process (RUP)
 
Este trabalho trata
Este trabalho trataEste trabalho trata
Este trabalho trata
 
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcp
 
Operações - Base de Conhecimento - Parte 01
Operações - Base de Conhecimento - Parte 01Operações - Base de Conhecimento - Parte 01
Operações - Base de Conhecimento - Parte 01
 
C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010
C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010
C:\Documents And Settings\Juliana\Desktop\Palestra 19 03 2010
 
Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)
 
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixModelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane Fidelix
 
Apresentação RUP
Apresentação RUPApresentação RUP
Apresentação RUP
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
 
Visao geraldorup 20slides
Visao geraldorup 20slidesVisao geraldorup 20slides
Visao geraldorup 20slides
 
GP_04_Gerenciamento de Escopo (1).pdf
GP_04_Gerenciamento de Escopo (1).pdfGP_04_Gerenciamento de Escopo (1).pdf
GP_04_Gerenciamento de Escopo (1).pdf
 
Aula Gestão de Projetos
Aula Gestão de ProjetosAula Gestão de Projetos
Aula Gestão de Projetos
 
Arquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócioArquitetura web para sistemas de negócio
Arquitetura web para sistemas de negócio
 
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
TDC SP 2018 - Utilizando BDD para análise de negócio e desenvolvimento de pro...
 
Extreme Programming
Extreme ProgrammingExtreme Programming
Extreme Programming
 

Apresentação fdd

  • 1. Técnicas em Projetos de Sistemas Professor: Marinaldo
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 11. Os 5 processos do FDD 1.Desenvolver um Modelo geral 2. Construir uma lista de características 3. Planejar através de característica 4. Projetar através de característica 5. Construir através de característica Modelo de Objeto (mais formas do que conteúdo) Uma lista de características categorizada Um plano de desenvolvimento Um pacote de projeto (seqüências) Uma função do cliente completada (mais conteúdo do que forma)
  • 12.
  • 13.
  • 14. FDD Processo #1- Atividades Formar a Equipe de Modelagem Estudo dirigido sobre o Domínio Estudar Documentos Desenvolver pequenos Modelos de Grupo Desenvolver um Modelo da Equipe Refinar o Modelo Geral Escrever Anotações do Modelo
  • 15.
  • 16.
  • 17. FDD Processo #2 - Atividades Formar a Equipe da Lista de Características Construir a lista de características
  • 18.
  • 19.
  • 20. FDD Processo #3 - Atividades Formar a Equipe de Planejamento Determinar a Seqüência de Desenvolvimento Atribuir Conjuntos de Características para Programadores Chefes Atribuir Classes para Desenvolvedores
  • 21.
  • 22.
  • 23. FDD Processo #4 - Atividades Formar a Equipe de Características Estudo do Domínio Estudar Documentos de Referências Desenvolver Diagramas de Seqüência Refinar o Modelo Descrever os prefácios de classes e métodos
  • 24.
  • 25.
  • 26. FDD Processo #5- Atividades Codificar Testar Unidades Inspecionar Código Promover à versão atual (Build) Ponto de integração para a funcionalidade inteira
  • 27.
  • 28.
  • 29. Os seis marcos do FDD Projetar pelas características Construir pelas características Análise do domínio Projeto Inspeção do projeto Código Inspeção do código Geração de build 1% 40% 3% 45% 10% 1%
  • 30. Relatando resultados Dez 2001 Porcentagem completa: Status Completo: Completo Mês de conclusão Exemplo: Conjunto de características: Fazendo avaliação de produtos – Trabalho em progresso CP-1 é o programador chefe inicial (14) esse conjunto de características possui 14 características Conjunto de características está 75% completado A conclusão é para dezembro de 2001 Status Geral: MY Barra de progresso Trabalhos em progresso Atenção (ie, atrasado) Completo Fazendo avaliação de produtos (14) 75% Não iniciado CP-1
  • 31.

Hinweis der Redaktion

  1. FDD includes 5 processes. The first 3 occur once per project the last 2 are repeated for each feature. A FDD inicia com a criação de um modelo de objetos do domínio do problema, em colaboração com os especialistas no domínio. Usando a informação vinda da atividade de modelagem e de quaisquer outras atividades de coleta de requisitos que já possam ter ocorrido, os desenvolvedores prosseguem para a criação da lista de funcionalidades. A seguir, um plano primordial é elaborado e atribui-se responsabilidades. Então, equipes pequenas e formadas dinamicamente desenvolvem as funcionalidades, realizando repetidamente iterações de projeto ( design ) e construção, que duram não mais do que duas semanas e, geralmente, são muito mais curtas.
  2. A FDD é composta de cinco processos. Cada um deles é descrito em não mais do que duas páginas de papel tamanho carta, frente-e-verso. Cada descrição de processo possui uma seção de entrada, com uma visão geral do processo e uma ou mais condições que precisam ser satisfeitas antes que o processo seja iniciado. A seguir, cada descrição possui uma lista de tarefas a serem realizadas, juntamente com o papel responsável no projeto para a realização da tarefa, e uma indicação se a tarefa é opcional ou obrigatória (exigida).   Uma seção de verificação resume como as saídas do processo são checadas quanto à qualidade satisfatória. Finalmente, uma seção de saída lista os produtos do processo. Esta estrutura de Entrada, Tarefas, Verificação e Saída (ETVS) foi sugerida para Jeff De Luca por M. A. Rajashima, o líder de Garantia da Qualidade em Singapura, para a parte inicial do projeto.
  3. Realiza-se um estudo dirigido sobre o escopo do sistema e seu contexto. Então, são realizados estudos mais detalhados sobre o domínio do negócio para cada área a ser modelada. Após cada estudo dirigido sobre o domínio, pequenos grupos são formados por membros do domínio do negócio sendo estudado e por desenvolvedores, que comporão seus próprios modelos que satisfaçam o domínio em questão. Os pequenos grupos apresentam seus modelos para serem revisados por parceiros e para discussão. Um dos modelos propostos, ou uma combinação dos modelos, é selecionada por consenso, tornando-se, assim, o modelo para aquela área do domínio do negócio. Realiza-se, então, uma combinação do modelo da área do domínio dentro de um modelo abrangente, ajustando a forma do modelo se for necessário.
  4. A equipe de modelagem é composta de membros permanentes das áreas do domínio do negócio e de desenvolvimento, especificamente os especialistas no domínio e os programadores-chefes. É feito um rodízio com os outros integrantes do projeto através das sessões de modelagem, de modo que todo mundo tenha a chance de participar e ver o processo em ação.
  5. Uma equipe, geralmente composta apenas por programadores-chefes do processo nº 1, é formada para decompor funcionalmente o domínio em áreas , atividades de negócio dentro delas e passos dentro de cada atividade de negócio, formando assim a lista categorizada de funcionalidades. A categorização de mais alto nível para a lista de funcionalidades vem da divisão do domínio feita pelos especialistas do domínio no processo nº 1.
  6. A equipe é composta por programadores-chefes da equipe de modelagem do processo nº 1.
  7. O gerente de projeto, o gerente de desenvolvimento e os programadores-chefes planejam a ordem na qual as funcionalidades serão implementadas, baseada nas dependências entre elas, na carga de trabalho da equipe de desenvolvimento e também na complexidade das funcionalidades a serem implementadas. As principais atividades neste processo não são uma seqüência estrita. Como muitas atividades de planejamento, elas são consideradas em conjunto, com refinamentos feitos a partir de uma ou mais atividades e então considerando os outros novamente.   Um cenário típico é levar em conta a seqüência de desenvolvimento, depois levar em conta a atribuição das atividades de negócio aos programadores-chefes e, ao fazê-lo, considerar quais das classes principais (apenas) são atribuídas a quais desenvolvedores (lembrar que o programador-chefe também é um desenvolvedor).   Quando esse equilíbrio for alcançado, e a seqüência de desenvolvimento e a atribuição das atividades de negócio aos programadores-chefes estiver essencialmente completada, então a posse das classes estará completada (além das classes principais que já foram consideradas para posse).
  8. A equipe de planejamento é composta pelo gerente de desenvolvimento e pelos programadores-chefes.
  9. É uma atividade para cada funcionalidade, para produzir o pacote de projeto (design) para a funcionalidade.   Certo número de funcionalidades são agendadas para desenvolvimento ao atribuí-las a um programador-chefe. Ele seleciona as funcionalidades para desenvolvimento a partir de sua “caixa de entrada” de funcionalidades atribuídas. Ele pode escolher diversas funcionalidades que utilizem as mesmas classes (e portanto, desenvolvedores). Operacionalmente, com freqüência acontece o caso de “conjuntos” de funcionalidades serem agendados para desenvolvimento de uma vez pelo programador-chefe. Tal conjunto é chamado de Pacote de Trabalho do programador-chefe.   O programador-chefe, então, forma uma equipe de funcionalidades, identificando os proprietários das classes (desenvolvedores) que provavelmente serão envolvidos no desenvolvimento das funcionalidades que ele selecionou. Esta equipe produz o(s) diagrama(s) de seqüência para a(s) funcionalidade(s) atribuída(s). O programador-chefe, então, refina o modelo de objetos, baseado no conteúdo do(s) diagrama(s) de seqüência. Os desenvolvedores escrevem os prefácios das classes e métodos. Realiza-se uma inspeção no projeto (design).
  10. O programador-chefe identifica as classes que provavelmente serão envolvidas no projeto deste conjunto de funcionalidades e, consequentemente, atualiza o banco de dados de funcionalidades. Da lista de proprietários de classes, o programador-chefe identifica os desenvolvedores necessários para formar a equipe de funcionalidades.
  11. É uma atividade para cada funcionalidade, para produzir uma função com valor para o cliente (funcionalidade).   Começando com o pacote de projeto (design), os proprietários de classes implementam os itens necessários para que suas classes suportem o projeto para esta funcionalidade. O código desenvolvido passa pelo teste de unidade e pela inspeção – a ordem aqui é determinada pelo programador-chefe. Após passar pela inspeção, o código é promovido à versão atual (build).
  12. Para patrocinadores, alta gerência e clientes