cap8-der

76
Profa. Maria Auxiliadora 1 Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição POMPILHO, S. Análise Essencial Guia Prático de Análise de Sistemas. Modelagem dos dados Reino Real Imaginário Representação Reino Reino entendo represento (modelagem) Nós não somos capazes de representar tudo o que imaginamos. Nós somente representamos o que é interessante.

Transcript of cap8-der

Page 1: cap8-der

Profa. Maria Auxiliadora 1

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Modelagem dos dados

Reino

Real Imaginário

Representação

Reino

Reino

entendo

represento(modelagem)

– Nós não somos capazes de representar tudo o que imaginamos. – Nós somente representamos o que é interessante.

Page 2: cap8-der

Profa. Maria Auxiliadora 2

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• Faz uma representação gráfica do esquema de dados; • Descreve relacionamentos entre objetos de dados;

• Conduz à modelagem de dados;

• Atributos de cada objeto =>

Descrição de Objetos de Dados;

Diagrama Entidade-Relacionamento (DER)

Page 3: cap8-der

Profa. Maria Auxiliadora 3

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• Quais são os objetos de dados a serem processados pelo sistema?

• Qual é a composição de cada objeto de dado e quais atributos descrevem o objeto?

• Onde os objetos estão localizados?

• Quais são os relacionamentos entre os objetos?

• Qual é o relacionamento entre os objetos e os processos que os transformam?

Diagrama Entidade-Relacionamento (DER)

Page 4: cap8-der

Profa. Maria Auxiliadora 4

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

MODELO DE DADOS OBJETIVO Se chegar a um modelo teoricamente independente de máquina.

*

*

Diagrama Entidade-Relacionamento (DER)

Page 5: cap8-der

Profa. Maria Auxiliadora 5

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Notação

ENTIDADE ENTIDADE Relacionamento

Objetos

(Forma como iteragem)

ATRIBUTOS (Descrição)

Diagrama Entidade-Relacionamento (DER)

Page 6: cap8-der

Profa. Maria Auxiliadora 6

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

ENTIDADE - todas as coisas que podemos observar no nosso cotidiano.

• Entidades de um mesmo tipos são agrupadas em Classes de Entidade. • Cada ocorrência dentro de Classe de Entidade é denominado Instância de Entidade.

Diagrama Entidade-Relacionamento (DER)

Page 7: cap8-der

Profa. Maria Auxiliadora 7

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

FUNCIONÁRIO

DEPARTAMENTO

COR

PRODUTO

LIVRO

Entidade Representando objetos

Diagrama Entidade-Relacionamento (DER)

Page 8: cap8-der

Profa. Maria Auxiliadora 8

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Entidade Representando Evento

Cliente faz pedido

Diagrama Entidade-Relacionamento (DER)

PEDIDO ( representa Pedido de Venda)

Page 9: cap8-der

Profa. Maria Auxiliadora 9

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

ENTIDADE - Identifique a partir de um contexto.

COR

Contexto Fabricante é um OBJETO ENTIDADE Contexto Revenda de Carro é uma CARACTERÍSTICA ATRIBUTO

Diagrama Entidade-Relacionamento (DER)

Page 10: cap8-der

Profa. Maria Auxiliadora 10

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

ATRIBUTOS - • propriedade da entidade. • descrição através de suas características particulares.

Matricula Nome Data Admissão

0001 João 12/01/2000

0002 Maria 23/06/2008

0003 Carlos 20/07/2010

Diagrama Entidade-Relacionamento (DER)

Page 11: cap8-der

Profa. Maria Auxiliadora 11

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• TIPOS DE ATRIBUTOS

• SIMPLES Atributo indivisíveis nome, salário, cargo...

• COMPOSTO ou CONCATENADO Conjunto de vários atributos.

endereço rua,número,bairro,CEP

• MULTIVALORADOS Multivalente telefone * [resid | celular | comercial ]

Diagrama Entidade-Relacionamento (DER)

Page 12: cap8-der

Profa. Maria Auxiliadora 12

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Estudo de Caso 1 - Exemplificar um objeto com suas características dentro do contexto para a Contratação de Modelos Fotográficos.

Diagrama Entidade-Relacionamento (DER)

Page 13: cap8-der

Profa. Maria Auxiliadora 13

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Estudo de Caso 1 - Exemplificar um objeto com suas características dentro do contexto para a Contratação de Modelos Fotográficos.

nome peso cor altura medidas

CANDITADOS

Diagrama Entidade-Relacionamento (DER)

Page 14: cap8-der

Profa. Maria Auxiliadora 14

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• Toda ENTIDADE deve ter um IDENTIFICADOR ÚNICO

• Um ou mais atributos de uma entidade cujo conteúdo individualiza uma única ocorrência desta Entidade.

Este atributo tem a função de atuar como identificador único das instâncias da entidade e é denominado de CHAVE PRIMÁRIA.

Diagrama Entidade-Relacionamento (DER)

Page 15: cap8-der

Profa. Maria Auxiliadora 15

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo: matrícula identifica a Entidade FUNCIONÁRIO

Diagrama Entidade-Relacionamento (DER)

Matricula Nome Data Admissão

0001 João 12/01/2000

0002 Maria 23/06/2008

0003 Carlos 20/07/2010

Page 16: cap8-der

Profa. Maria Auxiliadora 16

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

TIPOS DE ENTIDADE: • ENTIDADE FRACA • GENERALIZAÇÃO/ESPECIALIZAÇÃO

Diagrama Entidade-Relacionamento (DER)

Page 17: cap8-der

Profa. Maria Auxiliadora 17

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• ENTIDADE FRACA não tem vida própria

DEPENDENTE FUNCIONÁRIO Tem

Diagrama Entidade-Relacionamento (DER)

Page 18: cap8-der

Profa. Maria Auxiliadora 18

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• Uma entidade fraca pode ser identificada

considerando a chave primaria de outra entidade

(proprietária).

• Conjuntos de entidades proprietárias e conjuntos

de entidades fracas tem que participar em conjunto

de relacionamentos um- para- muitos.

• Conjuntos de entidades fracas tem que ter

participação total neste conjunto de relacionamento

identificadores.

Diagrama Entidade-Relacionamento (DER)

Page 19: cap8-der

Profa. Maria Auxiliadora 19

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• GENERALIZAÇÃO/ESPECIALIZAÇÃO

• Ocorre quando uma entidade possui

atributos que não fazem parte de todas as

instâncias da entidade ou quando estas

instâncias se relacionarem de maneira

diferente com outras entidades.

• Para adicionar atributos descritivos para

uma sub-classe.

Diagrama Entidade-Relacionamento (DER)

Page 20: cap8-der

Profa. Maria Auxiliadora 20

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

MOTORISTA ENGENHEIRO

EMPREGADO

TIPO

Exemplo1

Diagrama Entidade-Relacionamento (DER)

Page 21: cap8-der

Profa. Maria Auxiliadora 21

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Emp_Contratado Emp_horista

EMPREGADO

TIPO

Exemplo2

Diagrama Entidade-Relacionamento (DER)

Page 22: cap8-der

Profa. Maria Auxiliadora 22

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo3 - inverso

CLIENTE CARTÃO

DE CRÉDITO

CLIENTE A

DINHEIRO

CLIENTE

CLIENTE CARTÃO

DE CRÉDITO

CLIENTE A

DINHEIRO

Diagrama Entidade-Relacionamento (DER)

Page 23: cap8-der

Profa. Maria Auxiliadora 23

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo4 - inverso

SÓCIO

DT-ASSOC.

No. SÓCIO

SÓCIO

PESSOA-FÍSICA

SÓCIO PESSOA-JURÍDICA

CPF

NOME

NASC.

SEXO

CNPJ

RAZÃO

RAMO

Diagrama Entidade-Relacionamento (DER)

Page 24: cap8-der

Profa. Maria Auxiliadora 24

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Representação do DER

PARTE ESTÁTICA ENTIDADE ATRIBUTOS

PARTE DINÂMICA RELACIONAMENTO

Diagrama Entidade-Relacionamento (DER)

Page 25: cap8-der

Profa. Maria Auxiliadora 25

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo

Clientes solicitam Produtos que geram Pedidos de Vendas quando aprovados; os Pedidos possuem Produtos em quantidades e preços diferentes que são faturados através da Nota fiscal, que é paga em parcelas pelas Duplicatas, etc.

Diagrama Entidade-Relacionamento (DER)

Page 26: cap8-der

Profa. Maria Auxiliadora 26

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Diagrama Entidade-Relacionamento (DER)

CLIENTE

PEDIDO PRODUTO

faz

composto

Page 27: cap8-der

Profa. Maria Auxiliadora 27

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

RELACIONAMENTO descreve cronologicamente a dinâmica. Sendo que para cada relacionamento é registrado um tipo de movimento.

DEPARTAMENTO

FUNCIONÁRIO

Lotação

lota

lotado em

Diagrama Entidade-Relacionamento (DER)

Page 28: cap8-der

Profa. Maria Auxiliadora 28

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Tipos de Relacionamento POSSE FUNCIONÁRIO Possui DEPENDENTE CLIENTE Possui CONTA_BANCÁRIA COMPOSIÇÃO COMPONENTE Compõe PRODUTO

Diagrama Entidade-Relacionamento (DER)

Page 29: cap8-der

Profa. Maria Auxiliadora 29

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Tipos de Relacionamento GERAÇÃO / ORIGEM

COTAÇÃO Gera PEDIDO ALOCAÇÃO

ANALISTA é_alocado_em PROJETO

Diagrama Entidade-Relacionamento (DER)

Page 30: cap8-der

Profa. Maria Auxiliadora 30

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo 1 Funcionário participa de curso e temos o controle do inicio do curso, fim do curso e nota do curso.

Diagrama Entidade-Relacionamento (DER)

Page 31: cap8-der

Profa. Maria Auxiliadora

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas. 31

FUNCIONÁRIO

CURSO

Participação

matrícula

código_curso

Diagrama Entidade-Relacionamento (DER)

Page 32: cap8-der

Profa. Maria Auxiliadora

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas. 32

inicio fim conceito

FUNCIONÁRIO

CURSO

Participação

matrícula

código_curso

Diagrama Entidade-Relacionamento (DER)

Page 33: cap8-der

Profa. Maria Auxiliadora 33

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo 2

Carlos Lopes, engenheiro em informática, 43 anos, possui um Gol 2000, cor cinza, desde de 2004...

Diagrama Entidade-Relacionamento (DER)

Page 34: cap8-der

Profa. Maria Auxiliadora 34

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo 2

SUBSTANTIVO conjunto de Entidades.

ADJETIVO atributo do conjunto VERBO relacionamento ADVERBIO atributo do relacionamento

Diagrama Entidade-Relacionamento (DER)

Page 35: cap8-der

Profa. Maria Auxiliadora 35

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

PESSOAS AUTOS Possui

Diagrama Entidade-Relacionamento (DER)

Page 36: cap8-der

Profa. Maria Auxiliadora 36

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

ano_aquisição

PESSOAS AUTOS Possui

CPF nome

profissão v

chassi ano_fab marca

Diagrama Entidade-Relacionamento (DER)

Page 37: cap8-der

Profa. Maria Auxiliadora 37

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo 3

Sandra Maria, engenheira naval,23 anos, Analista de Sistema; tem especialização em banco de dados, Linguagem de Quarta Geração e Modelagem de Dados. Possui um Gol 2000 cor verde desde 2007.

Diagrama Entidade-Relacionamento (DER)

Page 38: cap8-der

Profa. Maria Auxiliadora 38

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

ano_aquisição

PESSOAS AUTOS Possui

CPF nome

profissão

chassi ano_fab marca

Notação Peter Chen

Diagrama Entidade-Relacionamento (DER)

Page 39: cap8-der

Profa. Maria Auxiliadora 39

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

ano_aquisição

PESSOAS AUTOS Possui

CPF nome

profissão

chassi ano_fab marca

ESPECIALIZAÇÃO

Tem

tipo_espec

Notação Peter Chen

Diagrama Entidade-Relacionamento (DER)

Page 40: cap8-der

Profa. Maria Auxiliadora 40

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• Define o número de ocorrências de uma Entidade

que pode estar envolvida em um relacionamento;

• Indica a relação existente entre todas as linhas de

uma Entidade “A” com todas as linhas de uma

Entidade “B”;

• É um indicador de opcionalidade, unicidade e

multiplicidade dos relacionamento entre duas

Entidades, determinando o mínimo e o máximo de ocorrências.

CARDINALIDADE DOS RELACIONAMENTOS (Informação Semântica)

Page 41: cap8-der

Profa. Maria Auxiliadora 41

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• Conjuntos de relacionamentos que envolvem

dois conjuntos de entidades são binários (ou

de grau dois).

• Conjuntos de relacionamentos podem

envolver mais que dois conjuntos de

entidades. Os conjuntos de entidades cliente,

empréstimo, agência podem ser “ligados” por

um conjunto de relacionamentos ternário

(grau três).

CARDINALIDADE DOS RELACIONAMENTOS (Informação Semântica)

Page 42: cap8-der

Profa. Maria Auxiliadora 42

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CARDINALIDADE DOS RELACIONAMENTOS APLICAÇÕES SOBRE DADOS

P1 P2 P3 P4

Q1 Q2 Q3

P = { p1, p2, p3, p4} Q = { q1, q2, q3 }

A

A = { (p1,q1),( p2,q1), (p3,q2), (p3,q3),(p4,q4) }

do

mín

io

imag

em

Page 43: cap8-der

Profa. Maria Auxiliadora 43

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CARDINALIDADE DOS RELACIONAMENTOS APLICAÇÕES SOBRE DADOS

Definição Formal:

Sejam E1 e E2 conjuntos de entidades.

Um conjunto de relacionamentos binários R é

um subconjunto de:

{(e1, e2) e1 E1 e2 E2},

onde (e1, e2) é um relacionamento.

Page 44: cap8-der

Profa. Maria Auxiliadora 44

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CARDINALIDADE DOS RELACIONAMENTOS APLICAÇÕES SOBRE DADOS

–um-para-um (1:1) =>

”um marido pode ter somente uma esposa e vice-versa”

H

Adão

Romeu

Eva

Maria

Julieta

M

José

C

Page 45: cap8-der

Profa. Maria Auxiliadora 45

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CARDINALIDADE DOS RELACIONAMENTOS APLICAÇÕES SOBRE DADOS

– Aplicação 1:1 Domínio e Imagem podem ser fundidos

Adão ,Eva

José ,Maria

Romeu ,Julieta

C’

Page 46: cap8-der

Profa. Maria Auxiliadora 46

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CARDINALIDADE DOS RELACIONAMENTOS APLICAÇÕES SOBRE DADOS

–um-para-muitos (1:N) => ”uma marido pode ter muitas esposas, mas uma esposa tem apenas um marido.

H

Adão

Romeu

Eva

Maria

Julieta

M

José

P

Cobra

Page 47: cap8-der

Profa. Maria Auxiliadora 47

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CARDINALIDADE DOS RELACIONAMENTOS APLICAÇÕES SOBRE DADOS

muitos-para-muitos (M:N) => ”um marido pode ter várias mulheres, e uma mulher pode ter vários maridos

Eva

Maria

Julieta

M H

Adão

Romeu

José

P

Page 48: cap8-der

Profa. Maria Auxiliadora 48

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CLASSE DE UM RELACIONAMENTO Notação - Peter Chen

FUNCIONÁRIO Gerencia DEPART. 1 1

• Muitos-para-um ( N : 1)

• Um-para-um ( 1 : 1)

FUNCIONÁRIO Lota DEPART. N 1

• Muitos-para-muitos ( N : N)

FUNCIONÁRIO Faz CURSO N N

Page 49: cap8-der

Profa. Maria Auxiliadora 49

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CLASSE DE UM RELACIONAMENTO Notação James Martin

Empregado Departamento

Exemplo de Modelagem, onde:

= muitos

= um

= a ocorrência do relacionamento é opcional;

= a ocorrência do relacionamento é obrigatória;

Page 50: cap8-der

Profa. Maria Auxiliadora 50

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

• Um-para-um (1: 1).

FUNCIONÁRIO DEPART.

FUNCIONÁRIO

DEPART.

• Muitos-para-um ( N : 1)

• Muitos-para-muitos ( N : N)

FUNCIONÁRIO

CURSO

gerencia

faz-parte

faz

CLASSE DE UM RELACIONAMENTO Notação James Martin

Page 51: cap8-der

Profa. Maria Auxiliadora 51

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CLASSE DE UM RELACIONAMENTO

• Muitos-para-muitos ( N : N)

Em cada funcionário, pode ter muitos

cursos diferentes, e um curso pode ser feito

por diversos funcionário.

FUNCIONÁRIO

CURSO

Page 52: cap8-der

Profa. Maria Auxiliadora 52

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CLASSE DE UM RELACIONAMENTO

• Muitos-para-muitos ( N : N)

fixa-se um atributo na entidade Func e variam-se os atributos da entidade Curso. Se o atributo muda de valor, então ele não é atributo de Func. Repete-se a regra no sentido inverso para verificar se é de Curso. Se o atributo não é de Func nem de Curso, é de R;

Page 53: cap8-der

Profa. Maria Auxiliadora 53

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

CLASSE DE UM RELACIONAMENTO

• Muitos-para-muitos ( N : N)

FUNCIONÁRIO

Data_inicio

CURSO

cod-func

cod_curso+ cod_func + inicio_curso co

d-c

urs

o

Page 54: cap8-der

Profa. Maria Auxiliadora 54

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

MODALIDADE DE UM RELACIONAMENTO

• MODALIDADE: indica se um elemento precisa ou não participar em um relacionamento;

– relacionamento = 0 não é necessária a ocorrência do relacionamento, ele é opcional;

– relacionamento = 1 uma ocorrência do relacionamento é obrigatória;

Page 55: cap8-der

Profa. Maria Auxiliadora 55

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

• TOTAIS

• PARCIONAIS

• RECURSIVOS OU AUTO-RELACIONAMENTO • RELACIONAMENTO MÚLTIPLOS

• AGREGAÇÃO

Page 56: cap8-der

Profa. Maria Auxiliadora 56

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

Seja E conjunto de entidades e R

conjunto de relacionamentos em que

E participa.

Se todo elemento de E deve estar

obrigatoriamente em R, então R é

TOTAL em E; caso contrário, R é PARCIAL em E.

Page 57: cap8-der

Profa. Maria Auxiliadora 57

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

TOTAL / PARCIAL

Todo funcionário obrigatoriamente

( | ) lota um departamento, mas

nem todo (0) departamento é lotado por funcionários

FUNCIONÁRIO

DEPART.

Page 58: cap8-der

Profa. Maria Auxiliadora 58

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

TOTAL / PARCIAL

FUNCIONÁRIO

DEPART.

Todo funcionário ( | ) lota um

departamento; todo departamento é lotado por vários ( ) funcionários

Page 59: cap8-der

Profa. Maria Auxiliadora 59

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

RECURSIVO - é aquele que associa elementos de um conjunto de entidades a elementos deste mesmo conjunto de entidades.

FUNCIONÁRIO

Gerência

GERENCIA GERENCIADO

1 N

Funcionário desempenha o papel de gerente ou de

subordinado

Page 60: cap8-der

Profa. Maria Auxiliadora 60

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

EXEMPLO CLÁSSICO DE RECURSIVIDADE

PEÇAS

Componentes

N N compõe é composto por

“motor” COMPOSTO POR parafuso

“parafuso” COMPÕE “motor”

Page 61: cap8-der

Profa. Maria Auxiliadora 61

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

RELACIONAMENTO MÚLTIPLOS

PROFESSOR DISCIPLINA Ensina 1 N

ALUNO

N

( P1,D1,A1 ) ( P1,D1,A2 )

Page 62: cap8-der

Profa. Maria Auxiliadora 62

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NATUREZA DE UM RELACIONAMENTO

AGREGAÇÃO

PROFESSOR DISCIPLINA Ensina 1 N

ALUNO

1

Cursa

N

Page 63: cap8-der

Profa. Maria Auxiliadora 63

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NORMAS P/ DESENHAR UM DER

1. Identificar os conjuntos de entidades e

os conjuntos de relacionamento;

Baseado numa descrição grifar todos os substantivos e circular os verbos que sejam relevantes. Os funcionários trabalham em departamento específico.

Page 64: cap8-der

Profa. Maria Auxiliadora 64

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NORMAS P/ DESENHAR UM DER

Os funcionários trabalham em departamento específico.

FUNCIONÁRIO DEPART.

O funcionário fornece seu nome e CPF

Page 65: cap8-der

Profa. Maria Auxiliadora 65

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NORMAS P/ DESENHAR UM DER

2. Identificar as informações sobre características (classe) de cada conjunto de relacionamentos, tais como aplicações: 1:1, 1:N, e N:M;

FUNCIONÁRIO

DEPART.

Page 66: cap8-der

Profa. Maria Auxiliadora 66

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NORMAS P/ DESENHAR UM DER

3. Definição dos conjuntos de valores e atributos; Atributos, quando se tratar de uma característica comum a um conjunto de objetos.

FUNCIONÁRIO

matricula nome sexo data_nasc endereço salário cargo

DEPART.

cód_descrição descrição

Page 67: cap8-der

Profa. Maria Auxiliadora 67

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NORMAS P/ DESENHAR UM DER

4. Identificar o(s) atributos identificar(es);

FUNCIONÁRIO matricula nome sexo data_nasc endereço salário cargo

DEPART.

cód_descrição descrição

Page 68: cap8-der

Profa. Maria Auxiliadora 68

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

NORMAS P/ DESENHAR UM DER

4 Dicionário de Dados.

FUNCIONÁRIO = matricula + nome + sexo + data_nasc + endereço + salário + cargo

DEPART. = cód_descrição + descrição

Page 69: cap8-der

Profa. Maria Auxiliadora 69

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo

O cliente compra mercadorias na loja em várias datas. O cliente fornece seu nome e C.P.F. As mercadorias são identificadas pelo código de barras e possuem nomes reduzidos. Iogurte é a mercadoria preferida. A loja recebe fregueses de outras cidades também. As mercadorias possuem uma classificação : alimentícios, limpeza ou roupas. Os clientes recebem Nota Fiscal. As Notas Fiscais possuem Série e Número da Nota.

Page 70: cap8-der

Profa. Maria Auxiliadora 70

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo

O cliente compra mercadorias na loja em várias datas. O cliente fornece seu nome e C.P.F. As mercadorias são identificadas pelo código de barras e possuem nomes reduzidos. Iogurte é a mercadoria preferida. A loja recebe fregueses de outras cidades também. As mercadorias possuem uma classificação : alimentícios, limpeza ou roupas. Os clientes recebem Nota Fiscal. As Notas Fiscais possuem Série e Número da Nota.

Page 71: cap8-der

Profa. Maria Auxiliadora 71

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo -

CLIENTE MERCADORIA

NOTA_FISCAL

comprar

• CPF • Nome_cli • Cidade_cli

• Codigo_merc • Nome_merc • Classificação

• Num_NF • Série_NF

• data

Page 72: cap8-der

Profa. Maria Auxiliadora 72

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo – análise da cardinalidade

CLIENTE MERCADORIA

NOTA_FISCAL

comprar

Um cliente pode

comprar várias

mercadorias. Isto

significa que do lado

da mercadoria a

cardinalidade é N.

N

Um cliente pode

possuir várias notas

fiscais. Isto significa

que do lado da nota

fiscal a cardinalidade

é N.

N

Page 73: cap8-der

Profa. Maria Auxiliadora 73

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo – análise da cardinalidade

CLIENTE MERCADORIA

NOTA_FISCAL

comprar N

N

Uma mercadoria

pode ser comprada

por vários clientes.

Isto significa que do

lado dos clientes a

cardinalidade é N.

N

N

Uma mercadoria

pode estar em várias

notas fiscais. Isto

significa que do lado

das notas fiscais a

cardinalidade é N.

Page 74: cap8-der

Profa. Maria Auxiliadora 74

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo – análise da cardinalidade

CLIENTE MERCADORIA

NOTA_FISCAL

comprar N

N

N

N

Uma nota fiscal

pode conter várias

mercadorias. Isto

significa que do lado

das mercadorias a

cardinalidade é N.

N

Uma nota fiscal será

feita para apenas um

cliente. Isto significa

que do lado dos

clientes a

cardinalidade é 1.

1

Page 75: cap8-der

Profa. Maria Auxiliadora 75

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Relacionamento indica se a

entidade é fraca

CLIENTE MERCADORIA

NOTA_FISCAL

comprar

N

N

Cliente existe

mesmo sem fazer

compra na loja. Mercadoria uma mercadoria existe, apesar de ninguém tê-la comprado ainda.

NOTA_FISCAL depende da

existência de uma

compra para existir.

Portanto, nota fiscal é

fraca em relação a

comprar.

Page 76: cap8-der

Profa. Maria Auxiliadora 76

Fonte: PRESSMAN, ROGER - Engenharia de Software - 6° Edição

POMPILHO, S. Análise Essencial – Guia Prático de Análise de Sistemas.

Exemplo

CLIENTE MERCADORIA

NOTA_FISCAL

comprar N

N

N