Criou página com '= DFD - Diagrama de Fluxo de Dados = * Convenção simbólica de 4 representações gráficas: Arquivo:DFD.png <br> <br> == Processos == * O símbolo de processo re...'
 
Sem resumo de edição
Linha 1: Linha 1:
= DFD - Diagrama de Fluxo de Dados =
= DFD - Diagrama de Fluxo de Dados =




* Convenção simbólica de 4 representações gráficas:
* Convenção simbólica de 4 representações gráficas:




[[Arquivo:DFD.png]]
[[Arquivo:DFD.png]]


<br>
<br>


<br>
<br>




== Processos ==
== Processos ==




* O símbolo de processo representa uma atividade de transformação.
* O símbolo de processo representa uma atividade de transformação.


* Ele é alimentado
* Ele é alimentado
Linha 24: Linha 31:


<br>
<br>




Linha 41: Linha 49:


<br>
<br>




[[Arquivo:DFD1.png]]
[[Arquivo:DFD1.png]]


<br>
<br>


<br>
<br>




Linha 57: Linha 69:


** Existe um fluxo de dados (seta) bidirecional entre o processo e um depósito de dados (traços paralelos) chamado de CadCli onde haverá armazenamento de dados do cliente.
** Existe um fluxo de dados (seta) bidirecional entre o processo e um depósito de dados (traços paralelos) chamado de CadCli onde haverá armazenamento de dados do cliente.


<br>
<br>


'''Processo Realizar Empréstimo'''
'''Processo Realizar Empréstimo'''


<br>
<br>


<br>
<br>




[[Arquivo:DFD2.png]]
[[Arquivo:DFD2.png]]


<br>
<br>


<br>
<br>




* Biblioteca: Interface responsável pelo atendimento do aluno
* Biblioteca: Interface responsável pelo atendimento do aluno


* CadEmp: Base de dados que mantém informações sobre os empréstimos
* CadEmp: Base de dados que mantém informações sobre os empréstimos


<br>
<br>




'''Processo Alugar Filmes'''
'''Processo Alugar Filmes'''


<br>
<br>




[[Arquivo:DFD3.png]]
[[Arquivo:DFD3.png]]


<br>
<br>
* '''Como ficam os fluxos de dados neste exemplo?'''
* '''Porque tantos depósitos de dados?'''


<br>
<br>




* Ao símbolo que registra o processo pode ser adicionado o elemento responsável pela ação (no caso, o setor de atendimento)
* Ao símbolo que registra o processo pode ser adicionado o elemento responsável pela ação (no caso, o setor de atendimento)


* O item utilizado para buscar a informação no depósito de dados é denonimado Argumento de Pesquisa e é representado por uma ponta de seta.
* O item utilizado para buscar a informação no depósito de dados é denonimado Argumento de Pesquisa e é representado por uma ponta de seta.


<br>
<br>




'''Processo Cadastrar Pedido'''
'''Processo Cadastrar Pedido'''


<br>
<br>




[[Arquivo:DFD4a.png]]
[[Arquivo:DFD4a.png]]
* '''Desenhar também os fluxos de dados.'''
<br><br>




* Embora seja interessante, um DFD nem sempre traduz as maneiras pelas quais, uma informação chega até o sistema
* Embora seja interessante, um DFD nem sempre traduz as maneiras pelas quais, uma informação chega até o sistema


* No caso acima, para o Pedido, podemos ter várias situações possíveis de trâmite entre a origem até o armazenamento dos dados no sistema de informação.
* No caso acima, para o Pedido, podemos ter várias situações possíveis de trâmite entre a origem até o armazenamento dos dados no sistema de informação.


<br>
<br>




'''Processo Cadastrar Pedido – Modos de entrada'''
'''Processo Cadastrar Pedido – Modos de entrada'''




1. Sistema de Televendas: Atendente recebe a solicitação do comprador e por meio de uma tela, insere os dados enviando resposta por fax ou e-mail para o cliente
1. Sistema de Televendas: Atendente recebe a solicitação do comprador e por meio de uma tela, insere os dados enviando resposta por fax ou e-mail para o cliente




2. Consultor de Vendas: Na frente do cliente, consultor utiliza seu dispositivo portátil para inserir os dados do pedido numa tela adequada ao seu aparelho; o pedido é impresso numa impressora portátil
2. Consultor de Vendas: Na frente do cliente, consultor utiliza seu dispositivo portátil para inserir os dados do pedido numa tela adequada ao seu aparelho; o pedido é impresso numa impressora portátil




3. Atendimento na Loja: Vendedor recebe o cliente no balcão, insere dados na tela do desktop e imprime o pedido numa impressora local e o entrega uma via nas mãos do cliente
3. Atendimento na Loja: Vendedor recebe o cliente no balcão, insere dados na tela do desktop e imprime o pedido numa impressora local e o entrega uma via nas mãos do cliente




4. Web: Cliente acessa endereço da loja, preenche dados do pedido e visualiza resultados por meio de uma opção na própria tela permitindo a impressão.
4. Web: Cliente acessa endereço da loja, preenche dados do pedido e visualiza resultados por meio de uma opção na própria tela permitindo a impressão.


<br>
<br>
Linha 133: Linha 183:


== Depósito de dados ==
== Depósito de dados ==


<br>
<br>




* O depósito de dados referencia o local onde os dados são persistidos (armazenados)
* O depósito de dados referencia o local onde os dados são persistidos (armazenados)


* Para representar com mais clareza, na extremidade esquerda do símbolo de depósito de dados, pode-se designar um espaço para escrever a identificação do depósito de dados.
* Para representar com mais clareza, na extremidade esquerda do símbolo de depósito de dados, pode-se designar um espaço para escrever a identificação do depósito de dados.


<br>
<br>




[[Arquivo:DepDados.png]]
[[Arquivo:DepDados.png]]


<br>
<br>




Linha 156: Linha 213:


** ambos
** ambos


* As identificações são interessantes porque os depósitos de dados (tabelas, arquivos) podem chegar à ordem de dezenas ou centenas.
* As identificações são interessantes porque os depósitos de dados (tabelas, arquivos) podem chegar à ordem de dezenas ou centenas.
<br><br>
'''Exercício:'''
* Descrever cada um dos depósitos de dados dos exercicios acima:
# CadCli
# CadAlunos
# CadLivros
# CadEmp
# CadFilmes
# CadFilial
# CadLocação
# CadProd
# CadEStoque
# CadCliente
# CadPedido
# CadTransf


<br>
<br>
Linha 163: Linha 252:


== Função dos DFDs ==
== Função dos DFDs ==


<br>
<br>




* Os dados são transformados em cada passo antes de mover para o próximo estágio
* Os dados são transformados em cada passo antes de mover para o próximo estágio


* Estas transformações são funções de programa
* Estas transformações são funções de programa


* Os DFDs ajudam os analistas a entender o que acontece com os dados durante a execução do sistema
* Os DFDs ajudam os analistas a entender o que acontece com os dados durante a execução do sistema


* Podem ser usados para mostrar como diferentes sistemas trocam informações
* Podem ser usados para mostrar como diferentes sistemas trocam informações


<br>
<br>




'''Refinamento do DFD inicial:'''
'''Refinamento do DFD inicial:'''


<br>
<br>




* O DFD inicial é subdivido em níveis
* O DFD inicial é subdivido em níveis


* São gradativamente definidos:
* São gradativamente definidos:
Linha 194: Linha 293:


<br>
<br>




'''Como utilizar o DFD no projeto lógico'''
'''Como utilizar o DFD no projeto lógico'''


<br>
<br>




* O DFD é uma ferramenta aplicada para análise top-down
* O DFD é uma ferramenta aplicada para análise top-down


* A solução é retratada inicialmente na forma macro numa visão de alto nível ou contextual (DFD zero)
* A solução é retratada inicialmente na forma macro numa visão de alto nível ou contextual (DFD zero)


* A partir da demarcação inicial, se inicia a explosão da visão de alto nível.
* A partir da demarcação inicial, se inicia a explosão da visão de alto nível.


<br>
<br>




Exemplo:
Exemplo:


<br>
<br>
Linha 216: Linha 323:


== Explodindo o DFD de um Sistema de Venda de DVDs ==
== Explodindo o DFD de um Sistema de Venda de DVDs ==


<br>
<br>




'''DFD Nível 0 (zero)'''
'''DFD Nível 0 (zero)'''


<br>
<br>




[[Arquivo:DFD0.png]]
[[Arquivo:DFD0.png]]


<br><br><br>
<br><br><br>




'''DFD Nível 1'''
'''DFD Nível 1'''


<br>
<br>




[[Arquivo:DFD-Nivel1.png]]
[[Arquivo:DFD-Nivel1.png]]


<br><br><br>
<br><br><br>




'''DFD Nível 2'''
'''DFD Nível 2'''


'''Inserindo nova funcionalidade: Pedidos'''
'''Inserindo nova funcionalidade: Pedidos'''


<br>
<br>




[[Arquivo:DFD-Nivel2.png]]
[[Arquivo:DFD-Nivel2.png]]


<br><br><br>
<br><br><br>




'''DFD Nível 2'''
'''DFD Nível 2'''


'''Inserindo nova funcionalidade: Devoluções'''
'''Inserindo nova funcionalidade: Devoluções'''


<br><br>
<br><br>




[[Arquivo:DFD-Nivel2a.png]]
[[Arquivo:DFD-Nivel2a.png]]


<br><br><br>
<br><br><br>




== Resumo ==
== Resumo ==




'''DFD – Diagrama de Fluxos de Dados'''
'''DFD – Diagrama de Fluxos de Dados'''




* Especifica o modelo dos processos do sistema, ou seja, como a informação é criada, armazenada e utilizada
* Especifica o modelo dos processos do sistema, ou seja, como a informação é criada, armazenada e utilizada


* A ênfase está nos processos e devem ser simples para que possam ser compreendidos facilmente por todos que o lerem
* A ênfase está nos processos e devem ser simples para que possam ser compreendidos facilmente por todos que o lerem


* Os componentes do DFD são: processo, fluxo de dados, entidade externa e depósito de dados
* Os componentes do DFD são: processo, fluxo de dados, entidade externa e depósito de dados


<br>
<br>




* A sua construção é realizada em níveis:
* A sua construção é realizada em níveis:
** Nível 0: Diagrama de Contexto
** Nível 0: Diagrama de Contexto
** Nível 1: Explosão do nível 0, contendo Título e Numeração dos Processos: 1; 2; 3;...
** Nível 1: Explosão do nível 0, contendo Título e Numeração dos Processos: 1; 2; 3;...
** Nível 2: Explosão do nível 1, contendo Título e Numeração dos Processos: 1.1; 1.2; 1.3;... 2.1; 2.2;...
** Nível 2: Explosão do nível 1, contendo Título e Numeração dos Processos: 1.1; 1.2; 1.3;... 2.1; 2.2;...
** E assim por diante.
** E assim por diante.
<br><br>
<br><br>




'''Processo'''
'''Processo'''


<br>
<br>




* Representa o elemento que transforma entradas em saídas
* Representa o elemento que transforma entradas em saídas


* O processo sempre tem um nome que deve descrever o melhor possível a funcionalidade que será desempenhada pelo processo
* O processo sempre tem um nome que deve descrever o melhor possível a funcionalidade que será desempenhada pelo processo


* O nome do processo, geralmente, é formado por um verbo (Calcular) e um objeto (Média dos Alunos)
* O nome do processo, geralmente, é formado por um verbo (Calcular) e um objeto (Média dos Alunos)


<br><br>
<br><br>




'''Entidade Externa'''
'''Entidade Externa'''


<br>
<br>




* Representa os elementos que não são do sistema, mas interagem com ele, inserindo ou recebendo dados
* Representa os elementos que não são do sistema, mas interagem com ele, inserindo ou recebendo dados


* Exemplo: pessoas, usuários, empresas, departamentos de uma empresa, outros sistemas, etc.
* Exemplo: pessoas, usuários, empresas, departamentos de uma empresa, outros sistemas, etc.


<br><br>
<br><br>




'''Depósito de Dados'''
'''Depósito de Dados'''


<br>
<br>




* Utilizado para modelar um conjunto de dados persistentes, que precisam ser armazenados fisicamente
* Utilizado para modelar um conjunto de dados persistentes, que precisam ser armazenados fisicamente


* Podem se tornar uma ou mais tabelas (ou arquivos) de bases de dados na versão final do sistema
* Podem se tornar uma ou mais tabelas (ou arquivos) de bases de dados na versão final do sistema


* O nome de um depósito de dados geralmente está no plural e deve ser o mais representativo possível quanto aos dados que armazena.
* O nome de um depósito de dados geralmente está no plural e deve ser o mais representativo possível quanto aos dados que armazena.


<br><br>
<br><br>




'''Fluxo de Dados'''
'''Fluxo de Dados'''


<br>
<br>




* Representa o movimento dos dados (ou conjunto de dados) dentro do sistema
* Representa o movimento dos dados (ou conjunto de dados) dentro do sistema


* O fluxo de dados deve ter um sentido e pode ser:
* O fluxo de dados deve ter um sentido e pode ser:
** de um processo para outro processo
** de um processo para outro processo
** de uma entidade externa para um processo e vice-versa
** de uma entidade externa para um processo e vice-versa
** de um processo para um depósito de dados e vice-versa.
** de um processo para um depósito de dados e vice-versa.

Edição das 23h12min de 12 de abril de 2011

DFD - Diagrama de Fluxo de Dados

  • Convenção simbólica de 4 representações gráficas:







Processos

  • O símbolo de processo representa uma atividade de transformação.


  • Ele é alimentado
    • com dados, provenientes de um meio externo (via entidade externa)
    • pela leitura de dados armazenados em algum depósito de dados (tabelas/arquivos)



  • Todo processo tem um objeto claramente especificado. Alguns exemplos:
    • Cadastrar cliente / aluno / professor / conta
    • Gerar diário de classe / relatório de despesa
    • Emitir nota fiscal / duplicata / recibo / atestado
    • Baixar pagamentos / débitos / arquivos
    • Excluir fatura / nota / pendência
    • Calcular multa / média / fórmula








  • Exemplo gráfico do processo Cadastrar Cliente
    • Uma entidade externa (retângulo) com nome de CLIENTE envia dados do cliente ao processo
    • O envio de dados está representado pelo fluxo de dados (seta) chamado de DadosCli que parte do cliente em direção ao processo => input de dados
    • Existe um fluxo de dados (seta) bidirecional entre o processo e um depósito de dados (traços paralelos) chamado de CadCli onde haverá armazenamento de dados do cliente.




Processo Realizar Empréstimo











  • Biblioteca: Interface responsável pelo atendimento do aluno


  • CadEmp: Base de dados que mantém informações sobre os empréstimos




Processo Alugar Filmes






  • Como ficam os fluxos de dados neste exemplo?
  • Porque tantos depósitos de dados?




  • Ao símbolo que registra o processo pode ser adicionado o elemento responsável pela ação (no caso, o setor de atendimento)


  • O item utilizado para buscar a informação no depósito de dados é denonimado Argumento de Pesquisa e é representado por uma ponta de seta.




Processo Cadastrar Pedido





  • Desenhar também os fluxos de dados.




  • Embora seja interessante, um DFD nem sempre traduz as maneiras pelas quais, uma informação chega até o sistema


  • No caso acima, para o Pedido, podemos ter várias situações possíveis de trâmite entre a origem até o armazenamento dos dados no sistema de informação.




Processo Cadastrar Pedido – Modos de entrada


1. Sistema de Televendas: Atendente recebe a solicitação do comprador e por meio de uma tela, insere os dados enviando resposta por fax ou e-mail para o cliente


2. Consultor de Vendas: Na frente do cliente, consultor utiliza seu dispositivo portátil para inserir os dados do pedido numa tela adequada ao seu aparelho; o pedido é impresso numa impressora portátil


3. Atendimento na Loja: Vendedor recebe o cliente no balcão, insere dados na tela do desktop e imprime o pedido numa impressora local e o entrega uma via nas mãos do cliente


4. Web: Cliente acessa endereço da loja, preenche dados do pedido e visualiza resultados por meio de uma opção na própria tela permitindo a impressão.




Depósito de dados



  • O depósito de dados referencia o local onde os dados são persistidos (armazenados)


  • Para representar com mais clareza, na extremidade esquerda do símbolo de depósito de dados, pode-se designar um espaço para escrever a identificação do depósito de dados.







  • Depósitos de dados podem ter operações de:
    • leitura
    • gravação
    • ambos


  • As identificações são interessantes porque os depósitos de dados (tabelas, arquivos) podem chegar à ordem de dezenas ou centenas.




Exercício:

  • Descrever cada um dos depósitos de dados dos exercicios acima:
  1. CadCli
  1. CadAlunos
  1. CadLivros
  1. CadEmp
  1. CadFilmes
  1. CadFilial
  1. CadLocação
  1. CadProd
  1. CadEStoque
  1. CadCliente
  1. CadPedido
  1. CadTransf



Função dos DFDs



  • Os dados são transformados em cada passo antes de mover para o próximo estágio


  • Estas transformações são funções de programa


  • Os DFDs ajudam os analistas a entender o que acontece com os dados durante a execução do sistema


  • Podem ser usados para mostrar como diferentes sistemas trocam informações




Refinamento do DFD inicial:




  • O DFD inicial é subdivido em níveis


  • São gradativamente definidos:
    • Os argumentos de pesquisa e os depósitos de dados com suas orientações
    • Os processos com suas interações e detalhes
    • As entidades externas com suas especificidades.



Como utilizar o DFD no projeto lógico




  • O DFD é uma ferramenta aplicada para análise top-down


  • A solução é retratada inicialmente na forma macro numa visão de alto nível ou contextual (DFD zero)


  • A partir da demarcação inicial, se inicia a explosão da visão de alto nível.




Exemplo:




Explodindo o DFD de um Sistema de Venda de DVDs



DFD Nível 0 (zero)









DFD Nível 1




Arquivo:DFD-Nivel1.png






DFD Nível 2


Inserindo nova funcionalidade: Pedidos




Arquivo:DFD-Nivel2.png






DFD Nível 2


Inserindo nova funcionalidade: Devoluções





Arquivo:DFD-Nivel2a.png






Resumo

DFD – Diagrama de Fluxos de Dados


  • Especifica o modelo dos processos do sistema, ou seja, como a informação é criada, armazenada e utilizada


  • A ênfase está nos processos e devem ser simples para que possam ser compreendidos facilmente por todos que o lerem


  • Os componentes do DFD são: processo, fluxo de dados, entidade externa e depósito de dados




  • A sua construção é realizada em níveis:
    • Nível 0: Diagrama de Contexto
    • Nível 1: Explosão do nível 0, contendo Título e Numeração dos Processos: 1; 2; 3;...
    • Nível 2: Explosão do nível 1, contendo Título e Numeração dos Processos: 1.1; 1.2; 1.3;... 2.1; 2.2;...
    • E assim por diante.




Processo




  • Representa o elemento que transforma entradas em saídas


  • O processo sempre tem um nome que deve descrever o melhor possível a funcionalidade que será desempenhada pelo processo


  • O nome do processo, geralmente, é formado por um verbo (Calcular) e um objeto (Média dos Alunos)





Entidade Externa




  • Representa os elementos que não são do sistema, mas interagem com ele, inserindo ou recebendo dados


  • Exemplo: pessoas, usuários, empresas, departamentos de uma empresa, outros sistemas, etc.





Depósito de Dados




  • Utilizado para modelar um conjunto de dados persistentes, que precisam ser armazenados fisicamente


  • Podem se tornar uma ou mais tabelas (ou arquivos) de bases de dados na versão final do sistema


  • O nome de um depósito de dados geralmente está no plural e deve ser o mais representativo possível quanto aos dados que armazena.





Fluxo de Dados




  • Representa o movimento dos dados (ou conjunto de dados) dentro do sistema


  • O fluxo de dados deve ter um sentido e pode ser:
    • de um processo para outro processo
    • de uma entidade externa para um processo e vice-versa
    • de um processo para um depósito de dados e vice-versa.