Você está na página 1de 51

DFD – Diagrama de Fluxo de Dados

O Diagrama de Fluxo de Dados é uma ferramenta de modelagem que nos


permite imaginar um sistema como uma rede de processos funcionais,
interligados por "dutos" e "tanques de armazenamento" de dados. Alguns
sinônimos para o DFD (Diagrama de Fluxo de Dados) podem ser os
seguintes: Diagrama de Bolhas, Modelo de Processo, Diagrama de Fluxo de
Trabalho, Modelo Funcional,...

O DFD é uma ferramenta muito utilizada na modelagem de sistemas.


DFD – Diagrama de Fluxo de Dados
Modelar um sistema é imaginá-lo como uma rede de processos funcionais,
interligados por “dutos” e “tanques de armazenamento de dados”. Pode ser
utilizado para modelar processos informatizados e processos não
informatizados.
Um DFD deve representar:
• Funções do Sistema (procedimentos/serviços)
• Interações entre funções do sistema
• Transformações que o sistema deve realizar
• As fontes de informação
• O destino dos resultados
• Dados mantidos pelo sistema (dados em repouso)
DFD – Diagrama de Fluxo de Dados
Breve Histórico
A Análise Estruturada moderna (ou essencial) surgiu no início da década de
80 e se propunha a resolver problemas de modelagem e análise da década
de 70.
 1975:Ross e Shoman publicam o primeiro trabalho com SADT (Structured

Analisys Development Techniques). A SADT foi um grande avanço em


termos de definir claramente, por meio gráfico, os objetivos de um sistema.
O diagrama de atividade é precursor do DFD e uma evolução em relação
ao texto narrativo da época.
 1977: Gane e Sarson, melhoram o SADT oferecendo uma estratégia

rudimentar para modelar um sistema baseado em dados, a partir das


especificações dos requisitos.É proposto o DFD com Dicionário de Dados
e a descrição do processo.
 1978: de Marco e Weinberg defendem a mesma estrutura de modelagem

de Gane e Sarson, com algumas mudanças na terminologia.


DFD – Diagrama de Fluxo de Dados
Antes de vermos como um DFD é produzido, é importante saber como um
DFD pode ser usado para nos comunicarmos com os usuários do sistema.

Imagine o trabalho em um ambiente de uma empresa, onde bens são


comprados e armazenados, havendo lá estoquistas e caixas
• Estoquistas fazem pedidos e recebem bens
• Caixas vendem bens
• Clientes compram bens
• Gerentes gerenciam as necessidades de estoque
• Foi feita a análise e apresentou-se o seguinte diagrama…
DFD – Diagrama de Fluxo de Dados
Gerente
Pedido de Sistemas Armazenagem de
compra
dados
1. Estoquista Listagem de
Listagem de estoque
estoque Sistema de M2 Arq. de estoque
pedidos
Pedido de
compra
Fornecedor Entrega
2. Estoquista
Sistema de Pedidos Arq. pedidos
M1
recebimento de compra
Confere s
Gerente pedido Entrega de
bens
3. Caixa
Compra Venda de
Cliente bens
Sistema de bens
M2 Arq. de estoque
vendas
Entidades externas
DFD – Diagrama de Fluxo de Dados
O DFD é a parte gráfica da modelagem por fluxo de dados:

• Se utilizado, o DFD é desenhado numa fase bem inicial da análise


quando é de grande auxílio para definir o sistema pedido.
• O DFD é o local principal onde os analistas “gravam” o entendimento
de como o sistema funciona.

O bom entendimento das movimentações de dados conduz ao entendimento


lógico do sistema e um novo DFD pode ser produzido. A interação entre
analistas e usuários, para a produção do DFD, deve ser constante até haver
um entendimento comum.

O DFD contém a essência das funcionalidades do sistema, e é livre de


restrições físicas ou técnicas que possam existir no sistema de fato.
De posse dessa visão lógica do sistema, os analistas podem propor opções
para o sistema. O usuário pode escolher uma entre várias opções e um DFD
final é desenhado para o sistema com os itens aos quais foi dada a opção
DFD – Diagrama de Fluxo de Dados
O DFD é um diagrama que consiste primariamente de 4 símbolos:

• Processos: É uma atividade ou transação realizada por uma razão


específica associada ao negócio.
• Fluxo de dados: é uma porção de um dado (ex: código cliente)
ou uma coleção de dados de várias partes de informação (ex: recibo de
compras)
• Depósito de dados: é uma coleção de dados que é
armazenada em determinada forma (a qual será determinada mais tarde
quando da criação do modelo físico)
• Entidades externas: são pessoas, organizações ou outros
sistemas externos ao sistema atual e que interagem com ele (ex: cliente,
gerente, sistema de conta corrente, entidade governamental, etc.)
DFD – Diagrama de Fluxo de Dados
Processos

 Transformador de dados. Reside dentro das fronteiras do sistema.


 Pode ser conhecido como bolha, função ou transformação
 Representam transformações de fluxo(s) de dados de entrada em
fluxo(s) de dados de saída
 Geralmente provoca mudanças de estrutura, conteúdo ou estado
 Representação gráfica:

Calcular Calcular
Comissão Comissão

De Marco & Yourdon Gane & Sarson


DFD – Diagrama de Fluxo de Dados
Processos

 O nome do processo deve descrever o que ele faz


 Geralmente é composto por uma frase constituída de um verbo ativo
(Calcular, Receber, Criar) e um objeto simples (Comissão, Pedido,
Figura)
• Evitar termos vagos: Manipular Dados, Fazer Serviço, etc)
DFD – Diagrama de Fluxo de Dados
Fluxo de Dados

 Representam caminhos por onde passam os dados


 Os fluxos representam dados em movimento
 Normalmente representam informações, mas podem representar
materiais físicos
 São representados através de setas que indicam o destino dos dados
 O nome representa o pacote de informações que se movem pelo fluxo
 Os nomes devem constar no Dicionário de Dados
DFD – Diagrama de Fluxo de Dados
Fluxo de Dados – Representação Gráfica

Açucar
Ovos
Bolo
Leite Preparar
Farinha um bolo
Fermento
DFD – Diagrama de Fluxo de Dados
Fluxo de Dados

Os fluxos podem divergir ou convergir quando cópias são enviadas para


diferentes partes do sistema, ou que um pacote de dados está sendo dividido
a vários pacotes mais simples

ENDEREÇO-
DE-CLIENTE
CÓDIGO-POSTAL
Validar
NÚMERO-DE-TELEFONE Código
Postal

ENDEREÇO Validar
Número de
Telefone
Validar
Endereço
DFD – Diagrama de Fluxo de Dados
Fluxo de Dados

Transportam dados entre os elementos do DFD

Processo Processo

Entidade Externa Processo

Depósito de Dados Processo

NUNCA ENTRE ENTIDADE EXTERNA E DEPÓSITO DE DADOS


DFD – Diagrama de Fluxo de Dados
Fluxo de Dados

Tipos de Fluxos:

• Fluxo externo: entre Entidade Externa e Processo


• Fluxo interno: entre dois Processos
• Fluxo de acesso à memória: entre Processo e Depósito
• Fluxo de erro ou rejeição: para fora de um Processo
DFD – Diagrama de Fluxo de Dados
Fluxo de Dados

Nomenclatura:

• Cada fluxo deve ter um único nome


• O nome deve identificar os dados transportados pelo fluxo
• Exemplos: Dados-Fatura, Recibo-Pagamento, Dados-Cliente

O objetivo do fluxo de dados não é representar aspectos procedurais:

• O fluxo chega ao processo porque foi solicitado?


• Quando um processo dever gerar um fluxo?
• Quando um processo recebe dois fluxos qual a dependência entre
eles?
DFD – Diagrama de Fluxo de Dados
Fluxo de Dados

QUAL É A ORDEM DOS FLUXOS DE ENTRADA E SAÍDA?

A
X
B Q Y
Z
C

Na especificação deve ser explicitada a ordem


DFD – Diagrama de Fluxo de Dados
Depósito de Dados

• Representam uma coleção de pacotes de dados em repouso


• Um depósito existe por causa de um requisito básico do usuário ou
por um aspecto prático da implementação
• Nem sempre um depósito de dados é um arquivo ou SGBD. Pode
representar microfilmes, pastas de arquivos em papel e diversas
outras formas não computadorizadas

Nomenclatura
• Normalmente o nome para identificar o depósito é o plural do nome
dos pacotes transportados pelos fluxos para dentro e para fora do
depósito. Deve ser significativo para o usuário
• Os fluxos interligados a um depósito só podem transportar pacotes
de informações que o depósito pode aceitar
DFD – Diagrama de Fluxo de Dados
Depósito de Dados

REPRESENTAÇÃO GRÁFICA:

D1 Clientes Clientes

Gane & Sarson De Marco & Yourdon


DFD – Diagrama de Fluxo de Dados
Depósito de Dados

Observações:

• Fluxo saindo (leitura)de um depósito pode significar:


• Um pacote isolado de dados foi recuperado
• Mais de um pacote foi recuperado
• Apenas uma parte do pacote foi recuperada
• Partes de mais de um pacote foram recuperadas
:
DFD – Diagrama de Fluxo de Dados
Depósito de Dados
Observações (continuação)

• Fluxo entrando (atualização) num depósito pode significar:

• Um ou mais novos pacotes de dados estão sendo introduzidos


• Um ou mais pacotes de dados estão sendo modificados ou
alterados
• Um ou mais pacotes de dados estão sendo removidos do depósito
:
DFD – Diagrama de Fluxo de Dados
Entidades Externas

• São as fontes/destinatários das informações que entram/saem do


sistema
• Os procedimentos executados pelas entidades externas não são
especificados no modelo por não fazerem parte do sistema
• Normalmente é uma pessoa, um grupo de pessoas, uma
organização externa, um setor dentro de uma empresa
• Pode representar outro sistema

• Representação gráfica:

Alunos
DFD – Diagrama de Fluxo de Dados

Entidades Externas

Nomenclatura:

• No plural quando se referir a um grupo de pessoas (Clientes)


• Deve conter o nome do setor ou organização externa (Diretoria de
Negócios)
• Deve ser incluída a palavra sistema quando se tratar de um
sistema (Sistema de Contabilidade)
DFD – Diagrama de Fluxo de Dados

Entidades Externas

Três aspectos importantes sobre as Entidades Externas:

1. Eles são externos ao sistema que estamos modelando, os fluxos


que interligam as entidades aos diversos processos de nosso
sistema reapresentam a interface entre o sistema e o mundo
externo
2. Nem o analista nem o projetista estão em posição de modificar o
conteúdo de uma entidade ou o modo como a entidade funciona
3. Qualquer relacionamento existente entre entidades externas não
será mostrado no DFD
DFD – Diagrama de Fluxo de Dados

Diretrizes para Elaboração:


• Escolher nomes significativos para os processos, fluxos,
depósitos e entidades externas
• Um processo pode representar uma função que está sendo
executada ou pode indicar como a função está sendo executada,
pela identificação das pessoas, grupos ou mecanismos
envolvidos
• No caso de pessoas é necessário rotular o papel que esta pessoa
está desenvolvendo e em vez do nome ou da identidade
DFD – Diagrama de Fluxo de Dados

Diretrizes para Elaboração (continuação):


• Os nomes escolhidos para processos e também para os fluxos e
entidades devem provir de um vocabulário conhecido pelo usuário
• Porém algumas precauções devem ser tomadas:
• Existe a natural tendência por parte dos usuários utilizarem
as abreviações e acrônimos que lhes sejam familiares
• Nomeie processos, fluxos e entidades de forma clara, de
maneira que qualquer pessoa possa entender do que se trata
DFD – Diagrama de Fluxo de Dados

Diretrizes para Elaboração (continuação):

Numerar os processos:

• Deve ser consistente no modo como atribui os números


• A numeração NÃO representa sequência de execução, pois o
DFD é uma rede de processos assíncronos que se comunicam
• Muitas vezes é mais fácil referenciar números do que nomes
como “Editar Erros de Transações e de Relatórios”
• São importantes, pois são utilizados no esquema de numeração
hierárquica
DFD – Diagrama de Fluxo de Dados

Diretrizes para Elaboração (continuação):

Evitar DFDs complexos demais:

• DFDs devem ser lidos e compreendidos facilmente pelos


usuários e outros analistas
• Não crie um DFD com demasiados processos, fluxos, depósitos
e terminadores
• Os diagramas devem caber em uma folha carta ou A4
DFD – Diagrama de Fluxo de Dados

Diretrizes para Elaboração (continuação):

Refazer o DFD tantas vezes quantas forem necessárias::

• Em um sistema real o DFD deve ser feito, refeito e novamente


refeito até que esteja:
• Tecnicamente correto
• Aceitável pelo usuário
• Tão bem desenhado que não fique constrangido em
mostrá-lo à diretoria de sua empresa
DFD – Diagrama de Fluxo de Dados
Diretrizes para Elaboração (continuação):

Criar diagramas esteticamente agradáveis

Os DFDs devem ser esteticamente legíveis:


• Tamanho e formas dos elementos
• Fluxos de dados curvos versus fluxos de dados retos
• Diagramas desenhados à mão versus diagrama gerados por
máquina
• Fluxos que se cruzam
DFD – Diagrama de Fluxo de Dados
Diretrizes para Elaboração (continuação):

Certificar-se que o DFD seja logicamente consistente

• Os DFDs devem ser consistentes com outros diagramas e também


com eles próprios
• Algumas diretrizes para a consistências entre eles são:
• Evite os poços sem fundo. Também conhecidos como “buracos
negros”, são processos que têm entradas mas não têm saídas
DFD – Diagrama de Fluxo de Dados
Diretrizes para Elaboração (continuação):

• Evite processos com geração espontânea. Processos que têm


saídas mas não entradas são suspeitos e geralmente incorretos.
• Cuidado com os fluxos e processos sem rótulo. Isso geralmente
é sinal de desatenção, mas pode revelar erros mais sérios: as
vezes o analista de sistemas omite o rótulo de um fluxo ou
processo porque simplesmente não consegue encontrar um
nome satisfatório.

• Cuidado com depósitos de leitura-apenas ou escrita-apenas.


• Depósito de dados devem aparecer no nível em que são
compartilhados e no próximo nível
• Entidades externas devem aparecer no diagrama de contexto e
no diagrama de nível 0
DFD – Diagrama de Fluxo de Dados
Diretrizes para Elaboração (continuação):

• O sentido do desenho é sempre de cima para baixo e da


esquerda para a direita
• As entidades externas, sempre que possível, devem aparecer
nas bordas do desenho
• Jamais um fluxo de dados parte de um depósito e vai para outro
depósito sem a intermediação de um processo
• Um fluxo de dados nunca parte de uma entidade externa
diretamente para o depósito de dados, sempre há um processo
intermediando
• Também não é possível um fluxo partir diretamente de uma
entidade externa para outra
• Assim como um fluxo jamais parte de um depósito diretamente
para uma entidade, sempre há a intermediação de um processo
DFD – Diagrama de Fluxo de Dados
DFDs com niveis:

• O DFD de sistemas não triviais é muito complexo


• Para evitar que tudo seja definido num único
diagrama (difícil de ser entendido e mantido),
criam-se DFD´s que detalham um processo de nível
mais alto
DFD – Diagrama de Fluxo de Dados

Diagrama de Contexto:

• O DFD de nível mais alto consiste de um único processo (ou


bolha), representando o sistema inteiro
• Neste diagrama os fluxos de dados mostram as interfaces entre
o sistema e as entidades externas
• Representa as interações com o ambiente
DFD – Diagrama de Fluxo de Dados
Diagrama de Contexto:

Fatura
Sistema de Setor
Setor Pedido Entrega
Vendas
Vendas

Cobrança

Sistema de
Cobrança
DFD – Diagrama de Fluxo de Dados

Diagrama de Nível 0:

• O DFD imediatamente abaixo do diagrama de contexto é


conhecido como Nível 0
• Ele representa a visão de mais alto nível das principais funções
do sistema bem como as principais interfaces entre essas
funções
• Com DFD nível 0 numerado podemos relacionar um processo
(ou bolha) com o DFD de nível imediatamente inferior.
DFD – Diagrama de Fluxo de Dados
Diagrama de Nível 0:

Setor
Vendas Clientes Setor
Pedido Entrega

1. 2. Fatura
Introduzir Processar
pedidos Pedidos
Pedidos
Cobrança

Sistema de
Cobrança
DFD – Diagrama de Fluxo de Dados
Diagrama Níveis Intermediários:

• São os diagramas que mostram a decomposição (detalhamento


ou explosão) de cada processo de nível mais alto
• A quantidade de níveis depende de fatores como complexidade
e porte do sistema
• Em geral, a decomposição deve terminar quando for possível
especificar o processo numa página
• Quantos níveis de nivelação?
• Sistemas simples: 2 a 3 níveis
• Sistemas de médio porte: de 3 a 6 níveis
• Sistemas de grande porte: de 6 a 8 níveis
DFD – Diagrama de Fluxo de Dados
Diagrama Níveis Intermediários (continuação):

• Todas as partes do sistema devem ter o mesmo nível de


detalhe?
• Não: algumas partes do sistema podem ser mais
complexas que outras
• Como mostrar os diferentes níveis ao utilizador?
• Depende do tipo de utilizador:
• Executivos olham para o diagrama de contexto ou
DFD de nível 0
• Operadores olham apenas para a parte do sistema
que lhe diz respeito
DFD – Diagrama de Fluxo de Dados

Diagrama Níveis Intermediários (continuação):

• Como saber se os níveis de DFDs estão consistentes entre si?


• Fluxos de dados de entrada e saída de um nível devem
corresponder aos fluxos de dados de entrada e saída do
nível mais abaixo que descreve aquele processo
• Como mostrar os depósitos de dados nos vários níveis?
• Mostrar o depósito no nível mais alto onde ele serve como
interface entre processos
• Mostrar o depósito outra vez em todo o DFD de nível mais
baixo que está envolvido na interface
DFD – Diagrama de Fluxo de Dados

Diagrama Níveis Intermediários (continuação):

• Como se faz a nivelação de fato?


• O desenvolvimento do DFD não é necessariamente top-
down
• Abordagem mista: top-down + bottom-up
• Lista de Eventos: relação de processos que o sistema
deverá possuir. Utilizar a lista de eventos para criar a 1ª
versão do DFD
DFD – Diagrama de Fluxo de Dados
Diagrama Níveis Intermediários:

Pedidos Setor
Entrega

Clientes 2.2 Fatura


Gerar
Fatura
2.1
Gerar
Cobrança
Cobrança
Sistema de
Pedidos Cobrança
DFD – Diagrama de Fluxo de Dados
Exemplo: Controle de Estoque – Diagrama de Contexto
DFD – Diagrama de Fluxo de Dados
Exemplo: Controle de Estoque – Diagrama Nível 0
DFD – Diagrama de Fluxo de Dados
Exemplo: Controle de Estoque – Detalhando Processo 3
DFD – Diagrama de Fluxo de Dados
Análise Estruturada - DFD
Pedido_preços
E1 E2
Departamento Fornecedores
de produção
P1
Lista_materiais
Entidade Escolher Preços_material
necessários
fornecedor
externa
Processo
Lista
D1 Fornecedores
P2
Pedir Nota_encomenta
materiais
Depósito
Fluxo de dados
De dados
DFD – Diagrama de Fluxo de Dados
D iagram a d e C on tex to

Análise Estruturada
D iagram a Z ero

1
2

D iag ram a 1 D iag ram a 2


Explosões
1 .2 2.1

1 .1 2.2

E sp ecificação
Processo Pro cesso Processo P ro cesso
da ló gica d os
1 .1 1.2 2 .1 2.2
processo s
DFD – Diagrama de Fluxo de Dados

Exercícios – Desenvolva um DFD para cada uma das situações:

“O caixa do banco recebe o cheque para descontar. Ele verifica, na ficha do


cliente se há saldo disponível, em caso afirmativo, dá o dinheiro; caso
contrário devolve o cheque.”

“O professor passa para a secretaria 4 notas de cada aluno. A secretaria


calcula a média de cada um e anota na ficha de cada aluno. Quando o aluno
solicitar sua média, a secretaria consulta a ficha dele, anota a mesma em um
papel e entrega ao aluno.”
DFD – Diagrama de Fluxo de Dados
Exercícios – Desenvolva um DFD para cada uma das situações:

“O caixa do banco recebe o cheque para descontar. Ele verifica, na ficha do


cliente se há saldo disponível, em caso afirmativo, dá o dinheiro; caso
contrário devolve o cheque.”

Cheque p/ descontar
Cliente

Se tiver saldo, entrega dinheiro

Se não tiver saldo, devolve cheque Desconta cheque

Verifica saldo
Ficha Cliente
DFD – Diagrama de Fluxo de Dados
Exercícios – Desenvolva um DFD para cada uma das situações:

“O professor passa para a secretaria 4 notas de cada aluno. A secretaria


calcula a média de cada um e anota na ficha de cada aluno. Quando o aluno
solicitar sua média, a secretaria consulta a ficha dele, anota a mesma em um
papel e entrega ao aluno.”

Notas de alunos

Professor
Médias Aluno
Calcular
Médias

Dados/Médias Aluno
Ficha Aluno

Solicitação de médias
Consultar
Aluno Médias

Relação com dados e médias


DFD – Diagrama de Fluxo de Dados

Exercícios – Desenvolva um DFD para cada uma das situações:

“A Universidade XPTO apresenta licenciaturas em vários cursos distribuídos


por 5 departamentos. O processo administrativo do funcionamento desta
Universidade consta no seguinte:
No início de cada ano os alunos inscrevem-se no ano e cadeiras pretendidas.
A secretária analisa, de acordo com a tabela de precedências/precedidas a
situação do aluno, a viabilidade de inscrição e comunica-lhe as cadeiras em
que realmente ficou inscrito. No fim de cada semestre, são elaboradas e
afixadas pautas com datas dos exames para consulta dos alunos. Depois
destes efetuados, os professores comunicam as notas à secretária, sendo
atualizado o dossie do aluno. Paralelamente, no início de cada semestre são
elaborados os horários e as turmas, em função da disponibilidade das salas,
professores e plano dos cursos, sendo posteriormente afixados para que os
alunos saibam o seu novo horário. “

Você também pode gostar