36
MODELAGEM DE DADOS MODELAGEM DE DADOS Prof. Edson Thizon Prof. Edson Thizon SISTEMA DE INFORMA SISTEMA DE INFORMA Ç Ç ÃO ÃO

MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

  • Upload
    lamnhi

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

MODELAGEM DE DADOSMODELAGEM DE DADOS

Prof. Edson ThizonProf. Edson Thizon

SISTEMA DE INFORMASISTEMA DE INFORMA ÇÇÃOÃO

Page 2: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

HistHistóórico de Evolurico de Evoluçção dos ão dos Modelos e Modelos e SGBDsSGBDs

SGBDs Universais

Tamino (XML)

1958– Pré-SGBDs: Estruturas de acesso suportadas pelo SO

1962 – TOTAL (Rede - limitado)

1966 – IMS (Hierárquico)

1970 – IDMS (Rede)

1974 – Sistema R (Relacional), DATACOM, ADABAS

1978 – INGRES, ORACLE (Relacionais)Modelo E-R

Modelo Relacional

1982 – DB2 (Relacional)

1986 – Protótipos: - Adaplex- Exodus- SDM

1990 – Ontos, O2, Postgres

1994

1998

2002

Modelo UML

Modelo OO / OR

Page 3: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelos de DadosModelos de Dados

• Modelo de (banco de) dados– Descrição formal dos tipos de dados que estão armazenados em um banco de dados

• Exemplo de Modelo de Dados para uma Escola– Modelo de dados Informa:

• são armazenados informações sobre os alunos;• Para cada aluno, são armazenados seu código e nome;

– Modelo de dados não informa:• quais os alunos que são armazenados no banco de dados;

Page 4: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Esquema de banco de dadosEsquema de banco de dados

• Para construir um modelo de dados usa-se– Linguagem de modelagem de dados

• Textual• Gráfica

• Um modelo de dados pode ser apresentado de várias formas (texto, figura...)

• Cada apresentação do modelo recebe a denominação esquema de banco de dados.

Page 5: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo de DadosModelo de Dados(n(nííveis de abstraveis de abstraçção)ão)

AB

ST

RA

ÇÃ

O

Modelo conceitual

Modelo lógico

Modelo físico

Page 6: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo conceitualModelo conceitual

• Independente de tipo de SGBD• Registra

– Estrutura dos dados podem aparecer no banco de dados

• Não registra– Como estes dados estão armazenados a nível de SGBD

Page 7: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo conceitual Modelo conceitual –– diagrama ERdiagrama ER

• Técnica mais difundida de modelagem conceitual– Abordagem entidade-relacionamento (ER)

• Modelo conceitual é representado através de diagrama entidade – relacionamento (DER)

Page 8: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo conceitual Modelo conceitual -- ERERMODELO ENTI DADE RELAÇÃO

I TEM DOCONTRATO

CONTRATO

PRODUTOPARA

MOSTRAR NO

JUNTO

FEI TO EMCI MA

CONTRATO

I TEM 2

PRODUTO Y

I TEM 1

PRODUTO X

PRODUTO X

PRODUTO Y

I TEM 2I TEM 1

CONTRATO

HI ERÁRQUI COBANCO DE DADOS

DE REDEBANCO DE DADOS

RELACI ONALBANCO DE DADOS

QUANT.NÚM.CONTRAT. PRODUTO

I TEM

PRODUTOCONTRATO

CÓD. DATA CÓD. DESCRI ÇÃOCLI ENTE

Page 9: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo lModelo lóógicogico

• Nível de abstração visto pelo usuário do SGBD

• Dependente do tipo particular de SGBD que está sendo usado

Page 10: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo LModelo Lóógico gico –– SGBD RelacionalSGBD Relacional

Page 11: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo FModelo Fíísicosico

• Contém detalhes de armazenamento interno de informações

• Detalhes que– Não tem influência sobre a programação de aplicações no SGBD

– Influenciam a performance da aplicação

Page 12: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Modelo FModelo Fíísicosico

Page 13: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Projeto de BDProjeto de BD

• Duas fases:1. Modelagem conceitual2. Projeto lógico

• Adequado para a construção de um novo banco de dados

• Caso já exista um banco de dados ou um conjunto de arquivos convencionais usar reengenharia

Page 14: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

MODELAGEM DE DADOSMODELAGEM DE DADOS

MODELAGEMDE DADOS

Estratégia

Análise

Modelo de dados Entidade relacionamentorerelacionamentoDefinições de entidade

Definiçoes de tabelas, indexesinI:tttgfgfgfgfdfdfdfdfdfdfdfdfdfdfdfdf

Projeto

Construção

CONCEITUAL

PROJETODO BANCODE DADOS

CONSTRUÇÃODO BANCODE DADOS

Informações requeridas do negócio

Banco de Dados Operacional

Page 15: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

EntidadeEntidade--RelacionamentoRelacionamento

• Técnica para construir modelos conceituais de base de dados

• Técnica de modelagem de dados mais difundida e utilizada

• Criada em 1976 por Peter Chen

Page 16: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

EntidadeEntidade--RelacionamentoRelacionamento

• Padrão de fato para modelagem conceitual• Não é única:

– NIAM/ORM (técnica européia da década de 70)– UML (Técnica para modelos Orientados a Objetos)

• Técnicas de modelagem orientada a objetos (UML) baseiam-se nos conceitos da abordagem ER

Page 17: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

EntidadeEntidade--RelacionamentoRelacionamento

• Modelo de dados é representado através de um– modelo entidade-relacionamento (modelo ER)

• Modelo ER é representado graficamente– diagrama entidade-relacionamento (DER)

Page 18: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• É um meio efetivo para coleta e documentação das informações requeridas de uma organização.

– Tenha certeza do completo estabelecimento dos requisitos de informações organizacionais durante o estágio de modelagem de dados conceitual.

– Mudanças nos requisitos durante estágios posteriores do ciclo de vida, pode ser extremamente caro.

Modelo EntidadeModelo Entidade--RelacionamentoRelacionamento

Page 19: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• Componentes

– Entidades - os objetos de significância sobre os quais as informações necessitam ser mantidas.

– Relacionamentos - como os objetos de significância são relacionados.

– Atributos - a informação específica a qual necessita ser mantida.

– Generalização/especialização– Entidade associativa

Modelo EntidadeModelo Entidade--RelacionamentoRelacionamento

Page 20: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• Entidade é alguma coisa (objeto significante) sobre a qual a informação precisa ser conhecida ou mantida. OU

• Conjunto de objetos da realidade modelada sobre os quais deseja-se manter informações no banco de dados.

• Pode representar objetos concretos ou abstratos.

• Outras definições de Entidade:– Um objeto de interesse de negócios.– Uma classe ou categoria de alguma coisa– Uma entidade é a nomeação de algo.

• Exemplos– EMPREGADO– DEPARTAMENTO– PROJETO

ENTIDADEENTIDADE

Page 21: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• Convenções– Box arredondado de qualquer tamanho− O nome da entidade deve ser singular e único− Nome da entidade no topo− Opcional: nome sinônimo que deve ser representado entre

parênteses − Os nomes dos atributos logo abaixo

• Exemplo:

ENTIDADEENTIDADE

Page 22: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

ATRIBUTOSATRIBUTOS

• Atributos são informações sobre uma entidade que precisa ser conhecida ou mantida. Atributos descrevem uma entidade pela qualificação, identificação, classificação, quantidade ou expressando o estado da entidade.

• Exemplo• Quais são alguns dos atributos da entidade EMPREGADO?

– código ou número da folha de pagamento identificam um EMPREGADO

– nome e sobrenome qualificam um EMPREGADO

– categoria da folha de pagamentto (semanal, mensal) classificam um EMPREGADO

– a idade quantifica um EMPREGADO

– status do emprego (ativo, aposentado) expressa a posição do EMPREGADO

Page 23: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

ATRIBUTOSATRIBUTOS

• Atributos representam o tipo de descrição ou detalhe, não uma instância.

• Exemplo– 77506 e 763111 são os valores do atributo número.

– João é o valor do atributo nome do EMPREGADO.

• Notas– Os nomes dos atributos devem estar claros aos usuários, não codificados para o

desenvolvedor.

– Nomes de atributos devem ser específicos-ex., isso é quantidade, quantidade retornada, ou quantidade adquirida?

– Sempre esclareça uma data atributo com uma narrativa ou frase, - ex., data de contato, data do pedido.

– Um atributo deve ser designado à uma única entidade.

Page 24: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

ATRIBUTOSATRIBUTOS

• Convenções do Diagrama– Os nomes dos atributos são simples e mostrados abaixo do nome da

entidade.

– Listar os nomes dos atributos nos soft box de suas devidas entidades.

• NomenclaturaENTIDADE CURSO– cd_curso - código do curso

– nm_curso - nome do curso

– ds_curso - descrição do curso

ENTIDADE CURSO– codcurso - código do curso

– nome - nome do curso

– Descrição – descrição do curso

nr_telefone - número do telefone tp_sexo - tipo de sexo (domínio)

dt_nascimento - data de nascimento vl_salario - valor do salário

Page 25: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

ATRIBUTOSATRIBUTOS

• Exemplo

Page 26: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

ATRIBUTOSATRIBUTOS

• Opcionalidade (cardinalidade)• Identificar cada opção de atributo usando uma marca.

• Atributos Obrigatórios

• Um valor deve serconhecido por cada ocorrência da entidade.

• Marque-o com *.

• Atributos Opcionais

• Um valor pode ser conhecido para cada ocorrência da entidade.

• Marque-o com o.

• Exemplo– Identificar os atributos para a entidade PESSOA. Determinar sua opcionalidade.

Page 27: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

ATRIBUTOSATRIBUTOS• Identificar atributos

– Identificar atributos pelo exame das notas da entrevista e pela solicitação das perguntas do usuário.

• Atributos podem aparecer nas notas da entrevista como:• Frases ou palavras descritivas

• Substantivos

• Frases preposicionais (ex.- quantia do salário para cada empregado)

• Substantivos possesivos e pronomes (ex.- nome do empregado)

• Questões para perguntar ao usuário• Que informação você precisa saber ou manter sobre a entidade x?

• Que informação você gostaria de exibir sobre a entidade x?

• Examinar documentação existente, manual de procedimentos ou automatizar sistemas para descobrir atributos adicionais e omissões.

Page 28: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

IDENTIFICADORES IDENTIFICADORES ÚÚNICOSNICOS• Um Identificador Único (UID) é qualquer combinação de atributos

e/ou relacionamentos que serve para unicamente identificar uma ocorrência de uma entidade. Cada ocorrência da entidade deve serunicamente identificável.

• Exemplo

– No negócio, cada ocorrência do DEPARTAMENTO é unicamente identificável pelo seu código de departamento.

Page 29: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

IDENTIFICADORES IDENTIFICADORES ÚÚNICOSNICOS• Exemplo

• Para um pequeno teatro, cada bilhete é unicamente identificável pela sua data de performance e o número da cadeira.

• UID para a entidade BILHETE DO TEATRO é uma combinação dos dois atributos.

• A entidade deve ter um UID, ou então não é entidade

• Notas • Todos os componentes do UID devem ser obrigatórios.

• Marque o atributo UID com #.

Page 30: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

IDENTIFICADORES IDENTIFICADORES ÚÚNICOSNICOS• Uma entidade pode ser unicamente identificada através de uma

relação.• Exemplo

– Na indústria dos bancos, para cada banco é atribuido um único número. Dentro de um banco, cada conta tem um único número. Qual é o UID da entidade CONTA?

– CONTA é unicamente identificada pelo seu número de atributo e o específico BANCO com que ela está relacionada.

• Usar a barra UID para indicar que a relação é parte do UID da entidade.

• Exemplo– A barra UID indica que o relacionamento com BANCO é parte do UID da CONTA.

BANCO#cd_banco

CONTA

o gerentede

#nr_conta

gerenciadopor

Page 31: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• Cada entidade deve ter várias instâncias ou ocorrências.– Exemplos– A entidade EMPREGADO tem uma instância para cada empregado no negócio:

João Alves, Maria do Carmo e Egberto da Silva são todos as instâncias da entidade EMPREGADO.

• Cada instância da entidade tem específicos valores para seus atributos. – Exemplo– A entidade EMPREGADO tem atributos de nome, número, data de nascimento e

salário.

– A instância João Alves tem os seguintes valores: nome João Alves, número: 1322, data de nascimento 15-mar-50 e o salário de R$1000.

INSTÂNCIAINSTÂNCIA

Page 32: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• Notas:

− Instâncias são as vezes confundidos com entidades.

− A entidade é uma classe ou categoria da coisa.

ex.: EMPREGADO.

− A instância é uma coisa específica.

ex.: o empregado João Alves.

INSTÂNCIAINSTÂNCIA

Page 33: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• Siga os passos abaixo para identificar e modelar entidades a partir de um conjunto de notas de uma entrevista.

– Examine os substantivos. Eles são objetos significantes?– Nomeie cada entidade.

– Existe alguma informação ou interesse sobre a entidade que o negócio (empresa) precisa manter?

– Cada instância da entidade é unicamente identificável? Qual atributo ou atributos poderiam servir como um UID?

PASSOS PARA IDENTIFICARPASSOS PARA IDENTIFICAR

Page 34: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

• Siga os passos abaixo para identificar e modelar entidades a partir de um conjunto de notas de uma entrevista.

- Faça uma descrição disso: “Um empregado tem a importância de um assalariado da companhia. Por exemplo, Egberto da Silva e Maria do Carmo são EMPREGADOS.”

– Diagrame cada entidade e alguns de seus atributos.

PASSOS PARA IDENTIFICARPASSOS PARA IDENTIFICAR

Page 35: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

ExercExercíício 1cio 1

Page 36: MODELAGEM DE DADOS - paginas.unisul.brpaginas.unisul.br/edson.thizon/PDF/aula2_modelo_dados.pdf · estágio de modelagem de dados conceitual. – Mudanças nos requisitos durante

Referências BibliogrReferências Bibliográáficasficas

• KORTH, Henry F. & SILBERSCHATZ, Abraham. Sistemas de Bancos de Dados, São Paulo. Ed. Makron Books, 1999.

• HEUSER, Carlos Alberto. Projeto de Banco de Dados. 4ª Edição. Ed. Sagra, 2001.