Modelos Conceituais de Dados

Documentos relacionados
Bancos de Dados Aula #2 - Modelos Conceituais de Dados

Mapeamento do Modelo Entidade-Relacionamento para o Modelo Relacional

Exercícios de Projeto de Banco de Dados Relacional Aula 8

Modelo Entidade Relacionamento (MER)

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

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

BANCO DE DADOS I AULA 2. Willamys Araújo willamysaraujo7@gmail.com

Bancos (Bases) de Dados Aula #5 - Projeto do BD Relacional pelo

Não Não Sim Não Sim Sim

Roteiro. Modelagem com Entidade-Relacionamento Estendido. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa.

Introdução a Banco de Dados. INTRODUÇÃO

Banco de Dados. Modelo Entidade Relacionamento Estendido DCC IME USP. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger

Modelagem de Dados com UML. Modelagem de Dados com UML. Modelagem de Dados com UML. Modelagem de Dados com UML. Diagrama de Classes

Arquitetura de Banco de Dados

Bancos (Bases) de Dados Aula #4 Modelo Relacional

Extensões do Modelo Entidade-Relacionamento

LINGUAGEM SQL Linguagem usada em SGBD para: Definir estrutura de dados; Modificar dados em um banco de dados; Especificar restrições de segurança; Rea

Roteiro. Mapeamento dos Modelos ER e EER. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento

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

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

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

Banco de Dados I 2 Modelagem de Dados Conceitual

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

Mapeamento: Modelo Entidade Relacionamento para o Modelo Relacional

INE 5323 Banco de Dados I

Processo de Desenvolvimento de Software

BANCO DE DADOS. Professor: André Dutton

7. Defina encapsulamento. R.: Encapsular é ocultar. Criar uma cápsula ao redor da classe, para proteger o que está dentro dela.

Modelagem de dados usando MER. Andre Noel

Modelo Entidade-Relacionamento. Aécio Costa

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto;

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

Modelo Entidade-Relacionamento

Aula 3 - Modelo Entidade-Relacionamento

Banco de Dados. Banco de Dados. Conceitos Básicos. Banco de Dados SGBD SGBD. Fundamentos. Fernando Fonseca Ana Carolina.

Métodos Formais. Agenda. Relações Binárias Relações e Banco de Dados Operações nas Relações Resumo Relações Funções. Relações e Funções

Unidade 2 Modelo Conceitual

Projeto de Banco de Dados Relacional

Modelagem Conceitual e o Modelo Entidade-Relacionamento

GBC043 Sistemas de Banco de Dados

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;

Banco de Dados. Modelo Entidade - Relacionamento. João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP

Bancos de Dados. O Modelo E ntidade-r elacionamento

Guia para Modelagem de Casos de Uso Metodologia CELEPAR

Revisão e Exercícios. Relacionamento. Projeto de Bancos de Dados. Chave e Domínio. Tipos de Atributos

Computação Instrumental

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

BANCO DE DADOS. Engenharia da Computação Univasf. Modelo Entidade-Relacionamento. Aula 2. Conjuntos de Entidades - Representação Exemplo:

ADMINISTRAÇÃO DE BANCOS DE DADOS MÓDULO 8

Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C. Exercícios: Structs

Escola Secundária c/3º CEB José Macedo Fragateiro. Curso Profissional de Nível Secundário. Componente Técnica. Disciplina de

Tipos de Banco de Dados - Apresentação

Universidade Paulista

Modelo Entidade Relacionamento

Marcelo Henrique dos Santos

Modelando sistemas em UML - Casos de uso.

Programação de Computadores - I. Profª Beatriz Profº Israel

Modelo Entidade- Relacionamento (MER) Adão de Melo Neto

Engenharia de Software

Orientação a Objetos

Operações relacionais e Álgebra relacional

COMPUTAÇÃO. O estudante deve ser capaz de apontar algumas vantagens dentre as seguintes, quanto à modalidade EaD:

3. Numerar a coluna da direita conforme a da esquerda 1) Classe (2) :Aluno 2) Um dado objeto (3) oaluno:aluno 3) Objeto (1) Aluno

Modelo de Entidade-Relação (ER)

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

Banco de Dados Geográficos

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

Arquitetura TCP/IP. Apresentado por: Ricardo Quintão

1.1. Definição do Problema

Disciplina Fundamentos de Redes. Introdução à Mascara de Subrede

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE BANCO DE DADOS MODELO ENTIDADE- RELACIONAMENTO

UNIPAC Araguari FACAE - Faculdade de Ciências Administrativas e Exatas SISTEMAS DE INFORMAÇÃO

DISTRIBUIÇÃO DE FREQUÊNCIA DE VARIÁVEIS QUALITATIVAS E QUANTITATIVAS DISCRETAS (TABELAS E GRÁFICOS)

FLIP FLOPS. EXPERIMENTS MANUAL Manual de Experimentos Manual de Experimentos M-1113A

Variáveis Frequências Gráficos Medidas de Posição Medidas de Dispersão Medidas Complementares Inferência

PLANEJAMENTO SIMPLIFICADO DE PROJETOS

Curso de Sistemas de Informação 8º período Disciplina: Tópicos Especiais Professor: José Maurício S. Pinheiro V

ESTATÍSTICA PARTE 1 OBJETIVO DA DISCIPLINA

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula

Análise e Projeto de Sistemas I

Sistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais

MC536. Modelo Entidade- Relacionamento

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

Bem-vindo ao tópico sobre conceitos de determinação de preços.

Forma Normal de Boyce-Codd

Requisitos de Software

OpenPDV: Sistema aberto para gerenciamento de restaurantes

Banco de Dados. Modelo Entidade Relacionamento. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger

Árvores Parte 1. Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos

Transcrição:

Modelos Conceituais de Dados Banco de Dados

Motivação Objetivo da abordagem de BD: oferecer abstração dos dados separar aplicações dos usuários dos detalhes de hardware ferramenta utilizada: modelo de dados Modelo de dados: conjunto de ferramentas conceituais para a descrição dos dados e dos relacionamentos existentes entre os dados, da semântica e das restrições que atuam sobre estes

Categorias de Modelos de Dados Divisão baseada nos tipos de conceitos oferecidos para descrever a estrutura do BD Modelo de dados conceitual modelo de alto nível oferece conceitos próximos aos usuários exemplo: modelo entidade-relacionamento

Categorias de Modelos de Dados Modelo de dados de implementação oferece conceitos que podem ser facilmente utilizados por usuários finais não estão distantes da maneira na qual os dados estão organizados dentro do computador é implementado de maneira direta exemplo: modelo relacional Modelo de dados físico modelo de baixo nível descreve como os dados estão armazenados fisicamente no computador

Modelo de Dados e o Projeto de BD minimundo independe do SGBD depende do SGBD conjunto de necessidades esquema conceitual esquema em linguagem de implementação análise de requisitos projeto conceitual mapeamento para modelo projeto físico Modelo Entidade Relacionamento (MER) Mapeamento MER para o Modelo Relacional Modelo Relacional

Análise de requisitos Projeto de BD entrevistas a usuários de BD documentação do sistema Projeto conceitual utiliza modelo de dados de alto nível descreve de maneira concisa as necessidades dos usuários inclui descrições detalhadas dos tipos de dados, relacionamentos e restrições é fácil de ser entendido

Projeto de BD Mapeamento para modelo tradução do esquema conceitual em uma linguagem de alto nível para uma linguagem de implementação Projeto físico especificação de estruturas internas de armazenamento especificação das formas de organização de arquivos para BD

Modelo Entidade-Relacionamento

Modelo Entidade Relacionamento Características foi desenvolvido para facilitar o projeto lógico do BD permite a representação da estrutura lógica global do BD é um dos modelos de dados com maior capacidade semântica representa um problema como um conjunto de entidades e relacionamentos entre estas entidades

Entidade Qualquer coisa do mundo real envolvida no problema Possui existência independente Pode ser um objeto com: existência física: uma pessoa, um carro existência conceitual: uma companhia, um emprego, um curso Descrita por propriedades particulares: atributos

Atributos Caracterizam uma entidade ou um relacionamento exemplo: tipo-entidade cliente atributos: nome_cliente Domínio de um atributo endereço_cliente data_nascimento conjunto de valores possíveis para o atributo pode assumir valor nulo (i.e., null) exemplos: nome_cliente: varchar(50) data_nascimento: date

Exemplos Tipo-entidade cliente atributos: nome_cliente endereço_cliente data_nascimento entidade e 1 : nome_cliente: Márcia endereço_cliente: Rua X, 1 data_nascimento: 12/03/1970 entidade e 2 : nome_cliente: Romualdo endereço_cliente: Rua Floriano Peixoto, 10 data_nascimento: 10/10/1982

Classificação dos Atributos Simples versus Compostos atributo simples ou atômico não pode ser decomposto (dividido) em atributos mais básicos exemplo: sexo atributo composto pode ser decomposto (dividido) em vários outros atributos mais básicos possui como valor a concatenação dos valores dos atributos simples que o formam exemplo: atributo endereço, composto de nome_rua, nro_casa, complemento, nome_bairro,...

Atributos Simples x Compostos Atributos Compostos podem formar hierarquias Observação endereço rua cidade estado cep nome nro nro_apartamento se nenhuma consulta será realizada sobre os atributos mais básicos de um atributo composto, então o atributo composto pode ser armazenado no BD como um atributo simples

Classificação dos Atributos Monovalorados versus Multivalorados atributo monovalorado possui um único valor para cada entidade exemplo: idade atributo multivalorado possui múltiplos valores para cada entidade exemplo: atributo telefone valores: 222-0000, 222-0001,... pode possuir limites inferior/superior com relação à multiplicidade dos valores assumidos exemplo: nro_min = 0, nro_max = 3

Classificação dos Atributos Armazenados versus Derivados atributo armazenado está realmente armazenado no BD atributo derivado pode ser determinado através de outros atributos ou através de entidades relacionadas exemplos: idade = data_atual - data_nascimento nro_empregados = soma das entidades empregado para um departamento pode ou não ser armazenado no BD

Tipo-Entidade Conjunto de entidades do mesmo tipo Descrito por um nome e uma lista de atributos Entidades de um tipo-entidade compartilham os mesmos atributos possuem seus próprios valores para cada atributo

Representação CPF_empregado EMPREGADO tipo-entidade: empregado nome_empregado endereço_empregado entidades (instâncias) CPF_empregado: 192876433-0 nome_empregado: Maria endereço_empregado: Rua X CPF_empregado: 150150150-0 nome_empregado: José endereço_empregado: Rua Y

Chave primária Restrição de Chave conjunto mínimo de atributos que identificam de maneira única uma entidade escolhida pelo projetista do BD como o principal meio de identificação de um tipo-entidade Exemplo: CPF_empregado EMPREGADO nome_empregado endereço_empregado

Relacionamento e Tipo-relacionamento Relacionamento associação entre entidades Tipo-relacionamento conjunto de relacionamentos do mesmo tipo Exemplo: pessoa trabalha para empresa trabalha

Restrições nos Tipos-Relacionamento Limitam as combinações possíveis de entidades que podem participar dos tiposrelacionamento Derivadas do minimundo sendo analisado Restrições estruturais cardinalidade participação

Restrição de Cardinalidade Determina o número de entidades às quais outras entidades podem ser associadas através de um relacionamento Cardinalidades um-para-um ( 1 : 1 ) um-para-muitos ( 1 : n ) muitos-para-um ( n : 1) muitos-para-muitos ( m : n )

Restrição de Cardinalidade EMPREGADO 1 1 gerencia DEPARTAMENTO EMPREGADO n 1 trabalha DEPARTAMENTO EMPREGADO m desenvolve n PROJETO

Determina se a existência de uma entidade depende ou não do fato dela participar de um relacionamento Tipos de participação total Restrição de Participação EMPREGADO n 1 trabalha DEPARTAMENTO parcial EMPREGADO 1 1 gerencia DEPARTAMENTO

Exercício Diferencie semanticamente as duas modelagens representadas a seguir: a) FUNCIONÁRIO cod_funcionário nome_funcionário nro_telefone b) FUNCIONÁRIO m utiliza n TELEFONE cod_funcionário nro_telefone nome_funcionário

Grau de Tipos-Relacionamento Grau de um tipo-relacionamento número de tipos-entidade participantes Unário (ou recursivo) relaciona um tipo-entidade com ela mesma indicado utilizar nomes de papéis EMPREGADO n subordinado 1 supervisor supervisiona

Binário Tipos de Relacionamentos relaciona um tipo-entidade a outro tipoentidade grau de relacionamento mais utilizado EMPREGADO m desenvolve n PROJETO

Tipos de Relacionamentos Ternário relaciona três tipos-entidade CLIENTE m CCA n CONTA 1 AGÊNCIA 1 determinada conta de 1 determinado cliente está em 1 determinada agência

Relacionamentos Ternários Regra para a determinação das multiplicidades: fixa-se dois elementos (dois tipos-entidade) verifica-se quantos elementos do outro tipoentidade podem surgir com relação a um elemento de cada tipo-entidade fixada se a quantidade for indeterminada ou variável então considera-se n senão considera-se 1

Relacionamentos Ternários Um relacionamento ternário em geral representa informações diferentes das dos três tipos-relacionamento binários DEPARTAMENTO 1 n DEP EMPREGADO 1 DEP 001 JOSÉ P03 PROJETO

Relacionamentos Ternários DEPARTAMENTO 1 n emprega EMPREGADO 1 n desenvolve n PROJETO 1 trabalha emprega trabalha desenvolve 001 JOSÉ JOSÉ P03 P03 004 Decisão: semântica do problema

Atributo de Tipo-Relacionamento Determinado pela combinação das entidades participantes em uma instância do relacionamento Exemplo: horas_trabalhadas EMPREGADO m desenvolve n PROJETO CPF_empregado nro_projeto nome_empregado nome_projeto

Exercício Dados os tipos-entidade curso e disciplina atributos de curso: código_curso, nome_curso atributos de disciplina: código_disciplina, nome_disciplina, carga_horária Faça duas diferentes modelagens, de acordo com as especificações a seguir uma disciplina é obrigatória ou optativa, independentemente do curso (modelagem 1) uma disciplina pode ser obrigatória para um curso e optativa para outro curso (modelagem 2)

Tipo-Entidade Fraca Entidades de um tipo-entidade fraca: não podem ser distinguíveis porque a combinação dos valores de seus atributos pode ser idêntica são identificadas através da relação que possuem com entidades pertencentes a tiposentidade forte Representa dependência de existência um tipo-entidade fraca sempre tem uma restrição de participação total com respeito ao relacionamento identificador

Dependência de Existência Se uma entidade x depende da existência de uma entidade y, então: x : entidade subordinada y : entidade dominante Se y for removida então x também deve ser removida Exemplos: empregado e dependente conta e transações

Entidade forte Tipo-Entidade Fraca tem chave primária Entidade fraca possui somente uma chave parcial Chave primária de uma entidade fraca chave primária da entidade forte correspondente + chave parcial da entidade fraca

Representação EMPREGADO 1 n possui DEPENDENTE CPF_empregado nome_dependente nome_empregado sexo_dependente chave primária de empregado: CPF_empregado chave primária de dependente: CPF_empregado + nome_dependente entidade fraca (subordinada): dependente entidade forte (dominante): empregado

CPF_empregado nome_empregado 1 supervisor EMPREGADO 1 gerencia 1 n trabalha 1 sigla_depto nome_depto DEPARTAMENTO n subordinado 1 m data_início n supervisiona possui desenvolve controla m n n DEPENDENTE horas_trabalhadas PROJETO nome_dependente sexo_dependente nro_projeto nome_projeto

Resumo da Notação tipo entidade forte atributo multivalorado tipo entidade fraca tipo relacionamento identificador de relacionamento atributo... E 1 R E 2 atributo derivado atributo composto participação total de E 2 em R atributo chave 1 n E 1 R E 2 cardinalidade 1:N

Projeto Lógico de BD Identificar tipos-entidade e atributos tipos-entidade possuem informações descritivas, atributos não atributos devem ser relacionados às entidades que eles descrevem Identificar chaves primárias

Projeto Lógico de BD Identificar tipos-relacionamento e seus atributos determinar o grau dos tipos-relacionamento definir tipos-relacionamento ternários cuidadosamente identificar as restrições que se aplicam sobre cada tipo-relacionamento cardinalidade participação

Projeto Lógico de BD Identificar tipo-entidade forte e tipoentidade fraca Podemos notar que um projetista de BD necessita de um bom conhecimento do minimundo que está sendo modelado para que possa tomar essas decisões!

Exercícios Fazer os exercícios da lista de exercícios Modelo Entidade Relacionamento 1. Controle Acadêmico I 2. Sistema de Controle Bancário