Engenharia de Software



Documentos relacionados
Análise e Projeto de Sistemas

Chaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir:

Curso de Gestão em SI MODELAGEM DE DADOS. Rodrigo da Silva Gomes. (Extraído do material do prof. Ronaldo Melo - UFSC)

Abordagem relacional Capítulo 4

Núcleo de Pós Graduação Pitágoras

Modelo Relacional. 2. Modelo Relacional (Lógico)

Profa. Daniela Barreiro Claro

BANCO DE DADOS I AULA 6. Wlllamys Araújo willamysaraujo7@gmail.com

Técnicas e Linguagens para Banco de Dados I

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br. Aula 4. Prof. Rafael Dias Ribeiro.

I Requisitos de um modelo conceitual: - clareza (facilidade de compreensão) - exatidão (formal)

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

Prof. Alexandre Unterstell Banco de Dados I

Modelagem de Dados. Aula 04 Introdução ao Modelo Entidade- Relacionamento. Maxwell Anderson

Banco de Dados Transformação Modelo Conceitual para Lógico Relacional. Prof. Juliano Lucas Gonçalves

O modelo de dados relacional e as restrições de um banco de dados relacional

Aula VI -MODELO RELACIONAL

Modelo Entidade-Relacionamento

Universidade Paulista

Simulado Banco de Dados I Bimestre 1 Capítulo 1 Projeto Lógico de Banco de Dados

Aula II Introdução ao Modelo de Entidade-Relacionamento

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr

Modelagem de Dados e Conversão de Modelos. Frederico Damasceno Bortoloti freddb@ltc.ufes.br

descreve relacionamentos entre objetos de dados; conduz à modelagem de dados; atributos de cada objeto => Descrição de Objetos de Dados;

Aula 3 SBD Modelo Entidade Relacionamento Parte 1. Profa. Elaine Faria UFU

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios

MODELAGEM DE DADOS - NORMALIZAÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

Modelo de Dados. Modelos Conceituais

Unidade II ADMINISTRAÇÃO DE. Prof. Luiz Fernando de Lima Santos

Banco de Dados Modelo Conceitual, Lógico, Físico, Entidade- Relacionamento (ER) Hélder Nunes

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr waltenomartins@yahoo.

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER )

Modelo Entidade-Relacionamento

Exercícios de Modelagem de Dados - Disciplina: Banco de Dados

Conceitos Básicos de Banco de Dados

Modelagem de Dados MODELAGEM DE DADOS. Lista de Exercícios - AV02. Luiz Leão luizleao@gmail.com Lista de Exercícios AV1

Desenvolver o projeto conceitual de Banco de dados com a utilização do Modelo Entidade-Relacionamento.

Disciplina: Unidade III: Prof.: Período:

Tecnologias e Linguagens para Banco de Dados I. Expressão do Relacionamento. Expressão do Relacionamento

MEMOREX BANCO DE DADOS por Paulo Marcelo

LINGUAGEM DE BANCO DE DADOS

CICLO DE VIDA DE UM BD

Modelo Entidade - Relacionamento (ER ou MER) Parte 3

Modelo Entidade-Relacionamento DCC011. Modelo Entidade-Relacionamento. Processo de Projeto de Bancos de Dados

Lista de exercícios 01

Modelagem de dados usando o modelo BANCO DE DADOS 1º TRIMESTRE PROF. PATRÍCIA LUCAS

Modelo Entidade-Relacionamento

Modelo de Entidade e Relacionamento (MER) - Parte 07

UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA. Projeto de GDI. Definição do Minimundo

Modelagem de Dados UNIDADE DE REVISÃO E RECUPERAÇÃO

Projeto de Banco de Dados. Disciplina: Banco de Dados I José Antônio da Cunha

Modelo Relacional. Aécio Costa

Microsoft Access INTRODUÇÃO. Sumário INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO. O que é Banco de Dados?

Prof.: Clayton Maciel Costa

Modelo de Dados Relacional Restrições de um Banco de Dados Relacional

Modelo de Dados. Modelo para organização dos dados de um BD

MODELAGEM DE DADOS MODELAGEM DE DADOS. rafaeldiasribeiro.com.br 04/08/2012. Aula 7. Prof. Rafael Dias Ribeiro.

Banco de Dados. Aula 5 - Prof. Bruno Moreno 06/09/2011

Banco de Dados. Profª. Ana Leda

BANCO DE DADOS I AULA 3. Willamys Araújo

Banco de Dados Modelo Entidade-Relacionamento. Frederico D. Bortoloti

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

BANCO DE DADOS. Ferramenta ERWin Parte 1. Introdução. Engenharia da Computação UNIVASF. Aula 9. Formas de trabalho. Formas de trabalho

MODELAGEM DE DADOS. Banco de Dados I. O uso da análise e do projeto Orientados a Objetos atenuou a separação! Unidade I

DISCIPLINAS DO CURSO INFORMÁTICA ÊNFASE GESTÃO DE NEGÓCIOS. PROFESSOR: DOUGLAS DUARTE DISCIPLINA: BDA1-3º SEMESTRE. Modelagem de Dados

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)

Banco de Dados para Redes. Cassio Diego cassiodiego.com/bdr

Tradução de Entidade. Tradução de Relacionamentos 1:1. Tradução de Relacionamentos 1:1. Empregado. Empregado (CPF, Nome, Salário) CPF Nome Salário

Captação de Dados para o Sistema

Lista de Exercício Resolvido 01 Modelagem Conceitual parte I

rafaeldiasribeiro.com.br 04/08/2012 MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS Aula 8

Roteiro. Modelagem de Dados: Usando o Modelo Entidade-Relacionamento. BCC321 - Banco de Dados I. Processo de Projeto de Banco de Dados.

Funcionários. Funcionários. PrimeiroNome NomesDoMeio ÚltimoNome. CPF Nome Salário. CPF PrimeiroNome NomesDoMeio ÚltimoNome Salário

Propriedades de entidades

O Modelo de Entidade Relacionamento (ER ou MER) Parte 1

MC536 Bancos de Dados: Teoria e Prática

ENGENHARIA DA COMPUTAÇÃO BANCO DE DADOS I CONTEÚDO 5 ABORDAGEM RELACIONAL

RELATÓRIO DA LISTEX N.º 5. Integração dos Aplicativos de Banco de Dados MEC, JRN e IDN no Banco de Dados Setorial MNCH e sua Implementação.

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados

Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI

ENGENHARIA DA COMPUTAÇÃO CONTEÚDO 4 GENERALIZAÇÃO E ENTIDADE ASSOCIATIVA. Prof. Msc. Ricardo Antonello BANCO DE DADOS I

Banco de Dados - Senado

1. Introdução ao Modelo Entidade-Relacionamento (MER)

CEFET.PHB - PI. Plano de Ensino. Banco de Dados. Plano de Ensino. Plano de Ensino. Plano de Ensino - Conteúdo. Plano de Ensino - Conteúdo

Modelo Relacional. Modelo Relacional. Tabelas

Modelos de Armazenamento de dados. Prof. Guilherme Tomaschewski Netto

SISTEMAS DE INFORMAÇÃO GERENCIAIS

Apostila de Banco de Dados

Dados. Qualquer elemento (aspecto, fato, medida etc.) representativo, disponível e coletável na realidade. fatos no estado bruto, conforme Platão;

Bancos de Dados Exercícios de Modelagem Entidade Relacionamento

Transformações entre Modelos

Casos de Uso. Professor MSc Wylliams Barbosa Santos wylliams.wordpress.com Laboratório de Programação

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

Nome Número: Série. Relacionamentos

Oficina. Praça das Três Caixas d Água Porto Velho - RO

Generalização e Especialização Banco de Dados

Modelagem com UML. Fabio Perez Marzullo. IEEE Body of Knowledge on Services Computing Committee on Services Computing, IEEE Computer Society

Transcrição:

Prof. M.Sc. Ronaldo C. de Oliveira ronaldooliveira@facom.ufu.br FACOM - 2011

Modelagem de Dados Modelo de Entidade- Relacionamento

Conceitos Principais Entidade: Uma entidade é algo do mundo real que possui uma existência independente. Uma entidade pode ser um objeto com uma existência física - uma pessoa, carro ou empregado - ou pode ser um objeto com existência conceitual - uma companhia, um trabalho ou um curso universitário. Atributos: Características peculiares das entidades ou dos relacionamentos. Ronaldo C. Oliveira 3

Relacionamentos: representa a Interdependência entre as entidades definidas em um modelo. Um tipo de relacionamento R entre n tipos de entidades E1, E2,..., En é um conjunto de associações entre entidades desses tipos. Diz-se que cada entidade E1, E2,..., En participa no tipo de relacionamento R e que as entidades individuais e1, e2,..., en participam na instância do relacionamento ri=(e1, e2,..., en). Ronaldo C. Oliveira 4

Exemplo Relacionamento Binário Ronaldo C. Oliveira 5

Exemplo Relacionamento Ternário Ronaldo C. Oliveira 6

Exemplo Auto-Relacionamento Ronaldo C. Oliveira 7

Exemplo Relacionamento Binário 1:1 Ronaldo C. Oliveira 8

Exemplo Relacionamento Binário M:N Ronaldo C. Oliveira 9

Notações: Chen IDEF1X IE Ronaldo C. Oliveira 10

Notação Chen cod-dept cod-emp DEPARTAMENTO 1 possui (0,N) EMPREGADO nome-dept nome-emp Ronaldo C. Oliveira 11

Notação Chen Componentes Ronaldo C. Oliveira 12

Notação EI DEPARTAMENTO possui EMPREGADO DEPARTAMENTO Cod-Dept (PK) Nome-Dept possui EMPREGADO Cod-Emp (PK) Nome-Emp Ronaldo C. Oliveira 13

Notação IDEF1X DEPARTAMENTO possui EMPREGADO DEPARTAMENTO Cod-Dept (PK) Nome-Dept possui EMPREGADO Cod-Emp (PK) Nome-Emp Ronaldo C. Oliveira 14

Baseado em Relações (tabelas), relacionamentos e chaves Relação (tabela): Conjunto de tuplas com as mesmas características Tupla: Linha ou registro de uma relação Atributo: Coluna de uma relação Domínio: Conjunto de valores que um atributo pode assumir Ronaldo C. Oliveira 15

Atributos B1 B2 B3 B4 1b zzz kkk 2a 2b zzz kkk 2a 3b zzz kkk 3a Tuplas 4b zzz kkk 4a 5b zzz kkk 4a 6b zzz kkk 2a 7b zzz kkk 1a 8b zzz kkk 10a Campo 9b zzz kkk 20a Ronaldo C. Oliveira 16

Chaves e Índices Chave Candidata Chave Primária Chave Artificial Chave Estrangeira Índice Alternativo s/ Repetição Índice Alternativo c/ Repetição Ronaldo C. Oliveira 17

Chave Candidata Conjunto de atributos capaz de identificar unicamente uma tupla (ou instância) da tabela Propriedades: Não Nulo Sem Repetição FORNECEDOR Fornecedor Nome Fantasia Fornecedor Razão Social Fornecedor CGC Fornecedor Endereço Fornecedor Telefone Fornecedor Fax Fornecedor e-mail Ronaldo C. Oliveira 18

Chave Primária É o campo ou atributo, chave candidata, escolhido que identifica unicamente cada instância da entidade. É este atributo que vai garantir que todas as instâncias da entidade são diferentes umas das outras. FORNECEDOR Fornecedor CGC Fornecedor Nome Fantasia Fornecedor Razão Social Fornecedor Endereço Fornecedor Telefone Fornecedor Fax Fornecedor e-mail Ronaldo C. Oliveira 19

Chave Artificial Atributo criado especialmente para ser PK: Não existem chaves candidatas entre os atributos da entidade Usado para agilizar a busca de informações no SGBD, por possuir uma menor quantidade de bytes. CLIENTE Cliente Código Cliente Nome (AK1) Cliente Endereço Cliente Filiação Cliente Data de Nascimento Ronaldo C. Oliveira 20

Chave Estrangeira FK Conjunto de atributos de uma tabela que referencia uma chave primária de outra tabela. Uma chave estrangeira é definida quando ocorre a migração da chave primária de uma outra entidade, indicando um relacionamento. Ronaldo C. Oliveira 21

Restrições de Chave: Integridade de Entidade: a chave primária não pode ser nula Integridade Referencial: o conteúdo da chave estrangeira, ou é nulo, ou deve referenciar um valor que existe na chave primária correspondente Ronaldo C. Oliveira 22

PK A1 A2 A3 1a xxx yyy 2a xxx yyy 3a xxx yyy 4a xxx yyy 5a xxx yyy 6a xxx yyy 7a xxx yyy 8a xxx yyy 9a xxx yyy 10a xxx yyy 11a xxx yyy 12a xxx yyy PK FK B1 B2 B3 A1 1b zzz kkk 2a 2b zzz kkk 2a 3b zzz kkk 3a 4b zzz kkk 4a 5b zzz kkk 4a 6b zzz kkk 2a 7b zzz kkk 1a 8b zzz kkk 10a 9b zzz kkk 20a Ronaldo C. Oliveira 23

Índices Alternativos Utilizados para otimização de consultas Todo índice é uma tabela contendo o conjunto de atributos indexado e um ponteiro para a linha correspondente da tabela Podem restringir a repetição de dados ou não Ronaldo C. Oliveira 24

Índice A3 P a a a b c c d d e g s t Tabela A1 A2 A3 A4 A5 A6 1 xxx b xxx xxx xxx 2 xxx c xxx xxx xxx 3 xxx d xxx xxx xxx 4 xxx d xxx xxx xxx 5 xxx a xxx xxx xxx 6 xxx a xxx xxx xxx 7 xxx g xxx xxx xxx 8 xxx t xxx xxx xxx 9 xxx s xxx xxx xxx 10 xxx e xxx xxx xxx 11 xxx a xxx xxx xxx 12 xxx c xxx xxx xxx Ronaldo C. Oliveira 25

Alternative Key (AK) - Índice Alternativo sem Repetição É um atributo chave candidato que não foi escolhido, por algum motivo, para ser chave primária de uma entidade, mas que foi escolhido como um meio de acesso alternativo para os registros. O índice do tipo alternate key (AK), assim como a chabe primária, não admite valores repetidos entre instâncias. Ronaldo C. Oliveira 26

Inverted Entity (IE) - Índice Alternativo com Repetição É um atributo que não possui características suficientes para ser uma chave primária, mas que é utilizado com freqüência no ambiente de negócios como meio de acesso rápido às informações de uma instância da entidade, mesmo que este atributo possua o mesmo valor para instâncias diferentes. Assim, o índice do tipo inversion entry (IE), ao contrário dos PK e AK, admite valores repetidos entre instâncias. Ronaldo C. Oliveira 27

Exemplo de uso de índices alternativos de busca: Índice Alternativo de Busca sem Repetição Índice Alternativo de Busca com Repetição Ronaldo C. Oliveira 28

Modelo Relacional Tipos de Relacionamentos Relacionamento Identificante: O relacionamento identificante entre duas entidades E1 e E2 (neste sentido) indica que uma instância da entidade E2 não pode ser completamente identificada sem que se conheça a instância da entidade E1 a que ela está associada. Ronaldo C. Oliveira 29

Modelo Relacional Tipos de Relacionamentos Relacionamento Identificante: Cliente Cliente Codigo Cliente Nome Cliente Endereço Cliente Cpf Cliente Telefone Dependente Dependente Codigo Cliente Codigo (FK) Dependente Nome Dependente Parentesco Ronaldo C. Oliveira 30

Modelo Relacional Tipos de Relacionamentos RELACIONAMENTO NÃO IDENTIFICANTE/OBRIGATÓRIO: O relacionamento entre duas entidades E1 e E2 (neste sentido) é dito não identificante/obrigatório quando uma instância da entidade E2 não precisa de uma instância na entidade E1 para ser identificado, porém o ambiente de negócios obriga que exista uma instância de E1 associada à instância de E2. Ronaldo C. Oliveira 31

Modelo Relacional Tipos de Relacionamentos RELACIONAMENTO NÃO IDENTIFICANTE/OBRIGATÓRIO: Ronaldo C. Oliveira 32

Modelo Relacional Tipos de Relacionamentos RELACIONAMENTO NÃO IDENTIFICANTE, NÃO OBRIGATÓRIO: O relacionamento entre duas entidades E1 e E2 (neste sentido) é dito não identificante/não obrigatório quando uma instância da entidade E2 não precisa de uma instância na entidade E1 para ser identificado e ainda o ambiente de negócios não impõe nenhuma obrigação que exista uma instância de E1 associada à instância de E2. Ronaldo C. Oliveira 33

Modelo Relacional Tipos de Relacionamentos RELACIONAMENTO NÃO IDENTIFICANTE, NÃO OBRIGATÓRIO: Pedido Pedido Codigo Pedido Data Pedido Valor Pedido Observacao Cliente Codigo (FK) Cliente Cliente Codigo Cliente Nome Cliente Endereço Cliente Cpf Cliente Telefone Ronaldo C. Oliveira 34

Modelo Relacional Tipos de Relacionamentos RELACIONAMENTO MUITOS PARA MUITOS (Many to Many): O relacionamento entre duas entidades E1 e E2 (neste sentido) é dito muitos-paramuitos quando uma instância da entidade E1 esta relacionada a muitas instâncias da entidade E2. Ronaldo C. Oliveira 35

Modelo Relacional Tipos de Relacionamentos RELACIONAMENTO MUITOS PARA MUITOS: MÉDICO CLÍNICA Médico CRM Médico Nom e M édico Telefone atende clinica possui m édico Clinica Código Cínica Nom e Clínica Telefone M ÉDICO POR CLÍNICA Médico CRM (FK) Clinica Código (FK) Horário de Atendim ento Ronaldo C. Oliveira 36

Modelagem Exemplo Sistema de Livraria

Cliente cod_cli nome_cli cpf_cle endereco_cli telefone_cli requisita Venda cod_vend valor_vend status_vend data_vend cod_cli (FK) possui Itemvenda cod_vend (FK) cod_liv (FK) qtd_venda contem Fatura cod_fat cod_vend (FK) valor_fat datavenc_fat data_fat Compra cod_comp valor_comp data_comp cod_forn (FK) possui contem / Itemcompra cod_liv (FK) cod_comp (FK) qtde_compra contem Livro cod_liv isbn_liv nome_liv qtde_liv autor_liv preco_liv possui FonrnecedorLivro cod_forn (FK) cod_liv (FK) fornece Fornecedor cod_forn participa nome_forn cnpj_forn telefone_forn Ronaldo C. Oliveira 38

Outro Exemplo Sistema Loja de Material de Construção

Sistema Loja de Material de Construção Construir um DER (notação Chen) de uma loja de materiais de construção, com as seguintes regras: Todo Cliente deve ser cadastrado no sistema; Um cliente pode requisitar várias vendas de material de construção, e uma venda esta relacionada a somente um cliente; É necessário definir qual vendedor realizou uma determinada venda; Uma venda pode conter vários produtos a serem vendidos, e um produto pode estar presente em várias vendas; Cada produto pode ser fornecido por vários fornecedores e um mesmo fornecedor pode fornecer vários produtos; Um cliente pode ter várias obras sendo construídas; Uma venda deverá ser entregue em somente uma obra do cliente. Ronaldo C. Oliveira 40

Ronaldo C. Oliveira 41

Cliente Cod_cli cpf_cli nome_cli Endereco_cli participa ClienteObra Cod_cli (FK) codigo_obra (FK) contem Obra codigo_obra nome_obra local_obra efetua efetua Venda codigo_venda codigo_obra (FK) codigo_vendedor (FK) data_venda Cod_cli (FK) Valor_venda participa Vendedor codigo_vendedor nome_vendedor cpf_vendedor VendaProduto codigo_venda (FK) codigo_prod (FK) qtde_venda valor_venda possui contem Produto codigo_prod nome_prod qtde_prod contem FornecedorProduto codigo_prod (FK) codigo_forn (FK) fornece Fornecedor codigo_forn cpf_forn nome_forn Ronaldo C. Oliveira 42