Buscar

aula3_MER_Estendido

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1
BANCO DE DADOS 
 
Modelo Entidade-Relacionamento Estendido 
 
Profa. Gisele Busichia Baioco 
gisele@ft.unicamp.br 
 
1 Abstrações em Modelos de Dados 
O conceito de abstrações de dados consiste em, durante o processo de modelagem 
dos dados, abstrair-se a informação que é necessária, desconsiderando-se a que não é. 
Os modelos de dados semânticos e orientados a objetos providenciam mecanismos para 
a representação de abstrações em um esquema de dados, permitindo que a informação seja 
mantida tanto em sua forma mais abstrata como em sua forma mais detalhada, sendo possível 
acessar a informação dessas duas formas. 
Considerando uma informação como uma coleção de objetos, pode-se identificar um 
objeto como a representação da informação de maneira mais abstrata, chamado objeto 
abstrato, e a informação mais detalhada como representada por um ou mais objetos, 
chamados objetos detalhe. Na figura seguinte é apresentada uma interpretação genérica de 
abstração, onde o objeto abstrato relaciona-se com o objeto detalhe através dos 
relacionamentos abstrair e detalhar. Essa conexão semântica entre os objetos envolvidos em 
uma abstração é responsável por permitir uma visão mais abstrata ou detalhada da informação. 
 
objeto abstrato 
objeto detalhe 
detalhar abstrair 
 
 
No processo de modelagem de dados, detalhar ou abstrair são ações diferentes: 
Detalhar: modelar os dados gerais e, posteriormente, determinar quais são os detalhes 
de interesse e integrá-los aos demais elementos do esquema de dados. 
Abstrair: modelar os dados detalhados e, posteriormente, verificar se esses dados 
podem ser abstraídos. 
Usando abstrações de dados, o resultado final do processo de modelagem é o mesmo 
(as informações são mantidas tanto em sua forma mais abstrata como em sua forma mais 
detalhada). 
 A seguir tem-se a idéia geral das principais abstrações existentes em modelos de dados: 
 2
• Generalização: abstração de características comuns (genéricas) contidas em vários objetos 
e generalizá-las em um único objeto; 
• Classificação: objetos semelhantes são classificados através de um tipo; 
• Agregação (Associação): associação de objetos já existentes para a criação de outros 
objetos com características próprias; 
• Composição: objetos são compostos por outros objetos; 
• Sumarização: objetos são agrupados para resumir informações de outros objetos (média, 
total, somatório, etc). 
 
Na tabela seguinte tem-se um resumo dos elementos de cada uma dessas abstrações de 
acordo com a figura anterior: 
 
Abstração Detalhe 
Componentes Relacionamentos 
Propriedade Objeto 
Abstrato 
Objeto 
Detalhe 
Abstrair Detalhar 
Generalização Especialização genérico específico 
generalizar 
(é um) 
especializar herança 
Classificação Instanciação 
classe 
(tipo) 
instância 
pertencer 
(é do tipo) 
instanciar 
criação 
(formatação) 
Agregação Separação agregação parte 
associar 
(faz parte de) 
separar identificação 
Composição Decomposição 
composto 
(complexo) 
parte 
compor 
(é parte de) 
decompor 
propagação (o que 
se faz no todo se 
faz nas partes) 
Sumarização Separação resumo amostra sumarizar amostrar 
operação (média, 
total, mínimo, etc) 
 
Existe uma variação muito grande entre o que se entende por abstração de 
Composição, Agregação e Sumarização. Alguns autores consideram Agregação e Sumarização 
como casos particulares de Composição. 
Duas abstrações de dados foram incorporadas ao ME-R, resultando no ME-R 
Estendido: Generalização e Agregação. 
2 Abstração de Generalização no ME-R Estendido 
2.1 Classes, Subclasses e Superclasses 
Uma classe de entidades representa um grupo de entidades do mesmo tipo. Por 
exemplo, o CE Funcionário do esquema de dados de uma empresa é uma classe. 
Em alguns casos, uma classe tem subgrupos de suas entidades que são significativos e 
precisam ser representados em razão de sua importância. Por exemplo, as entidades da classe 
Funcionário podem ser agrupadas nos subgrupos Secretária, Engenheiro e Técnico. Assim, 
toda entidade que é um membro de um desses subgrupos é também um Funcionário. 
Os subgrupos de entidades de uma classe são denominados de subclasses, enquanto 
que a classe é a superclasse para cada uma das subclasses. O relacionamento existente entre 
eles é denominado relacionamento subclasse/superclasse. Por exemplo, a classe Funcionário 
é uma superclasse, os subgrupos Secretária, Engenheiro e Técnico são subclasses da 
superclasse Funcionário. Esquematicamente, tem-se: 
 3
 
Funcionário 
Engenheiro Secretária Técnico 
superclasse 
subclasses 
relacionamento 
superclasse-subclasse 
 
 
Uma entidade membro de uma superclasse pode ser membro de qualquer número de 
subclasses, inclusive pode ser membro de nenhuma subclasse. Por exemplo: no caso da 
modelagem de uma cooperativa médica, é possível que um médico possa ser também 
beneficiário de planos de saúde da cooperativa, sendo que médicos e beneficiários são pessoas. 
Pode-se considerar também que existam pessoas que pertencem à cooperativa, mas não são 
nem médicos e nem beneficiários. Esquematicamente tem-se: 
 
 
Pessoa 
Médico Beneficiário 
 
2.2 Herança de Atributos 
 A herança de atributos é um conceito associado ao relacionamento superclasse-
subclasse. 
Uma entidade membro de uma subclasse herda todos os atributos da superclasse, 
podendo ter também seus próprios atributos. Através da herança, os atributos que não estão 
presentes em uma subclasse podem ser obtidos na superclasse. Por exemplo, no esquema a 
seguir, sempre que se consultar o nome de um médico, esse será obtida na superclasse Pessoa. 
Esquematicamente tem-se: 
 
 
Pessoa 
Médico Beneficiário 
nome 
 
 
Um mesmo CE pode ser subclasse de mais de uma superclasse. Então, esse CE herda 
os atributos das várias superclasses, o que é conhecido como herança múltipla. Vale ressaltar 
também que uma hierarquia pode ter vários níveis. 
 4
Exemplo: 
 
 
Pessoa 
Professor Aluno Funcionário 
Pós-Graduação Graduação Assistente Titular 
Herança Múltipla 
 
2.3 A Abstração de Generalização 
 
Genérico 
Específico 
especializar generalizar 
(é-um) 
Propriedade: 
Herança 
 
 
Abstração de Generalização: consiste em abstrair as características comuns contidas 
em vários CEs e generalizá-las em um único CE genérico (CEg), resultando em uma hierarquia 
onde o CEg representa o nível superior e é especializado em vários CEs específicos 
(CEe1,…,CEen) que podem ser também especializados. 
De acordo com os conceitos de superclasse e subclasse: 
CEg – superclasse; 
CEs específicos (CEe1,…,CEen) – subclasses. 
 
Representação: existem várias notações para a representação de abstrações de 
generalização no ME-R Estendido. A seguir é apresentada uma notação muito usada. 
 
 
CEen CEe1 ... 
CEg 
 
 
 5
Exemplo: 
 
 
Pessoa 
Professor Aluno Funcionário 
Pós-Graduação Graduação Assistente Titular 
 
 
Restrições: 
 
• pode-se generalizar apenas CEs, CRs nunca são generalizados; 
 
• um CEg pode estar associado a mais de um grupo de CEs específicos, mas para 
cada grupo de CEs específicos pode haver apenas um único CEg. Exemplo: 
 
 
Pessoa 
Professor Aluno Funcionário 
Mulher Homem 
Proibido 
 
 
Propriedades da abstração de generalização: 
 
• Participação Total ou Parcial: a ocorrência da abstração de generalização é total 
quando a união de todos os CEs específicos resulta no CEg, caso contrário, a 
ocorrência da generalização é parcial. Na representação mostrada na figura seguinte, a 
haste dupla indica participação total e a haste simples indica participação parcial; 
 
 6
• Exclusão Mútua ou Sobreposição: a abstração de generalização ocorre com 
exclusão mútua se, para quaisquer i e j distintos, CEei∩CEej = ∅, caso contrário, a 
abstração de generalização ocorre com sobreposição. Na representação mostrada na 
figura seguinte, o triângulo sem preenchimento indica exclusão mútua e o triângulo 
preenchido indica sobreposição. 
 
 
Participação Totale Exclusão Mútua 
CEen CEe1 
CEg 
... CEen CEe1 ... 
CEg 
Participação Parcial 
e Exclusão Mútua 
CEen CEe1 
CEg 
... 
Participação Total 
e Sobreposição 
CEen CEe1 ... 
CEg 
Participação Parcial 
e Sobreposição 
Abstração de Generalização 
 
 
Exemplos: 
 
1) Participação total e exclusão mútua: um departamento ministra disciplinas para 
cursos de graduação e pós-graduação. Além disso pode ministrar disciplinas de especialização 
para treinamento de funcionários de empresas. Só existem disciplinas de graduação, pós-
graduação e especialização. Uma disciplina ou é de graduação ou é de pós-graduação ou é de 
especialização. 
 
 
Disciplina 
Pós-graduação Graduação Especialização 
 
 
2) Participação parcial e exclusão mútua: no exemplo 1 considera-se que possam existir 
disciplinas que não são nem de graduação, nem de pós-graduação e nem de especialização. 
 
 
Disciplina 
Pós-graduação Graduação Especialização 
 
 
 7
3) Participação total e sobreposição: no exemplo 1 considera-se que uma mesma 
disciplina pode ser de graduação, de pós-graduação e de especialização ao mesmo tempo. 
 
 
Disciplina 
Pós-graduação Graduação Especialização 
 
 
4) Participação parcial e sobreposição: no exemplo 3 considera-se que possam existir 
disciplinas que não são nem de graduação, nem de pós-graduação e nem de especialização. 
 
 
Disciplina 
Pós-graduação Graduação Especialização 
 
 
Atributos e chaves: 
 
CEg e CEs específicos têm todas as características dos CEs do ME-R. O CEg é descrito 
pelos atributos comuns aos vários CEs específicos que podem associar atributos adicionais e 
relacionar-se com outros CEs. Entretanto, o ME-R exige que todos os CEs tenham uma chave, 
mas no ME-R Estendido essa exigência existe somente para o CEg, ou seja, não é obrigatório 
que CEs específicos tenham chave. 
Exemplo: 
 
 
Pessoa 
Professor Aluno Funcionário 
RG 
nome 
idade 
referência 
área_pesquisa 
ra nfuncional 
 
 
 8
Relacionamentos: 
 
Pode-se estabelecer relacionamentos com entidades de um CEg e também com 
entidades de CEs específicos entre si e individualmente. 
Exemplo: 
 
 
Pessoa 
Professor Aluno Funcionário 
RG 
nome 
idade 
referência 
área_pesquisa 
ra nfuncional 
Departamento Possuir 
Orientar 
N 1 
N 1 
Disciplina 
Ministrar 
N 
M 
código 
nome 
código 
nome 
nhoras 
data
 
 
Quando usar abstração de generalização: 
 
1o. Caso: quando certos atributos podem ser aplicados somente a algumas entidades da 
superclasse. Então, uma subclasse é definida para agrupar as entidades as quais esses atributos 
se aplicam. Por exemplo, a subclasse Secretária pode ter o atributo velocidade_de_toque que 
um engenheiro não tem. Em compensação ambos tem os atributos nome, endereço, que ficam 
na superclasse Funcionário. 
 
2o. Caso: quando algum CR pode estar relacionando apenas algumas entidades da 
superclasse. Então, uma subclasse é definida para participar do CR. Por exemplo, se somente 
funcionários mensalistas do CE Funcionário pertencem a um sindicato de trabalhadores, deve-
se criar o CR Pertencer, o CE Sindicato e a subclasse Mensalista (da superclasse Funcionário) 
e deve-se relacionar o CR Sindicato com a subclasse Mensalista pelo CR Pertencer. 
 9
3 Abstração de Agregação no ME-R Estendido 
 
Agregação 
Parte 
separar associar 
(faz parte de) 
Propriedade: 
Identificação 
 
 
Abstração de Agregação: consiste em associar CEs cujas entidades estejam 
relacionadas através de um CR, gerando um objeto agregado AG, que pode ter atributos 
próprios. 
Na agregação, o CR e os CEs vinculados são tratados como um CE de nível mais alto. 
Tal CE é tratado do mesmo modo que qualquer outro CE do ME-R. 
 
Representação: 
 
CR 
AG 
 
 
Restrição: 
 
A abstração de agregação deve ser composta por apenas um único CR de qualquer 
grau e de qualquer cardinalidade. 
 
Quando e como usar abstração de agregação: 
 
1
o
. Caso: uma restrição do ME-R é que não é possível representar relacionamentos 
entre relacionamentos. Por exemplo, considerando uma BD que contenha informação sobre 
empregados que trabalham em um dado projeto: 
 
 
Projeto Empregado Trabalhar N M 
 
 
Considerando que, para alguns projetos, os empregados usam máquinas para realizar o 
trabalho. Usando os construtores semânticos básicos do ME-R, tem-se as seguintes opções de 
representação: 
 10
a) 
 
Projeto Empregado Trabalhar 
Máquina 
 
 
b) 
 
Projeto Empregado Trabalhar 
Máquina 
Usar 
Proibido no ME-R! 
 
 
A representação mostrada em a) está incorreta pois supõe que máquinas são utilizadas 
em todos os projetos. A representação mostrada em b) não é permitida no ME-R. 
Então, a solução é usar a abstração de agregação. No exemplo anterior, o CR 
Trabalhar e os CEs Empregado e Projeto podem ser tratados como um CE de nível mais 
alto, chamado Trabalho. 
 
 
Projeto Empregado Trabalhar 
Máquina 
Usar 
Trabalho
 
 
 11
2o. Caso: no ME-R não é possível que um CR tenha chave. Assim, quando é necessário 
identificar cada relacionamento de um CR (quando houver mais de um relacionamento 
envolvendo as mesmas entidades) deve-se usar a abstração de agregação. A identificação pode 
ser feita de duas formas: 
a) criando uma chave própria para a agregação. Exemplo: 
 
Produto Vendedor 
Vender 
Cliente 
Venda
código 
data 
valor 
 
 
b) criando uma chave pela adição de um atributo próprio da agregação aos 
identificadores das entidades que participam do relacionamento. Esse tipo de identificação é 
chamado de chave adicional e é representado por um sinal de adição (+) no atributo da 
agregação que participada chave. Exemplo: 
 
Produto Vendedor 
Vender 
Cliente 
Venda
data+ 
valor 
 
 
Pode-se ter ambas as chaves (própria e adicional) representadas na agregação. 
Exemplo: 
 
Produto Vendedor 
Vender 
Cliente 
Venda
código 
data+ 
valor 
 
 12
4 Exercícios de Fixação 
 
Fazer a modelagem das seguintes especificações, usando o ME-R Estendido: 
 
1. Uma concessionária decidiu fazer a folha de pagamento dos funcionários que são horistas ou 
mensalistas. A concessionária possui vários departamentos que por sua vez são compostos por 
funcionários. Cada departamento possui um código identificador, descrição (que informa o 
nome do depto), enquanto o funcionário tem número identificador, RG, CPF, nome, endereço 
e salário. O funcionário pode trabalhar em um único departamento, este por sua vez pode 
alocar vários funcionários. Os funcionários podem ter vários dependentes que são identificados 
por um código, tendo ainda nome e vínculo. Os funcionários horistas possuem o número de 
horas trabalhadas, enquanto os mensalistas possuem salário base. 
 
2. Uma companhia ferroviária decidiu fazer o controle de seus funcionários e serviços de 
manutenção. Considera-se que a empresa tem vários funcionários, que podem ser maquinistas 
ou engenheiros mecânicos, identificados por um código e nome. Os engenheiros possuem, 
além disso, o número do Crea. Para os maquinistas deve-se totalizar o número de horas de 
viagem. Os engenheiros realizam serviços diários em várias oficinas, que por sua vez possuem 
código e nome. É necessário guardar a data em que foi realizado o serviço, servindo de base 
para uma pesquisa feita pela empresa todo fim de ano. 
 
3. Uma universidade decidiu fazer um controle interno das pessoas vinculadas a esta, 
juntamente com sua função. Essas pessoas são: professores, alunos e funcionários. O professor 
tem rg, nome, endereço, salário e titulação e ministra várias disciplinas, além de orientar vários 
alunos. Estes últimos possuem número de matrícula identificador, rg, nome, endereço e idade, 
podendo ser orientados por um único professor. Na orientação de um professor a um aluno 
deve ser guardada se a mesma é de mestrado ou doutorado e a data de defesa. Uma disciplina 
pode ser ministrada por um único professor e tem sigla identificadora, nome e a carga horária. 
Os funcionários têm número funcional identificador,rg, nome, endereço e salário. Um 
professor é também considerado um funcionário da universidade, com a diferença de que não é 
um funcionário da área administrativa, sendo que os funcionários da área administrativa devem 
ter armazenado o setor em que trabalham. 
 
4. Um banco de dados está sendo feito para controlar equipes esportivas. Alguns tipos são 
voleibol, natação, futebol, entre outros. As equipes de futebol têm o nome do goleiro e são 
vinculadas a CBF, que tem código identificador e cidade sede. As equipes de natação guardam 
o melhor tempo. Cada equipe tem um código identificador, tipo e pode ser composta por 
vários atletas com código, nome, modalidade, altura e peso. Um atleta pode estar vinculado a 
apenas uma equipe. 
 
5. Uma companhia precisa fazer a contratação de funcionários. Vários funcionários do setor de 
recursos humanos da companhia entrevistam vários candidatos às vagas oferecidas. Cada 
funcionário do setor de recursos humanos tem um código, nome, rg, endereço e salário, 
enquanto que para cada candidato é armazenado o rg, nome, endereço, telefone e e-mail. Para 
cada vaga oferecida deve ser armazenado um código, cargo e perfil. Um resultado positivo de 
uma entrevista resulta no preenchimento de uma vaga oferecida. Cada entrevista deve ser 
identificada por um código e deve armazenar a data e o resultado. 
 
 13
6. Uma companhia de produtos de medida eletrônicos produz equipamentos de medida, sendo 
que cada um é composto por placas de circuitos impressos. Uma mesma placa pode ser 
incluída em mais de um equipamento de medida, sendo que cada placa é composta por um ou 
mais circuitos integrados. Um mesmo circuito integrado pode compor várias placas de 
circuitos impressos. Cada circuito integrado é comprado de vários fornecedores em uma data, 
sendo que cada fornecedor pode vender vários circuitos integrados. Os fornecedores são 
cadastrados com CNPJ, razão social e endereço. Para cada compra, o pagamento pode ser 
parcelado em duas ou mais faturas que devem possuir um número e valor. Cada equipamento 
de medida deve ter um código, descrição e tensão de alimentação; cada placa de circuito 
impresso deve possuir um código e descrição; cada circuito integrado deve possuir um código, 
descrição e quantidade em estoque.

Outros materiais