Bancos de Dados Projeto de Banco de Dados Modelagem E-R.

Post on 17-Apr-2015

114 views 6 download

Transcript of Bancos de Dados Projeto de Banco de Dados Modelagem E-R.

Bancos de Dados

Projeto de Banco de Dados

Modelagem E-R

Realiza projeto do Sistema; Prepara testes

Define regras do negócio

Usuário Analista de Sistemas

Banco de dados

DBA

Projeto Lógico/Físico BD

Projeto Conceitual/ Lógico BD

Projetista

Prepara projeto do BDDefine restrições e solução lógica

Atores do Processo

4

5

5

3

21

ANALISTA

Mini-mundo

ModeloLógico

Modelo Físico

ModeloConceitual

Banco de Dados

Realidade

Níveis de Abstração

Modelo Conceitual

=> modelo abstrato que descreve a estrutura de um BD de forma independente de um SGBD particular (restrições impostas por tecnologias, técnicas de implementação ou dispositivos físicos)

Modelo Conceitual

primeira etapa do projeto de um sistema de aplicação em banco de dados

utilizado para entendimento, transmissão, validação de conceitos, mapeamento do ambiente, diálogo entre usuários e desenvolvedores

Exemplo de Modelo Conceitual

AUTOR LIVROescreveN

INFANTIL ADULTO

N

Modelo Entidade-Relacionamento

Modelo Lógico

Os objetos, suas características e relacionamentos têm uma representação de acordo com as regras de implementação e limitações impostas por algum tipo de tecnologia

Relacional, Orientada a Objetos, Objeto-Relacional

Modelo Lógico

Resulta da aplicação de regras de derivação sobre um modelo conceitual

Nível mais restrito aos desenvolvedores

Modelo Lógico

descreve as estruturas que estarão contidas no banco de dados, de acordo com as possibilidades permitidas pela abordagem, sem considerar características de armazenamento do SGBD

Modelo Lógico é dependente do TIPO/MODELO de dados

particular do SGBD que será usado

Exemplo: Tabela/Relação -> Modelo Relacional

Identidade Nome Telefone

23470981 Flávio Câmara 21 23867543

10876457 Lúcio Maia 81 65439878

65438945 Ana Furtado 83 2256756

19876589 Joana Marques 83 2478976

Modelo Físico

partirá do lógico e descreverá as estruturas físicas de armazenamento de dados (tamanho de campos, índices, métodos de acesso do SGBD, etc)

Linguagens e Notações dependem do SGBD

Pode ser necessário o conhecimento do modo físico de implementação das estruturas de dados

Modelos

Os objetivos dos modelos são:

Comunicação com clientes

pode-se mostrar ao cliente, através de um produto de demonstração, parte ou todo o comportamento externo de um sistema

Modelos Os objetivos dos modelos são:

Visualização:

permite visualizar idéias antes de torná-las concretas

Redução da complexidade:

os modelos reduzem a complexidade dividindo-a em um pequeno número de coisas importantes a serem tratadas de cada vez

Objetivos da Modelagem Conceitual de Dados

Representar um ambiente observado

O significado da informação

Servir de instrumento para comunicação

Favorecer o processo de verificação e validação

Objetivos da Modelagem Conceitual de Dados

Capturar aspectos de relacionamento entre os objetos observados

Servir de referencial para a geração de estruturas de dados

Estabelecer conceitos únicos a partir de visões diversas

Modelo Entidade-Relacionamento

Histórico:

1976, Peter P. Chen publicou:

“The Entity-Relationship Model: Toward the unified view of data”

Base: Teoria Relacional (Codd, 1970)

Modelo Entidade-Relacionamento

É um modelo de dados conceitual de alto nível, projetado para estar o mais próximo possível da visão que o usuário tem dos dados, não se preocupando em representar como estes dados estarão realmente armazenados.

É utilizado principalmente durante o processo de projeto de banco de dados

Modelo Entidade-Relacionamento

Identifica e modela entidades e relacionamentos, permitindo a especificação de um esquema que represente a estrutura lógica geral do Banco de Dados;

Produz um diagrama fácil de ser entendido pelo usuário final;

Abordagem Entidade-Relacionamento

ENTIDADE 1 ENTIDADE 2Relacio-namento

Atributo 1

Atributo 2

Entidade

ENTIDADES - Representa qualquer “coisa” (concreta ou abstrata) sobre o qual se deseja manter informações.

Ex: Empregado, empresa, consulta, embarque

• São representadas graficamente por um retângulo!

EmbarqueEmpregado

Entidades

Entidades

AlunoPessoa Professor

Material Animal Mamífero

AveMeio de

TransporteTransporte

Aéreo

Entidade

Entidade Pode ser interpretada como uma

tabela de dados, onde cada linha representa uma instância

Atributos de uma Entidade

são características, valores descritos, propriedades ou dados associados a uma entidade ou relacionamento.

Ex: são atributos da entidade Pessoa: nome, endereço, telefone, ...

Para cada atributo há um conjunto de valores permissíveis (domínio)

Atributos

Placa Marca Chassi Proprietário Fabricante AnoJHK-3456 Gol 3KG00324MH9 José Batista Volkswagen 2001MSN-3289 Fiesta 5GH00845MH

8Carla Maia Ford 2002

JHG-5634 Meriva 7JK00887MH8 Ana Gomes Chevrolet 2002

Entidade: Automóvel

Identidade Nome Endereço Telefone Estatura Peso

123567-PB José Batista Dias Rocha, 345 228 9876 1,87 84

675439-CE Maria Costa Beira Mar, 245 246 7854 1,65 60

754398-PE Caio Silva Boa Viagem, 234 226 2378 1,70 68

Entidade: Cliente

Relacionamento

Fato ou acontecimento que liga dois objetos existentes no mundo real

são relações ou associações existentes entre entidades

Obs: Verbos expressam fatos

Relacionamentos

Pessoa possui automóvel

Professor ensina aluno

Pessoa mora em apartamento

Francisco é casado com Maria

Marcos passeia em um barco

Carla pilota avião

Documento pertence a processo

Generalização/Especialização

Generalização: Resultado da união de dois ou mais

conjuntos de entidades de nível mais baixo produzindo um conjunto de entidades de nível mais alto

Especialização: Resultado da separação de um

subconjunto de entidades de nível mais alto, formando um conjunto de entidades de nível mais baixo

Generalização/Especialização

CLIENTE

PESSOA FÍSICA

PESSOA JURÍDICA

Generalização

Especialização

Generalização/Especialização

Herança de PropriedadesCada instância da entidade

especializada possui, além de suas próprias propriedades, também as propriedades da instância da entidade genérica correspondente

AtributosRelacionamentosGeneralizações ou especializações

Generalização/Especialização

Herança de Propriedades

CLIENTE

PESSOA FÍSICA

PESSOA JURÍDICA

nomecódigo

RG sexo CGC Tipo de organização

Generalização/Especialização

Total - Para cada instância da entidade genérica, existe sempre uma instância em uma das entidades especializadas

CLIENTE

PESSOA FÍSICA

PESSOA JURÍDICA

t Todo cliente deve ser pessoa física ou jurídica

Generalização/Especialização

Parcial - Nem toda ocorrência da entidade genérica possui correspondente em entidade especializada

FUNCIONÁRIO

MOTORISTA SECRETÁRIA

ptipo

Pode existir funcionário que

não seja motorista nem

secretária

Generalização/Especialização

Não há limites no número de níveis hierárquicos

No entanto, atenção quanto ao número de níveis.

Relacionamentos

Grau ou Cardinalidade

Caracterizam o número mínimo e máximo de instâncias de cada entidade que podem estar associadas através do relacionamento

Relacionamentos

Grau ou Cardinalidade

A BR

1. Com quantos elementos de B se relaciona cada um dos elementos de A?2. Dado um elemento de B, com quantos elementos de A ele se relaciona?

Relacionamentos

Relacionamento de Um-para-Um (1:1)

PESSOA CERTIDÃODE ÓBITOrecebe

1 1

Relacionamentos

Relacionamento de Um-para-Muitos (1:N)

EMPRESA FILIALpossui1 N

onde N = 0, 1 ou mais

Relacionamentos Relacionamento de Muitos-para-Muitos

(M:N) ou (N:N)

ATLETA ESPORTEpraticaM N

Exercício - Identifique as entidades e atributos

O sistema deve possibilitar o cadastro dos alunos, professores e turmas de uma Escola Infantil. Para os alunos, devem existir informações sobre seu nome, matrícula, data de nascimento, pais ou responsáveis, telefone, endereço, entre outras. Para os professores, devem constar as informações sobre seu grau de instrução, matrícula, nome, endereço, telefone, data de nascimento, formação, faixa etária de experiência (das crianças que já lecionou), salário base, etc.

Exercício - Identifique as entidades e atributos

As turmas devem ser registradas segundo um código, nome da turma, sala, horário, tipo (se é A, B, C), etc.

Serão cadastrados, também, os materiais utilizados na turma que deverão ser entregues pelos alunos.

O sistema deverá gerar listagens dos alunos por turma e professor, boletins de notas, emissão de boletins de pagamento, lista de materiais por turma, entre outros relatórios.

Exercícios

Represente através da notação E-R os seguintes relacionamentos, incluindo a cardinalidade:

a) Médico atende paciente

b) Estado é governado por Governador

c) Autor escreve livro

Exercícios

Represente através da notação E-R os seguintes relacionamentos, incluindo a cardinalidade:

e) Empregado possui dependente

f) Coordenação é composta de professores

g) Em determinada clínica, os médicos são classificados em pediatras, neurologistas e ortopedistas