Article image
Vagner Bellacosa
Vagner Bellacosa23/10/2021 18:01
Compartilhe

O que é um Diagrama de Fluxo de Dados.

  • #Informática Básica
  • #Banco de dados relacional
  • #NoSQL

Um olho no passado, dois olhos no futuro: Diagrama de Fluxo de Dados

image

Salve jovem padawan, mais uma vez vamos fazer uma viagem no tempo, para os primórdios da informática, onde as grandes ideias surgiram, sementes foram semeadas e gradualmente o sistema foi sendo criado.

image

O artigo de hoje irei para beber na fonte de dois gigantes Ed Yourdon e Larry Constantine que publicaram na década de setenta o livro Projeto Estruturado de Sistemas, uma rocha forte que serviu de alicerce para gerações de DEVS e inpirou David Martin e Gerald Estrina a criarem sua ferramenta, mas antes que pergunte-me por que falo deles numa era de orientação a objetos e tanta tecnologia de ponta.

image

Elementar meu caro Watson, digo padawan, existem milhões de linhas de código legado, inúmeras bases de dados esperando serem preparadas para migração através de ETL, a maior parte das pessoas que as construíram foram para a reforma e estão curtindo a boa vida de aposentados no Caribe.

Introdução 

image

Quando falamos de migrar software legado, primeiro pensamos nas regras de negócios, abrindo as fontes para extrair a logica e migra-la para uma nova ferramenta ou tecnologia, porem uma das áreas que mais engenho necessita são os dados.

O pobre analista se ve, frente a centenas de tabelas e milhões de registros, querys que retornam tuplas e mais tuplas de dados, mas o que serão? Qual a necessidade? Por onde começar? Como funciona? Socorro.

Seus problemas acabaram, existe uma pratica oriunda dos laboratórios da IBM e que aqueles dois gigantes ajudaram a refinar, melhorando e servindo de base para outros grandes mestres aprimorarem, estou falando do D.F.D.

O que é D.F.D.?

image

Eis que surge mais um anacronimo para a louca sopa de letrinhas da informática. Nunca me canso de repetir isso, essa sigla refere-se ao Diagrama de Fluxo de Dados, uma ferramenta que permite conhecer o Sistema, suas fronteiras, seus caminhos críticos, suas comunicações e repositórios de dados.

Mas que raio de ferramenta milagrosa è essa? Uma que serve de mapa, um guia das origens e destinos, possuindo vários níveis de detalhes, partindo do mais genérico até o menor detalhe, sendo uma das suas vantagens a simplicidade, possuindo poucos sinais ajudando a evitar confusões e interpretações fantasiosas.

Normalmente o DFD começa no nível 0, a visão macro descendo ao detalhe nos níveis 1 até o 5. Alguns termos serão obscuros, necessitando serem clarificados num dicionário de dados. Dependendo da instalação e das equipes de mantenimento dedicarem um tempinho para atualizarem-no.

Usando o Dicionário de Dados

image

Este documento como o próprio nome diz é um dicionário onde os principais termos e variáveis do Sistema estão armazenadas, num próximo artigo entrarei em maiores detalhes.

Como funciona o DFD?

image

Seu funcionamento é mais simples do que imaginamos, o pulo do gato dos seus criaturas foi a simplicidade, poucos símbolos, poucas regras. Martin & Estrin sabiam que quanto mais complexidade, menos utilizade, muitas regras iriam gerar confusão e a sua aceitabilidade seria reduzida.

Existem 4 símbolos que representam todo o conjunto de trbalho

• entidade externa

image um retângulo

• processo

image um circulo

• armazenamento de dados

image um cilindro retangular

• fluxo de dados

image uma flecha

O processo consiste em definir as fronteiras do Sistema, dentro destes limites teremos as Entidades Externas, que alimentam e recebem informações do Sistema, os Círculos que representam os processos internos de transformação da informação, os Cilindros que armazenam as informações em diversos estados e as flechas que indicam o controle do fluxo do processamento.

image

Qual a vantagem deste diagrama?

image

A vantagem é ser de fácil entendimento, onde um usuário do Sistema, mesmo sem possuir nenhum conhecimento de programação, pode ler e entender a origem, o destino, o processo da informação em cada etapa.

O usuário de posse deste MAPA saberá o contexto, onde ele esta e para onde vai, quais os processos alimentam o Sistema e quais manipulações importantes ocorrem na informação antes de ser entregue, podendo inclusive perceber falhas ocultas, afinal ele é o dono da informação e sabe melhor que nos, o real processamento.

O que é um diagrama de Contexto?

image

O DFD nível 0 também chamado de diagrama de contexto, pois é a visão mais macro e geral de todo o Sistema ou Processo. Sua principal missão é apresentar o sistema no mais alto nível, com todos os players envolvidos e limites bem definidos.

Tem que ser claro e de fácil entendimento, apresentando os principais inputs, outputs e processos internos e externos, para que o público externo possa conhecer e saber responder as perguntas básicas: O que, onde, por que e quando.

image

O que significa DFD 0 , DFD 1, DFD 2.etc ?

image

Esta numeração indica ao leitor o nível de detalhe e grau de aprofundamento do diagrama, partindo do nível 0 o mais geral possível até o nível N explodindo o detalhe ao menor nível.

Atualmente este diagrama esta sendo pouco usado e muitos DEVs desconhecem seu uso , meu artigo tem por objetivo resgatar e apresentar aos leitores os detalhes e auxiliar na documentação dos projetos, melhorando a qualidade do software.

Como usa-la nos dias atuais?

image

A maneira mais rápida é rascunhar em lápis e papel, depois convido aos aspirantes a Analistas de Sistemas a conhecerem o MS VISIO, ou qualquer outra das dezenas de ferramentas onlines de elaboração de fluxos de processos.

Não é um processo difícil é facilita enormente a projetar front-ends, aconselho aos parceiros de UX e UI, a debruçarem-se e conhecerem mais sobre o Diagrama de Fluxo de Dados, recomendação estendidas aos DBAs, afinal conhecer o processo de transformação na raiz, facilita encontrar erros e anomalias.

Um conhecimento importante, guarde sempre em mente, a força de uma corrente é determinada pelo seu elo mais fraco, então conheça o sistema, conheça a origem do dado, descubra suas transformações e seus principais processos.

Regra de ouro do DFD

image

  1. Um dado somente deve ser armazenado no sistema se passar por um processo
  2. Nao existe dados sem processamento e o armazenamento de dados obrigatoriamente deve ter sempre um fluxo, seja de entrada, seja de saída ou mesmo ambos.
  3. O processamento é o rei, transformando sempre os dados, por isso também obrigatoriamente tem que ter uma entrada e uma saíd
  4. Num DFD todo processo ou vai para outro processo ou um armazenamento de dados.
  5. A informação nao surge do nada, todo dado armazenado em um sistema obrigatoriamente deve passar por um processo.

Conclusão

O objetivo deste artigo foi apresentar ao jovem padawan, os conceitos fundamentais sobre o Diagrama de Fluxo de Dados, falar sobre seus símbolos e uso, deixo em aberto a utilização do UML e a evolução em novos diagramas.

A ideia foi resgatar uma ferramenta do passado e comentar sobre os benefícios do seu uso, alertando claro, que para alguns autores ela está obsoleta e sem vantagens ao DEV do século XXI, o que discordo bravamente. Afinal existem muitos sistemas legados, desenhados sob esta metodologia.

Espero ter ajudado ate o próximo artigo.

image

image Mais momento jabá, para distrair um nostálgico video do Natal em Itatiba, onde inúmeros voluntários percorrem as ruas da cidade distribuindo doces as crianças, fazendo a loucura aos miúdos, saudades eternas do Luizao, o papai Noel de Itatiba que inventou essa divertida festa nos anos 70, visite meu vídeo e veja para onde fui desta vez: https://www.youtube.com/watch?v=oAXwZYdo3d4

Bom curso a todos.

image https://www.linkedin.com/in/vagnerbellacosa/

image https://github.com/VagnerBellacosa/

Pode me dar uma ajudinha no YouTube?

image https://www.youtube.com/user/vagnerbellacosa

Compartilhe
Comentários (2)
Vagner Bellacosa
Vagner Bellacosa - 27/10/2021 15:37

Junior, muito obrigado pelas palavras carinhosas. Vlw mesmo meu irmao. Bom curso a ti.

Junior Marques
Junior Marques - 23/10/2021 19:31

Vagner.. O seu artigo é de uma riqueza. Leve e de uma clareza que permitiu um perfeito entendimento de um tema que desconhecia. Eu que agradeço por compartilhar esse conhecimento, e pela gentileza que teve com o meu modesto artigo.