MODELO ENTIDADE - RELACIONAMENTO

54
Modelo Entidade e Relacionamento - ER

Transcript of MODELO ENTIDADE - RELACIONAMENTO

Page 1: MODELO ENTIDADE - RELACIONAMENTO

Modelo Entidade e Relacionamento - ER

Page 2: MODELO ENTIDADE - RELACIONAMENTO

Modelo Entidade e Relacionamento

• O modelo entidade-relacionamento (E-R) tem por base a percepção de que o mundo real é formado por um conjunto de objetos chamados de entidade e pelo conjunto de relacionamentos entre esses objetos.

• Existem 3 noções básicas empregadas pelo modelo E-R:

• Conjunto de entidades;

• Atributos.

• Conjunto de relacionamentos

Page 3: MODELO ENTIDADE - RELACIONAMENTO

Entidade

• No dicionário Michaelis Entidade é:

• sf (lat med entitate) 1 Existência independente, separada, ou autônoma; realidade. 2 Aquilo que constitui a natureza fundamental ou a essência de uma coisa. 3 Aquilo que existe ou imaginamos que existe; ente, ser. 4Individualidade. 5 Indivíduo de importância. 6 Dir Associação ou sociedade de pessoas ou de bens; pessoa jurídica de direito privado ou público: Entidade autárquica, entidade pública etc.

Page 4: MODELO ENTIDADE - RELACIONAMENTO

Entidade em Banco de Dados

• Exemplo:

• Aluno

• Cliente

• Produto

• Compra

• Venda

Page 5: MODELO ENTIDADE - RELACIONAMENTO

Representação gráfica

• Simbologia:

• Conceito: Tipo de entidades ou entidade

• Definição: São conjunto de instâncias

• Exemplos de tipo de entidades:

• Concretas (pessoas, clientes, usuários, produtos, departamentos, livros, etc)

• Abstratas (vendas, compras, empréstimos, etc)

Do que o de quem desejo guardar Alguma informação

Page 6: MODELO ENTIDADE - RELACIONAMENTO

Identificação de Entidades

• Uma biblioteca deseja informatizar seus empréstimos. Consultada a bibliotecária ela informou os seguintes dados sobre o funcionamento da biblioteca.

• as publicações disponíveis para empréstimos deverão ficar distribuídas em prateleiras e organizadas por gênero;

• cada publicação deve pertencer a um único gênero;

• colaborador pode fazer reservas de publicações que não estão disponíveis;

• quando houver atraso na devolução e este for superior a 3 dias, deve ser emitida uma cobrança para o colaborador; e

• Uma publicação pode possuir vários autores.

Page 7: MODELO ENTIDADE - RELACIONAMENTO

Identificação de Entidades

• Uma biblioteca deseja informatizar seus empréstimos. Consultada a bibliotecária ela informou os seguintes dados sobre o funcionamento da biblioteca.

• as publicações disponíveis para empréstimos deverão ficar distribuídas em prateleiras e organizadas por gênero;

• cada publicação deve pertencer a um único gênero;

• colaborador pode fazer reservas de publicações que não estão disponíveis;

• quando houver atraso na devolução e este for superior a 3 dias, deve ser emitida uma cobrança para o colaborador; e

• Uma publicação pode possuir vários autores.

Page 8: MODELO ENTIDADE - RELACIONAMENTO

ATRIBUTOS

• Representação gráfica

• Simbologia:

• Conceito: Atributo

• Definição: São características comuns as instâncias que formam as entidades.

As informações que desejo quardar de alguma coisa ou alguem!

Page 9: MODELO ENTIDADE - RELACIONAMENTO

Instância e Tuplas

Cliente

Código Nome CPF

001 José 000.111.000-11

002 Maria 000.222.000-11

003 João 000.222.000-11

Instância da Entidade ou Tupla

Código

Nome

CPF Cliente Atributos

Entidade

Page 10: MODELO ENTIDADE - RELACIONAMENTO

Tipos de Atributos

Page 11: MODELO ENTIDADE - RELACIONAMENTO

Simples

• Simbologia:

• Tipo: Simples

• Descrição: formado por um único conjunto de caracteres

• Ex: nome, CPF, RG, data nascimento, etc

Page 12: MODELO ENTIDADE - RELACIONAMENTO

Composto

• Simbologia:

• Tipo: Composto

• Descrição: formado por um conjunto de atributos simples

• Exemplo: Endereço = {rua, numero, bairro, cidade, estado}

Page 13: MODELO ENTIDADE - RELACIONAMENTO

Multivalorado

• Simbologia:

• Tipo: Multivalorado

• Descrição: possui n instâncias do atributo / possui mais de um valor

• Exemplo: Telefone {residencial, comercial, celular, contato, contato2, contato3}

Page 14: MODELO ENTIDADE - RELACIONAMENTO

Derivado

• Simbologia:

• Tipo: Derivado

• Descrição: são atributos que não estão no banco de dados, são calculados automaticamente.

• Exemplo. valor mensal das vendas, quantidade de produtos vendidos em um mês

Page 15: MODELO ENTIDADE - RELACIONAMENTO

Chave Primária

• Simbologia:

• Tipo: chave primária

• Descrição: identifica o campo que a instância é única, em outras palavras nenhuma outra entidade poderá conter o mesmo valor, pois este valor é utilizado para identificá-la

• Exemplo: CPF, código produto, numero nota fiscal, CNPJ, CRM,

Page 16: MODELO ENTIDADE - RELACIONAMENTO

Identificação de Atributo

• Identificar os atributos de cada entidade e relacionamentos, para uma Locadora de Automóveis, sabendo-se que:

• para cada veículo é necessário saber , a marca, modelo, descrição, cor, placa e outros;

• para cada locação é necessário saber, data, preço da diária, o veículo, o locatário e o valor do seguro;

• para cada locatário é necessário saber, o nome, cpf endereço formado por rua, numero, bairro, cidade, estado e cep, e o telefone residencial, comercial e outros para contato.

Page 17: MODELO ENTIDADE - RELACIONAMENTO

Veiculo

Locatário

Locação

Marca

Modelo

Descrição

Cor

Placa

Data Preco

Valor Seguro

veiculo

locatário

nome

cpf

endereco

rua

numero

cep

cidade

bairro

estado fone

Page 18: MODELO ENTIDADE - RELACIONAMENTO

Chaves

Page 19: MODELO ENTIDADE - RELACIONAMENTO

Chaves

• As chaves identificam unicamente uma entidade, bem como, são utilizadas para identificar um relacionamento entre entidades.

Page 20: MODELO ENTIDADE - RELACIONAMENTO

Tipos de Chave

• Basicamente existem 2 (dois) tipos de chaves, a primária e a estrangeira, porém algumas nomenclaturas são utilizadas para identificar os atributos que podem ser escolhidos como chave, durante a fase de análise.

Page 21: MODELO ENTIDADE - RELACIONAMENTO

Tipos de Chave

Page 22: MODELO ENTIDADE - RELACIONAMENTO

Tipos de Chave

Page 23: MODELO ENTIDADE - RELACIONAMENTO

Relacionamentos

Page 24: MODELO ENTIDADE - RELACIONAMENTO

Relacionamentos

• Relacionamento ou tipo de relacionamento é uma associação entre duas ou mais entidades distintas (ou instancias distintas de uma entidade), com um determinado significado. Por exemplo: “Empregado“ João TRABALHA “Departamento” Pessoal.

• A associação entre um conjunto de entidades é referida como uma participação, ou seja, as entidades participam do relacionamento.

Page 25: MODELO ENTIDADE - RELACIONAMENTO

Representação Gráfica

• Simbologia:

• Descrição: Um relacionamento é uma associação entre um ou varias entidades, ou instâncias de uma entidade.

• Exemplo Entidade-Relacionamento

Page 26: MODELO ENTIDADE - RELACIONAMENTO

Relacionamento

Page 27: MODELO ENTIDADE - RELACIONAMENTO

Cardinalidade

Page 28: MODELO ENTIDADE - RELACIONAMENTO

1:1

• Um para um: uma entidade em A está associada no máximo a uma entidade em B, e uma entidade em B está associada à no máximo uma entidade em A.

Page 29: MODELO ENTIDADE - RELACIONAMENTO

1:1

Page 30: MODELO ENTIDADE - RELACIONAMENTO

1:n

• Um para muitos: uma entidade A está associada a várias entidade em B, entretanto, uma entidade em B, deve estar associada a uma entidade em A.

Page 31: MODELO ENTIDADE - RELACIONAMENTO

1:n

Page 32: MODELO ENTIDADE - RELACIONAMENTO

m:n

• Muitos para muitos: uma entidade em A está associada a qualquer número de entidade em B e uma entidade em B está associada a um número qualquer de entidades em A.

Page 33: MODELO ENTIDADE - RELACIONAMENTO

m:n

Page 34: MODELO ENTIDADE - RELACIONAMENTO

Identificação de Cardinalidades

Igreja Padre

Cidade Prefeito

Page 35: MODELO ENTIDADE - RELACIONAMENTO

Identificação de Cardinalidades

Time Jogadores

Consulta Pacientes

medico consultas

emprestimo Parcelas pagas

Page 36: MODELO ENTIDADE - RELACIONAMENTO

Identificação de Cardinalidades

paciente médico

Locatario Locador

Obras Pedreiro

Cliente Produto

Page 37: MODELO ENTIDADE - RELACIONAMENTO

Cardinalidades

• As cardinalidades em geral são representadas com o grau máximo de associações permitidas. No entanto, a utilização do grau mínimo permite identificar certas restrições, bem como a identificar melhor o grau máximo.

Aluno Turma está (0, N) (1, 1)

Mínimo Máximo

• Perguntas a fazer:

• Um aluno pode estar em no mínimo quantas turmas e no máximo em quantas turmas?

• Uma turma pode possuir no mínimo quantos alunos e no máximo quantos alunos?

Page 38: MODELO ENTIDADE - RELACIONAMENTO

Cardinalidades

• Ao final a cardinalidade é dada sempre em termos máximos. No entanto, as cardinalidades mínimas servem para impor restrições, por exemplo: Um aluno não pode estar fora de uma turma.

Aluno Turma está (0, N) (1, 1)

Máximo Máximo

Page 39: MODELO ENTIDADE - RELACIONAMENTO

Papel

• A função que uma entidade desempenha em um relacionamento é chamada de papel. Quando as entidades são distintas, os papeis são implícitos e não são, em geral, especificados. Entretanto são vitais quando o significado de um relacionamento precisa ser esclarecido.

Page 40: MODELO ENTIDADE - RELACIONAMENTO

Papel

Page 41: MODELO ENTIDADE - RELACIONAMENTO

Atributos Descritivos

• Geralmente os atributos são características ou propriedades de uma entidade, contudo em alguns casos quando existe relacionamento entre entidades verificamos que alguns atributos não pertencem a nenhuma das entidades envolvidas no relacionamento, mas ao próprio relacionamento. Os atributos de relacionamentos são conhecidos como atributos descritivos.

Page 42: MODELO ENTIDADE - RELACIONAMENTO

Atributos Descritivo

Page 43: MODELO ENTIDADE - RELACIONAMENTO

Atributos Descritivo

• O atributo “data de acesso” não pertence à entidade cliente, pois não é uma característica ou uma propriedade de um cliente. O atributo “data de acesso” também não pertence à entidade conta, pois também não é uma característica da entidade.

Page 44: MODELO ENTIDADE - RELACIONAMENTO

Identificando Relacionamentos

• Identificar os atributos de cada entidade e relacionamentos, para uma Locadora de Automóveis, sabendo-se que:

• Exemplo 1

• Uma locadora possui diversos veículos para locação. Um veiculo possui ano, marca, chassi e modelo e pode ser alugado por diversas pessoas(locatários). Para alugar um veículo o locatário precisa fazer um cadastro e fornecendo seu nome, data nascimento e cpf. O locatário pode alugar vários veículos. Cada vez que um locatário aluga um veículo é necessário informar a data de locação, a data prevista da devolução e o valor da diária.

Page 45: MODELO ENTIDADE - RELACIONAMENTO

Identificando Relacionamentos

• Exemplo 2

• um paciente pode ser consultado várias vezes e um médico pode consultar vários pacientes, cada consulta possui uma data e hora.

Page 46: MODELO ENTIDADE - RELACIONAMENTO

Generalização / Especialização

Page 47: MODELO ENTIDADE - RELACIONAMENTO

Especialização/Generalização

• Um conjunto de entidades pode conter subgrupos de entidade que são, de alguma forma, diferentes, de outras entidades do conjunto, porém compartilham características semelhantes.

Page 48: MODELO ENTIDADE - RELACIONAMENTO

Especialização/Generalização

Page 49: MODELO ENTIDADE - RELACIONAMENTO

Dicas de modelagem

Page 50: MODELO ENTIDADE - RELACIONAMENTO

Dicas

• Sempre que houver algo importante, que exista mais de um exemplar e que cada exemplar seja único . Provavelmente isso será uma Entidade.

• Nos textos as entidades são representadas por substantivos.

• Os atributos são expressos através de adjetivos.

• Os relacionamentos são expressos através de verbos.

Page 51: MODELO ENTIDADE - RELACIONAMENTO

Exercício de Modelagem

• Hospital Veterinário

• Cada cliente pode possuir um ou vários animais em tratamento. Para cada cliente é necessário armazenar um código, o nome, endereço, CPF, fone. Dos animais é necessário armazenar um código, o nome, a raça e a idade. Cada animal pode estar sofrendo de uma ou várias enfermidades, as enfermidades são catalogadas com um código único e um nome. Os animais realizam tratamento de uma ou mais enfermidades. Os veterinários são os responsáveis por realizar os tratamentos. Sobre os veterinários é necessário armazenar o nome, CRMV, telefone e endereço. Cada tratamento possui uma data de inicio.

Page 52: MODELO ENTIDADE - RELACIONAMENTO

Exercício de Modelagem

• Empresa

• Uma empresa possui vários funcionários que são do tipo: motorista, secretárias e engenheiro. Cada funcionário pertence a um departamento e em um departamento pode-se ter vários funcionários. Deseja-se guardar sobre todos os tipos de funcionários código, nome, RG, CPF, endereço. Sobre o motorista deseja-se manter também habilitação, acidentes ocorridos, data e culpa do motorista. O motorista conduz vários veículos da empresa e um veículo é conduzido por diversos motoristas. Sobre o veiculo deve-se manter tipo, placa, classe (passeio, utilitário, carga, transporte coletivo, etc.) e marca. Sobre a secretária é necessário guardar quais idiomas ela fala. Sobre os engenheiros devem-se manter especialidades e formações. Um engenheiro pode participar de vários projetos, e em um projeto podem-se ter vários engenheiros.

Page 53: MODELO ENTIDADE - RELACIONAMENTO

Interprete o Diagrama ER

supervisor

Page 54: MODELO ENTIDADE - RELACIONAMENTO

Exercícios

• O que é uma entidade

• O que são atributos e quais seus tipos

• O que é um relacionamento e o que são cardinalidades

• Qual a diferença entre chave primária e chave estrangeira?

• Qual a relação que existe entre os relacionamentos e as chaves primárias e estrangeiras?

• O que é um papel?

• O que é generalização.