Você está na página 1de 51

FATECPR

Faculdade de Tecnologia de Curitiba

GRADUAÇÃO ENGENHARIA DE COMPUTAÇÃO

12/12/2023 prof.Henrique Zenoni Machado 1


Banco de Dados
Material de apoio à disciplina de Banco de Dados

12/12/2023 prof. Henrique Zenoni Machado 2


1
MER
Modelo de Entidade-Relacionamento

12/12/2023 prof. Henrique Zenoni Machado 3


Modelagem de Dados
• O MER é um modelo de dados conceitual de alto-
nível, ou seja, seus conceitos foram projetados para
serem compreensíveis a usuários, descartando
detalhes de como os dados são armazenados.
• Atualmente, o MER é usado principalmente durante
o processo de projeto da base de dados.
• Existem expectativas para que uma classe de
SGBD’s baseados diretamente no MER esteja
disponível no futuro.
12/12/2023 prof. Henrique Zenoni Machado 4
Como começar?
UNIVERSO

OBTENÇÃO E ANÁLISEREQUISITOS
DE REQUISITOS
DA BASE DE DADOS

PROJETO CONCEITUAL

INDEPENDENTE DE
SGDB
MAPEAMENTO DO MODELO DE DADOS
SGDB ESPECÍFICO

PROJETO FÍSICO

12/12/2023 prof. Henrique Zenoni Machado 5


Universo
• Descreve o ambiente (mundo) em que o problema em
estudo está ligado;
• Outros elementos, os quais não impactam no projeto,
devem ser deixados de fora deste universo;
• Elementos pertencentes ao Universo devem ser
considerados;
• É comum, no mundo do desenvolvimento, ter ao
menos um consultor que fará a interlocução do
universo em questão para com a equipe de análise.
12/12/2023 prof. Henrique Zenoni Machado 6
Obtenção de Dados
• As técnicas de levantamento de requisitos têm por objetivo
superar as dificuldades relativas a esta fase. Todas as
técnicas possuem um conceito próprio e suas respectivas
vantagens e desvantagens, que podem ser utilizadas em
conjunto pelo analista.
• Algumas técnicas de coleta de requisitos:
• Levantamento orientado a pontos de vista; • Questionários;
• Etnografia; • Brainstorming;
• Workshop; • Joint Application Design (JAD).
• Prototipagem;

FONTE
•12/12/2023
Entrevistas; prof. Henrique Zenoni Machado 7
Análise de Dados
• Etapa igualmente importante à Obtenção de Dados
mas que por vezes é deixada de lado;
• Esta etapa é de fundamental importância para a
construção de Banco de Dados otimizados
• Ajudam a reconhecer relacionamentos entre diferentes
Dados;
• Ajudam a reconhecer como os Dados podem ser
organizados em uma estrutura lógica.
Objetivo dos Bancos de Dados

12/12/2023 prof. Henrique Zenoni Machado 8


Projeto Conceitual
• Modelo de Dados de alto nível;
• Normalmente não se tem a ideia da fração ou das
partes que compõe cada Dado;
• Modelo intermediário entre o Dado requisitado
(requisitos) e o Dado lógico (o qual estará
efetivamente armazenado no Banco de Dados).

12/12/2023 prof. Henrique Zenoni Machado 9


Modelo de Dados
• Descrição do banco de dados de forma independente da
implementação que será feita, em outras palavras, ele independe
de qual SGBD será utilizado na implementação. Desta forma, um
mesmo modelo conceitual poderá ser utilizado para
implementação em Oracle, DB2, PostgreSQL, etc...;
• O modelo conceitual indica quais os dados que poderão aparecer
no banco de dados, mas não informa de que forma estes mesmos
dados serão armazenados no nível do SGBD;
• Representa um modelo abstrato que descreve a estrutura de um
banco de dados de forma independente do SGBD;
• Usa-se o MER para tal representação.
12/12/2023 prof. Henrique Zenoni Machado 10
Componentes do MER
• Peter Chen – 1976
• Modelo de dados semântico
ENTIDADES

ATRIBUTOS

RELACIONAMENTOS

12/12/2023 prof. Henrique Zenoni Machado 11


2
MER - Entidades

12/12/2023 prof. Henrique Zenoni Machado 12


Entidades
Identifica o objeto de interesse do sistema e tem "vida"
própria, ou seja, a representação abstrata de um objeto do
mundo real sobre o qual desejamos guardar informações.
• Não são entidades:
• Entidade com apenas 1 elemento;
• Operações do sistema;
• Saídas do sistema;
• Pessoas que realizam trabalhos (usuários do sistema);
• Cargos de direção

12/12/2023 prof. Henrique Zenoni Machado 13


Entidades - Fortes
Existem independentemente de outros tipos de
entidades. Elas sempre possuem um ou mais atributos
que distinguem de modo único cada ocorrência da
entidade.

Entidade Forte

12/12/2023 prof. Henrique Zenoni Machado 14


Entidades - Fracas
Dependem de algum outro tipo de entidade.
Elas não possuem atributos únicos (também
conhecidos como chave primária) e não têm
significado no diagrama se não dependerem de uma
outra entidade. Esta outra entidade é conhecida como
proprietária.

Entidade Fraca

12/12/2023 prof. Henrique Zenoni Machado 15


3
MER – Atributos

12/12/2023 prof. Henrique Zenoni Machado 16


Atributos de Entidade
O objeto básico que o MER representa é a entidade. Uma
entidade é algo do mundo real que possui uma existência
independente.
Uma entidade pode ser um objeto com uma existência física
- uma pessoa, carro ou empregado - ou pode ser um objeto
com existência conceitual - uma companhia, um trabalho ou
um curso universitário.
Cada entidade tem propriedades particulares, chamadas
atributos, que a descrevem.
12/12/2023 prof. Henrique Zenoni Machado 17
Atributos de Entidade
Por exemplo, uma entidade FUNCIONÁRIO pode ser descrita por:
• Seu nome;
• O trabalho que realiza;
• Sua idade;
• Seu endereço;
• Seu salário.
Uma entidade em particular terá um valor para cada um de seus atributos.
Os valores de atributos que descrevem cada entidade ocupam a maior
parte dos dados armazenados na base de dados.
12/12/2023 prof. Henrique Zenoni Machado 18
Atributos de Entidade
Exemplo de uma representação de Funcionário

Nome = Henrique Tobias

Endereço = Rua Iguaçu, 1520


F1
Data = 05/10/1982

Idade = 37

12/12/2023 prof. Henrique Zenoni Machado 19


Atributos Univalores

São atributos que tem apenas um único valor.


Exemplo:
• Data de nascimento

12/12/2023 prof. Henrique Zenoni Machado 20


Atributos Multivalores

São atributos que podem ter um conjunto de valores.


Exemplo:
• Telefone residencial.
Atributos multivalorados podem possuir uma
multiplicidade, indicando as quantidades mínima e
máxima de valores.

12/12/2023 prof. Henrique Zenoni Machado 21


Atributos Derivados

Em alguns casos, dois ou mais atributos são


relacionados.
Exemplo:
• Idade e Data de Nascimento.
Onde o atributo Idade é derivado do atributo Data de
Nascimento uma vez que seja determinado a partir da
Data de Nascimento.
12/12/2023 prof. Henrique Zenoni Machado 22
Atributos Derivados

Alguns valores de atributos podem ser derivados de


entidades relacionadas.
Exemplo:
• Número de Empregados de uma entidade
Departamento.
Pode ser calculado contando-se o número de
empregados relacionados com o departamento.
12/12/2023 prof. Henrique Zenoni Machado 23
Atributos Compostos
Atributos compostos são úteis quando os usuários referenciam o
atributo composto como uma unidade e, em outros momentos,
referenciam especificamente a seus componentes.
Se o atributo composto for sempre referenciado como um todo,
não existe razão para subdividi-lo em componentes elementares.
Exemplo:
• Telefone pode ser composto por:
• Código de Área
• Número de Telefone
12/12/2023 prof. Henrique Zenoni Machado 24
Atributos - Representação
ATRIBUTOS MONOVALOR ATRIBUTOS MULTIVALOR

Rua CEP Número


Data de
Idade Nascimento

Nome Telefone
Endereço

Aluno

ATRIBUTO DERIVADO
(calculado a partir da ATRIBUTO COMPOSTO
Data de Nascimento)
12/12/2023 prof. Henrique Zenoni Machado 25
4 MER - Relacionamentos

12/12/2023 prof. Henrique Zenoni Machado 26


Relacionamentos
• O Relacionamento representa a associação entre
diferentes entidades.
• Exemplo:
João está matriculado na disciplina de Banco de Dados.

ALUNO MATRICULADO DISCIPLINA

“MATRICULADO” – Não necessariamente representa uma entidade mas sim, um RELACIONAMENTO.

12/12/2023 prof. Henrique Zenoni Machado 27


Relacionamentos – Fracos
Relacionamentos de identificação, são conexões que
existem entre um tipo de entidade fraca e seu
proprietário.

N M
ALUNO MATRÍCULA DISCIPLINA

TOTAL PARCIAL

12/12/2023 prof. Henrique Zenoni Machado 28


Relacionamentos - Cardinalidade
• Corresponde ao número de entidades com que um
determinado conjunto de outras entidades podem se
relacionar através de um determinado
relacionamento. Um Cliente pode ser COMPRADOR
CARDINALIDADE de quantos Carros?
Um Carro pode ser VENDIDO
para quantos Clientes?
N 1
VENDA

CARRO CLIENTE
Qual é o Relacionamento?

N, M, P, Q... : Denotam multiplicidade. Não confundam com ‘*’ usado no UML.


12/12/2023 prof. Henrique Zenoni Machado 29
Relacionamentos – Cardinalidade 1:1
Relacionamento 1:1 - O João é casado com a Maria
• João - Elemento do conjunto de valores do atributo
• Nome da entidade MARIDO.
• Maria - Elemento do conjunto de valores do atributo
• Nome da entidade ESPOSA.
• CASAMENTO - Ligação entre um homem e uma mulher, sendo
que um homem pode ser casado com uma e apenas uma mulher,
assim como uma mulher pode ser casada com um e apenas um
homem
1 1
MARIDO CASAMENTO ESPOSA

12/12/2023 prof. Henrique Zenoni Machado 30


Relacionamentos – Cardinalidade N:1
Relacionamento N:1 ou 1:N - O Pedro trabalha no Departamento Pessoal
• Pedro - Elemento do conjunto de valores do atributo
• Nome da entidade FUNCIONÁRIO.
• Departamento Pessoal - Elemento do conjunto de valores do atributo
• Nome da entidade DEPARTAMENTO.
• EMPREGO - Ligação entre um Funcionário e um Departamento, sendo que
um Funcionário estar empregado em um único Departamento o qual pode
ter muitos Funcionários.

N 1
FUNCIONÁRIO EMPREGO DEPARTAMENTO

12/12/2023 prof. Henrique Zenoni Machado 31


Relacionamentos – Cardinalidade N:M
Relacionamento N:M - O Antônio está matriculado na disciplina Banco de
Dados
• Antônio - Elemento do conjunto de valores do atributo
• Nome da entidade ALUNO.
• Banco de Dados - Elemento do conjunto de valores do atributo
• Nome da entidade DISCIPLINA.
• MATRICULA - Ligação entre um Aluno e uma Disciplina, sendo que um
Aluno pode estar matriculado em muitas Disciplinas as quais podem ter
muitos Alunos.

N M
ALUNO MATRÍCULA DISCIPLINA

12/12/2023 prof. Henrique Zenoni Machado 32


Relacionamentos – Min-Max (min,max)

É possível se determinar uma quantidade Mínima e Máxima para os


relacionamentos.

N (1,8)
ALUNO MATRÍCULA DISCIPLINA

12/12/2023 prof. Henrique Zenoni Machado 33


Relacionamentos - Grau
• Corresponde ao número de conjuntos de Entidades
participantes em um relacionamento.
• Relacionamento Binário, Ternário, Quaternário,...

12/12/2023 prof. Henrique Zenoni Machado 34


Relacionamentos – Restrições de
Participação
Participação parcial
• No exemplo, significa que apenas parte das entidades do
conjunto de entidades Disciplina está relacionada com
entidades do conjunto Aluno.
N M
ALUNO MATRÍCULA DISCIPLINA

TOTAL PARCIAL

12/12/2023 prof. Henrique Zenoni Machado 35


Relacionamento - Atributos

ALUNO MATRÍCULA DISCIPLINA

Nome Nota Nota Sigla

Mas NOTA não é da Disciplina? Mas NOTA não é do Aluno?


Nota

12/12/2023 prof. Henrique Zenoni Machado 36


Relacionamento - Papéis

Os papéis servem para melhor intender o papel de


determinada entidade no contexto de um
relacionamento. Papéis sem relacionamento não nos
dizem nada. DISCIPLINA

Aluno Professor

(1,N) 1
PESSOA

12/12/2023 prof. Henrique Zenoni Machado 37


Relacionamento – Notação Simbólica
1

(1,1) Alguns interpretam como - Obrigatório 1


Outros como - Apenas 1
(0,1)

(1,N)

(0,N)

12/12/2023 prof. Henrique Zenoni Machado 38


5 MER – Entidades e
Atributos

12/12/2023 prof. Henrique Zenoni Machado 39


Entidades Fracas
1 1
EMENTA POSSUI DISCIPLINA

O conjunto de entidades Ementa só existe O conjunto de entidades Disciplina é dita


se existirem Disciplinas. Uma Ementa tipo de entidade proprietária de Ementa.
nunca existirá sozinha.

O conjunto de entidades Ementa só existe


se existirem Disciplinas, portanto,
obrigatoriamente participará do
relacionamento Possui com Disciplina.
O conjunto de entidades Ementa relaciona-
se com Disciplina através do seu tipo de
relacionamento Identidade.

12/12/2023 prof. Henrique Zenoni Machado 40


6 Modelagens

12/12/2023 prof. Henrique Zenoni Machado 41


Simplificando Modelagens

Rua CEP Número Aluno


Data de
Idade Nascimento Nome
Data de
Nome Telefone Nascimento
Endereço
Idade
Número
Telefone
Aluno
CEP Endereço

Rua

12/12/2023 prof. Henrique Zenoni Machado 42


Simplificando Modelos - Generalização
1. Reconheça Entidades com mesmos Atributos;
2. Crie uma Entidade que represente isoladamente esse conjunto de Atributos;

Pessoa
1 1
1

Nome

GENERALIZAÇÃO
1 1 1
Aluno Professor Colaborador

Custo/
Nome R.I. Nome Hora
Nome Salário

12/12/2023 prof. Henrique Zenoni Machado 43


Propriedades Generalização
Disjunção x Sobreposição (DxS)
• Se uma entidade especializada puder pertencer a mais de um
subconjunto de entidades ao mesmo tempo, diz-se ter uma
sobreposição, caso contrário, disjunção.
Pessoa
P1= Roberto

Aluno Professor Colaborador


A1= Roberto Prof1= Roberto
Se a Pessoa ‘Roberto’ pode ser Aluno E Professor então
temos uma SOBREPOSIÇÃO
Se a Pessoa ‘Roberto’ pode ser Aluno OU EXCLUSIVAMENTE Professor então
temos uma DISJUNÇÃO
12/12/2023 prof. Henrique Zenoni Machado 44
Propriedades Generalização
Cobertura Total ou Parcial (TxP)
• Se toda entidade pertencente ao conjunto de entidades
genérica pertencer a alguma entidade no conjunto de
entidades especializadas, então tem-se cobertura total; caso
contrário, cobertura parcial. P1= Roberto
Pessoa P2= Angela ???
COBERTURA TOTAL: Se P3= Rubens
todas as Pessoas tem sua
correspondência nas
entidades Especializadas
COBERTURA PARCIAL: Aluno Professor Colaborador
Se todas as Pessoas tem A1= Roberto Prof1= Roberto C5= Rubens
sua correspondência nas
entidades Especializadas Prof3= Angela

12/12/2023 prof. Henrique Zenoni Machado 45


Composição
Define uma ligação a qual completa o sentido da
Entidade.
Exemplo:
• Não pode haver carro sem motor.

CARRO

MOTOR

12/12/2023 prof. Henrique Zenoni Machado 46


Agregação
Define uma ligação a qual complementa o sentido da
Entidade.
Exemplo:
• Embora possa haver carro sem extintor, a presença
do mesmo agrega “valor” ao carro.
CARRO

EXTINTOR

12/12/2023 prof. Henrique Zenoni Machado 47


Exercício 01
Neste exemplo, é descrita uma base de dados COMPANHIA
que será utilizada para ilustrar o processo de projeto de base
de dados. São listados os requisitos da base de dados e criado
o seu esquema conceitual passo-a-passo ao mesmo tempo em
que são introduzidos os conceitos de modelagem usando o
MER.
A base de dados COMPANHIA armazena os dados dos
empregados, departamentos e projetos. Supõe-se que após a
Obtenção e Análise dos Requisitos, os projetistas da base de
dados produzirão a seguinte descrição do mini-mundo - parte
da companhia a ser representada na base de dados:
12/12/2023 prof. Henrique Zenoni Machado 48
Exercício 01 – Base de Dados
• A companhia é organizada em departamentos. Cada departamento tem um nome, um
número e um empregado que gerencia o departamento. Armazena-se a data de início
que o empregado começou a gerenciar o departamento. Um departamento pode ter
diversas localizações;
• Um departamento controla inúmeros projetos, sendo que cada um tem um nome, um
número e uma localização;
• Do empregado armazena-se o nome, o número do seguro social, endereço, salário,
sexo e data de nascimento. Todo empregado é associado a um departamento, mas
pode trabalhar em diversos projetos, que não são necessariamente controlados pelo
mesmo departamento. Armazena-se, também, o número de horas que o empregado
trabalha em cada projeto. Mantém-se, ainda, a indicação do supervisor direto de cada
projeto;
• Os dependentes de cada empregado são armazenados para propósito de garantir os
benefícios do seguro. Para cada dependente será armazenado o nome, sexo, data de
nascimento e o relacionamento com o empregado.
12/12/2023 prof. Henrique Zenoni Machado 49
Resolução

12/12/2023 prof. Henrique Zenoni Machado 50


REFERÊNCIAS
• ATAR, Marcos. Banco de Dados. Material de Aula
(Graduação) – Engenharia de Computação. Acesso
Restrito.
• SUEHRING, Steve; MySQL Bible. Wiley; 2002.

12/12/2023 prof. Henrique Zenoni Machado 51

Você também pode gostar