A quem pertencem os atributos: PRECO, QUANTIDADE e PRAZO?



Documentos relacionados
Modelagem Conceitual Exercício resolvido 02 Modelagem Conceitual

ENGENHARIA DA COMPUTAÇÃO

MC536 Bancos de Dados: Teoria e Prática

Projeto de Banco de Dados

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

Modelo Entidade-Relacionamento

Ciclo de Desenvolvimento de Sistemas de BD

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

Ciclo de vida de um banco de dados relacional

Prof.: Clayton Maciel Costa

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

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

Profº Aldo Rocha. Banco de Dados

Construindo modelos ER. Capítulo 3

Modelo Entidade-Relacionamento


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

MODELO ENTIDADE - RELACIONAMENTO

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

Fernando Fonseca Ana Carolina

Prof. Alexandre Unterstell Banco de Dados I

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

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

Roteiro. Modelagem de Dados: Usando o Modelo Entidade-Relacionamento. BCC321 - Banco de Dados I. Processo de Projeto de Banco 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)

Prof.: Clayton Maciel Costa

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

MODELAGEM DE DADOS. Unidade II Arquiteturas do SGBD

Lato Sensu Tecnologia de Desenvolvimento de Sistemas. SENAC Rio Preto

O Modelo de Entidades e Relacionamentos (MER) é um modelo conceitual usado para projeto de aplicações de banco de dados.

Fundamentos de Bancos de Dados Prova 3

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

Banco de Dados 1 2º Semestre

Modelo Entidade - Relacionamento (ER ou MER) Parte 3

Lista de exercícios - MER

Exercícios Propostos de Modelagem parte II

Exercícios Propostos de Modelagem parte II

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

Roteiro 3 Modelagem relacional

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Disciplina de Banco de Dados Parte V

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

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

Banco de Dados. Banco de Dados (aulas 7 e 8) 1 Wedson Quintanilha da Silva - Banco de Dados

1. Desenvolva o Diagrama Entidade-Relacionamento para as seguintes situações:

MSc. Daniele Carvalho Oliveira

1) O QUE NÃO É BANCO DE DADOS?

Profa. Daniela Barreiro Claro

Lista de exercícios 01

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

Banco de Dados - Senado

PROJETO DE BANCO DE DADOS LISTA 002 Projeto Conceitual

Capítulo 11. Conceitos de Orientação a Objetos. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Banco de Dados - Senado

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

1- Identifique para cada questão abaixo, se o enunciado se refere a View, Stored Procedures, Trigger ou Function. Apenas um por questão.

Banco de Dados I. Modelagem Conceitual Parte 2. Cardinalidades, atributos em relacionamentos, identificadores, generalização. Prof.

Modelo Entidade-Relacionamento. Prof. Antonio Almeida de Barros Jr.

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

Banco de Dados I. Prof. Bal. Emerson Meneses Inocente

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

BANCO DE DADOS I. Exercícios

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Capítulo 5 Complemento. 5.1 Laudon, Cap. 5

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

Curso Superior de Tecnologia em BD

Notas de Aula 04: Casos de uso de um sistema

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 17 PROFª BRUNO CALEGARO

INF Fundamentos de Banco de Dados Exercícios sobre normalização

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

2 Diagrama de Caso de Uso

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

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

Tecnologias e Linguagens para Banco de Dados I

Implementando uma Classe e Criando Objetos a partir dela

Atributos. Exercício (4.1) Angélica Toffano Seidel Calazans Abordagem Entidade-Relacionamento

BANCO DE DADOS I AULA 3. Willamys Araújo

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

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho

Modelagem dos dados. entendo. Reino Real. Reino. Representação

Computadores e Sistemas de Informação. Bases de Dados Relacionais (linguagem SQL)

Modelagem de dados e uso do SGBD MySQL

PROJETO DE BANCO DE DADOS -INTRODUÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

Propriedades de entidades

Curso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas. Campus Alegrete. Banco de Dados I. Cristhiano Bossardi de Vasconcellos.

Construir um modelo de dados é: - Identificar, Analisar e Registar a política da organização acerca dos dados

SQL. Autor: Renata Viegas

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.

Lista de Exercícios Engenharia de Software 29/08/2012. Grupo de 4 Pessoas, atividade para ser entregue em aula

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

GBC043 Sistemas de Banco de Dados Modelo de Entidade-Relacionamento (ER)

INSTRUMENTO NORMATIVO 004 IN004

CIn/UFPE Projeto Conceitual de BD - Prof. Robson Fidalgo 1

Exercícios de Lógica Exercícios de Fixação 08

Solução do segundo exercício proposto REDE DE HOTÉIS

Modelo Entidade - Relacionamento (ER ou MER) Parte 2

Todos os imóveis são comprados pela imobiliária para, então, serem colocados a venda.

Transcrição:

Atributos de Relacionamento A quem pertencem os atributos: PRECO, QUANTIDADE e PRAZO? Produto n Vende n Fornecedor Produto n Vende n Fornecedor Preço Quant Prazo 1

DESENVOLVIMENTO DA MODELAGEM - Observar o contexto e não os objetos independentemente; - Sujeita, a todo momento, a alterações; - Durante o desenvolvimento do modelo, com o aumento do conhecimento sobre a realidade a ser modelada, o modelo será cada vez mais refinado e aperfeiçoado. CRITÉRIOS PARA A ESCOLHA DE CONSTRUÇÕES - Atributo versus entidade relacionada; - Atributo versus generalização/especialização; - Atributos opcionais e multivalorados. 2

ATRIBUTO VERSUS ENTIDADE RELACIONADA Modelar um objeto como atributo de uma entidade ou como outra entidade relacionada àquela primeira? Como modelar a COR de um automóvel? Cor como atributo Cor como entidade AUTOMÓVEL cor AUTOMÓVEL (1,1) CRITÉRIOS COR - Está vinculado a outros objetos (entidades, atributos, relacionamentos, entidades genéricas ou especializadas)? - Possui propriedades particulares que se deseja modelar? - O valor do objeto é fixo durante toda a vida do sistema? 3

ATRIBUTOS OPCIONAIS E MULTIVALORADOS Aconselhável o emprego de atributos obrigatórios e monovalorados CREA CRM código Nº CNH MODELAGEM DE ATRIBUTOS OPCIONAIS nome DtVcto CNH CRITÉRIO categoria funcional - só os engenheiros têm CREA; - só os médicos têm CRM; - só para quem tem CNH é que DtVcto tem significado; - será áde grande interesse para a empresa controlar as datas de vencimento das CNH dos médicos e engenheiros? - o uso de atributos opcionais não estará escondendo diferentes categorias de empregados? Verificar se a modelagem com o uso de generalização / especialização não é mais conveniente. 4

MODELAGEM DE ATRIBUTOS OPCIONAIS SOLUÇÃO MAIS ADEQUADA código nome MOTORISTA ENGENHEIRO MÉDICO Nº CNH Dt Vcto CNH CREA CRM 5

MODELAGEM DE ATRIBUTOS MULTIVALORADOS Indesejáveis pelos seguintes motivos: - Ainda não têm implementação direta no modelo relacional (SQL-2); - Indução a erros na modelagem pela ocultação de entidades d e relacionamentos em atributos t deste tipo. código nome Dependente Lançamento de pagamento CRITÉRIO Aconselhável l substituí-los por entidades d relacionadas. 6

SOLUÇÃO Substituição de atributos multivalorados por entidades relacionadas. nome (1,1) (1,1) LANÇAMENTO PAGAMENTO (1,1) valor código DEPENDENTE data de nascimento nome descrição 7

CONSTRUÇÃO DE MODELO CONCEITUAL ANTES DE LER UM MODELO DESCRITIVO, LEMBRE-SE: - Um substantivo (sujeito) normalmente indica a existência de uma entidade - Um verbo (ação) é uma indicação da existência de um relacionamento - Um adjetivo (qualificação do sujeito), é uma indicação da existência de um atributo de uma entidade - Um advérbio temporal (qualificação do verbo), é uma indicação da existência de um atributo de um relacionamento 8

CONSTRUÇÃO DE MODELO CONCEITUAL 1º PASSO - Ler cuidadosamente todo o texto para compreendê-lo e ter uma idéia geral do que será modelado. Se necessário leia todo o texto novamente, até que tenha a total compreensão do que será modelado. Neste passo não use material de escrita. Lembre-se: entidade é um objeto e atributo é uma qualidade de um objeto. 2º PASSO - Realize uma nova leitura no texto, agora sublinhando à lápis o que você ache que seja uma entidade (traço reto) sobre a qual deseja-se armazenar dados no BD. Faça agora o mesmo para os atributos (traço ondulado). Marque tudo (tudo mesmo) sem qualquer constrangimento. Durante a modelagem, o que não for relevante será desconsiderado d 9

3º PASSO - Numa folha de papel p auxiliar escreva à esquerda em uma coluna todas as ENTIDADES (traço reto) que foram levantadas. Noutra coluna à direita, escreva todos os ATRIBUTOS (traço ondulado) também levantados. Faça uma nova leitura do texto e certifique-se de que, segundo a sua opinião, todas as entidades e atributos estão estão ali documentados. 4º PASSO Com uma linha feita a lápis, una os atributos lançados na coluna da direita às entidades (coluna da esquerda) que parecem pertencer. Observe que ao final nenhum atributo pode sobrar, ou seja, obrigatoriamente bi i todos atributos terão que pertencer a alguma entidade. Observe também que em certas situações o atributo parece pertencer a mais de uma entidade, isto pode indicar que este atributo comum a duas entidades pode ser um atributo do relacionamento entre elas. 10

5º PASSO Desconfie das entidades que não têm atributos, com toda certeza elas ficarão fora do BD. Não tenha receio, risque-as. 6º PASSO Têm-se agora perfeitamente definidas as entidades, os relacionamentos e os atributos de ambos. Ainda é necessário levantar as cardinalidades d dos relacionamentos, o que é feito à partir as informações contidas no texto. 7º PASSO Por último, desenhe o Modelo Conceitual. 11

Locadora de Vídeo Uma pequena locadora de vídeo possui ao redor de 2.000 fitas de vídeo, cujo empréstimo deve ser controlado. Cada fita possui um número. Para cada filme, é necessário ái saber seu título e sua categoria (comédia, drama, aventura,...). Cada filme recebe um identificador próprio. Para cada fita é controlado que filme ela contém. Para cada filme há pelo menos uma fita, e cada fita contém somente um filme. Alguns poucos filmes necessitam 2 fitas. Os clientes podem desejar encontrar os filmes estrelados pelo seu ator predileto. Por isso, é necessário manter a informação dos atores que estrelam em cada filme. Nem todo filme possui estrelas. Para cada ator, os clientes às vezes desejam saber o nome real, bem como a data de nascimento. A locadora possui muitos clientes cadastrados. Somente clientes cadastrados podem alugar fitas. Para cada cliente é necessário saber seu prenome e seu sobrenome, seu telefone e seu endereço. Além disso, cada cliente recebe um número de associado. Finalmente, desejamos saber que fitas cada cliente tem emprestadas. Um cliente pode ter várias fitas em um instante no tempo. Não são mantidos registros históricos de aluguéis. 12

VERIFICAÇÃO DO MODELO - Um modelo ER após construído deve ser validado e verificado; - Um modelo ER para ser considerado bom deve: - ser correto; - ser completo; - não conter redundâncias. 13

MODELO CORRETO Não apresenta erros de modelagem (sintáticos e semânticos). ERROS SINTÁTICOS O modelo não respeita as regras de construção de modelos ER: - associar atributos a atributos; - associar atributos a relacionamentos; - associar relacionamento a relacionamento; - associar entidade a entidade; - especializar atributos t ou relacionamentos; ERROS SEMÂNTICOS O modelo respeita as regras de construção de modelos ER, mas representa a realidade modelada de forma inconsistente: - estabelecer as associações incorretas; - usar uma entidade do modelo como atributo de outra entidade; - usar número de entidades incorretas no relacionamento. 14

MODELO COMPLETO - Verificar se todos os dados que devem ser mantidos pelo BD estão presentes; - verificar se as transações de modificação desejadas no BD podem ser executadas sobre o modelo; - verificar se todas as propriedades expressáveis estão no modelo e as não expressáveis estão anotadas à parte. MODELO LIVRE DE REDUNDÂNCIAS - O modelo deve ser mínimo e não deve ter conceitos redundantes; - redundâncias mais comuns: - relacionamentos redundantes; - atributos redundantes. 15

RELACIONAMENTOS REDUNDANTES - Podem ser eliminados sem haver perda de informação. FÁBRICA (1,1) ATUAÇÃO (1,1) 1) F/D DEPARTAMENTO (1,1) LOCALIZAÇÃO DEPTO LOCALIZAÇÃO FABR (1,1) D/E ASSOCIADO TRABALHO MÁQUINA (1,1) SINDICATO 16

ATRIBUTOS REDUNDANTES Um atributo é redundante quando pode ser derivado à partir de procedimentos de busca de dados ou cálculos sobre o BD. código nome cadastro nome DEPARTAMENTO (1,1) (1,n) LOTAÇÃO número de empregados código do departamento 17

LOCAL DOS ATRIBUTOS Os atributos e relacionamentos estão corretamente posicionados? cpf nome cpf nome PESSOA (1,n) PESSOA (1,n) ALUGUEL ALUGUEL dt aluguel cod endereco cod endereco IMOVEL dt aluguel l IMOVEL 18

ATRIBUTOS CUJOS VALORES SE MODIFICAM NO TEMPO Modelo: tende a refletir o seu estado momentâneo (instância) Aspectos temporais: auditorias, questões legais e estatísticas ex: O salário de um empregado é um atributo t que se modifica ao longo do tempo. código (1,1) Recebe nome código nome salário SALÁRIO Salário modelado d como atributo t data valor = só registra o valor atual Salário modelado como entidade = registra o histórico do valor 19

RELACIONAMENTOS QUE SE MODIFICAM NO TEMPO A modelagem de relacionamentos 1:1 e 1:n que modificam-se ao longo do tempo é realizada alterando-se o relacionamento para n:n e criando-se um atributo identificador no próprio relacionamento. 1:1 1: n 1 n n data n Alocação 1 data Alocação n Lotação 1 Lotação n MESA MESA DEPTO DEPTO O BD só registra o valor atual. O BD registra o histórico. 20

RELACIONAMENTOS QUE SE MODIFICAM NO TEMPO A modelagem de relacionamentos n:n que modificam-se ao longo do tempo é realizada criando-se um atributo identificador no próprio relacionamento. PARTICIPANTE n Inscrição n CURSO data PARTICIPANTE data n Inscrição n CURSO O BD só registra o valor atual. O BD registra o histórico. 21

ENTIDADE ISOLADA - Entidade que não se relaciona a nenhuma outra do modelo - Em princípio não torna o modelo incorreto - Normalmente esta entidade é destinada à modelagem da organização que está sendo modelada -Deve ser investigada, pois pode estar ocultando algum relacionamento. PADRÕES DE MODELAGEM - Inúmeros autores propondo inúmeros modelos - Na prática e na literatura não há um só modelo ER VARIANTES DE MODELOS ER - Modelo proposto por Peter Chen; - Notação de Engenharia de Informações; e - MERISE. 22

NOTAÇÃO DE ENGENHARIA DE INFORMAÇÕES Sua importância é devida ao fato de ser suportada por várias ferramentas CASE. É também conhecida por Notação James Martin. DEPARTAMENTO LOTAÇÃO (1,1) DEPARTAMENTO tem lotado está lotado em - Relacionamento representado por uma linha que une as entidades d ( não estão previstos atributos t nos relacionamentos); -O losango é substituído por verbos em ambas direções; - As cardinalidades são representadas graficamente; 23

NOTAÇÃO DE ENGENHARIA DE INFORMAÇÕES Generalização/especialização: subconjunto (subtipo) - aninhamento Generalização/ Especialização 24

NOTAÇÃO DE ENGENHARIA DE INFORMAÇÕES Engenharia de Informações Chen 25

MERISE Sua importância é devida ao fato de ser muito utilizada na França e países europeus. DEPARTAMENTO LOTAÇÃO (1,1) DEPARTAMENTO (1,1) LOTAÇÃO - O relacionamento é representado por uma elipse; - As cardinalidades aparecem invertidas; 26

USO DE FERRAMENTAS DE MODELAGEM - Trabalho profissional: não é recomendada a modelagem manual -Apoio p do computador à modelagem é recomendável desde o início USO DE FERRAMENTA CASE - Existem em várias configurações e preços - Exigências mínimas para uma ferramenta CASE: - Capacidade de edição diagramática - Dicionário de Dados - Integração entre o DER e o DD USO DE FERRAMENTAS DE PROPÓSITO GERAL - Empresas com orçamento apertado - Uso de programas de propósito geral - Dicionário de Dados editado através de planilha, editor de texto ou preferencialmente um banco de dados; - Não há integração entre o DER e o DD 27

PRICED PRODUCT * PRICE o QUANTITY IN STOCK o SIZE CODE FOR PRODUCT # ID * DESCRIPTION * PRODUCT TYPE o DISCOUNT DAY o PHOTO OBTAINABLE AS PRICED_PRODUCTS PPT_PK PPT_PDT_FK ID PRICE PDT_ID QUANTITY_IN_STOCK SIZE_CODE PPT_PDT_FK PRODUCTS PDT_PK ID DESCRIPTION PRODUCT_ TYPE DISCOUNT_DAY PHOTO PROMPT Creating Table 'PRODUCTS' CREATE TABLE PRODUCTS (ID NUMBER(38) NOT NULL,DESCRIPTION VARCHAR2(30) NOT NULL,PRODUCT_TYPE VARCHAR2(10) NOT NULL,DISCOUNT_DAY VARCHAR2(1),PHOTO VARCHAR2(40) ); PROMPT Creating Table 'PRICED_PRODUCTS' CREATE TABLE PRICED_PRODUCTS (ID NUMBER(10,0) NOT NULL,PRICE NUMBER(6,2) DEFAULT 0 NOT NULL,PDT_ID NUMBER(38) NOT NULL,QUANTITY_IN_STOCK NUMBER(38),SIZE_CODE VARCHAR2(2) ); PROMPT Creating Primary Key on 'PRODUCTS' ALTER TABLE PRODUCTS ADD (CONSTRAINT PDT_PK PRIMARY KEY (ID)); PROMPT Creating Primary Key on 'PRICED_PRODUCTS' ALTER TABLE PRICED_PRODUCTS ADD (CONSTRAINT PPT_PK PRIMARY KEY (ID)); PROMPT Creating Foreign Keys on 'PRICED_PRODUCTS' ALTER TABLE PRICED_PRODUCTS ADD CONSTRAINT PPT_PDT_FK FOREIGN KEY (PDT_ID) REFERENCES PRODUCTS (ID); 28