Diagrama de Sequência
Diagrama de Sequência
Diagrama de Sequência
Horcio Ribeiro
- Modelar um mtodo.
- identificar a diferena de mtodo e mensagem
- identificar os componentes de um diagrama de seqncia
- Identificar a seqncia de mtodos
- Identificar os trs tipos de visibilidade de atributos e como
represent-los
- Identificar uma caracterstica de sincronismo de mtodos
- Identificar uma caracterstica de um mtodo assncrono
- Identificar quando e como um mtodo deve criar um objeto.
Livro
EXERCCIOS
4 considere o diagrama para as afirmaes abaixo.
totalmente correta.
Exerccio
1
Residncia
Comunidade
Endereo
AreaConst
ruida
ImovelPro
prio
NomeComuni
dade
Morador
Municpio
Nome
DataNasc
Peso
Altura
NomeMunicipi
o
No
diagrama
ser
de
seqncia
estamos
definindo
que
funes
devem
implementadas, se definir como o cdigo, para que o caso e uso possa ser
realizado. O objetivo identificar funes, que so as unidades para definir
novas funes.
No confunda Um diagrama de
ALUNO
NOME
MATRICULA
TELEFONE
INCLUIR();
TRANSFERIR();
AVALIAR();
TRANCAR();
FUNES
ENCAPSULADAS NA CLASSE.
TAMBM SE DIZ QUE SO
OS
SERVIOS
QUE
A
Diagrama de seqncia:
Mostra a seqncia de chamada de mtodos (MENSAGENS) ao longo do
tempo.
Para isto devemos instanciar os objetos que iro ser utilizados.
Para se representar um objeto instanciado, por exemplo para a classe
aluno, temos:
: aluno
instanciado
Joao : aluno representa que o objeto nomeado como Joo da classe
aluno foi instanciado.
Um objeto instanciado tem um tempo de existncia A existncia do
objeto representado por um retngulo desenhado em
um trao na horizontal chamado linha da vida
(representao no tempo) .
autodelegao
Um mtodo pode ser chamado por outro mtodo dentro de uma
classe. Neste caso o objeto esta enviando uma mensagem para ele
mesmo. o chamamos de auto delegao e representa-se.
INCLUIR();
TRANSFERIR();
AVALIAR();
TRANCAR();
Observao:
Observe que a chamada de mtodos (mensagens)s pode ser feita para
mtodos definidos na classe, por isto vamos colocando os mtodos
identificados por cada classe.
Se analisarmos a estrutura do caso e uso do exerccio verificamos que a
forma que foi projetado no adequada, pois permitir que se inclua
duplicatas de alunos. O ideal que verificssemos se o aluno j existe
no conjunto. Neste caso deveramos colocar um mtodo para verificar
isto, podamos por exemplo criar um mtodo que retorne a string sim
se ele j existe ou no se ele no existe. S vamos incluir se voltar
no.
Nosso diagrama ento fica:
com
uma
pseudolinguagem
como
ficaria
mtodo
Classe aluno
Classe matricula
{atributo:
{atributo:
{atributo:
String nome;
Int
cod_curso;
Mtodos:
Int
ID_curso();
String
nome,
end;
Mtodos:
Mtodos:
Void mat();
Int ID_al();
{}
Void incluir();
}
EXEMPLO 3:
Existem situaes que o diagrama de seqncia tem um a condicional.
Isto representado representando-se por letra e com a condio.
Vamos considerar o caso e uso e o respectivo diagrama de classe
dica
A representao numrica indicando nveis, exemplo 1.2, significa o mtodo dois
dentro do mtodo um, facilita o desenvolvimento, pois podemos resolver um nvel de
cada vez, sem nos preocuparmos no nvel inferior.
O mtodo 1.2.2b.1 que um mtodo chamado na opo b de mtodo 1.2.2b, que foi
selecionado no mtodo 1.2 que o segundo mtodo a ser executado quando se
executa o mtodo 1
Exemplo4:
Existem situaes que se precisa usar a repetio de chamada de mtodos.
Suponha o diagrama de caso e com o respectivo diagrama de classes:
Para se fazer o diagrama de seqncia deve-se saber que a nota fiscal, deve ter o
nome do cliente, endereo. Deve ter o nmero da nota e listar todos os itens que
compem a nota. Cada item de nota tem a descrio e o preo unitrio do produto .
Mas enquanto houver itens de nota fiscal deve-se busc-los e para cada item buscar
as informaes do produto; Veja o diagrama abaixo. O quadrado pontilhado mostrar
o que deve ser repetido para cada item:
Mensagens etiquetadas:
J vimos nos itens anteriores o que UML classifica como uma mensagem
etiquetada. Uma mensagem etiqueta quando se estabelece uma srie de
condies que devem ser cumpridas para se enviar a mensagem
De acordo com a UML a sintaxe da etiqueta :
<Predecessor><condio><expresso><retorno>
(<parmetros>);
:=
<mensagem>
3.1
Obs: pode-se
programao.
usar
estruturas
de
sintaxe
de
linguagens
de
Iv Mensagem de Intervalo:
Uma
transao
Indica que o remetente esperar pelo destinatrio por um perodo fixo de tempo
antes de interromper o processo de transmisso da mensagem e continuar o seu
processamento.
Exemplo de mensagem assncrona: figura do livro Modelagem de Objetos
Furlan,Jose,David