Os DFDs são utilizados em várias etapas do desenvolvimento de sistemas, desde a coleta inicial de requisitos até o design detalhado e até mesmo na documentação do sistema. Eles ajudam os stakeholders, incluindo desenvolvedores, analistas e usuários finais, a obter uma compreensão clara de como os dados são processados e transformados dentro do sistema. Ao visualizar essas interações, os DFDs facilitam uma melhor comunicação, identificam gargalos ou ineficiências potenciais e garantem que o sistema atenda aos seus requisitos funcionais.
Este tutorial tem como objetivo fornecer um guia abrangente para compreender e criar Diagramas de Fluxo de Dados. Vamos aprofundar nos conceitos principais que sustentam os DFDs, explorar as relações entre seus componentes e oferecer dicas e diretrizes práticas para ajudá-lo a criar diagramas eficazes e esclarecedores. Seja você novo nos DFDs ou buscando aprimorar suas habilidades, este tutorial o equipará com o conhecimento e as técnicas necessárias para utilizar efetivamente os DFDs em seus projetos.
Notação dos Elementos do DFD
Diagramas de Fluxo de Dados (DFDs) utilizam várias notações para representar diferentes elementos dentro de um sistema. A imagem que você forneceu ilustra quatro notações diferentes para os elementos do DFD: Yourdon DeMarco, Gane & Sarson, SSADM e Yourdon e Coad. Vamos explorar cada notação e sua representação de entidades externas, processos, armazenamentos de dados e fluxos de dados:
1. Notação de Yourdon DeMarco
- Entidade Externa: Representado como uma caixa retangular com o rótulo “Entidade”. Indica fontes ou destinos de dados fora do controle do sistema.
- Processo: Representado como um círculo rotulado com “Processo”. Representa operações ou transformações realizadas sobre os dados dentro do sistema.
- Armazenamento de Dados: Mostrado como um retângulo de extremidade aberta rotulado com “Armazenamento de Dados”. Representa locais onde os dados são armazenados e podem ser acessados por processos.
- Fluxo de Dados: Ilustrado como setas que indicam a direção do movimento de dados entre entidades, processos e armazenamentos de dados.
2. Notação de Gane & Sarson
- Entidade Externa: Exibido como uma caixa retangular rotulada com “Entidade”, semelhante à notação de Yourdon DeMarco.
- Processo: Representado como um retângulo arredondado com o rótulo “Processo” e um número (por exemplo, 1.0), indicando o nível ou sequência do processo.
- Armazenamento de Dados: Mostrado como um retângulo aberto com uma linha vertical no lado esquerdo, rotulado como “Armazenamento de Dados”. A linha vertical pode incluir um número de referência (por exemplo, D1).
- Fluxo de Dados: Representado por setas que indicam a direção do fluxo de dados entre elementos.
3. Notação SSADM (Metodologia Estruturada de Análise e Projeto de Sistemas)
- Entidade Externa: Ilustrado como um oval rotulado como “Entidade”, diferenciando-se de outras notações.
- Processo: Mostrado como um retângulo arredondado rotulado como “Processo”, semelhante a Gane & Sarson, mas sem numeração adicional.
- Armazenamento de Dados: Representado como um retângulo rotulado como “Armazenamento de Dados”, sem a linha vertical vista em Gane & Sarson.
- Fluxo de Dados: Indicado por setas que mostram a direção do movimento dos dados.
4. Notação Yourdon e Coad
- Entidade Externa: Representado como uma caixa retangular rotulada como “Entidade”, semelhante a Yourdon DeMarco e Gane & Sarson.
- Processo: Mostrado como um círculo rotulado como “Processo”, semelhante a Yourdon DeMarco.
- Armazenamento de Dados: Representado como um retângulo aberto rotulado como “Armazenamento de Dados”, semelhante a Yourdon DeMarco.
- Fluxo de Dados: Ilustrado como setas que indicam a direção do fluxo de dados entre os elementos.
Principais Diferenças
- Forma e Rotulagem: Cada notação utiliza formas distintas e convenções de rotulagem para entidades externas, processos e armazenamentos de dados.
- Representação de Processos: Gane & Sarson e SSADM usam retângulos arredondados para processos, enquanto Yourdon DeMarco e Yourdon e Coad usam círculos.
- Representação de Armazenamento de Dados: Gane & Sarson inclui uma linha vertical com um número de referência, enquanto outras notações usam retângulos simples.
Compreender essas notações permite que analistas e designers escolham aquela que melhor se adapta às necessidades e preferências do seu projeto, garantindo uma comunicação clara e eficaz do design do sistema.

Conceitos Principais
1. Entidade Externa
Entidades externas são fontes ou destinos de dados que interagem com o sistema, mas estão fora de seu controle. Podem ser usuários, outros sistemas ou bancos de dados externos.
- Exemplo: Nas imagens fornecidas, “Cliente” e “Corretor” são entidades externas.
2. Processo
Um processo transforma dados de entrada em dados de saída. Representa uma operação ou um conjunto de operações realizadas sobre os dados.
- Exemplo: O processo “Entrar Pedidos” recebe “pedido de compra” como entrada e produz “dados do pedido” como saída.
3. Armazenamento de Dados
Um armazenamento de dados mantém dados que podem ser acessados e modificados por processos. Representa um local de armazenamento onde os dados são mantidos para uso futuro.
- Exemplo: A loja de dados “Order” armazena detalhes do pedido que podem ser recuperados ou atualizados por processos.
4. Fluxo de Dados
Os fluxos de dados representam o movimento de dados entre entidades externas, processos e armazenamentos de dados. Eles são representados por setas que indicam a direção do movimento dos dados.
- Exemplo: A seta de “Cliente” para “Entrar Pedidos” representa o fluxo do “pedido de compra” do cliente para o processo.
Relações entre os Componentes do DFD
Entidade Externa para Processo
- Interação: As entidades externas fornecem dados de entrada para os processos ou recebem dados de saída deles.
- Exemplo: O “Cliente” fornece um “pedido de compra” ao processo “Entrar Pedidos”.
Processo para Armazenamento de Dados
- Interação: Os processos leem de ou escrevem em armazenamentos de dados.
- Exemplo: O processo “Entrar Pedidos” escreve “dados do pedido” no armazenamento de dados “Order”.
Armazenamento de Dados para Processo
- Interação: Os armazenamentos de dados fornecem dados aos processos quando necessário.
- Exemplo: A loja de dados “Order” fornece detalhes do pedido a processos que os necessitam.
Processo para Entidade Externa
- Interação: Os processos enviam dados de saída para entidades externas.
- Exemplo: O processo “Enter Orders” envia a confirmação do pedido para o “Cliente.”

Decomposição Descendente
Este diagrama representa um diagrama de fluxo de dados (DFD) mais detalhado para um sistema de processamento de pedidos, com foco específico na interação entre um cliente, um corretor e o processo de colocação de pedidos. Abaixo está uma análise dos componentes e suas interações:

-
Entidades Externas:
- Cliente: Esta entidade inicia o processo ao fazer um pedido.
- Corretor: Esta entidade atua como intermediária no processo de pedido, recebendo detalhes da transação do cliente e encaminhando os detalhes do pedido para o sistema.
-
Processos:
- Colocar Pedido (Online): Este processo trata pedidos feitos online pelos clientes. Ele recebe os detalhes do pedido diretamente do cliente.
- Detalhes da Transação: Este processo gerencia os detalhes da transação, recebendo informações do cliente e encaminhando-as ao corretor.
- Colocar Pedido (Telefone): Este processo trata os pedidos feitos por telefone. Recebe os detalhes do pedido do corretor.
-
Armazenamentos de Dados:
- Detalhes do Pedido: Este armazenamento de dados mantém os detalhes dos pedidos feitos por meio do processo online.
- Detalhes da Transação: Este armazenamento de dados mantém os detalhes da transação que são processados e encaminhados ao corretor.
-
Fluxos de Dados:
- Detalhes do Pedido (Cliente para Colocar Pedido Online): Este fluxo de dados representa as informações do pedido fornecidas pelo cliente ao colocar um pedido online.
- Detalhes da Transação (Cliente para Detalhes da Transação): Este fluxo de dados representa as informações da transação fornecidas pelo cliente.
- Detalhes da Transação (Detalhes da Transação para Corretor): Este fluxo de dados representa as informações da transação sendo encaminhadas ao corretor.
- Detalhes do Pedido (Corretor para Colocar Pedido por Telefone): Este fluxo de dados representa as informações do pedido fornecidas pelo corretor ao colocar um pedido por telefone.
-
Números de Processo:
- 0, 1, 2: Esses números provavelmente indicam a sequência ou identificação dos processos dentro do sistema. O processo 0 parece ser um processo central que interage com os processos de pedidos online e por telefone.
Interpretação
- O diagrama ilustra um sistema em que os pedidos podem ser feitos online ou por telefone.
- Os pedidos online são diretamente processados pelo processo “Fazer Pedido (Online)”, que armazena os detalhes do pedido.
- Para pedidos por telefone, o processo envolve um corretor que recebe os detalhes da transação do cliente e encaminha os detalhes do pedido para o processo “Fazer Pedido (Telefone)”.
- O corretor atua como intermediário, facilitando o processo de transação e de colocação de pedidos para pedidos por telefone.
- O foco está em capturar e gerenciar os detalhes do pedido e da transação, garantindo que sejam corretamente processados e armazenados, independentemente do método de pedido (online ou por telefone).
Este DFD oferece uma visão mais detalhada do sistema de processamento de pedidos, destacando os papéis de diferentes entidades e processos no manuseio de pedidos e transações.
Dicas e Truques
- Comece Simples: Comece com um DFD de nível de contexto para obter uma visão geral do sistema e, gradualmente, avance para níveis mais detalhados.
- Consistência: Use convenções de nomeação consistentes para processos, armazenamentos de dados e fluxos de dados para evitar confusão.
- Clareza: Certifique-se de que os fluxos de dados estejam claramente rotulados e que as setas estejam direcionadas corretamente para mostrar o fluxo de dados.
- Modularidade: Divida processos complexos em sub-processos menores e gerenciáveis para melhor clareza e compreensão.
- Validação: Valide regularmente o DFD com os interessados para garantir que ele represente com precisão o fluxo de dados do sistema.
Diretrizes
- Identifique os Limites: Defina claramente os limites do sistema para distinguir entre processos internos e entidades externas.
- Concentre-se nos Dados: Enfatize o fluxo de dados em vez do fluxo de controle ou da sequência de operações.
- Nível de Detalhe: Comece com um DFD de alto nível (Nível 0) e refine-o progressivamente em níveis mais detalhados (Nível 1, Nível 2, etc.).
- Use Símbolos Padrão: Adote símbolos padrão para processos, armazenamentos de dados, entidades externas e fluxos de dados para manter clareza e consistência.
- Documente Suposições: Documente quaisquer suposições ou restrições relacionadas ao DFD para fornecer contexto e evitar mal-entendidos.
Conclusão
Diagramas de Fluxo de Dados são mais do que apenas ferramentas visuais; são ferramentas essenciais para qualquer pessoa envolvida na análise e no design de sistemas. Ao fornecer uma forma clara e estruturada de representar o fluxo de dados, os DFDs ajudam a fechar a lacuna entre os requisitos abstratos do sistema e os detalhes concretos de implementação. Eles permitem que os interessados visualizem como os dados são tratados dentro de um sistema, identifiquem áreas de melhoria e garantam que o design do sistema esteja alinhado com sua funcionalidade pretendida.
Ao longo deste tutorial, exploramos os conceitos fundamentais dos DFDs, incluindo entidades externas, processos, armazenamentos de dados e fluxos de dados. Analisamos como esses componentes interagem e fornecemos dicas práticas e diretrizes para criar DFDs eficazes. Ao dominar esses conceitos e técnicas, você poderá criar DFDs que não apenas representam com precisão o fluxo de dados do seu sistema, mas também servem como ferramentas de comunicação valiosas ao longo do ciclo de desenvolvimento.
À medida que continuar a trabalhar com DFDs, lembre-se de que clareza, consistência e atenção aos detalhes são fundamentais. Valide regularmente seus diagramas com os interessados e não hesite em iterar e aprimorá-los conforme seu entendimento do sistema evolui. Com prática e uma base sólida nos princípios dos DFDs, você estará bem preparado para enfrentar os desafios mais complexos de análise de sistemas. Abrace o poder dos Diagramas de Fluxo de Dados e desbloqueie novos níveis de insight e eficiência em seus projetos de design de sistemas.










