Please enable JavaScript.
Coggle requires JavaScript to display documents.
FDD - Coggle Diagram
FDD
-
É uma metodologia ágil de desenvolvimento de software que se concentra na entrega de funcionalidades específicas (features) de maneira rápida e eficiente.
FASES DO FDD
Desenvolvimento de um Modelo Global (Develop an Overall Model): Nesta fase inicial, a equipe trabalha em conjunto para desenvolver um modelo global do sistema
Lista de Funcionalidades (Build a Feature List): Com base no modelo global, a equipe cria uma lista detalhada de funcionalidades específicas que o sistema deve ter.
Planejamento por Funcionalidade (Plan by Feature): As funcionalidades são atribuídas a equipes de desenvolvimento com base na especialização e capacidade dos membros da equipe.
Projeto por Funcionalidade (Design by Feature): Cada equipe de desenvolvimento realiza o design detalhado da funcionalidade atribuída a ela.
Construção por Funcionalidade (Build by Feature): A equipe implementa a funcionalidade de acordo com o design elaborado. O desenvolvimento é iterativo e incremental, com cada funcionalidade sendo construída e testada separadamente.
Lista de Controle (Build a Feature Plan): Para cada funcionalidade, uma lista de controle é criada para monitorar o progresso. Isso inclui marcos, tarefas pendentes, problemas identificados e outras atividades relacionadas à funcionalidade.
Projeto de Domínio (Build a Domain Object Model): Paralelamente ao desenvolvimento das funcionalidades, o modelo de objetos do domínio é aprimorado conforme necessário. Isso envolve refinar e expandir o modelo global para incorporar detalhes adicionais à medida que o projeto progride.
PROCESSOS DO FDD
Desenvolvimento do Modelo Global: A equipe colabora para criar uma visão geral do sistema, identificando funcionalidades principais, objetos-chave e relacionamentos.
Construção de Lista de Funcionalidades: As funcionalidades são identificadas e documentadas de acordo com o modelo global.
Planejamento por Funcionalidade: As funcionalidades são atribuídas a equipes de desenvolvimento com base na especialização e estimativas de tempo.
Projeto por Funcionalidade: Cada equipe desenvolve o design detalhado da funcionalidade atribuída a ela, incluindo estrutura de dados, lógica de negócios e interface do usuário.
Construção por Funcionalidade: A funcionalidade é implementada e testada pela equipe de desenvolvimento.
Lista de Controle: Para cada funcionalidade, uma lista de controle é mantida para monitorar o progresso e identificar quaisquer problemas.
-
Padrao EVTX
O padrão ETVX é uma notação usada em engenharia de software para descrever os componentes de um sistema e seus relacionamentos.
Entradas (Entradas, em inglês E - Entries): As entradas são os dados ou informações que são fornecidos ao sistema
Tabelas (Tables, em inglês T - Tables): As tabelas representam a lógica de processamento do sistema. Elas descrevem como as entradas são manipuladas para produzir saídas.
Saídas (Outputs, em inglês V - Vectors): As saídas são os resultados do processamento do sistema
Condições (Conditions, em inglês X - Exit Conditions): As condições representam os critérios que determinam quando o sistema deve encerrar ou modificar seu comportamento.
No FDD, os membros da equipe têm papéis e responsabilidades bem definidos para garantir um desenvolvimento suave e eficaz.
Gerente de Projeto: O Gerente de Projeto no FDD é responsável por coordenar o trabalho de diferentes equipes, garantir o progresso do projeto, resolver problemas e tomar decisões importantes para o projeto.
Arquiteto Chefe: O Arquiteto Chefe é responsável por criar e manter a visão arquitetural do sistema. Eles garantem que as diferentes partes do sistema funcionem bem juntas e que a arquitetura seja adequada para atender aos requisitos do projeto.
Líder de Equipe: Cada equipe no FDD tem um Líder de Equipe que é responsável por liderar a equipe no desenvolvimento de uma ou mais funcionalidades específicas. Eles supervisionam o progresso, resolvem problemas técnicos e asseguram a qualidade do código produzido pela equipe.
Gerente de Domínio: O Gerente de Domínio é um especialista no domínio do problema (ou seja, o contexto do negócio para o qual o software está sendo desenvolvido). Eles auxiliam na definição de requisitos, garantindo que as funcionalidades atendam às necessidades do cliente e tenham valor para o negócio.
Equipe de Desenvolvedores: Os desenvolvedores são membros da equipe responsáveis por escrever código, realizar testes e implementar funcionalidades específicas do sistema.
Cliente (Representante do Cliente): O Cliente, ou um representante do cliente, é uma parte fundamental do FDD. Eles fornecem requisitos, feedback e validam as funcionalidades à medida que são desenvolvidas. O envolvimento contínuo do cliente ajuda a garantir que o produto final atenda às expectativas do cliente.