Mostrar mensagens com a etiqueta fluxo de dados. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta fluxo de dados. Mostrar todas as mensagens

sexta-feira, 11 de julho de 2025

O que é um Diagrama de Fluxo de Dados.

Bellacosa Mainframe falando sobre ferramentas de desenvolvimento de sistemas DFD

O que é um Diagrama de Fluxo de Dados.

4,349 followers

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

Salve jovem padawan, mais uma vez faremos 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.

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.

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 mediante a ETL, a maioria das pessoas que as construíram foram para a reforma e estão curtindo a boa vida de aposentados no Caribe.

Introdução

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


O pobre analista se vê, frente a centenas de tabelas e milhões de registros, queries 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 prática 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.?

Eis que surge mais um acrônimo 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

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?

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

Existem 4 símbolos que representam todo o conjunto de trabalho.

• entidade externa

Article content

um retângulo

• processo

Article content

um círculo

• armazenamento de dados

Article content

um cilindro retangular

• fluxo de dados

Article content

uma flecha

O processo consiste em definir as fronteiras do Sistema, dentro destes limites teremos as Entidades Externas. Que pro sua vez 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.

Article content


Qual a vantagem deste diagrama?

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. Descobrindo 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?

Article content

O DFD nível 0 também chamado de diagrama de contexto por ser 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 o público externo poder conhecer e saber responder às perguntas básicas: O que, onde, porque e quando.

Article content


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

Article content



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 usá-la na atualidade?

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 enormemente 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.


  1. Um dado somente deve ser armazenado no sistema se passar por um processo
  2. Não 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ída.
  4. Num DFD todo processo ou vai para outro processo ou um armazenamento de dados.
  5. A informação não 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 até o próximo artigo.


Article content


Article content

Mais momento jabá, para distrair um nostálgico vídeo 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 Luizão: 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.


Article content

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


Article content

https://github.com/VagnerBellacosa/


Pode me dar uma ajudinha no YouTube?


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