14.03.2015 Views

Diagrama Entidade-Relacionamento (DER) - DEINF/UFMA

Diagrama Entidade-Relacionamento (DER) - DEINF/UFMA

Diagrama Entidade-Relacionamento (DER) - DEINF/UFMA

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

• Descreve relacionamentos entre objetos<br />

de dados;<br />

• conduz à modelagem de dados;<br />

• atributos de cada objeto =><br />

Descrição de Objetos de Dados;<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 1


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

entendo<br />

Reino<br />

Real<br />

Reino<br />

Imaginário<br />

(modelagem)<br />

Reino<br />

Representação<br />

represento<br />

– Nós não somos capazes de representar tudo o que imaginamos.<br />

– Nós somente representamos o que é interessante.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 2


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

• Quais são os objetos de dados a serem<br />

processados pelo sistema?<br />

• Qual é a composição de cada objeto de dado e<br />

quais atributos descrevem o objeto?<br />

• Onde os objetos estão localizados?<br />

• Quais são os relacionamentos entre os objetos?<br />

• Qual é o relacionamento entre os objetos e os<br />

processos que os transformam?<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 3


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 4


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

MODELO DE DADOS - OBJETIVO Se chegar a um<br />

modelo teoricamente independente de máquina.<br />

*<br />

*<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 5


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

REPRESENTAÇÃO GRÁFICA DO <strong>DER</strong><br />

ENTIDADES<br />

(Objetos )<br />

FUNCIONÁRIOS<br />

FUNCIONÁRIOS<br />

matrícula<br />

nome<br />

ATRIBUIÇÕES<br />

(Descrição)<br />

RELACIONAMENTO<br />

(Forma como iteragem)<br />

lotações<br />

Profa. Maria Auxiliadora<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

6


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

ENTIDADE - todas as coisas que podemos<br />

observar no nosso cotidiano.<br />

Representa objetos<br />

FUNCIONÁRIO<br />

DEPARTAMENTO<br />

COR<br />

PRODUTO<br />

LIVRO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 7


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

ENTIDADE - todas as coisas que podemos<br />

observar no nosso cotidiano.<br />

Representa Evento<br />

PEDIDO ( representa Pedido de Venda)<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 8


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

ENTIDADE - Identifique a partir de um contexto.<br />

COR<br />

Contexto Fabricante é um OBJETO <br />

ENTIDADE<br />

Contexto Revenda de Carro é uma<br />

CARACTERÍSTICA ATRIBUTO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 9


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Identificando uma ENTIDADE<br />

• Toda ENTIDADE deve ter um identificador<br />

Exemplo:<br />

FUNCIONÁRIO matrícula<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 10


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Tipos de ENTIDADE<br />

• ENTIDADE FRACA não tem vida própria<br />

FUNCIONÁRIOS<br />

Têm<br />

DEPENDENTES<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 11


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

• Uma entidade fraca pode ser identificada<br />

considerando a chave primaria de outra entidade<br />

(proprietária).<br />

• Conjuntos de entidades proprietárias e conjuntos<br />

de entidades fracas tem que participar em conjunto<br />

de relacionamentos um- para- muitos.<br />

• Conjuntos de entidades fracas tem que ter<br />

participação total neste conjunto de relacionamento<br />

identificadores.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 12


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Tipos de ENTIDADE<br />

GENERALIZAÇÃO particionada<br />

Exemplo1<br />

EMPREGADO<br />

• Razões para se usar TIPO :<br />

ENGENHEIRO<br />

TIPO<br />

MOTORISTA<br />

– Para adicionar atributos<br />

descritivos para uma subclasse.<br />

– Para identificar entidades<br />

que participam de um<br />

relacionamento.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 13


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Exemplo2<br />

EMPREGADO<br />

TIPO<br />

Emp_horista<br />

Emp_Contratado<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 14


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Exemplo3 - inverso<br />

CLIENTE<br />

CARTÃO<br />

DE CRÉDITO<br />

CLIENTE<br />

CLIENTE<br />

A<br />

DINHEIRO<br />

CLIENTE<br />

CARTÃO<br />

DE CRÉDITO<br />

CLIENTE<br />

A<br />

DINHEIRO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 15


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Exemplo4 - inverso<br />

No. SÓCIO<br />

DT-ASSOC.<br />

SÓCIO<br />

PESSOA-FÍSICA<br />

CPF<br />

NOME<br />

NASC.<br />

SEXO<br />

SÓCIO<br />

SÓCIO<br />

PESSOA-<br />

JURÍDICA<br />

CGC<br />

RAZÃO<br />

RAMO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 16


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

ATRIBUTOS - descrição através de suas<br />

características particulares.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 17


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

TIPOS DE ATRIBUTOS<br />

IDENTIFICADOR ÚNICO Um ou mais<br />

atributos de uma entidade cujo conteúdo<br />

individualiza uma única ocorrência desta<br />

<strong>Entidade</strong>.<br />

matrícula identifica a <strong>Entidade</strong><br />

FUNCIONÁRIO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 18


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

• SIMPLES Atributo indivisíveis<br />

‣ nome, salário, cargo...<br />

• COMPOSTO ou CONCATENADO <br />

Conjunto de vários atributos.<br />

‣endereço rua,número,bairro,CEP<br />

• MULTIVALORADOS Multivalente<br />

‣ telefone * [resid | celular | comer ]<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 19


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Estudo de Caso 1 - Exemplificar um objeto com<br />

suas características dentro do contexto<br />

Contratação de Modelos Fotográficos.<br />

CANDITADOS<br />

nome<br />

peso<br />

cor<br />

altura<br />

medidas<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 20


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Representação do <strong>DER</strong><br />

PARTE ESTÁTICA ENTIDADE<br />

ATRIBUTOS<br />

PARTE DINÂMICA RELACIONAMENTO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 21


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Exemplo<br />

Clientes solicitam Cotações que geram<br />

Pedidos de Vendas quando aprovados; os<br />

Pedidos vendem Produtos em<br />

quantidades e preços diferentes que são<br />

faturados através da Nota fiscal, que é<br />

paga em parcelas pelas Duplicatas, etc.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 22


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

RELACIONAMENTO descreve<br />

cronologicamente a dinâmica. Sendo que<br />

para cada relacionamento é registrado um<br />

tipo de movimento.<br />

Lotação<br />

lotado em<br />

DEPARTAMENTO<br />

lota<br />

FUNCIONÁRIO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 23


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Tipos de <strong>Relacionamento</strong> <br />

‣ POSSE<br />

FUNCIONÁRIO Possui DEPENDENTE<br />

CLIENTE Possui CONTA_BANCÁRIA<br />

‣ COMPOSIÇÃO<br />

COMPONENTE Compõe<br />

PRODUTO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 24


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Tipos de <strong>Relacionamento</strong> <br />

‣ GERAÇÃO / ORIGEM<br />

COTAÇÃO Gera PEDIDO<br />

‣ ALOCAÇÃO<br />

ANALISTA é_alocado_em PROJETO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 25


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Exemplo 1 <br />

Funcionário participa de curso e temos o<br />

controle do inicio do curso, fim do curso e<br />

nota do curso.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 26


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Exemplo 2 <br />

Carlos Lopes, engenheiro em informática,<br />

43 anos, possui um Gol 93, cor cinza,<br />

desde de 1997...<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 27


<strong>Diagrama</strong> <strong>Entidade</strong>-<strong>Relacionamento</strong> (<strong>DER</strong>)<br />

Exemplo 3 <br />

Sandra Maria, engenheira naval,23 anos,<br />

Analista de Sistema; tem especialização em<br />

banco de dados, Linguagem de Quarta<br />

Geração e Modelagem de Dados. Possui um<br />

Gol cor verde desde 1995.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 28


CARDINALIDADE DOS RELACIONAMENTOS<br />

(Informação Semântica)<br />

• Define o número de ocorrências de uma <strong>Entidade</strong><br />

que pode estar envolvida em um relacionamento;<br />

• Indica a relação existente entre todas as linhas de<br />

uma <strong>Entidade</strong> “A” com todas as linhas de uma<br />

<strong>Entidade</strong> “B”;<br />

• É um indicador de opcionalidade, unicidade e<br />

multiplicidade dos relacionamento entre duas<br />

<strong>Entidade</strong>s, determinando o mínimo e o máximo de<br />

ocorrências.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 29


CARDINALIDADE DOS RELACIONAMENTOS<br />

(Informação Semântica)<br />

• Conjuntos de relacionamentos que envolvem dois<br />

conjuntos de entidades são binários (ou de grau<br />

dois).<br />

• Conjuntos de relacionamentos podem envolver<br />

mais que dois conjuntos de entidades. Os conjuntos<br />

de entidades cliente, empréstimo, agência podem<br />

ser “ligados” por um conjunto de relacionamentos<br />

ternário (grau três).<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 30


domínio<br />

imagem<br />

CARDINALIDADE DOS RELACIONAMENTOS<br />

APLICAÇÕES SOBRE DADOS<br />

P = { p1, p2, p3, p4} Q = { q1, q2, q3 }<br />

P1<br />

A<br />

Q1<br />

P2<br />

Q2<br />

P3<br />

Q3<br />

P4<br />

A = { (p1,q1),( p2,q1), (p3,q2), (p3,q3),(p4,q4) }<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 31


CARDINALIDADE DOS RELACIONAMENTOS<br />

APLICAÇÕES SOBRE DADOS<br />

Definição Formal:<br />

Sejam E1 e E2 conjuntos de entidades.<br />

Um conjunto de relacionamentos binários R é<br />

um subconjunto de:<br />

{(e 1 , e 2 ) e 1 E 1 e 2 E 2 },<br />

onde (e 1 , e 2 ) é um relacionamento.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 32


CARDINALIDADE DOS RELACIONAMENTOS<br />

APLICAÇÕES SOBRE DADOS<br />

–um-para-um (1:1) =><br />

”um marido pode ter somente uma esposa e viceversa”<br />

H<br />

M<br />

Adão<br />

José<br />

Romeu<br />

C<br />

Eva<br />

Maria<br />

Julieta<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 33


CARDINALIDADE DOS RELACIONAMENTOS<br />

APLICAÇÕES SOBRE DADOS<br />

– Aplicação 1:1 Domínio e Imagem podem ser fundidos<br />

Adão ,Eva<br />

C’<br />

José ,Maria<br />

Romeu ,Julieta<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 34


CARDINALIDADE DOS RELACIONAMENTOS<br />

APLICAÇÕES SOBRE DADOS<br />

–um-para-muitos (1:N) => ”uma marido pode ter muitas<br />

esposas, mas uma esposa tem apenas um marido.<br />

H<br />

M<br />

Eva<br />

Adão<br />

Cobra<br />

José<br />

Maria<br />

Romeu<br />

P<br />

Julieta<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 35


CARDINALIDADE DOS RELACIONAMENTOS<br />

APLICAÇÕES SOBRE DADOS<br />

Aplicação 1:N Os Elementos do domínio D podem ser<br />

expandidos ( não aconselhável).<br />

•Adão,Eva,Cobra<br />

D’<br />

• José, Maria<br />

• Romeu, Julieta<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 36


CARDINALIDADE DOS RELACIONAMENTOS<br />

APLICAÇÕES SOBRE DADOS<br />

muitos-para-muitos (M:N) => ”um marido pode ter várias mulheres,<br />

e uma mulher pode ter vários maridos<br />

H<br />

M<br />

Adão<br />

Eva<br />

José<br />

Romeu<br />

P<br />

Maria<br />

Julieta<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 37


CLASSE DE UM RELACIONAMENTO<br />

• Peter Chen<br />

Notação<br />

1<br />

FUNCIONÁRIO Gerencia<br />

1<br />

DEPART.<br />

•James Martin<br />

FUNCIONÁRIO<br />

DEPART.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 38


CLASSE DE UM RELACIONAMENTO<br />

Notação<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 39


CLASSE DE UM RELACIONAMENTO<br />

Notação James Martin<br />

Empregado<br />

Departamento<br />

Exemplo de Modelagem, onde:<br />

= muitos<br />

= um<br />

= a ocorrência do relacionamento é opcional;<br />

= a ocorrência do relacionamento é obrigatória;<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 40


CLASSE DE UM RELACIONAMENTO<br />

• Um-para-um (1: 1).<br />

1<br />

FUNCIONÁRIO Gerencia<br />

1<br />

DEPART.<br />

Ou simplesmente<br />

FUNCIONÁRIO<br />

DEPART.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 41


CLASSE DE UM RELACIONAMENTO<br />

• Muitos-para-um ( N : 1)<br />

N<br />

FUNCIONÁRIO Lota 1<br />

DEPART.<br />

Ou simplesmente<br />

FUNCIONÁRIO<br />

DEPART.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 42


CLASSE DE UM RELACIONAMENTO<br />

• Muitos-para-muitos ( N : N)<br />

N<br />

N<br />

PEDIDOS tem PRODUTOS<br />

Em cada pedido, pode ter muitos<br />

produtos diferentes, e um produto pode fazer<br />

parte de diversos pedidos.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 43


cod-ped<br />

CLASSE DE UM RELACIONAMENTO<br />

• Muitos-para-muitos ( N : N)<br />

PRODUTO<br />

ITEM_PEDIDO<br />

cod_ped + cod_prod<br />

cod-prod<br />

PEDIDO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 44


MODALIDADE DE UM RELACIONAMENTO<br />

• MODALIDADE: indica se um elemento precisa<br />

ou não participar em um relacionamento;<br />

– relacionamento = 0<br />

não é necessária a ocorrência do<br />

relacionamento, ele é opcional;<br />

– relacionamento = 1<br />

uma ocorrência do relacionamento é<br />

obrigatória);<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 45


NATUREZA DE UM RELACIONAMENTO<br />

• TOTAIS<br />

• PARCIONAIS<br />

• RECURSIVOS OU AUTO-RELACIONAMENTO<br />

• RELACIONAMENTO MÚLTIPLOS<br />

• AGREGAÇÃO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 46


NATUREZA DE UM RELACIONAMENTO<br />

Seja E conjunto de entidades e R<br />

conjunto de relacionamentos em que<br />

E participa.<br />

Se todo elemento de E deve estar<br />

obrigatoriamente em R, então R é<br />

TOTAL em E; caso contrário, R é<br />

PARCIAL em E.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 47


NATUREZA DE UM RELACIONAMENTO<br />

Definição Formal:<br />

Dado um conjunto de relacionamentos R<br />

entre E 1 e E 2 ,<br />

R é TOTAL em E 1 se e 1 E 1 , e 2 E 2<br />

[(e 1 , e 2 ) R];<br />

R é PARCIAL em E 1 se e 1 E 1 , e 2 E 2<br />

[(e 1 , e 2 ) R].<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 48


NATUREZA DE UM RELACIONAMENTO<br />

TOTAL / PARCIAL<br />

FUNCIONÁRIO<br />

DEPART.<br />

Todo funcionário obrigatoriamente<br />

( | ) lota um departamento, mas<br />

nem todo (0) departamento é lotado<br />

por funcionários Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 49


NATUREZA DE UM RELACIONAMENTO<br />

TOTAL / PARCIAL<br />

FUNCIONÁRIO<br />

DEPART.<br />

Todo funcionário ( | ) lota um<br />

departamento; todo departamento é<br />

lotado por vários ( ) funcionários<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 50


NATUREZA DE UM RELACIONAMENTO<br />

RECURSIVO<br />

FUNCIONÁRIO<br />

1 N<br />

GERENCIA<br />

GERENCIADO<br />

Gerência<br />

Funcionário desempenha o papel de gerente<br />

ou de subordinado<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 51


NATUREZA DE UM RELACIONAMENTO<br />

EXEMPLO CLÁSSICO DE RECURSIVIDADE<br />

N<br />

é composto por<br />

PEÇAS<br />

N<br />

compõe<br />

Componentes<br />

“motor” COMPOSTO POR parafuso<br />

“parafuso” COMPÕE “motor”<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 52


NATUREZA DE UM RELACIONAMENTO<br />

RELACIONAMENTO MÚLTIPLOS<br />

PROFESSOR<br />

1<br />

Ensina N<br />

DISCIPLINA<br />

N<br />

ALUNO<br />

( P1,D1,A1 )<br />

( P1,D1,A2 )<br />

( P3,D1,A2 )<br />

<br />

Não pode existir<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 53


NATUREZA DE UM RELACIONAMENTO<br />

AGREGAÇÃO<br />

PROFESSOR<br />

1<br />

Ensina N<br />

DISCIPLINA<br />

1<br />

Cursa<br />

N<br />

ALUNO<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 54


NORMAS P/ DESENHAR UM <strong>DER</strong><br />

1. Identificar os conjuntos de entidades e<br />

os conjuntos de relacionamento;<br />

Baseado numa descrição grifar todos os<br />

substantivos e circular os verbos que sejam<br />

relevantes.<br />

Os funcionários trabalham em departamento<br />

específico.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 55


NORMAS P/ DESENHAR UM <strong>DER</strong><br />

Os funcionários trabalham em departamento<br />

específico.<br />

FUNCIONÁRIO<br />

DEPART.<br />

O funcionário fornece seu nome e CPF<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 56


NORMAS P/ DESENHAR UM <strong>DER</strong><br />

2. Identificar as informações sobre<br />

características (classe) de cada conjunto<br />

de relacionamentos, tais como<br />

aplicações: 1:1, 1:N, e N:M;<br />

FUNCIONÁRIO<br />

DEPART.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 57


NORMAS P/ DESENHAR UM <strong>DER</strong><br />

3. Definição dos conjuntos de valores e<br />

atributos; Atributos, quando se tratar de<br />

uma característica comum a um conjunto<br />

de objetos.<br />

FUNCIONÁRIO<br />

matricula<br />

nome<br />

sexo<br />

data_nasc<br />

endereço<br />

salário<br />

cargo<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

DEPART.<br />

cód_descrição<br />

descrição<br />

Profa. Maria Auxiliadora 58


NORMAS P/ DESENHAR UM <strong>DER</strong><br />

4. Identificar o(s) atributos identificar(es);<br />

matricula<br />

nome<br />

sexo<br />

data_nasc<br />

endereço<br />

salário<br />

cargo<br />

FUNCIONÁRIO<br />

DEPART.<br />

cód_descrição<br />

descrição<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 59


NORMAS P/ DESENHAR UM <strong>DER</strong><br />

4 Dicionário de Dados.<br />

FUNCIONÁRIO = matricula + nome +<br />

sexo + data_nasc +<br />

endereço + salário +<br />

cargo<br />

DEPART. = cód_descrição + descrição<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 60


Estudo de Casos<br />

1- Os alunos cursam as disciplinas<br />

dependendo do pré-requisito.<br />

2- Faça um <strong>DER</strong> que represente sistema<br />

de uma seguradora de automóveis com<br />

um grupo de clientes, cada um deles com<br />

diversos carros. Cada carro possui um<br />

número de acidentes registrados<br />

associados a eles.<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 61


Estudo de Casos<br />

3- Sistema de Reserva do Hotel.<br />

4- Sistema de Locadora de Filmes.<br />

5- Faça um <strong>DER</strong> que represente a entrega<br />

de produtos de uma empresa a seus<br />

clientes. A empresa que possui vários<br />

depósitos. (continua)<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 62


Estudo de Casos<br />

Considere após terminar seu diagrama se é possível<br />

você obter as informações abaixo:<br />

1. Em que depósito determinado produto está<br />

estocado?<br />

2. Quais depósitos enviaram a um certo cliente o<br />

produto?<br />

3. De quais depósitos provieram as entregas para um<br />

cliente?<br />

4. Quais os produtos entregues a um determinado<br />

cliente?<br />

Fonte:<br />

PRESSMAN, ROGER - Engenharia de Software - 6° Edição<br />

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.<br />

Profa. Maria Auxiliadora 63

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!