Aula07_Modelo ER
Transcrição
Aula07_Modelo ER
IEC Banco de Dados I Aula 07 – Modelo En5dade Relacional Turmas: Sistemas de Informação Professora: André Luiz da Costa Carvalho E-‐mail: [email protected] Ambiente virtual: hLp://bdufam.wordpress.com Análise de Requisitos Projeto Conceitual Projeto Lógico Projeto Físico BD PROJETO CONCEITUAL (1) Descrição de + alto nível da estrutura do BD (2) Não contém detalhes de implementação (3) Independente do tipo de SGBD usado (4) Construção de modelos semânticos (5) Ponto de partida do projeto de BD Modelagem Conceitual O obje5vo É: Representar a semân5ca da informação, independente de considerações de eficiência. O obje5vo NÃO É: Descrever a estrutura do armazenamento do banco de dados. Requisitos de um modelo conceitual: -‐ clareza (facilidade de compreensão) -‐ exa5dão (formal) Ex: Modelo Entidade-Relacionamento Qual finalidade do Modelo E/R? 4 ¨ O Modelo E/R nos permite definir o Projeto Conceitual de um BD ¤ Tipos de dados e como eles se associam. ¤ Não define como os dados são alterados. Projeto descritos usando diagramas entidade-relacionamento (DER) ¨ Mais tarde: Conversão de um DER para um esquema relacional ¨ Exemplo de Banco de Dados § COMPANHIA § § § § § Empregados, departmentos, e projetos Companhia é organizada em departamentos Departmentos controlam vários projetos Empregado: Nome, cpf, endereço, salario, sexo (genero), e nascimento Dependentes de cada empregado Entidade 7 ¨ Entidade= “Coisa” ou objeto. ¤ ¨ É o objeto básico do modelo ER. É uma “coisa” do mundo real com uma existência independente. Pode ser um objeto com uma existência física (pessoa, carro, casa, empregado) ou pode ser um objeto com existência conceitual (empresa, serviço, curso) Conjunto de Entidades = Coleção de Entidades similares. ¤ Similar ¨ a uma Classe em linguagem orientada à objeto. Atributo = propriedade de um conjunto de entidades. ¤ Atributos são valores simples, como por exemplo: inteiros ou strings de caracteres. w Há diversos tipos de atributos: w simples ou compostos; w de valor único ou multivalorados; w armazenados ou derivados; Atributos Compostos ou Simples (Atômicos) ¨ Atributos Compostos: podem ser divididos em subpartes menores, que representam outros atributos básicos com significados diferentes. ¤ Ex: Endereço da en5dade empregado [e1] pode ser subdividido em EndereçoLocal (nome do logradouro e número), Cidade, Estado e CEP ¨ Atributos Simples (Atômicos): não são divisíveis. Atributos Compostos ou Simples ¨ Atributos compostos podem formar uma hierarquia, ex: endereçoLocal pode ser subdividido em três atributos simples: NumeroLogradouro,NomeLogradouro, NumeroApartamento. Atributos de Valor Único e Mul5valorado (Múl5plos Valores) ¨ Valor Único: Atributos que possuem um único valor para uma en5dade (a maioria). ¤ ¨ Ex: Data de Nascimento é um valor único por pessoa; Mul5valorado ou Múl5plos Valores: apresentam mais de um valor para a mesma en5dade. Um atributo mul5valorado pode possuir limites inferior e superior quanto ao número de valores permi5dos para cada en5dade individual ¤ Ex: Um empregado pode ter vários Telefones de contato Atributos Armazenados ou Derivados ¨ Atributos Armazenados ou Derivados: Em alguns casos, dois (ou mais) valores estão relacionados – por exemplo, os atributos Idade e DataNascimento. ¤ Para uma determinada en5dade pessoa, o valor de Idade pode ser determinado a par5r da data atual e do valor DataNascimento daquela pessoa. ¤ O atributo Idade é chamado Atributo Derivado e DataNascimento Atributo Armazenado. ¨ Alguns valores de atributos podem ser derivados das en#dades relacionadas. Ex: Número de funcionários do departamento Valores Nulos ¨ Em alguns casos uma determinada en5dade pode não ter um valor aplicável para um atributo. ¤ Ex: NúmerodoApartamento ¨ Também ocorre de não conhecermos o conteúdo de um determinado atributo. ¤ Ex: Telefone ¨ No primeiro caso o atributo é nulo por ser não aplicável, já no segundo caso, ele é nulo por ser desconhecido. Atributos Complexos ¨ ¨ ¨ Atributos compostos e mul5valorados podem ser agrupados de modo arbitrário. Podemos representar o agrupamento arbitrário juntando os componentes de um atributo composto entre parênteses () e separando os componentes com vírgulas, Exibindo atributos mul5valorados entre chaves. Esses atributos são chamados atributos complexos. {EndereçoTelefone(Telefone(CódigodeÁrea,NúmerodoTelefone)}, Endereço(NúmeroNomedoLogradouro(Número,Logradouro,NúmerodoAp artamento),Cidade,Estado,CódigoPostal))} Tipos de En5dade Tipo de En5dade : define uma coleção (ou conjunto) de en5dades que possuem os mesmos atributos. Cada 5po de en5dade no banco de dados é descrita através de seu nome e atributos. ¤ Um 5po de en5dade (ou simplesmente en5dade) é representado nos diagramas ER como uma caixa retangular contendo o nome do 5po de en5dade. Tipo de En5dade Os nomes dos atributos são colocados dentro de formas ovais e são ligados a seu 5po de en5dade através de linhas retas. ¨ Os atributos compostos estão ligados a seus atributos componentes através de linhas retas. ¨ Os atributos mul3valoradas são exibidos em formas ovais duplas. ¨ Exemplo 17 Conjunto de Entidades Doces tem dois atributos, sendo: nome e fabr (fabricante). ¨ Cada entidade Doces tem valores para estes dois atributos, e.x. (Twizzlers, Hershey) ¨ nome fabr Doces Conjunto de En5dade Conjunto de En5dade : é a coleção de todas as en5dades de um determinado 5po de en5dade no banco de dados. Geralmente nos referimos ao conjunto de en5dades u5lizando o mesmo nome do 5po de en5dade. Ex: EMPREGADO se refere ao 5po de en5dade e ao conjunto de todas as en5dades empregado do banco de dados. Tipo de En5dade e Conjunto de En5dade ¨ ¨ Um Tipo de En5dade descreve o esquema para um Conjunto de En5dades que compar5lham a mesma estrutura. A coleção de en5dades de um determinado 5po de en5dade é agrupada num conjunto de en5dades, que também é chamado de extensão do 5po de en5dade. Atributos Chave ¨ Atributos Chaves de um 5po de En5dade: O atributo chave de uma en5dade iden5fica univocamente aquela en5dade. ¤ ¨ Uma en5dade pode ser iden5ficada univocamente através de um conjunto de atributos, pode-‐se definir um atributo composto para ser a chave será dessa en5dade ¤ ¤ ¨ Ex: o atributo nome é uma chave da en5dade EMPRESA; CPF para en5dade PESSOA Ex: Iden5dade de uma PESSOA é formado pelo Número do documento, Órgão Expedidor e UF Como pôde ser visto, a en5dade PESSOA pode possuir duas chaves Uma en5dade pode não possuir chave (en5dade fraca) Atributos Chave ¨ Na notação do diagrama ER cada atributo chave possui um nome sublinhado dentro da forma oval. Conjunto de Valores (Domínios) dos Atributos ¨ Cada atributo simples de uma en5dade está associado a um conjunto de valores (ou domínio de valores) ¤ ¤ ¨ Idades de empregados entre 16 e 70 anos Nomes: alfabé5cos separados por espaços Os conjuntos de valores não são exibidos nos diagramas ER Relacionamentos ¨ Sempre que um atributo de uma en5dade se refere a outra en5dade existe algum relacionamento. Ex: ¤ ¤ ¤ ¤ ¤ ¨ O atributo Gerente de DEPARTAMENTO se refere ao empregado que gerencia o departamento O atributo DepartamentoControlador de PROJETOS se refere ao departamento que controla o projeto. O atributo Supervisor do EMPREGADO se refere a um outro empregado O atriuto Departamento de EMPREGADO se refere ao departamento para o qual o empregado trabalha Etc. Chaves estrangeiras em M.R. Relacionamentos ¨ ¨ No modelo ER, essas referências não devem ser representadas como atributos e sim como RELACIONAMENTOS! No projeto inicial das en5dades, normalmente os relacionamentos são capturados em forma de atributos, à medida que o projeto é refinado esses atributos são conver5dos em relacionamentos. Relacionamento 25 Tipo de Relacionamentos descrevem um relacionamento entre entidades. ¨ Um conjunto de relacionamentos conecta dois ou mais conjunto de entidades. ¨ Representado por um losangulo, com linhas para cada conjunto de entidades envolvida no relacionamento. ¨ Exemplo 26 nome nome endereço Lojas Doces Vende Frequenta fabr Gosta Loja vende doces. Consumidor gosta de algum doce. Consumidor frequenta alguma loja. nome Consumidor endereço Grau w O grau de um Tipo de Relacionamento é o número do tipo de entidades participantes. w Ex: O relacionamento TRABALHA_PARA é de grau 2, também chamado relacionamento binário Relacionamento de grau 3 ou ternário. Grau w Algumas vezes é conveniente imaginar relacionamentos como atributos. Foi o que fizemos ao definir a entidade EMPREGADO com o atributo Departamento. w Num relacionamento binário sempre temos duas opções, criar um atributo multivalorado em DEPARTAMENTO chamado Empregados (contendo todos os empregados do departamento) ou um atributo Departamento em EMPREGADO Nome do relacionamento w O nome do papel desempenhado significa o papel de cada entidade participante desempenha em um tipo de relacionamento. Exemplo 31 nome nome endereço Lojas Doces Vende Frequenta fabr Gosta Loja vende doces. Consumidor gosta de algum doce. Consumidor frequenta alguma loja. nome Consumidor endereço Nome de Relacionamentos ¨ Relacionamentos recursivos. ¤ Mesma en5dade par5cipa mais de uma vez em um relacionamento com papéis diferentes ¤ Deve-‐se especificar o nome do papel na linha Restrições de tipos de relacionamentos binários § Cardinalidade de um relacionamento binário § § Especifica número máximo de relacionamentos que uma entidade pode participar Restrição de participação § § Especifica se a existência de uma entidade depende dela se relacionar com outra. Tipos: total e parcial Relacionamento Muitos-para-Muitos 34 Relacionamento binário, tal como Vende entre Lojas e Doces. ¨ Em um relacionamento muitos-muitos, uma entidade de qualquer conjunto pode ser conectada para muitas entidades de outros conjuntos. ¨ ¤ E.x., uma Loja vende muitos tipos de doces; um tipo doce é vendido por muitas Lojas. 35 muitos-muitos Relacionamento um-para-Muitos 36 Alguns relacionamento binários são um-paraMuitos de um conjunto de entidades para outro. ¨ Uma entidade do primeiro conjunto pode ser conectado para zero,uma, ou muitas entidades do segundo conjunto. ¨ Cada entidade do segundo conjunto é conectado para uma entidade do primeiro. ¨ 37 um-para-muitos Exemplo 38 Favorito, de Doces para Consumidores é umpara-muitos. ¨ Um consumidor possui um doce favorito. ¨ Mas um doce pode ser o favorito de qualquer número de consumidores, incluindo zero. ¨ Relacionamento um-para-um 39 Em um relacionamento um-para-um , cada entidade de qualquer conjunto-entidade é relacionada pelo menos com uma entidade do outro conjunto. ¨ Exemplo: Relacionamento Mais-vendido entre conjunto-entidade Fabr (fabricante) e Doces. ¨ ¤ Um doce não pode ser o mais vendido fabricado por mais que um fabricante, e nenhum fabricante pode ter mais que um Mais-vendido. 40 um-para um Exemplo w w Ex: Cada empregado deve trabalhar para exatamente 1 departamento, mas departamentos tem vários funcionários. Em TRABALHA_PARA, DEPARTAMENTO:EMPREGADO possui razão de cardinalidade 1:N significando que cada departamento pode ter 1 ou mais empregados e um empregado trabalha exatamente para um departamento 1:1 w Ex: 1:1 – Gerência restrição de que um empregado pode gerenciar apenas um departamento, e cada departamento tem1 gerente N:M (ou N:N) w Ex: N:M: O tipo de relacionamento TRABALHA_EM pois um empregado pode trabalhar em vários projetos e um projeto pode ter vários empregados. Restrição de Par5cipação w A restrição de participação especifica se a existência de uma entidade depende dela ser relacionada a uma outra entidade através do tipo de relacionamento. w Total ou Parcial w Ex: Se a empresa estabelece que todo empregado deve trabalhar para um departamento, então, uma entidade EMPREGADO somente pode existir se participar de uma instância do relacionamento TRABALHA_PARA. Logo, a participação de EMPREGADO em TRABALHA_PARA é TOTAL, também chamada de dependência de existência. Par5cipação Parcial w Não é esperado que todo funcionário gerencie um departamento, portanto a participação de EMPREGADO no relacionamento GERENCIA é parcial. Atributos de Relacionamento w Relacionamentos também podem possuir atributos. Ex: O número de horas por semana é um atributo do relacionamento TRABALHA_EM. Atributos de Relacionamento w Os atributos de tipos de relacionamento com cardinalidade 1:1 ou 1:N podem ser migrados para as entidades. w Por exemplo, a data de início de gerência de departamento, embora seja um atributo do relacionamento GERENCIA (1:1) pode ser migrado para EMPREGADO ou DEPARTAMENTO. M:N w Em um relacionamento de cardinalidade M:N, alguns atributos podem ser determinados através da combinação de entidades participantes numa instância do relacionamento, e não através da entidade. w Esses atributos devem ser especificados como atributos do relacionamento. En5dades Fracas w w w w w Tipos de Entidades que não possuem atributos chave são chamados de tipos de entidades fracas. Tipos de Entidades vinculadas às entidades fracas são chamadas entidade identificadora ou proprietária. O tipo de relacionamento que atribui uma entidade fraca à sua proprietária é chamado relacionamento identificador da entidade fraca. Uma entidade fraca sempre possui uma restrição de participação total. No diagrama ER, tanto uma entidade fraca quanto seu relacionamento identificador são diferenciados, contornando suas caixas e losângulos com linhas duplas. w Entidades fracas podem ter chave parcial que é o conjunto de atributos que podem univocamente identificar entidades fracas que estão relacionadas à mesma entidade proprietária. w Entidades, às vezes, podem ser representadas com atributos complexos (compostos e multivalorados) Nomenclatura ¨ ¨ Foram u5lizados nomes no singular para os Tipos de En5dade, uma vez que o nome se aplica a cada en5dade individual pertencente ao 5po; Outras convenções: ¤ ¤ ¤ ¨ Nomes de ENTIDADES e RELACIONAMENTOS em caixa alta Nomes de Atributos apenas com iniciais em maiúscula Nomes dos papéis desempenhados em minúsculas Prá3ca Geral ¤ ¤ En5dades nominadas como SUBSTANTIVOS Relacionamentos como VERBOS Resumo da Notação Exercício 1 ¨ Transforme em E.R. Aluno(Nmat,nome, nascimento) Matricula(Naluno,Ndisc,periodo,turma,data_mat,nota) Disciplina(Ndisc,periodo,turma, nome,data_ini,idprof) Professor(Id,nome, nascimento,salario) Exercício 2 ¨ Uma imobiliária deseja montar um banco de dados contendo os dados de imóveis que estão a venda ou que já foram vendidas. Devem ser considerados os seguintes requisitos: ¤ ¤ ¤ ¤ ¤ No banco de dados somente estarão armazenados dados de apartamentos residenciais em edivcios. Cada edivcio é iden5ficado por um código de 5 dígitos e é necessário saber seu nome, seu endereço, o bairro em que está localizado e o ano de construção, bem como os apartamentos que estão a venda ou já foram vendidos. Para cada apartamento, além de saber se ele já foi ou não vendido, é necessário conhecer seu preço, sua área total, sua área real, bem como o seu número iden5ficador dentro do prédio. Para cada apartamento é necessário conhecer os compar5mentos que o compõem. Cada compar5mento tem um número que o iden5fica dentro do apartamento, tem uma descrição (como "sala" ou "cozinha") e é necessário conhecer sua área. Alguns apartamentos estão relacionados a uma ou mais vagas de estacionamento. Uma vaga tem um número que a iden5fica dentro do prédio (atenção, não é um número que iden5fica a vaga dentro do apartamento). Para cada vaga é necessário saber sua área, quantos veículos nela cabem e o seu 5po (se é coberta ou não).
Documentos relacionados
Projeto de Banco de Dados e o Modelo E-R – Parte 2
• Representada por um componente triângulo rotulado ISA (por exemplo, cliente “é uma” pessoa). • Herança de atributo — Um conjunto de entidades de nível inferior herda todos os atributos e a partic...
Leia maisModelagem
São informações que qualificam uma entidade e descrevem seus elementos ou características. Quanto transpostos para o modelo modelo físico são chamados de colunas ou campos. Um atributo é uma caract...
Leia maisProjetando banco de dados - Gestão de Tecnologia da Informação
armazenadas. Atributos descrevem uma Entidade pela qualificação, identificação, quantificação ou expressão de estado da Entidade. O que descreve uma Entidade? No caso de uma pessoa, um funcionário ...
Leia mais