A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Projeto de Banco de Dados

Apresentações semelhantes


Apresentação em tema: "Projeto de Banco de Dados"— Transcrição da apresentação:

1 Projeto de Banco de Dados
Ceça Moraes – Dezembro/2009

2 Modelagem Conceitual

3 I Um modelo conceitual deve ter:
Modelagem Conceitual C O objetivo É: Representar a semântica da informação, independente de considerações de eficiência. D O objetivo NÃO É: Descrever a estrutura do armazenamento do banco de dados. I Um modelo conceitual deve ter: - clareza (facilidade de compreensão) - exatidão Modelo Semântico (Entidade-Relacionamento)

4 Modelagem Conceitual Abordagem Entidade-Relacionamento (ER)
Conjunto de técnicas para construir modelos conceituais de banco de dados Técnica de modelagem de dados mais difundida e utilizada Criada em 1976, por Peter Chen

5 Modelagem Conceitual Utilização de poucos conceitos
Abordagem Entidade-Relacionamento (ER), Principais Características: Utilização de poucos conceitos Excelente representação gráfica Facilidade de compreensão

6 Abordagem E-R Modelo de dados é representado através de
Modelo entidade-relacionamento (Modelo ER) Modelo ER é representado graficamente Diagrama entidade-relacionamento (DER) 31/03/2017

7 Abordagem E-R Conceitos Centrais
Entidade Relacionamento Atributo Generalização/especialização Entidade associativa 31/03/2017

8 Abordagem E-R Conceitos Centrais
Entidade Relacionamento Atributo Generalização/especialização Entidade associativa 31/03/2017

9 Entidade Conjunto de objetos da realidade modelada sobre os quais deseja-se manter informações no BD Exemplos: Sistema de informações industrial: Produtos; tipos de produtos; vendas; compras Sistema de contas correntes: Clientes; contas correntes; cheques; agências No DER: Representada através de um retângulo 31/03/2017

10 Entidade Propriedades
Entidade isoladamente não diz muito É necessário atribuir propriedades às entidades Em um modelo ER, propriedades são especificadas através de: Relacionamentos Atributos Generalizações/especializações 31/03/2017

11 Abordagem E-R Conceitos Centrais
Entidade Relacionamento Atributo Generalização/especialização Entidade associativa 31/03/2017

12 Relacionamentos Associações entre entidades sobre as quais deseja-se manter informações no BD 31/03/2017

13 Relacionamentos Diagrama de Ocorrências
31/03/2017

14 Auto-Relacionamentos
Associação entre uma entidade e ela mesma 31/03/2017

15 Auto-relacionamento

16 Relacionamentos Cardinalidades
Propriedade importante de um relacionamento: Número de ocorrências de uma entidade que podem estar associadas outra ocorrência de entidade através do relacionamento Há duas cardinalidades: Máxima Mínima 31/03/2017

17 Cardinalidades Máxima e Mínima
31/03/2017

18 Exercício 1 Confeccionar um DER que contemple as seguintes regras:
Cada cidade deve ter uma ou mais ruas. Cada rua deve estar em uma cidade Cada rua deve ter um ou mais prédios. Cada prédio deve estar em uma rua Cada prédio pode ter uma ou mais apartamentos. Cada apartamento deve estar em um prédio Cada apartamento pode ter um ou mais telefones. Cada telefone deve ser de um apartamento Cada rua deve estar localizada em um bairro. Cada bairro pode ter uma ou mais ruas 31/03/2017

19 Exercício 2 Fazer o DER de uma administradora de condomínios de imóveis Cada condomínio é formados por unidades condominiais Cada unidade condominial é de propriedade de uma ou mais pessoas. Uma pessoa pode possuir diversas unidades. Cada unidade pode ser alugada para no máximo uma pessoa. Uma pessoa pode alugar diversas unidades. 31/03/2017

20 Abordagem E-R Conceitos Centrais
Entidade Relacionamento Atributo Generalização/especialização Entidade associativa 31/03/2017

21 Atributos Dado ou informação que é associado a cada ocorrência de uma entidade ou de um relacionamento 31/03/2017

22 Atributos Cardinalidades
Cardinalidade mínima: Atributo obrigatório (cardinalidade mínima “1”) Atributo opcional (cardinalidade mínima “0”) Cardinalidade máxima: atributo mono-valorado (cardinalidade máxima “1”) atributo multi-valorado (cardinalidade máxima “n”) 31/03/2017

23 Atributos Cardinalidades
Mono-valorado Multi-valorado Opcional (0,1) (0,n) Obrigatório (1,1) (1,n) 31/03/2017

24 Atributos Cardinalidades
31/03/2017

25 Atributos Cardinalidades
31/03/2017

26 Atributos de Relacionamento
31/03/2017

27 Atributo Identificador
31/03/2017

28 Relacionamento Identificador
31/03/2017

29 Relacionamento Identificador
31/03/2017

30 Abordagem E-R Conceitos Centrais
Entidade Relacionamento Atributo Generalização/especialização Entidade associativa 31/03/2017

31 Generalização / Especialização
Atribuir propriedades particulares a um subconjunto das ocorrências (especializadas) de uma entidade genérica 31/03/2017

32 Generalização / Especialização
Entidade Genérica Atributo identificador na entidade genérica Herda as propriedades da entidade genérica Entidade Especializada

33 Especialização Total 31/03/2017

34 Especialização Parcial
31/03/2017

35 Abordagem E-R Conceitos Centrais
Entidade Relacionamento Atributo Generalização/especialização Entidade associativa 31/03/2017

36 Entidade Associativa Adicionar a informação de que medicamentos foram prescritos em uma consulta 31/03/2017

37 Entidade Associativa 31/03/2017

38 Entidade Associativa 31/03/2017

39 Modelagem Avançada 31/03/2017

40 Propriedades do Modelo ER
Modelo ER é um modelo formal Poder de expressão é limitado Equivalência entre modelos 31/03/2017

41 Modelo Formal Modelo preciso, não ambíguo
Diferentes leitores de um mesmo modelo ER devem sempre entender exatamente o mesmo DER pode ser usado como entrada a uma ferramenta CASE Fundamental: todos os envolvidos devem estar treinados na sua perfeita compreensão 31/03/2017

42 Poder de expressão limitado
Modelo ER apresenta apenas algumas propriedades de um banco de dados Foi concebido para o projeto da estrutura de um BD relacional Pouco poderoso para expressar restrições de integridade (regras de negócio) Ceça Moraes

43 Limitações do ER Exemplo
Ceça Moraes

44 Equivalência entre modelos
Dois modelos ER diferentes podem ser equivalentes Modelos equivalentes modelam a mesma realidade Para fins de projeto de BD, dois modelos ER são equivalentes se: geram o mesmo esquema de BD Ceça Moraes

45 Equivalência Exemplo Ceça Moraes

46 Equivalência Exemplo Ceça Moraes

47 Atributo x Entidade Relacionada
Como deve ser modelada a cor de um automóvel? Ceça Moraes

48 Atributo x Entidade Relacionada
Objeto está vinculado a outros objetos deve ser modelado como entidade Caso contrário pode ser modelado como atributo Conjunto de valores fixo (domínio fixo) Transações que modificam o objeto pode ser modelado como entidade 31/03/2017

49 Exercício 3 Deseja-se modelar os clientes de uma organização. Cada cliente possui um identificador, um nome, um endereço e um país. Discuta as vantagens e desvantagens das duas alternativas de modelagem de país: a) Como atributo da entidade cliente b) Como entidade relacionada a cliente. Ceça Moraes

50 Atributo x Generalização/Especialização
Questão: modelar um determinado objeto (por, exemplo, a categoria funcional de cada empregado de uma empresa) como atributo? categoria funcional como atributo da entidade EMPREGADO) ou como uma especialização? cada categoria funcional corresponde a uma especialização da entidade empregado Ceça Moraes

51 Atributo x Generalização/Especialização
Ceça Moraes

52 Atributo x Generalização/Especialização
Especialização deve ser usada quando as classes especializadas de entidades possuem atributos relacionamentos Ceça Moraes

53 Atributo Opcional Atributos opcionais Exemplo:
Podem indicar entidades que são modelados mais corretamente através de especializações Exemplo: Ceça Moraes

54 Atributo Opcional Ceça Moraes

55 Atributo Multivalorado
É indesejável Não tem boa implementaçã com SGBD relacional N colunas??!?! Atributos multivalorados podem induzir a um erro de modelagem Ocultar entidades e relacionamentos em atributos multivalorados Ceça Moraes

56 Atributo Multivalorado Eliminação
Ceça Moraes

57 Exercício 4 Apresente um diagrama ER que modele mais precisamente esta realidade. 31/03/2017

58 Modelo deve ser livre de redundâncias
Modelo deve ser mínimo, não deve conter conceitos redundantes Tipos de redundância: Relacionamentos e/ou Atributos redundantes Alternativas não devem aparecer no modelo ou devem aparecer indicadas como redundantes BD redundância controlada de dados (melhoria de performance) Ceça Moraes

59 Relacionamentos Redundantes
31/03/2017

60 Relacionamentos Redundantes
31/03/2017

61 Relacionamentos Redundantes
31/03/2017

62 Relacionamentos Redundantes
31/03/2017

63 Atributos Redundantes
31/03/2017

64 Aspectos Temporais Dados temporais Tipos de dados temporais
dados que mudam ao longo do tempo e para as quais BD mantém histórico Tipos de dados temporais Atributos cujos valores modificam ao longo do tempo Relacionamentos que modificam ao longo do tempo Decisão de modelagem: Manter ou não o histórico Ceça Moraes

65 Atributos temporais Ceça Moraes

66 Relacionamento 1:1 temporal
Ceça Moraes

67 Relacionamento 1:n temporal
Ceça Moraes

68 Relacionamento n:n temporal
No segundo caso o atributo identificador passa a distinguir as inscrições de uma pessoa em um curso (só pode haver uma inscrição por dia) Ceça Moraes

69 Dados do passado.... Muitas vezes, informações referentes ao passado são eliminadas da base de dados Podem ser necessárias no futuro por motivos legais para realização de auditorias para tomada de decisões Ceça Moraes

70 Notações e Variantes do ER
Peter Chen (acadêmica) Engenharia de Informações UML Merise (notação Européia) Ceça Moraes

71 Notação Engenharia de Informações
Ceça Moraes

72 subtipoEngenharia de informaçõess de entidades
Ceça Moraes

73 Exercício 5 Transformar o modelo ER resultante do Exercício 4 para a notação Engenharia de Informações Ceça Moraes

74 Reserva de passagens aéreas (1)
O objetivo do trabalho é projetar um sistema de reservas para uma companhia de aviação. O sistema contará com um banco de dados central, que será acessado por aplicações clientes, rodando tanto dentro da própria companhia, quanto fora dela. A transação central do sistema é a reserva. Uma reserva é identificada por um código gerado pelo sistema em computador. A reserva é feita para um único passageiro, do qual se conhece apenas o nome. A reserva compreende um conjunto de trechos de vôos, que acontecerão em determinada data/hora. Para cada trecho, a reserva é feita em uma classe (econômica, executiva, etc.). Ceça Moraes

75 Reserva de passagens aéreas (2)
Um vôo é identificado por um código e possui uma origem e um destino. Por exemplo, o vôo 595 sai de Porto Alegre com destino a São Paulo. Um vôo é composto de vários trechos, correspondendo às escalas intermediárias do vôo. Por exemplo, o vôo 595 é composto de dois trechos, um de Porto Alegre a Londrina, o outro de Londrina a São Paulo. Cabe salientar que há cidades que são servidas por vários aeroportos. Por isso, é importante informar ao passageiro que faz a reserva, qual é o aeroporto no qual o vôo passa Às vezes os clientes, ao fazer a reserva querem saber qual é o tipo de aeronave que será utilizada em determinado trecho de vôo. Alguns poucos vôos, principalmente internacionais, têm troca de aeronave em determinadas escalas. Ceça Moraes

76 Reserva de passagens aéreas (3)
Nem todos vôos operam em todos dias de semana. Inclusive, certos vôos têm pequenas mudanças de horário em certos dias da semana. Cada reserva possui um prazo de validade. Caso os bilhetes não tenham sido emitidos, até esgotar-se o prazo da reserva, a mesma é cancelada. Reservas podem ser prorrogadas. Ceça Moraes

77 Reserva de passagens aéreas (4)
Como o “check-in” de todos os vôos está informatizado, a companhia possibilita a reserva de assento para o passageiro. Reservas de assento podem ser feitas com até três meses de antecedência Além de efetivar reservas, o sistema deve servir para vários tipos de consultas que os clientes podem querer fazer: possibilidades de viagem de uma cidade ou de um aeroporto para outro o mesmo, mas restrito a determinados dias da semana horários de chegada ou de saída em determinados vôos disponibilidade de vagas em um trecho de vôo Ceça Moraes

78 Reserva de passagens aéreas entidades
COMPANHIA, RESERVA, PASSAGEIRO, TRECHO, VOO, CIDADE, AEROPORTO, TIPO-AERONAVE, HORARIO, ASSENTO Não foi criada uma entidade Passageiro para as pessoas que efetivaram a reserva Apenas o nome = atributo da reserva problema de homônimos Ceça Moraes

79 Reserva de Passagens Aéreas relacionamentos
Ceça Moraes

80 Reserva de Passagens Aéreas Atributos e Identificadores
RESERVA: codigo reserva, passageiro,prazo VOO: número TRECHO: () AEROPORTO: código, nome CIDADE:código, nome, país TIPO AERONAVE: código, descrição HORARIO: dia semana, horário partida, horário chegada ASSENTO: número,classe RESERVA-TRECHO: data Ceça Moraes

81 Reserva de Passagens Aéreas Restrições de Integridade
Uma reserva de trecho somente pode ser realizada caso existam vagas no trecho em questão na data em questão. Uma reserva para um assento somente pode ser feita, se o assento em questão existir no tipo de aeronave utilizada no trecho de vôo em questão. Ceça Moraes

82 Reserva de Passagens Aéreas Redundância e Performance
Observação geral solução adotada é conceitual não inclui redundâncias de dados que objetivem melhorar a performance não contém atributos redundantes Ceça Moraes

83 Referências Projeto de Banco de Dados – Carlos Alberto Heuser, Capítulos 2 e 3 31/03/2017


Carregar ppt "Projeto de Banco de Dados"

Apresentações semelhantes


Anúncios Google