Você está na página 1de 28

ANLISE DE SISTEMAS

Jlio Duarte
jmduarte@ipca.pt

Sumrio
Introduo UML;
Diagrama de Sequncia;
Exerccios;

Unified Modeling Language


oLinguagem de Modelao de Software;
Tem um vocabulrio e regras para combinao de termos;
Permite a construo de representaes conceptuais e fsicas do
sistema;
oLinguagem de modelao aceite globalmente;
oA UML permite;
Comunicao/visualizao (anlise);
Especificao (projeto);
Produo de cdigo (gerao automtica);
Documentao;

UML

UML
90% dos projetos de software no usam mais que 5 tipos
diagramas:
o Diagramas de Sequncia - mostram interaes entre atores e o

sistema e entre os componentes do sistema;


o Diagramas de Estado - mostram como o sistema reage a
eventos internos e externos;
o Diagramas de Casos de Uso - mostram as interaes entre um
sistema e seu meio ambiente;
o Diagramas de Atividades - mostram as atividades envolvidas em
um processo ou em processamento de dados;
o Diagramas de Classe - que mostram as classes de objetos no
sistema e as associaes entre essas classes.

Diagrama de Sequncia
oProcura determinar a sequncia de eventos que ocorrem

em determinado processo;
oIdentifica os mtodos que devem ser disparados entre os
atores e os objetos;
oBaseia-se nas funes que o sistema deve conter,
idealmente, deve existir um diagrama de sequncias para
cada funcionalidade identificada;
oEst relacionado com o Diagrama de Classes, uma vez
que os objetos esto identificados com a classe que lhes
deu origem;
oUma boa ferramenta para validar o Diagrama de Classes;

Diagrama de Sequncia

Diagrama de Sequncia
Atores:
oSo os utilizadores do sistema, ou seja, as pessoas que
vo interagir com o sistema;
oNormalmente, um Diagrama de Sequncia iniciado por
um evento externo, despoletado por um utilizador;
o representado por um boneco desenhado atravs de
linhas;
oAparecem com uma linha a tracejado, na vertical, que
representa o tempo de vida do ator;

Diagrama de Sequncia
Atores:

Cliente

Gestor

Diagrama de Sequncia
Objetos:
oRepresentam as instncias das classes envolvidas no
processo ilustrado pelo diagrama de sequncia;
oTal como os atores, os objetos tambm possuem uma
linha a tracejado com o mesmo significado;
oUm objeto pode existir desde o incio do processo ou ser
criando durante a sua execuo;
oSo representados com um retngulo com a descrio no
seu interior;
oA descrio composta por pela sequncia
objeto : classe;

Diagrama de Sequncia
Objetos:

cliente1 : Cliente

pedido1 : Pedido

Diagrama de Sequncia
Linha de Vida:
oRepresenta o tempo em que um objeto existe durante o
processo;
oRepresentada por uma linha vertical a tracejado e
iniciada no objeto;
oQuando um objeto destrudo, durante o tempo de
execuo do processo, a linha de vida interrompida
por um X;

Diagrama de Sequncia
Foco de Controle:
oIndica o perodo em que o objeto est a participar, de
forma ativa, no processo;
oSo representados sobre a linha da vida, porm com
uma linha mais larga;
cliente1 : Cliente

pedido1 : Pedido
registarPedido()

Diagrama de Sequncia
Mensagens ou Estmulos:
oRepresentam a ocorrncia de eventos que, comummente,
fazem chamadas a mtodos de algum objetivo envolvido
no processo;
oSo representadas por uma seta que indica quais os
objetos envolvidos, o que envia e o que recebe;
oPossuem descrio, indicada sobre a seta, e podem ser
numerados, indicando a sequncia com que as
mensagens so enviadas;

Diagrama de Sequncia
Mensagens ou Estmulos:
cliente1 : Cliente

pedido1 : Pedido

1 : registarPedido()

cliente1 : Cliente

pedido1 : Pedido

1 : registarPedido()

cliente1 : Cliente

pedido1 : Pedido

<<destroy>>
1 : cancelarPedido()

cliente1 : Cliente

<<create>>
1 : geraPedido()

pedido1 : Pedido

Diagrama de Sequncia

Mensagens de retorno:
oMensagem gerada em resposta a outra mensagem que
foi previamente enviada;
oPodem retornar informaes especficas do mtodo
chamado ou, simplesmente, um OK ou NOK;
oRepresentada por uma seta a tracejado, contendo uma
seta fina que informa o sentido da mensagem;
oPodem estar omitidas

no diagrama;

cliente1 : Cliente

pedido1 : Pedido

1 : registarPedido()

Diagrama de Sequncia
Auto-chamada:
oMensagem enviada ao prprio objeto;
oRepresentada por uma seta com origem e destino no
mesmo objeto;
cliente1 : Cliente

Diagrama de Sequncia
Esteretipos:
<<boundary>>
o Identifica uma classe que serve de comunicao entre atores

externos e o sistema;
o , normalmente, associados prpria interface;
o Costuma, interagir com
classes tipo <<control>>;
interface

Diagrama de Sequncia
Esteretipos:
<<control>>
o Intermediria entre as classes <<boundary>> e as outras

classes do sistema;
o Responsvel por interpretar eventos ocorridos sobre os
objetos <<boundary>> e retransmiti-los para as outras
classes do sistema;

pedControl

Diagrama de Sequncia
Esteretipos:
<<entity>>
o So as classes de negcio da aplicao, levantadas de

acordo com o domnio e vocabulrio do problema;


o Definem os valores que um atributo pode assumir e as
operaes vlidas para estes valores;

cliente

Diagrama de Sequncia
Blocos de interao:
Os blocos de interao (interation frames) podem
suportar diferentes tipos de operadores sendo os mais
comuns:
Loop
Alt
Opt

- execuo em ciclo de acordo condio em guarda


- corresponde a fragmentos mltiplos alternativos
- integra s um segmento, executado se cond.
Verdadeira

Ref

- refere um fragmento definido noutro diagrama (Sd)

Diagrama de Sequncia
umPedido : Pedido

cuidadoso : Entregador

loop
[para cada item de pedido]
alt
[item.valor > 10000]
1 : despacha()

[caso contrrio]

2 : despacha()

opt
[umPedido.precisaConfirmacao()]
3 : envia()

normal : Entregador

oMensageiro : Mensageiro

Diagrama de Sequncia

Diagrama de Sequncia
Quando utilizar o diagrama de sequncia:
oPara representar, em alto nvel, a sequncia da interao
entre os diferentes objetos do sistema, visando a
compreenso de um caso de uso;
oPara ajudar a encontrar os mtodos das classes
envolvidas;
oNo deve ser usado:
o Para mtodos muito simples (ex: get() e set());
o Para definio precisa do cdigo;

Exerccio 1
Elaborar diagramas de sequncia relativamente ao caso

de uso de levantamento de dinheiro num terminal


multibanco. Mostre uma viso simplificada (apenas
utilizador e sistema).
o A) O utilizador tenha saldo disponvel;
o B) O utilizador no tem saldo.

Exerccio 2
Elaborar diagramas de sequncia relativamente ao

processo de retirar uma bebida de uma mquina


automtica.
o A) Mostre uma verso simplificada apenas com o utilizador e a

mquina;
o B) Mostre uma verso onde a inclua os componentes registadora e
dispensa da mquina.

Exerccio 3
A administrativa de uma clnica tem a tarefa de agendar

as consultas aos doentes. Para isso, ela utiliza um


sistema. O sistema, por sua vez, verifica na agenda a
disponibilidade e procede marcao. Desenhe um
Diagrama de Sequncia que explique o processo de
agendamento de uma consulta.

Exerccio 4
Um administrador de uma empresa, utilizando uma

aplicao informtica, pretende alterar o preo a um


determinado produto. Para isso, o administrador pesquisa
o produto pela sua referncia. Aps consultar os dados,
altera o preo do produto. Apresente um diagrama de
sequncia, onde este processo seja explicado.

Você também pode gostar