Você está na página 1de 22

Modelagem de Dados Usando o

Modelo Entidade-Relacionamento

Introduo a Bancos de Dados DCC 011

Sumrio



Fases do Projeto de BD
Conceitos Bsicos do Modelo ER








Tipos de entidade, atributos e chaves


Tipos de relacionamento
Restries estruturais
Tipos de entidade fraca

Notao Diagramtica
Generalizao, Especializao e Agregao

Introduo a Bancos de Dados DCC 011

Processo de Projeto de
Bancos de Dados
Mini-Mundo

Anlise de
Requisitos

Requisitos Funcionais

Requisitos do BD

Anlise Funcional

Projeto Conceitual

Especificao das Transaes


Esquema Conceitual
(em alto nvel)
(em um modelo de dados de alto nvel)
Independente de SGBD
Projeto Lgico
Esquema Lgico
(em um modelo de dados lgico)

Especfico para um SGBD


Projeto das
Aplicaes

Projeto Fsico

Implementao

Esquema Fsico
(para um SGBD especfico)

Programas

Introduo a Bancos de Dados DCC 011

Esquema conceitual
Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Entidades:


Objetos do mundo real que so de interesse


para alguma aplicao

Atributos:


Propriedades utilizadas para descrever uma


entidade

Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Tipos (classes) de atributo:






Simples ou compostos
Monovalorados ou multivalorados
Armazenados ou derivados

Tipo de entidade:


Define um conjunto de entidades que tm


os mesmos atributos (propriedades)
Exemplos:


EMPREGADO, EMPRESA
Introduo a Bancos de Dados DCC 011

Tipos de entidade e suas instncias


Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Chave de um tipo de entidade:




Atributo que possui valor nico para cada


entidade (instncia)
Chave pode ser formada por vrios atributos:
chave composta

Domnio de um atributo:


Conjunto de valores que podem ser atribudos a


um atributo para cada entidade individualmente
A: E  P(V)
Introduo a Bancos de Dados DCC 011

Chaves

Registro e IDVeiculo so chaves to tipo de entidade CARRO


Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Relacionamentos:


Associaes entre duas ou mais entidades


distintas (instncias) com um significado
Exemplo:


O empregado John Smith preside a empresa


Sunco Oil

Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Tipo de Relacionamento:


Define um conjunto de associaes entre n


tipos de entidade E1, E2,...,En
Exemplo:


Trabalha-para entre Empregado e Departamento


Empregado

Trabalhapara

Departamento

Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Tipo de Relacionamento:


Matematicamente, um tipo de relacionamento R


um conjunto de (instncias de) relacionamentos ri,
onde cada ri associa n (instncias de) entidades
(e1,...,en) e cada ej pertence a um tipo de entidade
Ej
R E1 x E2 x ... x En

Grau de um Tipo de Relacionamento




Nmero de tipos de entidade participantes de um


tipo de relacionamento

Introduo a Bancos de Dados DCC 011

Instncias de um tipo de relacionamento binrio


Introduo a Bancos de Dados DCC 011

Instncias de um tipo de relacionamento ternrio


Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Restries sobre tipos de relacionamento:




Cardinalidade: Especifica o nmero de


instncias de um tipo de relacionamento do
qual uma entidade pode participar
Participao: Especifica se a existncia de uma
entidade depende de seu relacionamento com
outra entidade atravs de um tipo de
relacionamento  parcial ou total

Cardinalidade + Participao  Restries


Estruturais
Introduo a Bancos de Dados DCC 011

Cardinalidade 1:1
Introduo a Bancos de Dados DCC 011

Cardinalidade M:N
Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Papis e relacionamentos recursivos





Entidades atuam com um determinado papel


Significado do papel dado por um nome,
atribudo a cada tipo de entidade
Nomes s so necessrios em tipos de
relacionamento que envolvam mais de uma vez
o mesmo tipo de entidade  relacionamentos
recursivos
Exemplo: Superviso, onde Empregado tem os
papis de Supervisor e Supervisionado
Introduo a Bancos de Dados DCC 011

Relacionamento recursivo SUPERVISAO:


1 = supervisor, 2 = supervisionado
Introduo a Bancos de Dados DCC 011

Modelo ER - Conceitos


Tipos de Entidade Fraca





Tipos de entidade que no tm chave prpria


As instncias so identificadas atravs do
relacionamento com entidades de outro tipo,
chamado de dono ou identificador, juntamente
com os valores de alguns atributos (chave
parcial)
Exemplo: DEPENDENTE

Introduo a Bancos de Dados DCC 011

10

Notao ER
(Resumo)

Introduo a Bancos de Dados DCC 011

Exemplo de um diagrama ER com a notao (min,max)


Introduo a Bancos de Dados DCC 011

11

Notao UML

Introduo a Bancos de Dados DCC 011

Especializao e Generalizao
Subclasses e Superclasses


Especializao:


Generalizao:


Processo de definio de um conjunto de subclasses (sub-tipos) de um tipo de entidade


Processo de definio de um tipo de entidade
genrico (super-classe ou super-tipo) a partir de
um conjunto de tipos de entidade

Exemplo:
{SECRETARIA, ENGENHEIRO, TECNICO}
uma especializao de EMPREGADO ou
EMPREGADO uma generalizao de
{SECRETARIA, ENGENHEIRO, TECNICO}
Introduo a Bancos de Dados DCC 011

12

Especializao e Generalizao


Toda instncia de uma sub-classe (ou subtipo) tambm uma instncia de sua superclasse (ou super-tipo)


Ex.: John Smith um engenheiro e tambm um


empregado

Herana de atributos e relacionamentos:




Uma entidade de uma sub-classe possui todos os


atributos e relacionamentos de sua super-classe,
ou seja, ela herda todos os atributos e
relacionamentos da super-classe
Alm disso, uma entidade de uma sub-classe pode
possuir seus prprios atributos e relacionamentos
locais ou especficos
Introduo a Bancos de Dados DCC 011

Instncias das subclasses de EMPREGADO


Introduo a Bancos de Dados DCC 011

13

Especializao


O processo de especializao permite:




Definir um conjunto de sub-classes (subtipos) de um determinado tipo de entidade


Estabelecer atributos especficos adicionais
para cada sub-classe (sub-tipo)
Estabelecer tipos de relacionamento
especficos adicionais entre cada sub-classe
(sub-tipo) e outros tipos de entidade ou
sub-classes (sub-tipos)

Introduo a Bancos de Dados DCC 011

Exemplos de especializaes
Introduo a Bancos de Dados DCC 011

14

Especializao definida por atributo


Introduo a Bancos de Dados DCC 011

Generalizao


O processo de generalizao permite:




Definir um determinado tipo de entidade


como uma generalizao de um conjunto
de sub-classes (sub-tipos)
Simplificar a representao de cada subclasse (sub-tipo) fatorando-se seus
atributos e tipos de relacionamento

Introduo a Bancos de Dados DCC 011

15

Exemplo de generalizao
Introduo a Bancos de Dados DCC 011

Restries sobre Hierarquias de


Especializao/Generalizao


Disjuo:


Completude:


Sub-classes podem ser disjuntas ou sobrepostas


A completude da super-classe em relao s subclasses pode ser total ou parcial

Restries possveis:





Disjunta/Total
Disjunta/Parcial
Sobreposta/Total
Sobreposta/Parcial
Introduo a Bancos de Dados DCC 011

16

Hierarquia disjunta e total


Introduo a Bancos de Dados DCC 011

Hierarquia sobreposta e total


Introduo a Bancos de Dados DCC 011

17

Hierarquia de especializao com subclasse compartilhada


(reticulado)
Introduo a Bancos de Dados DCC 011

Hierarquia de especializao com herana mltipla


Introduo a Bancos de Dados DCC 011

18

Relacionamentos Ternrios ou
Binrios
N

NumPeca

PECA

NumPeca

PECA

Introduo a Bancos de Dados DCC 011

Relacionamentos Ternrios
Representao usando Entidade Fraca

1
NumPeca

PECA

Introduo a Bancos de Dados DCC 011

19

Relacionamentos Ternrios
Outro Exemplo de No Equivalncia

Introduo a Bancos de Dados DCC 011

Relacionamentos Ternrios
Tipo de Entidade Fraca

Introduo a Bancos de Dados DCC 011

20

Agregao
Permite que entidades de determinados tipos relacionadas entre
si por meio de um relacionamento possam ser tratadas como
um objeto agregado de mais alto nvel.

Introduo a Bancos de Dados DCC 011

Como Realizar uma Agregao?


(2)

(1)

?
(3)

(4)

X
Introduo a Bancos de Dados DCC 011

21

Resumo



Modelo ER: usado na fase de projeto


conceitual
Conceitos bsicos: entidades, atributos,
relacionamentos







Entidades e relacionamentos organizados em tipos


Relacionamentos binrios e n-rios
Notao diagramtica

Restries de integridade: cardinalidade e


participao
Conceitos adicionais: generalizao,
especializao e agregao
Introduo a Bancos de Dados DCC 011

Questes e Exerccios Sugeridos




Captulo 3:


3.4, 3.6, 3.8, 3.13, 3.16, 3.23

Captulo 4:


4.1, 4.3, 4.6, 4.8, 4.17, 4.21

Introduo a Bancos de Dados DCC 011

22

Você também pode gostar