modelagem de dados -...

51
Modelagem de Dados MODELAGEM DE DADOS Projeto de Banco de Dados Modelo Conceitual Profa. Rosemary Melo

Upload: trinhnhu

Post on 21-Jan-2019

231 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELAGEM DE DADOS

Projeto de Banco de DadosModelo Conceitual

Profa. Rosemary Melo

Page 2: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

PROJETO DE BANCO DE DADOS

OBJETIVOS

Gerar um banco de dados que permita armazenarinformações sem redundância e recuperá-las com facilidade.

O projeto cuidadoso de um banco de dados é algoobrigatório que não pode ser negligenciado ou deixado nasmãos de quem não tem conhecimento técnico para tal.

Page 3: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

PROJETO DE BANCO DE DADOS

Mini Mundo: parcela do mundo realde interesse do usuário. Equivale aoDomínio do Problema. Tudo o queestá fora do mini-mundo éirrelevante no momento.

Mecanismo de Abstração:processo através do qual o serhumano “foca” algumaspropriedades (características) defenômenos da realidade e seabstrai (não considera) de outraspropriedades não relevantes.

Page 4: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

PROJETO DE BANCO DE DADOS

PRINCIPAIS ETAPAS

Modelagem de Dados em Três Níveis

Modelo Conceitual:• Descreve a realidade do ambiente do

problema, constituindo-se em umavisão global dos principais dados erelacionamentos.

• Nesta etapa o projetista de banco dedados deve se concentrar naespecificação das propriedades dosdados, sem se preocupar com osdetalhes de armazenamento dosmesmos.

• Atualmente o Modelo de DadosConceitual mais difundido e utilizadopara a modelagem de dados é oModelo de Entidade e Relacionamento

Page 5: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

PROJETO DE BANCO DE DADOS

PRINCIPAIS ETAPAS

Modelagem de Dados em Três Níveis

Modelo Lógico:• Descreve as estruturas que estarão

contidas no banco de dados, deacordo com o tipo particular deSGBD, mas sem considerar, ainda,nenhuma característica específicade um SGBD.

• Transforma um modelo de dadosde alto nível em um modelo dedados voltado para um SGBDespecífico.

• O modelo mais difundido devidoao predomínio do SGBDR é omodelo de tabelas baseado nomodelo de dados relacional.

Page 6: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

PROJETO DE BANCO DE DADOS

PRINCIPAIS ETAPAS

Modelagem de Dados em Três Níveis

Modelo Físico:• Descreve as estruturas físicas de

armazenamento de dados (taiscomo: tamanho de campos e tipode preenchimento) e os métodosde indexação mais adequados,projetados de acordo com osrequisitos de processamento e usomais eficiente dos recursoscomputacionais.

• É a implementação do modelológico em um determinado SGBD.

Page 7: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

PROJETO DE BANCO DE DADOS

Vantagens e resultados

• Representar um ambiente observado.

• Servir de instrumento para comunicação.

• Favorecer o processo de verificação e validação.

• Servir como referencial para a geração das estruturas de dados.

• Estabelecer conceitos únicos a partir de visões diversas.

Page 8: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Page 9: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

A ABORDAGEM ENTIDADE-RELACIONAMENTO (E-R)

• Apresentado por Peter Cher em 1976.

Baseada no princÍpio que a torna completa e inquestionável:• “Observamos, manipulamos, reproduzimos ou simulamos coisas,

seus relacionamentos e características e, portanto, assim devemos representá-las”.

• O que seria uma possível abordagem, tornou-se um referencial definitivo.

• Apresenta uma técnica de diagramação simples: Diagrama Entidade-Relacionamento (DER).• Notações:

• Peter Chen;• Pé-de-galinha (Engenharia da Informação) • IDEF1X (US Air Force).

Page 10: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

A ABORDAGEM ENTIDADE-RELACIONAMENTO (E-R)

NOTAÇÕESPeter-Chen

Page 11: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

A ABORDAGEM ENTIDADE-RELACIONAMENTO (E-R)

NOTAÇÕESPé-de-galinha

Page 12: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

NOTAÇÕES

IDEF1X (US Air Force)

A ABORDAGEM ENTIDADE-RELACIONAMENTO (E-R)

Page 13: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL E SEUS COMPONENTES

ENTIDADES• Objeto que existe no mundo real com uma identificação distinta e

com um significado próprio.Ex.: Mini-Mundo: Sistema de Matrícula

Entidades: Aluno, Professor, Disciplina

ATRIBUTOS• Informações “úteis” a respeito de uma entidade ou relacionamento.Ex.: Entidade: Aluno

Atributos: Matrícula, Nome, TelContato, Endereço, Email

RELACIONAMENTO• Associação entre uma ou várias entidades.Ex.: Relacionamento:

Aluno cursa Disciplina

Page 14: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

EXERCÍCIO

Identifique as entidades, atributos e relacionamentos existentes no minimundo descrito a seguir:

Suponha que estamos fazendo a análise de dados da área de RecursosHumanos da empresa ABC e tenhamos obtido as seguintes informações:

Cada funcionário é lotado em um departamento e tem um cargo decarreira. Para o cadastramento do funcionário. são registrados: nome,endereço, telefone, cargo, departamento, salário, horário, filiação, idade,CPF, identidade e nacionalidade. Para cada dependente do funcionário, sãoregistrados: nome, idade, parentesco e sexo. Para cada departamento,deseja-se saber: nome, sigla, nome do chefe, número de funcionários. Paracada cargo, deseja-se saber: nome, sigla e salário base.

MODELO CONCEITUAL E SEUS COMPONENTES

Page 15: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

Page 16: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ENTIDADES - REPRESENTAÇÃO

• Objeto que existe no mundo real com uma identificação distinta e com um significado próprio.

• A representação se realiza através de um retângulo, com o nome desta entidade em seu interior.

Page 17: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ATRIBUTOS - REPRESENTAÇÃO

• Informações “úteis” a respeito de uma entidade ou relacionamento.

• A representação se realiza através de uma elipse, com o nome do atributo no seu interior.

REPRESENTAÇÃOTipos de Atributos:-Atributo Simples-Atributo Determinante ou Identificador-Atributo Composto-Atributo Multivalorado-Atributos Derivado

Page 18: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ATRIBUTOS - REPRESENTAÇÃO

Atributo Determinante ou Identificador. Seu valor representa um elemento da entidade. Seu valor é único para a entidade.

Atributo Composto. Pode ser dividido em sub-atributos, para que seu significado seja melhor

compreendido.

Page 19: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ATRIBUTOS - REPRESENTAÇÃO

Atributo Multivalorado.• Pode assumir mais do que um valor para cada entidade.

Atributos Derivado.• Seu valor pode ser obtido a partir de outros atributos.

Page 20: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL •

ATIVIDADE - Identifique qual os tipos de atributos no modelo ao lado.

Page 21: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

RELACIONAMENTOS - REPRESENTAÇÃO

• O fato ou acontecimento que liga dois objetos, duas “coisas” existentes no mundo real.

• Associação entre entidades.• Estão intimamente ligados às ações realizadas pelos processos sobre os

dados e representam os caminhos de navegação ou rotas de acesso do Modelo de Dados.

• A representação se realiza através de um losângulo, com o verbo do relacionamento em seu interior.

Ex.: Cliente faz empréstimo.

Page 22: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

RELACIONAMENTOS

Grau do Relacionamento• Um Relacionamento pode envolver duas ou mais Entidades.

• O Grau do Relacionamento é determinado pelo número de Entidades envolvidas:

Relacionamentos Binários: envolvem apenas duas entidades.Relacionamentos Ternários (N-ários): envolvem três ou mais entidades.

Relacionamento ternárioRelacionamento binário

Page 23: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

RELACIONAMENTOS

Cardinalidade do Relacionamento

• Identifica quantas vezes cada instância de uma entidade pode participar do relacionamento.

• Cardinalidade Máxima é representada pelos símbolos 1 ou N (ou M).

• Cardinalidade Mínima é representada pelos símbolos 0 ou 1.

Page 24: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

RELACIONAMENTOS

Cardinalidade máxima para relacionamentos binários:

1:1 - Um para Um.

1:N - Um para Muitos.

M:N - Muitos para Muitos.

Page 25: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

RELACIONAMENTOS

Cardinalidade máxima para relacionamentos ternários:

Exemplo:

Escolha uma Entidade, por exemplo ALUNO, e pergunte: Quantos Alunos eu tenho, para cada par Professor-Disciplina?Escolha outra Entidade, por exemplo PROFESSOR, e pergunte: Quantos Professores eu tenho, para cada par Aluno-Disciplina?Escolha outra Entidade, por exemplo DISCIPLINA, e pergunte:Quantas Disciplinas eu tenho, para cada par Aluno-Professor?

Page 26: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

RELACIONAMENTOS

Cardinalidade Mínima é representada pelos símbolos 0 ou 1.

Relacionamentos Condicionais (0): nem todos os elementos de uma entidade estão ligados com elementos de uma outra entidade.

Relacionamentos Incondicionais (1): todos os elementos de uma entidade estão obrigatoriamente ligados a um elemento, no mínimo, da outra entidade.

Page 27: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

EXERCÍCIO - DESCRIÇÃO DE UM PROBLEMA (DOMÍNIO-RH DE UMA EMPRESA)

• O setor de RH de uma determinada empresa pretende elaborar umbanco de dados para manter as seguintes informações referente a estesetor: Os dados sobre cada empregado como: matrícula, nome, cpf,

salário, endereço, telefone para contato, salário, dependentes, etc. Os dados sobre cada dependente como: nome, idade e grau de

parentesco. Os dados sobre cada departamento como: código do departamento,

nome e empregados pertencentes a cada departamento. Os dados sobre cada projeto realizado na empresa como : nome do

projeto, empregados alocados, peças, fornecedor da peça equantidade utilizada em cada projeto.

Os dados sobre as peças fornecidas como: nome da peça e númerodo lote.

Os dados sobre todos os fornecedores de peças utilizadas naempresa, como: nome do fornecedor, endereço para contato, peçasfornecidas.

Page 28: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

EXERCÍCIO - DESCRIÇÃO DE UM PROBLEMA (DOMÍNIO-RH DE UMA EMPRESA)

Considere que: Um departamento pode ter um ou vários funcionários, sendo que

cada funcionário só pode pertencer a um departamento. Um dependente mesmo tendo pai e mãe sendo funcionários da

empresa, só podem ser dependentes de apenas um deles. Um projeto pode ter vários empregados alocados e um empregado

pode está alocado em vários projetos. Um projeto só pode ter um gerente, mas um funcionário pode

gerenciar vários projetos. Cada projeto pode utilizar diversas peças, estas por sua vez podem

ser utilizadas por um ou vários projetos. Cada peça pode ter diversos fornecedores, este por sua vez pode

fornecer várias peças para a empresa.

Page 29: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

A ABORDAGEM ENTIDADE-RELACIONAMENTO (E-R)

Page 30: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICAS ADICIONAIS

Auto-relacionamento: ocorre quando uma instância de uma Entidade, se relaciona com outra(s) instância(s) da mesma Entidade.

Atributos de Relacionamento:

Atributos de Relacionamento:

Page 31: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICAS ADICIONAIS

Entidade Fraca: ocorre caso cada instância de uma entidade (Fraca) exista somente porque está associada a outra instância de uma outra entidade (Forte).

Dependência de existência de outra entidade• Se uma instância da entidade a quem ela depende for excluída, ela

será excluída também.

Page 32: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICAS ADICIONAIS

Generalização e Especialização

Utilizada quando ocorrer uma situação onde:• Uma entidade possui atributos que não fazem parte de todas as

instâncias da entidade.• Quando as instâncias de uma entidade se relacionarem de maneira

diferente com outras entidades.

Page 33: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICAS ADICIONAIS

Generalização e Especialização

Tipos: Exclusiva ou Compartilhada

• Exclusiva uma instância pode ser membro de no máximo um subtipo.Exemplo: Um empregado só pode ser horista ou assalariado.

• Compartilhada uma instância pode ser membro de mais de um subtipoExemplo: Um empregado pode exercer uma ou mais função (engenheiro,

supervisor, gerente, etc) na empresa.

Page 34: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Generalização e Especialização

Tipos: Totalidade e Parcialidade

Totalidade cada instância da superclasse deve ser um membro de alguma

subclasse.

Parcialidade uma instância de uma superclasse pode não ser membro de

nenhuma subclasse.

ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICAS ADICIONAIS

Page 35: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Entidade Associativa Tipo particular de entidade usada para eliminar os relacionamentos

N:M.

ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICAS ADICIONAIS

Page 36: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Agregação• Uma restrição do Modelo E-R é que não podemos expressar relacionamentos

entre relacionamentos.• Agregação é uma abstração através da qual relacionamentos são tratados como

entidades de nível superior.

ATENÇÃO: Agregação não é um Relacionamento Ternário.

ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICAS ADICIONAIS

Page 37: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

Exercício

• Considere o cenário abaixo e elabore o diagrama de entidades e relacionamentos correspondente

Um restaurante deseja desenvolver um sistema para controle devendas de comidas e bebidas. Quando o cliente chega ao restaurante érecepcionado por um garçom e conduzido a uma mesa. Nestemomento o garçom abre a conta da mesa e começa a lançar ospedidos do cliente. Os pedidos são sempre consumo de produtos quepodem ser bebidas ou comida. Existem produtos que estão empromoção então são oferecidos ao cliente quando ele consome outroproduto (ex. na compra de uma rosca ganhe outra). Ao final do serviço,o garçom encerra a conta e o sistema calcula o valor. É acrescida naconta o valor correspondente a comissão do garçom. O sistema deveráfornecer o faturamento do restaurante em um dia e um relatório coma comissão a ser paga para cada garçom no dia.

Page 38: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

REGRAS PARA DETERMINAÇÃO DE CHAVES DE IDENTIFICAÇÃO

• Toda entidade deve ter um atributo identificador denominado de chave deidentificação.

• A chave de identificação (chave primária ) de uma entidade deve ter semprealgum valor, não nulo, para cada instância da entidade.

• O valor da chave de identificação de cada instância deve ser único dentro daentidade.

• Chave de Identificação Composta é formada por mais de um atributo e ocorrenormalmente quando se tem Dependência de Existência.

• Dependência de existência : as instâncias de uma entidade só podem seridentificadas em função da identificação de uma outra instância de uma outraentidade.

• Dica: Evitar chaves compostas sempre que possível

Page 39: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Integridade de Entidade

Toda instância de uma entidade possui um valor para chave de identificaçãoprópria da entidade.

O valor da chave de identificação própria para uma instância é único dentro daentidade.

O valor da chave de identificação própria de uma instância não pode sermodificado.

REGRAS PARA DETERMINAÇÃO DE CHAVES DE IDENTIFICAÇÃO

Page 40: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

CHAVE DE IDENTIFICAÇÃO PRÓPRIA (SURROGATE)

• Criada para cada entidade

• Identifica univocamente cada instância da entidade.NÃO precisa ser percebida pelos usuáriosNÃO é controlada pelos usuáriosNÃO é de preocupação dos usuários

• Surrogates não são reutilizáveis.

REGRAS PARA DETERMINAÇÃO DE CHAVES DE IDENTIFICAÇÃO

Page 41: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Representação de associações entre entidades é complicada quando se tem chavescompostas.

Ex.: Departamento (Número da Diretoria, Número da Superintendência, Número doDepartamento, Sigla, Nome)

Ex.: Empregado (Matrícula, Nome, Data de Admissão, Número da Diretoria deLotação, Número da Superintendência de Lotação, Número do Departamento deLotação)

Representação de associações entre entidades é simplificada quando não se temchaves compostas

Ex.: Departamento (Código do Departamento, Sigla, Nome, Código daSuperintendência)

Ex.: Empregado (Matrícula, Nome, Data de Admissão, Código do Departamento delotação)

REGRAS PARA DETERMINAÇÃO DE CHAVES DE IDENTIFICAÇÃO

Page 42: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Representação de entidades com chave composta:

Ex.: Nota Fiscal (Número da Nota Fiscal, Série da Nota Fiscal, Código do Cliente,Código da Natureza da Operação)

Ex.: Item de Nota Fiscal ( Número da Nota Fiscal, Número do Item da Nota Fiscal,Número da Linha, Código da Peça, Quantidade Vendida, Valor Unitário)

Representação de entidades com surrogates:

Ex.: Nota Fiscal (Identificação da Nota Fiscal, Número da Nota Fiscal, Série da NotaFiscal, Código do Cliente, Código da Natureza da Operação)

Ex.: Item de Nota Fiscal ( Identificação do Item da Nota Fiscal, Identificação da NotaFiscal associada, Número da Linha, Código da Peça, Quantidade Vendida, ValorUnitário)

REGRAS PARA DETERMINAÇÃO DE CHAVES DE IDENTIFICAÇÃO

Page 43: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

VERIFICAÇÃO DO MODELO ER

Modelo deve ser correto Um modelo está correto quando não contém erros de modelagem,

isto é, quando os conceitos de modelagem ER são corretamente empregados para modelar a realidade em questão.

Pode-se distinguir entre dois tipos de erros, os erros sintáticos e os erros semânticos.

Erros sintáticos ocorrem quando o modelo não respeita as regras de construção de um modelo ER. Exemplo: associar relacionamentos a outros relacionamentos.

Erros semânticos ocorrem quando o modelo, apesar de obedecer as regras de construção de modelos ER (estar sintaticamente correto) reflete a realidade de forma inconsistente.

Page 44: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Modelo deve ser correto

Exemplos de erros semânticos:

Estabelecer associações incorretas.Um exemplo é associar a uma entidade um atributo que na realidade pertence a outra entidade. Por exemplo, em um modelo com entidades CLIENTE e FILIAL, associar a CLIENTE o nome da filial com o qual o cliente trabalha usualmente (nome de filial é um atributo de FILIAL).

Usar uma entidade do modelo como atributo de outra entidade.Um exemplo seria ter, em um modelo, uma entidade BANCO e usar banco como atributo de uma outra entidade CLIENTE. Cada objeto da realidade modelada deve aparecer uma única vez no modelo ER.

Usar o número incorreto de entidades em um relacionamentoUm exemplo é o de fundir em um único relacionamento ternário dois relacionamentos binários independentes

VERIFICAÇÃO DO MODELO ER

Page 45: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

MODELOS EQUIVALENTES

• De maneira informal, diz-se que dois modelos são equivalentes, quando expressam o mesmo, ou seja, quando modelam a mesma realidade.

• Para fins de projeto de BD, dois modelos ER são equivalentes, quando ambos geram o mesmo esquema de BD.

• Para entender perfeitamente este conceito de equivalência de modelos, o leitor deve conhecer as regras de tradução de modelo ER para modelo relacional.

Page 46: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Relacionamento m:n versus uma entidade + 2 Relacionamentos 1:n.

MODELOS EQUIVALENTES

Page 47: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Relacionamento m:n da agregação versus uma entidade + 2 Relacionamentos 1:n.

MODELOS EQUIVALENTES

Page 48: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Atributo multi-valorado versus uma entidade.

•“Lançamento pagamento” e “dependentes” possuem outras

informações (atributos) ainda não representadas no modelo.

MODELOS EQUIVALENTES

Page 49: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

INDICATIVOS PARA A ESCOLHA DE CONSTRUÇÕES DE MODELAGEM

Atributo versus entidade. Exemplo: em uma indústria de automóveis, como devemos registrar

a cor de cada automóvel que sai da linha de produção?

Alguns critérios para esta decisão são: Caso o objeto cuja modelagem está em discussão esteja vinculado a

outros objetos (atributos, relacionamentos, entidades genéricas ou especializadas), o objeto deve ser modelado como entidade.

Quando o conjunto de valores de um determinado objeto é fixo durante toda a vida do sistema ele pode ser modelado como atributo. (ex.: atributo sexo)

Quando existem transações no sistema que alteram o conjunto de valores do objeto, o mesmo não deve ser modelado como atributo.

Page 50: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

MODELO CONCEITUAL

Atributo versus generalização/especialização.Exemplo: a categoria funcional de cada empregado de uma empresa deve ser modelada como atributo da entidade ou através de uma especialização (cada categoria funcional corresponde a uma especialização da entidade empregado)?

Alguns critérios para esta decisão são:• Uma especialização deve ser usada quando sabe-se que as classes

especializadas de entidades possuem propriedades (atributos, relacionamentos,generalizações, especializações) particulares.

• O sexo do empregado é melhor modelado como atributo de empregado, caso não existam propriedades particulares de homens e mulheres a modelar na realidade considerada.

INDICATIVOS PARA A ESCOLHA DE CONSTRUÇÕES DE MODELAGEM

Page 51: MODELAGEM DE DADOS - files.rosefib.webnode.com.brfiles.rosefib.webnode.com.br/200000335-2419b25145/Aula-02-Modelo... · Modelagem de Dados PROJETO DE BANCO DE DADOS PRINCIPAIS ETAPAS

Modelagem de Dados

Exercício

• Considere um banco que possui vários correntistas. Cada correntista pode ter diversas contas correntes. Existem contas que são conjuntas, (dois correntistas, sendo um deles o titular da conta). Para estas contas são realizadas transações ao longo do tempo, tais como: saque caixa, deposito caixa, transferência caixa, compensação de cheque. Toda e qualquer transação realizada fica armazenada no banco e pode modificar o saldo da conta. Devido a quantidade de transações realizadas diariamente pelos correntistas, a emissão de extrato fica disponível por até 3 meses. Após esta data precisam ser solicitadas na agência e são emitidos pelo gerente, pois os dados da conta são retirados no banco de dados diário do banco e guardados em outro local.

• Correntistas que tem suas contas desativadas e encerradas não tem seu cadastro excluído, eles ficam guardados também em outro local.

• Construa um modelo conceitual que atenda a este cenário.