De
casos
de
uso
para
diagramas
de
classe
de
anlise
o Responsabilidade:
conhece
ou
faz
o Colaboraes:
operaes
que
uma
classe
no
faz
sozinha
o Objetos
de
controle
o Monitorar
eventos
e
notificar
atores
o Coordenar
a
execuo
de
um
caso
de
uso
atravs
do
envio
de
mensagens
entre
atores
o Assegurar
regras
de
negcio
a.
Analisar
casos
de
uso
e
identificar
classes
candidatas
! Destacar
substantivos
e
locues
! Identificar
verbos
que
representem
aes.
! Sujeito
da
frase
identifica
quem
realiza
a
ao
! Complemento
da
frase
identifica
colaborao
ou
algo
que
uma
classe
deve
conhecer
b.
Atribuir
responsabilidade
a
cada
classe
! Considerar
o
papel
de
cada
classe
(fronteira,
controle,
entidade)
! Agrupar
responsabilidades
semelhantes
e
separar
responsabilidades
diferentes
c.
Definir
propriedades
! Responsabilidade
de
conhecer
mapeada
para
atributos
! Ser
atmico
! Fazer
sentido
para
todos
os
objetos
e
subclasses
! Muitas
vezes
um
atributo
na
verdade
deveria
ser
uma
associao
! Atributos
representam
dados
do
domnio
d.
Definir
operaes
2.
Criao
dos
diagramas
de
interao
a.
Para
cada
caso
de
uso,
identifique
os
cenrios
relevantes
b.
Para
cada
cenrio,
identificar
os
atores
(Caso
de
Uso)
e
as
classes
participantes
(Diagrama
de
Classes)
c.
Para
cada
passo
do
cenrio,
definir
as
mensagens
sendo
trocadas
(nome,
argumentos,
retorno
e
condies
de
guarda)
d.
O
destino
da
mensagem
a
classe
que
conter
o
mtodo
3.
Criao
do
diagrama
de
classes
de
projeto
a
partir
das
classes
de
anlise
a.
Para
cada
diagrama
de
interao,
veja
as
mensagens
enviadas
b.
Para
cada
mensagem,
deve
ser
adicionado
um
mtodo
no
objeto
destino.
! Ver
os
pontos
1.c
e
1.d
e
verificar
se
faz
sentido
esses
mtodos
adicionados.
! Rever
as
classes
do
diagrama
de
anlise.
Adicionar
ou
remover
classes,
quando
necessrio
c.
Para
cada
mensagem,
verificar
os
parmetros
do
mtodo
criado.
Esses
parmetros
podem
ser
trs
coisas:
i. atributos
de
classe
na
origem;
ii. atributo
recebido
de
um
mtodo;
iii. calculado
internamente
na
classe
d.
Para
cada
mensagem,
considerar
os
atributos
do
mtodo
e
rever
as
associaes
entre
as
classes.
! Parmetros
que
so
atributos
de
classe
devem
ser
associaes
(agregao,
composio)
->
(seta
aberta,
linha
cheia)
! Parmetros
que
no
so
atributos
de
classe,
viram
relaes
no-estruturais
(seta
aberta,
linha
pontilhada)