Você está na página 1de 5

10/06/2013

Introduo Modelagem com EntidadeRelacionamento Estendido


Os conceitos de modelagem apresentados anteriormente servem para representar grande parte das aplicaes de bancos de dados tradicionais. Atualmente, pode surgir a necessidade de maior exatido na modelagem para melhor retratar as propriedades e restries de bancos com requisitos mais complexos, como:
BDs para aplicaes de engenharia e manufatura Sistemas de telecomunicaes Sistemas de software complexos Sistemas de Informao Geogrfica Etc.

Para modelagem de aspectos mais complexos, o modelo ER pode ser expandido, levando ao modelo Entidade Relacionamento Estendido ou EER.

Subclasse

Subclasses, Superclasses e Herana

Conceito que representa subgrupos dos tipos entidade, que so significativos e necessitam ser representados explicitamente, em virtude de sua importncia para a aplicao de banco de dados.
As subclasses tambm so consideradas tipos entidade.

O conjunto de entidades de cada subgrupo um subconjunto do conjunto de entidades do tipo entidade imediatamente superior (superclasse).

Subclasse
Uma entidade no pode existir em um banco apenas por ser membro de uma subclasse; Ela precisa ser tambm membro de uma superclasse. A subclasse deve possuir valores para seus atributos especficos, bem como para seus atributos como membro da superclasse.
A subclasse herda todos os atributos e relacionamentos da superclasse.

Notao EER para subclasses/especializao


CPF Nome DataNasc Endereco EMPREGADO

U
VelocDigitacao TGrau TipoEng SECRETARIA TECNICO ENGENHEIRO Um d representa subclasses disjuntas (um tipo entidade pode ser membro de no mximo uma subclasse), e um o, subclasses sobrepostas (a entidade pode constar em mais de uma subclasse.

10/06/2013

Notao EER para subclasses/especializao


CPF Nome DataNasc Endereco PESSOA

Especializao
Especializao - Processo de definir o conjunto de subclasses de um tipo entidade (tipo entidade superclasse).
Abordagem top-down. Ex.: Criao de subclasses para o tipo entidade EMPREGADO, baseada nas diferentes caractersticas que as definem.

CargaHoraria

Area

PROFESSOR

PESQUISADOR

Bastante til quando apenas um subconjunto do conjunto de entidades utiliza determinado atributo ou participa de determinado relacionamento com outro tipo entidade.

O smbolo do subconjunto em cada linha conectando a subclasse ao crculo indica a direo do relacionamento superclasse/subclasse

Generalizao
Generalizao Processo de supresso das diferenas entre diversos tipos entidade, identificao de suas caractersticas comuns, e unio dessas caractersticas em uma superclasse.
Abordagem bottom-up. Ex.: A partir das caractersticas comuns entre os tipos entidade CARRO e CAMINHAO, criar a superclasse VEICULO

Caractersticas e restries da especializao e generalizao

Restries na Especializao e Generalizao


Especializao definida por predicado as entidades que vo participar de uma subclasse so definidas baseado no valor de algum atributo da superclasse. Especializao definidas por atributo todas as entidades que vo participar de uma subclasse so definidas com base no valor de um mesmo atributo da superclasse. Especializao definida pelo usurio No existe uma condio para que uma entidade seja membro de uma subclasse. Esse membro definido pelo usurio na operao que adiciona a entidade subclasse.

Restries na Especializao e Generalizao


Restrio de disjuno (disjointness) especifica que as subclasses na especializao devem ser mutuamente exclusivas.
Caso as subclasses no estejam condicionadas a ser disjuntas, seus conjuntos de entidades podem sobrepor-se (overlap).

Restries de integralidade:
Total toda entidade na superclasse deve ser membro de pelo menos uma subclasse.
Representada por uma linha dupla no diagrama ER.

Parcial algumas entidades na superclasse podem no pertencer a nenhuma subclasse.

Estas duas restries podem ser combinadas (disjuno total, disjuno parcial, sobreposio total e sobreposio parcial).

10/06/2013

Especializao Sobreposta
NumPeca PECA Descricao

Algumas regras de especializao/generalizao


Deletar uma entidade de uma superclasse implica que ela seja excluda das subclasses s quais pertence. Inserir uma entidade em uma superclasse implica que ela seja inserida, obrigatoriamente, em todas as subclasses definidas por predicado ou por atributo, para as quais a entidade satisfizer a definio por predicado Inserir uma entidade em uma superclasse de especializao total implica que a entidade seja, obrigatoriamente, inserida em pelo menos uma das subclasses da especializao.

Integralidade total
o

DataFabricacao NomeFornecedor NumDesenho PECA_FABRICADA NumLote ListaPreco PECA_FORNECIDA

O smbolo do subconjunto em cada linha conectando a subclasse ao crculo indica a direo do relacionamento superclasse/subclasse

Hierarquias e reticulados de Especializao e Generalizao


Conceitos provenientes da possibilidade de uma subclasse possuir outras subclasses, que herdam atributos das superclasses predecessoras at a raiz da hierarquia/reticulado. Hierarquia de especializao restringe todas as subclasses a participarem de apenas um relacionamento classe/subclasse (cada subclasse tem apenas um pai) Especializao reticulada uma subclasse pode participar de mais de um relacionamento classe/subclasse, herdando os atributos e relacionamentos de mltiplas superclasses (herana mltipla).

Reticulado de especializao (classe GERENTE_ENGENHARIA compartilhada)


EMPREGADO

U
ENGENHEIRO ENGENHEIRO EMP_ASSALARIADO

U
SECRETARIA TECNICO

EMP_HORISTA

U
GERENTE_ENGENHARIA

NrLicencaMotorista

NomeB BANCO

EndereoB

CNPJ EMPRESA

NomeE

Tipos Unio (Categorias)


Ocorrem quando surge a necessidade de modelar um relacionamento subclasse/superclasse que possua vrias superclasses. A Herana funciona mais seletivamente em categorias que no reticulado, permitindo que uma categoria herde caractersticas de uma superclasse individual. Categorias podem ser:
Totais controla a unio de todas as entidades em uma superclasse. (equivale especializao total). Representadas por uma linha dupla conectando a categoria ao circulo Parciais controla um subconjunto da unio. Representada por uma linha simples.

CPF

PESSOA U

U
TIPO UNIO
PROPRIETARIO M POSSUI N VEICULO_REGISTRADO

AlienadoOuRegular DataAquisio

ModeloC MarcaC EstiloC IdVeiculo

AnoC

CARRO

U
U

AnoCam MarcaCam ModeloCam EstiloCam CAMINHAO IdVeiculo

10/06/2013

Definies formais para os conceitos do modelo EER


Classe conjunto ou coleo de entidades. (Ex.: tipos entidade, subclasses, superclasses, e categorias) Subclasse Uma subclasse S uma classe cujas entidades devem ser sempre um subconjunto das entidades de outra classe, chamada superclasse C do relacionamento superclasse/subclasse.

Definies formais para os conceitos do modelo EER (cont.)


Uma especializao Z um subconjunto de classes que tm a mesma superclasse G.

Z = {S1, S2, ... Sn}


Especializao total

Especializao disjunta

=
=

Si Sj = para i j

Generalizao/entidade generalizada Superclasse da especializao.

SC

Definies formais para os conceitos do modelo EER (cont.)


Uma categoria T uma classe que um subconjunto da unio de n superclasses definidas D1, D2, ..., Dn, n > 1.

Tipos Relacionamento com Grau Maior que Dois


Grau Quantidade de entidades participantes do tipo relacionamento
Binrio duas entidades participantes Ternrio trs entidades participantes

T (D1 D2 ... Dn)

Dependendo da ferramenta de projeto, pode ser necessrio representar um relacionamento com grau maior que dois na forma de vrios relacionamentos binrios (com uso de restries adicionais, principalmente cardinalidade) e de entidades fracas para representar os relacionamentos.

Classificao/Instanciao
Classificao correlao de similaridade entre os objetos/entidades com as classes de objeto/tipos entidade Instanciao processo inverso da classificao e se refere gerao e ao exame especfico dos diferentes objetos de uma classe. Uma instncia de objeto se relaciona sua classe pelo relacionamento E_UMA_INSTANCIA_DE ou E_UM_MEMBRO_DE.

Outros conceitos de modelagem

10/06/2013

Identificao
Processo de abstrao pelo qual as classes e os objetos so identificados univocamente por meio de um identificador.
Ex.: um nome de classe identifica univocamente toda uma classe Necessria para:
Distino entre objetos e classes do banco de dados. Identificar os objetos do banco de dados e relacion-los aos seus correspondentes no mundo real.

Associao
Associa objetos de diversas classes independentes. Representada no modelo EER por tipos relacionamento. Esse relacionamento abstrato conhecido como ESTA_ASSOCIADO_COM.

Agregao
Conceito para construo de objetos compostos a partir de seus objetos componentes.
Ex.: Uma entrevista de emprego formada de uma empresa, e um candidato a emprego Uma reunio precisa de uma pauta, de uma sala e de participantes.

No modelo ER, agregaes so representadas por meio do uso de entidades fracas. Chamamos esse relacionamento entre objetos primitivos e agregados de E_UMA_PARTE_DE ou E_UM_COMPONENTE_DE.

Você também pode gostar