130 likes | 249 Views
Educação Profissional Técnica de NÃvel Médio em Informática. Modelo ER-Extendido. Marcelo Mendes. Manaus - 2012. Modelo ER-Extendido.
E N D
Educação Profissional Técnica de Nível Médio em Informática Modelo ER-Extendido Marcelo Mendes Manaus - 2012
Modelo ER-Extendido • Apesar de ser possível modelar a maioria dos bancos de dados com conceitos básicos do E-R, alguns aspectos de um banco de dados podem ser expressos de modo mais conveniente por meio de extensões do modelo básico. • O Modelo ER foi extendido para possibilitar a necessária abstração ao projetista do banco de dados em casos especiais.
Extensão do Modelo ER • Especialização • Generalização • Herança • Restrições • Agregação
Especialização/Generalização • Um conjunto de entidades pode conter subgrupos de entidades que são, de alguma forma, diferentes de outras entidades do conjunto. • Permite atribuir propriedades particulares a um subconjunto de ocorrências especializadas de uma entidade genérica.
Especialização/Generalização • Especialização – Processo de projetar os subgrupos dentro de um conjunto de entidades. • Ex.: Entidade Conta • Conta Poupança • Conta Corrente • Generalização – Especifica que diversas entidades que possuem atributos comuns podem ter esses atributos generalizados em uma entidade superior, superclasse ou entidade genérica. • Ex.: Conta Poupança e Conta Corrente • Conta
Especialização/Generalização Mais geral Mais específico Empregado Superclasse É um Técnico Secretária Gerente Engenheiro Subclasse
Especialização/Generalização • Herança de propriedades: • Cada ocorrência da entidade especializada, além das suas próprias propriedades, possui também as propriedades da ocorrência da entidade genérica correspondente Código Nome Filial Cliente É um CPF Sexo CNPJ Tipo de organização P.Juridica P.Física
Especialização/Generalização Através desse conceito podemos herdar atributos, relacionamentos, generalizações e especializações da entidade genérica, conforme abaixo.
Especialização/Generalização • Um conjunto de entidades pode conter subgrupos de entidades que são, de alguma forma, diferentes de outras entidades do conjunto • Tem-se atributos comuns e atributos diferentes • É feita uma hierarquia de conjuntos de entidades • São chamadas superclasses e subclasses • Especialização é um processo top-down • Generalização é um processo bottom-up • As subclasses podem participar de outros relacionamentos • Cada Especialização herda atributos e relacionamentos da Entidade da qual derivou
Especialização/Generalização • Não há limite no número de níveis hierárquicos da generalização/especialização. Na herança múltipla, cada entidade especializada herda os identificadores da entidade genérica. Exemplo: Veículo Terrestre Aquático Carro Anfíbio Barco
Restrições de Projeto • Restringe quais entidades podem ser membros de uma dada subclasse • definida por condição (ou definida por atributo) • definida pelo usuário • Restringe se entidades podem ou não pertencer a mais que uma subclasse dentro de uma mesma especialização/generalização • disjuntos (ou mutuamente exclusivos) • sobrepostos • restrição de totalidade – especifica se para cada entidade superclasse corresponde uma entidade subclasse • total • parcial
Restrições de Projeto • Regras • Excluir uma entidade (instância) de uma superclasse implica que ela é excluída de todas as subclasses às quais pertence. • Inserir uma entidade (instância) em uma superclasse implica que a entidade é obrigatoriamente inserida em todas as subclasses definidas por predicado (ou por atributo) para as quais a entidade satisfaz o predicado definidor. • Inserir uma entidade (instância) de uma especialização total implica que a entidade é obrigatoriamente inserida em pelo menos uma das subclasses da especialização.
Funcionário Alocado Projeto N N N Utiliza 1 Máquina Agregação • Uma das limitações do modelo ER é que ele não permite expressar relacionamentos entre relacionamentos • Considere que um funcionário só poderá usar uma máquina se ele estiver em um projeto