diagrama de fluxo de dados (dfd)

Post on 01-Jan-2016

50 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Diagrama de fluxo de dados (DFD). Definição:. É um modelo que permite representar o sistema como uma rede de processos, salientando as funções que precisam ser implementadas e os fluxos dos dados manipulados por estas funções. Diagrama de fluxo de dados (DFD). Representação Gráfica: Processos - PowerPoint PPT Presentation

TRANSCRIPT

Diagrama de fluxo de dados (DFD)

É um modelo que permite representar o sistema como uma rede de processos, salientando as funções que precisam ser implementadas e os fluxos dos dados manipulados por estas funções.

Definição:

Diagrama de fluxo de dados (DFD)

Representação Gráfica:

• Processos

• Fluxos de dados

• Depósitos de dados

• Entidades externas

DFD• O DFD é composto por processos, depósitos de dados,

fluxos de dados e entidades externas.

Clientes

1.Receberpedido

3.Recolher

pagamentos

entidade externa ou terminador processo

depósito de dados

fluxos de dados

Armazém

Clientes

pedido

Pedido inválido

factura

Detalhes da fatura,nome do cliente

pedidos

Detalhes de pedido

2.Entregar livros

Dados-livros

Guia de remessa

clientes

Detalhes de cliente

pagamentos

fatura

4.Registarcliente

Regras para construir DFD’s

• Escolher nomes significativos para os processo, fluxos, entidades e depósitos• Numerar os processos• Redesenhar os DFD’s tantas vezes quantas forem necessárias• Evitar DFD’s complexos• Certificar-se de que o DFD é internamente consistente

– Evitar processos que tenham entradas e nenhuma saída (e vice-versa)

DFD: Processo

• Função, transformação• Transforma entradas em saídas• Nome: numeração + verbo + objeto• Exemplos:

1. Calcular

Juros

1.Calcular

Juros

DFD: Fluxo (1)

• Usado para descrever movimento de informação de um componente do sistema para outro

• Exemplos:

2. Calcular

média

Valor X

Valor Y

Valor Z

média 3.ValidarNúmero

Nºtelefone

Nº inválido

Nº válido

DFD: Fluxo (2)

• Fluxo de diálogo

• Fluxo divergente

Gerir Informação

Preencherformulário

formulárioformulário preenchido

Validarpedidos

Gerarfatura

Gerar relatórios

Detalhes de pedido

DFD:Depósito de Dados

• Arquivos, bases de dados

• CD’s, microfichas, microfilme

• Um fluxo para um depósito: atualizar, gravar, remover

Gerarrelatórios

Registarcliente

clientesdetalhes

DFD: Entidades Externas

• Estão fora do sistema• O analista não está em posição de mudar o conteúdo das

entidades• Os fluxos conectando a entidade aos processos

representam a interface entre o sistema e o ambiente

Construção de DFD Preliminar

1. Um processo (ou +) um evento da lista de eventos.

2. O nome do processo deve estar de acordo com a resposta que o sistema deve dar ao evento.

3. Definir fluxos de dados de entrada e saída. O processo deve ser capaz de produzir a resposta correta.

4. Usar os depósitos de dados necessários para guardar a informação que será depois usada por outros processos.

5. Verificar a coerência entre este DFD e o diagrama de contexto.

Observações:

1. Um evento pode causar várias respostas

Definir um processo por resposta (se forem independentes)

pedidode cliente

Produzirfatura

fatura

Emitirconfirmação

pedido

pedido confirmado

Exemplo:

Construção de DFD Preliminar

2. Vários eventos podem causar a mesma resposta..

Definir um só processo

Exemplo:

Produzirguia de

remessa

Pagamento p/ cartãode crédito

Pagamento p/dinheiro

guia de remessa

Construção de DFD Preliminar

3. Agrupamento de processos: • Formar níveis de maior abstração.• cada agrupamento de processos deve envolver respostas

(processos) relacionadas. Isto significa que tais processos se relacionam por função ou pelos mesmos dados

• Regra de Miller: 7 ± 2 processos.

Construção de DFD Preliminar

Dicionário de dados

• Descreve o significado dos fluxos de dados e dos depósitos de dados

• Descreve a composição de dados agregados.– Ex.: endereço

• Especificar os valores e unidades relevantes • Descrever os relacionamentos entre depósitos de dados

(diagramas E/R)

Notação

• = é composto por• + e• () opcional• {} iteração• [] selecionar uma das várias alternativas• ** comentário• @ chave de um depósito• | separa alternativas quando se usa []

Dicionário de dados - Exemplos:

• Nome = título + primeiro-nome + apelido• título = [Sr. | Sra.| Prof.| Dr.| Eng.]• primeiro-nome = 1{caracter-válido}• apelido = 1{caracter-válido}• caracter-válido = [A-Z | a-z | ‘ | - | ]• endereço = * ainda não definido*

Dicionário de dados (cont.)

• Dados elementares mais nenhuma decomposição necessária– Ex.: peso, altura

• Dados opcionais– endereço-cliente = (endereço-de-entrega) + (endereço-de-

cobrança)

– endereço-cliente = [endereço-de-entrega | endereço-de-cobrança | endereço-de-entrega + endereço-de-cobrança]

– endereço-cliente = endereço-de-entrega + (endereço-de-cobrança)

Dicionário de dados (cont.)

• Iteração– pedido = nome-cliente + endereço-de-entrega + {item}

– pedido = nome-cliente + endereço-de-entrega + 1{item}10

– a = 1{b}

– a = {b}10

– a = 1{b}10

– a = {b}

• Selecção– sexo = [m | f ]

– tipo-do-cliente = [governo | indústria | universidade | outro]

Dicionário de dados (cont.)

• Sinónimos– freguês = * sinónimo de cliente*

– Evitar seu uso

• Avaliação do DD– todos os dados do DFD estão definidos?

– Todos os elementos do elemento composto foram definidos?

– Há elementos repetidos?

– Há elementos que não existem do DFD?

DFD - Nivelação

• Serve para controlar a complexidade do sistema• Serve p/ organizar o DFD completo em níveis onde cada

nível dá mais detalhe do nível superior• O DFD de nível mais alto é o diagrama de contexto

System1

3

2

3.1

3.3

3.2

3.4

FAQ sobre Nivelação

• Quantos processos por nível?– 7 2 (Regra de Miller)

• Quantos níveis?– Sistemas simples: 2 a 3 níveis

– Sistemas de médio porte : 3 a 6 níveis

– Sistemas de grande porte : 5 a 8 níveis

• 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

FAQ sobre Nivelação (cont.)

• Como mostrar os diferentes níveis ao utilizador?– Depende do tipo de utilizador

• Executivos olham pro diagrama de contexto ou DFD de nível 0

• Operadores olham apenas pra parte do sistema que lhe diz respeito

• 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

FAQ sobre Nivelação

• 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

1

2

Depósito 1

1.1 1.2Depósito 1

Depósito 1

2.22.1

FAQ sobre Nivelação

• Como se faz a nivelação de facto?– O desenvolvimento do DFD não é necessariamente top-

down

– Abordagem mista: top-down + bottom-up

– Utilizar a lista de eventos para criar a 1ª versão do DFD:• Pode ser utilizada para criar DFDs de nível mais alto

• Pode ser utilizada para criar DFDs de nível mais baixo

FAQ sobre Nivelação

– Cada grupo de processos envolve dados relacionados entre si

– Se um grupo de processos do DFD preliminar se refere a um depósito (e só este grupo) então pode-se criar um processo de nível mais alto que esconda este depósito

D 1D 3

D 2D 2

top related