• Nenhum resultado encontrado

Decisões e erros comuns de modelagem

N/A
N/A
Protected

Academic year: 2022

Share "Decisões e erros comuns de modelagem"

Copied!
20
0
0

Texto

(1)

MAC 0332 ­ Engenharia de Software

Marco A. Gerosa IME / USP

Decisões e erros comuns de  modelagem

MAC0332 

Engenharia de Software

Marco Aurélio Gerosa

gerosa@ime.usp.br 

(2)

MAC 0332 ­ Engenharia de Software

Erros comuns

H i s t ó r i c o E s c o l a r a lu n o

d is c ip lin a n o t a F in a l n u m F a lt a s V e n d e d o r e s

c o d n o m e s a la r io t e le f o n e

B i b l i o t e c a is b n

t í t u lo n u m P a g s t ip o D e C a p a

C a r d á p i o c o d

n o m e

in g r e d ie n t e s p r e ç o

G r a d e c u r s o d is c ip lin a c a r g a H o r á r ia n u m C r e d it o s

(3)

MAC 0332 ­ Engenharia de Software

Uso do coletivo pelo item

• Nem sempre está errado. Ex:

• Daria para pensar neste mesmo modelo com cardinalidades 

*:4, *:1, 1:4, 1:1 

Marco A. Gerosa 3 IME / USP

R o d a s

f a b r ic a n t e a r o

c a lo t a e s p e s s u r a

A u t o m ó v e l

c o d

f a b r ic a n t e m o d e lo

a n o F a b r ic a ç ã o

1 1

(4)

MAC 0332 ­ Engenharia de Software

Qual o erro?

P r o d u t o c o d

n o m e m o d e lo

it e n s E m E s t o q u e f o t o

c o r p r e ç o n u m S é r ie

e s t a d o D e C o n s e r v a ç ã o d t A q u is iç ã o

lo c a liz a ç ã o E s t o q u e V e n d a

c o d c lie n t e v e n d e d o r

d a t a 1 *

F a b r i c a n t e c o d

n o m e e n d e r e ç o t e le f o n e

* *

(5)

MAC 0332 ­ Engenharia de Software

Melhorando a modelagem

Marco A. Gerosa 5 IME / USP

I t e m D e P r o d u t o n u m S é r ie

e s t a d o D e C o n s e r v a ç ã o p r e ç o P a g o

V e n d a c o d

c lie n t e v e n d e d o r d a t a

1 *

F a b r i c a n t e c o d

n o m e e n d e r e ç o t e le f o n e

* P r o d u t o c o d

n o m e m o d e lo f o t o c o r p r e ç o

T i p o D e P r o d u t o c o d

n o m e d e s c r iç ã o

* 1

* 1

1

(6)

MAC 0332 ­ Engenharia de Software

Outro exemplo

E x a m e c o d

n o m e d e s c r iç ã o p r e c is a J e ju m d a t a E n t r e g a r e s u lt a d o C o n s u l t a

c o d

p a c ie n t e m é d ic o

d u r a ç ã o 1 p r e s c r e v e *

L a b o r a t ó r i o c o d

n o m e e n d e r e ç o t e le f o n e é _ f e it o _ e m

* *

(7)

MAC 0332 ­ Engenharia de Software

Melhorando a modelagem

Marco A. Gerosa 7 IME / USP

C o n s u l t a c o d

p a c ie n t e m é d ic o

d u r a ç ã o 1 *

p r e s c r e v e

L a b o r a t ó r i o c o d

n o m e e n d e r e ç o t e le f o n e

* *

E x a m e c o d

d a t a E n t r e g a r e s u lt a d o

D e s c r i t o r D e E x a m e c o d

n o m e d e s c r iç ã o p r e c is a J e ju m

* 1

o f e r e c e c o r r e s p o n d e   a

(8)

MAC 0332 ­ Engenharia de Software

Redundância?

C o n s u l t a c o d

p a c ie n t e m é d ic o

d u r a ç ã o 1 *

p r e s c r e v e

L a b o r a t ó r i o c o d

n o m e e n d e r e ç o t e le f o n e

* *

E x a m e P r e s c r i t o c o d

d a t a E n t r e g a r e s u lt a d o

D e s c r i t o r D e E x a m e c o d

n o m e d e s c r iç ã o p r e c is a J e ju m

* 1

T i p o E x a m e c o d

n o m e d e s c r ic a o

* 1

o f e r e c e

* 1

(9)

MAC 0332 ­ Engenharia de Software

Redundância?

Marco A. Gerosa 9 IME / USP

D is c ip lin a

T u r m a

P r o f e s s o r A lu n o

1

1

* *

*

*

*

*

*

*

(10)

MAC 0332 ­ Engenharia de Software

Navegação entre classes

A lu n o D is c ip lin a

T u r m a

* *

1

*

A lu n o

D is c ip lin a

T u r m a

* *

1

*

  

(11)

MAC 0332 ­ Engenharia de Software

Uso de associação para ações 

Marco A. Gerosa 11 IME / USP

C lie n t e F ilm e

*

*

c o n s u lt a

G e r e n t e C a t e g o r ia

* 1

c a d a s t r a

  

(12)

MAC 0332 ­ Engenharia de Software

Decisão de como representar informações

• Como atributo de classe

• Como atributo de instância

• Como atributo de classe e de instância

• Como classe relacionada

• Como hierarquia de classes

• Como hierarquia de classes relacionada

(13)

MAC 0332 ­ Engenharia de Software

I) II)       II)     III)       III)         IV)    IV)

V)       VI)

VII)      VIII)

Marco A. Gerosa 13 IME / USP

P r o d u t o

$ c a t e g o r ia n o m e

P r o d u t o c a t e g o r ia n o m e

P r o d u t o c a t e g o r ia [ 0 . . * ]

n o m e * 1

P r o d u t o n o m e

C a t e g o r i a n o m e C a t e g o r ia

* *

P r o d u t o n o m e

C a t e g o r i a n o m e C a t e g o r ia

P r o d u t o

P r o d u t o C o n g e l a d o P r o d u t o B e b i d a P r o d u t o D o c e

* 1

P r o d u t o C a t e g o r i a

C o n g e l a d o B e b i d a D o c e

* *

P r o d u t o C a t e g o r i a

C o n g e l a d o B e b i d a D o c e

(14)

MAC 0332 ­ Engenharia de Software

• Qual das soluções anteriores você adotaria em cada uma  das seguintes situações (justifique)?

• O operador pode alterar a categoria de um produto, porém somente o  gerente pode criar novas categorias (tudo feito via interface do sistema).

• Há um conjunto fixo de categorias, que não vai ser alterado depois que o  sistema estiver pronto. 

• É necessário saber a categoria do produto apenas a título informativo, para  ser exibida juntamente com os dados do produto

• Há um conjunto fixo de categorias e a maioria das operações que podem ser  feitas com produtos dependem da sua categoria.

(15)

MAC 0332 ­ Engenharia de Software

Aspecto temporal da informação

• O que muda nas modelagens abaixo se quisermos guardar o  histórico de endereços?

Marco A. Gerosa 15 IME / USP

C l i e n t e n o m e

e n d e r e ç o b a ir r o c id a d e

M o t o r i s t a 1 1 V e í c u l o

P a s s a g e i r o * 1 Ô n i b u s

E m p r e s a * * S ó c i o

(16)

MAC 0332 ­ Engenharia de Software

Histórico

C l i e n t e n o m e

E n d e r e ç o

1 * e n d e r e ç o

b a ir r o c id a d e

C l i e n t e n o m e

e n d e r e ç o [ 0 . . * ] b a ir r o   [ 0 . . * ] c id a d e   [ 0 . . * ]

M o t o r i s t a * * V e í c u l o P a s s a g e i r o * * Ô n i b u s

E m p r e s a * * S ó c i o

(17)

MAC 0332 ­ Engenharia de Software

Histórico

Marco A. Gerosa 17 IME / USP

M o t o r i s t a * * V e í c u l o

V i a g e m

d a t a in í c io d a t a f im

P a s s a g e i r o * * Ô n i b u s

V i a g e m d a t a in í c io d a t a f im

E m p r e s a * * S ó c i o

d a t a in í c io d a t a f im

E m p r e s a S ó c i o

Questão: volume de informação e política de arquivamento

(18)

MAC 0332 ­ Engenharia de Software

Exercício

• Represente para cada uma das situações abaixo dois  modelos: um onde só é registrada a informação atual e  outro onde o histórico é armazenado.

• A nota do aluno nas disciplinas em que está cursando.

• O telefone do cliente.

• O time campeão de um campeonato.

• O empréstimo de um livro por um cliente.

• Os moradores de uma residência.

• As disciplinas de um curso.

(19)

MAC 0332 ­ Engenharia de Software

Registro de informação calculada

Marco A. Gerosa 19 IME / USP

D i s c i p l i n a

c o d

n o m e

q t d e T u r m a s

T u r m a

c o d

h o r a r io

1 *

P e d i d o n u m

d a t a

v a lo r T o t a l

P r o d u t o c o d

d e s c r ic a o v a lo r

* *

N o t a F i s c a l n u m

d a t a

v a lo r T o t a l

I t e m N o t a F i s c a l c o d

d e s c r ic a o q t d e

v a lo r U n it a r io

d e s c o n t o F o r n e c id o

1 *

P e s s o a c p f

n o m e i d a d e

d a t a N a s c im e n t o

(20)

MAC 0332 ­ Engenharia de Software

Quando registrar?

• Performance – cálculo demora e é constantemente necessário

– Se os dados de origem se alteram – cuidados para manter a  consistência de informações => Redundância controlada

• Dados de origem não ficam mais disponíveis

Referências

Documentos relacionados

Caso esses métodos não sejam suficientes para corrigir o problema, entre em contato com a Assistência Técnica da Sigeral.. Interferência: Os principais casos de interferência

Quanto à população acometida, apesar da morte súbita ocorrer mais freqüentemente nos chagásicos com arritmia ventricular complexa ou episódios de taquicardia ventricular, ela

• Lave as mãos ou use álcool gel depois de contacto com dinheiro, a roupa do cliente ou outros pertences; o cliente deve fazer o mesmo. • Peça que o cliente tome banho

DESPESAS COM FORNECIMENTO DE AGUA E SERVICOS DE ESGOTO PARA ATENDIMENTO DO PODER JUDICIARIO, REFERENTE AO EXERCICIO DE

Para a coleta de dados foram utilizadas como instrumento de pesquisa as fichas de avaliação facial e corporal usados no setor de fisioterapia dermatofuncional, que continham

5 τῶν δὲ μετὰ χαρᾶς τοῦτον παρασχόντων οὐ γὰρ ᾔδεσαν τοῦ λίθου τὸ ὑπέρτιμον, ἀπῆλθεν εἰς Ἰερουσαλήμ τὸν λίθον ἐπιφερόμενος, 6

FIGURA 2: Aparato hióide de Sotalia guianensis (UFSC 1079) indicando as medidas utilizadas neste trabalho: (1) comprimento ao centro do basihial – da borda rostral à caudal,

Não é possível pensar a natureza e o homem como uma unidade fixa; esta unidade existe, porém é momentânea, histórica e varia com o desenvolvimento da indústria, do comércio