Anda di halaman 1dari 28

Sistemas de Bases de Dados

Edição 2004

Desenho e Modelação de Esquemas de


Bases de Dados

Orlando Belo
Departamento de Informática
Escola de Engenharia
Universidade do Minho
Índice

• Ciclo de Vida de uma Base de Dados


• Modelação de Esquemas de Bases de Dados
• Diagramas ER
• Notação Chen
• Notação (Baseada em) UML
• Notação “Crow’s Foot”
• Notação IDEF1X
• Notação Baseada em Sombras (“shading”)
• Bibliografia
• Referências WWW

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 2


Ciclo de Vida de uma Base de Dados

• O ciclo de vida de uma base de dados integra as principais etapas do desenho do


seu esquema lógico global, alocação de dados num sistema computacional e na
definição dos esquemas locais específicos ao sistema de bases de dados.
• Em termos gerais, podemos considerar seis etapas fundamentais:
– Análise de requisitos.
– Desenho do esquema.
• Modelação ER.
• Integração de vistas.
• Transformação do modelo ER.
• Normalização das tabelas.
– Refinamento de utilização.
– Distribuição dos dados.
– Esquemas locais e desenho físico.
– Implementação, monitorização e modificação da base de dados.
• Nesta unidade de ensino iremos apenas abordar a etapa do desenho de esquemas,
em particular os aspectos relacionados com a modelação ER.

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 3


Modelação ER de Bases de Dados

• A modelação ER é a técnica de modelação de dados mais popular, dado ser


simples, de fácil compreensão e leitura e um bom meio de discussão e análise em
processos de definição para esquemas de bases de dados.

• Os diagramas ER são excelentes meios – ferramentas – para a comunicação com


os utilizadores finais do sistemas de bases de dados quando se pretende
apresentar e validar os nossos sistemas de dados durante a fase de modelação.

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 4


Notações para Diagramas ER

• Actualmente existem muitas e variadas formas de construção de um diagrama ER


(Entidade-Relacionamento ou Entidade-Associação) que utilizam diferentes tipos de
notação.
• Algumas das ferramentas de modelação de esquemas existentes no mercado
permitem-nos escolher qual a notação que queremos utilizar.
• As notações que iremos abordar são:
– Chen.
– (Baseada em) UML.
– “Crow’s Foot”.
– IDEF1X.
– Baseada em Sombras (“shading”).
• No nosso caso particular, começaremos por demonstrar e aplicar a nota Chen e, de
seguida, apresentar as outras notações enunciadas anteriormente.

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 5


A Notação Chen

• A notação Chen é um dos formalismos mais interessantes para desenhar esquemas


de bases de dados. A sua simplicidade permite ao arquitecto mais inexperiente
representar e transmitir a forma como os dados serão organizados e armazenados
numa base de dados.
• Através da notação Chen podemos representar e caracterizar:
– Entidades.
– Relacionamentos entre entidades.
– Atributos de entidades e de relacionamento.

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 6


Construtores ER Básicos

Entidade Aluno

Entidade Fraca Aluno_CV Atributo

Relacionamento frequenta Chave número

Descritor ou normal nome

rua
Complexo ou
Composto morada localidade

codPostal
Multivalor
telefone

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 7


Entidades e Atributos

Entidade
Identificador
(chave) Atributo multivalor
número
Aluno telefone

nome
morada
Atributo complexo
rua codPostal
Atributo simples
local

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 8


Tipos de Relacionamentos

Relacionamento

N Relacionamento
Aluno frequenta Curso
1 Binário

N Cardinalidade
Funcionário coordena Relacionamento
1 Binário Recursivo

Aluno
N
frequenta Curso
Relacionamento
1 Ternário

N
Disciplina

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 9


Tipos de Cardinalidade de um Relacionamento

1 um para um
Aluno é-um Atleta
1 1:1

1 um para muitos
Aluno frequenta Disciplina
N
1:N

N muitos para muitos


Professor leccionam Disciplina
M N:N

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 10


Tipos de Existência de um Relacionamento

1 Opcional
Aluno frequenta Atleta
1

Aluno
1
frequenta Curso
Obrigatória ou
N mandatória

N
Aluno frequenta Disciplina Desconhecida
M

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 11


Construtores Avançados

• Modelação de dados orientada ao objecto.


• Generalização
• Agregação

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 12


Generalização

Super-Tipo

Pessoal
d (dijunção)
o (sobreposição)
d

U
U
Professores
U Técnicos Auxiliares

Sub-Tipo

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 13


Agregação

Super-Tipo

Carro
Agregação

Motor Carrossaria Equipamento

Sub-Tipo

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 14


Clusters – Organização por Grupos

• Os clusters (grupos) permitem agrupar entidades de acordo com as suas áreas


funcionais.

• Na formação de clusters devem-se seguir os seguintes passos:


– Definição de pontos de agrupamento dentro das áreas funcionais.
– Constituição dos clusters de entidades.
• As entidades a agrupar devem existir na mesma área funcional.
• Se existirem conflitos no agrupamento de entidades deve-se deixar as
entidades desagrupadas.
– Constituição de clusters de entidades de nível superior.
– Validação do diagrama com os clusters.

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 15


Identificação de Áreas Funcionais
Organização

Escola
1
tem
N
1
Departamento tem Unidade
N
1 1

tem tem

N N
1
integra Pessoal supervisiona
Projecto
N M N
1
tem d
Professores Técnicos Auxiliares

U
U
U
N

Recurso
Professor Técnico Auxiliar
Projectos
Funcionários

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 16


Formação de Clusters

Organização

1 Departamento 1 Unidade

tem tem

Projecto N N
Projecto 1
integra Pessoal supervisiona
Projectos
N M N

U
U

U
Professores Técnicos Auxiliares
Professores Técnicos Auxiliares

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 17


Notação (Baseada em) UML Connoly and Begg, 2002

• Inspiração clara na UML (“Unified Modellig Language”).


• Construtores Básicos
– Entidades
– Entidades fracas
– Relacionamentos
• Construtores Avançados
– Especialização e Generalização
– Agregação
– Composição

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 18


Entidades e Atributos

Aluno Entidade

Aluno Entidade com chave


primária
número
Entidade com atributos
Aluno Nome da Entidade
Chave Primária
número {CP}
nome
data-nascimento
Atributo simples endereço
rua Atributo composto
localidade ou complexo
códigoPostal
Chave Secundária telefone [1..N] Atributo multivalor
ou Alternada contribuinte {CA}
curso {CE}
/médiaActual
Chave Estrangeira
ou Externa
Atributo derivado

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 19


Tipos de Relacionamentos

Tem Relacionamento
Aluno AlunoCV
1..1 0..1 Binário

Inscrito
Aluno Curso
0..* 1..1

Frequenta
Aluno Disciplina
1..1 1..*

Aluno frequenta Disciplina Relacionamento


Complexo -Ternário

Curso

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 20


Especialização e Generalização
Uma especialização é o processo de maximizar as diferenças entre os membros de uma
entidade através da identificação e distinção das suas propriedades específicas.
Uma generalização é o processo de minimizar as diferenças entre os membros de uma
entidade através da identificação das suas propriedades comuns.

Super-Classe

Mandatório, Opcional
Pessoal

OU, E
{Mandatório,Ou}

Professor Funcionário

Sub-Classe

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 21


Agregação
Uma agregação representa um relacionamento do tipo”tem-um” ou “é-parte-de” entre dois
tipos de entidades em que uma delas representa o todo e a outra a parte constituinte.

relacionamento

integra
Erasmus Aluno

agregação entidade que


entidade que
representa o todo
representa a parte
no relacionamento
no relacionamento

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 22


Composição
Uma composição é uma forma específica de agregação que representa uma associação
entre entidades,na qual existe um forte conceito de propriedade e um tempo de vida
coincidente entre a parte e o todo.

relacionamento

integra
Erasmus Aluno

composição
entidade que entidade que
representa a parte representa o todo
no relacionamento no relacionamento

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 23


Notação “Crow’s Foot”
min=1,max=1
um lado opcional
Aluno Entidade min=0, max=1
um para um (1:1)
é_gerido
Aluno CV Entidade de Curso Director

intersecção
um para muitos (1:N)
frequentam
Aluno Curso

um para muitos (1:N)


pertence
Tipos de Gabinete Professor
Relacionamentos
muitos para muitos (N:N)
leccionam
Professor Disciplina

recursivo binário (1:N) supervisiona


Everest,R., 1986 Professor

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 24


Notação IDEF1X
um lado opcional
Nome da Entidade

Aluno um para um (1:1)


número é_gerido
Curso Director

nome Chave Primária


data Nascimento um para muitos (1:N)
... frequentam
Aluno Curso

um para muitos (1:N)


Atributos regulares pertence
Gabinete Professor

muitos para muitos (N:N)


leccionam
Tipos de Professor Disciplina
Relacionamentos
recursivo binário (1:N) supervisiona
muitos
Bruce, T.A., 1992 Professor

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 25


Notação Baseada em Sombras (“shading”)
um lado opcional
Aluno Entidade
um para um (1:1) é_gerido

Aluno CV Entidade fraca Curso Director

frequentam um para muitos (1:N)

Aluno Curso

um para muitos (1:N) pertence

Gabinete Professor
Tipos de
Relacionamentos leccionammuitos para muitos (N:N)

Professor Disciplina

recursivo binário (1:N) supervisiona


Reiner,D.et al, 1985 Professor

Teorey, T.J. Et al, 1986

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 26


Ferramentas para a Modelação de BD

• Sybase Power Designer


(http://www.sybase.com/products/developmentintegration/powerdesigner)
• Microsoft Visio 2003 (http://office.microsoft.com/en-au/FX010857981033.aspx)
• Embarcadero Studio (http://www.embarcadero.com/products/erstudio/index.html)
• Computer Associates ERWin (http://www3.ca.com/solutions/Product.aspx?ID=260)
• Database Designer (http://www.ezyware.com/)
• DB Designer (http://fabforce.net/dbdesigner4/)

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 27


Bibliografia

• Connolly, T., Begg, C., Database Systems - A Practical Approach to Design,


Implementation, and Management, III Edição, Addison-Wesley, 2002.
• Teorey, T., Database Modeling and Design: The Fundamental Principles,
II Ediçao, Morgan Kaufmann, 1994.

O.Belo, Sistemas de Bases de Dados, Desenho e Modelação de Esquemas de Bases de Dados. 28

Anda mungkin juga menyukai