1. O documento discute diagramas de fluxo de dados, incluindo seus componentes, diretrizes para desenvolvimento e como criar diagramas de fluxo de dados nivelados.
2. Um diagrama de fluxo de dados representa os processos de um sistema como "bolhas" interligadas por fluxos de dados, e pode incluir depósitos de dados e entidades externas.
3. Diagramas de fluxo de dados nivelados dividem um sistema complexo em diagramas separados para cada nível, começando pelo diagrama de contexto de alto nível e o nível 0.
2. DIAGRAMA DE FLUXO DE DADOS
Tópicos
• 1. Os componentes de um diagrama de fluxo de
dados
• 2. Como desenhar um diagrama de fluxo de dados
simples
• 3. Diretrizes para desenhar diagramas de fluxo de
dados
• 4. Como desenhar diagrama de fluxo de dados
nivelados
3. • Principal técnica de modelagem funcional
• Modelagem: Imaginar um sistema como uma rede
de processos funcionais, interligados por “dutos” e
“tanques de armazenamentos” de dados
• Pode ser usado para descrever processos
computadorizados e não computadorizados
• Também chamado de DFD, Diagrama de Bolhas,
Modelo de Processo e Diagrama Funcional
DIAGRAMA DE FLUXO DE DADOS
4. • 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)
DIAGRAMA DE FLUXO DE DADOS
5. Um DFD é composto por:
• Processos
• Fluxos de Dados
• Depósitos de Dados e
• Entidades Externa
DIAGRAMA DE FLUXO DE DADOS
6. • Transformador de dados. Reside dentro das
fronteiras do sistema.
• Também 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
DIAGRAMA DE FLUXO DE DADOS
PROCESSOS
7. • Geralmente provoca mudanças de estrutura,
conteúdo ou estado.
• Representação gráfica
DIAGRAMA DE FLUXO DE DADOS
PROCESSOS
Calcular
Comissão
Calcular
Comissão
De Marco/Yourdon Gane & Sarson
8. • 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)
DIAGRAMA DE FLUXO DE DADOS
PROCESSOS
9. • Representam caminhos por onde passam os
dados
• Os fluxos representam dados em
movimento
• Normalmente representam bits, caracteres,
etc, mas podem representar materiais físicos
• São representados através de setas que
indicam o destino (ou direção) do dado
DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
10. • Fluxos com duas setas indicam um diálogo.
Cada extremidade da seta deve ser rotulada
• O nome representa o significado do pacote
de informações que se move pelo fluxo
• Os nomes devem constar no dicionário de
dados
• Um mesmo fragmento de dados pode ter
significados diferentes em pontos distintos
de um DFD (CPF válido e CPF inválido)
DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
11. DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
Preparar
Bolo
Bolo
Mistura para bolos
Açúcar
Ovos
Leite
12. DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
• Os fluxos podem divergir ou convergir:
– cópias são envidadas para diferentes partes do
sistema,
• ou que um pacote de dados está sendo
dividido a vários pacotes mais simples
14. • 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
DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
15. • 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
DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
16. • Nomenclatura
– Cada fluxo deve ter um único nome
– O nome deve identificar os dados transportados
pelo fluxo
– Exemplos: Dados-Fatura, Recibo-Pagamento,
Dados-Cliente
DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
17. • 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?
DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
18. DIAGRAMA DE FLUXO DE DADOS
FLUXO DE DADOS
Q
A
B
C
X
Y
Z
QUAL É A ORDEM DE ENTRADA E SAÍDA?
Na especificação ser deve
explicado a ordem
19. • 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
DIAGRAMA DE FLUXO DE DADOS
DEPÓSITO DE DADOS
21. • 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
DIAGRAMA DE FLUXO DE DADOS
DEPÓSITO DE DADOS
22. 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
DIAGRAMA DE FLUXO DE DADOS
DEPÓSITO DE DADOS
23. Observações (cont)
• 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
DIAGRAMA DE FLUXO DE DADOS
DEPÓSITO DE DADOS
24. • Também chamados de Terminadores
• 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
DIAGRAMA DE FLUXO DE DADOS
ENTIDADES EXTERNAS
25. • 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
DIAGRAMA DE FLUXO DE DADOS
ENTIDADES EXTERNAS
Alunos
26. 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)
DIAGRAMA DE FLUXO DE DADOS
ENTIDADES EXTERNAS
27. DIAGRAMA DE FLUXO DE DADOS
ENTIDADES EXTERNAS
Três aspectos importantes sobre Terminadores:
1. Eles são externos ao sistema que estamos
modelando, os fluxos que interligam os
terminadores 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 um terminador ou o
modo como o terminador funciona
3. Qualquer relacionamento existente entre
terminadores não será mostrado no DFD
28. DIAGRAMA DE FLUXO DE DADOS
ENTIDADES EXTERNAS
• Como identificá-las?
O analista de sistema recebe a seguinte
informação do usuário:
a)Pretendo fornecer os itens X,Y e Z para
o sistema e espero receber como resposta
A,B,C
29. DIAGRAMA DE FLUXO DE DADOS
ENTIDADES EXTERNAS
• Como identificá-las?
b) O Departamento de Contabilidade fornece os
formulários do tipo 321 e nós da Administração
temos que remeter semanalmente os relatórios
orçamentais para a Comissão de Finanças
30. • Escolher nomes significativos para os processos,
fluxos, depósitos e terminadores
• Um processo pode representar uma função que está
sendo executada ou pode indicar como a função está
sendo executada, pela identificação da pessoas,
grupo ou mecanismo envolvido
• No caso de pessoas é necessário rotular o papel que
esta pessoa está desenvolvendo e em vez do nome
ou da identidade
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
31. DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
F R E D
pedidos
pedidos
válidos
pedidos
inválidos
validar
pedidos
pedidos
pedidos
válidos
pedidos
inválidos
32. • Os nomes escolhidos para processos e
também para os fluxos e terminadores
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
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
33. Numerar os processos
• Deve ser consistente no modo como atribui os
números
• A numeração NÃO representa seqüê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
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
34. Evitar DFD 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
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
35. Refazer o DFD tantas vezes quantas forem
necessárias
• Em um sistema real o DFD deve ser feito, refeito e
novamente refeito por dez ou mais vezes 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
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
36. CRIAR DIAGRAMAS ESTETICAMENTE
AGRADÁVEIS
• Você gostaria de viajar em um avião
projetado por engenheiros que ficassem
entediados com seus desenhos após a
segunda iteração?
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
37. CRIAR DIAGRAMAS ESTETICAMENTE
AGRADÁVEIS
• Os DFDs devem ser esteticamente legíveis:
– Tamanho e formas das bolhas
– Fluxos de dados curvos versus fluxos de dados
retos
– Diagramas desenhados à mão versus diagrama
gerados por máquina
– Fluxos que se cruzam
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
38. Certificar-se de 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 bolhas que têm
entradas mas não tem saídas
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
39. • Evite bolhas com geração espontânea. Bolhas que
têm saídas mas não entradas são suspeitas e
geralmente incorretas.
• 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.
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
40. • 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
DIAGRAMA DE FLUXO DE DADOS
DIRETRIZES PARA ELABORAÇÃO
41. • 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
DIAGRAMA DE FLUXO DE DADOS
DFD COM NÍVEIS
42. • O DFD de nível mais alto consiste de uma
única bolha, representando o sistema inteiro
• Neste diagrama os fluxos de dados mostram
as interfaces entre o sistema e os
terminadores
• Representa as interações com o ambiente
DFD COM NÍVEIS
DIAGRAMA DE CONTEXTO
43. DFD COM NÍVEIS
DIAGRAMA DE CONTEXTO
Setor
Vendas
Sistema de
Vendas
Setor
Entrega
Sistema de
Cobrança
Pedido
Fatura
Cobrança
44. 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
uma bolha com o DFD de nível imediatamente
inferior.
DFD COM NÍVEIS
DIAGRAMA NÍVEL 0
45. DFD COM NÍVEIS
DIAGRAMA NÍVEL 0
Setor
Vendas
Setor
Entrega
Sistema de
Cobrança
Clientes
Pedidos
1.
Introduzir
pedidos
2.
Processar
Pedidos
Pedido
Fatura
Cobrança
46. • 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 dever terminar
quando for possível especificar o processo
numa página
DFD COM NÍVEIS
DIAGRAMA NÍVEIS
INTERMEDIÁRIOS
48. Análise Estruturada - DFD
E1
Departamento
de produção
E2
Fornecedores
P1
Escolher
fornecedor
P2
Pedir
materiais
D1 Fornecedores
Lista_materiais
necessários
Pedido_preços
Preços_material
Nota_encomenta
Lista
Dados_fornecedor
Dados_fornecedor
Entidade
externa
Fluxo de dados
Depósito
De dados
Processo
49. Análise Estruturada
Diagrama de Contexto
1
2
1.1
1.2 2.1
2.2
Diagrama Zero
Diagrama 1 Diagrama 2
Especificação
da lógica dos
processos
Processo
1.1
Processo
1.2
Processo
2.1
Processo
2.2
Explosões