Modelagem

43
1 Projeto do Banco de Dados Projeto do Banco de Dados 1. 1. caracterizar todos os dados necessários na caracterizar todos os dados necessários na perspectiva do usuário Resultado: perspectiva do usuário Resultado: especificação especificação das necessidades do usuário das necessidades do usuário (análise de (análise de requisitos) requisitos) 2. 2. transcrever as necessidades especificadas transcrever as necessidades especificadas em esquema conceitual de BD. Resultado: em esquema conceitual de BD. Resultado: projeto-conceitual projeto-conceitual 3. 3. transporte do modelo de dados abstrato para transporte do modelo de dados abstrato para sua implementação: sua implementação: projeto lógico projeto lógico :o esquema conceitual de alto :o esquema conceitual de alto nível mapeado para modelo de implementação nível mapeado para modelo de implementação de dados do SGBD que será usado de dados do SGBD que será usado projeto físico projeto físico : dependente dos recursos do : dependente dos recursos do SGBD, cuida das formas de organização de SGBD, cuida das formas de organização de arquivos e estruturas internas de arquivos e estruturas internas de armazenamento. armazenamento.

Transcript of Modelagem

Page 1: Modelagem

11

Projeto do Banco de DadosProjeto do Banco de Dados1.1.caracterizar todos os dados necessários na caracterizar todos os dados necessários na

perspectiva do usuário Resultado: perspectiva do usuário Resultado: especificação especificação das necessidades do usuáriodas necessidades do usuário (análise de (análise de requisitos) requisitos)

2.2. transcrever as necessidades especificadas em transcrever as necessidades especificadas em esquema conceitual de BD. Resultado: esquema conceitual de BD. Resultado: projeto-projeto-conceitualconceitual

3.3. transporte do modelo de dados abstrato para sua transporte do modelo de dados abstrato para sua implementação: implementação: • projeto lógicoprojeto lógico:o esquema conceitual de alto :o esquema conceitual de alto

nível mapeado para modelo de implementação nível mapeado para modelo de implementação de dados do SGBD que será usado de dados do SGBD que será usado

• projeto físicoprojeto físico: dependente dos recursos do : dependente dos recursos do SGBD, cuida das formas de organização de SGBD, cuida das formas de organização de arquivos e estruturas internas de arquivos e estruturas internas de armazenamento.armazenamento.

Page 2: Modelagem

22

Etapas para o projeto de um BDEtapas para o projeto de um BDAnálise

derequisitos

ProjetoLógico

ProjetoFísico

ProjetoConceitual

(DER)

As etapas nãoconsideram ainda nenhumacaracterísticaespecífica deum SGBD

Analista:EntrevistaNecessidade do negócio

Modelagem de dadosDefinição: entidade,atributo, relaciona-mentos.

Definição de tabelasÍndices, Visões

Construção do BDLing. SQLDicionário de dados

Page 3: Modelagem

33

Análise de requisitosAnálise de requisitos

A análise ou engenharia de requisitos é o A análise ou engenharia de requisitos é o primeiro passo do processo de software. É primeiro passo do processo de software. É nesse ponto que uma declaração geral do nesse ponto que uma declaração geral do escopo do software é refinada para escopo do software é refinada para constituir uma especificação completa que constituir uma especificação completa que se torna a base de todas as atividades de se torna a base de todas as atividades de engenharia de software que se seguem.engenharia de software que se seguem.

A análise de requisitos fornece um A análise de requisitos fornece um mecanismo adequado para entender o que mecanismo adequado para entender o que o cliente deseja, analisar as necessidades, o cliente deseja, analisar as necessidades, negociar uma solução razoável, especificar negociar uma solução razoável, especificar e validar a solução.e validar a solução.

Page 4: Modelagem

44

Problemas em potencial que nos ajudam a Problemas em potencial que nos ajudam a compreender por que a análise de compreender por que a análise de requisitos é difícil:requisitos é difícil:

Problemas de escopo Problemas de escopo o limite do sistema é mal o limite do sistema é mal definido ou o cliente especifica detalhes definido ou o cliente especifica detalhes desnecessários.desnecessários.

Problemas de entendimento Problemas de entendimento os clientes/usuários os clientes/usuários não estão completamente certos do que é não estão completamente certos do que é necessário, têm dificuldade de comunicar as necessário, têm dificuldade de comunicar as necessidades e omitem informação que acreditam necessidades e omitem informação que acreditam ser “óbvia”.ser “óbvia”.

Problemas de volatilidade Problemas de volatilidade os requisitos mudam ao os requisitos mudam ao longo do tempo.longo do tempo.

Análise de requisitosAnálise de requisitos

Page 5: Modelagem

55

Para ajudar a contornar esses problemas, os Para ajudar a contornar esses problemas, os engenheiros (analistas) de sistemas devem engenheiros (analistas) de sistemas devem abordar a atividade de análise de requisitos de abordar a atividade de análise de requisitos de um modo organizado.um modo organizado.

Sommerville e Sawyer (1997) sugerem os Sommerville e Sawyer (1997) sugerem os seguintes passos:seguintes passos:

Avalie a viabilidade técnica e de negócios do sistema Avalie a viabilidade técnica e de negócios do sistema proposto;proposto;

Identifique as pessoas que vão ajudar a especificar os Identifique as pessoas que vão ajudar a especificar os requisitos;requisitos;

Defina o ambiente técnico no qual o sistema vai ser Defina o ambiente técnico no qual o sistema vai ser colocado;colocado;

Defina um ou mais métodos para o levantamento dos Defina um ou mais métodos para o levantamento dos requisitos (entrevistas, reuniões de equipe, etc)requisitos (entrevistas, reuniões de equipe, etc)

Análise de requisitosAnálise de requisitos

Page 6: Modelagem

66

Parte IIIParte III

Projeto ConceitualProjeto Conceitual

(Modelagem de Dados)(Modelagem de Dados)

Page 7: Modelagem

77

Projeto ConceitualProjeto Conceitual

Pode ser considerada a fase de análise dos dados Pode ser considerada a fase de análise dos dados (ou requisitos) capturados na etapa anterior.(ou requisitos) capturados na etapa anterior.

Nesta etapa é realizada o que se chama de Nesta etapa é realizada o que se chama de modelagem conceitual: são analisados os fatos modelagem conceitual: são analisados os fatos (entidades) de interesse e seus relacionamentos, (entidades) de interesse e seus relacionamentos, juntamente com seus atributos (propriedades ) e juntamente com seus atributos (propriedades ) e construída uma notação gráfica (abstrata, uma construída uma notação gráfica (abstrata, uma representação de alto nível) para facilitar o representação de alto nível) para facilitar o entendimento dos dados e suas relações.entendimento dos dados e suas relações.

A ferramenta mais empregada nesta etapa é o A ferramenta mais empregada nesta etapa é o Diagrama Entidade-Relacionamento (DER) Diagrama Entidade-Relacionamento (DER)

Page 8: Modelagem

88

Os elementos da análise estruturadaOs elementos da análise estruturada(revisão)(revisão)

DER DFD

Mostra as relações entre osobjetos de dados.

Mostra o fluxo de dados e as transformações que são aplicadasà medida que os dados se movemda entrada para a saída.

Page 9: Modelagem

99

Exemplo - DFDExemplo - DFD

Verificar validade do

pedidoCLIENTES

pedidosEDITORAS

Livros

Clientes

Editoras

Pedidos Pendentes

Preparar requisição p/

a editora

situação de crédito

ordens de compra

endereçodetalhes de livros

pedidos válidos

pedidos agrupados

Page 10: Modelagem

1010

Exemplo - DERExemplo - DERTipo

codtipo

nometipo

Lancamento

codlancamento

codconta (FK)codtipo (FK)valor

Corrente

codconta (FK)

Poupanca

codconta (FK)

Conta

codconta

codcliente (FK)

Clientes

codcliente

enderecoclientenomecliente

Agencia

codagencia

enderecoagencianomeagencia

Page 11: Modelagem

1111

DER – Diagrama Entidade-RelacionamentoDER – Diagrama Entidade-Relacionamento

O Diagrama Entidade-Relacionamento O Diagrama Entidade-Relacionamento (DER(DER) ou ) ou Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento (MER)(MER) foi foi definido por Peter Chen em 1976.definido por Peter Chen em 1976.

Peter Chen formulou a proposta do modelo E-R, Peter Chen formulou a proposta do modelo E-R, baseou-se na compreensão da realidade em que baseou-se na compreensão da realidade em que se situava o problema.se situava o problema.

“ “Como iremos projetar um sistema se não Como iremos projetar um sistema se não entendemos o negócio para o qual será entendemos o negócio para o qual será realizado? “ realizado? “

Page 12: Modelagem

1212

Dez anos depois que Peter Chen inventou o DER, Dez anos depois que Peter Chen inventou o DER, a modelagem estava se tornando amplamente a modelagem estava se tornando amplamente utilizada; no entanto, surgiram muitas formas utilizada; no entanto, surgiram muitas formas concorrentes, tais como:concorrentes, tais como:• MER estendido, proposto por Teorey (1986);MER estendido, proposto por Teorey (1986);• Os europeus focaram-se no NIAM (Naturallanguage Os europeus focaram-se no NIAM (Naturallanguage

Information Analysis Method;Information Analysis Method;• Nos anos 90, o setor de sistemas de informação Nos anos 90, o setor de sistemas de informação

começou a adotar duas grandes variações: IDEF1X começou a adotar duas grandes variações: IDEF1X (Bruce, 1992) e os dialetos de engenharia da (Bruce, 1992) e os dialetos de engenharia da informação, normalmente conhecidos como informação, normalmente conhecidos como “diagramação pé-de-galinha” (Everest, 1986).“diagramação pé-de-galinha” (Everest, 1986).

DER – Diagrama Entidade-RelacionamentoDER – Diagrama Entidade-Relacionamento

Page 13: Modelagem

1313

Um DER é uma representação gráfica, na Um DER é uma representação gráfica, na forma de um diagrama, onde são utilizados forma de um diagrama, onde são utilizados inicialmente apenas 3 conceitos: inicialmente apenas 3 conceitos:

EntidadeEntidade AtributoAtributo RelacionamentoRelacionamento

DER – Diagrama Entidade-RelacionamentoDER – Diagrama Entidade-Relacionamento

Page 14: Modelagem

1414

EntidadeEntidade

EntidadeEntidade é uma “coisa” ou um “objeto” no mundo é uma “coisa” ou um “objeto” no mundo real que pode ser identificada de forma unívoca real que pode ser identificada de forma unívoca em relação a todos os outros objetos.em relação a todos os outros objetos.

A entidade pode ser A entidade pode ser concretaconcreta (pessoa, livro), ou (pessoa, livro), ou pode ser pode ser abstrataabstrata (empréstimo, viajem de férias (empréstimo, viajem de férias ou um conceito).ou um conceito).

Conjunto de entidadesConjunto de entidades é um conjunto de é um conjunto de entidades de mesmo tipo que compartilham as entidades de mesmo tipo que compartilham as mesmas propriedades: os mesmas propriedades: os atributos.atributos.

Page 15: Modelagem

1515

AtributosAtributos

AtributosAtributos = propriedades descritivas de = propriedades descritivas de cada ocorrência de uma entidade ou cada ocorrência de uma entidade ou relacionamento.relacionamento.

Cada atributo possui um domínio Cada atributo possui um domínio (conjunto de valores possíveis).(conjunto de valores possíveis).

Atributos possíveis ao conjunto de Atributos possíveis ao conjunto de entidades entidades clientes:clientes: nome_cliente, , cnpj, , end_cliente..

Page 16: Modelagem

1616

AtributosAtributos

Um atributo pode ser caracterizado pelos Um atributo pode ser caracterizado pelos seguintes tipos:seguintes tipos:

• simples ou compostossimples ou compostos• monovalorados ou multivaloradosmonovalorados ou multivalorados• nulosnulos

Descrição: próxima página...

Page 17: Modelagem

1717

Atributos simples ou compostosAtributos simples ou compostos

Atributo simples: não é dividido em partes. Atributo composto pode ser dividido em

partes (isto é, outros atributos).Ex: nome_cliente pode ser estruturado em: prenome, nome-intermediário e

sobrenome.

Page 18: Modelagem

1818

Atributos mono ou multivaloradosAtributos mono ou multivalorados

O atributo num_emprestimo de uma entidade específica refere-se apenas a um número de empréstimo.

O atributo número do telefone pode assumir mais de um valor, como os números de telefone de uma empresa.

Page 19: Modelagem

1919

Atributo nuloAtributo nulo

Usado quando uma entidade não possui valor para determinado atributo.

Ex: se um empregado em particular não possui dependentes, o valor do atributo nome_dependente para este dependente deverá ser nulo, e isto significa que este atributo “não é aplicável”.

Nulo também pode significar que o valor do atributo é desconhecido.

Page 20: Modelagem

2020

Representação gráficaRepresentação gráfica

CLIENTE

Principais convenções:

• Nome da entidade singular e único.• Nome da entidade em maiúsculo.• Nomes dos atributos em minúsculo.• Cada Entidade deve ser identificadaunicamente. • Um atributo ou conjunto de atributosque identificam a unicidade da ocorrênciaem uma Entidade é chamado de Identificador Único (UID).

Page 21: Modelagem

2121

Representação gráficaRepresentação gráfica

CLIENTE

Cod_cli

Nome

End

Cod_cli

CLIENTE

Nome

End

Uma entidade CHEN

Uma entidade IDEF1X

Método:

Page 22: Modelagem

2222

RelacionamentosRelacionamentos

Representam associações entre entidades.Representam associações entre entidades. Em um DER, um Em um DER, um relacionamentorelacionamento é representado é representado

através de um através de um losangolosango, ligado por linhas aos , ligado por linhas aos retângulos representativos das entidades.retângulos representativos das entidades.

Um relacionamento pode ter atributos.Um relacionamento pode ter atributos.• Exemplo de relacionamento..

Não necessariamente um relacionamento associa Não necessariamente um relacionamento associa entidades diferentes. Um entidades diferentes. Um auto-relacionamentoauto-relacionamento demonstra um relacionamento entre ocorrências demonstra um relacionamento entre ocorrências de uma mesma entidade. Neste caso, existe o de uma mesma entidade. Neste caso, existe o conceito de papel(função) da entidade no conceito de papel(função) da entidade no relacionamento.relacionamento.• Exemplo de auto-relacionamento..

Page 23: Modelagem

2323

ExemplosExemplos

ENGENHEIRO PROJETOAtuação

Exemplo: Relacionamento

Page 24: Modelagem

2424

ExemplosExemplos

Exemplo: Auto-relacionamento

PESSOA

Casamento

marido esposa

Page 25: Modelagem

2525

Cardinalidade de relacionamentosCardinalidade de relacionamentos

Uma propriedade importante de um Uma propriedade importante de um relacionamento é a de quantas ocorrências de relacionamento é a de quantas ocorrências de uma entidade podem estar associadas a uma uma entidade podem estar associadas a uma determinada ocorrência através do determinada ocorrência através do relacionamento.relacionamento.

Há duas cardinalidades a considerar: a Há duas cardinalidades a considerar: a cardinalidade cardinalidade máximamáxima e a cardinalidade e a cardinalidade mínimamínima..

Classificação de relacionamentos binários:Classificação de relacionamentos binários:• 1:1 (um-para-um)1:1 (um-para-um)• 1:n (um-para-muitos)1:n (um-para-muitos)• n:n (muitos-para-muitos)n:n (muitos-para-muitos)

Page 26: Modelagem

2626

Relacionamento 1:1 Relacionamento 1:1 Neste grau de relacionamento, cada elemento de Neste grau de relacionamento, cada elemento de

uma entidade relaciona-se com um e somente uma entidade relaciona-se com um e somente um elemento de outra entidade.um elemento de outra entidade.

Devemos ler o relacionamento nos dois Devemos ler o relacionamento nos dois sentidossentidos em que ele se efetua. Logo lemos no em que ele se efetua. Logo lemos no caso da entidade Homem e da entidade Mulher, caso da entidade Homem e da entidade Mulher, que um Homem está casado somente com uma que um Homem está casado somente com uma Mulher e uma Mulher está casada com somente Mulher e uma Mulher está casada com somente um Homem.um Homem.

HOMEM MULHERCASADO1 1

HOMEM MULHERCASADO1 1

Resultado idêntico: 1:1

Page 27: Modelagem

2727

Relacionamento 1:nRelacionamento 1:n

Um elemento da Entidade 1 relaciona-se com muitos Um elemento da Entidade 1 relaciona-se com muitos elementos da Entidade 2, mas cada elemento da Entidade elementos da Entidade 2, mas cada elemento da Entidade 2 somente pode estar relacionado a um elemento da 2 somente pode estar relacionado a um elemento da Entidade 1.Entidade 1.

Devemos ter como regra geral,que um relacionamento é do Devemos ter como regra geral,que um relacionamento é do tipo Um-para-Muitos, quando um sentido de leitura dos tipo Um-para-Muitos, quando um sentido de leitura dos fatos nos apresenta este grau de Um-para-Muitos e o fatos nos apresenta este grau de Um-para-Muitos e o sentido oposto apresenta obrigatoriamente o grau Um-sentido oposto apresenta obrigatoriamente o grau Um-para-Um.para-Um.

EMPREGADO DEPTOLOTAÇÃON 1

Page 28: Modelagem

2828

Identifica-se esta cardinalidade pelo fato Identifica-se esta cardinalidade pelo fato de que em de que em ambos os sentidos de leituraambos os sentidos de leitura encontramos um grau 1:n, o que encontramos um grau 1:n, o que caracteriza ser então um contexto geral caracteriza ser então um contexto geral de n:n (de n:n (Muitos-para-Muitos).).

Relacionamento n:nRelacionamento n:n

ENGENHEIRO PROJETOALOCAÇÃON N

MÉDICO PACIENTECONSULTAN N

Page 29: Modelagem

2929

Cardinalidade de atributosCardinalidade de atributos

Um atributo pode assumir uma Um atributo pode assumir uma cardinalidade, de maneira análoga a uma cardinalidade, de maneira análoga a uma entidade em um relacionamento.entidade em um relacionamento.

A cardinalidade de um atributo define A cardinalidade de um atributo define quantos valores deste atributo podem quantos valores deste atributo podem estar associados a uma ocorrência da estar associados a uma ocorrência da entidade / relacionamento a qual ele entidade / relacionamento a qual ele pertence.pertence.

No caso da cardinalidade ser (1,1) ela No caso da cardinalidade ser (1,1) ela pode ser omitida do diagrama.pode ser omitida do diagrama.

Page 30: Modelagem

3030

Assim, o exemplo abaixo expressa que nome e Assim, o exemplo abaixo expressa que nome e código são atributos obrigatórios (cardinalidade código são atributos obrigatórios (cardinalidade mínima “1” – cada entidade possui no mínimo um mínima “1” – cada entidade possui no mínimo um valor associado) e monovalorados (cardinalidade valor associado) e monovalorados (cardinalidade máxima “1” – cada entidade possui no máximo máxima “1” – cada entidade possui no máximo um valor associado).um valor associado).

Já o atributo telefone, é um atributo opcional Já o atributo telefone, é um atributo opcional (cardinalidade mínima 0) e multivalorado (cardinalidade mínima 0) e multivalorado (cardinalidade máxima n).(cardinalidade máxima n).

Cardinalidade de atributosCardinalidade de atributos

CLIENTE

Cod_cli

Telefone (0,n)

Nome

Page 31: Modelagem

3131

Atributos de relacionamentoAtributos de relacionamento

Assim como entidades, relacionamentos também Assim como entidades, relacionamentos também podem possuir atributos.podem possuir atributos.

A figura abaixo, expressa um DER no qual um A figura abaixo, expressa um DER no qual um relacionamento, Atuação, possui um atributo, a relacionamento, Atuação, possui um atributo, a função que um engenheiro exerce dentro de um função que um engenheiro exerce dentro de um projeto.projeto.• Um engenheiro pode atuar em diversos projetos, Um engenheiro pode atuar em diversos projetos,

exercendo diferentes funções.exercendo diferentes funções.• Em um projeto, podem atuar diversos engenheiros com Em um projeto, podem atuar diversos engenheiros com

funções diferentes.funções diferentes.

ENGENHEIRO PROJETOATUAÇÃON N

Função

Page 32: Modelagem

3232

Entidade FracaEntidade Fraca

Em geral, uma entidade possui um único Em geral, uma entidade possui um único atributo como identificador.atributo como identificador.

Em alguns casos, o identificador de uma Em alguns casos, o identificador de uma entidade é composto por diversos entidade é composto por diversos atributos.atributos.

PESSOACodigo

NomeEndereço

PRATELEIRANum_corredor

Num_prateleiraCapacidade

Page 33: Modelagem

3333

Finalmente, há casos em que o identificador de Finalmente, há casos em que o identificador de uma entidade é composto não somente por uma entidade é composto não somente por atributos da própria entidade, mas também por atributos da própria entidade, mas também por relacionamentos dos quais a entidade participa.relacionamentos dos quais a entidade participa.

Entidade FracaEntidade Fraca

EMPREGADO DEPENDENTEResp.(1,1) (0,n)

Cód_emp nome Num_seq.nome

Id = cod_emp + num_seq.

Page 34: Modelagem

3434

Entidade FracaEntidade Fraca

Neste caso, a entidade DEPENDENTE é Neste caso, a entidade DEPENDENTE é considerada uma entidade “fraca”, pois a considerada uma entidade “fraca”, pois a entidade somente pode existir quando entidade somente pode existir quando relacionada a outra entidade e de usar relacionada a outra entidade e de usar como parte de seu identificador, entidades como parte de seu identificador, entidades relacionadas.relacionadas.

Page 35: Modelagem

3535

Especialização / GeneralizaçãoEspecialização / Generalização

O conceito de especialização permite atribuir propriedades O conceito de especialização permite atribuir propriedades particulares a um subconjunto das ocorrências particulares a um subconjunto das ocorrências (especializadas) de uma entidade genérica.(especializadas) de uma entidade genérica.

No DER, o símbolo para representar especialização é um No DER, o símbolo para representar especialização é um triângulo.triângulo.

A especialização mostra que a entidade cliente é dividida A especialização mostra que a entidade cliente é dividida em dois subconjuntos, as entidades pessoa física e pessoa em dois subconjuntos, as entidades pessoa física e pessoa jurídica, cada uma com propriedades próprias.jurídica, cada uma com propriedades próprias.

Associada ao conceito de especialização está a idéia de Associada ao conceito de especialização está a idéia de herança de propriedades. Herdar propriedades significa que herança de propriedades. Herdar propriedades significa que cada ocorrência da entidade especializada possui, além de cada ocorrência da entidade especializada possui, além de suas próprias propriedades, também as propriedades da suas próprias propriedades, também as propriedades da ocorrência da entidade genérica correspondente.ocorrência da entidade genérica correspondente.

Page 36: Modelagem

3636

Especialização / GeneralizaçãoEspecialização / Generalização

FILIAL CLIENTEFil-Cli(1,1) (0,n)

PESSOAFÍSICA

PESSOAJURÍDICA

códigonome

cpf cnpj

Page 37: Modelagem

3737

A especialização pode ser classificada em dois tipos, A especialização pode ser classificada em dois tipos, totaltotal ou ou parcialparcial, de acordo com a obrigatoriedade ou não de a , de acordo com a obrigatoriedade ou não de a cada ocorrência da entidade genérica corresponder uma cada ocorrência da entidade genérica corresponder uma ocorrência da entidade especializada.ocorrência da entidade especializada.

Especialização / GeneralizaçãoEspecialização / Generalização

CLIENTE

PESSOAFÍSICA

PESSOAJURÍDICA

t

EMPREGADO

MOTORISTA SECRETÁRIA

p

Indica que

cliente é PF ou PJ

Indica que nem todo

EMP é motorista

ou secretária

Page 38: Modelagem

3838

Relacionamento TernárioRelacionamento Ternário

Todos os exemplos até aqui mostrados são de Todos os exemplos até aqui mostrados são de relacionamentos binários.relacionamentos binários.

A abordagem ER permite que sejam definidos A abordagem ER permite que sejam definidos relacionamentos de grau maior que dois.relacionamentos de grau maior que dois.

O exemplo abaixo mostra um relacionamento O exemplo abaixo mostra um relacionamento ternário.ternário.

PROFESSOR

DISCIPLINAALUNON N

1

Descrição: próxima página...

Page 39: Modelagem

3939

Relacionamento TernárioRelacionamento Ternário

No caso de relacionamento ternário, a No caso de relacionamento ternário, a cardinalidade refere-se a cardinalidade refere-se a parespares de entidadesde entidades..

Separar a entidade Separar a entidade ALUNOALUNO e analisar o par e analisar o par PROFESSOR / DISCIPLINAPROFESSOR / DISCIPLINA. Para cada par . Para cada par PROFESSOR / DISCIPLINA podemos ter de PROFESSOR / DISCIPLINA podemos ter de 1 até N1 até N alunos relacionados;alunos relacionados;

Separar a entidade Separar a entidade PROFESSORPROFESSOR e analisar o par e analisar o par ALUNO / DISCIPLINAALUNO / DISCIPLINA. Para cada par ALUNO / . Para cada par ALUNO / DISCIPLINA podemos ter DISCIPLINA podemos ter 1 e somente 11 e somente 1 PROFESSOR PROFESSOR relacionado; relacionado;

Separar a entidade Separar a entidade DISCIPLINADISCIPLINA e analisar o par e analisar o par PROFESSOR / ALUNOPROFESSOR / ALUNO. Para cada par PROFESSOR / . Para cada par PROFESSOR / ALUNO podemos ter de ALUNO podemos ter de 1 até N1 até N DISCIPLINAS DISCIPLINAS relacionadas. relacionadas.

Page 40: Modelagem

4040

Modelos equivalentesModelos equivalentes

MÉDICO PACIENTECONSULTAN N

MÉDICO PACIENTE

CONSULTA

NN

11

Page 41: Modelagem

4141

Variantes da abordagem ERVariantes da abordagem ER

Atualmente observa-se uma variedade de Atualmente observa-se uma variedade de representações gráficas que levam o título de ER.representações gráficas que levam o título de ER.

A notação mais utilizada é a do tipo “Chen” pois, A notação mais utilizada é a do tipo “Chen” pois, com algumas extensões segue a notação com algumas extensões segue a notação proposta por Peter Chen em seu primeiro artigo.proposta por Peter Chen em seu primeiro artigo.

Além desta notação duas famílias de notações Além desta notação duas famílias de notações têm importância:têm importância:• Engenharia da InformaçãoEngenharia da Informação (diagramação “pé-de-linha”) (diagramação “pé-de-linha”)• IDEF1XIDEF1X (Integration DEFinition for Information Modeling). (Integration DEFinition for Information Modeling).

Page 42: Modelagem

4242

Notação Engenharia da InformaçãoNotação Engenharia da Informação

DEPTO EMPREGADOLOTAÇÃO(1,1) (0,N)

DEPTO EMPREGADOTem lotado

Está lotado em

Page 43: Modelagem

4343

Notação IDEF1XNotação IDEF1X

DEPTO EMPREGADOLOTAÇÃO1 N

Cod_cli

CLIENTE

Nome

End

Codigo

RAMO_ATIV.

Descrição