Centro Universitário Franciscano – UNIFRA
Disciplina de Requisitos de Software
Requisitos de
Software
Análise Estruturada de Sistemas
Modelos da Análise Estruturada
Modelo ER D F D Especificação de Processos Dicionário de Dados
Análise Estruturada de Sistemas
Modelos da Análise Estruturada
D F D Modelo ER Especificação de Processos Dicionário de Dados
1 - Fornecem uma indicação de como os dados são transformados;
2 – Mostram as funções e subfunções que transformam o
Diagrama de Fluxo de Dados - DFD
“Principal ferramenta de planejamento para um
sistema de informação. O DFD mostra a fronteira do
sistema: aquilo que não for uma entidade externa
será interna. O DFD é singularmente importante
porque é o único documento que mostra todas as
relações entre os dados (depósitos e fluxo de dados) e
os processos (funções) que transformam estes
dados.”
“Um Diagrama de Fluxo de Dados é uma
representação em rede de um sistema. O sistema pode
ser automatizado, manual ou físico. O Diagrama de
Fluxo de Dados retrata o sistema em termos de suas
partes componentes, com todas as interfaces entre os
componentes indicadas.”
[Tom de Marco, 1989]
Diagrama de Fluxo de Dados - DFD
“Um Diagrama de Fluxo de Dados é uma ferramenta
de modelagem que nos permite imaginar um sistema
como uma rede de processos funcionais, interligados
por „dutos‟ e „tanques de armazenamento‟ de dados.”
[Edward Yourdon, 1990]
Diagrama de Fluxo de Dados - DFD
Outros termos utilizados para definir diagrama de fluxo de
dados:
Diagrama de Bolhas (ou Gráfico de Bolhas);
Modelo de Processo;
Gráfico de Fluxo de Dados;
Diagrama de Fluxo de Trabalho;
Modelo Funcional;
“Uma representação do que está acontecendo por
aqui”;
Componentes de um DFD:
Entidades
Externas,
Fronteiras
do
Sistema,
Terminadores, Terminais, Fonte ou Destino;
Processos, Bolhas ou Funções;
Fluxo de Dados; e
Depósitos de Dados , Arquivo ou Armazém de Dados;
Processo
Entidade
Externa
Fluxo de Dados
D1 Depósito de Dados
Componentes de um DFD - Entidades Externas
origens e/ou destinos de fluxos de dados para dentro e
fora do sistema. Elas estão, por definição, fora do
sistema;
podem ser representadas fisicamente por uma pessoa, ou
um grupo de pessoas, ou por um outro sistema;
CLIENTE
CLIENTE
Componentes de um DFD - Entidades Externas
Representado por um quadrado ou retângulo;
Alguns autores utilizam dois lados sombreados;
Componentes de um DFD - Entidades Externas
Por questões de clareza pode-se duplicar uma entidade
externa. Para isso, coloca-se um traço diagonal no canto
inferior direito do símbolo da entidade externa (se quiser,
coloca-se o número de entidades externas iguais).
CLIENTE
CLIENTE
CLIENTE
Componentes de um DFD - Entidades Externas
Aspectos importantes a serem lembrados sobre EE:
são externas ao sistema que estamos modelando; os fluxos
que
interligam
as
entidades
externas
aos
diversos
processos ou depósitos de dados de nosso sistema
representam a interface entre o sistema e o mundo
externo;
Diagrama de Fluxo de Dados - DFD
Componentes de um DFD - Entidades Externas
Aspectos importantes a serem lembrados sobre EE:
a entidade externa está fora do domínio das modificações;
qualquer relacionamento existente entre entidades externas
não será mostrado no DFD.
Diagrama de Fluxo de Dados - DFD
Componentes de um DFD - Processos
representa a transformação das informações (dos dados);
transforma as entradas em saídas;
representado graficamente por um círculo. Alguns autores
utilizam ovais, retângulos ou quadrados com os cantos
arredondados;
dentro do círculo é descrito o processo que está sendo
Cadastrar
Cliente
Cadastrar
Cliente
Cadastrar
Cliente
Diagrama de Fluxo de Dados - DFD
Componentes de um DFD - Processos
Diagrama de Fluxo de Dados - DFD
Componentes de um DFD - Fluxo de Dados
representa
os
dados
em
movimento,
ou
seja,
a
transferência de informações de um ponto a outro no
sistema;
representado graficamente através de uma seta, que entra
ou sai de um processo;
normalmente, cada seta de fluxo de dados possui um
nome para descrever a estrutura dos dados.
Preparar
Bolo
leite ovos açúcar farinhaPreparar
Bolo
Ingredientes do BoloDiagrama de Fluxo de Dados - DFD
Componentes de um DFD - Fluxo de Dados
Cadastrar
Cliente
CLIENTE
Dados do cliente Cliente cadastradoCadastrar
Cliente
CLIENTE
Nome, RG, Endereço, Telefone Cliente cadastradoDiagrama de Fluxo de Dados - DFD
Componentes de um DFD - Fluxo de Dados
Cadastrar Cliente CLIENTE Dados do cliente comprovante de cadastro Cadastrar CLIENTE Dados do cliente
Componentes de um DFD - Fluxo de Dados
ocasionalmente mais de uma estrutura de dados podem
passar pela mesma seta, sendo interessante ter setas com
duas pontas, ou duas setas.
Diagrama de Fluxo de Dados - DFD
Componentes de um DFD - Depósito de Dados
armazena os dados gerados nos processos;
são os arquivos ou tabelas de um banco de dados;
representado
graficamente
através
de
duas
linhas
paralelas, por um retângulo com a lateral direita em
aberto, ou ainda, por um círculo ovalado.
Cliente
D1Cliente
Cliente
Diagrama de Fluxo de Dados - DFD
Componentes de um DFD - Depósitos de Dados
Cliente
D1 2 D1
Cliente
Diagrama de Fluxo de Dados - DFD
Componentes de um DFD - Depósitos de Dados
Pode-se duplicar um depósito de dados, de forma a
deixar o modelo mais claro. Para isto, indica-se a
esquerda do depósito (em uma espécie de triângulo) o
número de ocorrências do mesmo;
Cadastrar
Cliente
CLIENTE
Dados do cliente(Nome, RG,
Endereço, Telefone)
Cliente
D1
Diagrama de Fluxo de Dados - DFD
Diretrizes para a Elaboração de DFD
Escolher nomes significativos para os processos, fluxos,
depósitos e entidades externas;
Numerar os processos;
Refazer o DFD tantas vezes quantas forem necessárias até
obter uma boa estética;
Evitar DFD complexos demais;
Certificar-se de que o DFD seja internamente consistente
além de manter a consistência com os outros modelos.
Diagrama de Fluxo de Dados - DFD
Diretrizes para a Elaboração de DFD - Escolher nomes
significativos para os processos, fluxos, depósitos e entidades
externas
Um bom método para nomes de processos é utilizar um
verbo (modo infinitivo) e um objeto;
cadastrar cliente;
validar número de telefone;
Os
nomes
escolhidos
devem
originar-se
de
um
vocabulário conhecido pelo usuário, daí a importância
Diagrama de Fluxo de Dados - DFD
Diretrizes para a Elaboração de DFD - Numerar os processos
Os processos podem ser numerados de forma a serem
identificados mais depressa;
Não significa que eles tenham uma seqüência de
execução entre si;
Diagrama de Fluxo de Dados - DFD
Diretrizes para a Elaboração de DFD - Refazer o
DFD tantas vezes quantas forem necessárias até obter
uma boa estética
refazer até que:
esteja tecnicamente correto;
seja aceitável pelo usuário; e
bem desenhado, de forma que esteja apresentável:
• tamanho e forma das bolhas;Diagrama de Fluxo de Dados - DFD
Diretrizes para a Elaboração de DFD - Evitar DFD
complexos demais;
modelar corretamente as funções que um sistema deve
executar, porém com
facilidade de interpretação e
agradabilidade aos olhos;
não criar um DFD com demasiados processos, fluxos,
Diagrama de Fluxo de Dados - DFD
Diretrizes para a Elaboração de DFD - Certificar-se
de que o DFD seja logicamente consistente
evitar os “poços sem fundo”, ou seja, processos que
têm entradas mas não tem saídas;
evitar “bolhas com geração espontânea”, ou seja,
processos que têm saídas mas não entradas;
cuidar os fluxos e processos sem identificação;
Diagrama de Fluxo de Dados - DFD
Níveis de DFD - Modelo ou Diagrama de Contexto
DFD de nível mais alto;
Representa o sistema como uma única bolha;
Os fluxos de dados mostram as interfaces entre o
Software
Entidade
Externa
Entidade
Externa
Entidade
Externa
Entidade
Externa
Entidade
Externa
Diagrama de Fluxo de Dados - DFD
Níveis de DFD - Modelo de Contexto
Níveis de DFD - DFD de Nível 0
DFD de nível imediatamente abaixo do diagrama de
contexto;
Representa a visão de mais alto nível das principais
funções do sistema, bem como as principais interfaces
entre essas funções;
É interessante a numeração dos processos, caso seja
necessário descrever cada bolha em um nível de DFD
mais completo (nível inferior);
Sistema Diagrama de Nível 0 Diagrama de Contexto 1 4 3 2 3.1 3.4 3.2
Diagrama de Fluxo de Dados - DFD
Tipos de DFD - DFD em vários níveis
Diagrama de Fluxo de Dados - DFD
Exemplo:
“Um berçário deseja informatizar suas operações.
Inicialmente, deseja manter um cadastro de todos as mães
dos bebês, com: código, nome e endereço. Precisa manter
um cadastro de todos os médicos que fazem partos,
contendo: código, nome e telefone celular do mesmo. Para
os bebês, é preciso manter: código, nome, data de
Diagrama de Fluxo de Dados - DFD
Exemplo:
Processos:
Cadastrar mãe;
Cadastrar médico;
Cadastrar bebê.
Enfermeira
Cadastrar Cadastrar médico Médico D2 Cadastrar Bebê Mãe D1 Bebê D3 Dados da mãe Dados do médico Dados do BebêDiagrama de Fluxo de Dados - DFD
CodMae
Diagrama de Fluxo de Dados - DFD
Exemplo:
“Agora, o berçário deseja manter um registro de todas as
medicações tomadas por um bebê. Para isto, precisa
manter um cadastro de todos os medicamentos e de todos os
enfermeiros do hospital. Para uma medicação é necessário
saber o bebê que tomou o medicamento, o medicamento
tomado e o enfermeiro que aplicou tal medicamente, junto
Diagrama de Fluxo de Dados - DFD
Exemplo:
Processos:
Cadastrar mãe;
Cadastrar médico;
Cadastrar bebê;
Cadastrar Medicamento;
Cadastrar enfermeiro;
Aplicar medicação.
Enfermeira
Cadastrar médico Médico D2 Cadastrar Enfermeiro Enfermeiro D3 Dados da mãe Dados do médico Dados do enfermeiro Cadastrar bebê Cadastrar medicação Dados do Bebê Dados da medicação Medicamento D1 Medicação D1 Dados do medicamentoDiagrama de Fluxo de Dados - DFD
CodEnfermeiroDFD - Exercício1
“Uma livraria virtual está sendo informatizada para controlar suas
atividades. Em primeiro lugar, deseja manter um cadastro de seus
clientes, onde irá constar: o código do cliente, o nome, o seu RG e a sua
data de nascimento. Os livros também serão cadastrados, sendo que
conterão as seguintes informações: ISBN (único), título, editora, preço
e área científica do mesmo. Para as áreas científicas, a livraria mantém
uma lista, que pode ser atualizada a qualquer momento, com os
seguintes dados: código da área e descrição. Os clientes, no momento
de seu cadastro, apresentam um lista de áreas científicas de sua
preferência. Para as encomendas feitas, é necessário manter: o número
da encomenda, o cliente que fez a encomenda, a data da encomenda e o
valor total encomendado. Em cada encomenda podem ser solicitados
diversos livros, sendo que para cada livro encomendado, é necessário
“A MTV está informatizando sua programação. Para isto deseja manter alguns cadastros básicos. Um deles é o cadastro de todos os seus programas, que deve conter: o código do programa, o nome e a data de estréia. Além disso, é importante manter um cadastro de todos os funcionários que trabalham lá. Para eles, é necessário saber: o número da carteira profissional (único), seu nome e sobrenome, nome fantasia (caso seja um apresentador), data de nascimento, RG, sexo (F/M) e sua função na MTV. Existe uma lista de funções, que pode ser atualizada quando necessário. Cabe salientar que cada funcionário possui apenas uma função. Para cada função, basta saber o código, nome e salário pago pela função. É importante manter uma relação de todos os vídeo clipes que passam em um programa. Para estes, é necessário saber apenas o código, o nome do vídeo clipe(música), o nome da banda(ou cantor ou cantora) que toca e o tempo de duração. Um vídeo clipe pode passar em diversos programas, sendo necessário saber o dia e a hora em que um vídeo clipe passa em um determinado programa. Para finalizar, cabe salientar que um funcionário
Funcionário MTV
Cadastrar Função
Dados Função Função
Cadastrar Funcionário Dados Funcionário CodFunção Cadastrar Programa Funcionário Programa CodPrograma Cadastrar Programa Dados Programa Dados Vídeo Clipe Cadastrar Programa Dia, Hora CodVideo CodPrograma
"Uma pizzaria deseja informatizar suas operações. Em primeiro lugar, deseja manter um cadastro de todos os tipos de pizzas, contendo informações tais como identificador, nome, descrição e preço da mesma. Em uma pizza são utilizados diversos ingredientes, sendo que a pizzaria deseja manter um controle dos mesmos, bem como as quantidades e medidas utilizadas de cada ingrediente em cada pizza. Cabe salientar que um ingrediente pode ser utilizado em diversas pizzas. A pizzaria deseja manter um controle de seus clientes, guardando algumas informações tais como: identificador, nome, endereço e telefone residencial. Quando um cliente faz um pedido, são armazenadas informações como: número do pedido, cliente do pedido, data do pedido, hora em que foi feito o pedido, hora em que foi entregue o pedido, valor total, o motoqueiro que entregou o pedido e as pizzas pedidas, sendo que para cada pizza pedida, é necessário armazenar a quantidade. A pizzaria mantém um cadastro de todos os seus motoqueiros, mantendo dados como identificador, nome, telefone celular e endereço. "
Funcionário Pizzaria Cadastrar Ingrediente Ingrediente Dados Ingrediente Cadastrar Pizza Pizza IngredPizza CodIngrediente Dados Pizza Qtde Medida Dados Pizza CodPizza, CodIngrediente, Qtde, Medida Cadastrar Pedido Cadastrar Motoqueiro Cadastrar Cliente PizzaPedido Cliente Motoqueiro CodPizza CodCliente Dados Motoqueiro Dados Cliente Dados Pedido Qtde Dados Pedido CodPedido CodPizza Qtde CodCliente