MER - UFBa

Propaganda
MATA60 – BANCO DE DADOS
Aula 3- Modelo de Entidades e Relacionamentos
Prof. Daniela Barreiro Claro
Agenda


Modelo de Dados
MER
FORMAS - UFBA
2 de X; X=37
Modelo de Dados


O Modelo de Dados é a principal ferramenta que fornece a
abstração a um BD.
É um conjunto de conceitos que podem ser usados para descrever a
estrutura de uma base de dados.


Estrutura de uma base de dados entende-se os tipos de dados,
relacionamentos e restrições pertinentes aos dados.
Muitos modelos de dados também definem um conjunto de
operações para especificar como recuperar e modificar a base de
dados.
FORMAS - UFBA
3 de X
Modelo de Dados

Modelar é criar representações do mundo real
FORMAS - UFBA
4 de X
Modelo de Dados
Requisitos funcionais
Análise Funcional
Independente do SGBD
SGBD Específico
Projeto do Programa
de Aplicação
Implementação da Aplicação
Programas de Aplicação
Minimundo
Levantamento e Análise dos Requisitos
Requisitos dos dados
Projeto Lógico
Mapeamento do Modelo de Dados
Projeto Físico
Criação do banco de dados
5 de X
Modelo de Dados



A modelagem relacional pode ser representada via MER
(Modelo de Entidade Relacionamento)
O MER define estruturas e restrições e utiliza uma
notação denominada Diagrama ER
Diferentes autores propõem notações distintas do
Diagrama ER.
FORMAS - UFBA
6 de X
MER


A base do MER é representar o mundo real por meio de
conjuntos de objetos chamados entidades e
relacionamentos.
A junção ordenada/lógica destes tipos de objetos
representa a estrutura/esquema do mundo real. Ou seja,
deve suportar o armazenamento de dados que reflitam
a situação do mundo real
FORMAS - UFBA
7 de X
MER

Descreve os dados como

Entidades

Atributos

Relacionamentos
Prof. Daniela Barreiro Claro
8 de X
MER

Entidades
uma entidade é uma “coisa” ou um “objeto” do mundo real que
pode ser identificada(o) de uma forma unívoca em relação a
todos os outros objetos.
 Pode ser um objeto físico



carro, casa, pessoa, funcionário, livro
Objeto de existência conceitual ou abstrata

Empresa, trabalho, curso, empréstimo
FORMAS - UFBA
9 de X
MER – Requisitos de Negócio

Banco de Dados da Empresa Claro Ltda
A empresa Claro Ltda possui empregados. Ela está organizada em
departamentos.

Quais são entidades?
Empregados
 Departamentos

Entidade
Retângulo
FORMAS - UFBA
10 de X
MER

Atributos







Cada entidade tem atributos que são propriedades particulares que a descrevem
Cada instância de entidade terá um valor para cada um dos seus atributos
Este conjunto de entidades do mesmo tipo compartilham as mesmas propriedades
Atributos são propriedades descritivas de cada membro de um conjunto de entidades e cada
entidade tem seus próprios valores nos atributos.
Para cada atributo existe um conjunto de valores possíveis, chamado domínio.
Formalmente, um atributo de um conjunto de entidades é uma função que relaciona o conjunto
de entidades a seu domínio.
Cada entidade pode ser descrita pelo conjunto formado pelos pares (atributo-valor) referentes
a cada atributo do conjunto
conjunto em questão.
FORMAS - UFBA
11 de X
MER

Atributos
FORMAS - UFBA
12 de X
MER – Classes de Atributos

Atributos Compostos x Simples (atômicos)

Atributos compostos podem ser subdivididos até os atributos
simples
FORMAS - UFBA
13 de X
MER – Classes de Atributos

Atributos Monovalorados X Multivalorados
Valor único, ex. idade,bairro, cep
 Conjunto de valores, ex. cor, titulação, telefones, endereços


Atributos Armazenados X Derivados
Atributos calculados e derivados de outro atributo armazenado.
 Ex. idade, numeroEmpregados, somatorio, total

FORMAS - UFBA
14 de X
MER – Campos de Atributos

Atributos com valores nulos
Uma entidade pode não ter valor aplicável a um atributo
 Valor NULL pode ser:



Não aplicável – Apartamento, titulação
Desconhecido


Existe mas está faltando. Ex. a altura de uma pessoa
Nao se sabe se existe. Ex. telefone residencial
FORMAS - UFBA
15 de X
MER – Requisitos de Negócio

Banco de Dados da Empresa Claro Ltda
A empresa Claro Ltda possui empregados. Ela está organizada em
departamentos. Os empregados possuem nome, cpf, endereço,
telefones (residencial e comercial) e os departamentos possuem
codigo e o nome do departamento.

Quais são os atributos?
nome, cpf, endereço, telefones (residencial e comercial)
 codigo e o nome

FORMAS - UFBA
16 de X
Relacionamentos



Um relacionamento é uma associação entre várias entidades
Cada instância de um relacionamento ri em R é uma associação de
entidades, na qual a associação inclui exatamente uma instância
de uma entidade de cada entidade participante.
Exemplo

Um relacionamento que associa um cliente ‘Pedro’ a um emprestimo do livro
‘Metodologias do Ensino’ significa que o cliente ‘Pedro’ realizou tal
emprestimo do livro ‘Metodologias do Ensino’.
FORMAS - UFBA
17 de X
Relacionamentos



Formalmente

Um conjunto de relacionamentos é um conjunto de mesmo tipo.

O relacionamento é uma relação matemática com n>= 2 (n=numero de entidades)

Se E1, E2,...En são entidades então um conjunto de relacionamentos R é um subconjunto
de {(e1, e2,...e3) | e1 E E1, e2 E E2, e3 E E3}, em que e1, e2, e3 são relacionamentos.
A associação entre as entidades é referida como uma participação: o conjunto
de entidades E1, E2, ..., Em participa do conjunto de relacionamentos R.
Uma instância de relacionamento em um esquema E-R representa a existência de
uma associação entre essas entidades no mundo real no qual se insere o domínio
que está sendo modelado.
18 de X
Relacionamentos


Consideremos as entidades cliente e produto.
Definimos o conjunto de relacionamentos compra para denotar a associação
entre clientes e produtos adquiridos pelos clientes
FORMAS - UFBA
19 de X
Relacionamentos

Representação no Diagrama ER
Cliente


Compra
Produto
Grau de um Relacionamento

Número de entidades que participam desse relacionamento

2 entidades = grau 2 ou binário

3 entidades = ternário...
Atributos descritivos em relacionamentos

atributos podem fazer parte de conjuntos relacionamentos para melhor descrever o mundo real.

Exemplo: a data da compra do produto
20 de X
Relacionamentos


A função que uma entidade desempenha em um relacionamento é chamada
papel.
Algumas vezes uma “entidade” pode participar de um “relacionamento” mais
de uma vez em papéis diferentes e, nessas situações, o papel é importante
para interpretação do modelo.


Em relacionamentos recursivos, nomes explícitos de papéis são necessários para
especificar como uma entidade participa de uma instância de relacionamento.
Considere a entidade Empregado. Dado um relacionamentos é_supervisor_de
que é modelado para ordenar os pares de entidades de empregado numa
relação com o seu supervisor. Neste exemplo, os relacionamentos de
é_supervisor_de são caracterizados pelos pares (supervisor, empregado).
21 de X
Relacionamentos

Relacionamento Recursivo


Cada tipo entidade que participa de um tipo relacionamento
executa um papel particular no relacionamento
As vezes o mesmo tipo entidade participa mais de uma vez em um
tipo relacionamento

Esses tipos relacionamentos são chamados Relacionamentos recursivos
Prof. Daniela Barreiro Claro
22 de X
Relacionamentos


Restrições são determinadas pelos requisitos de negócios
Restrição: Razão de Cardinalidade

Representa o número máximo de instâncias que um relacionamento
pode participar

As razões de cardinalidade podem ser

1:1, 1:N, N:1, M:N
Prof. Daniela Barreiro Claro
23 de X
Relacionamentos

Mapeamento das cardinalidades expressa o número de entidade às quais
outra entidade pode estar associada via um conjunto de relacionamentos.

Um para um: uma entidade em A está associada no máximo a uma entidade em B, e uma
entidade em B está associada a no máximo uma entidade em A.

Um para muitos: Uma entidade em A está associada a várias entidades em B. Uma entidade
em B deve estar associada no máximo a uma entidade em A.

Muitos para um: Uma entidade em A está associada a no máximo uma entidade em B. Uma
entidade em B, pode estar associada a um número qualquer de entidades em A.

Muitos para muitos: Uma entidade em A está associada a qualquer número de entidades em B
e uma entidade em B está associada a um número qualquer de entidades em A.
FORMAS - UFBA
24 de X
Relacionamentos


Atributos de um Relacionamento

Pode ter atributos similares aos das entidades

Exemplo, data em que o gerente começou a gerenciar
Relacionamentos 1:1


Relacionamentos 1:N


Atributos podem migrar para qualquer uma das entidades participantes
um atributo pode ser migrado apenas para a entidade do lado N
Relacionamento MxN

os atributos são especificados como atributos do relacionamento

Horas é a combinação de empregado-projeto, Data_Compra
25 de X
Relacionamentos


Qual a diferença entre estas
quatro abordagens?
Em cada um destes casos, como
poderiamos tratar os atributos
do relacionamento?

FORMAS - UFBA
Exemplo: data_matricula
26 de X
Relacionamentos

Restrições de Participação e Dependência de Existência

Determina se a existência de uma entidade depende da existência de
outra

Ha dois tipos

Total e Parcial

Se a existência da entidade X depende da existência da entidade Y, então X
é dito dependente da existência de Y.

Operacionalmente, se Y deixar de existir, conseqüentemente, X deve deixar de
existir.
Prof. Daniela Barreiro Claro
27 de X
Chaves e restrições

Atributos Chaves


Restrição de unicidade em atributos
Valores distintos para cada uma das instâncias das entidades


Cpf, RG+ORGAO
Domínio dos Atributos


Conjunto de valores válidos para os atributos de cada entidade
sexo=‘F’ | ‘M’
FORMAS - UFBA
28 de X
Chaves e Restrições




Por meio de chaves podemos diferenciar as diversas entidades pertencentes a um conjunto de
entidades, e os diversos relacionamentos pertencentes a um conjunto de relacionamentos.
Conjuntos de Entidades

Superchave: conjunto de um ou mais atributos que, tomados coletivamente, nos permitem identificar de maneira
unívoca uma entidade em um conjunto de entidades.

Chaves candidatas: Superchaves para as quais nenhum subconjunto possa ser uma superchave.

Chave primária: chave candidata escolhida pelo projetista de banco de dados como a chave de significado
principal para a identificação de entidades dentro de um conjunto de entidades.
Uma chave é uma propriedade do conjunto de entidades e não de uma entidade individualmente.
Quaisquer duas entidades individuais em um conjunto não podem ter, simultaneamente, mesmos
valores em seus atributos-chave.
A especificação de uma chave representa uma restrição ao mundo real do domínio que está sendo
modelada.
29 de X
Chaves


Conjuntos de relacionamentos:

A composição da chave primária para um conjunto de relacionamentos depende de uma estrutura de atributos associada ao
conjunto de relacionamentos de R.

Se o conjunto de relacionamentos não possuir atributos então uma superchave deve ser formada pelas chaves de cada entidade
participante do relacionamento.

Se o conjunto de relacionamentos possuir atributos então uma superchave deve ser formada pelas chaves de cada entidade
participante do relacionamento mais o conjunto de atributos deste.
A estrutura da chave primária para o conjunto de relacionamentos depende do mapeamento da
cardinalidade do conjunto.

Muitos para muitos: união das chaves da entidade + atributos descritivos;

Muitos para um ou um para muitos: chave da entidade do lado do muitos + atributos descritivos

Um para um: qualquer umas das chaves primárias pode ser usada.
FORMAS - UFBA
30 de X
MER – Requisitos de Negócio

Banco de Dados da Empresa Claro Ltda
A empresa Claro Ltda possui empregados. Ela está organizada em departamentos. Os
empregados possuem nome, cpf, endereço, telefones (residencial e comercial) e os
departamentos possuem codigo e o nome do departamento. Um empregado trabalha para
um departamento. Cada empregado tem um supervisor que é um empregado. Cada
empregado trabalha somente para um departamento. Um empregado gerencia um
departamento. Um departamento controla um número qualquer (vários) de projetos. Um
empregado está alocado a um departamento mas pode trabalhar em diversos projetos
que não são controlados necessariamnte pelo mesmo departamento. Controla-se o número
de horas que um empregado trabalha em cada projeto. Todo empregado deve trabalhar
para um departamento.

Quais são os relacionamentos?
FORMAS - UFBA
31 de X
Relacionamentos

Entidade Fraca

São entidades que não tem seus próprios atributos-chaves

Entidade Fraca sempre possui uma restrição de participação total
(dependência de existência) em relação ao seu relacionamento
identificador

Uma entidade fraca tem normalmente uma chave parcial que é um
conjunto de atributos que a identifica quando relacionadas a uma
entidade proprietária.
Prof. Daniela Barreiro Claro
32 de X
Relacionamentos

Entidade Fraca

Um conjunto de entidades pode não ter atributos suficientes para formar uma chave
primária. São os conjuntos de entidades fracas.

Um conjunto de entidades que possui uma chave primária é dito forte.

A chave primária de um conjunto de entidades fracas é composto pela chave
primárias do conjunto de entidades fortes ao qual a existência do primeiro está
associada mais o identificador do conjunto de entidades fraca.

O relacionamento que associa o conjunto de entidades fracas a seu proprietário é o
relacionamento identificador.
FORMAS - UFBA
33 de X
MER – Requisitos de Negócio

Banco de Dados da Empresa Claro Ltda
A empresa Claro Ltda possui empregados. Ela está organizada em departamentos. Os
empregados possuem nome, cpf, endereço, telefones (residencial e comercial) e os
departamentos possuem codigo e o nome do departamento. Um empregado trabalha para
um departamento. Cada empregado tem um supervisor que é um empregado. Cada
empregado trabalha somente para um departamento. Um empregado gerencia um
departamento. Um departamento controla um número qualquer (vários) de projetos. Um
empregado está alocado a um departamento mas pode trabalhar em diversos projetos
que não são controlados necessariamnte pelo mesmo departamento. Controla-se o número
de horas que um empregado trabalha em cada projeto. Todo empregado deve trabalhar
para um departamento. Cada empregado possui um dependente. Os atributos do
dependente são: primeiro nome, data nascimento, sexo e parentesco.

Quais as entidades fracas?
34 de X
Modelo Lógico
FORMAS - UFBA
35 de X
Modelo Físico
FORMAS - UFBA
36 de X
www.dcc.ufba.br/~dclaro
Disciplina: MATA60 (2016.1)
Semantic Formalisms and Applications Research Group
Facebook: /formasresearchgroup
Twitter: /formasresearchgroup
FORMAS - UFBA
Download