Profa. Ana Karina Barbosa fevereiro/2008

Slides:



Advertisements
Apresentações semelhantes
Modelo Entidade-Relacionamento
Advertisements

Um pouco mais de cardinalidade e Relacionamentos
Abordagem Entidade Relacionamento
MER – Modelo de Entidade Relacionamento
Laboratório WEB Professora: Viviane de Oliveira Souza Gerardi.
Renata Viegas Extensões MER Renata Viegas
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
O Modelo E-R Definição: Características
Prof.: Bruno Rafael de Oliveira Rodrigues
Sistemas de Informação Redes de Computadores
Modelo Entidade-Relacionamento
Projeto de Banco de Dados
Sistemas de Informação Gerencial
Sistema Gerenciador de Banco de Dados SGBD
Introdução a Bancos de Dados
Noções Básicas de Modelagem
Projeto de Bancos de Dados
Prof. Alexander Roberto Valdameri
Sistema de Banco de Dados
Tecnologias de Linguagens para Banco de Dados I
Modelagem de Dados Usando o Modelo Entidade-Relacionamento
Banco de Dados Prof. MSc Wagner Siqueira Cavalcante
Prof. Alfredo Parteli Gomes
SQL Server 2012 Introdução a Modelagem de Dados
BANCO DE DADOS APLICADO AO DESENVOLVIMENTO DE SOFTWARE
DIAGRAMA DE CLASSE Modelagem de Software
Diferenças entre DER e Engenharia de Informações
Bancos de Dados Projeto de BD
Campus de Caraguatatuba Aula 6: Modelo Entidade Relacionamento (3)
Técnica de BD – Modelagem (2)
Prof.: Bruno Rafael de Oliveira Rodrigues
Profª Daniela TLBD.
REGRAS DE PRODUÇÃO DO MODELO LÓGICO
Sistemas de Informações Geográficas SIGs.
Introdução a Banco de dados
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros
Curso Técnico em Informática
Objetivos Apresentar de forma breve a Metodologia de Modelagem Orientada a Objetos (OMT). A partir de um modelo de objetos de um sistema de informação.
Profa. Ana Karina Barbosa Abril/2008
Banco de Dados Aplicado ao Desenvolvimento de Software
Universidade do Vale do Paraíba Disciplina: Banco de Dados II
Modelagem de Entidade/Objetos de Domínio com Diagrama de Classes
BANCO DE DADOS Aula 3 Josino Rodrigues Neto© Fundamentos em Banco de Dados.
Cristina Paludo Santos URI – Campus de Santo Ângelo
Banco de dados 1 Modelagem de Dados Utilizando MER
Projeto de BD Análise de Requisitos Projeto Conceitual Projeto Lógico
UFCG/CCT/DSC Cláudio Baptista
Bancos de Dados.
SISTEMAS DE INFORMAÇÃO Prof. Paulo Renato de Morais.
Modelo Entidade-Relacionamento
Projeto de Banco de Dados
Banco de Dados I Aula 4 - Projeto Conceitual de Banco de Dados
Banco de Dados I Aula 3 - Projeto Conceitual de Banco de Dados
Objetivos do Curso Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar:
Engenharia de Software Orientada a Objetos
4 Projeto de Banco de Dados Carlos Alberto Heuser.
Professora: Kelly de Paula Cunha
Banco de Dados Prof. MSc Wagner Siqueira Cavalcante.
Modelagem de Dados Consiste em mapear o mundo real do sistema em um modelo que irá representar a realidade e o relacionamento existente entre os dados.
Modelos de dados.
Relacionamento entre Entidades: Tipos e Cardinalidade
Banco de Dados Parte 1 Profa. Ana Karina Barbosa Fevereiro/2008.
Modelo Entidade-Relacionamento (ER)
Modelo de Entidade-relacionamento
Modelagem Entidade-Relacionamento (MER)
Modelagem de Dados Aula 1.
Modelagem de Dados Aula 4. 2 Implementação de Entidades Não é aconselhável simplesmente transcrever os nomes dos atributos para nomes de colunas. Nomes.
1 Aula 02 Projeto de BD Prof. Juliano. 2 Projeto do Banco de Dados 1.caracterizar todos os dados necessários na perspectiva do usuário Resultado: especificação.
Processo de desenvolvimento de sistema de informação - DSI Diagrama de Entidade-Relação (DER) ou Entidade Associação (DEA) Representa as entidades envolvidas.
Gestão da Tecnologia da Informação Fundamentos de Sistemas de Banco de Dados Faculdade de Tecnologia Senac Jaraguá do Sul.
Transcrição da apresentação:

Profa. Ana Karina Barbosa fevereiro/2008 Banco de Dados Parte 2 Profa. Ana Karina Barbosa fevereiro/2008

Modelagem Conceitual - O Modelo E-R Registro da realidade é feito através da criação de um modelo O Modelo Entidade-Relacionamento Objetivo: obter uma descrição abstrata dos dados que serão armazenados no banco de dados, independente de implementação em computador. Definido por Peter Chen em 1976. Até hoje é considerado um padrão para modelagem conceitual. Técnicas de modelagem orientadas a objeto baseiam-se nos conceitos da abordagem E-R.

O Modelo Entidade-Relacionamento Entidade: conceito fundamental Conjunto de objetos da realidade modelada sobre as quais deseja-se manter informações no Banco de Dados Em um diagrama E-R, uma entidade é representada através de um retângulo que contém o nome da entidade. Ex: Sistema Bancário. Exemplo de entidades: CLIENTE, CONTA-CORRENTE, AGÊNCIA Sistema Hospitalar. Exemplo de entidade: HOSPITAL, MEDICO, PACIENTE, EXAME, LABORATORIO Sistema Farmácia. Exemplo de entidades: FARMACÊUTICO, FUNCIONÁRIO, MEDICAMENTO, CLIENTE FUNCIONÁRIO DEPARTAMENTO

O Modelo Entidade-Relacionamento Atributo de Entidade Todo objeto para ser uma entidade possui propriedades que são descritas por atributos e valores. Por exemplo, entidade funcionário possui os atributos matrícula, nome, data de admissão. Representação do atributo no diagrama E-R matricula FUNCIONÁRIO data admissão nome

O Modelo Entidade-Relacionamento Caso seja necessário referir um objeto particular (uma determinada pessoa ou um determinado departamento) fala-se em ocorrência ou instância de entidade. Exemplo: Um funcionário é descrito por um número de matrícula, um nome, data admissão. Então temos aí uma entidade funcionário com seus atributos. Cada instância dessa entidade Funcionário, ou seja, cada existência, será formada por valores desses atributos.

O Modelo Entidade-Relacionamento Identificadores de entidades: Um atributo ou um conjunto de atributos cujos valores distinguem uma ocorrência da entidade das demais. O identificador deve ser mínimo. Ex: OBS: Em algumas ocasiões, caso não haja explicitamente um identificador, é necessário a inserção de um identificador como “código” ou “ID”. matrícula FUNCIONÁRIO data admissão Entidade PRATELEIRA Atributos: Número do corredor, Número da prateleira, capacidade nome

O Modelo Entidade-Relacionamento Atributos nulos É usado quando uma entidade não possui valor para determinado atributo. Ex: para a entidade ALUNO o atributo e-mail pode vir nulo em alguns casos. Representação Gráfica: nome ALUNO e-mail (0,1)

O Modelo Entidade-Relacionamento Atributos multivalorados Quando um único atributo possui mais de um valor para a mesma entidade. Ex: telefones Representação Gráfica: Atributos nulo e multivalorados FUNCIONÁRIO telefones (1,N) FUNCIONÁRIO dependentes (0,N)

O Modelo Entidade-Relacionamento Fato/acontecimento que liga dois objetos existentes no mundo real. São os elementos que nos dão o sentido da existência dos objetos e suas inter-relações.

O Modelo Entidade-Relacionamento Em um diagrama E-R, um relacionamento é representado através de um losango, ligado por linhas às entidades que participam do relacionamento. Ex: Esse modelo expressa que o BD mantém informações sobre: Um conjunto de objetos classificados como funcionários Um conjunto de objetos classificados como departamentos Um conjunto de associações, cada uma ligando um departamento a um funcionário DEPARTAMENTO Lotação FUNCIONÁRIO

O Modelo Entidade-Relacionamento Da mesma forma que ocorre com a entidade, quando se quer referir a associações particulares refere-se a ocorrência ou instância de relacionamento.

O Modelo Entidade-Relacionamento Cardinalidade/Grau de Relacionamento Quando se tem um relacionamento entre duas entidades, o número de ocorrências de uma entidade que está associado com ocorrências de outra entidade, determina o Grau do Relacionamento ou Cardinalidade deste fato.

O Modelo Entidade-Relacionamento Cardinalidade/Grau de Relacionamento Relacionamento Um-para-Um (1:1): cada elemento de uma entidade relaciona-se com um e somente um elemento de outra entidade Exemplo: Um Médico coordena um único Setor, um Setor só pode ser coordenado por um único médico 1 PACIENTE 1 Tem PRONTUÁRIO

O Modelo Entidade-Relacionamento Cardinalidade/Grau de Relacionamento Relacionamento Um-para-Muitos (1:N): este grau de relacionamento é o mais comum no mundo real. Um elemento de uma entidade A relaciona-se com muitos elementos de outra entidade B, mas cada elemento da unidade B só pode estar relacionado a um elemento da unidade A. Exemplos: Trabalha(Engenheiro X Projeto) Realiza(Paciente X Exame) Tem(Edificio X Planta) N DEPARTAMENTO 1 Lotação ENGENHEIRO

O Modelo Entidade-Relacionamento Cardinalidade/Grau de Relacionamento Relacionamento Muitos-para-Muitos (N:N): cada elemento de uma entidade A relaciona-se com vários elemento de outra entidade B, e os elementos da outra entidade B relaciona-se também com vários elementos da entidade A. Exemplo: Consulta (Medico X Paciente) N ALUNO N Cursa DISCIPLINA

O Modelo Entidade-Relacionamento Cardinalidade/Grau de Relacionamento Relacionamento Obrigatório e Opcional: a cardinalidade 1 também recebe a denominação de “associação obrigatória” enquanto a cardinalidade 0 recebe a denominação de “associação opcional”. Exemplo: Alocação (Empregado - 0:1 X Mesa 1) 0:N CORRENTISTA 1 Tem FUNDO APLICAÇÂO

O Modelo Entidade-Relacionamento Modelagem de relacionamento não é trivial O correto entendimento de uma informação depende muito da condição de interpretação dos fatos e da determinação da inerência dos dados pelo analista de sistemas. ALOCADO FUNCIONÁRIO N 1 PROJETO ALOCADO FUNCIONÁRIO N N PROJETO

O Modelo Entidade-Relacionamento Como enxergar entidades e relacionamentos: Através da descrição dos objetos do negócio. Entidades normalmente são obtidas dos substantivos e os relacionamentos dos verbos significativos. EX: Uma instituição é composta por um conjunto de departamentos. Cada departamento aloca um ou mais funcionários. Cada funcionário está locado em um e somente um departamento. Um departamento possui um ou mais escritórios. Cada escritório está vinculado a um único departamento.

O Modelo Entidade-Relacionamento Diagrama E-R gerado: 1 ALOCA DEPARTAMENTO N FUNCIONÁRIO 1 TEM N ESCRITÓRIO

O Modelo Entidade-Relacionamento EXERCÍCIO 1 Utilizar o modelo Entidade-Relacionamento para modelar um banco de dados de suporte a uma rede hospitalar.

O Modelo Entidade-Relacionamento Importante Não se deve preocupar na modelagem, com operações como deleção, inserção, manutenção de dados. Quando se modela, deve-se preocupar com os dados e sua recuperação. Ou seja, obter o entendimento de um negócio ou problema, estruturando seus dados.

O Modelo Entidade-Relacionamento Atributo de Relacionamento É utilizado na caracterização de relacionamentos. N ENGENHEIRO N trabalha PROJETO Função 1 vende N LOJA PRODUTO (0,1) Tipo Qtd. parcelas

O Modelo Entidade-Relacionamento Tipos de relacionamento Dois ou mais relacionamentos entre duas mesmas entidades. trabalha N N Exemplo: Pessoa inscrita|avaliador|sugerida Congresso ENGENHEIRO PROJETO coordena 1 1

O Modelo Entidade-Relacionamento Tipos de relacionamento Auto-relacionamento: um relacionamento entre ocorrências de uma mesma entidade. Papéis devem ser definidos. supervisor 1 Exemplo: Pessoa marido casamento esposa Produto composto composição componente supervisão EMPREGADO N supervisionado

O Modelo Entidade-Relacionamento Tipos de relacionamento Relacionamento Fraco: restrição de existência, a entidade (chamada entidade fraca), não pode ser identificada através de seus próprios atributos. Numero Seqüência código 1 N EMPREGADO DEPENDENTE tem nome nome

O Modelo Entidade-Relacionamento Exercício 2 Utilizar o modelo Entidade-Relacionamento para modelar um banco de dados de suporte a uma Biblioteca Escolar. Uma Biblioteca possui livros. Um livro está associado a um determinado tema. Para um mesmo tema pode-se ter vários livros. Um livro pode fazer referência a outros livros. Um livro está localizado em uma prateleira. Um aluno pode fazer empréstimo de vários livros. Um mesmo livro pode ser emprestado a vários alunos. Associado ao processo de empréstimo tem-se a data de locação, a data de retorno e a multa, caso o livro seja retornado com atraso. Dados Complementares: Livro: Código, título, editora Tema: Código, título, descrição Prateleira: Código, corredor Aluno: Matrícula, Nome, Data de Nascimento

O Modelo Entidade-Relacionamento Tipos de relacionamento A abordagem E-R permite que sejam definidos relacionamentos de grau maior que dois. Um dos mais comuns é o relacionamento ternário que associa três entidades diferentes em um único relacionamento. No caso de um relacionamento ternário, a cardinalidade refere-se a pares de entidades.

O Modelo Entidade-Relacionamento Tipos de relacionamento - Rel.Ternário A um par (cidade, distribuidor) podem estar associados muitos produtos. A um par (produto, distribuidor) podem estar associados muitas cidades. A um par (cidade, produto) está associado um único distribuidor, garantido-lhe exclusividade. CIDADE N distribuição DISTRIBUIDOR PRODUTO 1 N Exemplo Paciente Medico Diagnostico (Consulta)

O Modelo Entidade-Relacionamento De um relacionamento ternário para dois binários É possível transformar um relacionamento ternário em dois binários. Este artifício é utilizado muitas vezes a fim de diminuir a complexidade CLIENTE N tem AGÊNCIA CONTA CORRENTE 1 N

O Modelo Entidade-Relacionamento De um relacionamento ternário para dois binários CLIENTE N tem N 1 N pertence CONTA CORRENTE AGÊNCIA

O Modelo Entidade-Relacionamento Generalização/Especialização Através deste conceito é possível atribuir propriedades particulares a um subconjunto das ocorrências de uma entidade genérica. Idéia de herança de propriedades.

O Modelo Entidade-Relacionamento Generalização/Especialização Visão Top-Down Visão Bottom-Up Pode haver vários níveis hierárquicos de generalização/especialização código CLIENTE nome Tipo organização sexo CGC CPF Exemplo: Um departamento possui diversos empregados. Um empregado pode ser do tipo engenheiro, motorista, secretaria. O engenheiro trabalha em diversos projetos. Exemplo de níveis de Hierarquia: Veículo > Terrestre > Automóvel + Motocicleta Veículo > Aquático > Barco a Vela + Lancha PESSOA FÍSICA PESSOA JURÍDICA

O Modelo Entidade-Relacionamento Generalização/Especialização A generalização/especialização pode ser classificada em total ou parcial, de acordo com a obrigatoriedade ou não da ocorrência da entidade genérica corresponder a uma ocorrência da entidade especializada. t p

O Modelo Entidade-Relacionamento Agregação ou Entidade Associativa Este conceito é utilizado em algumas situações onde existe a necessidade de associar uma entidade a um relacionamento Ex: Como associar uma nova entidade MEDICAMENTO ao relacionamento CONSULTA? N N consulta PACIENTE MEDICO

O Modelo Entidade-Relacionamento Agregação ou Entidade Associativa N N consulta PACIENTE MEDICO N Mostrar o equivalente prescrição N MEDICAMENTO

O Modelo Entidade-Relacionamento Exercício 3 Utilizar o modelo Entidade-Relacionamento para modelar um banco de dados de suporte a uma empresa de engenharia.

O Modelo Entidade-Relacionamento Exercício 4 Utilizar o modelo Entidade-Relacionamento para modelar um banco de dados de suporte a realização de Congressos Científicos.

Identificando construções Entidade versus Atributo: quando modelar um objeto como Entidade ou Atributo? Depende da visão que o analista tiver daquele objeto. EX: código CLIENTE nome 1 código Tem Codigo CLIENTE 1 nome Rua ENDEREÇO endereço Bairro

Identificando construções Entidade versus Atributo: quando modelar um objeto como Entidade ou Atributo? Dica: um atributo não pode ter atributos, nem estar relacionado a outros, nem ser generalizado ou especializado. AUTOMÓVEL Num. do chassi N Num. do chassi nome Tem AUTOMÓVEL tipo cor 1 COR Tem FORNECEDOR N N

Identificando construções Atributo versus generalização/especialização Uma especialização deve ser usada quando sabe-se que as classes especializadas possuem propriedades particulares. nome código EMPREGADO código EMPREGADO nome t Num. Carteira habilitação CREA Categoria Funcional MOTORISTA ENGENHEIRO

Verificação do Modelo Modelo deve refletir o aspecto temporal Certas aplicações exigem que o BD guarde o histórico de alterações de informações. Atributos cujos valores modificam ao longo do tempo. Ex: quando o cliente muda de endereço ou quando o salário do funcionário é alterado. Nesses casos pode ser importante ter um registro das informações que vão sendo alteradas. Por isso, tanto endereço quanto salário deixam de ser atributos para virar entidades.

Verificação do Modelo Modelo deve refletir o aspecto temporal Relacionamentos que modificam ao longo do tempo Instâncias de relacionamento podem ser adicionadas e removidas ao longo do tempo e também neste caso pode-se querer manter um registro histórico das alterações. EMPREGADO EMPREGADO Exemplo MESA (1) > EMPREGADO (1) MESA (N) > EMPREGADO (N) N N lotação data lotação 1 N DEPARTAMENTO DEPARTAMENTO

Verificação do Modelo Consultas a dados referentes ao passado Informações antigas podem ser eliminadas para evitar o crescimento desmedido do BD. Informações antigas podem ser necessárias no futuro, por exemplo, por motivos legais, para realização de auditorias ou para tomadas de decisão. É necessário planejar desde a modelagem por quanto tempo as informações ficarão armazenadas no BD. Podem ser necessários atributos para indicar o status da informação, se atual ou antiga.

Verificação do Modelo Planejar o arquivamento de informações antigas É necessário fazer um planejamento de como dados antigos, retirados do banco e armazenados em arquivos convencionais serão acessados no futuro. Uma solução seria a reinclusão dos dados no banco quando estes se fizerem necessários. Planejar informações estatísticas Em alguns casos, informações antigas são necessárias apenas para tomada de decisão. Muitas vezes deseja-se apenas dados resultante de cálculos ou estatísticas. Pode ser conveniente manter no BD apenas as informações compiladas.

Uso de ferramentas de modelagem A criação de diagramas é muito trabalhosa, revisões e processos de atualização são freqüentes. Uso de uma ferramenta CASE - Computer Aided Software Engineering. Uso de programas de propósito geral.

Estratégias de Modelagem O processo de construção de um modelo é incremental. Gradativamente, o modelo vai sendo enriquecido como novos conceitos e estes vão sendo ligados aos existentes ou os existentes vão sendo aperfeiçoados. É necessário identificar qual a fonte de informação principal para o processo de modelagem. Descrições de dados existentes. Conhecimento de pessoas.

Estratégias de Modelagem Partindo de descrições de dados existentes Em sistemas não automatizados, observa-se dados contidos em documentos (pastas, fichas, documentos fiscais, etc.). Em sistemas já existentes, obtém-se os dados a partir das descrições dos arquivos utilizados pelo sistema. Este processo chama-se Engenharia Reversa. A construção de um modelo partindo das descrições de dados já existentes dá-se de acordo com a estratégia bottom-up.

Estratégias de Modelagem Partindo do conhecimento de pessoas Este é o caso quando não existe descrições de dados. Para este caso pode ser aplicados duas estratégias: top-down e inside-out.