BCD29008 Banco de dados

Documentos relacionados
BCD29008 Banco de dados

BCD29008 Banco de dados

MODELAGEM DE DADOS UNIDADE 2 Projeto de Banco de Dados. Luiz Leão

MATA60 BANCO DE DADOS Aula 3- Modelo de Entidades e Relacionamentos. Prof. Daniela Barreiro Claro

Unidade 3 23/10/2008. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Redes de Computadores

BCD29008 Banco de dados

BCD29008 Banco de dados

Revisando Banco de Dados. Modelo Relacional

Banco de Dados I Modelagem Conceitual

18/03/2012. Independência de Dados: capacidade de modificar a definição dos esquemas em. determinado nível, sem afetar o esquema do nível superior;

Modelo de Dados Wendel Melo

Modelos. Banco de dados. Professor: Jarbas Araújo CENTRO EDUCACIONAL RADIER.

Banco de Dados. Modelagem de Dados. Prof.: Salustiano Rodrigues

Banco de Dados Modelagem Conceitual de Dados. Prof. Edjandir Corrêa Costa

12.4 DER Mais sobre Cardinalidade DER Mais sobre Cardinalidade DER Mais sobre Cardinalidade DER Mais sobre Cardinalidade

Modelos e SGBDs MODELAGEM DE DADOS. Esquema de banco de dados. Modelos de Dados. Modelo de Dados (níveis de abstração) Modelo conceitual

Unidade 4 Projeto de Banco de Dados

Transformação ER para modelo relacional

Banco de Dados Modelagem de Dados. Prof. Joel da Silva

Banco de Dados I Parte I: Introdução

Modelo Relacional. Aula 02

Arquitetura dos SBDs Características e Benefícios Visão Geral de Projeto de BD MER: Entidades e Atributos Atividade.

Banco de Dados. Aula 3 - Prof. Bruno Moreno 26/08/2011

MODELAGEM DE DADOS PARTE 2

Fundamentos de Banco de Dados e Modelagem de Dados

Modelagem semântica permite aproximar o modelo obtido do mundo real Exemplo de modelos:

SISTEMA DE INFORMAÇÃO Modelo Conceitual. Prof. Luiz Fernando Laguardia Campos FMS

MODELAGEM DE DADOS PARTE 1

Modelagem Conceitual parte I

Unidade 2 Modelo Conceitual

Modelagem Conceitual parte I

SUMÁRIO. Introdução Modelo de Dados Esquema Geral de Modelagem de BD; ME-R: Conceitos gerais; DE-R Representação e exemplos.

SISTEMA DE INFORMAÇÃO MODELAGEM DE DADOS

MER e DER Entidades Relacionamentos Atributos Ferramentas CASE Exemplos de DERs Exemplo de Minimundo. Banco de Dados. Aula 1.

SUMÁRIO. Restrições de Integridade Dicionário de Dados Relacionamentos n-ários Generalização/Especialização em DER

Modelagem de dados usando MER. Andre Noel

Bancos de Dados Aula #2 - Modelos Conceituais de Dados

SEMINÁRIOS INTEGRADOS EM SISTEMAS DE INFORMAÇÃO. Luiz Leão

Modelagem Conceitual e o Modelo Entidade-Relacionamento

Análise Estruturada. Modelagem de Software Prof. Flávio de Oliveira Silva, Ph.D.

Modelo Entidade- Relacionamento

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

Banco de Dados I 2007 Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 1) Clodis Boscarioli

Ciclo de Desenvolvimento de BD

Modelo Relacional. Relacionamento. Processo de Projeto de. Programa. Modelo Entidade Relacionamento

Introdução ao Modelo Relacional

Banco de Dados Modelagem e Normalização

INE 5623 Projeto de Banco de Dados

INTRODUÇÃO AO MODELO RELACIONAL

Análise e Projeto de Sistemas

Faculdade Ieducare 4º Semestre Sistemas de Informação Professor: Rhyan Ximenes

MER Modelo de entidade e Relacionamento. Prof. Me. Hélio Esperidião

Banco de Dados II. Prof. Fiorin

O MODELO ENTIDADE RELACIONAMENTO. Tiago Alves de Oliveira

MODELO DE BANCO DE DADOS RELACIONAL

MODELO RELACIONAL PARTE 2

PLANO DE ENSINO. PRÉ-REQUISITO: Modelagem e Programação Orientada a Objetos. PROFESSORA RESPONSÁVEL: Roberta Macêdo Marques Gouveia

Chave alternativa. Angélica Toffano Seidel Calazans Abordagem Relacional

Introdução. Modelo de dados conceitual para o projeto de BD

Banco de Dados Introdução. Profa.Ms.Denise Neves

Revisão de Bancos de Dados

MODELO RELACIONAL DE UM SISTEMA DE GERENCIAMENTO DE VAGAS DE ESTÁGIO

Aula 2 Abordagem Entidade-Relacionamento Cleverton Hentz

BANCO DE DADOS. Araújo Lima. Ago / Araújo

8/9/2008. Curso Superior de Tecnologia em Bando de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1/64

Sistemas de Banco de Dados

Modelagem de dados usando o modelo Entidade- Relacionamento (ER)

MATA60 BANCO DE DADOS Aula 5- Modelo Relacional. Prof. Daniela Barreiro Claro

Banco de Dados I Curso: Sistemas de Informação

Aula 01 Conceito de Banco de Dados e SGBD

PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL. Prof. Angelo Augusto Frozza, M.Sc.

Modelo Entidade- Relacionamento. Hugo Barros

Análise e projeto de sistemas

Computação Instrumental

Especificação de Sistemas de Software e a UML

Banco de Dados. André Luís Duarte Capítulo 2. exatasfepi.com.br

P R O J E T O: C A R N A V A L. 2. Informações Básicas sobre o Sistema a ser Desenvolvido

Análise e Projeto Orientados a Objetos

GBD PROF. ANDREZA S. AREÃO

Modelagem Orientada a Objeto

MODELO ENTIDADE - RELACIONAMENTO

Modelo Lógico: Tabelas, Chaves Primárias e Estrangeiras

Laboratório de Banco de Dados. Prof. Luiz Vivacqua.

BANCO DE DADOS. Bacharelado em Sistemas de Informação MODELAGEM DE DADOS. Profº Luciano Roberto Rocha. Itararé, 2º período

Marcelo Henrique dos Santos

PROJETO: CONFERÊNCIA ACADÊMICA. 2. Informações Básicas sobre o Sistema a ser Desenvolvido

Banco de Dados I Parte II a: Abordagem Entidade-Relacionamento

Banco de Dados. Aula 4 - Prof. Bruno Moreno 02/09/2011

INE 5423 Banco de Dados I

AULA 3 Classificação dos Sistemas de Informação

ANÁLISE E PROJETO DE BANCO DE DADOS

INF1012 MODELAGEM DE DADOS

Abordagem relacional. Capítulo 4

Modelagem de Dados (Estrutura Relacional)

Banco de Dados. Sistemas de Informação Engenharia de Produção

Modelagem de Casos de Uso (Parte 1)

Transcrição:

BCD29008 Banco de dados Modelo Entidade-Relacionamento (ER) Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 04 de agosto de 2017 1/21

A modelagem é necessária? Modelo de software Representação das características de funcionamento e comportamento que ajudarão no entendimento do software a ser desenvolvido 2/21

A modelagem é necessária? Modelo de software Representação das características de funcionamento e comportamento que ajudarão no entendimento do software a ser desenvolvido Desejamos desenvolver um sistema acadêmico e precisamos armazenar dados sobre Alunos Funcionários Cursos Campus Quais informações seriam relevantes para serem armazenadas? Como essas informações estariam organizadas? 2/21

Projeto de banco de dados Fases de um projeto 1 Modelagem conceitual Captura necessidades da organização em termos de armazenamento e não depende do SGBD 2 Projeto lógico Transforma modelo conceitual em uma implementação dependente do SGBD 3 Projeto físico Ajustes para melhorar o desempenho do banco de dados, porém sem influenciar as funcionalidades Geralmente trata-se de um processo contínuo, também chamado de sintonia do banco de dados (tuning) 3/21

Modelo de banco de dados Modelo de banco de dados Descrição dos tipos de informações que são armazenadas em um banco de dados Modelo é construído por meio de uma linguagem de modelagem de dados, que pode ser textual ou gráfica A representação de um modelo de dados por meio de uma linguagem de modelagem de dados é chamada de esquema de banco de dados 4/21

Modelo conceitual Modelo conceitual Indica quais dados podem aparecer em um banco de dados, mas não indica como esses estão armazenados pelo SGBD 5/21

Modelo conceitual Modelo conceitual Indica quais dados podem aparecer em um banco de dados, mas não indica como esses estão armazenados pelo SGBD Modelagem entidade-relacionamento (ER) é a técnica mais difundida de modelagem conceitual 5/21

Modelo lógico Modelo lógico Descrição de um banco de dados no nível de abstração visto pelo usuário do SGBD Em um SGBD relacional os dados estão organizados na forma de tabelas 6/21

Modelo lógico Modelo lógico Descrição de um banco de dados no nível de abstração visto pelo usuário do SGBD Em um SGBD relacional os dados estão organizados na forma de tabelas 6/21

Modelagem Entidade-Relacionamento (ER) 7/21

Entidades Entidade é uma coisa ou objeto do mundo real que é distinguível de todos os outros objetos Conjunto de entidades reúne entidades do mesmo tipo que compartilham as mesmas propriedades ou atributos 7/21

Atributos Atributos descrevem características das entidades Para cada atributo da entidade existe um conjunto de valores permitidos, chamado de domínio Valor nulo (NULL) é membro de qualquer domínio e indica que o valor é desconhecido ou não existe Elipse dupla indica que o atributo permite múltiplos valores 8/21

Atributos Exercício Identifique os atributos da entidade Livro 8/21

Atributos: Superchave Superchave Conjunto de atributos que pode ser usado para identificar unicamente uma entidade Superchaves possíveis: 9/21

Atributos: Superchave Superchave Conjunto de atributos que pode ser usado para identificar unicamente uma entidade Superchaves possíveis: {matricula} {matricula, nome} {matricula, cpf }, etc. 9/21

Atributos: Superchave Superchave Conjunto de atributos que pode ser usado para identificar unicamente uma entidade Superchaves possíveis: {matricula} {matricula, nome} {matricula, cpf }, etc. Exercício Identifique as superchaves possíveis para a entidade Livro 9/21

Atributos: Chave Chave Superchave da qual não se pode remover quaisquer atributos do conjunto e ainda assim manter a restrição de identificar unicamente uma entidade Quando houver mais de uma chave, essas são chamadas de chave candidata Chaves candidatas possíveis: 10/21

Atributos: Chave Chave Superchave da qual não se pode remover quaisquer atributos do conjunto e ainda assim manter a restrição de identificar unicamente uma entidade Quando houver mais de uma chave, essas são chamadas de chave candidata Chaves candidatas possíveis: {matricula}, {cpf } 10/21

Atributos: Chave Chave Superchave da qual não se pode remover quaisquer atributos do conjunto e ainda assim manter a restrição de identificar unicamente uma entidade Quando houver mais de uma chave, essas são chamadas de chave candidata Chaves candidatas possíveis: {matricula}, {cpf } Exercício Identifique as chaves candidatas possíveis para a entidade Livro 10/21

Atributos: Chave primária Chave primária (primary key pk) é uma chave candidata escolhida como principal meio para identificar uma entidade A representação de uma chave primária no diagrama ER é feita sublinhando o atributo escolhido 11/21

Relacionamentos Definição matemática (teoria dos conjuntos): Produto cartesiano Dados dois conjuntos, A e B o produto cartesiano desses conjuntos (A B) é o conjunto com todos os pares de ambos conjuntos 12/21

Relacionamentos Definição matemática (teoria dos conjuntos): Produto cartesiano Dados dois conjuntos, A e B o produto cartesiano desses conjuntos (A B) é o conjunto com todos os pares de ambos conjuntos Relacionamento Relacionamento é um subconjunto de A B 12/21

Relacionamentos Relacionamento Associação entre Entidades Relacionamento: FAZ subconjunto de Aluno Curso Uma entidade pode aparecer 0, 1 ou mais vezes no relacionamento A combinação de entidades (i.e. João Tele) só pode aparecer uma única vez 13/21

Relacionamentos Exercício Identifique um relacionamento entre a entidade Livro e uma outra a ser escolhida por você 13/21

Relacionamentos podem possuir Atributos 14/21

Relacionamentos podem possuir Atributos Chave de um relacionamento Pode ser constituída pela união das chaves primárias das entidades participantes 14/21

Cardinalidade de relacionamentos Cardinalidade máxima Indica quantas vezes uma dada entidade poderá aparecer em um relacionamento Um aluno pode fazer quantos cursos? Um curso pode ter quantos alunos? 15/21

Cardinalidade de relacionamentos Cardinalidade máxima Indica quantas vezes uma dada entidade poderá aparecer em um relacionamento Um professor pode ser orientador de quantos alunos? Um aluno pode ter quantos orientadores? 15/21

Cardinalidade de relacionamentos 16/21

Cardinalidade de relacionamentos Um-para-um: Um professor pode orientar no máximo um Aluno Um Aluno pode ser orientado por no máximo um Professor 16/21

Cardinalidade de relacionamentos Um-para-muitos: Um professor pode orientar muitos Alunos Um Aluno pode ser orientado por no máximo um Professor 16/21

Cardinalidade de relacionamentos Muitos-para-um: Um professor pode orientar no máximo um Aluno Um Aluno pode ser orientado por muitos Professores 16/21

Cardinalidade de relacionamentos Muitos-para-muitos: Um professor pode orientar muitos Alunos Um Aluno pode ser orientado por muitos Professores 16/21

Cardinalidade de relacionamentos Exemplos 1 Alunos e Disciplinas Cada aluno pode fazer várias disciplinas e cada disciplina pode ter vários alunos 2 Sala de cinema e Filme Cada sala de cinema para exibir diversos filmes e cada filme pode ser exibido em diversas salas de cinemas 3 Hotel e hóspedes O quarto de um hotel pode ser reservado por diversos hóspedes e um hóspede pode reservar diversos quartos 17/21

Cardinalidade de relacionamentos Exemplos 1 Alunos e Disciplinas Cada aluno pode fazer várias disciplinas e cada disciplina pode ter vários alunos 2 Sala de cinema e Filme Cada sala de cinema para exibir diversos filmes e cada filme pode ser exibido em diversas salas de cinemas 3 Hotel e hóspedes O quarto de um hotel pode ser reservado por diversos hóspedes e um hóspede pode reservar diversos quartos Exercício Apresente a cardinalidade para o relacionamento entre a entidade Livro e a outra entidade que você escolheu no exercício anterior (lâmina 13) 17/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados Desenhe um diagrama E-R para uma seguradora de automóveis em que cada cliente possua um ou mais carros. Cada carro tem associado a ele zero ou mais acidentes registrados. Cada apólice de seguro cobre um ou mais carros e tem um ou mais pagamentos de prêmios associadas a ela. Cada pagamento tem uma data de vencimento associada, além da data em que o pagamento foi recebido. 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados Desenhe um diagrama E-R para uma seguradora de automóveis em que cada cliente possua um ou mais carros. Cada carro tem associado a ele zero ou mais acidentes registrados. Cada apólice de seguro cobre um ou mais carros e tem um ou mais pagamentos de prêmios associadas a ela. Cada pagamento tem uma data de vencimento associada, além da data em que o pagamento foi recebido. 1 Encontrar as entidades (normalmente os substantivos) 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados Desenhe um diagrama E-R para uma seguradora de automóveis em que cada cliente possua um ou mais carros. Cada carro tem associado a ele zero ou mais acidentes registrados. Cada apólice de seguro cobre um ou mais carros e tem um ou mais pagamentos de prêmios associadas a ela. Cada pagamento tem uma data de vencimento associada, além da data em que o pagamento foi recebido. 1 Encontrar as entidades (normalmente os substantivos) 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados Desenhe um diagrama E-R para uma seguradora de automóveis em que cada cliente possua um ou mais carros. Cada carro tem associado a ele zero ou mais acidentes registrados. Cada apólice de seguro cobre um ou mais carros e tem um ou mais pagamentos de prêmios associadas a ela. Cada pagamento tem uma data de vencimento associada, além da data em que o pagamento foi recebido. 1 Encontrar as entidades (normalmente os substantivos) 2 Encontrar os relacionamentos (normalmente os verbos) 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados Desenhe um diagrama E-R para uma seguradora de automóveis em que cada cliente possua um ou mais carros. Cada carro tem associado a ele zero ou mais acidentes registrados. Cada apólice de seguro cobre um ou mais carros e tem um ou mais pagamentos de prêmios associadas a ela. Cada pagamento tem uma data de vencimento associada, além da data em que o pagamento foi recebido. 1 Encontrar as entidades (normalmente os substantivos) 2 Encontrar os relacionamentos (normalmente os verbos) 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados Desenhe um diagrama E-R para uma seguradora de automóveis em que cada cliente possua um ou mais carros. Cada carro tem associado a ele zero ou mais acidentes registrados. Cada apólice de seguro cobre um ou mais carros e tem um ou mais pagamentos de prêmios associadas a ela. Cada pagamento tem uma data de vencimento associada, além da data em que o pagamento foi recebido. 1 Encontrar as entidades (normalmente os substantivos) 2 Encontrar os relacionamentos (normalmente os verbos) 3 Encontrar os atributos (normalmente ficam expĺıcitos) 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados Desenhe um diagrama E-R para uma seguradora de automóveis em que cada cliente possua um ou mais carros. Cada carro tem associado a ele zero ou mais acidentes registrados. Cada apólice de seguro cobre um ou mais carros e tem um ou mais pagamentos de prêmios associadas a ela. Cada pagamento tem uma data de vencimento associada, além da data em que o pagamento foi recebido. 1 Encontrar as entidades (normalmente os substantivos) 2 Encontrar os relacionamentos (normalmente os verbos) 3 Encontrar os atributos (normalmente ficam expĺıcitos) 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados 18/21

Cardinalidade de relacionamentos Exercício 7.1 do livro Sistemas de banco de dados 18/21

Exercício: Chegou minha vez? Problema: Você já precisou de atendimento em uma loja de alguma operadora de telefonia celular? Ao chegar você recebe uma senha (em papel) e deve ficar olhando para uma TV esperando ser chamado. 19/21

Exercício: Chegou minha vez? Problema: Você já precisou de atendimento em uma loja de alguma operadora de telefonia celular? Ao chegar você recebe uma senha (em papel) e deve ficar olhando para uma TV esperando ser chamado. Solução desejada Cliente entra na loja física; abre o aplicativo móvel Chegou minha vez? ; escolhe qual o assunto que deseja atendimento e retira uma senha O aplicativo informa uma previsão de quando ele será atendido; Assim que estiver próximo de ser atendido o aplicativo avisa o cliente. Sendo assim, o cliente não precisará ficar esperando fisicamente na loja. Gerente do estabelecimento saberá a demanda para cada horário e tipo de assunto, algo que poderia ser usado para melhorar o atendimento aos seus clientes 19/21

Exercício: Chegou minha vez? Trabalho a ser desenvolvido 1 Crie um diagrama entidade-relacionamento (ER) que represente todas as informações necessárias para atender a lógica do negócio 2 Faça um diagrama UML de implantação para listar os componentes e a disposição dos mesmos Ex: Servidor de banco de dados, sistema de gestão, sistema gerador de senhas, etc Entrega: Discussão em sala de aula no dia 14/08/2017 Grupo com até 02 pessoas 20/21

Aulas baseadas em Henry F.; Sudarshan Silberschatz, Abraham; Korth. Sistemas de banco de dados. 6a. Edição - Editora Campus, 2012 Heuser, C. A. Projeto de banco de dados 6a. Edição - Editora Bookman, 2009 Sullivan, D. G. Computer Science Harvard University 21/21