Você está na página 1de 28

Tpicos Avanados de Base de Dados Tema: Modelo Entidade Relao Extendido (MERX)

Introduo:
O modelo relacional estendido vem completar o processo de modelagem de dados e agregar novas caractersticas. J as ferramentas CASE so o verdadeiro canivete suo no processo de automatizao do desenvolvimento e manuteno do modelo de dados. Este modelo, tambm chamado de MER-RX ou MEE, uma extenso do modelo original proposto por Chen, o qual foi apresentado pelos irmos Smith em 1977. H algumas caractersticas do mundo real que no podem ser expressas pelo modelo bsico; ento, o modelo estendido foi proposto na tentativa de permitir contempl-las. Com isso, alguns aspectos particulares de um banco de dados seriam expressos de um modo mais conveniente para os analistas.

Identificador de Relacionamentos

Uma ocorrncia de relacionamento diferencia-se das demais ocorrncias do mesmo relacionamento pelas ocorrncias de entidades que dele participam
Engenheiro
n Alocao n

Projeto

H casos nos quais entre as mesmas ocorrncias de entidade podem existir diversas ocorrncias de relacionamento
Mdico
n Consulta n

Paciente

data

Conceitos Usados pelo MERX:


1. 2. 3. 4. 5. 6. 7. Especializao Generalizao Herana Agregao Herana Mltipla Dependncia Existencial Entidade Fraca

1. Especializao:
Podem-se modelar entidades que representem mais do que algo simples do mundo real, caracterizando duas coisas semelhantes que diferem entre si por alguns detalhes. o processo inverso Generalizao, j que se trata da definio das particularidades de cada objeto ou elemento, so elementos mais consistentes que estendem o elemento genrico. Sua simbologia um tringulo com o topo voltado para as entidades especializadas e internamente nomeado por ISA (is a = um)

Exemplo de especializao:

2. Generalizao:
A Generalizao o tipo de especializao mais utilizado durante a modelagem de dados. Podem-se modelar entidades com caracterstica semelhantes s caractersticas de outras entidades j existentes no modelo, causando uma certa repetio de elementos nesse modelo que pode ser desnecessria. Numa definio bsica do que seria este conceito, pode-se dizer que se trata do relacionamento entre uma classe e um ou mais verses refinadas (especializadas) desta classe. A classe sendo refinada chamada de superclasse ou classe base, enquanto que a verso refinada da classe chamada uma subclasse ou classe derivada. Atributos e operaes comuns a um grupo de classes derivadas so colocadas como atributos e operaes da classe base, sendo compartilhados por cada classe derivada. Diz-se que cada classe derivada herda as caractersticas de sua classe base. Algumas vezes, generalizao chamada de relacionamento is-a (-um), porque cada instncia de uma classe derivada tambm uma instncia da classe base. Sua simbologia a mesma da especializao

Exemplo de Generalizao:

3. Herana:
Caracterstica das tcnicas de generalizao ou especializao (podendo-se ento afirmar que se trata de uma consequncia destes dois processos) que as entidades de nvel inferior passam a ter os atributos e relacionamentos da entidade de nvel superior, de maneira explcita. No Exemplo a seguir, as subclasses herdam os atributos da superclasse:

Exemplo de Herana:

4. Agregao (Entidade Associativa):


Surgiu com base na limitao do MER original, onde no era possvel expressar relacionamentos entre relacionamentos. Considera-se como uma abstrao na qual os relacionamentos so tratados como entidades de nvel superior. Os seguintes exemplos mostram como o relacionamento no modelo original e logo como fica a transformao no modelo estendido.

Exemplo de Agregao:

Exemplo de Agregao:

5. Herana Mltipla:
Trata-se de um conceito avanado de herana, o qual possibilita o compartilhamento de atributos e operaes de duas ou mais classes em uma subclasse. O exemplo seguinte representa um caso de herana mltipla.

Exemplo de Herana Mltipla:

6. Dependncia Existencial:
Dependncia Existencial ocorre quando a existncia de uma determinada entidade est condicionada existncia de uma outra entidade a ela relacionada. A seguir, um exemplo representativo de dependncia existencial:

Exemplo de Dependncia Existencial:

7. Entidade Fraca:
J uma Entidade Fraca no possui sequer identidade prpria, sendo sua chave estrangeira proveniente da entidade dona concatenada a um identificador de si prpria (que pode repetir para diferentes instncias da entidade dona). Entidade que s existe quando relacionada a outra entidade, sendo seu identificador composto por atributos de outra entidade O exemplo abaixo mostra um relacionamento com uma entidade fraca.

Exemplo de Entidade Fraca:

Exemplo de Entidade Fraca:

Empregado

Atuao

Dependente

cdigo

nome

num seq

nome

Generalizao/Especializao
Atravs deste conceito possvel atribuir propriedades particulares a um subconjunto das ocorrncias (especializadas) de uma entidade genrica Representao grfica
Filial
1 n

Cliente

cdigo nome

Pessoa Fsica
CPF sexo

Pessoa Jurdica
CNPJ tipo de organizao

Generalizao/Especializao
Veculo

Veculo Terrestre

Veculo Aqutico

Automvel

Veculo Anfbio

Barco

Entidade Associativa (Agregao)


Um relacionamento uma associao entre entidades No foi previsto no modelo ER:
A associao entre uma entidade e um relacionamento A associao de dois relacionamentos entre si

Existem situaes em que desejvel permitir a associao de uma entidade a um relacionamento

Entidade Associativa (Agregao)


Suponha que seja necessrio modificar o modelo abaixo para incluir que medicamentos existem e que medicamentos foram prescritos em cada consulta
Mdico
n Consulta n

Paciente

A questo agora :
Com que entidade existente deve estar relacionada a nova entidade (Medicamento)?

Entidade Associativa (Agregao)


Se Medicamento fosse relacionado a Mdico:
Teramos apenas a informao de que mdico prescreveu que medicamento, faltando a informao do paciente que os teve prescritos.
n n Consulta n

Mdico

Paciente

n Prescrio

Medicamento

Entidade Associativa (Agregao)


Se Medicamento fosse relacionado a Paciente:
Faltaria a informao do mdico que prescreveu o medicamento.

Mdico

n Consulta

Paciente

Medicamento

n Prescrio

Entidade Associativa (Agregao)


Soluo:
Relacionar Medicamento Consulta, isto , vamos relacionar uma entidade a um relacionamento. Como fazer isso: usar o conceito de Entidade Associativa ou Agregao
Mdico
n
Consulta n

Paciente

Prescrio
n

Uma entidade associativa nada mais do que uma redefinio de um relacionamento que passa a ser tratado como se fosse tambm uma entidade.

Medicamento

Entidade Associativa (Agregao)


A figura do slide anterior equivalente a:
Mdico
1 n n 1

Paciente

Consulta
n

Prescrio
n

Medicamento

Você também pode gostar