Escolar Documentos
Profissional Documentos
Cultura Documentos
Conceitual – parte I
Vitor Valerio de Souza Campos
Objetivos
Apresentar a modelagem conceitual como
parte integrante do projeto de um BD
Mostrar as vantagens de uma documentação
conceitual de dados
Apresentar os elementos de um modelo
Entidade Relacionamento
Modelagem conceitual
Sumário
Modelagem conceitual
Conceitos do modelo Entidade Relacionamento
(ER)
Entidade
Relacionamento
Auto-relacionamento
Cardinalidade de relacionamento
Classificação de relacionamento
Relacionamento ternário
1
Modelagem Conceitual
Projeto de Banco de Dados
Etapas de um projeto de Banco de Dados
1. análise de requisitos
2. projeto conceitual
3. projeto lógico
4. projeto físico
Modelagem Conceitual
Análise de requisitos
Análise de requisitos
engloba todas as tarefas que lidam com
investigação, definição e escopo de novos sistemas
ou alterações de sistemas existentes.
A análise de requisitos é também conhecida por
outros nomes:
Engenharia de requisitos
Levantamento de requisitos
Captura de requisitos
Análise de sistema
Especificação de requisitos
Análise de requerimentos
Modelagem Conceitual
Análise de requisitos
Análise de requisitos inclui três tipos de
atividades:
Elicitação dos requisitos:
é a tarefa de comunicar-se com os usuários e clientes
para determinar quais são os requisitos.
Análise de requisitos:
determina se o estado do requisitos é obscuro,
incompleto, ambíguo , ou contraditório e resolve estes
problemas.
Registros dos requisitos:
os requisitos podem ser documentados de várias
formas, tais como documentos de linguagem natural,
casos de uso , ou processo de especificação
2
Modelagem Conceitual
Projeto conceitual
Projeto conceitual
Modelagem dos dados e seus relacionamentos
independente da estrutura de representação
do SGBD (modelagem conceitual)
Forma de realização:
análise da especificação de requisitos
Resultado:
esquema conceitual + restrições de integridade
fonte: http://www.inf.ufsc.br/~ronaldo/ine5623
Modelagem Conceitual
Exemplo de projeto conceitual
Esquema ER
(Entidade-Relacionamento) +
restrições de integridade
fonte: http://www.inf.ufsc.br/~ronaldo/ine5623
Modelagem Conceitual
Projeto lógico
Projeto Lógico
Conversão do esquema conceitual para o
esquema de representação de um SGBD
(esquema lógico)
Forma de realização: aplicação de regras de
conversão
Resultado: esquema lógico (tabelas, RIs,
transações, consultas relevantes, autorizações
de acesso, ...)
fonte: http://www.inf.ufsc.br/~ronaldo/ine5623
3
Modelagem Conceitual
Exemplo de projeto lógico
Código > 100
Função = {professor,
funcionário}
Modelagem Conceitual
Projeto Físico
Definição do esquema lógico em um SGBD
adequado ao modelo
Forma de realização: SQL
Resultado: esquema físico
fonte: http://www.inf.ufsc.br/~ronaldo/ine5623
Modelagem Conceitual
Exemplo de projeto lógico
Conversão do ER para o relacional
Servidores (Matrícula, Nome, Função, Depto)
chave primária: Matrícula
chave estrangeira: Depto (tabela Departamentos)
Função IN {professor, funcionário}
Consultas relevantes: a) dados do servidor, dada a matrícula; b) matrícula e nome
dos servidores por função; ...
Departamentos (Código, Nome)
Código > 100
chave primária: Código . . .
Especificação em SQL
CREATE TABLE Servidores (
Matrícula int, Nome char(50), Função char(20) check(Função
in (‘professor’, ‘funcionário’)), Depto int NOT NULL,
primary key(Matrícula),
foreign key(CódigoDepto) references Departamentos);
create index FuncServidor on Servidores (Função);
create table Departamentos ( . . .);
fonte: http://www.inf.ufsc.br/~ronaldo/ine5623
4
Modelagem Conceitual
Projeto Top-Down - Objetivos
Projeto Conceitual
Preocupação: correta abstração do mundo real
(captura correta da semântica da aplicação)
Projeto Lógico + Físico
Preocupação: escolhas corretas na conversão
para o esquema do SGBD (relacional) para
maximizar o desempenho
(distribuição adequada dos dados em tabelas)
fonte:http://www.inf.ufsc.br/~ronaldo/ine5623
Modelagem Conceitual
Vantagens de uma documentação conceitual
de dados
Modelagem Conceitual
Vantagens de uma documentação conceitual
de dados
5
Modelagem Conceitual
Modelo Entidade-Relacionamento
Conceitos do Modelo ER
Entidade
Entidade
Conjunto de objetos da realidade modelada sobre
as quais deseja-se manter informações no banco
de dados (Heuser, 1998).
Uma entidade é representada por um retângulo
que contém o nome da entidade
Diagrama de ocorrências
Entidade
Empregado Departamento
p1 d1
p2 d2
p3 d3
p4 d4
p5 d5
6
Conceitos do Modelo ER
Relacionamento
Relacionamento
Conjunto de associações entre entidades.
É representado por um losango ligado por linha
aos retângulos.
Relacionamento binário:
ocorrências envolvem duas entidades ou
associações entre ocorrências de uma mesma
entidade.
Diagrama de ocorrências
relacionamentos
Empregado Trabalha-para Departamento
p1.d2 d1
p1
p2 d2
p2.d2
p3 d3
p4 p5.d4 d4
p5 d5
Conceitos do Modelo ER
Auto-relacionamento
Auto-relacionamento
É um relacionamento entre ocorrências de uma
mesma entidade.
Tem-se um conceito adicional o de papel da
entidade no relacionamento.
Uma ocorrência da entidade exerce o papel1 e a outra
ocorrência da entidade exerce o papel2.
7
Diagrama de ocorrências
auto-relacionamento
Pessoa Casamento
p1 Marido p1.p2
p2 Esposa
p3
p4.p5
p4 Marido
p5
Esposa
Conceitos do Modelo ER
Cardinalidade de relacionamento
Cardinalidade (mínima, máxima) de entidade
em relacionamento
Número (mínimo, máximo) de ocorrências de
entidade associadas a uma ocorrência da
entidade em questão através do relacionamento
(Heuser, 1998).
Conceitos do Modelo ER
Cardinalidade de relacionamento
Cardinalidade máxima
Empregado tem cardinalidade máxima igual a 1
no relacionamento Trabalha-para.
Departamento tem cardinalidade máxima igual a
n no relacionamento Trabalha-para.
8
Conceitos do Modelo ER
Cardinalidade de relacionamento
Cardinalidade máxima
Expressa que uma ocorrência de EMPREGADO
(entidade do lado oposto da notação) pode estar
associada ao máximo uma (1) ocorrência de
DEPARTAMENTO.
Conceitos do Modelo ER
Cardinalidade de relacionamento
Cardinalidade máxima
Expressa que uma ocorrência de DEPARTAMENTO
(entidade do lado oposto da notação) pode estar
associada ao máximo (n) ocorrências de
EMPREGADO.
Conceito: Classificação de
relacionamentos binários
A cardinalidade máxima pode ser usada para
classificar relacionamentos
Classificação de relacionamentos
n:n (muitos-para-muitos),
1:n (um-para-muitos)
1:1 (um-para-um)
9
Conceito: Classificação de
relacionamentos binários
Classificação de relacionamentos
1:1 (um-para-um)
Conceito: Classificação de
relacionamentos binários
Classificação de relacionamentos
1:n (um-para-muitos)
Conceito: Classificação de
relacionamentos binários
Classificação de relacionamentos
n:n (muitos-para-muitos)
10
Conceitos do Modelo ER –
Relacionamento ternário
Grau de relacionamento:
É o número de entidades que participam desse
relacionamento
Relacionamentos ternários
São relacionamentos de grau três.
Conceitos do Modelo ER –
Relacionamento ternário
Cardinalidade em relacionamentos ternários:
Refere-se a pares de entidades.
No relacionamento R entre as entidades A, B e
C, a cardinalidade máxima de A e B dentro de R
indica quantas ocorrências de C podem estar
associadas a um par de ocorrências de A e B.
Conceitos do Modelo ER –
Relacionamento ternário
O “1” expressa que:
Cada par de ocorrências (Candidato, Empresa)
esta associado a no máximo uma Entrevista
11
Conceitos do Modelo ER –
Relacionamento ternário
O “n” expressa que:
Cada par de ocorrências (Candidato, Entrevista)
esta associado a muitas empresas
Conceitos do Modelo ER –
Relacionamento ternário
O “n” expressa que:
Cada par de ocorrências (Empresa, Entrevista)
esta associado a muitos Candidatos
Diagrama de ocorrências
relacionamentos
Candidato CCI
Entrevista
c1 c1.v1.e1
v1
c2
c1.v2.e2
v2
c2.v1.e1
v3
Empresa
c2.v3.e3
e1
p2
c1.e3.v3
e2
e3
12
Conceitos do Modelo ER
Cardinalidade de relacionamento
Cardinalidade mínima de entidade em
relacionamento
Número mínimo de ocorrências de entidade
associadas a uma ocorrência da entidade em
questão através do relacionamento. (HEUSER,
1998).
Cardinalidade mínima 1 recebe a denominação
de associação obrigatória
Cardinalidade mínima 0 recebe a denominação
de associação opcional
Conceitos do Modelo ER
Cardinalidade de relacionamento
Empregado tem cardinalidade mínima igual a
1 no relacionamento Possui.
Dependente tem cardinalidade mínima igual
a 0 no relacionamento Possui.
Conceitos do Modelo ER
Cardinalidade de relacionamento
Expressa que uma ocorrência de EMPREGADO
(entidade do lado oposto da notação) pode
existir sem que a ela esteja associado um
DEPENDENTE.
13
Conceitos do Modelo ER
Cardinalidade de relacionamento
Expressa que uma ocorrência de
DEPENDENTE (entidade do lado oposto da
notação) deve estar associada a no mínimo 1
ocorrência de EMPREGADO.
(1,n) E7 E8
Aponte um relacionamento
E4 (1,1) (1,n) (1,1)
a8 (1,n) neste DER
E11 a11 r6
p r4
r5
(0,1)
(0,n)
a9
E5 E6 E9 (0,n) E12
E10
a12 a13
a10
14
Revisão modelo ER – Notação
Auto-relacionamento
auto-relacionamento
a4 (0,1)
a1
a2 (0,n) papel 1 (0,n)
a5 a6 (1,n) (0,n)
E1 r1 E2 r3
a7 (1,n) papel 2 (1,1)
(1,1) a3
E3 r2
(1,n) E7 E8
Apresente no DER
E4 um auto- (1,1) (1,n) (1,1)
a8 (1,N)
relacionamento
E11 a11 r6
p r4
r5
(0,1)
(0,n)
a9
E5 E6 E9 (0,n) E12
E10
a12 a13
a10
(1,n) Indique o E7
relacionamento
E8
ternário
E4 (1,1) (1,n) (1,1)
a8 (1,n)
E11 a11 r6
p r4
r5
(0,1)
(0,n)
a9
E5 E6 E9 (0,n) E12
E10
a12 a13
a10
a4 (0,1)
a1
a2 (0,n) papel 1 (0,n)
a5 a6 (1,n) (0,n)
E1 r1 E2 r3
a7 (1,n) papel 2 (1,1)
(1,1) a3
E3 r2
Cardinalidade
(1,n) E7 E8
máxima 1
Indique a cardinalidade
E4 máxima (1,1) (1,n) (1,1)
dea8 (1,n)
dois relacionamentos
E11 a11 r6
p r4
r5
(0,1)
(0,n)
a9
E5 E6 E9 (0,n) E12
E10
a12 a13
a10
15
Pontos importantes
Apresentou-se a modelagem conceitual como
parte integrante do projeto de um BD
Mostrou-se as vantagens de uma modelagem
conceitual de dados
Conceitos da abordagem ER
Entidade
Relacionamento
Auto-relacionamento
Cardinalidade de relacionamento
Classificação de relacionamento
Relacionamento ternário
Tópicos subsequentes
Atributo
Cardinalidade de atributo
Tipos de atributos
Entidade Fraca
Entidade Associativa
Generalização/especialização
Referências Bibliográficas
HEUSER, Carlos Alberto. Modelos de Banco de Dados. In: ______.
Projeto de Banco de Dados. Porto Alegre: Sagra Luzzatto, 1998.
p. 5-8.
HEUSER, Carlos Alberto. Abordagem entidade-relacionamento. In:
______. Projeto de Banco de Dados. Porto Alegre: Sagra
Luzzatto, 1998. p. 11-40.
16