Prévia do material em texto
Aula 3: Modelo
Entidade Relacionamento –
MER
Objetivos
Definir entidades e seus atributos.
Estabelecer relacionamentos entre entidades.
Ajustar a cardinalidade dos relacionamentos.
Interpretar Modelos de Entidade e Relacionamento (MER).
Modelar conceitualmente sistemas de informação.
Modelo Entidade Relacionamento - MER
O Modelo Entidade-Relacionamento (MER) é uma técnica criada em
1976 por Peter Chen (CHEN, 1990) que expressa graficamente a estrutura
lógica de um Banco de Dados.
Na sua divisão de atuação no Banco de Dados temos os seguintes modelos:
Modelo Conceitual;
Modelo Lógico;
Modelo Físico;
Modelo Conceitual
É o modelo de mais alto nível, ou seja, que esta mais próximo da
realidade dos usuários. O nível conceitual é desenvolvido com alto nível de
abstração, a partir dos requisitos do sistema, extraídos na fase de
levantamento de requisitos.
Esse modelo possui duas formalizações documentais sendo a
primeira o Modelo Entidade Relacionamento – MER e Diagrama de
Entidade e Relacionamento – DER.
Modelo Lógico
Descreve como os dados serão armazenados no banco e também
seus relacionamentos. Esse modelo adota alguma tecnologia, pode ser:
Relacional;
Orientado a objetos;
Orientado a colunas;
Etc.
Modelo Físico
Descreve, por meio de alguma linguagem, como será feita a
armazenagem no banco. Nesse nível se escolhe qual Sistema Gerenciador
de Banco de dados (SGBD) será usado, levando em consideração o modelo
lógico adotado. Pode ser:
PostgreSQL;
MySQL;
Etc.
Modelo Relacional
O banco de dados é constituído por tabelas (entidades) que contém linhas
(tuplas) e colunas (atributos)
Cada tabela possui um atributo, ou um conjunto deles, que é chamado “chave”.
•Chave-primária
•Chave-estrangeira
As tabelas se relacionam entre si.
Modelo Relacional
CPF Nome Endereço
123.456-00 Genoveva Av. Tocantins
222-333-44 Jurema BR 153
987-654-11 Roberval Rua Olímpio
Nº Agência Saldo
43 222-3 R$ 145,00
46 333-4 R$ 56.000,00
98 888-3 R$ -200,00
Tabela: Cliente Tabela: Conta
Entidade
Atributo
Tupla
Relacionamento
Chave
Modelo Relacional
Desenvolvimento de Banco de Dados
• Processo:
Fase de Análise (Modelo Conceitual)
Fase de Projeto (Modelo Lógico)
Fase de Implementação (Modelo Físico)
Fase de Testes (Consultas ao BD)
Projeto de Banco de Dados
Fase de Análise (Modelo Conceitual)
Modelo Entidade-Relacionamento (ME-R):
Conjunto de conceitos e elementos de modelagem que
utilizados na elaboração de um DER.
Diagrama Entidade-Relacionamento (DE-R):
Resultado do processo de modelagem executado pelo projetista
segundo os elementos do MER.
Modelagem Conceitual
• Elementos do MER
Domínio: Escola
Entidades
Atributos
Relacionamentos
Cardinalidade
Chaves
Modelagem Conceitual
• Elementos do MER: Entidade
É possível que um conjunto de
entidades não tenha atributos suficientes
para formar uma chave primária.
Tal conjunto de entidades é
nomeado como conjunto de entidades
fraco. Um conjunto de entidades que possui
uma chave primária é definido como
conjunto de entidades ( forte).
Modelagem Conceitual
• Elementos do MER: Atributos
Atributos Simples: São chamados
também por atributos atômicos
(não são divisíveis).
Uma superchave é um conjunto de um ou mais atributos que, tomando coletivamente,
permite-nos identificar univocamente uma entidade no conjunto de entidades.
Por exemplo, o atributo seguridade-social do conjunto de entidades cliente é suficiente para
distinguir uma entidade cliente das outras.
Desta forma, seguridade-social é uma superchave. De forma semelhante, a combinação
nome-cliente e seguridade-social é uma superchave para o conjunto de entidades cliente.
Modelagem Conceitual
• Elementos do MER: Atributos
São atributos que possuem um ou mais
valores para o mesmo. Por exemplo, o
atributo idioma de uma entidade aluno
pode conter os valores inglês e francês.
Para um outro aluno poderia conter
apenas um valor - espanhol. Para um
terceiro aluno, poderíamos ter 3 valores
para este atributo.
Suponha que uma combinação de nome-
cliente e rua seja suficiente para distinguir
entre membros do conjunto de entidades
cliente. Então ambos, {seguridade-social} e
{nome-cliente, rua}, são chaves candidatas.
Embora os atributos seguridade-social e
nome-cliente juntos possam distinguir
entidades de cliente, sua combinação não
forma uma chave candidata, uma vez que
o atributo seguridade-social sozinho é uma
chave candidata.
Modelagem Conceitual
• Elementos do MER: Atributos
Os atributos compostos podem ser
divididos em partes menores, ou subpartes, os
quais representariam atributos básicos mais
simples com significados independentes. Por
exemplo, um atributo endereço pode ser
subdividido em rua, cidade, estado e CEP.
Alguns atributos podem ter uma relação entre si. Por exemplo, idade e data-nascimento de
uma pessoa. Para uma pessoa em particular, podemos determinar o valor atual de idade
através do atributo data-nascimento. Então idade é chamado um atributo derivado e é
derivado do atributo data-nascimento.
Modelagem Conceitual
• Elementos do MER: Relacionamentos
A dependência de existência forma outra importante classe de restrições. Especificamente,
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, isso significa que se y for eliminado, x também o será.
A entidade y é chamada de entidade dominante, e x é chamado de entidade subordinada.
Em um relacionamento devem estar
representadas as multiplicidades de
acordo com o domínio.
Definições
Entidades: representadas graficamente por um retângulo, são “coisas”
ou “objetos” armazenados em um BD. MEDICO e PACIENTE, por exemplo,
são entidades em um BD projetado para suportar um sistema de
agendamento de consultas figura abaixoAfinal, ele é implementado para
armazenar dados sobre médicos da clínica e pacientes que agendam
consultas.
Definições
Entidades: representadas graficamente por um retângulo, são “coisas”
ou “objetos” armazenados em um BD. MEDICO e PACIENTE, por exemplo,
são entidades em um BD projetado para suportar um sistema de
agendamento de consultas figura abaixoAfinal, ele é implementado para
armazenar dados sobre médicos da clínica e pacientes que agendam
consultas.
Definições
Atributos: são características ou propriedades relevantes de uma
entidade. Por “relevantes” destacamos que nem todas as informações
sobre uma entidade são pertinentes para o modelo: saber qual a cor do
cabelo do paciente ou o time de futebol para o qual um médico torce
em nada contribui para a marcação de uma consulta. Por outro lado, o
nome do paciente, sua data de nascimento (forma de manter atualizada
sua idade), um telefone para contato, o endereço e o sexo são
informações relevantes para o contexto da figura abaixo.
Definições
Relacionamentos: são vínculos ou associações lógicas entre duas ou
mais entidades. Em alguns casos, um relacionamento pode ser
estabelecido entre uma entidade e ela mesma (autorrelacionamento).
Porém, a forma mais comum de relacionamento é entre duas ou mais
entidades.
Cardinalidade de relacionamentos
A cardinalidade é uma característica de todo relacionamento no Modelo
Entidade-Relacionamento (MER). Indica com quantas ocorrências de uma
entidade as ocorrências de outra entidade podem se relacionar.
A próxima figura mostra um autorrelacionamento sem a indicação da
cardinalidade, utilizamos os chamados indicadores de papéis (“Marido” e
“Esposa”). O relacionamento pode ser lido como “pessoa casa com
pessoa”. A indicação dos papéis apenas torna claro que, no casamento,
pessoas têm o papel ou de marido ou de esposa.
Um-para-muitos (1:N)
A ausência de cardinalidade nos impossibilita uma melhor compreensão das
regras envolvidas nesse casamento entre pessoas. Em algumas sociedades é
permitido que um homem se case com várias mulheres. Caso nosso Banco de
Dados precise refletir esse costume, devemos impor umrelacionamento de
cardinalidade um-para-muitos (1:N).
O relacionamento da figura abaixo exemplifica as regras
de uma sociedade poligâmica, na qual um marido pode
ter várias esposas.
Então lemos que “uma (1) pessoa (Marido) pode
casar-se com muitas (N) pessoas (Esposas)”.
Define, também, que “uma pessoa (Esposa)
somente pode casar-se com uma pessoa (Marido)”.
Os atributos da entidade PESSOA
IDENTIFICADOR: código que possibilite distinguir uma pessoa de outra sem
confusões.
NOME: nome completo da pessoa. Não serve para identificar com precisão
dada a possibilidade da ocorrência de homônimos (pessoas de mesmo nome.
Ex.: José da Silva).
SEXO: classificação do sexo das pessoas: “F” para feminino e “M” para
masculino.
IDENTIFICADOR_MARIDO: atributo que será utilizado apenas pelas pessoas
do sexo feminino. Geralmente, sociedades poligâmicas não toleram
casamentos de pessoas do mesmo sexo. Esse atributo ou terá valor nulo
(para homens e mulheres solteiras) ou conterá o identificador de uma pessoa
do sexo masculino (o marido).
Os atributos da entidade PESSOA
Tabela em BD relacional com a implementação do diagrama anterior, onde um homem pode
ter várias esposas, mas uma mulher, só um marido.
Muitos-para-um (N:1)
As únicas alterações perceptíveis são a troca de posições entre “N” e “1”
na indicação da cardinalidade, e a substituição do atributo
IDENTIFICADOR_MARIDO pelo IDENTIFICADOR_ESPOSA.
Portanto, a ordem dos fatores influi sobre
o resultado final. O relacionamento agora indica
que “uma pessoa (Marido) pode casar-se com
apenas uma pessoa (Esposa)” e que “uma pessoa
(Esposa) pode casar-se com muitas pessoas
(Maridos)”.
Os atributos da entidade PESSOA
Tabela em BD relacional com a implementação do diagrama anterior, onde uma mulher
pode ter vários maridos, mas um homem, só uma esposa.
ESPOSA
3
3
Um-para-um (1:1)
Mais uma vez nos deparamos com pequenas mudanças: o atributo
IDENTIFICADOR_CONJUGE substitui o atributo IDENTIFICADOR_ESPOSA ou
IDENTIFICADOR_MARIDO; e a cardinalidade do relacionamento agora é um-
para-um (1:1).
Não temos mais o indicador “N” (que simboliza “muitos/vários”). Dessa
forma, agora um homem pode casar-se com apenas uma mulher e uma
mulher, com somente um homem por vez.
Muitos-para-muitos (N:N)
Há a possibilidade de que um homem possa casar-se com muitas
mulheres e que também uma mulher possa casar-se com muitos homens. Esse
seria um relacionamento de cardinalidade muitos-para-muitos (N:N). Nesse
caso ocorreriam mudanças substanciais.
Os atributos da entidade PESSOA
Em um Banco de Dados relacional, essa situação precisa de duas tabelas: PESSOA e
CASAMENTO, como exemplificado nas figuras abaixo.
Entidades Pessoa e Casamento
Conforme a figura anterior, “Eduardo” (IDENTIFICADOR=1) possui duas
ocorrências na tabela CASAMENTO. Uma vez que é do sexo masculino, seu
identificador aparece na coluna (atributo) IDENTIFICADOR_MARIDO.
Significa que “Eduardo” é casado com duas mulheres: “Ana Paula”
(IDENTIFICADOR=2) e “Cecília” (6). Como elas são do sexo feminino, seus
identificadores são reproduzidos na coluna IDENTIFICADOR_ESPOSA da tabela
CASAMENTO.
Por analogia, “Sérgio” (IDENTIFICADOR=7) continua solteiro, por não ter
ocorrências na tabela CASAMENTO.
Diagrama Entidade Relacionamento - DER
Um diagrama entidade relacionamento (ER) é um tipo de fluxograma
que ilustra como “entidades”, p. ex., pessoas, objetos ou conceitos, se
relacionam entre si dentro de um sistema. Diagramas ER são mais utilizados
para projetar ou depurar bancos de dados relacionais nas áreas de engenharia
de software, sistemas de informações empresariais, educação e pesquisa.
Eles espelham estruturas gramaticais, onde entidades são substantivos e
relacionamentos são verbos.
Diagrama Entidade Relacionamento - DER
Atividade Avaliativa
Usando a ferramenta Br.Modelo elabore um DER (Modelo Conceitual) para o domínio de sua
aplicação, conforme relação abaixo:
DANIELA GOMES DE SOUSA ---------------------------------- Pizzaria
JORGE LUCAS GUIMARAES E SILVA ------------------------- Loja de produtos esportivos
LUANN FARIAS MELO------------------------------------------- Pet shop
EDUARDO RESENDE DE MELO ------------------------------- Garagem de Venda de Carros
FRANCISLEY MELO DE ASSIS---------------------------------- Escola de Idiomas
NATANAEL RODRIGUES SOUSA ------------------------------ Funerária
DAVI DOS SANTOS PEREIRA ---------------------------------- Aluguel de Casas
MARCOS SOUSA COSTA --------------------------------------- Lan House
Link para Br. Modelo - http://www.sis4.com/brmodelo/download.html
DER – Diagrama Entidade-Relacionamento