UERJ Oscar Luiz Monteiro de Farias 1. Bancos de Dados. Mestrado em Engenharia de Computação área de concentração Geomática

Documentos relacionados
Introdução. Modelo de dados conceitual para o projeto de BD

Modelo Entidade-Relacionamento

Banco de Dados. Aula 3 - Prof. Bruno Moreno 26/08/2011

MATA60 BANCO DE DADOS Aula 3- Modelo de Entidades e Relacionamentos. Prof. Daniela Barreiro Claro

Modelagem de dados usando o modelo Entidade- Relacionamento (ER)

Computação Instrumental

Modelo Entidade-Relacionamento. Aécio Costa

Modelagem de dados usando MER. Andre Noel

Modelo Entidade- Relacionamento (MER) Adão de Melo Neto

18/03/2012. Independência de Dados: capacidade de modificar a definição dos esquemas em. determinado nível, sem afetar o esquema do nível superior;

MER e DER Entidades Relacionamentos Atributos Ferramentas CASE Exemplos de DERs Exemplo de Minimundo. Banco de Dados. Aula 1.

Modelagem Conceitual e o Modelo Entidade-Relacionamento

Projeto Banco de Dados

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1/64

Aula 2 Abordagem Entidade-Relacionamento Cleverton Hentz

GEE051 - Banco de Dados Projeto de BD Projeto Conceitual. Ilmério Reis da Silva UFU/FACOM /2

BANCO DE DADOS E APLICAÇÕES EM NEGÓCIOS: Modelagem usando o Modelo Entidade Relacionamento. Evandro Eduardo Seron Ruiz, Ph.D.!

MODELAGEM DE DADOS. Projeto de Banco de Dados Modelo Conceitual. Prof. Rosemary Melo

Abordagem ER. Capítulo 2

MODELAGEM DE DADOS UNIDADE 3 Modelo Entidade-Relacionamento. Luiz Leão

Banco de Dados. Aula 4 - Prof. Bruno Moreno 02/09/2011

Modelagem de Dados Usando o Modelo Entidade-Relacionamento (ME-R)

MC536. Modelo Entidade- Relacionamento

BANCO DE DADOS. Engenharia da Computação Univasf. Modelo Entidade-Relacionamento. Aula 2. Conjuntos de Entidades - Representação Exemplo:

Bancos de Dados Aula #2 - Modelos Conceituais de Dados

Revisão e Exercícios. Relacionamento. Projeto de Bancos de Dados. Chave e Domínio. Tipos de Atributos

Modelo Relacional. Aula 02

Arquitetura dos SBDs Características e Benefícios Visão Geral de Projeto de BD MER: Entidades e Atributos Atividade.

O Modelo ER. Bases de Dados (CC2005) Departamento de Ciência de Computadores Faculdade de Ciências da Universidade do Porto

Retrospectiva (Aula 2) O Modelo Entidade-Relacionamento. O Modelo Entidade- Relacionamento. O Modelo Entidade- Relacionamento

Sumário. Modelo Entidade-Associação. Modelo Entidade-Associação. Entidades. André Restivo. September 21, 2010

Modelo Entidade Relacionamento

Modelo Entidade- Relacionamento

Banco de Dados I Parte II a: Abordagem Entidade-Relacionamento

Análise Estruturada. Modelagem de Software Prof. Flávio de Oliveira Silva, Ph.D.

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE BANCO DE DADOS MODELO ENTIDADE- RELACIONAMENTO

O MODELO ENTIDADE RELACIONAMENTO. Tiago Alves de Oliveira

PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL. Prof. Angelo Augusto Frozza, M.Sc.

Modelo Entidade- Relacionamento. Hugo Barros

Unidade 2 Modelo Conceitual

Aula 3 - Modelo Entidade-Relacionamento

Modelagem de Dados. Modelagem Conceitual

1. MINI MUNDO Descrição formal da realidade a ser representada. Exemplo: suponhamos que as Faculdades Dom Bosco funcionem assim:

Ciclo de Desenvolvimento de BD

MODELAGEM DE DADOS PARTE 2

Modelagem semântica permite aproximar o modelo obtido do mundo real Exemplo de modelos:

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

SISTEMA DE INFORMAÇÃO Modelo Conceitual. Prof. Luiz Fernando Laguardia Campos FMS

Análise e Projeto de Sistemas

Banco de Dados. Modelo Entidade Relacionamento. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger

Banco de Dados Diagrama Entidade Relacionamento DER

Abordagem ER. Capítulo 2

01 - Quais as principais vantagens da utilização de um Sistema de Banco de Dados em relação aos sistemas tradicionais de gerenciamento de arquivos?

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

Banco de Dados. Modelo Entidade - Relacionamento. João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP

Ciclo de Desenvolvimento de Sistemas de BD

Construindo modelos ER. Capítulo 3

Modelo Entidade-Associação (EA)

Faculdade Ieducare. 5º Semestre Sistemas de Informação. Professor: Rhyan Ximenes. Banco de Dados II 1. Banco de Dados II

MODELAGEM DE DADOS PARTE 1

Prof. Fabiano Taguchi

Bases de Dados. Parte II Os Modelos ER e EER

Banco de Dados I Modelagem Conceitual

PCS3413 Engenharia de Software e Banco de Dados

Modelagem de dados. Abordagem Entidade-Relacionamento. Conceitos da abordagem ER. Modelo entidade-relacionamento (MER)

Projeto de Banco de Dados

Análise de Sistemas 2º Bimestre (material 2)

GBD PROF. ANDREZA S. AREÃO

Projeto de Banco de Dados

Computação Instrumental

Modelagem Conceitual parte I

Modelagem Conceitual parte I

Sistema de Banco de Dados

Banco de Dados Modelagem de Dados. Prof. Joel da Silva

1. MINI MUNDO Descrição formal da realidade a ser representada. Exemplo: suponhamos que as Faculdades Dom Bosco funcionem assim:

MODELAGEM DE DADOS -PROJETO CONCEITUAL DE BD. Prof. Angelo Augusto Frozza, M.Sc.

Bases de Dados. Parte II. Os Modelos ER e EER

SUMÁRIO. Introdução Modelo de Dados Esquema Geral de Modelagem de BD; ME-R: Conceitos gerais; DE-R Representação e exemplos.

Banco de Dados II. Prof. Fiorin

Introdução às Bases de Dados

Banco de dados. Conteúdo: Modelo relacional Prof. Patrícia Lucas

Bancos de Dados. 7. Mapeamento ER/ERE para Relacional

Banco de Dados. André Luís Duarte Capítulo 2. exatasfepi.com.br

Marcelo Henrique dos Santos

Modelo Lógico de Dados. Modelo Relacional

Modelo ER. Ricardo Terra rterrabh [at] gmail.com

Abordagem ER. Capítulo 2

BANCO DE DADOS. Bacharelado em Sistemas de Informação MODELAGEM DE DADOS. Profº Luciano Roberto Rocha. Itararé, 2º período

Banco de Dados Modelagem de Dados

Projeto de Bancos de Dados

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

Modelo Relacional. Banco de Dados 2º trimestre Prof. Patrícia Lucas

Com base nos slides vistos em sala de aula resolva os seguintes exercícios:

Modelo de dados relacional e as restrições de um BD relacional

Banco de Dados I Curso: Sistemas de Informação

INTRODUÇÃO (MODELAGEM DE BANCO DE DADOS) Professor Carlos Muniz

Análise e Projeto de Sistemas I

Modelo Relacional. Relacionamento. Processo de Projeto de. Programa. Modelo Entidade Relacionamento

Transcrição:

UERJ Oscar Luiz Monteiro de Farias 1 Bancos de Dados Mestrado em Engenharia de Computação área de concentração Geomática

UERJ Oscar Luiz Monteiro de Farias 2 Modelagem de Dados O Modelo Entidade-Relacionamento (ER) Peter P. Chen, The Entity-Relationship Model: Toward the unified view of data, março de XXX?

UERJ Oscar Luiz Monteiro de Farias 3 Uso de MCDs no Projeto de BDs PASSO 1: Análise e coleta de requisitos PASSO 2: Projeto conceitual da Base de Dados PASSO 3: Mapeamento Lógico da Base de Dados (Mapeamento do Modelo de Dados) PASSO 4: Projeto Físico do Banco de Dados (MFD)

UERJ Oscar Luiz Monteiro de Farias 4

UERJ Oscar Luiz Monteiro de Farias 5 O Modelo ER... Tipos-Entidades (Classes) Relacionamentos Atributos (características dos objetos)

UERJ Oscar Luiz Monteiro de Farias 6 O Modelo ER... Tipos-Entidades (Classes): Conjunto de objetos do mesmo tipo. as coisas tangíveis as funções exercidas por elementos eventos ou ocorrências interações especificações

UERJ Oscar Luiz Monteiro de Farias 7 O Modelo ER... Os tipos-entidades (classes de objetos) modelados devem ter o seu significado esclarecido em um Dicionário de Dados (DD). Modelo algum é suficientemente claro se não for acompanhado de uma definição formal de seus elementos (dicionário de dados ou similar). Conceituar as entidades mostrando: regras que as definem (e as exceções) exemplos ilustrativos correlação entre conceitos outras informações que facilitem o entendimento

UERJ Oscar Luiz Monteiro de Farias 8 O Modelo ER... As informações sobre as entidades relacionadas em um DD devem ajudar a responder as perguntas: O que é a entidade? O que faz? Para que serve? O que engloba esta entidade/classe? O que está excluído desta classe? Quando alguém (algo) passa a ser, ou deixa de ser, um elemento deste tipo? Sua permanência nesta categoria é imutável?

UERJ Oscar Luiz Monteiro de Farias 9 O Modelo ER... Tipo-entidade/classe - define um conjunto de objetos que possuem os mesmos atributos Cada tipo-entidade no banco de dados é descrita por um nome e por uma lista de atributos Um tipo-entidade (classe) descreve o schema ou intensão para um conjunto de objetos que partilham a mesma estrutura. Os objetos individuais de um determinado tipo-entidade (classe) são agrupados em uma coleção ou conjuntoentidade (extensão)

UERJ Oscar Luiz Monteiro de Farias 10 O Modelo ER... Tipos de atributos simples x compostos (Endereço = rua + n 0 + ap. + bairro + cidade + Estado + CEP) monovalorados x multi-valorados (cores de um veículo) armazenados x derivados Valores nulos não aplicáveis desconhecidos (is missing x not known)

UERJ Oscar Luiz Monteiro de Farias 11 O Modelo ER... Nome do tipo-entidade /classe Atributo 1 Atributo 2 Atributo n-1 Atributo n Atributo composto Atributo 2.1 Atributo 2.2 Atributo 2.m Atributo multi-valorado

UERJ Oscar Luiz Monteiro de Farias 12 Banco de Dados da empresa X... O Banco de Dados (bd) da empresa armazena informações sobre os seus empregados, departamentos e projetos.

UERJ Oscar Luiz Monteiro de Farias 13 Banco de Dados da empresa X... A Cia é organizada em departamentos. Cada dept o tem um nome único, n 0 único e um empregado especial que o gerencia. Registra-se a data de início em que este empregado especial começou a gerenciar o dept o. Um dept o pode ter várias localizações. Um dept o controla um dado n 0 de projetos, cada um dos quais com um nome único, n 0 único e apenas uma localização

UERJ Oscar Luiz Monteiro de Farias 14 Banco de Dados da empresa X... São armazenados para cada empregado: o seu nome, n 0 de seguridade social, endereço, salário, sexo e data de nascimento. Um empregado é vinculado a um só dept o, mas pode trabalhar em vários projetos, os quais não são necessariamente controlados pelo mesmo dept o. São registradas as horas por semana que um empregado trabalha em cada projeto. Assinala-se ainda, para cada empregado, o seu supervisor direto. Para fins de seguro, são registrados os dependentes de cada empregado. São armazenados: nome, sexo, data de nascimento e a relação com o empregado

UERJ Oscar Luiz Monteiro de Farias 15 Banco de Dados da empresa X... Projeto Conceitual Inicial 4 tipos-entidades (classes) foram identificados: DEPARTMENT - atributos: Name, Number, Location (multivalorado), Manager e ManagerStartDate. PROJECT - atributos: Name, Number, Location e Controlling Department. EMPLOYEE - atributos: Name, SSN, Sex, Address, Salary, BirthDate, Department e Supervisor. Name e Address podem ser atributos compostos (deve-se entrevistar os usuários para ver se eles irão se referir aos componentes individuais). DEPENDENT - atributos: Employee, DependentName, Sex, BirthDate e Relationship

UERJ Oscar Luiz Monteiro de Farias 16

UERJ Oscar Luiz Monteiro de Farias 17 O Modelo ER... Atributos chaves de um tipo-entidade (chaves): cada tipoentidade (classe) usualmente possui um atributo cujo valor é distinto para cada entidade (objeto) individual daquele tipoentidade (classe). O valor de uma chave é usado para identificar unívocamente um objeto. Um conjunto de atributos (concatenados) que identificam unívocamente um objeto é também uma chave. No diagrama do modelo ER cada atributo chave possui o seu nome sublinhado. Alguns tipo-entidades (classes) possuem mais de uma chave.

UERJ Oscar Luiz Monteiro de Farias 18 O Modelo ER... Cada atributo simples de um tipo-entidade está associado com um domínio, o qual especifica o conjunto de valores que podem ser assumidos pelo correspondente atributo das entidades individuais (objetos). Os domínios não aparecem nos diagramas ER Um atributo A de um tipo-entidade (classe) E cujo domínio é V pode ser definido como uma função de E no conjunto potência de V: A: E P(V) P(V) é o conjunto de todos os subconjuntos de V. A(e) = valor de um atributo de uma entidade (objeto) e.

UERJ Oscar Luiz Monteiro de Farias 19 O Modelo ER... A definição acima cobre os atributos mono-valorados e multivalorados bem como os NULLs. NULL - conjunto vazio atributos mono-valorados - A(e) é restrito a um conjunto com um único elemento. Atributos multi-valorados - A(e) pode ter vários elementos Atributos compostos - o domínio V é o produto cartesiano de P(V 1 ), P(V 2 ),... P(V n ), onde V 1, V 2,..., V n são os domínios dos componentes simples de atributos que formam A, i. e., V = P(V 1 ) x P(V 2 ) x... X P(V n ) Os atributos compostos e multi-valorados podem ser aninhados em modos arbitrários.

UERJ Oscar Luiz Monteiro de Farias 20 O Modelo ER... Notação: aninhamentos arbitrários podem ser representados grupando-se os componentes de um atributo composto entre parênteses ( ) e separando-se os componentes por vírgula, ; mostrando-se os atributos multi-valorados entre chaves {}.

UERJ Oscar Luiz Monteiro de Farias 21 O Modelo ER... Exemplo: uma pessoa pode ter mais que uma residência e cada uma dessas residências pode ter múltiplos telefones. O atributo Telefone_Residencial para uma entidadetipo (classe) Pessoa pode ser especificado como: {Telefone_Residencial ({Telefone (Código_de_Área, n 0 _do_telefone)}, Endereço (Endereço_da_rua (Rua, N 0, Apartamento), Cidade, Estado, CEP))}

UERJ Oscar Luiz Monteiro de Farias 22 O Modelo ER... Um Relacionamento R entre entre n tiposentidades (classes) E 1, E 2,..., E n define um conjunto de associações entre entidades (objetos) destes tipos (classes). R é um conjunto de instâncias de relacionamento r i, onde cada r i associa n entidades (e 1, e 2,..., e n ) e cada entidade (objeto) e j em r i é um membro do tipoentidade (classe) E j, 1 j n.

UERJ Oscar Luiz Monteiro de Farias 23 O Modelo ER... Um relacionamento R pode ser visto como uma relação matemática em E 1, E 2,..., E n. Pode também ser pensado como um subconjunto do produto cartesiano E 1 x E 2 x... x E n. Cada um dos tipos-entidades (classes) E 1, E 2,..., E n participam no relacionamento R e cada uma das entidades (objetos) e 1, e 2,..., e n participam na instância do relacionamento r i = (e 1, e 2,..., e n )

UERJ Oscar Luiz Monteiro de Farias 24 Exemplo de Relacionamento WORKS_FOR EMPLOYEE r 1 DEPARTMENT e 1 e 2 e 3 e 4 e 5 e 6 e 7.. r 2 r 3 r 4 r 5 r 6... j 1 j 2 j 3 r 7.

UERJ Oscar Luiz Monteiro de Farias 25 Relacionamento Ternário SUPPLIER SUPPLY r 1 PROJECT s 1 r 2 s 2. PART r 3 r 4 r 5 r 6... j 1 j 2 j 3 p 1 p 2 r 7 p 3. Cada instância do relacionamento. r i associa 3 entidades (objetos): um fornecedor s, uma peça p e um projeto j, sempre que s fornece a peça p para o projeto j.

UERJ Oscar Luiz Monteiro de Farias 26 Relacionamentos... Grau de um Relacionamento: é o número de tiposentidades (classes) que participam do relacionamento. Relacionamentos como atributos (R=WORK_FOR) i) considerar um atributo department para o tipoentidade EMPLOYEE ii) considerar um atributo multi-valorado employees no tipo-entidade DEPARTMENT

UERJ Oscar Luiz Monteiro de Farias 27 Relacionamentos... Papel (role name): o papel que cada entidade participante (objeto) de um tipo-entidade (classe) desempenha em uma relação de instância. Relacionamentos recursivos: ocorre quando o mesmo tipo-entidade (classe) participa mais de uma vez em um mesmo relacionamento. Neste caso o nome dos papéis é essencial para distinguir o significado de cada participação.

UERJ Oscar Luiz Monteiro de Farias 28 Relacionamento recursivo EMPLOYEE e 1 e 2 Papéis: supervisiona - vermelho é supervisionado - verde SUPERVISION r 1 r 2 e 3 r 3 e 4 r 4 e 5 r 5 e 6 r 6 e 7. r 7.

UERJ Oscar Luiz Monteiro de Farias 29 Restrições em Relacionamentos... Razão de Cardinalidade (cardinality radio): especifica o n 0 de instâncias em um relacionamento de que uma dada entidade pode participar. Ex.: O relacionamento binário WORKS_FOR (DEPARTMENT:EMPLOYEE) possui a razão de cardinalidade 1:N, significando que cada departamento pode estar relacionado com vários empregados, mas que um empregado pode estar relacionado com apenas um departamento. Razões de cardinalidade comuns: 1:1; 1:N e M:N

UERJ Oscar Luiz Monteiro de Farias 30 Restrições em Relacionamentos... Participação parcial - quando não necessariamente todos os elementos de um conjunto participam de uma relação. Participação total (dependência existencial) - quando todos os elementos de um conjunto participam de uma relação. Participação total é indicada por uma linha dupla e participação parcial por uma linha simples

UERJ Oscar Luiz Monteiro de Farias 31 Atributos de Relacionamentos... Relacionamentos podem, à semelhança dos tiposentidades, possuir atributos. Exs.: i) N os de horas por semana que um empregado trabalha em um projeto; ii) data na qual um gerente começou a gerenciar um dept o. Atributos de relacionamentos 1:1 e 1:N podem migrar para uma das entidades participantes. Nos relacionamentos 1:1 para qualquer dos tipos-entidades Nos relacionamentos 1:N apenas para o tipo-entidade do lado N da relação

UERJ Oscar Luiz Monteiro de Farias 32 Atributos de Relacionamentos... Para relacionamentos de grau M:N alguns atributos só podem ser determinados pela combinação das entidades participantes em uma determinada instância do relacionamento e não apenas para uma delas isoladamente. São, obrigatoriamente, atributos do relacionamento. Ex.: O atributo Hours do relacionamento M:N WORKS_ON

UERJ Oscar Luiz Monteiro de Farias 33 Tipos-entidades fracos (weak entity types)... Tratam-se de tipos-entidades (classes) que não possuem atributos chaves Entidades que pertençam a tipos-entidades fracos são identificadas por estarem relacionadas (identifying relationship) a entidades específicas de um outro tipo-entidade (identifying owner) em combinação com alguns de seus próprios valores de atributos. Um tipo-entidade fraco sempre possui uma restrição de participação total com respeito ao relacionamento de identificação (identifying relationship). Nem toda dependência existencial resulta em uma tipoentidade fraco (ex.: carteira de motorista)

UERJ Oscar Luiz Monteiro de Farias 34 Tipos-entidades fracos (weak entity types) Um tipo-entidade fraco normalmente tem uma chave parcial, que é um conjunto de atributos que podem univocamente identificar entidades fracas relacionadas à mesma entidade possuidora (owner). Nos diagramas ER uma entidade fraca é representada por um retângulo em linhas duplas. Tipos-entidadades fracos às vezes podem ser representados por atributos multi-valorados compostos.

UERJ Oscar Luiz Monteiro de Farias 35 Refinando o Modelo ER p/ a empresa X... MANAGES - um relacionamento 1:1 entre EMPLOYEE e DEPARTMENT. A participação de EMPLOYEE é parcial; a de DEPARTMENT é total. O atributo StartDate é incluído no relacionamento. WORKS_FOR é um relacionamento 1:N entre DEPARTMENT e EMPLOYEE. Ambas as participações são totais. CONTROLS é um relacionamento 1:N entre DEPARTMENT e PROJECT. A participação de PROJECT é total, a de DEPARTMENT, parcial.

UERJ Oscar Luiz Monteiro de Farias 36 Refinando o Modelo ER p/ a empresa X... SUPERVISION é um relacionamento 1:N entre EMPLOYEE (supervisor) e EMPLOYEE (supervisionado). Ambas as participações são parciais, o que indica que nem todo empregado é um supervisor e nem todo empregado possui um supervisor. WORKS_ON é um relacionamento M:N entre EMPLOYEE e PROJECT. Ambas as participações são totais. O atributo Hours indica o número de horas em que um dado empregado trabalha em determinado projeto. DEPENDENTS_OF é um relacionamento 1:N entre EMPLOYEE e DEPENDENT. DEPENDENTS_OF é um relacionamento de identificação. A participação de EMPLOYEE é parcial, a de DEPENDENT é total.

UERJ Oscar Luiz Monteiro de Farias 37 Relacionamentos: Notações no Modelo ER A cardinalidade do relacionamento de cada relacionamento binário é representado anexando-se 1, M ou N na linha que conecta o símbolo da entidade respectiva ao relacionamento. Linha simples: participação parcial, Linha dupla: participação total. Associa um par de números inteiros (min, max) com cada participação do tipo-entidade E em um relacionamento R, onde 0 min max e max 1. Para cada entidade e em E, e deve participar com no mínimo min e no máximo max instâncias de relacionamento em R. min=0 implica participação parcial e min > 0 participação total.

UERJ Oscar Luiz Monteiro de Farias 38 Nomeando as construções do esquema Usar nomes com alto conteúdo semântico Usar nomes no singular para os tipos-entidades Entidades e Relacionamentos em maiúsculas Atributos iniciam-se com letra maiúscula Nomes de papéis em minúsculas Usar nomes que correspondam à descrição do mini-mundo O diagrama ER deve ser lido da esquerda para a direita e de cima para baixo

UERJ Oscar Luiz Monteiro de Farias 39

UERJ Oscar Luiz Monteiro de Farias 40

UERJ Oscar Luiz Monteiro de Farias 41 Relacionamentos de grau maior que 2 Um relacionamento R, de grau N, terá N linhas em um diagrama ER, cada uma conectando o Relacionamento a um tipo-entidade. Em geral um relacionamento ternário representa mais informação do que três relacionamentos binários.

UERJ Oscar Luiz Monteiro de Farias 42

Relacionamento Binário x Ternário UERJ Oscar Luiz Monteiro de Farias 43

Relacionamento de identidade ternário UERJ Oscar Luiz Monteiro de Farias 44