Sunteți pe pagina 1din 99

Banco de Dados I

2 Modelagem de Dados
Conceitual
Grinaldo Lopes de Oliveira (grinaldo@gmail.com)
Curso Superior de Tecnologia em
Anlise e Desenvolvimento de Sistemas

* Material com crditos de colaborao dos professores Mrcio Soussa, Leandro Coelho e Pablo Florentino

Agenda
Aprendendo
Modelagem de Dados
Projeto de Banco de Dados
DER Entidades e Atributos
DER Relacionamentos
DER - Extenses

Modelagem de Dados

Modelagem de Dados
Questionamentos:
O que significa modelagem de dados ?
realmente necessrio modelar ?
Como devemos modelar ?

Abstrao

Modelagem de Dados - Modelo


a representao abstrata e simplificada de um sistema
real, com a qual se pode explicar ou testar o seu
comportamento, em seu todo ou em partes.
Ex.: Planta Baixa, manequim, desenho, etc

Na rea de banco de Dados


a descrio dos tipos de informaes que esto armazenadas
em um banco de dados
Ex: Um modelo de dados acadmico informa que h informaes
sobre alunos (Matricula, CPF, Nome), mas no informa os dados de
cada aluno.

a representao das entidades e seus relacionamentos

Modelagem de Dados - Conceitos


Mtodo de abstrao dos elementos do ambiente
representando-os em um modelo de dados (Entidades e
relacionamentos)
uma representao abstrata dos dados sobre entidades,
juntamente com suas associaes
Tcnica aplicada para modelar os dados da empresa,
visando formar uma base estvel para suportar o negcio e
as necessidades de informaes decorrentes.

Modelagem de Dados Por que modelar?


A Sociedade est cada vez mais orientada para
a informao
Dado (informao) um dos bens mais valiosos de
uma empresa. Faz necessrio gerenci-lo de forma
eficaz.

Como organizar os dados para maximizar sua


utilidade e obter informaes necessrias para a
conduo do negcio?

Modelagem de Dados Como devemos modelar?


Quando fazemos uma modelagem, estamos
modelando obviamente alguma coisa, isto , no
nosso caso o ambiente observado.
Ao observamos os objetos:
O que percebemos ?
Como eles nos so apresentados ?
O que deveremos buscar ?

Debate em Sala de Aula


Digamos que voc foi convidado
para descrever um conjunto de
lojas de departamentos associadas
s suas reas de atuao e
fornecedores. O que poderia
resultar como produto deste
trabalho?

Poderia resultar um modelo descritivo

Poderia resultar um modelo esquemtico

Poderia resultar um modelo de dados

Modelagem de Dados Como devemos modelar


O observado X O representado.
Cada ambiente a ser modelado ter suas prprias
caractersticas.
Mudanas no modelo ao longo do processo de
modelagem.
A viso obtida dos objetos fortemente
dependente de quem nos apresenta.

Modelagem de Dados Processo de Modelagem


Execuo da Modelagem do Dados
Observao dos objetos
Entrevistas, reunies, questionrios

Entendimento dos Conceitos


Entendimento (caractersticas, relacionamentos)

Representao dos objetos


DER (Diagrama de Entidade e Relacionamento)

Verificao de fidelidade e coerncia


Validao do modelo

Modelagem de Dados Grandes Verdades

No ame seu modelo


Se voc acha que seu modelo est bom,
porque talvez ainda no tenha olhado
direito
Em modelagem de Dados s podemos ter
uma certeza: a de que nosso modelo
nunca estar completamente acabado

Projeto de Banco de Dados

Projeto de Banco de Dados


Mini-Mundo

Foco: dados

Coleta e Anlise
de Requisitos

Requisitos de Dados
Independente
de SGBD

Projeto Conceitual
Modelo Conceitual

Especfico para
um SGBD

Projeto Lgico
Modelo Lgico
Projeto Fsico
Modelo Fsico

Projeto de Banco de Dados


Na dcada de 70, Peter P. Chen criou o
modelo E-R que se divide em trs:
Modelo Conceitual de Dados (MCD)
Modelo Lgico de Dados (MLD)
Modelo Fsico de Dados (MFD)

Modelo Conceitual de Dados


o ponto de partida para a modelagem de
dados
Deve-se buscar a construo de um modelo
conceitual antes de partir para a elaborao
de um projeto lgico
Modelo mais prximo do nvel do usurio
Modelagem de Dados no serve apenas para
elaborar um projeto de BD

Modelo Conceitual de Dados


Aquele em que os objetos, suas
caractersticas e relacionamentos tm
representao fiel ao ambiente observado,
independentemente
de
limitaes
impostas por tecnologias, tcnicas de
implementao ou dispositivos fsicos.
Devemos nos preocupar apenas com o
aspecto conceitual.

Modelo Conceitual de Dados


O modelo conceitual de dados informa os
dados (atributos) que esto presentes no
banco de dados, mas no informa como
estes dados so armazenados pelo
SGBD.
Descreve a estrutura de um banco de
dados de forma independente de um
SGBD particular e trata-se de um modelo
simples, de fcil compreenso pelo
usurio final.

Modelo Lgico de Dados


Aquele em que os objetos, suas
caractersticas e relacionamentos tm a
representao de acordo com as regras de
implementao impostos por algum tipo
de tecnologia com chaves de acesso,
normalizao, integridade referencial, etc.

Modelo Lgico de Dados


Um modelo lgico de dados uma descrio
de um banco de dados no nvel de
abstrao visto pelo usurio do SGBD.
Essa representao, por sua vez, independe
dos meios de armazenamento fsico das
estruturas de dados.
Detalhes de armazenamento interno, como
ponteiros, ndices, etc no fazem parte do
modelo lgico.

Modelo Fsico de Dados


Aquele em que a representao dos
objetos feita sob o foco do nvel fsico de
implementao das ocorrncias e seus
relacionamentos.
Descreve informaes relacionadas com a
estrutura fsica de armazenamento e o
desempenho de banco de dados

Observaes Pertinentes
Grande parte da dificuldade encontrada
por quem inicia na atividade de
modelagem de dados resultante da
excessiva nfase dada aos aspectos
tecnolgicos, dificultando que enxerguem
o mundo que modelam sua frente
preciso dar a devida importncia
modelagem conceitual !!!!

Metodologia de Projeto de Banco de Dados


Partindo-se de um mundo observado,
composto
por
seus
objetos
e
relacionamentos, podemos definir um
modelo independente de tecnologia. Esse
modelo ser derivado para um modelo lgico
que por sua vez ser dependente de
modelos fsicos de implementao.
Para cada nvel (modelo) usaremos tcnicas
de representao apropriadas.

Debate em Sala de Aula


No dia-a-dia profissional, em sua
opinio, qual o risco que se pode
incorrer na atualizao de um
modelo especfico sem reflexo em
outro? Exemplo: Altera-se o modelo
fsico, mas no se atualiza
o conceitual.

DER Entidades e Atributos

Modelo E-R (Introduo)


Em Maro de 1976, Peter P. Chen Publicou
um
trabalho
intitulado
The
EntityRelationship Model
O modelo passou a ser um referencial
definitivo no processo de modelagem de
dados at os dias atuais
MER : Modelo Entidade-Relacionamento
DER : Diagrama Entidade-Relacionamento

Modelo E-R
Formalizao do bvio:
O mundo est cheio de coisas que
possuem Caractersticas Prprias e se
relacionam entre si

Modelo E-R
Abordagem
ER
Instncias ou
Ocorrncias

Abordagem
OO

Conjunto de
elementos
individualizados

Entidades

Classes

Caractersticas

Atributos

Atributos

Relacionamento
entre elementos

Relacionamentos

Associaes

Ambiente
observado
Elementos
individualizados

Objetos

Modelo E-R / Elementos (Notao de Peter Chen)

Entidades/Objetos

Retngulo

Relacionamentos

Losango

Atributos

Crculo

Modelo E-R / Elementos (Peter Chen)

Fornecedor

Produto

Fornece

Razo Social

CNPJ

Cdigo

Descrio

Modelo E-R / Entidades


O Conceito fundamental da abordagem ER a Entidade
Uma Entidade um conjunto de objetos sobre os quais se deseja
manter informaes no banco de dados
Entidades podem ser:
Coisas tangveis
Veculo, bebida, etc.

Funes exercidas por elementos


Funo exercida por um elemento.
Ex: mdico cardiologista, mdico dermatologista, superviso de marketing,
etc

Eventos ou ocorrncias
Relacionados a alguma ao.
Ex: Festa na escola, palestra, jogo de futebol.

Entidades Tangveis

Entidades Tangveis

Entidades de Funes

Entidades de Funes

Entidades de Eventos

Entidades de Eventos Dependncia


de dados com outras entidades
No caso de um Evento de Apresentao de um Produto:

Outros Tipos de Entidades


Interaes

Pode ser substitudo por


Relacionamentos ou Associaes.

Outros Tipos de Entidades


Especificaes
Definem caractersticas de outros objetos.
Normalmente, esto associados ao processo
de modelagem lgica;

Tangvel

Especificao

Modelo E-R / Entidades Fortes e Fracas


As entidade so representadas atravs de
retngulos.
Entidades Fracas
Critrio de Classificao:
Dependncia de existncia /Identificador

Entidades Fortes

Modelo E-R / Entidades Fortes e Fracas

Modelo E-R / Atributos


Atributo um dado que associado a
cada objeto (ocorrncia) de uma entidade
ou de um relacionamento.
So os atributos que nos fazem diferenciar
objetos distintos.
Na notao original de Peter Chen, os
atributos eram representados atravs de
bales.
No usaremos em demasiado esta prtica durante as
aulas para no poluir o modelo de dados.

Atributos - Representao no modelo


ATRIBUTOS OPCIONAIS
Atributos opcionais so aqueles que se aplicam apenas a
determinadas ocorrncias de uma entidade, e no a outras.
Exemplo: FUNCIONRIO e os registrosprofissionais em
diferentes entidades de classe: CRM, CREA, OAB, etc.
Atributos opcionais muitas vezes indicam subconjuntos da
entidade que devem ser modelados atravs de especializao.

Atributos - Representao no modelo


ATRIBUTOS COMPOSTOS
Chamamos de atributos compostos queles nos quais o
contedo formado por vrios itens menores. Exemplo:
ENDEREO composto por: nome do logradouro, nmero,
complemento (exemplo: apartamento), bairro, cidade, estado,
etc.

Atributos - Representao no modelo


ATRIBUTOS MULTIVALORADOS
Denominamos atributos multivalorados queles nos quais o
contedo formado por mais de um valor. Exemplo:
FUNCIONRIO e DEPENDENTE, este ltimo como atributo.
Para atributos multivalorados recomenda-se a soluo
apresentada na figura a seguir:

Classificao dos Atributos

Atributos Descritivos
So aqueles que, sob o enfoque funcional, aplicam-se
representao das caractersticas intrnsecas dos objetos.

Atributos Nominativos
So aqueles que, alm de cumprirem a funo de
descritivos, tambm servem como definidores de nomes
ou rtulos de identificao aos objetos aos quais
pertencem.

Atributos Referenciais
So aqueles que no pertencem propriamente ao objeto
ao qual esto alocados, mas fazem algum tipo de citao
ou ligao deste objeto com outro objeto.

Modelo E-R / Dicionrio de Dados


Por qu ?
A simples representao de um modelo de
dados no suficiente, em geral, para
expressar todos os conceitos necessrios ao
bom entendimento do sistema

Ambigidades: Acontece quando duas ou


mais interpretaes so possveis para um
mesmo elemento. Significa falta de clareza.

Modelo E-R / Dicionrio de Dados


Regras para o bom entendimento
Todo modelo deve ter seu dicionrio de dados
Cuidado com conceitos triviais
Definies completas e inequvocas
Regras onde se encaixam, Excees s regras
Exemplos ilustrativos
Qualquer contribuio que melhore a compreenso

Toda informao til deve ser agregada, mas


nem toda informao til.

Modelo E-R / Atributos


Dicionarizao dos atributos
Complementar dicionarizao dos objetos
Erro comum: simplificao de conceitos
Ex.: Contm o centro de custo do empregado

No estamos dicionarizando somente ns


mesmos.
Domnios.

Modelo E-R / Dicionrio de Dados


Dicas para Dicionarizao:
Deve-se descrever:
O que o elemento ?
Para que serve o elemento ?
O que engloba a sua categoria ?
O que est includo ou excludo de sua categoria ?
Quando algum passa a ser, ou deixa de ser, um
elemento deste tipo?
Sua permanncia na categoria imutvel?

Debate em Sala de Aula


Como voc descreveria a figura de
um atleta na empresa em que
trabalha?

O que um atleta?

Modelo E-R / Relacionamentos

Modelo E-R / Relacionamentos


a forma como os objetos de comportam em
relao aos demais objetos.
Conjunto de associaes entre entidades.
Ao observarmos os objetos, estaremos
quase que imediatamente, reconhecendo as
relaes existentes entre eles.
expresso atravs de uma construo
verbal.

Modelo E-R / Relacionamentos

PESSOA

Aluga
Alugado

IMVEL

PESSOA representa um conjunto de objetos classificados como pessoas


IMOVEL representa um conjunto de objetos classificados como imveis
ALUGA/ ALUGADO representa a relao entre as pessoa e os imveis
Ex: Maria aluga o imvel de No 134.

Modelo E-R / Relacionamentos


Diagrama de ocorrncias

Pessoas

Pessoas alugam
Imveis

Imveis

Modelo E-R / Relacionamentos


Grupos:
Entre objetos de diferentes tipos
Ex.: Produto Fornecedor
Professor - Disciplina

Entre objetos de um mesmo tipo


Ex.: Enfermeira Chefe de Enfermagem

Modelo E-R / Relacionamentos


Denominao dos relacionamentos
Preocupao para denominar corretamente
os relacionamentos
Duas formas: Ativa e Passiva
Ex.: Ativa : Fornecedor fornece produto
Ex.: Passiva : Produto fornecido pelo Fornecedor

Leitura: Cima-baixo e esquerda-direita

Modelo E-R / Relacionamentos


Grau ou Cardinalidade
1:1 (Um para um)
1:N (Um para Muitos)
M:N (Muitos para Muitos)

Nmero de elementos
Binrio, ternrio (auto-relacionamento)

Presena de elementos
Mnimos e Mximos

Relacionamentos com ou sem atributos

Modelo E-R / Relacionamentos


Grau ou Cardinalidade
Nmero de ocorrncias entre um elemento de uma
entidade com elementos de outra entidade
Com quantos elementos do tipo Y se relaciona cada um dos
elementos do tipo X ?
Dado um elemento do tipo Y, com quantos elementos do tipo X se
relaciona ?

Modelo E-R / Relacionamentos


Grau ou Cardinalidade

ALUNO

Participa

PROJETO

Objetivo: Expressar a semntica de associao entre os elementos

Modelo E-R / Relacionamentos


Cardinalidade (1:1)
1
PESSOA

1
Possui

CERTIDAO NASCIMENTO

Um elemento de Pessoa s pode se relacionar


com um elemento de Certido e um elemento
de Certido s pode se relacionar com um
elemento de Pessoa

Modelo E-R / Relacionamentos


Cardinalidade (1:1)

No exigido a associao de todos os


elementos

Modelo E-R / Relacionamentos


Cardinalidade (1:N )
1
PROJETO

N
composto

ALUNO

Um elemento de Projeto pode se relacionar


com (N) elementos de Aluno, mas um
elemento de Aluno s pode se relacionar
com um elemento de Projeto

Modelo E-R / Relacionamentos


Cardinalidade (1:N)

No exigida a associao de todos os


elementos

Modelo E-R / Relacionamentos


Cardinalidade (M:N)
M
FABRICA

N
Possui

REPRESENTANTE

Um elemento de Fbrica pode se relacionar com (N)


elementos de Representante, e um elemento de
Representante pode se relacionar com (N)
elementos de Fbrica

Modelo E-R / Relacionamentos


Cardinalidade (M:N)

No exigida a associao de todos os


elementos

Modelo E-R / Relacionamentos


Nmero de elementos que participam do
relacionamento
Binrio ( Mais comum )
Ternrio
Quaternrio, Etc.
Relacionamentos ternrios, quaternrios, etc,
podem, mas no necessariamente,
representar uma falha na modelagem

Modelo E-R / Relacionamentos


Auto-relacionamento
1
Supervisiona

VIGIA
N

Auto-relacionamentos podem ser


1:1, 1:N ou M:N

Modelo E-R / Relacionamentos


Relacionamento ternrio
M
EMPREGADO

N
Trabalha

M
CARGO

No pode ser transformado em 2


relacionamentos binrios

EMPRESA

Modelo E-R / Relacionamentos


Presena de elementos no relacionamento
Grau Mnimo:
Qual o menor valor possvel de participao do
elementos?

Grau Mximo
Qual o maior valor possvel de participao do
elementos?

Modelo E-R / Relacionamentos


Presena de elementos no relacionamento

0:1
ALUNO

Participa

PROJETO

1:N

Podemos valorar os graus com valores fixos


para dar mais semntica ao modelo

Modelo E-R / Relacionamentos


Existncia simultnea de
Relacionamentos
Relacionamentos Independentes (maioria)
Relacionamentos Contigentes
Impem o estabelecimento simultneo de
associaes entre os vrios elementos
envolvidos.

Relacionamentos mutuamente exclusivos


Exemplos: Obra financiada por orgo estadual ou
municipal ou federal (exclusivamente)

Modelo E-R / Relacionamentos


Relacionamentos Independentes
PROGRAMA

exibido

CANAL DE TV

patrocinado

ESTADO

Modelo E-R / Relacionamentos


Existncia simultnea de Relacionamentos
Relacionamentos Contingentes

PROJETO

alocado

ENGENHEIRO

atende

REGIO

Modelo E-R / Relacionamentos


Existncia simultnea de Relacionamentos
Relacionamentos Mutuamente Exclusivos

OBRA

Financiada

MUNICIPIO

Financiada

ESTADO

Modelo E-R / Relacionamentos


Presena de Atributos
Relacionamentos sem atributos;
Relacionamentos com atributos
Possuem dados a serem armazenados.
EMPREGADO

lotado

CENTRO DE CUSTO

Data da lotao
Nmero da portaria

Os relacionamentos devem ser dicionarizados tambm.

Hora de Exerccio
Faa a Lista 2 de Exerccios de
Modelagem.

DER - Extenses

Modelo E-R / Estruturas Adicionais


Agregao
Denota a existncia de uma juno de
elementos atravs de um relacionamento, e
que permite que essa juno seja percebida
como um novo elemento a ser, por sua vez,
relacionado a outro elemento

Modelo E-R / Estruturas Adicionais


Agregao
M
EMPREGADO

N
Trabalha

EMPRESA

M
CARGO

Interpretao do grau prejudicada

Modelo E-R / Estruturas Adicionais


Agregao (entidade Associativa)
M
EMPREGADO

N
Trabalha

ocupa

1
CARGO

EMPRESA

Modelo E-R / Estruturas Adicionais


Generalizao Especializao (Gen-Esp)
O conceito de Gen-Esp est associado ao
conceito de herana de caractersticas.
A estrutura composta por uma entidade
generalizada (pai) e um ou mais entidades
especializadas (filhas).
Os elementos da entidade especializada herdam
propriedades da entidade generalizada, alm de
possurem suas caractersticas prprias.
Pode ser Parcial ou Total.

Modelo E-R / Estruturas Adicionais


Generalizao-Especializao (Gen-Esp)
CLIENTE

CLIENTE
PESSOA FISICA

CLIENTE
PESSOA JURIDICA

Modelo E-R / Estruturas Adicionais


Especializaes mutuamente exclusivas
(Categorias)
MEIO DE TRANSPORTE

CARRO

AVIO

Modelo E-R / Estruturas Adicionais


Especializaes no mutuamente exclusivas
(Papis)
FUNCIONARIO

PROFESSOR

COORDENADOR CURSO

Modelo E-R / Estruturas Adicionais


Nveis de especializao
ANIMAL

c
AVE

RPTIL

c
GUIA

c
PAPAGAIO

CROCODILO

JACAR

Modelo E-R / Estruturas Adicionais


Nveis de especializao (Expanso
Horizontal)
ANIMAL

c
GUIA

PAPAGAIO

CROCODILO

JACAR

Repetimos atributos e relacionamentos

Modelo E-R / Estruturas Adicionais


Relacionamentos

FBRICA
1
N
Fabricado

CARRO

c
PASSEIO

UTILITRIO

NIBUS

CAMINHO

Modelo E-R / Estruturas Adicionais


Auto-relacionamento em Gen-Esp
PESSOA

c
PESSOA FSICA

PESSOA JURDICA

1
Representa

Modelo E-R / Estruturas Adicionais


Quando utilizar Gen-Esp:
Regra 1: Existe algum atributo que seja aplicado
a somente um subconjunto de elementos e no a
todos?
Regra 2: Existe algum relacionamento que seja
aplicvel a somente um subconjunto de
elementos e no a todos?
Regra 3: No estaremos poluindo o modelo
inserindo detalhes desnecessrios?
Regra 4: Estaremos inserindo mais semntica ao
nosso modelo?

Tarefa Extra-Classe
Recupere os exerccios de DER e
faa-os todos.

Banco de Dados I
2 Modelagem de Dados
Conceitual
Grinaldo Lopes de Oliveira (grinaldo@gmail.com)
Curso Superior de Tecnologia em
Anlise e Desenvolvimento de Sistemas

S-ar putea să vă placă și