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

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

PROJETO DE BANCO DE DADOS Ceça Moraes – Dezembro/2009.

Apresentações semelhantes


Apresentação em tema: "PROJETO DE BANCO DE DADOS Ceça Moraes – Dezembro/2009."— Transcrição da apresentação:

1 PROJETO DE BANCO DE DADOS Ceça Moraes – Dezembro/2009

2 Modelagem Conceitual

3 3  O objetivo É: Representar a semântica da informação, independente de considerações de eficiência.  O objetivo NÃO É: Descrever a estrutura do armazenamento do banco de dados.  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 4

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

6 Abordagem E-R  Modelo de dados é representado através de  Modelo entidade-relacionamento (Modelo ER)  Modelo ER é representado graficamente  Diagrama entidade-relacionamento (DER) 7/9/2014 6

7 Abordagem E-R Conceitos Centrais  Entidade  Relacionamento  Atributo  Generalização/especialização  Entidade associativa 7/9/2014 7

8 Abordagem E-R Conceitos Centrais  Entidade  Relacionamento  Atributo  Generalização/especialização  Entidade associativa 7/9/2014 8

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 7/9/2014 9

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 10 7/9/2014

11 Abordagem E-R Conceitos Centrais  Entidade  Relacionamento  Atributo  Generalização/especialização  Entidade associativa 7/9/ 

12 Relacionamentos  Associações entre entidades sobre as quais deseja-se manter informações no BD 7/9/

13 Relacionamentos Diagrama de Ocorrências 7/9/

14 Auto-Relacionamentos  Associação entre uma entidade e ela mesma 7/9/

15 Auto-relacionamento 15

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 7/9/

17 Cardinalidades Máxima e Mínima 7/9/

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 7/9/

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. 7/9/

20 Abordagem E-R Conceitos Centrais  Entidade  Relacionamento  Atributo  Generalização/especialização  Entidade associativa 7/9/  

21 Atributos  Dado ou informação que é associado a cada ocorrência de uma entidade ou de um relacionamento 7/9/

22 Atributos Cardinalidades 7/9/  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”)

23 Atributos Cardinalidades 7/9/ Mono-valoradoMulti-valorado Opcional(0,1)(0,n) Obrigatório(1,1)(1,n)

24 Atributos Cardinalidades 7/9/

25 Atributos Cardinalidades 7/9/

26 Atributos de Relacionamento 7/9/

27 Atributo Identificador 7/9/

28 Relacionamento Identificador 7/9/

29 Relacionamento Identificador 7/9/

30 Abordagem E-R Conceitos Centrais  Entidade  Relacionamento  Atributo  Generalização/especialização  Entidade associativa 7/9/   

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

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

33 Especialização Total 7/9/

34 Especialização Parcial 7/9/

35 Abordagem E-R Conceitos Centrais  Entidade  Relacionamento  Atributo  Generalização/especialização  Entidade associativa 7/9/    

36 Entidade Associativa  Adicionar a informação de que medicamentos foram prescritos em uma consulta 7/9/

37 Entidade Associativa 7/9/

38 Entidade Associativa 7/9/

39 Modelagem Avançada 7/9/

40 Propriedades do Modelo ER  Modelo ER é um modelo formal  Poder de expressão é limitado  Equivalência entre modelos 7/9/

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 7/9/

42 Ceça Moraes 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)

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

44 Ceça Moraes 44  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 Equivalência entre modelos

45 Ceça Moraes 45 Equivalência Exemplo

46 Ceça Moraes 46 Equivalência Exemplo

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

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)  pode ser modelado como atributo  Transações que modificam o objeto  pode ser modelado como entidade 7/9/

49 Ceça Moraes 49  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. Exercício 3

50 Ceça Moraes 50  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 Atributo x Generalização/Especialização

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

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

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

54 Ceça Moraes 54 Atributo Opcional

55 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

56 Ceça Moraes 56 Atributo Multivalorado Eliminação

57 Exercício 4  Apresente um diagrama ER que modele mais precisamente esta realidade. 7/9/

58 Ceça Moraes 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)

59 Relacionamentos Redundantes 7/9/

60 Relacionamentos Redundantes 7/9/

61 Relacionamentos Redundantes 7/9/

62 Relacionamentos Redundantes 7/9/

63 Atributos Redundantes 7/9/

64 Ceça Moraes 64  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 Aspectos Temporais

65 Ceça Moraes 65 Atributos temporais

66 Ceça Moraes 66 Relacionamento 1:1 temporal

67 Ceça Moraes 67 Relacionamento 1:n temporal

68 Ceça Moraes 68 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) Relacionamento n:n temporal

69 Ceça Moraes 69  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 Dados do passado....

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

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

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

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

74 Ceça Moraes 74  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.). Reserva de passagens aéreas (1)

75 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.

76 Ceça Moraes 76  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. Reserva de passagens aéreas (3)

77 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

78 Ceça Moraes 78  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 Reserva de passagens aéreas entidades

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

80 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

81 Ceça Moraes 81  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. Reserva de Passagens Aéreas Restrições de Integridade

82 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

83 Referências  Projeto de Banco de Dados – Carlos Alberto Heuser, Capítulos 2 e 3 7/9/


Carregar ppt "PROJETO DE BANCO DE DADOS Ceça Moraes – Dezembro/2009."

Apresentações semelhantes


Anúncios Google