Você está na página 1de 9

Anlise e Projeto

Modelo Conceitual de Dados


O modelo conceitual de dados um modelo abstrato que descreve as
informaes contidas no sistema. O objetivo final do modelo de dados a criao da
base de dados do sistema.
As informaes contidas no modelo sero aquelas que o sistema precisa ter para
executar uma ou mais funes e que no so fornecidas pelo mundo exterior no
momento que a funo solicitada, mas sim anteriormente, durante a execuo de outra
funo do sistema. O sistema precisa se lembrar dessa informao entre uma e outra
utilizao, devendo ela pertencer de sua memria.
O modelo de dados um tipo de requisito do sistema. Descreve tudo o que o
sistema tem que saber. Ele estabelece um vocabulrio, indica que informao est sendo
compartilhada e qual o escopo de conhecimento que est sendo considerado pelo
sistema.
A criao do modelo de dados um processo de especificaes sucessivas.
Inicialmente descrevemos um modelo do ambiente observado, normalmente
descrevendo o mundo como ele visto pelo usurio. Esse modelo conhecido como
modelo conceitual de dados. No final devemos possuir uma descrio na viso do
desenvolvedor, descrevendo o mundo de uma forma especfica, otimizada para os
dispositivos sendo utilizados na implementao do sistema (linguagens de programao,
SGBD, sistema operacional e hardware), o modelo fsico.
Entre o modelo conceitual e o modelo fsico devemos passar por um passo
intermedirio, considerando uma tecnologia especfica, mas no com os produtos sendo
utilizados. Esse passo conhecido como modelo lgico.
A principal forma de modelagem de dados o modelo de entidade e
relacionamentos (MER), por meio do diagrama de entidades e relacionamentos
(DER).
No modelo de entidades e relacionamentos contamos com trs abstraes para
modelar o mundo: entidades (coisas e conceitos), atributos (caractersticas dessas coisas
e conceitos) e relacionamentos (relaes existentes entre essas coisas e conceitos).

A Memria do Sistma
Para cada necessidade do cliente (relatrios, tomadas de deciso, etc.) o sistema
precisa de certa quantidade de dados. Esses dados so sempre fornecidos pelo mundo
exterior, porm, nem sempre no mesmo momento em que a funo necessria
realizada.
Um sistema de informaes composto por funes que coletam dados para que
sejam, mais tarde, utilizados por funes que fornecem relatrios.
Os dados necessrios para realizar uma funo precisam estar em algum lugar.
Com a modelagem conceitual de dados damos a forma abstrata a esse lugar (memria),
de maneira a entender o que deve estar guardado na memria sem decidir,
prematuramente, sua localizao e estrutura.
Modelo conceitual

Fornece aos desenvolvedores uma descrio abstrata de alto nvel da informao


contida no sistema, independente de tecnologia.
A modelagem conceitual de dados pode ser construda a partir da anlise de
requisitos, em geral simultaneamente ao desenvolvimento da anlise essencial.
1

Modelo Conceitual de Dados

Para a criao do DER necessrio fazer o levantamento do conjunto de regras


de negcio.
Um relacionamento em uma regra de negcio pode representar uma funo do
sistema, enquanto um relacionamento no MER representa algo que deve pertencer
memria do sistema.
Modelo lgico

Descreve a informao contida no sistema de acordo com uma tecnologia


adotada, sem utilizar, porm, detalhes de implementao.
Modelo fsico

Leva em conta no s a tecnologia utilizada, mas tambm os produtos


especficos e a interao do sistema com o ambiente de desenvolvimento e operao.
Nessa etapa nos preocupamos com as principais questes de desempenho.

Modelo de Entidades e Relacionamentos


O modelo de entidades e relacionamentos descreve o mundo cheio de coisas que
possuem caractersticas prprias e que se relacionam entre si.
Entidade

Essas coisas podem ser pessoas, objetos, conceitos, eventos, etc. Elas so
classificadas em entidades (classe).
Uma entidade pode ser:
Um objeto real, como um livro, uma mquina, um lugar, um avio, um quarto.
Uma pessoa, como um empregado, um contribuinte, um aluno, um cidado.
Um conceito abstrato, como um curso, uma cor, uma empresa.
Um acontecimento.
Para representar os objetos especficos, os membros da classe, usamos o termo
instncia. Cada um dos membros de uma entidade deve ser identificado distintamente.
No diagrama de entidade e relacionamentos cada entidade representada por um
retngulo, identificado pelo nome.
Durante a modelagem conceitual nos preocupamos com as coisas que o sistema
deve lembrar e colocamos essas coisas no modelo de entidade e relacionamentos.
Uma entidade deve ser relevante para o objetivo do negcio e necessria para a
sua operao.
Passos na determinao das entidades:
1. Durante as entrevistas e reunies de anlise de sistemas vrios objetos e conceitos
sero descritos como parte do sistema: produto, estoque, nota fiscal, curso, etc.
2. Entidades so geralmente substantivos ocupando um papel de sujeito ou objeto.
3. O fato de algo que precisa ser lembrado representar um conceito ou idia completa.
Por exemplo, nome do aluno, data de matrcula do aluno, curso em que est o aluno,
etc. O aluno nossa idia completa.
Uma entidade pode estar em cinco grandes categorias:
Objetos tangveis: produtos, equipamentos, etc.
Papis exercidos: aluno, professor, etc.
Eventos: reunio.
Interaes: contratao de servio, venda de produto.
Especificaes: automvel.
Regras para verificar se um conceito deve ser realmente escolhido como uma
entidade:
2

Anlise e Projeto

Toda entidade deve ter um papel nico e definido no negcio.


Entidades devem ter ao menos um atributo (caracterstica) que as descrevam.
Entidades devem ter mais de uma instncia (registro).
Entidades devem possuir instncias unicamente identificveis.
Entidades no possuem valores, apenas atributos possuem valores.
Relatrios so apenas os resultados de um processo que acessa vrias entidades.
Substantivos em regras de negcio so normalmente entidades.
Um grupo de dados que se repete em uma entrada ou sada de dados normalmente
uma entidade.
Podemos utilizar alguns documentos para encontrar entidades:
Relatrios
Formulrio de entrada de dados
Arquivos (papel ou computador)
Fichas (cadastro, emprstimo)
Pedido e requisies
Listagens, registros, agendas, protocolos e outros documentos de trabalho
Sistemas j existentes
Bancos de dados j existentes
importante a descrio precisa de cada entidade. Sua descrio serve de
documentao e de teste para verificar se entendemos realmente sua presena no
sistema. Itens para descrio de entidade:
Nome
Definio
Exemplos
Atributos
Relacionamentos
Eventos
Correlao (outras partes que se referem a ela)
Regras de excees relacionadas a essa entidade (regras de negcio)
Outros comentrios e observaes
Uma idia da quantidade esperada de instncias (registros) no sistema
Atributos

Os atributos so caractersticas que toda a instncia de um tipo possui, mas


podem variar entre as instncias.
Uma instncia de tipo aluno tem os atributos (campos) nome e ano de matrcula,
por exemplo.
Atributos caracterizam a informao que deve ser guardada sobre uma entidade.
S devemos colocar como atributos aquelas informaes que o sistema precisa lembrar
em algum momento.
Atributo mais o seu valor um dado sobre a entidade.
Para descrever atributos devemos definir as seguintes caractersticas:
Nome
Descrio
Domnio (valores vlidos inteiro, real, string ou uma lista de valores, ou ainda
criados pelo projetista)
Tipos de nulos aceitos
Exemplos
3

Modelo Conceitual de Dados

Na descrio devemos explicar qual a finalidade do atributo, atribuio dos


valores, o que significa cada valor, quem define a escolha do valor, quando, por que e
por quem o valor atribudo ou alterado, etc.
Atributos so denotados no mesmo retngulo da entidade.
Atributos identificadores

Uma abstrao importante a identificao. Nos modelos ER cada instncia de


uma entidade deve ser identificada unicamente com um objeto ou conceito do mundo
real. Para fazer a identificao so utilizados atributos e relacionamentos
identificadores.
Algumas vezes mais de um atributo, ou relacionamento, serve como
identificador nico, porm de forma independente (placa de carro, nmero do chassi).
Um atributo identificador tpico em sistemas financeiros o CPF de uma pessoa
fsica ou o CNPJ de uma pessoa jurdica.
Muitas vezes precisamos de mais de um atributo identificador. Dizemos q ue a
chave primria composta. Se usamos apenas um atributo como identificador, ento
dizemos que a chave primria simples.
Chaves estrangeiras

Chave estrangeira uma caracterstica do modelo relacional. Uma chave


estrangeira uma chave de outra tabela (entidade) que usamos em uma tabela para
indicar o relacionamento. comum que as ferramentas de modelagem copiem as chaves
estrangeiras automaticamente.
Domnios

Cada caracterstica deve possuir um domnio. O domnio indica o conjunto de


valores vlidos para a caracterstica.
Nome: aceita qualquer sequncia de caracteres.
Sexo: o domnio possvel ser M ou F.
Endereo: uma estrutura de dados, tendo outros atributos e seus domnios.
Relacionamentos

Entidades podem se relacionar entre si. Toda entidade deve possuir ao menos um
relacionamento que a coloque em contato com as outras entidades do sistema. O modelo
de entidades e relacionamentos permite que naveguemos no modelo.
Podemos indicar relacionamentos apenas pelas entidades envolvidas, como
cliente-pedido. Esse relacionamento pode ser descrito como: cliente solicita pedido.
Dado uma entidade aluno e uma entidade curso, tem-se um relacionamento:
aluno frequenta curso. Os dados do aluno e os dados do curso, tem um relacionamento
de onde deriva outros dados pertinentes quelas duas entidades, por exemplo: data de
inscrio do aluno no curso no refere-se somente ao aluno, nem to pouco ao curso,
mas a ambos simultaneamente.
Muitas vezes uma regra de negcio, como alunos cursam turmas ou clientes
fazem pedidos nos indica entidades e relacionamentos.
Relacionamentos representam que existe alguma conexo entre entidades dentro
do negcio. Cada relacionamento deve ser tambm uma regra de negcio e utilizado
pelo menos um processo que lida com as entidades envolvidas.
Exemplos de relacionamentos:
Visitantes que emprestaram um livro (navega de livro para clientes)
Produtos que um cliente pediu (navega de clientes para produtos)
Peas compes mquinas
4

Anlise e Projeto

Bicicleta um meio de transporte


Cliente faz (gera) pedido
Visita atende solicitao de reparo
Cliente usa produto
Um automvel obrigatoriamente fabricado em uma fbrica
Nem todos os livros em uma livraria j foram vendidos
Um professor s pode dar aulas para alunos da escola em que trabalha
Fazer pedidos de livros para uma editora
Cardinalidade

A cardinalidade indica quantas vezes uma instncia da entidade pode se


relacionar com instncias de outras entidades.
Exemplo: uma filha s pode ter uma me, mas uma me pode ter vrias filhas.
Relacionamentos:
1:1, um para um cada entidade s pode se relacionar com uma entidade do outro
conjunto (indica semelhana, igualdade).
1:N, um para muitos cada entidade de um conjunto pode se relacionar com vrias
entidades do outro conjunto, mas as entidades do segundo conjunto s podem se
relacionar com uma entidade do primeiro conjunto (relaes de posse, hierarquia,
composio).
N:M, muitos para muitos podem indicar eventos, contratos, acordos, ligaes
temporrias (emprstimos, aluguis), etc.
A cardinalidade mxima indica quantas vezes uma entidade pode aparecer em
um relacionamento.
Quando falamos da cardinalidade mnima usamos notao de par ordenado,
(0,1):(1,N) por exemplo, onde o primeiro nmero do par indica a cardinalidade mnina e
o segundo a mxima. A cardinalidade mnima indica uma exigncia da participao de
uma instncia da entidade em relacionamentos.
A cardinalidade mnima 0 em ambos os lados indica a existncia prpria de
ambos os objetos. A cardinalidade mnima 1 indica a necessidade de um objeto
pertencer ou ser criado por outro.
Tipos de relacionamentos:
(0, 1) : (0, 1)
o Exemplo 1: alocao de cabines e reboques de caminhes em uma empresa
de aluguel de viaturas: cada cabine s pode ter um reboque e vice-versa
o Exemplo 2: uma igreja pode ter um catlogo de frequentadores e quer saber
quem casado com quem (e quem solteiro).
(1, 1) : (0, 1)
o Exemplo: distribuio de papis de uma pea de teatro em uma companhia
de atores: cada ator s pode fazer um papel, alguns atores podem no ter
papel, mas todos os papis tm um ator, e apenas um ator.
(0, 1) : (1, 1)
(1, 1) : (1, 1)
o Uma entidade no pode existir sem estar relacionada com outra ( melhor
unir as duas entidades em uma s).
(0, 1) : (0, N)
o Exemplo 1: um computador s pode estar alocado em um departamento ou
pode estar no estoque (sem alocao)

Modelo Conceitual de Dados

o Exemplo 2: um departamento pode ter 0, 1 ou vrios computadores alocados


para si.
(0, N) : (0, 1)
(0, 1) : (1, N)
o Exemplo: uma loja de carros novos pode em uma mesma venda negociar
vrios carros, mas necessariamente a venda contm um carro.
(1, N) : (0, 1)
(1, 1) : (0, N)
o Exemplo: cada multa de apenas um automvel, mas podem existir
automveis com 0, 1 ou mais multas.
(0, N) : (1, 1)
(1, 1) : (1, N)
o Exemplo: cadastro de pessoas jurdicas, que devem possuir um endereo,
mas podem possuir mais de um.
(1, N) : (1, 1)
(0, N) : (0, N)
o Exemplo: relao entre alunos e cursos oferecidos em um semestre em uma
universidade. Alguns cursos no recebem inscrio, alguns alunos no fazem
inscrio em nenhum curso.
(0, N) : (1, N)
o Exemplo: relao entre msicas e CDs onde esto gravadas, para controle de
uma discoteca. Uma mesma msica pode estar em vrios CDs, mas no
possvel registrar um CD sem msicas (deve existir pelo menos uma).
Porm, uma msica pode nunca ter sido gravada.
(1, N) : (0, N)
(1, N) : (1, N)
o Exemplo: relao entre salas de uma empresa e mveis colocados nessa sala
(ideal trocar essa representao pelo relacionamento (0, N) : (1, N)).
O nome escolhido para o relacionamento pode estar na voz ativa ou na voz
passiva. Geralmente se usa o nome que permita a leitura do relacionamento da esquerda
para a direita.
Relacionamentos tambm devem ser descritos e comentados, sendo importante
responder qual sua funo no sistema, o que eles representam, como e quando so
estabelecidos ou destrudos.

Diagrama de Entidade e Relacionamentos


Diagramas de entidades e relacionamentos descrevem o mundo em geral ou um
sistema em particular de acordo com os objetivos que o compe e os relacionamentos
entre esses objetos.
Os objetivos dos DERs documentar graficamente a relao existente entre os
dados utilizados pelo sistema, e quantificar a relao estabe lecendo uma poltica de
restrio de integridade.
A notao para diagrama de entidades e relacionamentos composta de
entidades (retngulos), relacionamentos (losangos) e linhas de conexo (linhas) que
indicam a cardinalidade de uma entidade em um relacionamento.
Exemplos

A representao de uma entidade (depsito de dados).


CLIENTE
6

Anlise e Projeto

Uma relao entre entidades.


FAZ

Viso dos componentes.

FAZ

CLIENTE

PEDIDO

POSSUEM

Cliente faz pedido(s)


Pedido(s) possui(em) produto(s)

PRODUTO
O modelo a seguir pode ser lido da seguinte forma:
Entidades do modelo: diretor, novela, captulo, ator, ator horista e hora.
Um diretor dirige no mximo uma novela, podendo no dirigir nenhuma, e uma
novela dirigida por um e apenas um diretor.
Um captulo compe uma e apenas uma novela e uma novela tem no mnimo um
captulo, podendo ter um nmero ilimitado deles.
Um ator atua em uma novela, podendo no atuar em nenhuma, e uma novela tem ao
menos um ator, podendo ter vrios.
Um ator pode ser um ator horista e um ator horista obrigatoriamente um ator.
Um ator horista trabalha de zero a vrias quantidades de horas, mas uma quantidade
de horas trabalhada por apenas um ator.
DIRETOR

DIRIGE
(0, 1)

(1, 1)

CAPTULO

COMPE
(1, 1)

(1, N)

NOVELA
(1, N)

ATOR

AT UA
(0, 1)

(0, 1)

PODE SER

(1, 1)

ATOR HORISTA

(0, N)

T RABALHA

HORAS
(1, 1)

Modelo Conceitual de Dados

O modelo conceitual de dados exige duas coisas: um alto grau de abstrao e a


internalizao, pelo analista, de conceitos bastante vagos, como entidades e
relacionamentos.
Estratgias para entender melhor como desenvolver um modelo conceitual:
1. Exerccios e exemplos.
2. Lista de dicas de trabalho.

Exerccios
1. Proponha os dados (atributos) mnimos necessrios para atender as necessidades dos
usurios nas situaes descritas a seguir:
a) Nosso laboratrio clnico est um horror. s reclamao de cliente em cima de
reclamao. Tambm pudera, todos os nossos controles so manuais e realizados
nesse tipo de fichinha. O cliente telefone aqui e pergunta, como est o meu
exame? J posso ir buscar? E quem consegue responder a ele a quanta andam o
seu sagrado exame? Ainda bem que resolveram informatizar todo o processo e
mandaram voc para c. Qualquer coisa que voc precisar, esteja a vontade, s
me chamar, ta?
b) Boa tarde, eu sou da imprensa e gostaria de fazer uma reportagem sobre compras
no exterior e vou citar sua empresa por ser uma das mais importantes do pas.
Comecemos com alguns dados. Qual a quantidade mdia mensal de passageiros
que a empresa transporta para Miami e para Foz do Iguau? Em quais semanas
que antecedem feriados a procura maior?
c) Al, do RH? Boa tarde, eu preciso saber a lista de todos os analistas seniores e
de todos os administradores de dados que tiveram nota A e B nas sete ltimas
avaliaes individuais. Este pessoal ser homenageado. Grato.
d) Aqui nesta filial de nossa rede de supermercados, qua l foi a mercadoria que
acabou primeiro, que atingiu o nvel mnimo de estoque no ms passado? E na
filial do centro da cidade?
e) Temos cinco equipes de vendedores que atendem exatamente cinco regies.
Fizemos um rodzio entre elas nos ltimos cinco meses. Todas as equipes
ficaram um ms em cada regio. Agora precisamos saber qual equipe se adaptou
melhor e venceu mais em cada regio para aloc-las convenientemente. Mas
observe que estes dados no podem se brutos, tm que ser proporcionais, porque
as sazonalidades que influenciam o comrcio foram iguais para todas, e assim
eliminamos as discrepncias.
2. Considere os textos a seguir e indique em cada um, os objetos, os atributos e os
contedos dos atributos que esto citados:
a) Compramos mais trs livros, O povo brasileiro do Darcy Ribeiro, Histria da
riqueza do homem do Lo Huberman e Economia e sociedade do Max Weber.
So timos.
b) Conseguimos mais alguns assinantes, o Sr. Nicolau, engenheiro, que ir fazer
uma assinatura semestral do jornal Gazeta do povo, a partir de 15/01/2011 e a
Sra. Vera, advogada, que ir fazer uma assinatura anual da revisa Veja a partir de
01/12/2010.
3. Proponha o desenho do MER para cada situao a seguir:
a) Cada partido apresenta diversos candidatos para disputar as eleies. Cada
municpio do pas tem diversas zonas eleitorais e cada uma das zonas eleitorais
tm associadas diversas sees eleitorais (local onde fica a urna). Nesse sentido,
os eleitores que votam, o fazem, cada um na seo eleitoral em que est inscrito.
8

Anlise e Projeto

O resultado da eleio, a votao apresentada por seo eleitoral, e os


candidatos para saberem o total de votos obtidos precisam verificar sua votao
em cada uma das sees eleitorais. Observe que o voto secreto, portanto no h
nenhuma vinculao entre o eleitor e o resultado da votao.
b) Uma empresa tem muitos contratos de fornecimento firmados com diversos
fornecedores. A relao entre a empresa e seus fornecedores se d atravs dos
contratos de fornecimento firmados entre ambas. Cada contrato de fornecimento
diz respeito a um nico produto fornecido, ou seja, para cada produto um
contrato. Ocorre que o produto pode ser fornecido por diversos fornecedores.
Neste caso assina-se um contrato de fornecimento para cada produto de cada um
dos fornecedores.
Todo produto tem uma especificao de qualidade. Sem esta o produto no pode
ser comprado. Uma mesma especificao de qualidade, que diz como deve ser o
produto e suas caractersticas, pode servir de especificao para mais de um
produto. E a especificao de qualidade especificada por funcionrios
qualificados para tal. Algumas especificaes de qualidade so especificadas por
um grupo de funcionrios, outras por apenas um. Alguns funcionrios so
responsveis por diversas especificaes de qualidade.
A empresa tem diversas filiais. E so estas que compram produtos que a empresa
tem catalogado. A compra se d atravs de uma solicitao de compra que a
filial emite. Uma solicitao de compra pode solicitar diversos produtos.
4. Proponha os atributos mnimos necessrios para atender e o MER para atender as
necessidades do usurio a seguir:
Sr(a). analista, estou te contratando porque quero aumentar a produo e a
produtividade do meu rebanho. Eu tenho um retiro com 300 vacas leiteiras. Mas
estou achando que a coisa no est muito boa no. Eu preciso melhorar meu
rebanho. Veja bem, so trs necessidades:
a) Toda vaca tem que parir um bezerro sadio por ano, porque se no for assim
tenho prejuzo com o capim, rao e vacinas que gasto com ela. Neste caso
tenho que mand- la para o aougue. Eu preciso, ento, do controle de fertilidade
do meu rebanho, porque eu no sei qual vaca est com este desempenho e qual
tem problema.
b) Outra coisa importante o leite que cada uma produz. O leite minha nica
fonte de renda perene, e com ela pago todos os meus custos na fazenda. Mas
veja s, eu preciso de vaca de boa produo. Esta raa tem que dar no mnimo
quatro litros de leite por dia. Preciso mandar pro frigorfico toda vaca que no
me produz no mnimo 120 litros por ms. outra fonte de prejuzo.
c) Outro problema a qualidade do leite. Agora os laticnios esto muito exigentes.
Dependendo do teor de gordura do leite eles produzem leite C ou leite B. A raa
deste meu gado no consegue alcanar a gordura do leite tipo A. Eles me pagam
25% mais para o leite do tipo B. Acontece que uma vaca pr produzir leite B
tem que comer rao, que est ficando muito cara. E tem vaca que mesmo
comendo rao s produz leite fraco, leite C. Eu preciso separar as vacas que
produzem leite C das de leite B, porque hoje todas esto comendo rao. O
sistema tem que fazer um controle de qualidade do leite de cada vaca,
registrando o teor de gordura, porque a a gente separa o rebanho em dois e s d
rao para as vacas de leite gordo.

Você também pode gostar