AN ADVANCED COURSE IN DATABASE SYSTEMS: BEYOND RELATIONAL DATABASES Chapter 1 Enhanced Entity Relationship Modeling Suzanne W. Dietrich and Susan D. Urban Arizona State University Revised: November, 2004 1
CAPÍTULO 1 Resumo O modelo Entidade-Relacionamento (ER) é freqüentemente usado para capturar o projeto conceitual de uma aplicação de banco de dados. Além de uma revisão do modelo ER, este capítulo apresenta: o Características avançadas do modelo Entidade-Relacionamento Estendido (EER) Generalização e especialização formando uma hierarquia de classes, Restrições de especialização para membros em subclasses e Categorização para definir entidades como união de tipos. O capítulo enfatiza os diferentes tipos de restrições que podem ser capturadas pelo modelo conceitual EER. Conhecimento assumido Fundamentos de modelagem Entidade-Relacionamento 2
SUMÁRIO Revisão do modelo Entidade-Relacionamento (ER). Modelo Entidade-Relacionamento Estendido (EER). o o Generalização e Especialização Categorias Sumário de restrições capturadas. 3
Modelagem Conceitual É o processo de desenvolver uma descrição semântica de uma empresa que deve ser capturada no projeto e implementação de uma aplicação de banco de dados. 4
MODELO ENTIDADE-RELACIONAMENTO (ER) 5
DIAGRAMA ER DE UM SHOPPING ONLINE 6
MÚLTIPLAS CHAVES CANDIDATAS 7
EXEMPLO DE ENTIDADE FRACA 8
CARDINALIDADES PARA RELACIONAMENTO N-ÁRIO A (Person, Bank) pair is related to n Cars. A (Car, Bank) pair is related to 1 Person. A (Car, Person) pair is related to 1 Bank. 9
RELACIONAMENTO BINÁRIO ALTERNATIVO 10
MODELO ER COM PAR (MIN, MAX) 11
RESUMO DE RESTRIÇÕES DO MODELO ER Classes Restrição de chave identificação única de entidades. Restrições estruturais em relacionamentos Restrições de Cardinalidade: 1:1, 1:N, M:N Restrições de Participação: Total vs. Parcial Restrições (Min,Max): 12
O MODELO ENTIDADE-RELACIONAMENTO ESTENDIDO (EER) O modelo EER estende o modelo ER com características avançadas de modelagem: Uma entidade é definida como uma classe. o Uma ocorrência específica de uma entidade é uma instância de uma classe. Classes podem ser formadas em uma hierarquia de superclass/subclass usando generalização e especialização. o o o O relacionamento ISA. Herança de atributos. Restrições sobre membros de subclasse. Categorias são usadas para representar união de classes. 13
GENERALIZAÇÃO vs. ESPECIALIZAÇÃO Generalização é o processo de ver diversos objetos diferentes em uma forma mais abstrata. o Generalização suprime as diferenças entre objetos e enfatiza suas similaridades. Especialização é o processo de ver um objeto de forma mais refinada, objeto especializado. o o Especialização é o oposto da generalização. Especialização enfatiza as diferenças entre os objetos. 14
GENERALIZAÇÃO E ESPECIALIZAÇÃO EM UM DIAGRAMA EER From Database Models, by S. Urban in Encyclopedia of Electrical and Electronics Engineering, John G. Webster (editor); copyright 1999 John G. Webster. This material is used by permission of John Wiley & Sons, Inc. 15
RESTRIÇÕES EM ESPECIALIZAÇÃO Disjoint Constraint Se a restrição de disjunção é especificada, as instâncias das subclasses de uma especialização devem ser disjuntas. Se a restrição de disjunção não for especificada, então as instâncias das subclasses podem ser sobrepostas (overlapping). 16
RESTRIÇÕES EM ESPECIALIZAÇÃO Completeness Constraint Especialização Total Toda instância de uma superclasse tem de ser uma instância de pelo menos uma de suas subclasses (também conhecido como restrição de cobertura). Especialização Parcial Uma instância de uma superclasse não necessita ser uma instância de suas subclasses. 17
EXEMPLO From Database Models, by S. Urban, in Encyclopedia of Electrical and Electronics Engineering, John G. Webster (editor); copyright 1999 John G. Webster. This material is used by permission of John Wiley & Sons, Inc. 18
RESTRIÇÕES SOB MEMBROS DE SUBCLASSES Uma especialização pode ser: Attribute-defined - Determina participação em uma subclasse por meio de uma condição sobre o valor de um agributo na superclasse. User-defined Participação em uma subclasse não depende de um valor específico. É determinado pelo usuário. 19
ESPECIALIZAÇÃO DEFINIDA POR ATRIBUTO From Database Models, by S. Urban, in Encyclopedia of Electrical and Electronics Engineering, John G. Webster (editor); copyright 1999 John G. Webster. This material is used by permission of John Wiley & Sons, Inc. 20
ESPECIALIZAÇÃO DEFINIDA PELO USUÁRIO 21
MULTIPLAS ESPECIALIZAÇÕES Attribute and User-Defined Specializations 22
MÚLTIPLA HERANÇA Em uma hierarquia de especialização, toda subclasse tem somente uma superclasse. Em uma especialização entrelaçada (lattice), uma subclasse pode ter mais de uma superclasse. o o o A subclasse é chamada de subclasse compartilhada. Uma especialização lattice demonstra múltipla herança. Uma subclasse compartilhada tem de satisfazer a restrição de interseção de múltipla herança, onde cada instância da subclasse compartilhada é uma instância de todas as suas superclasses. 23
MÚLTIPLA HERANÇA As superclasses de uma subclasse compartilhada devem ter um ancestral comum. Por exemplo, não faz sentido uma subclasse CatDog herdar as propriedades de Cat e Dog. Uma classe com múltiplas superclasses que não têm um ancestral comum pode ser modelada usando o construtor de Categoria. 24
EXEMPLO DE MÚLTIPLA HERANÇA StarModel = MovieStar Model From Database Models, by S. Urban, in Encyclopedia of Electrical and Electronics Engineering, John G. Webster (editor); copyright 1999 John G. Webster. This material is used by permission of John Wiley & Sons, Inc. 25
CATEGORIAS E CATEGORIZAÇÃO Uma categoria representa a união de suas superclasses, onde uma instância da subclasse categoria tem de ser instância de pelo menos uma superclasse, mas não é necessário ser membro de todas as superclasses. 26
RESTRIÇÕES SOB CATEGORIZAÇÃO Categorização Total Toda instância de uma superclasse tem de ser uma instância da categoria. Categorização Parcial Uma instância de uma superclasse não necessita ser uma instância da categoria. C = A B F (D E) 27
CATEGORIAS E CATEGORIZAÇÃO Categorização Parcial do Sponsor (Patrocinador) From Database Models, by S. Urban, in Encyclopedia of Electrical and Electronics Engineering, John G. Webster (editor); copyright 1999 John G. Webster. This material is used by permission of John Wiley & Sons, Inc. 28
DIAGRAMA ER DO BD HOLLYWOOD From Database Models, by S. Urban, in Encyclopedia of Electrical and Electronics Engineering, John G. Webster (editor); copyright 1999 John G. Webster. This material is used by permission of John Wiley & Sons, Inc. 29
TRADUÇÃO E ADAPTAÇÃO Prof. Jugurta Lisboa Filho Universidade Federal de Viçosa Departamento de Informática e-mail: jugurta@ufv.br From Database Models, by S. Urban, in Encyclopedia of Electrical and Electronics Engineering, John G. Webster (editor); copyright 1999 John G. Webster. This material is used by permission of John Wiley & Sons, Inc. 30