Baixe o app para aproveitar ainda mais
Prévia do material em texto
MODELAGEM DE DADOS UNIDADE 3 Modelagem Conceitual PROFA. GELLARS TAVARES gellarstavares@yahoo.com.br 2012 CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 2 TÓPICOS z PERCEPÇÃO DO MUNDO REAL z NOTAÇÕES z ENTIDADES z ATRIBUTOS z RELACIONAMENTOS z ELEMENTOS DE CARACTERIZAÇÃO SEMÂNTICA ADICIONAIS z IDENTIFICANDO ENTIDADES z IDENTIFICANDO RELACIONAMENTOS z GENERALIZAÇÃO / ESPECIALIZAÇÃO z ENTIDADE ASSOCIATIVA z ESQUEMAS GRÁFICOS E TEXTUAIS DE MODELOS ER PERCEPÇÃO DO MUNDO REAL z Toda realidade é sempre, em princípio, bastante nebulosa e informal. Através da observação podemos extrair desta realidade fatos que nos levam a conhecê-la de uma forma mais organizada. z Em um negócio, existem fatos que, observados e modelados, dizem algo a respeito do funcionamento deste negócio. Estes fatos estão ligados diretamente ao funcionamento da realidade, a qual tem interesse em compreender e manter. z Para que possamos retratar estes fatos e que os mesmos possam nos levar a futuras decisões e ações, se faz necessário então registrá-los. Este registro é feito através da criação de um MODELO, isto é, algo que nos mostre como as informações estão relacionadas. z Ao coletar e relacionar os fatos relevantes devemos identificar os elementos geradores de informação, as leis que regem esta realidade, bem como as operações que incidem sobre os elementos básicos (dados). z O que se quer criar é uma ABSTRAÇÃO da realidade, que seja capaz de registrar os acontecimentos da mesma, de modo que se possa implementar um sistema automatizado que atenda às reais necessidades de informação. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 3 NÍVEIS DE ABSTRAÇÃO ELEMENTOS DE ABSTRAÇÃO z Mini mundo: Porção específica da realidade, captada pelo analista, objeto de observação detalhada. Caso a análise do mini mundo torne-se muito complexa, o analista pode subdividi-lo em pontos menores, chamados de “visões”. z Banco de Dados: Coleção de fatos registrados que refletem certos aspectos de interesse do mundo real. Cada mudança em algum item do banco de dados reflete uma mudança ocorrida na realidade. z Modelo Conceitual: Representa e/ou descreve a realidade do ambiente, constituindo uma visão global dos principais dados e relacionamentos (estruturas de informação), independente das restrições de implementação. Descreve as informações contidas em uma realidade, as quais irão estar armazenadas em um banco de dados. z Modelo Lógico: Descreve as estruturas que estarão contidas no banco de dados, sem considerar nenhuma característica específica de um Sistema Gerenciador de Banco de Dados (SGBD), resultando em um esquema lógico de dados. Tem seu início a partir do Modelo Conceitual. z Modelo Físico: Descreve as estruturas físicas de armazenamento de dados, tais como: tamanho dos campos, índices, tipo de preenchimento destes campos, etc. Tem origem no Modelo Lógico e detalha o estudo dos métodos de acesso ao SGBD. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 4 Desenvolver um projeto de sistema de informação consiste em traduzir um “problema” do mundo real numa “solução” que envolve a organização, pessoas e tecnologia (hardware e software). z Todo projeto de um sistema de aplicação para banco de dados necessita de um coração, um centro nervoso do mesmo. A modelagem de um sistema através da abordagem Entidades- Relacionamentos representa este ponto central no projeto conceitual de um sistema. z O objetivo da Modelagem de Dados é transmitir e apresentar uma representação única, não redundante e resumida, dos dados de uma aplicação. Em projetos conceituais de aplicação em banco de dados o Modelo Entidades-Relacionamentos é o mais largamente utilizado para representação e entendimento dos dados que compõe um sistema. z Desenvolvida na década de 70 e possui paternidade discutível: Charles Bachman, James Martin, Peter Chen e outros. É de Peter Chen o rótulo MER (Modelo Entidades- Relacionamentos) que se transformou em, praticamente, sinônimo da técnica de Modelagem de Dados. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 5 z Um Modelo de Dados é uma forma de representação gráfica do conhecimento que se tem sobre um ambiente qualquer. Mostra uma visão das informações de interesse e dos vínculos existentes entre elas, em um determinado momento. z Quando Peter Chen formulou a proposta do Modelo Entidades-Relacionamentos, baseou-se na compreensão da realidade em que se situava o problema. Como iremos projetar um sistema se não entendemos o negócio para o qual será realizado? z Chen dedicou-se a destacar a importância de reconhecer os objetos que compõem este negócio, independentemente das formas de tratamento das informações, procedimentos, programas, etc. Estes objetos que desejamos conhecer e modelar foram classificados em dois grupos: Entidades e Relacionamentos. z A figura seguinte representa um fato comum que pode ser representado através dos elementos básicos que compõem o Modelo Entidades-Relacionamentos INTRODUÇÃO z A primeira etapa do projeto de um banco de dados é a construção de um modelo conceitual, a chamada modelagem conceitual. z O objetivo da modelagem conceitual é obter uma descrição abstrata, independente de implementação em computador, dos dados que serão armazenados no BD. z A técnica de modelagem de dados mais difundida e utilizada é a abordagem entidade- relacionamento (ER). z Nesta técnica, o modelo de dados é representado através de um modelo entidade- relacionamento (MER). z Usualmente, um modelo ER é representado graficamente, através de um diagrama entidade- relacionamento (DER). z CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 6 z Criada Peter Chen, em 1976, e tornou-se um padrão para modelagem conceitual, tendo sofrido diversas extensões, sendo baseada na percepção de uma realidade constituída por um grupo básico de objetos chamados ENTIDADE e por RELACIONAMENTOS entre estas entidades. z Mesmo as técnicas de modelagem OO, que têm surgido recentemente, baseiam-se nos conceitos da abordagem ER. z O MER é formado por: entidade, relacionamento, atributo, generalização/especialização, agregação (entidade associativa). A Abordagem Entidade-Relacionamento (E-R) Baseada em um 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: -O Diagrama Entidade-Relacionamento (DER). O Diagrama Entidade-Relacionamento (DER). Notações: Peter Chen; Pé-de-galinha (Engenharia da Informação) IDEF1X (US Air Force). CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 7 Peter Chen Pé-de-galinha (Engenharia da Informação) CURSO: SISTEMAS DE INFORMAÇÃODISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 8 DEF1X (US Air Force) NTIDADES Objeto que existe no mundo real (concreto ou abstrato) com uma identificação distinta e m um Uma entidade representa um conjunto de objetos da realidade modelada. Como o objetivo de um modelo ER é modelar de forma abstrata um BD, interessa-nos ment Uma entidade pode representar tanto objetos concretos da realidade (pessoas, automóveis, A representação se realiza através de um retângulo, com o nome desta entidade em seu terior z I E co significado próprio. so e os objetos sobre os quais se deseja manter informações. livros, alunos,...), quanto objetos abstratos (departamentos, disciplinas, compras, cidades, viagens...). in . CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 9 entidade se refere a um conjunto de objetos; para se referir a um objeto em particular é usado o termo instância (ou ocorrência). TRIBUTOS o ER permite a especificação de propriedades de entidades. z É uma propriedade que descreve alguma característica e que para uma dada entidade possui u uma regra de construção para estes valores. Este conceito é importante para a z s atributos podem ser: – Único: caso o valor não se repita em mais de uma entidade como a matricula de um z A z Em um DER, uma entidade é representada através de um retângulo que contém o nome da entidade. A z O model um valor. z Todo valor é extraído de um domínio. O Domínio é um conjunto de valores válidos para um Atributo, o padronização dos dados do BD. O conceito de atributo serve para associar informações a ocorrências de entidades ou de relacionamentos. O z Quanto a unicidade aluno. – Não único: quando o valor pode se repetir como, por exemplo, o nome de um aluno, pois podem existir homônimos. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 10 z Quanto a obrigatoriedade – Obrigatório: quando obrigatoriamente deve ter valor para uma entidade, por exemplo, o nome ou a matricula de um aluno, pois não se pode cadastrar aluno sem z Qu – plo, matricula de um aluno, pois é valor único. do possui parte como, por exemplo, o endereço composto de rua, z Qu – o valor para uma entidade como, por exemplo, matricula. quando pode possuir mais de um valor para uma dada entidade como, Tipos de Atrib -Atributo Simples posto -Atributo Determinante ou Identificador rado ou tributo Determinante ou Identificador ou chave. -Seu valor representa um elemento da entidade. estas informações. – Opcional: quando pode não ter valor, por exemplo, telefone ou email para um aluno, já que nem todo aluno possui telefone ou e-mail. anto a composição Simples: quanto é atômico (único) como, por exem – Composto: quan número, complemento, cidade, CEP, etc.. anto a valoração Monovalorado: quando possui um únic – Multivalorado: por exemplo, telefone, um aluno pode ter vários telefones. utos: -Atributo Com -Atributo Multivalo -Atributos Derivado A -Seu valor é único para a entidade. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 11 ou Pode ser dividido em sub-atributos, para que seu significado seja melhor compreendido. ou tributo Multivalorado. Pode assumir mais do que um valor para cada entidade. ou Seu valor pode ser obtido a pa ulo feito entre a data atual e a data de ascimento do aluno. Existem problemas decorrentes de manter atributos derivados no banco e dados e é importante, sempre que possível, substituí-los pelos atributos dos quais eles erivam. Assim, armazena-se a data de nascimento do aluno no banco e não sua idade. Atributo Composto. A Atributos Derivado. rtir de outros atributos. A idade do aluno é obtida a partir do cálc n d d CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 12 Para entidade alunos, temo z Endereço: pensando no conjunto, sabemos que podemos ter mais de um aluno morando no sificado como atributo identificador. z Nome: à primeira vista, é comum indicarmos o atributo como identificador, porém é possível haver dois alunos com o mesmo nome. z EXEMPLO: s os seguintes atributos: mesmo endereço, assim, não poderia ser clas z Matrícula: para cada aluno é gerado um número de matrícula que o identificará nas turmas, e que não pode se repetir. Este atributo pode ser classificado como atributo-chave z e maneira análoga a uma entidade em um z a da entidade/relacionamento a qual ele pertence. é um atributo opcional e multivalorado (0,n). (identificador). Um atributo pode possuir uma cardinalidade, d relacionamento. A cardinalidade de um atributo define quantos valores deste atributo podem estar associados a uma ocorrênci – Nome e Código são atributos obrigatórios e monovalorados (1,1). – Telefone CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 13 ELACIONAMENTOS z Além de especificar os objetos sobre os quais deseja-se manter informações, o modelo ER cificação das propriedades dos objetos que serão armazenados no BD. z Uma das propriedades sobre as quais pode ser desejável manter informações é a associação entre objetos. a - Abstração de um -O fato, acontecim -Associação entre entidades. -Duas entidades + Um Verbo. s que erbo do relacionamento em seu interior. z Para definir um relacionamento entre duas entidades, devemos verificar se há correlação ntidos: R deve permitir a espe z Mostra a associação entre as instâncias das entidades. Exemplo: saber quais pessoas estão associadas a quais departamentos em um organização. a associação entre (ocorrências de) entidades. ento que liga dois objetos, duas “coisas” existentes no mundo real. A representação se realiza através de um losango, ligado por linhas às entidade participam do relacionamento com o v entre elas, e podemos fazer isso colocando um verbo para tentar associá-las. É importante verificar se a associação entre as entidades é verdadeira em ambos os se CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 14 x. 1: Cliente faz empréstimo. z Conjunto de objetos z Conjunto de objetos z Conjunto de associações, cada um faz. Ex. z Conjunto de objetos z Conjunto de objetos z Conjunto de associações, cada um a pessoa - pertence. ular dentro de um conjunto, fala-se em par específico de ocorrências de Isto pode ser facilmente visualizado através de um Diagrama de Ocorrências (representam z O m – ocorrência de entidade E classificados como empréstimos; classificados como clientes; a ligando empréstimos a clientes - 2: Pessoa pertence a Departamento classificados como pessoas; classificados como departamentos; a ligando um departamento a um Caso seja necessário referir uma associação particocorrência ou instância de relacionamento, formado por um entidades. z de forma gráfica as associações entre instâncias). odelo apresentado permite que: Uma ocorrência de entidade não esteja associada a nenhuma através do relacionamento. Exemplo: a pessoa p2. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 15 mento. to d1. Grau do Rela Um Relacionamento pode envolver duas ou mais Entidades. mento é determinado pelo número de Entidades envolvidas: as entidades. Relacionamentos Ternários tão associadas pelo mesmo relacionamento. z relacionamento é a de quantas ocorrências de um estar associadas a uma determinada ocorrência através do relacionam dentificação de Relacionamento ode ando o Negócio negócio para o qual se efetuará um sistema de aplicação, podemos não possuir conhecimento especializado no mesmo, logo, devemos procurar jetos principais. – Uma ocorrência de entidade esteja associada a exatamente uma ocorrência de entidade através do relaciona Exemplo: a pessoa p1. – Uma ocorrência de entidade esteja associada a mais de uma ocorrência de entidade através do relacionamento. Exemplo: o departamen cionamento O Grau do Relaciona Relacionamentos Binários: é de grau dois, pois envolvem apenas du : é de grau três, em que três entidades es Para fins de projeto de banco de dados, uma propriedade importante de um a entidade podem ento. z Esta propriedade é chamada de cardinalidade de uma entidade em um relacionamento. I M l z Num primeiro contato com um conhecer seus ob CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 16 z Nesse caso, algumas regras podem ser aplicadas: z “Um país participa das Olimpíadas”: Relaciona xemplo 1: esse tipo de relacionamento associamos instâncias de um objeto de um tipo a outras de outro tipo. xemplo: o relacionamento entre PESSOA e VEICULO com a finalidade de expressar o conceito de. z Ao descrevermos textualmente a realidade analisada, as entidades podem ser identificadas por similaridade com a análise sintática nas linguagens naturais. Ö o sujeito e o objeto da sentença são, provavelmente, entidades; Ö os verbos sugerem relacionamentos; Ö A frase sugere de imediato a garimpagem de PAÍS e OLIMPÍADAS como entidades e o verbo “PARTICIPA” como o relacionamento entre elas. mento entre objetos de diferentes tipos: E N E de proprieda 1- Identificar os objetos envolvidos VEICULO, com a instância “jipe” ar os objetos data de nascimento, sexo, CPF VEICULO, caracterizado por: marca cor, ano de fabricação, número do chassi 3 - Representar os objetos: Assim, se desejamos ter, conceitualmente, representado um ambiente observado onde “João é proprietário de um jipe amarelo”, poderá nos valer da seguinte estratégia: PESSOA, com a instância “João” 2 - Caracteriz PESSOA, caracterizado por: nome, 4- Identificar o relacionamento entre os objetos PESSOA é proprietária de VEÍCULO s ULO. Um VEÍCULO pode pertencer a uma PESSOA ou não. LO. 5 - Caracterizar o relacionamento entre os objeto Nem toda PESSOA é proprietária de um VEÍC Algumas PESSOA possuem mais de um VEÍCU CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 17 Se um VEÍCULO pertence a uma PESSOA, ele não pertence a mais ninguém. 6 - Representar o relacionamento Este processo pode ser utilizado para mapear qualquer relacionamento entre dois, ou mais, tipos de objetos e, também, entre os mesmos objetos. Assim, se necessitamos expandir nosso modelo representando também as observações: uma PESSOA, mas pode ser utilizado por diversas PESSOAS para locomoção eríam - Identificar os objetos envolvidos PESSOA VEÍCULO s ESSOA, caracterizado por: nome, data de nascimento, sexo, CPF EÍCULO, caracterizado por: marca cor, ano de fabricação, número do chassis : numero do registro, endereço, metragem, tipo de edificação - um VEÍCULO é de propriedade de - uma PESSOA utiliza um IMÓVEL para morar T os que repetir os passos de 1 a 6 para cada nova observação. 1 IMÓVEL 2 - Caracterizar os objeto P V IMÓVEL, caracterizado por 3 - Representar os objetos: 4- Identificar os novos relacionamentos entre os objetos PESSOA utiliza VEÍCULO PESSOA utiliza IMÓVEL CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 18 - Car cteriz bjetos Nem toda PESSOA utiliza um VEICULO Um VEICULO pode ser utilizado por mais de uma PESSOA VEICULO Um VEICULO sempre será utilizado por, pelo menos, uma PESSOA r SSOA ARDINALIDADE DO RELACIONAMENTO z Para fins de projeto de banco de dados, uma propriedade importante de um relacionamento é a de quantas ocorrências de uma entidade podem estar associadas a lacionamento. entificam quantas vezes cada instância de uma entidade pode participar do relacionamento. Há duas cardinalidades a considerar: a pelos símbolos 0 ou 1. 5 a ar o relacionamento entre os o Algumas PESSOA utilizam mais de um Toda PESSOA utiliza um, e somente um, IMOVEL para mora Um IMOVEL pode ser utilizado por uma ou mais PE Um IMOVEL nem sempre é utilizado por uma PESSOA 6 - Representar novos relacionamentos C uma determinada ocorrência através do re z Esta propriedade é chamada de cardinalidade de uma entidade em um relacionamento. Id Cardinalidade Máxima é representada pelos símbolos 1 ou N (ou M). Cardinalidade Mínima é representad CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 19 Cardinalidade máxima: – – A cardinalidade máxima “muitos”, referida pela letra n. z z Um ard z Um duas ocorrências de entidade. Apenas duas cardinalidades máximas são relevantes: A cardinalidade máxima 1; Quantas pessoas, no máximo, podem ser proprietárias de um automóvel??? automóvel pode pertencer, no máximo, a quantas pessoas?? inalidade máxima pode ser utilizada para classificar relacionamentos binários: C relacionamento binário é aquele cujas ocorrências contêm CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 20 lassificação dos relacionamentos binários: z 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 a uma entidade em A. z 1:N (Um para muito mero de entidades em B, enquanto um a entidade em A. z a a qualquer número de entidades em ero de entidades em A. C s): uma entidade em A está associada a qualquer nú a entidade em B está associada no máximo a um N:N ou N:M (Muitos para muitos): Uma entidade em A está associad B, e uma entidade em B está associada a qualquer núm CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 21 ► tente entre entidades e atributos. Cardinalidade um para um A cardinalidade é determinada pelas “regras de negócio” criadas pela organização.Os usuários e a documentação da organização dirão qual a cardinalidade exis Cada Empregado gerencia no máximo quantos Departamentos? 1 1 Empregado Departamento gerenciaa Cada Departamento é gerenciado por quantos Empregados? d3 d2 d1 e7 e6 e5 e4 e3 e2 e1 Gerencia EMPREGADO DEPARTAMENTO CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 22 Cardinalidad e um para muitos 1:N N:1 CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 23 ardinalidade muitos para muitos C Empregado Departamento trabalha N 1 Cada Empregado trabalha em quantos Departamentos? Cada Departamento possui quantos Empregados? d3 d2 d1 e7 e6 e5 e4 e3 e2 e1 Trabalha Para Empregado Departamento CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 24 N:N p3 p2 p1 e4 e3 e2 e1 Trabalha Em EMPREGADO PROJETO CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 25 Relações podem ser nomeadas usando verbos ou palavras agregadas Exemplos de relacionamento binário: Grau 2 – Binário Grau 1 - Unário CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 26 z ior do que dois Cardinalidade m Exemplo 1: Grau 3 - Ternário A abordagem ER permite que sejam definidos relacionamentos de grau ma (ternários, quaternários,...). áxima para relacionamentos ternários: CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 27 - 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 nho, para cada par Aluno-Disciplina - Escolha outra Entidade, por exemplo, DISCIPLINA, e pergunte:Quantas Disciplinas eu nho, para cada par Aluno-Professor? Exemp - O “1” na linha que liga DISTRI nto expressa que cada par de ocorrências (cidade, produto) está as - A um par (cidade, distribuido ociados s, isto é, um distribuidor de distribuir em uma cidade muitos produtos. A um par (produto, distribuidor) podem estar associadas muitas cidades, isto é, um distribuidor te ? te lo 2: BUIDOR ao relacioname sociado no máximo a um distribuidor. r) podem estar ass muitos produto po - pode distribuir um produto em muitas cidades. xemplE o 3: Aluno faz Disciplina Professor N 1 N Um ALUNO em antos PROF? Um PROF em uma uma DISCIPLINA estão associados a qu DISCIPLINA estão associados a quantos ALUNOS? Um ALUNO e um PROF estão associados em quantas DISCIPLINAS? CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 28 ação que pode ser representada por um modelo ade que são associadas a uma ocorrência de cardinalidade mínima). ara fins de projeto de BD, consideram-se apenas duas cardinalidades mínimas: Relacionamentos Condicionais (0): nem todos os elementos de uma entidade estão ligados com elementos de outra entidade. Relacionamentos Incondicionais (1): todos os elementos de uma entidade estão obrigatoriamente ligados a um elemento, no mínimo, da outra entidade. Cidade Distribuidor Exemplo 4: Cardinalidade Mínima: z Além da cardinalidade máxima, outra inform ER é o número mínimo de ocorrências de entid uma entidade através de um relacionamento ( P Produto distribuição (1,1),N) (1 (1,N) Materiais MRP Pedidos Compra Requisições N N N CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 29 z A cardinalidade mínima 1 também recebe a denominação de “associação obrigatória”, já o relacionamento deve obrigatoriamente associar uma ocorrência de entidade a cada ocorrência de entidade em questão. z z A cardinalidade mínima em um Diagrama é anotada junto a cardinalidade máxima. gado deve ter a ele alocada obrigatoriamente uma mesa (cardinalidade mínima 1); z E que a mesa pode existir sem que a ela esteja alocado um empregado (cardinalidade mínima 0). que ela indica que Com base na mesma linha de raciocínio, a cardinalidade mínima 0 recebe a denominação de “associação opcional”. z A cardinalidade mínima é usada para especificar que cada empre CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 30 z No mínimo, quantas pessoas podem ser proprietárias de um automóvel??? z Toda PESSOA utiliza u z Um z Um IMÓVEL nem sempre será utilizado por uma PESSOA “Eduardo possui um As relações podem ter limites mínimos e máximos z Um professor pode ensinar de 0 a 4 disciplinas (limite inferior é 0 e limite superior é 4) e um uma disciplina pode ser ministrada por 0 a 1 professor (limite inferior é 0 e o limite superior é 1) z Um automóvel pode pertencer, no mínimo, a quantas pessoas?? m, e somente um IMÓVEL para morar. IMÓVEL pode ser utilizado por uma ou mais PESSOAS Jipe e mora em uma Cabana” CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 31 z Quando o lim nto é definido como “opcional” z Quando o limite inferior da cardinalidade for 1 o relacionamento é definido como z Exemplos de cardinalidade com ite inferior da cardinalidade for 0, o relacioname “obrigatório” z Toda PESSOA utiliza um, e somente um IMÓVEL para morar z Um IMÓVEL pode ser utilizado por uma ou mais PESSOAS Um IMÓVEL nem sempre será utilizado por uma PESSOA pleta: CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 32 Restrição de z A restrição de relacionamento em – ma instância departamento. – ma instância do outro tipo de entidade. Ex.: nem odo empregado gerencia um departamento. PA a participação de A é parcial de de A pode existir sem se relacionar com nenhuma instância de entidade de B. PARTICIPAÇÃO TO z a instância de outra en Participação de participação determina o número mínimo de instâncias que cada entidade pode participar. Há dois tipos de restrição de participação: Total: toda instância de um tipo de entidade deve estar relacionada à u do outro tipo de entidade. Ex.: todo empregado trabalha para um Parcial: nem toda instância de um tipo de entidade está relacionada à u t RTICIPAÇÃO PARCIAL z Seja um relacionamento entre dois conjuntos-entidade A e B no relacionamentocom B se alguma instância de entida TAL Quando todas as instâncias de uma entidade precisam estar associadas a algum tidade através de um relacionamento. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 33 Exemplo 1: teca, os usuários podem reservar e retirar livros. Cada usuário pode reti é neces devem ter sua nacionalidade informada. Os funcionários da biblioteca podem ter acesso a qualquer retirada de livros, mas não reserva. Os funcionários da biblioteca possuem um cadastro dos livros informando título, autor, gênero, edição, editora e ano de publicação. Para os funcionários, há os dados pessoais, o salário e a função exercida. z 1º passo: identificar as entidades. No texto tentaremos encontrar objetos que sejam modelados como entidades. Tais entidades são objetos que podemos descrever, ou seja, que apresentem alguma característica, a qual precisamos armazenar. z No texto, é imprescindível ter informações a respeito dos usuários, funcionários, livros e autores. z 2º passo: encontrar, definir atributos e identificar atributo-chave. Para nos certificarmos de que identificamos as entidades certas, e não atributos de entidades verificaram no texto característica dessas entidades, que são os atributos. Caso o texto não forneça ações sobre o sistema, então, teremos um novo texto a er explorado. z No sistema de uma biblio rar vários livros, mas somente reservar um livro. Para que o usuário empreste ou retire um livro, sário que ele informe nome, endereço, CPF e um telefone de contato. Os autores dos livros os atributos, é necessário buscar novas inform s E editora, seria uma entidade ou devemos tratar como atributo? Não existe nenhuma descrição no texto para editora, mas devemos pensar em relação ao nosso projeto: seriam interessantes termos informações a respeito das editoras? Ou devemos apenas mencioná-las como uma característica dos livros? Se atribuirmos à editora uma classificação de entidade, CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 34 os nos questionar em vários aspectos, e várias vezes; para podermos determinar se trata de um atributo ou de uma entidade, é importante que a z vezes nos diversos livros e, e, assim, não ficarmos restritos apenas ao nome delas. z 3º passo: identificar os relacionamentos. Neste passo temos como referência o texto e procuramos todas as associações existentes entre as entidades. Lembramos que jamais uma s não cumpriria, assim, o z 4º passo: colocar a cardinalida s a opção de colocar as restrições do sistema, devemos ter mu a. A restrição encontrada no texto é som à retirada ou reserva de livros. ela teria atributos importantes no projeto? Se editora for colocada como atributo de livro, essa informação seria muito repetitiva nos vários livros? Seria uma informação importante mais acumulativa, redundante? Devem decisão tomada seja convincente em todas as questões feitas. Como temos um projeto de biblioteca, nesse caso é muito mais interessante considerarmos editora como entidade. Teríamos tal informação repetida várias em se tratando de uma biblioteca, é muito importante termos informações a respeito da editoras, entidade fica sem uma associação ou um relacionamento, poi propósito do modelo. de. Neste ponto temo ita atenção, pois é o que diferenciará o sistem ente o que diz respeito CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 35 Exemp tema de controle acadêmico de uma universidade fictícia. O modelo descreve o seguinte: z Deseja-se manter informações sobre alunos, cursos, disciplinas e departamentos; z Deseja-se manter informações s de alunos a cursos, de disciplinas a cursos, de disciplinas a departamentos, bem e disciplinas as suas disciplinas pré-requisitos. z z a disciplina pode z m z Um aluno está inscrito em exatamente um rso e um curso pode ter nele inscritos muitos lo 2: Deseja-se desenvolver uma parte do modelo de dados de um sis obre a associação como d Cada disciplina possui exatamente um departamento responsável e um departamento é responsável por muitas disciplinas, inclusive por nenhuma. Uma disciplina pode possuir diversos pré-requisitos, inclusive nenhum. Um ser pré-requisito de muitas outras disciplinas, inclusive de nenhuma. Uma disciplina pode aparecer no currículo de muitos cursos, inclusive de nenhum e u curso pode possuir muitas disciplinas em seu currículo, inclusive nenhuma. cu alunos, inclusive nenhum. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 36 LEMENTOS DE CARACTERIZAÇÃO SEMÂNTICA ADICIONAIS outra(s Auto-relacionamento z Exemplos: E Auto-relacionamento: ocorre quando uma instância de uma Entidade se relaciona com ) instância(s) da mesma Entidade, ou seja, relacionamento de uma Entidade consigo mesma. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 37 z Num Auto-Relacionamento é necessário saber o PAPEL que cada elemento do conjunto de entidade está representando. z Limites inferiores e superiores em um relacionamento 1:1 recursivo Empregado João Pedro Paulo Maria (0,N) supervisiona supervisor supervisor supervisionado (1,1) supervisionado CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 38 z Entre duas entidades pode haver mais de um relacionamento, ou seja, uma entidade pode estar associada à outra por mais de um relacionamento. z Nesse exemplo, dizemos que o professor “executa” duas funções: ele também pode haver alguns professores que gerenciam alguns projetos. É importante ressaltar que nem todos os professores executam e gerenciam projetos, só alguns fazem. z A função do professor em relação ao projeto, ou seja, a função que uma entidade desempenha em um relacionamento em que estão associadas duas ou mais entidades, é chamada papel executa projetos, e . Em geral, essas funções, ou melhor, esses papéis das entidades participantes não são especificados, são implícitos. Os papéis são úteis quando o significado de um relacionamento precisa ser esclarecido. z Os relacionamentos podem ter atributos, eles não são exclusivam te propriedades das entidades. Esse atributo deve fazer parte, ser comum às entidades participantes ou associadas ao relacionamento. en Disciplina Requisitos N Pré-requisito de É Pré-requisitoN Promover Venda N Compra AssessoraN Empresa VendeN CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 39 e não é a a hora em que o z um projeto, podem atuar diversos engenheiros com funções diferentes. z Algumas vendas são à vista, outras a prazo. z Vendas a prazo são relacionadas a uma financeira, através do relacionamento FINANCIAMENTO. z Os atributos nº de parcelas e taxa de juros são atributos do relacionamento. z quem pertence os ATRIBUTOS: PREÇO, QUANTIDADE e PRAZO? z A figura mostra que o professor ministra disciplinase há um horário específico qu exclusivo do professor nem da disciplina. O atributo horário inform professor ministra a disciplina, ou seja, quando ele exerce seu papel. z A função não pode ser considerada atributo de ENGENHEIRO, já que um engenheiro pode atuar em diversos projetos, exercendo diferentes funções. Também não é atributo de PROJETO, já que, em Se estes atributos tivessem sido colocados na entidade VENDA, eles deveriam ser opcionais. A CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 40 z PREÇO, QUANTIDADE e PRAZO, não podem pertencer a PRODUTOS, pois se fosse assim TODOS os FORNECEDORES deveriam praticar o mesmo preço. z PREÇO, QUANTIDADE e PRAZO, não podem pertencer a FORNECEDORES, pois se fosse assim TODOS os PRODUTOS de um fornecedor teriam o mesmo preço. z Não pertencendo nem a PRODUTOS ou a FORNECEDORES, e sendo relevante no relacionamento VENDA, são atributos do relacionamento. A quem pertence o ATRIBUTO: dataDaConsulta? CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 41 SOLUÇÃO: Entidade Fraca: ocorre caso cada instância de uma entidade (Fraca) exista somente porque está associada à outra instância de outra entidade (Forte). →Ou seja, não existe se não estiver relacionada à outra, isto é, ela é logicamente dependente da outra. A Entidade Fraca é representada por: z Quando parte da chave é um relacionamento – Exemplo: CPF do Empregado e numero sequencial na entidade Dependente Empregado Dependente Numero Nome EEnnttiiddaaddee FFrraaccaa: entidade sem chave - A entidade é identificada por algum atributo da entidade + algum relacionamento EEnnttiiddaaddee FFoorrttee: entidade com chave - A entidade é identificada por atributos da própria entidade Cpf Nome Endereço CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 42 O conjunto de entidades Ementa só existe se existirem Disciplinas. Uma Ementa nunca existirá sozinha. O conjunto de entidades Disciplina é dita de Ementa. O conjunto de entidades Ementa relaciona-se com Disciplina através do seu tipo de relacionamento Identidade. tipo de entidade proprietária DisciplinaPossui 1 Ementa 1 Disciplina Possui 1 Ementa 1 O conjunto de entidades Ementa só existe se existirem Disciplinas, portanto, obrigatoriamente participará do relacionamento Possui com Disciplina. Disciplina Possuinta 1 1 Eme Disciplina Possui 1 Ementa 1 CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 43 z Dependência pode ser de existência. ● Dependência de Identificador. Uma entidade fraca não possui identidade própria. Sua chave primária é composta pela chave estrangeira proveniente da entidade forte (“dona”) concatenada a um identificador de si própria (cujo valor pode repetir para diferentes instâncias da entidade dona). CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 44 GENERALIZAÇÃO E ESPECIALIZAÇÃO O modelo entidade-relacionamento estendido (EER) O modelo mostrado até agora é o modelo entidade-relacionamento básico, mas ele pode ser mais detalhado e apresentado em sua forma estendida. O modelo estendido apresenta particularidades como a generalização, especialização, herança e agregação. z Além de relacionamentos e atributos, propriedades podem ser atribuídas a entidades através do conceito de generalização / especialização. z Através deste conceito é possível atribuir propriedades particulares a um subconjunto das ocorrências (especializadas) de uma entidade genérica. z No DER, o símbolo para representar generalização/especialização é um triângulo isósceles. ESPECIALIZAÇÃO Quando são definidas as entidades, muitas vezes achamos que devemos detalhar, ou melhor, montar subgrupo, poderia dizer uma “subentidade” que difere da criada por apenas algum atributo. Neste caso a especialização. Temos uma entidade e, a partir dela, forma os outra entidade com os esmo atributos, mas com um ou mais que classificam ou a especificam. Se olharmos de forma os de entidades Cada subgrupo apresenta propriedades diferentes dos outros subgrupos Considere o conjunto de entidades Empregado na modelagem dos dados de uma universidade Podemos identificar os seguintes subconjuntos dentro de Empregado Professores Titulação Universidade de titulação Regime de trabalho (DE, 40h, 20h) Escriturários Grau de instrução Área de atuação (contador, secretária, etc.) Engenheiros Especialidade Subconjuntos diferenciados por tipo de empregado – Definição z Processo de identificação de subgrupos de entidades dentro de um conjunto de entidades – Processo de especialização pode ser recursivo – Um único conjunto de entidades pode ser especializado por mais de uma característica de diferenciação (especialização) m m genérica é como se estivéssemos criando um conjunto de entidades e a entidade especializada seria o subconjunto desse conjunto. Existem conjuntos de entidades compostos de subgrup CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 45 z No exemplo de Empregado em uma universidade – Especialização por tipo de empregado tipo de contrato z CLT z Serviços prestados rias especializações – Os subgrupos identificados em um processo de especialização podem participar de – Especialização por z Uma entidade deve pertencer às vá relacionamentos que não se aplicam a todas entidades do conjunto de entidades de origem Herança de propriedades Os subgrupos de entidades herdam todas as propriedades do conjunto de entidade de mais alto nível CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 46 No exemplo, em rofessores de uma universidade podemos ter a entidade Pessoas o atributos CPF, que seria atributo-chave, nome e endereço. Essa entidade pode con o pensamos especificamente nos alunos e, por outro lado, no r, mas ambas vêm da entidade P o atuante e Regi ização da entidade Pessoa z Podemos ter v : um sistema de controle de alunos e p , que tem com ter subconjuntos quand s professores. A entidade Aluno difere da entidade Professo ess as. Neste caso devemos definir atributos específicos ao Professor, como a área stro aluno ao Aluno. Especial ários níveis de especialização CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 47 stâncias de uma especialização In É_UM (IS-A, ou seja, é um(a), devido ao modo como nos referimos ao conceito. Dizemos que um CACHORRO é um MAMÍFERO Exemplo 1: CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 48 Exemplo 3: CLIENTE: NumeroCliente,NomeCliente, ValorDevido NTE INDIVIDUAL: Endereço, NumeroIdentidade CLIENTE ASSOCIADO: NumeroIdentidade, Endereço, NumeroIdentificaçãoTaxa CLIENTE CORPORAÇÃO: PessoaContato, Telefone, NumeroIdentificaçãoTaxa Exemplo 2: CLIE CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 49 ZAÇÃO Se olharmos a especialização de baixo para cima, falamos de uma generalização. Podemos dizer que a generalização é o processo inverso da especialização. Especialização é um processo top- down (cima para baixo), e generalização é um processo bottom-up (baixo para cima). As entidades que estão mais acima, ou seja, de alto nível, são agrupadas a partir de propriedades comuns de entidades que estão abaixo, ou seja, de níveis inferiores. GENERALI CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 50 ntidades de nível inferior também herdam participação em relacionamentos dos quais participam as entidades de nível superior. No exemplo anterior, as entidades Alunos e Professores herdam todos os atributos e relacionamentos da entidade Pessoa. A entidade Universitário herda os atributos e relacionamentos da entidade Professores e, consequentemente, também da entidade Pessoa. z Associada ao conceito de generalização / especialização está a idéia de herança de propriedades. z Herdar propriedades significa que cada ocorrência da entidade especializada possui, além de suas próprias propriedades (atributos, relacionamentos e generalizações/especializações), também as propriedades da ocorrência da entidade genérica correspondente. z A generalização / especialização pode ser classificada em dois tipo total e parcial, de acordo com a obrigatoriedade ou não de a cada ocorrência d entidade genérica corresponder uma ocorrência da entidade especializada. z Em uma generalização/especialização total, para cada ocorrência da entidade genérica existe sempre uma ocorrência em uma das entidades especializadas. HERANÇA Nesse processo, observamos que o modelo estendido também é composto pela herança, e esta, por sua vez, é uma característica resultante da especialização/generalização de entidades. Porém, ao mencionarmos herança, logo pensamos nas propriedades que são herdadas, mas quem herda o quê? A herança é de atributos e de relacionamentos, e quem recebe são as entidades de nível inferior. No entanto, é importante lembrar, que as e a s: a Indica que todo CLIENTE é ou PESSOA FÍSICA o u P E S S O A JURÍDICA A toda ocorrência d a e n t i d a d e C L I E N T E corresponde uma ocorrência em uma das especializações. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 51 z Em uma generalização/especialização parcial, nem toda ocorrência de entidade genérica z pode ser especializada em qualquer número de entidades, inclusive em uma possui uma ocorrência correspondente em uma entidade especializada. Uma entidade única. – Exemplo: se na figura anterior, apenas os motoristas possuíssem propriedades particulares, haveria apenas uma entidade especializada, a de motoristas. Usualmente, quando há especialização parcial, na entidade genérica, aparece u Indica que nem todo FUNCIONÁRIO é m atributo que identifica o tipo de ocorrência desta entidade. MOTORISTA ou SECRETÁRIA Cada ins s tância da e pode ciada a, no imo, uma stância de uma Uma instância da sup pode estar associada instância de cada um classes er-classe a até uma a das sub- superclas estar asso máx in sub-classe CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 52 z Todas as propriedades da superclasse são passadas por herança às suas subclasses z Identificador das subclasses é o mesmo identificador da classe genérica (embora as subclasses possam ter identificadores particulares adicionais) (atributos, relacionamentos, etc.) Detalhe de Notação: CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 53 z z Uma entidade especializa idade genérica em outra generalização/especialização. z e diversas entidad z Cada entidade especializada herda o identificador de sua entidade genérica, portanto, não faz sentido definir identificador para entidades especializadas. z Somente pode haver uma entidade genérica em cada hierarquia de especialização. Uma especialização não pode ter mais de uma generalização de um nível superior. Ex.: VEÍCULO ANFÍBIO Não há limite no número de níveis hierárquicos da generalização/especialização. da pode, por sua vez, ser ent É admissível a herança múltipla, isto é, uma mesma entidade seja especialização d es. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 54 z Os Atributos NOME, DATA ADMISSÃO, RG, são Atributos de FUNCIONÁRIOS. z O Atributo IDIOMAS, só é útil para SECRETÁRIAS. z Os Atributos HABILITAÇÃO, ACIDENTES são exclusivos dos MOTORISTAS z A entidade FUNCIONÁRIO pode ser particionada em: z Todos os FUNCIONÁRIOS estã z Somente os MOTOR o lotados num DEPARTAMENTO. ISTAS dirigem VEÍCULOS. z Apenas os ENGENHEIROS participam de PROJETOS. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 55 são classificados pelas suas funções/habilidades podendo ser técnicos, secretárias ou motoristas. z Estas classes de funcionários são mutuamente exclusivas e cada uma delas tem um conjunto de caracteríscas próprias além daquelas comuns a todas. z Somente funcionários classificados como motoristas podem dirigir veículos, técnicos podem atuar em projetos e secretárias não podem dirigir veículos e nem atuar em projetos. z Todo funcionário é de um departamento. z Funcionários podem ter dependentes. z Numa determinada organização os funcionários ENTIDADE ASSOCIATIVA AGREGAÇÃO E ASSOCIAÇÃO ação. A agregação é util faz ►Um relacionamento é uma associação entre entidades. Uma restrição do Modelo E-R é que não podemos expressar relacionamentos entre relacionamentos. Na prática, quando está construindo-se ou modificando um modelo ER, surgem situações em que é desejável permitir a associação de uma entidade a um relacionamento. Para finalizar o modelo estendido, temos de ver o conceito de agr re relacionamentos, o que não é possível eg izada quando temos de representar relacionamentos ent er diretamente em um modelo ER. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 56 CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 57 Abstração de agregação corresponde à idéia de que elementos de modelagem podem ser associados, formando outros “objetos” que representam essa associação.►O uso de agregação torna possível expressar “relacionamento entre relacionamentos”! A idéia da entidade associativa é tratar um relacionamento como se ele fosse uma entidade. Observe o modelo abaixo: Se desejarmos controlar os medicamentos receitados pelo médico em determinada consulta, temos que relacionar a entidade medicamento com o fato de ter havido uma consulta relacionamento consulta. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 58 CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 58 z Como não podemos fazer isso diretamente, indicamos que o relacionamento consulta é uma entidade associativa, através de um retângulo em volta do relacionamento. z Uma entidade associativa nada mais é que a redefinição de um relacionamento, que passa a ser tratado como se fosse também uma entidade. z Graficamente, basta adicionar um retângulo ao redor do próprio losango do relacionamento. z Caso não se deseje utilizar o conceito de entidade associativa, seria necessário transformar o relacionamento CONSULTA em uma entidade, que então poderia ser relacionada a MEDICAMENTO. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 59 Exemplo: Os alunos de determinado curso participam de um projeto, durante o qual eles têm um uadro de avaliações que contém a participação dia a dia, suas notas, horários e produções; um lu situ As dúvidas surgem nos relacionamentos: z No diagrama, há dois relacionamentos para associar as entidades Avaliações, Alunos e Projetos. As dúvidas surgem nos relacionamentos como mostra a figura a. z As avaliações pertencem a alunos e projetos quando os alunos estão trabalhando nos projetos, então, percebemos que o diagrama não nos informa com clareza o relacionamento existente, podendo trazer problemas futuros. figura a: Outra opção é mostrada na figura b, em que colocamos um relacionamento ternário, mas ainda incompleto, pois as avaliações ocorrem durante os projetos. Assim, esse diagrama pode ficar confuso. Neste caso devemos optar pela agregação. figura b: q a no pode ter várias avaliações, pois ele pode participar de vários projetos. Para representar essa ação no diagrama pensamos nas entidades: Alunos, Projetos e Avaliações. CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 60 te caso é possível mostrar que é preciso o relacionamento entre duas entidades para ter a avaliação necessária. A agregação possui uma restrição: ela só é possível quando temos uma z Para representar o relacionamento entre Projetos, Alunos e Avaliação, utilizamos a Para representar o relacionamento entre Clientes, Conta Corrente e Cartão Magnético, utilizamos a agregação: z Nes cardinalidade muitos para muitos (N:N). Se houver alguma restrição nesse conjunto de relacionamentos, ocorrendo uma cardinalidade muitos para um ou vice-versa, ou ainda um para um, concluímos que não é uma agregação. Como o próprio nome diz é uma junção de relacionamentos. agregação: CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 61 strutura de agregação outra representação: E ERIAL está no estoque: z Solução: Decompor MRP em 2 relacionamentos: 1) MATERIAIS - REQUISIÇÃO 2) PEDIDO e o relacionamento 1. z O relacionamento MRP não permite que uma REQUISIÇÃO seja atendida quando o MAT CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 62 Outro exemplo: utro e entrevistas resultem em EMPREGOS. O xemplo: z Considere agora que algumas CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 63 Uma solução: INCORRETO INCORRETO CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 64 z A outra solução é representar ENTREVISTA como um Tipo de Entidade-Fraca Outro exemplo: Exercícios: 1) Criar entidade associativa do modelo abaixo: CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 65 2) Considere a modelagem de dados em um banco BX. Clientes do BX estão relacionados a agência e conta. Esquemas Gráficos e Textuais z A descrição de um modelo é chamada de esquema de banco de dados. binar as duas formas de representar esquemas ER: a diagramática e a textual. z Normalmente são representadas de forma gráfica: – Entidades e Relacionamentos; – Generalização / Especialização. z Normalmente são representadas de forma textual, para não sobrecarregar o diagrama: – Atributos das entidades e dos relacionamentos, juntamente com seu tipo e tamanho; – Definição dos atributos identificadores. z Um esquema de BD pode ser tanto gráfico, como mostrado até o momento, quanto textual, como abaixo. z Na prática, é usual com CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 66 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. Podem-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 odelo ER. Exemplo: associar relacionamentos a outros relacionamentos. Erros semânticos ocorrem quando o modelo, apesar de obedecer as regras de construção de odelos ER (estar sintaticamente correto) reflete a realidade de forma inconsistente. xemplos de erros semânticos: stabelecer associações incorretas. m m E E 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. sar o número incorreto de entidades em um relacionamento U . Um exemplo é o de fundir em um único relacionamento ternário em dois relacionamentos inários independentes. odelos são equivalentes, quando expressam o mesmo, ou eja esmo esquem 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. b e maneira informal, diz-seque dois mD s , quando modelam a mesma realidade. Para fins de projeto de BD, dois modelos ER são equivalentes, quando ambos geram o a de BD. m CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 67 Relacionamento m:n versus uma entidade + 2 Relacionamentos 1:n. elacionamento m:n da agregação versus uma entidade + 2 Relacionamentos 1:n. R CURSO: SISTEMAS DE INFORMAÇÃO DISCIPLINA: MODELAGEM DE DAODS PROFESSORA: GELLARS TAVARES MODELAGEM DE DADOS – Professora Gellars Tavares – ano 2012 68 “Lançamento pagamento” e “dependentes” possuem outras informações (atributos) ainda não os registrar a cor de cada utomó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 Atributo multi-valorado versus uma entidade. • representadas no modelo. Indicativos para a escolha de construções de modelagem. Atributo versus entidade. Exemplo: em uma indústria de automóveis, como devem a a outros objetos tributos, relacionamentos, entidades genéricas ou especializadas), o objeto deve ser modelado omo entidade. xo durante toda a vida do istema ele pode ser modelado como atributo. Quando existem transações no sistema que alteram o conjunto de valores do objeto, o mesmo não deve ser modelado como atributo. 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 specialização da entidade empregado? Alguns critérios para esta decisão são: •Uma especialização deve ser usada quando se sabe 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. (a c •Quando o conjunto de valores de um determinado objeto é fi s e
Compartilhar