Modelagem dos dados

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.

description

Modelagem dos dados. Nós não somos capazes de representar tudo o que imaginamos. Nós somente representamos o que é interessante. Diagrama Entidade-Relacionamento (DER). F az uma representação gráfica do esquema de dados; Descreve relacionamentos entre objetos de dados; - PowerPoint PPT Presentation

Transcript of Modelagem dos dados

Page 1: Modelagem  dos dados

1Profa. Maria Auxiliadora

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: Modelagem  dos dados

2Profa. Maria Auxiliadora

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: Modelagem  dos dados

3Profa. Maria Auxiliadora

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: Modelagem  dos dados

4Profa. Maria Auxiliadora

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: Modelagem  dos dados

5Profa. Maria Auxiliadora

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 ENTIDADERelacionamento

Objetos

(Forma como iteragem)

ATRIBUTOS (Descrição)

Diagrama Entidade-Relacionamento (DER)

Page 6: Modelagem  dos dados

6Profa. Maria Auxiliadora

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: Modelagem  dos dados

7Profa. Maria Auxiliadora

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

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

FUNCIONÁRIO DEPARTAMENTOCORPRODUTOLIVRO

Entidade Representando objetos

Diagrama Entidade-Relacionamento (DER)

Page 8: Modelagem  dos dados

8Profa. Maria Auxiliadora

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: Modelagem  dos dados

9Profa. Maria Auxiliadora

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: Modelagem  dos dados

10Profa. Maria Auxiliadora

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ão0001 João 12/01/20000002 Maria 23/06/20080003 Carlos 20/07/2010

Diagrama Entidade-Relacionamento (DER)

Page 11: Modelagem  dos dados

11Profa. Maria Auxiliadora

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: Modelagem  dos dados

12Profa. Maria Auxiliadora

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: Modelagem  dos dados

13Profa. Maria Auxiliadora

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.

nomepesocoralturamedidas

CANDITADOS

Diagrama Entidade-Relacionamento (DER)

Page 14: Modelagem  dos dados

14Profa. Maria Auxiliadora

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: Modelagem  dos dados

15Profa. Maria Auxiliadora

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

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

Exemplo:hmatrícula identifica a Entidade

FUNCIONÁRIO

Diagrama Entidade-Relacionamento (DER)

Matricula Nome Data Admissão0001 João 12/01/20000002 Maria 23/06/20080003 Carlos 20/07/2010

Page 16: Modelagem  dos dados

16Profa. Maria Auxiliadora

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: Modelagem  dos dados

17Profa. Maria Auxiliadora

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

DEPENDENTEFUNCIONÁRIO Tem

Diagrama Entidade-Relacionamento (DER)

Page 18: Modelagem  dos dados

18Profa. Maria Auxiliadora

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: Modelagem  dos dados

19Profa. Maria Auxiliadora

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: Modelagem  dos dados

20Profa. Maria Auxiliadora

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

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

MOTORISTAENGENHEIRO

EMPREGADO

TIPO

Exemplo1

Diagrama Entidade-Relacionamento (DER)

Page 21: Modelagem  dos dados

21Profa. Maria Auxiliadora

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

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

Emp_ContratadoEmp_horista

EMPREGADO

TIPO

Exemplo2

Diagrama Entidade-Relacionamento (DER)

Page 22: Modelagem  dos dados

22Profa. Maria Auxiliadora

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

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

Exemplo3 - inverso

CLIENTECARTÃO

DE CRÉDITO

CLIENTEA

DINHEIRO

CLIENTE

CLIENTECARTÃO

DE CRÉDITO

CLIENTEA

DINHEIRO

Diagrama Entidade-Relacionamento (DER)

Page 23: Modelagem  dos dados

23Profa. Maria Auxiliadora

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ÓCIOPESSOA-FÍSICA

SÓCIOPESSOA-JURÍDICA

CPFNOME

NASC.

SEXO

CGCRAZÃO

RAMO

Diagrama Entidade-Relacionamento (DER)

Page 24: Modelagem  dos dados

24Profa. Maria Auxiliadora

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: Modelagem  dos dados

25Profa. Maria Auxiliadora

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: Modelagem  dos dados

26Profa. Maria Auxiliadora

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: Modelagem  dos dados

27Profa. Maria Auxiliadora

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: Modelagem  dos dados

28Profa. Maria Auxiliadora

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

POSSEFUNCIONÁRIO Possui DEPENDENTECLIENTE Possui CONTA_BANCÁRIA

COMPOSIÇÃOCOMPONENTE Compõe PRODUTO

Diagrama Entidade-Relacionamento (DER)

Page 29: Modelagem  dos dados

29Profa. Maria Auxiliadora

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: Modelagem  dos dados

30Profa. Maria Auxiliadora

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: Modelagem  dos dados

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: Modelagem  dos dados

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

iniciofimconceito

FUNCIONÁRIO

CURSO

Participação

matrícula

código_curso

Diagrama Entidade-Relacionamento (DER)

Page 33: Modelagem  dos dados

33Profa. Maria Auxiliadora

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: Modelagem  dos dados

34Profa. Maria Auxiliadora

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 relacionamentoADVERBIO atributo do relacionamento

Diagrama Entidade-Relacionamento (DER)

Page 35: Modelagem  dos dados

35Profa. Maria Auxiliadora

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

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

PESSOAS AUTOS Possuir

Diagrama Entidade-Relacionamento (DER)

Page 36: Modelagem  dos dados

36Profa. Maria Auxiliadora

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 Possuir

CPFnome

profissãov

chassi ano_fab marca

Diagrama Entidade-Relacionamento (DER)

Page 37: Modelagem  dos dados

37Profa. Maria Auxiliadora

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: Modelagem  dos dados

38Profa. Maria Auxiliadora

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 Possuir

CPFnome

profissãochassi ano_fab marca

Notação Peter Chen

Diagrama Entidade-Relacionamento (DER)

Page 39: Modelagem  dos dados

39Profa. Maria Auxiliadora

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

CPFnome

profissãochassi ano_fab marca

ESPECIALIZAÇÃO

Tem

tipo_espec

Notação Peter Chen

Diagrama Entidade-Relacionamento (DER)

Page 40: Modelagem  dos dados

40Profa. Maria Auxiliadora

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: Modelagem  dos dados

41Profa. Maria Auxiliadora

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: Modelagem  dos dados

42Profa. Maria Auxiliadora

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

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

CARDINALIDADE DOS RELACIONAMENTOSAPLICAÇÕ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) }

dom

ínio

imag

em

Page 43: Modelagem  dos dados

43Profa. Maria Auxiliadora

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

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

CARDINALIDADE DOS RELACIONAMENTOSAPLICAÇÕ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: Modelagem  dos dados

44Profa. Maria Auxiliadora

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

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

CARDINALIDADE DOS RELACIONAMENTOSAPLICAÇÕ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: Modelagem  dos dados

45Profa. Maria Auxiliadora

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

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

CARDINALIDADE DOS RELACIONAMENTOSAPLICAÇÕES SOBRE DADOS

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

Adão ,Eva

José ,Maria

Romeu ,Julieta

C’

Page 46: Modelagem  dos dados

46Profa. Maria Auxiliadora

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

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

CARDINALIDADE DOS RELACIONAMENTOSAPLICAÇÕ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: Modelagem  dos dados

47Profa. Maria Auxiliadora

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

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

CARDINALIDADE DOS RELACIONAMENTOSAPLICAÇÕ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

MH

Adão

Romeu

José

P

Page 48: Modelagem  dos dados

48Profa. Maria Auxiliadora

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 RELACIONAMENTONotaçã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: Modelagem  dos dados

49Profa. Maria Auxiliadora

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 RELACIONAMENTONotaçã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: Modelagem  dos dados

50Profa. Maria Auxiliadora

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 RELACIONAMENTONotação James Martin

Page 51: Modelagem  dos dados

51Profa. Maria Auxiliadora

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 feitopor diversos funcionário.

FUNCIONÁRIO CURSO

Page 52: Modelagem  dos dados

52Profa. Maria Auxiliadora

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: Modelagem  dos dados

53Profa. Maria Auxiliadora

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_cursoco

d-cu

rso

Page 54: Modelagem  dos dados

54Profa. Maria Auxiliadora

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: Modelagem  dos dados

55Profa. Maria Auxiliadora

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: Modelagem  dos dados

56Profa. Maria Auxiliadora

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: Modelagem  dos dados

57Profa. Maria Auxiliadora

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: Modelagem  dos dados

58Profa. Maria Auxiliadora

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: Modelagem  dos dados

59Profa. Maria Auxiliadora

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: Modelagem  dos dados

60Profa. Maria Auxiliadora

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 Ncompõeé composto por

“motor” COMPOSTO POR parafuso

“parafuso” COMPÕE “motor”

Page 61: Modelagem  dos dados

61Profa. Maria Auxiliadora

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 Ensina1 N

ALUNO N

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

Não pode existir

( P3,D1,A2 )

Page 62: Modelagem  dos dados

62Profa. Maria Auxiliadora

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 Ensina1 N

ALUNO

1

Cursa

N

Page 63: Modelagem  dos dados

63Profa. Maria Auxiliadora

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: Modelagem  dos dados

64Profa. Maria Auxiliadora

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: Modelagem  dos dados

65Profa. Maria Auxiliadora

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: Modelagem  dos dados

66Profa. Maria Auxiliadora

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

hmatricula h nomeh sexoh data_nasch endereçoh salárioh cargo

DEPART.

hcód_descriçãoh descrição

Page 67: Modelagem  dos dados

67Profa. Maria Auxiliadora

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ÁRIOhmatricula h nomeh sexoh data_nasch endereçoh salárioh cargo

DEPART.

hcód_descriçãoh descrição

Page 68: Modelagem  dos dados

68Profa. Maria Auxiliadora

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: Modelagem  dos dados

69Profa. Maria Auxiliadora

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

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

ExemploO 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: Modelagem  dos dados

70Profa. Maria Auxiliadora

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

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

ExemploO 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: Modelagem  dos dados

71Profa. Maria Auxiliadora

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: Modelagem  dos dados

72Profa. Maria Auxiliadora

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 com várias notas fiscais. Isto significa que do lado da nota fiscal a cardinalidade é N.

N

Page 73: Modelagem  dos dados

73Profa. Maria Auxiliadora

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

comprarN

N

Uma mercadoria pode ser comprada pôr 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: Modelagem  dos dados

74Profa. Maria Auxiliadora

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

comprarN

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: Modelagem  dos dados

75Profa. Maria Auxiliadora

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: Modelagem  dos dados

76Profa. Maria Auxiliadora

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

comprarN

N

N