Modelagem Conceitual Anlise Conceitual Ana Carolina Salgado Fernando

  • Slides: 86
Download presentation
Modelagem Conceitual Análise Conceitual Ana Carolina Salgado Fernando Fonseca Valéria Times © CIn/UFPE

Modelagem Conceitual Análise Conceitual Ana Carolina Salgado Fernando Fonseca Valéria Times © CIn/UFPE

Modelagem n n n Dados Fatos Registrados de Fenômenos Sobre os Quais Obtemos Informações

Modelagem n n n Dados Fatos Registrados de Fenômenos Sobre os Quais Obtemos Informações do Mundo Real Informações Conhecimento que Pode Ser Inferido dos Dados Registro de Dados ëUm Meio de Comunicação Figura, Linguagem 12/18/2021 © CIn/UFPE 2

Modelagem Registro de Dados (Cont. ) ëUm Meio de Armazenamento Pedra, Papel, Bits n

Modelagem Registro de Dados (Cont. ) ëUm Meio de Armazenamento Pedra, Papel, Bits n Modelagem Transformar Aspectos do Mundo Real em um Modelo de Dados Formal n Genéricos Modelo de Dados 12/18/2021 © CIn/UFPE Específicos de 3 SGBD

Modelo de Dados n Componentes de um Modelo de Dados ëUma Coleção de Tipos

Modelo de Dados n Componentes de um Modelo de Dados ëUma Coleção de Tipos de Objetos Blocos Básicos de Construção de Modelos (Estruturas) Ex: Relações, Domínio (Modelo Relacional) 12/18/2021 © CIn/UFPE 4

Modelo de Dados n Componentes (Cont. ) ëUma Coleção de Operadores Meio de Manipular

Modelo de Dados n Componentes (Cont. ) ëUma Coleção de Operadores Meio de Manipular e Atualizar os Tipos de Objetos Ex: Álgebra Relacional ëUma Coleção de Regras de Integridade Restringem o Conjunto de Estados Válidos Tipos de Objetos Ex: Valores de Chave Primária Devem ser Únicos e Não Nulos 12/18/2021 © CIn/UFPE 5

Modelo de Dados n Estruturas Permitem representar Atributos Cujos Valores são Interpretações de Objetos

Modelo de Dados n Estruturas Permitem representar Atributos Cujos Valores são Interpretações de Objetos do Mundo Real e suas Propriedades Inteiro Idade 12/18/2021 Número de Dependentes © CIn/UFPE Domínio Número de Veículos 6

Modelo de Dados n Operações ëEspecificam uma Ação - O Que é Para Ser

Modelo de Dados n Operações ëEspecificam uma Ação - O Que é Para Ser Feito óAcessar óInserir óRemover óAtualizar 12/18/2021 Seleção © CIn/UFPE Acessar Dados e Armazená-los em Memória Principal 7

Modelo de Dados Operações (Cont. ) Transformam um Estado de BD em Outro Estado

Modelo de Dados Operações (Cont. ) Transformam um Estado de BD em Outro Estado Preservando Propriedades do Esquema do BD e do Modelo de Dados 12/18/2021 © CIn/UFPE 8

Modelo de Dados n Restrições ëRazões Semânticas Permitem que os Esquemas Reflitam mais Precisamente

Modelo de Dados n Restrições ëRazões Semânticas Permitem que os Esquemas Reflitam mais Precisamente as Situações do Mundo Real ë De Integridade Permitem que os SGBD Restrinjam os Estados Possíveis do BD àqueles que Respondem às Restrições 12/18/2021 © CIn/UFPE 9

Modelo de Dados ëTipos Básicos óInerentes Parte Integral das Estruturas do Modelo Ex: Conjuntos

Modelo de Dados ëTipos Básicos óInerentes Parte Integral das Estruturas do Modelo Ex: Conjuntos e Relações (Ausência de Duplicidade e Ordem) 12/18/2021 © CIn/UFPE 10

Modelo de Dados ëTipos Básicos (Cont. ) óExplícitas ãEstática: Expressam Regras para Determinar Estados

Modelo de Dados ëTipos Básicos (Cont. ) óExplícitas ãEstática: Expressam Regras para Determinar Estados Válidos do BD ãDinâmicas: Especificam que Transições de Estados são Permitidos (Dirigidas a Operações) 12/18/2021 © CIn/UFPE 11

Modelagem Conceitual n Análise Conceitual ëDeterminar os recursos de dados fundamentais de uma organização

Modelagem Conceitual n Análise Conceitual ëDeterminar os recursos de dados fundamentais de uma organização através da catalogação dos dados existentes em termos de entidades e relacionamentos ëPermitir um projeto de uma estrutura de arquivos capaz de dar apoio a diversas aplicações relacionadas 12/18/2021 © CIn/UFPE 12

Modelagem Conceitual n Análise Conceitual (Cont. ) ëAuxiliar o desenvolvimento ou conversão de aplicações

Modelagem Conceitual n Análise Conceitual (Cont. ) ëAuxiliar o desenvolvimento ou conversão de aplicações ë Formar uma base para a o controle de dados, segurança e auditoria ëEstabelecer as bases de todos os fatos relevantes à organização de dados ëFacilitar a integração das diversas divisões de uma organização pela indicação dos dados que lhe são comuns 12/18/2021 © CIn/UFPE 13

Modelagem Conceitual n Análise Conceitual (Cont. ) ëDeterminar uma base para avaliação de SGBDs

Modelagem Conceitual n Análise Conceitual (Cont. ) ëDeterminar uma base para avaliação de SGBDs 12/18/2021 © CIn/UFPE 14

Modelagem Conceitual n Ciclo de Desenvolvimento de Sistemas de BD Investigação dos Dados Modelagem

Modelagem Conceitual n Ciclo de Desenvolvimento de Sistemas de BD Investigação dos Dados Modelagem dos Dados Projeto do Banco de Dados Implementação do Banco de Dados Monitoramento e Manutenção do BD 12/18/2021 © CIn/UFPE 15

Modelo E/R n Modelo Entidade - Relacionamento (E/R) ëEntidade Representação Abstrata dos Objetos do

Modelo E/R n Modelo Entidade - Relacionamento (E/R) ëEntidade Representação Abstrata dos Objetos do Mundo Real - algo sobre que dados são armazenados (um Ser, um Fato) 12/18/2021 © CIn/UFPE 16

Modelo E/R ëEntidade (Cont. ) Ex: Funcionário, Departamento ëConjunto de Entidades Grupos de Entidades

Modelo E/R ëEntidade (Cont. ) Ex: Funcionário, Departamento ëConjunto de Entidades Grupos de Entidades com Características Similares Corresponde aos Substantivos 12/18/2021 © CIn/UFPE 17

Modelo E/R ëRelacionamento Associação entre Objetos dos Sistema Ex: Emprega (Departamento X Funcionário) ëConjunto

Modelo E/R ëRelacionamento Associação entre Objetos dos Sistema Ex: Emprega (Departamento X Funcionário) ëConjunto de Relacionamentos Grupo de Relacionamentos do Mesmo Tipo Ex: Departamento D 1 EMPREGA o Funcionário F 3 12/18/2021 Corresponde aos Verbos © CIn/UFPE 18

Modelo E/R ëAtributos Toda Propriedade de uma Entidade ou Relacionamento Ex: Nome, Endereço e

Modelo E/R ëAtributos Toda Propriedade de uma Entidade ou Relacionamento Ex: Nome, Endereço e Salário são Propriedades de FUNCIONÁRIO óChave - Atributo(s) Determinante(s) Conjunto de Atributos que Determina Unicamente uma Ocorrência de uma Entidade 12/18/2021 © CIn/UFPE 19

Modelo E/R ëAtributos Ex: CÓDIGO MATRÍCULA Disciplina Funcionário Atributos Correspondem aos Complementos 12/18/2021 ©

Modelo E/R ëAtributos Ex: CÓDIGO MATRÍCULA Disciplina Funcionário Atributos Correspondem aos Complementos 12/18/2021 © CIn/UFPE 20

Modelo E/R n Conceitos Adicionais ëAtributos Multivalorados ëCardinalidade ëAuto-Relacionamento ëExistência ãRelacionamento Total ou Obrigatório

Modelo E/R n Conceitos Adicionais ëAtributos Multivalorados ëCardinalidade ëAuto-Relacionamento ëExistência ãRelacionamento Total ou Obrigatório ãRelacionamento Parcial ou Opcional ãRelacionamento Híbrido (Contigencial) ëRelacionamento Relevante X Redundante ëRelacionamento Exclusivo 12/18/2021 © CIn/UFPE 21

Modelo E/R n Diagrama E/R Conjunto de Entidades nome 1 R 1 E 1

Modelo E/R n Diagrama E/R Conjunto de Entidades nome 1 R 1 E 1 Conjunto de Relacionamentos nome 2 E 2 12/18/2021 © CIn/UFPE 22

Modelo E/R n Diagrama E/R E 1 nome 1 Papel E 2 12/18/2021 ©

Modelo E/R n Diagrama E/R E 1 nome 1 Papel E 2 12/18/2021 © CIn/UFPE nome 2 23

Modelo E/R n Diagrama E/R ëExemplo de papéis em relacionamentos É Supervisionado Empregado Supervisiona

Modelo E/R n Diagrama E/R ëExemplo de papéis em relacionamentos É Supervisionado Empregado Supervisiona Empregado 12/18/2021 Reúne Trabalha-no © CIn/UFPE n Supervisão 1 Departamento 24

Modelo E/R n Mais de um relacionamento envolvendo as mesmas entidades n Leciona m

Modelo E/R n Mais de um relacionamento envolvendo as mesmas entidades n Leciona m Professor Disciplina 1 12/18/2021 Coordena © CIn/UFPE 1 25

Modelo E/R n Um Relacionamento pode ser N-ário Agência 1 Cliente 12/18/2021 m CCA

Modelo E/R n Um Relacionamento pode ser N-ário Agência 1 Cliente 12/18/2021 m CCA © CIn/UFPE n Conta 26

Modelo E/R n Relacionamento fraco ëRestrição de existência Hospital Entidade Forte Tem Relacionamento Fraco

Modelo E/R n Relacionamento fraco ëRestrição de existência Hospital Entidade Forte Tem Relacionamento Fraco Ambulatório 12/18/2021 © CIn/UFPE Entidade Fraca 27

Modelo E/R n Dependência de identidade ëEntidade Não Pode ser Identificada Através de seus

Modelo E/R n Dependência de identidade ëEntidade Não Pode ser Identificada Através de seus Próprios Atributos Hospital atributo 1 atributo 2. . . atributo n 12/18/2021 Ambulatório atributo 1 atributo x. . . atributo k © CIn/UFPE 28

Modelo E/R n Diagrama E/R Conjunto de Atributos E 1 atributo 2. . .

Modelo E/R n Diagrama E/R Conjunto de Atributos E 1 atributo 2. . . atributo n 12/18/2021 © CIn/UFPE at 1 at 2 E 1 at 3 29

Modelo E/R n Tipos de Atributos Possíveis ë Compostos / Simples óCompostos: Podem ser

Modelo E/R n Tipos de Atributos Possíveis ë Compostos / Simples óCompostos: Podem ser divididos em partes menores óSimples/Atômicos: Não se subdividem ë Uni / Multi-Valorados óUni-Valorados: Têm um único valor óMulti-Valorados: Têm um conjunto de valores ë Armazenados / Derivados óArmazenados: Explicitamente registrados óDerivados: Obtidos a partir de um cálculo e de outro(s) atributo(s) relacionados(s) ë Com Valores Nulos ë Complexos 12/18/2021 © CIn/UFPE 30

Modelo E/R n Diagrama E/R Conjunto de Atributos Multivalorados © CIn/UFPE at 2 E

Modelo E/R n Diagrama E/R Conjunto de Atributos Multivalorados © CIn/UFPE at 2 E 1 Ek atributo 1 atributo 2 E 1 atributo 1. . . atributo n 12/18/2021 at 3 31

Modelo E/R n Diagrama E/R ëCardinalidade Número de Entidades ao Qual Outra Entidade pode

Modelo E/R n Diagrama E/R ëCardinalidade Número de Entidades ao Qual Outra Entidade pode Estar Associada via Relacionamento óUm - para - Um 12/18/2021 A © CIn/UFPE B 32

Modelo E/R n Cardinalidade de Relacionamento ëUm - para - Um E 1 1

Modelo E/R n Cardinalidade de Relacionamento ëUm - para - Um E 1 1 R 1 E 1 1 E 2 12/18/2021 © CIn/UFPE E 2 33

Modelo E/R F Cardinalidade de Relacionamentos ë Um - para - Muitos A 12/18/2021

Modelo E/R F Cardinalidade de Relacionamentos ë Um - para - Muitos A 12/18/2021 B © CIn/UFPE 34

Modelo E/R F Cardinalidade de Relacionamento ë Um - para - Muitos E 1

Modelo E/R F Cardinalidade de Relacionamento ë Um - para - Muitos E 1 1 R 1 E 1 n E 2 12/18/2021 © CIn/UFPE E 2 35

Modelo E/R F Cardinalidade de Relacionamentos ë Muitos - para - Muitos A 12/18/2021

Modelo E/R F Cardinalidade de Relacionamentos ë Muitos - para - Muitos A 12/18/2021 B © CIn/UFPE 36

Modelo E/R F Cardinalidade de Relacionamento ë Muitos - para - Muitos E 1

Modelo E/R F Cardinalidade de Relacionamento ë Muitos - para - Muitos E 1 m R 1 E 1 n E 2 12/18/2021 © CIn/UFPE E 2 37

Modelo E/R n Diagrama E/R ëAuto-relacionamento E 1 n R 1 E 1 1

Modelo E/R n Diagrama E/R ëAuto-relacionamento E 1 n R 1 E 1 1 12/18/2021 © CIn/UFPE 38

Modelo E/R n Diagrama E/R ëRelacionamento Total ou Obrigatório E 1 R 1 E

Modelo E/R n Diagrama E/R ëRelacionamento Total ou Obrigatório E 1 R 1 E 2 12/18/2021 E 2 © CIn/UFPE 39

Modelo E/R n Diagrama E/R ëRelacionamento Parcial ou Opcional E 1 R 1 E

Modelo E/R n Diagrama E/R ëRelacionamento Parcial ou Opcional E 1 R 1 E 2 12/18/2021 © CIn/UFPE E 2 40

Modelo E/R n Diagrama E/R ëRelacionamento Híbrido (Contingencial) E 1 R 1 E 2

Modelo E/R n Diagrama E/R ëRelacionamento Híbrido (Contingencial) E 1 R 1 E 2 12/18/2021 © CIn/UFPE E 2 41

Modelo E/R n Relacionamento Relevante X Redundante ëNecessita compreensão detalhada do ambiente 1 R

Modelo E/R n Relacionamento Relevante X Redundante ëNecessita compreensão detalhada do ambiente 1 R 1 Entrega ao 1 Cliente 1 Recebe n R 4 n Faz R 3 n Entrega R 2 Tem 1 n 12/18/2021 Pedido © CIn/UFPE 42

Modelo E/R n Relacionamento Relevante X Redundante ëTestar se um relacionamento realmente existe 1

Modelo E/R n Relacionamento Relevante X Redundante ëTestar se um relacionamento realmente existe 1 Lota R 1 Depto 1 n n R 3 Tem Func R 2 Trabalha 1 n 12/18/2021 Sala © CIn/UFPE 43

Modelo E/R n Determinação da existência de relacionamento ëSe um atributo puder descrever mais

Modelo E/R n Determinação da existência de relacionamento ëSe um atributo puder descrever mais de um tipo de entidade, é bem provável que se torne relacionamento ëConsiderar tipos diferentes de entidades e determinar se alguma questão significativa pode ser feita ligando os dois 12/18/2021 © CIn/UFPE 44

Modelo E/R n Determinação de existência (Cont. ) ëDeterminar se o relacionamento é relevante

Modelo E/R n Determinação de existência (Cont. ) ëDeterminar se o relacionamento é relevante ëAtributo de um tipo de entidade tratado como um segundo tipo de entidade relacionado ao primeiro óO próprio atributo tem atributos relevantes adicionais óO segundo tipo de entidade é por si mesmo relevante 12/18/2021 © CIn/UFPE 45

Modelo E/R ëAtributo como outra entidade (Cont. ) óO atributo identifica de fato o

Modelo E/R ëAtributo como outra entidade (Cont. ) óO atributo identifica de fato o segundo tipo de entidade óEntidades do segundo tipo podem se relacionar com várias ocorrências do primeiro tipo óOutras entidades são vistas relacionadas com entidades do segundo tipo 12/18/2021 © CIn/UFPE 46

Modelo E/R n Relacionamentos exclusivos ëOcorrência e um tipo de entidade só pode participar

Modelo E/R n Relacionamentos exclusivos ëOcorrência e um tipo de entidade só pode participar de um relacionamento Pode armazenar Depósito Pode armazenar Deve ser armazenada Produto Matéria Acabado Prima 12/18/2021 © CIn/UFPE 47

Modelo E/R n Relacionamentos entre subtipos ëTratar um tipo de entidade como mais de

Modelo E/R n Relacionamentos entre subtipos ëTratar um tipo de entidade como mais de um tipo óExistirem diferenças significativas entre seus atributos óTiverem diferentes meios de identificação óParticiparem em relacionamentos de tipos diferentes 12/18/2021 © CIn/UFPE 48

Modelo E/R ëEntidade como mais de um tipo (Cont. ) óHierarquia de Relacionamentos É-UM:

Modelo E/R ëEntidade como mais de um tipo (Cont. ) óHierarquia de Relacionamentos É-UM: Contribui para a Modularidade, permitindo que Atributos Comuns de Entidades Similares possam ser Representados em um Único Lugar de um Diagrama E/R 12/18/2021 © CIn/UFPE 49

Modelo E/R Relacionamentos entre subtipos (Cont. ) ëGeneralização e especialização Saldo Número Conta n

Modelo E/R Relacionamentos entre subtipos (Cont. ) ëGeneralização e especialização Saldo Número Conta n Limite Juros É UMA Conta Poupança 12/18/2021 Conta-Corrente © CIn/UFPE 50

Modelo E/R n Relacionamentos entre subtipos (Cont. ) Pessoa Candidato Funcionário Gerente 12/18/2021 Pensionista

Modelo E/R n Relacionamentos entre subtipos (Cont. ) Pessoa Candidato Funcionário Gerente 12/18/2021 Pensionista Operário © CIn/UFPE 51

Modelo E/R n Conceito do Mundo Real é Mais Bem Representado por um Conjunto

Modelo E/R n Conceito do Mundo Real é Mais Bem Representado por um Conjunto de Entidades ou Conjunto de Relacionamentos CPF Nome Número Agência Cliente m 12/18/2021 Nome Número© Conta n CIn/UFPE Saldo 52

Modelo E/R n Uso de um Relacionamento Ternário Versus um par de Relacionamentos Binários

Modelo E/R n Uso de um Relacionamento Ternário Versus um par de Relacionamentos Binários Ex. : Um Empreendimento Bancário onde um Cliente pode ter diversas Contas, cada uma localizada em uma Agência Específica e uma Conta pode pertencer a mais de um Cliente 12/18/2021 © CIn/UFPE 53

Modelo E/R Agência 1 Cliente M N CCA Conta Relacionamento Ternário 12/18/2021 © CIn/UFPE

Modelo E/R Agência 1 Cliente M N CCA Conta Relacionamento Ternário 12/18/2021 © CIn/UFPE 54

Modelo E/R Agência 1 CA N Cliente Conta N Relacionamentos 12/18/2021 Binários CC ©

Modelo E/R Agência 1 CA N Cliente Conta N Relacionamentos 12/18/2021 Binários CC © CIn/UFPE M 55

Modelo E/R n Uso de Um Atributo ou Um Conjunto de Entidades ë Distinção

Modelo E/R n Uso de Um Atributo ou Um Conjunto de Entidades ë Distinção depende da Estrutura da Empresa que está sendo Modelada e da Semântica associada ao Atributo em Questão 12/18/2021 © CIn/UFPE 56

Modelo E/R Nome Telefone Funcionário 12/18/2021 M N Funtel © CIn/UFPE Telefone 57

Modelo E/R Nome Telefone Funcionário 12/18/2021 M N Funtel © CIn/UFPE Telefone 57

Modelo E/R n Agregação ëAgrupar uma parte de um Diagrama E/R em um Único

Modelo E/R n Agregação ëAgrupar uma parte de um Diagrama E/R em um Único Conjunto-Entidade Horas Nome Funcionário m Trab n m Usa n 12/18/2021 © CIn/UFPE Cod Descrição Projeto Id Equipamento 58

Modelo E/R n Problemas de Conexão ëOcorrem normalmente devido a interpretação incorreta do significado

Modelo E/R n Problemas de Conexão ëOcorrem normalmente devido a interpretação incorreta do significado de certos relacionamentos ëTipos óAmbigüidade de Informação (Fan Trap) óAusência de Informação (Chasm Trap) 12/18/2021 © CIn/UFPE 59

Modelo E/R n Ambigüidade de Informação (Fan Trap) ëOcorre quando um relacionamento entre tipos

Modelo E/R n Ambigüidade de Informação (Fan Trap) ëOcorre quando um relacionamento entre tipos de entidades é modelado, mas a ligação entre certas ocorrências de entidade é ambígüa. ëOcorre quando 2 ou mais tipos de relacionamentos (1: N) partem de um mesmo tipo de entidade. ëExemplo: Func 12/18/2021 N Tem 1 Setor © CIn/UFPE 1 Opera N Agência 60

Modelo E/R ëExemplo (Cont. ): Ambigüidade Funcionário Tem R 1 F 1 Setor S

Modelo E/R ëExemplo (Cont. ): Ambigüidade Funcionário Tem R 1 F 1 Setor S 1 R 2 F 2 R 3 F 3 S 2 Opera Agência R 4 A 1 R 5 A 2 R 6 A 3 ëEm qual agência o funcionário F 1 trabalha? ëF 1 trabalha na agência A 1 ou A 2 ëModelo ER precisa ser reestruturado para representar relacionamentos corretos entre as entidades. 12/18/2021 © CIn/UFPE 61

Modelo E/R ëSolução: Modelo ER re-estruturado para resolver a ambigüidade Setor S 1 S

Modelo E/R ëSolução: Modelo ER re-estruturado para resolver a ambigüidade Setor S 1 S 2 1 Opera N Agência 1 Tem N Funcionário R 1 A 1 R 4 F 1 R 2 A 2 R 5 F 2 R 3 A 3 R 6 F 3 F 1 trabalha na agência A 1 que interage com S 1 12/18/2021 © CIn/UFPE 62

Modelo E/R n Ausência de Informação (Chasm Trap) ëOcorre quando o modelo sugere a

Modelo E/R n Ausência de Informação (Chasm Trap) ëOcorre quando o modelo sugere a existência de um relacionamento entre tipos de entidades, mas a ligação não existe entre certas entidades individuais. ëOcorre quando existe(m) 1 ou (mais) relacionamento(s) com restrição de participação parcial entre entidades. ëExemplo: Agência 12/18/2021 1 Tem N Func © CIn/UFPE 1 Vende N Imóvel 63

Modelo E/R ëExemplo (Cont. ): Ausência de Informação Agência Tem A 1 R 1

Modelo E/R ëExemplo (Cont. ): Ausência de Informação Agência Tem A 1 R 1 A 2 R 2 A 3 R 3 Funcionário F 1 Vende R 4 I 1 I 2 F 3 Imóvel R 5 I 3 ëQuais os imóveis disponíveis em cada agência? Em qual agência, o móvel I 2 está? ëPerda de Informação: cada imóvel deve estar disponível em uma agência. ëModelo ER precisa ser reestruturado para representar o relacionamento ausente. 12/18/2021 © CIn/UFPE 64

Modelo E/R ëSolução: Modelo ER re-estruturado para resolver a ausência de informação Agência 1

Modelo E/R ëSolução: Modelo ER re-estruturado para resolver a ausência de informação Agência 1 Tem N Func 1 Vende N Imóvel N 1 Possui 12/18/2021 © CIn/UFPE 65

Modelo E/R ëSolução (Cont. ): Agência Tem A 1 R 1 A 2 R

Modelo E/R ëSolução (Cont. ): Agência Tem A 1 R 1 A 2 R 2 A 3 R 3 Funcionário F 1 F 2 F 3 Vende R 4 Imóvel I 1 I 2 R 5 I 3 Possui R 6 R 7 R 8 12/18/2021 © CIn/UFPE 66

Modelo E/R n Resumo do Projeto Conceitual ëProjeto Conceitual segue Análise de Requisitos óFornece

Modelo E/R n Resumo do Projeto Conceitual ëProjeto Conceitual segue Análise de Requisitos óFornece descrição de alto nível dos dados armazenados ëModelo ER é popular para criação do projeto conceitual de BD óConstruções são expressivas, próximas da intuição sobre aplicações ëConstrutores básicos: entidades, relacionamentos e atributos. 12/18/2021 © CIn/UFPE 67

Modelo E/R n Resumo (Cont. ) ëAlguns construtores adicionais: entidades fracas, hierarquias ISA e

Modelo E/R n Resumo (Cont. ) ëAlguns construtores adicionais: entidades fracas, hierarquias ISA e agregação. ëVários tipos de restrições de integridade podem ser expressas no ER. ëProjeto ER é subjetivo. A análise de alternativas pode ser delicada, especialmente para grandes cenários. 12/18/2021 © CIn/UFPE 68

Modelo E/R n Resumo (Cont. ) ëAlternativas podem incluir: óEntidade vs. Atributo óEntidade vs.

Modelo E/R n Resumo (Cont. ) ëAlternativas podem incluir: óEntidade vs. Atributo óEntidade vs. Relacionamento óRelacionamento binário ou ternário óQuando usar hierarquias ISA óQuando usar agregação ëNota: Há muitas variações do modelo ER. 12/18/2021 © CIn/UFPE 69

Um Exemplo n Exemplo: Um Sistema Único de Saúde Ideal ëHospitais são formados por

Um Exemplo n Exemplo: Um Sistema Único de Saúde Ideal ëHospitais são formados por um ou mais Ambulatórios e cada um destes está em um único Hospital ëMédicos clinicam em um único Hospital, cada um deles agregando vários Médicos 12/18/2021 © CIn/UFPE 70

Um Exemplo ëHospitais solicitam exames clínicos em vários Laboratórios, cada um destes pode ter

Um Exemplo ëHospitais solicitam exames clínicos em vários Laboratórios, cada um destes pode ter solicitações de vários Hospitais ëPacientes consultam vários Médicos, e estes são consultados por vários Pacientes 12/18/2021 © CIn/UFPE 71

Um Exemplo ëAmbulatórios atendem vários Pacientes, enquanto estes só podem ser atendidos em um

Um Exemplo ëAmbulatórios atendem vários Pacientes, enquanto estes só podem ser atendidos em um único Ambulatório ëPessoal de apoio está alocado a cada Ambulatório, e cada um destes conta com vários integrantes do Pessoal de apoio 12/18/2021 © CIn/UFPE 72

Um Exemplo ëPacientes realizam vários Exames, e cada Exame é realizado por um único

Um Exemplo ëPacientes realizam vários Exames, e cada Exame é realizado por um único Paciente ëLaboratórios fazem vários Exames, e cada um dos Exames é feito em um único Laboratório ëCada Paciente pode receber vários Diagnósticos, e cada Diagnóstico é de um único Paciente 12/18/2021 © CIn/UFPE 73

Um Exemplo Hospital 1 M 1 Formado N Aloca Solicita N Ambulatório 1 Clinica

Um Exemplo Hospital 1 M 1 Formado N Aloca Solicita N Ambulatório 1 Clinica N Médico Laboratório M 1 1 Consulta Atende N Faz N Pessoal N Realiza Paciente 1 12/18/2021 N 1 Recebe © CIn/UFPE N N Diagnóstico Exame 74

Outro Exemplo n n Considere uma aplicação de BD para um aeroporto privado e

Outro Exemplo n n Considere uma aplicação de BD para um aeroporto privado e de pequeno porte que visa manter informações sobre aviões, proprietários dos aviões, empregados do aeroporto e pilotos. Da análise de requisitos feita para esta aplicação, as seguintes informações foram coletadas: 12/18/2021 © CIn/UFPE 75

Outro Exemplo n Cada avião tem um número de registro, é de um tipo

Outro Exemplo n Cada avião tem um número de registro, é de um tipo de avião específico e é armazenado em um hangar particular. Cada tipo de avião tem um número de modelo, uma capacidade e um peso. Cada hangar tem um número, uma capacidade de armazenamento e uma localização. n O BD também deve manter informações sobre os proprietários de cada avião e sobre os empregados que realizam manutenção no mesmo. Cada avião pode pertencer a um grupo de empresas, enquanto que cada empresa pode ter mais de um avião. Além disso, deseja-se guardar a data de aquisição do mesmo pelas empresas proprietárias. Cada uma destas empresas é caracterizada pelo CNPJ, nome, endereço e telefone. 12/18/2021 © CIn/UFPE 76

Outro Exemplo n Cada empregado pode realizar vários serviços de manutenção, os quais podem

Outro Exemplo n Cada empregado pode realizar vários serviços de manutenção, os quais podem ser feitos por vários empregados. Um avião pode passar por vários serviços de manutenção e cada um destes serviços é caracterizado pela data da manutenção, número de horas trabalhadas, tipo do serviço feito e finalmente, o número do avião é também usado na identificação de cada serviço. n Tanto o Piloto quanto o Empregado são subtipos de Pessoa. Cada piloto tem atributos específicos, como o número da licença e o conjunto de restrições de vôo. Cada empregado tem atributos próprios, como salário, função e data de início no emprego. Todas as pessoas no BD têm um CPF , nome, endereço e telefone. 12/18/2021 © CIn/UFPE 77

Outro Exemplo n O BD também mantém informações sobre os aviões que cada piloto

Outro Exemplo n O BD também mantém informações sobre os aviões que cada piloto pilota e os tipos de aviões que cada empregado pode realizar manutenção. Cada avião pode ser pilotado por vários pilotos e cada piloto pode pilotar vários aviões. Sempre que um vôo é (ou está para ser) realizado, comunicações são feitas com várias torres de comando. Cada torre de comando possui um código e uma localização. n Cada empregado pode trabalhar na manutenção de vários tipos de avião e cada modelo de avião pode precisar de vários empregados trabalhando na sua manutenção. 12/18/2021 © CIn/UFPE 78

Tipo Horas Data Salário Faz M Empregado Número N É 1 Recebe Aeronave N

Tipo Horas Data Salário Faz M Empregado Número N É 1 Recebe Aeronave N Tem Modelo_Av Pilota N Piloto M N N 1 N Licença Restri Pertence Data Pessoa M Número Guarda Peso Capacid Função M N Serviço N Data_In Trabalha Comunica Empresa 1 Hangar CPF Fone M CNPJ Endere Nome Torre_Com Nome Num 12/18/2021 Local Capacid© CIn/UFPE Código Local End Fone 79

Exercício n n Deseja-se guardar dados sobre empregados, departamentos e projetos de uma companhia

Exercício n n Deseja-se guardar dados sobre empregados, departamentos e projetos de uma companhia Suponha que, depois da fase de análise de requisitos, os projetistas chegaram à seguinte descrição do “mini-mundo”, ou seja, a parte da companhia a ser representada no banco de dados: 12/18/2021 © CIn/UFPE 80

Exercício n n A companhia é organizada em departamentos e cada depto tem um

Exercício n n A companhia é organizada em departamentos e cada depto tem um nome, um número e um empregado que o gerencia. Deseja-se guardar a data na qual o empregado começou a gerenciar o depto. Um departamento pode estar em vários locais. Um depto controla um número de projetos, os quais possuem número, nome e um único local. Um empregado é caracterizado por um cadastro, nome, sexo e salário. Ele está associado a um depto mas pode trabalhar em vários projetos que não necessariamente são controlados pelo mesmo depto. Deseja-se guardar o número de horas que um empregado trabalha em um projeto e o supervisor direto de cada empregado. Cada empregado possui dependentes caracterizados por nome, data de nascimento e grau de parentesco. 12/18/2021 © CIn/UFPE 81

Sexo Salário Número Nome Trabalha para N Cad Nome 1 Locais Departamento Empregado Data-Ini

Sexo Salário Número Nome Trabalha para N Cad Nome 1 Locais Departamento Empregado Data-Ini 1 1 Gerencia 1 1 1 Supervisão N M Dependentes de Trabalha em Controla N N N Horas Projeto Local Dependentes Número 12/18/2021 Nome Data-nasc Nome Grau-P © CIn/UFPE 82

Outro Exercício n Considere o seguinte sistema de gerenciamento imobiliário simplificado, que visa manter

Outro Exercício n Considere o seguinte sistema de gerenciamento imobiliário simplificado, que visa manter informações sobre clientes, proprietários dos imóveis, contratos de aluguel, funcionários e agências: 12/18/2021 © CIn/UFPE 83

Outro Exercício n Cada cliente possui CPF, nome, endereço e uma lista de telefones

Outro Exercício n Cada cliente possui CPF, nome, endereço e uma lista de telefones para contato. Cada cliente é atendido por um único funcionário, o qual é caracterizado pelo número da carteira profissional, nome, endereço, telefone, função e salário. Cada funcionário possui um único supervisor e trabalha em uma única agência. Cada agência tem um código, uma descrição e um funcionário que a gerencia. Deseja-se guardar a data na qual o funcionário começou a gerenciar a agência. Além disso, cada gerente pode gerenciar apenas uma única agência. 12/18/2021 © CIn/UFPE 84

Outro Exercício Um cliente tem uma ou mais preferências por um ou mais tipos

Outro Exercício Um cliente tem uma ou mais preferências por um ou mais tipos de imóveis, onde cada preferência é caracterizada pelo código do cliente, tipo e valor máximo de aluguel. n Um cliente pode estar associado a vários contratos de aluguel, os quais possuem número, período e valor. Mas, cada contrato refere-se a um único cliente. n Cada contrato diz respeito a um único imóvel, o qual possui um código, localização, tipo e valor solicitado pelo proprietário. Além disso, cada imóvel possui um único proprietário que tem CPF, nome e©telefones. 12/18/2021 CIn/UFPE 85 n

Outro Exercício n Um imóvel disponível para negociação pode ser divulgado em vários jornais,

Outro Exercício n Um imóvel disponível para negociação pode ser divulgado em vários jornais, os quais possuem um código e um nome. Deseja-se guardar a data e o custo da divulgação de cada imóvel feito por cada jornal. 12/18/2021 © CIn/UFPE 86