Upload
phamtruc
View
230
Download
1
Embed Size (px)
Citation preview
1Modelagem Conceitual e
Modelo ER
Gerenciamento de Dados e Informação
Fernando Fonseca&
Robson Fidalgo
Modelagem Conceitual e o ModeloEntidade-Relacionamento
2Modelagem Conceitual e
Modelo ER
Modelagem
Transformar aspectos do mundo real em um modelo de dados formal
Modelo de DadosGenéricos
Específicos de SGBD
Modelagem Conceitual
Modelagem Lógica
3Modelagem Conceitual e
Modelo ER
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)Uma coleção de operações
Meio de manipular e atualizar os tipos de objetos
Ex: Álgebra Relacional (Modelo Relacional)
4Modelagem Conceitual e
Modelo ER
Uma coleção de regras de integridade Restringem o conjunto de estados válidos dos tipos de objetos (conteúdo)
Ex.: Valores de chave primária devem ser únicos e não nulos (Modelo Relacional)
Componentes de um Modelo de Dados
5Modelagem Conceitual e
Modelo ER
Estruturas
Representam atributos cujos valores são interpretações de objetos do mundo real e suas propriedades
Inteiro Domínio
Idade Preço Número de Veículos
Atrib
uto
s
6Modelagem Conceitual e
Modelo ER
Operações
Especificam uma Ação - O Que é Para Ser Feito
SeleçãoAcessar Dadose Armazená-losem MemóriaPrincipal
Acessar
Inserir
Remover
AtualizarIdade de Maria?
7Modelagem Conceitual e
Modelo ER
Operações (cont.)
Preservando propriedades do esquema do BD e do modelo de dados
Transformam um estado de BD em outro estado
Dois níveis:
Definidas pelo SGBD
Implementadas pela aplicação
8Modelagem Conceitual e
Modelo ER
Restrições
Razões semânticas (regras de negócio)
Permitem que os esquemas reflitam mais precisamente as situações do mundo real
Ex.: Um empregado do departamento “Finanças” não pode ter a categoria funcional “ Engenheiro”
De integridade
Restringem os estados possíveis do BD àqueles que respondem às restrições
Ex.: O CPF de todo empregado deve ser único e não pode ser desconhecido (não informado)
9Modelagem Conceitual e
Modelo ER
Restrições (cont.)
Tipos Básicos
Implícitas
Restrições inerentes a cada modelo e parte integral das estruturas do modelo
Ex.: Conjuntos e Relações (Ausência de duplicidade e ordem)
Ex.: A quantidade de faltas de um aluno é um número inteiro
10Modelagem Conceitual e
Modelo ER
Restrições (cont.)
Explícitas
Estáticas: Expressam regras para determinar estados válidos do BD
O salário de um funcionário deve ser igual ou superior ao salário mínimo nacional
Dinâmicas: Especificam que transições de estados são permitidos (Dirigidas a operações)
O salário de um funcionário nunca poderá diminuir, só aumentar
Tipos Básicos (Cont.)
11Modelagem Conceitual e
Modelo ER
Modelagem Conceitual
Análise de Dados
Primeiro passo no desenvolvimento de um BD
Determinar os recursos de dados fundamentais de uma organização
Em termos de entidades e relacionamentosentidades e relacionamentos
...Permitindo o projeto de uma estrutura de capaz de dar apoio a diversas aplicaçõesaplicações relacionadas
12Modelagem Conceitual e
Modelo ER
Auxilia o desenvolvimento ou conversãodesenvolvimento ou conversão de aplicações
Estabelece as bases de todos os fatos relevantesfatos relevantesà organização de dados
Facilita a integraçãointegração das diversas divisões de uma organização pela indicação dos dados que lhe são comuns
Forma uma base para o controle de dadoscontrole de dados, , segurança e auditoriasegurança e auditoria
Alguns impactos da Análise de Dados
Modelagem Conceitual
13Modelagem Conceitual e
Modelo ER
Ciclo de Desenvolvimento de Bancos de Dados
Investigaçãodos Dados
Modelagemdos Dados
Projeto do Banco de Dados
Implementação do Banco de Dados
Monitoramento eManutenção do BD
Modelagem Conceitual
14
Modelo Entidade-Relacionamento
Resultado da modelagem conceitual
Dados que deverão ser armazenados em um BD
Representado graficamente
Passível de transformação para o nível lógico
Mapeamento ER -> Relacional
Ferramentas disponíveis:http://dia-installer.de/index_en.html (através de sheets)
http://www.freedownloadscenter.com/Business/Accounting_Tools/Entity_Developer_Express.html
Modelagem Conceitual e Modelo ER
15Modelagem Conceitual e
Modelo ER
Modelo Entidade-Relacionamento (E/R)
Entidade
Representação abstrata dos objetos do mundo real - dados que são armazenados (um Ser, um Fato)
Ex.: Funcionário, Departamento
Conjunto/Tipo de Entidade vs. Entidades
Grupos de entidades com características similares
Ex.: Conjunto de Departamentos da EmpresaCorresponde aos substantivos Corresponde aos substantivos na na descrição da análise conceitualdescrição da análise conceitual
16Modelagem Conceitual e
Modelo ER
Modelo E/R
Relacionamento
Associação entre objetos dos sistema
Ex: Departamento D1 Emprega o Funcionário F3
Conjunto de Relacionamentos
Grupo de relacionamentos do mesmo tipo
Ex: Emprega (Departamento X Funcionário)
Corresponde aos verbos Corresponde aos verbos nanadescrição da análise conceitualdescrição da análise conceitual
17Modelagem Conceitual e
Modelo ER
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 unicamenteuma ocorrência de uma entidade
18
Complementam as entidades Complementam as entidades da análise conceitualda análise conceitual
Modelagem Conceitual e Modelo ER
Ex: CÓDIGO Disciplina MATRÍCULA Funcionário
Modelo E/R
Atributos (Cont.)
Atributos pertencem a um domínio
19Modelagem Conceitual e
Modelo ER
Modelo E/R
Conceitos Complementares
Entidades Fortes e Fracas
Atributos Compostos, Simples, Mono e Multivalorados
Auto-Relacionamento ou Relacionamento Recursivo
Nomes de Papéis
Grau e Cardinalidade de Relacionamentos
Existência
Relacionamento Total ou Obrigatório
Relacionamento Parcial ou Opcional
20Modelagem Conceitual e
Modelo ER
Modelo E/R
Diagrama E/R
Conjunto de Entidades
Conjunto deRelacionamentos
Ferramenta CASE
21Modelagem Conceitual e
Modelo ER
E1
E2
R1nome 1
nome 2Papel
Diagrama E/R
Ferramenta CASE
Modelo E/R
Papel
22Modelagem Conceitual e
Modelo ER
Modelo E/R
Diagrama E/R
Exemplo de papéis em relacionamentos
EmpregadoSupervisiona
Super-visão
1
nÉ Supervisionado
Trabalha-noReúne
Empregado Departamento1n
Cardinalidade
23Modelagem Conceitual e
Modelo ER
Modelo E/RDiagrama E/R
CardinalidadeNúmero de entidades às quais outra entidade pode estar associada via relacionamento
Um - para - um
A B
1
1
E1
E2
R1
24Modelagem Conceitual e
Modelo ER
Modelo E/R
Cardinalidade de relacionamentos
Um - para - muitos
A B
1
n
E1
E2
R1
25Modelagem Conceitual e
Modelo ER
Modelo E/R
Cardinalidade de Relacionamentos
Muitos - para - muitos
A B
m
n
E1
E2
R1
26Modelagem Conceitual e
Modelo ER
Modelo E/R
Mais de um relacionamento envolvendo as mesmas entidades
Professor Disciplina
Coor-dena
1 1
Lecionan m
27Modelagem Conceitual e
Modelo ER
Modelo E/R
Um Relacionamento pode ser N-ário
Cliente Conta
Agência
m
1
nCCA
29Modelagem Conceitual e
Modelo ER
Modelo E/R
Relacionamento fraco
Restrição de existência
Hospital
Ambulatório
Entidade Forte
Entidade Fraca
Relacionamento FracoTem
31Modelagem Conceitual e
Modelo ER
Modelo E/R
Dependência de identidade
Entidade não pode ser identificada através de seus próprios atributos
Hospital
atributo 1atributo 2...atributo n
Ambulatórioatributo 1atributo x...atributo k
32Modelagem Conceitual e
Modelo ER
Modelo E/R
Diagrama E/R
Conjunto de Atributos E1
at 2
at 3
at 1
Ferramenta CASE
Chave primária
33Modelagem Conceitual e
Modelo ER
Modelo E/RDiagrama E/R
Conjunto de AtributosMultivalorados E1
at 2
at 3
at 1
Atributo multivalorado
Ferramenta CASE
35Modelagem Conceitual e
Modelo ER
Modelo E/R
Diagrama E/RAuto-relacionamento
E1 R1
1
n
Relacionamento Total ou Obrigatório
E1
E2
R1ou
E1
E2
R1
36
Modelo E/R
Modelagem Conceitual e Modelo ER
Ferramenta CASE – Auto-relacionamento
Ferramenta CASE – Relacionamento obrigatório
37Modelagem Conceitual e
Modelo ER
Modelo E/R
Diagrama E/R
Relacionamento Parcial ou Opcional
E1
E2
R1
38Modelagem Conceitual e
Modelo ER
Modelo E/RRelacionamento Relevante X Redundante
Necessita compreensão detalhada do ambiente
Cliente
Entrega
R11
n
Pedido
R2n
m
R3
1
n
Entrega ao
R4
1
n
RecebeFaz Tem
39Modelagem Conceitual e
Modelo ER
Modelo E/R
Determinação da existência de relacionamento
Outro relacionamento entre as mesmas entidades tem o mesmo significado
Se um atributo puder descrever mais de um tipo de entidade, pode se tornar um relacionamento
Ex. O atributo “leciona” da entidade “Professor”
40Modelagem Conceitual e
Modelo ER
Modelo E/R
Atributo como outra entidadeO próprio atributo tem atributos relevantes adicionaisOutras entidades são vistas relacionadascom entidades do segundo tipoEntidades do segundo tipo podem se relacionar com várias ocorrências do primeiro tipo
Determinação de existência (Cont.)
41Modelagem Conceitual e
Modelo ER
Modelo E/RRelacionamentos entre subtipos
Entidades que generalizam outras entidades
• Diferenças significativas entre seus atributos (existência)
–Mas um subconjunto comum
• Tiverem diferentes meios de identificação
• Participarem em relacionamentos de tipos diferentes
42Modelagem Conceitual e
Modelo ER
Modelo E/R• Relacionamentos entre subtipos (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
43Modelagem Conceitual e
Modelo ER
Modelo E/R
• Relacionamentos entre subtipos (Cont.)– Generalização e especialização
ÉUMA
ContaNúmero Saldo
Conta Poupança
Juros
Conta-Corrente
Limite
45Modelagem Conceitual e
Modelo ER
Modelo E/R• Relacionamentos entre subtipos (Cont.)
Pessoa
Candidato Funcionário Pensionista
Gerente Operário
46Modelagem Conceitual e
Modelo ER
Modelo E/R• Um conceito do mundo real pode ser mais bem
representado por um conjunto de entidades ou conjunto de relacionamentos
Número Saldo
m n
Conta
Cliente
NomeCPF Número Nome
Agência
Relacionamento
48Modelagem Conceitual e
Modelo ER
Modelo E/R• 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, mas apenasuma conta por Agência, uma agência pode ter diversas contas e uma Conta pode pertencer a mais de um Cliente
Cliente Conta
Agência
CCAM
1
N
Relacionamento Ternário
49Modelagem Conceitual e
Modelo ER
Modelo E/R
Cliente Conta
Agência
CCN M
CA
N
1
Relacionamentos Binários
50Graduação
Modelo E/R• 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
Funcionário
Nome Telefone
Funcionário M N TelefoneFuntel
Convencional
Telemarketing
Modelagem Conceitual e Modelo ER
51Modelagem Conceitual e
Modelo ER
Modelo E/R• Agregação
– Agrupar uma parte de um diagrama E/R em um único conjunto-entidade
Funcionáriom n
Trab
Nome HorasCod
Descrição
Projeto
Equipamento
Idm
nUsa
53Modelagem Conceitual e
Modelo ER
Um Exemplo• 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
– 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
54Modelagem Conceitual e
Modelo ER
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
– 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
55Modelagem Conceitual e
Modelo ER
Um Exemplo– Cada Paciente pode receber vários
Diagnósticos, e cada Diagnóstico é de um único Paciente
56Modelagem Conceitual e
Modelo ER
Hospital
AmbulatórioMédico Laboratório
Pessoal PacienteExame
Diagnóstico
Formado
1
NClinica
1
N
Solicita
M
N
Aloca
1
N
Atende
1
N
Consulta
M
N
Faz
1
N
Realiza
1 N1
N
Um Exemplo
Recebe
57Mestrado / Doutorado
Um Exemplo –Ferramenta CASE
(1,1)
(1,1)
(0,1)
Realiza
(0,1)
(1,1) (1,1)(0,1)
(1,n)
(1,n)
(1,n)
Modelagem Conceitual e Modelo ER
58Modelagem Conceitual e
Modelo ER
Exercício
• 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:
59Modelagem Conceitual e
Modelo ER
Exercício
• 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 (que também é um empregado).
• Cada empregado possui dependentes caracterizados por nome, data de nascimento e grau de parentesco.