A maior rede de estudos do Brasil

Grátis
37 pág.
Modelagem de Dados

Pré-visualização | Página 1 de 2

Prof: Jailton Cardoso da Cruz
A Abordagem Relacional
Prof. Jailton Cardoso
 A meta do projetista é produzir um modelo ou
representação de qualquer entidade que será
construída posteriormente.
 O processo combina:
◦ Intuição
◦ Julgamento baseado em experiências
◦ Heurísticas
◦ Critérios de julgamento da qualidade 
Prof. Jailton Cardoso
 Atividades Técnicas
◦ Projeto
 Projeto de dados
 Projeto Arquitetural
 Projeto Procedimental
◦ Codificação
◦ Testes
Prof. Jailton Cardoso
 Projeto de Dados
◦ Transforma o modelo de domínio de informação criado
durante a análise nas estruturas de dados que serão
exigidas para se implementar o software
 Projeto Arquitetural
◦ Define o relacionamento entre os grandes componentes
estruturais do programa
 Projeto Procedimental
◦ Transforma os componentes estruturais numa descrição
procedimental do software
Prof. Jailton Cardoso
Prof. Jailton Cardoso
 Modelagem de Dados
◦ Consiste da aplicação de técnicas para, a partir dos requisitos do
sistema, desenvolver o projeto do modelo de dados necessário
para armazenar os dados que darão suporte ao desenvolvimento
do modelo de processos
◦ Neste momento não estaremos preocupados nos processo e sim
nos objetos que compões este minimundo, identificando os
elemetos conceituais que são as entidades, relacionamentos e os
atributos das entidades.
Prof. Jailton Cardoso
 Modelagem de Dados
◦ Este processo, devido sua característica de ser independente de
software ou de hardware facilita a implementação da
independência física e lógica de dados.
◦ Desenvolver o modelo de dados é um processo criativo e, na
minha modesta opinião, o mais importante no projeto de um
sistema. É como criar música e poesia.
Prof. Jailton Cardoso
...
“Só queria discutir um ponto: a relação entre poesia e música 
no ato criativo. Há músico que faz a melodia e depois o poeta 
“coloca” a letra. Vinicius de Moraes teria feito isso com Tom 
Jobim, com Baden Powell e até com compositores clássicos. 
Pode ou não pode? 
Em sentido contrário, o músico “musicaliza” o poema como 
fez Joan Manuel Serrat com os versos esplêndidos de Antonio 
Machado e o nosso Fagner fez com um texto de Cecília 
Meireles.” ...
Disponível em: http://www.antoniomiranda.com.br/editorial/letra_d_musica.html
Prof. Jailton Cardoso
Prof. Jailton Cardoso
 Estratégias para Desenvolvimento do Projeto de Dados
 Podemos desenvolver o modelo de dados a partir de 
três elementos principais:
◦ Descrição Funcional
◦ Definição de Arquivo
◦ Documento
Prof. Jailton Cardoso
 Neste caso iremos criar o modelo de dados a partir de
uma descrição narrativa de processo, por meio escrito
ou falado, ou de algum processo do negócio.
Prof. Jailton Cardoso
Descrição Funcional
01. Uma determinada empresa fornece produtos e serviços de informática. Clientes fazem
02. pedidos de material ou serviços através de um formulário de pedidos. Cada cliente 
03. é identificado por um código pelo qual podemos ter acesso aos seus dados tais como
04. nome, endereço (rua, numero, bairro, cidade, cep), telefone, o tipo de cliente, se 
05. pessoa física ou jurídica, o número do CPF ou CNPJ e seu limite de crédito. Nos 
06. pedidos devemos informar os dados do cliente, o endereço de entrega, o tipo de frete
07. (CIF - por conta do cliente ou FOB – por conta do fornecedor), os dados da 
08. transportadora. Os itens do pedido devem ser detalhados, informando o código do 
09. produto (material ou serviço a ser fornecido), o nome do produto, a quantidade, 
10. unidade de medida o valor unitário e o valor total do referido item. O pedido deve ser 
11. totalizado no campo “Total do Pedido”. Informar também o código e o nome do 
12. vendedor a data do pedido e o prazo de entrega.
Prof. Jailton Cardoso
 Questões
◦ ¿ Sobre quais os objetos queremos manter informações
◦ ¿ Quais as informações de interesse do usuário. 
Devemos encontrar no caso descrito questões tais 
como:
 ¿ Quais produtos foram comprados por determinado cliente
 ¿ Qual o total de venda de um determinado vendedor
 ¿ Quais pedido foram transportados por determinada 
transportadora
 ¿ Quais os serviços pedidos
 ¿ Para qual(ais) cidade(s) foram efetuadas vendas
Prof. Jailton Cardoso
 Entidades: 
◦ Linha 1. Produtos e clientes (objeto 
concreto), serviços (objeto abstrato)
◦ Linha 2. Pedido (documento)
◦ Linha 4. Bairro, cidade (locais)
◦ Linha 8. Transportadora (pessoa jurídica)
◦ Linha 10. Unidade de medida (evento legal)
◦ Linha 12. Vendedor (pessoa física)
Prof. Jailton Cardoso
 Relacionamentos: 
◦ Linha 1,2: Clientes fazem pedidos
◦ Linha 7,8: Transportadora transporta
pedido
◦ Linha 8,9:Pedido possui produtos
◦ Vendedor emite pedido
Prof. Jailton Cardoso
Transportadora
Transporta
1
N
Cliente
Faz
1
N
Emite Vendedor
N
1
Pedido
Produto Composto
N
N
Prof. Jailton Cardoso
 Neste caso iremos criar o modelo de dados a partir de
uma descrição de um arquivo de um sistema legado
utilizando o processo de normalização.
◦ Modelo Relacional
◦ Sistema de Arquivo
◦ Formato TXT
Prof. Jailton Cardoso
*NUM_PEDIDO
COD_CLIENTE
NOME_CLIENTE
TIPO_CLIENTE
CGC_CPF_CLIENTE
ENDER_CLIENTE
TEL_CLIENTE
LIMITE_CRED_CLIENTE
ENDERECO_ENTREGA
TIPO_FRETE
TIPO_PEDIDO
QTDE_PRODUTO
#COD_PRODUTO
#NOME_PRODUTO
#SIGLA_UNIDADE_MEDIDA_PRODUTO
#UNIDADE_MEDIDA_PRODUTO
#QTD_PRODUTO
# VALOR_UNITARIO
#VALOR_TOT_PRODUTO
VALOR_TOT_PEDIDO
COD_VENDEDOR
NOME_VENDEDOR
COD_TRANSPORTADORA
NOME_TRANSPORTADORA
* Indica chave primária
# indica atributo multivalorado
Prof. Jailton Cardoso
 Conceito proposto E. F. Codd (1972)
 Processo matemático formal
 Fundamentado na teoria dos conjuntos
Prof. Jailton Cardoso
 Objetivo: criar um conjunto de entidades e 
relacionamentos que se apresentem livre de 
problemas tais como:
◦ Grupos repetitivos (atributos ou conjunto de 
atributos multivalorados)
◦ Anomalias de atualização
◦ Dependência funcional (parcial, em relação à 
chave primária composta, ou transitiva)
◦ Redundância de dados
◦ Garantir a unicidade dos dados
◦ Permitir uma representação semântica do modelo
Prof. Jailton Cardoso
 Anomalias de atualização e consulta
◦ Anomalia de inclusão
◦ Anomalia de remoção
◦ Anomalia de atualização
◦ Anomalias de consulta
Prof. Jailton Cardoso
 Vamos utilizar o exemplo para ilustrar o 
processo de normalização utilizando uma 
descrição de um arquivo de nota fiscal
 Onde utilizaremos a seguinte notação:
* chave primária
# item repetitivo (multivalorado)
Prof. Jailton Cardoso
 ¿ Quando ocorre – ocorre quando uma entidade
apresenta atributos ou grupos de atributos
repetitivos.
 ¿ Por que – uma tupla deve ser ATÔMICA, ou seja
indivisível.
 ¿ Como resolver –
◦ Eliminando o atributo ou grupo de atributos
multivalorados.
◦ Criando uma nova entidade com o atributo ou grupo de
atributos multivalorados, onde a chave primária da
entidade original fará parte da chave da entidade criada
além de outro(s) atributo(s) da nova entidade que garantam
a que não haverá duplicidade.
Prof. Jailton Cardoso
Pedido
*NUM_PEDIDO
COD_CLIENTE
NOME_CLIENTE
TIPO_CLIENTE
CGC_CPF_CLIENTE
ENDER_CLIENTE
TEL_CLIENTE
LIMITE_CRED_CLIENTE
ENDERECO_ENTREGA
TIPO_FRETE
TIPO_PEDIDO
QTDE_PRODUTO
VALOR_TOT_PEDIDO
COD_VENDEDOR
NOME_VENDEDOR
COD_TRANSPORTADORA
NOME_TRANSPORTADORA
Item_Pedido
*NUM_PEDIDO
*COD_PRODUTO
NOME_PRODUTO
SIGLA_UNIDADE_MEDIDA_PRODUTO
UNIDADE_MEDIDA_PRODUTO
QTD_PRODUTO
VALOR_UNITARIO
VALOR_TOT_PRODUTO
Observar que COD_PRODUTO foi escolhido
para compor a chave composta da entidade
Item_produto a fim de garantir que não ocorra
tuplas duplicadas
Pedido Item_PedidoPossui
1 N
Prof. Jailton Cardoso
 ¿ O que é – ocorre quando um atributo ou conjunto
de atributos depende funcionalmente de outro, ou
seja um atributo ou conjunto de atributos B
depende de um atributo A se A determina B.
 A → B, lê - se:
◦ A funcionalmente determina B
◦ B é funcionalmente dependente de A
◦ B é