Você está na página 1de 3

ENGENHARIA DE REQUISITOS - E XERCÍCIOS PRÁTICOS

DIAGRAMAS DE FLUXO DE DADOS


Os dois elementos essenciais da técnica de modelação de requisitos por Diagramas de Fluxo de Dados
(DFDs) são:

• Processos (por vezes designados transformações, uma vez que transformam dados, ou funções,
já que correspondem a algo que o sistema faz);
• Os fluxos de dados entre os processos.

A figura seguinte exemplifica a notação usada:

fluxo-de-dados-1
processo1 processo2 terminador data store

Os nomes dos processo têm de ser bem escolhidos, i.é, devem fornecer uma indicação sucinta daquilo que
fazem. Por isso assumem a forma de uma declaração de função, centrando-se num verbo transitivo e no seu
objecto. Bons exemplos de nomes para processos são:

• Validar pedido do utilizador;


• Calcular contribuição;
• Ordenar transacções;
• Obter leitura do indicador de pressão;
• Mostrar a velocidade média.

Note também que os nomes devem ser o mais precisos quanto for possível. Quanto aos nomes dos fluxos de
dados, estes devem reflectir o facto de serem peças de informação, e como tal, devem ser centrados num
substantivo. Bons exemplos são:

• Pedido do utilizador;
• Pedido do utilizador validado;
• Contribuição;
• Transacções não-ordenadas;
• Leitura da pressão.

Tal como acontece com os nomes dos processos, estes devem transmitir uma quantidade de informação
razoável, mas existe a preocupação de não sobrecarregar o diagrama com demasiado texto. No mínimo,
cada fluxo de dados deve ser identificado univocamente através de uma entrada no dicionário de dados (ver
secção seguinte).

Exemplos de erros comuns:

• Fluxos de dados que na realidade são condições (e.g. “se a pressão for válida”);
• Fluxos de dados que na realidade são processos (e.g. “saída dos resultados”);
• Processos que na realidade são estados (e.g. “sistema inicializado”);
• Processos que na realidade são dados (e.g. “resultados ordenados”);

Sistemas externos (que podem incluir os utilizadores) podem também ser mostrados num DFD e são
conhecidos como terminadores. Os terminadores podem ser divididos entre:

• Fontes (que fornecem dados);


• Consumidores (que consomem dados);

Contudo, é muito frequente a existência de terminadores que fazem as duas coisas. Há ainda um outro nó
possível nos DFDs: os armazéns de dados (data stores), que são representados por duas linhas horizontais
paralelas. Estes são distintos dos processos, porque são repositórios passivos de dados (usualmente
correspondentes a um ficheiro ou base de dados), e também porque não realizam qualquer transformação
de dados.

Para modelar sistemas muito grandes, é possível subdividir em hierarquias de DFDs, conforme esta figura
explica:

Aplicam-se contudo as seguintes regras:

• Os fluxos de dados da fronteira devem encaixar de “pai” para “filho”;


• Os data stores devem ser colocados no nível mais baixo possível.

Existe ainda um conjunto de regras gerais à modelação por DFDs:

• Os dados não podem fluir entre data stores (os stores são passivos);
• Por convenção, os fluxos de dados entre terminadores não são mostrados (já que não afectam
directamente o sistema);
• Processos e data stores usualmente têm pelo menos uma entrada e pelo menos uma saída.
O dicionário de dados, que faz sempre parte de um documento de requisitos (também pode ser designado
simplesmente por glossário), costuma ser expresso em notação BNF. A tabela seguinte sumariza os simbolos
lógicos usados na definição de expressões BNF:

Símbolo Significado
, É seguido de (“E”)
| OU exclusivo
{a} 0 ou mais ocorrências de a (repetição)
[a] 0 ou 1 ocorrências de a (opcionalmente)
() Delimita um grupo

Comentários são expressos entre parêntesis com asteriscos: (* comentário *).

1. Desenhe um DFD para o seguinte sistema: um sensor de pressão fornece os valores para o software
de controlo de uma fábrica. O sistema deve aceitar uma leitura de pressão e deve processar também
a verificação dessa leitura. Quando a leitura é validada pelo respectivo processo, o sistema deve
mostrar o valor numa unidade de display.
2. Modele usando DFDs o proceso de compras no supermercado Pinga Doce. Concentre-se apenas nas
etapas de passagem do produto pelo caixa, pagamento e empacotamento das mercadorias.
3. O clube de vídeo Taka-aí tem à volta de 1500 sócios. Cada vez que um sócio quer requisitar um
filme, após escolher, deve dirigir-se ao balcão indicando o número de sócio e o(s) nome(s) do(s)
filme(s). O funcionário verifica se existem o(s) vídeo(s) disponíveis e, em caso afirmativo, entrega-os
juntamente com uma cópia da requisição. O original fica guardado no clube. De acordo com o
número de filmes, o cliente paga a quantia respectiva. Quando o filme for devolvido verifica-se o
prazo de entrega, pagando o cliente uma multa quando o prazo for excedido.
4. Defina um dicionário de dados para a seguinte descrição do domínio do problema: um pedómetro é
um pequeno aparelho electrónico usado por uma pessoa a fim de calcular quanto é que essa pessoa
já andou ou correu. Conta o número de passos dados e converte a distância segundo a fórmula:
distância :== nº passos x dimensão do passo / 100 000.
5. Para o pedómetro, complete a lista de requisitos com mais 7 requisitos:
R1: o aparelho deve ser pequeno (máx. 60x60x20mm) e leve (máx. 75g).

Você também pode gostar