Você está na página 1de 21

MODELAGEM DE

SOFTWARE

Prof. Ricardo Ribeiro Assink Prof. Edson Lessa

Prof. Richard Henrique de Souza


Caso de uso - Textual
Graphviz
http://www.graphviz.org/
DotUML
https://dotuml.com/
Visual Studio Code
https://code.visualstudio.com/
Instale a extensão para
dotUML no VScode
Vamos pegar o Exemplo do
site dotuml
Vamos pegar o Exemplo do
site dotuml
UseCaseDiagram [frame=true framecolor=steelblue
label="Usecase Diagram"] {
attribute usecase [fillcolor=paleturquoise]
actor a as "Administrator"
actor c as "Customer"
system s as "ATM System" [fillcolor=whitesmoke] {
usecase u1 as "Withdraw"
usecase u2 as "Transfer"
usecase u5 as "Read log"
usecase u3 as "Deposit"
usecase u4 as "Register ATM"
}
actor b as "Bank" [icon=university]
c "1" -- "0..1" u1
c "1" -- "0..1" u2
c "1" -- "0..1" u3
a "1" -- "0..1" u4
a "1" -- "0..1" u5
u3 "0..*" -- "1" b
u4 "0..*" -- "1" b
}
No visual Code
Vamos voltar
ao Exercício da
Aula Passada
Código para os três casos de
uso que são executados pelo
Administrador
UseCaseDiagram [frame=true
framecolor=steelblue label="Usecase Diagram"]
{
attribute usecase [fillcolor=paleturquoise]
actor a as "Administrator"
actor c as "Colaborador"
system s as "Portal Web"
[fillcolor=whitesmoke] {
usecase u8 as "Visualizar estatística de
acesso"
usecase u9 as "Publicar conteúdo"
usecase u10 as "Cadastrar usuário"
}
a "1" -- "1" u8
a "1" -- "1" u9
a "1" -- "1" u10
}
Exercício
Agora finalize o código
para gerar o restante do
diagrama
Mensagens de Usuário
Adicionar as mensagens aos casos de
uso
❑ Erro
❑ Aviso
❑ Informação
Erro x Aviso x Informação
Uma "mensagem de erro" deve alertar usuários de um problema que
já aconteceu
Ex: Senha informada inválida: ela deve ter de 6 a 8 caracteres.

Uma "mensagem de aviso" deve informar ao usuário sobre uma


condição que pode causar um problema no futuro
Ex: A senha informada é fraca. Combine letras, dígitos e símbolos.

Uma "informação" indica uma declaração ou um fato no sistema


Ex: Uma nova senha foi encaminhada para o email cadastrado no sistema.
Quem deve entender uma
mensagem?
As mensagens discutidas aqui são aquelas voltadas para
apoiar usuários do sistema

Mensagens técnicas não devem ser apresentadas ao


usuário
Elas podem ser armazenadas para facilitar depuração (log)
Exemplos:
Stack trace
Exceção
Mensagem do gerenciador de banco de dados
Como escrever uma
mensagem?
O texto deve ser voltado ao usuário, utilizando termos de negócio que
permitam seu entendimento:
Problema (Data de pagamento inválida)
Causa (A data de pagamento informada é inferior à data de hoje)
Solução (A data de pagamento deve ser igual ou superior à data de hoje.)

Veja se a mensagem realmente apresenta um problema que tenha ocorrido


Se não for o caso, a mensagem não é um erro
Se você pretende alertar o usuário sobre uma condição que pode causar um problema no futuro,
utilize uma mensagem de aviso

Evite textos que parecem culpar o usuário (ex: você informou um CPF inválido)
Erro
desconhecido!
Exemplo clássico de mensagem totalmente inútil

O usuário saberá que houve um erro, mas não terá ideia sobre qual foi este erro e
nem saberá o que fazer a partir daqui

Sempre utilize uma mensagem que tenha significado para o usuário (problema,
causa e solução)

É provável que o programa tenha um tratamento pobre de exceções


Revise a solução técnica para tratar exceções de modo mais
efetivo
O nome informado para o
funcionário é inválido.
Note que o problema foi identificado, mas a causa e a
solução não são apresentadas ao usuário

Neste caso, o usuário precisaria descobrir o que está errado


Note que o termo "inválido" é ambíguo, pois pode significar que o
nome tem caracteres inválidos ou que o nome tem menos de N
caracteres

Procure informar o problema que realmente aconteceu e


não apenas indicar que houve "algum" problema
Alternativas...
Nome do funcionário com caracteres
inválidos. O nome deve ter mais de 10
caracteres e conter apenas letras e
espaços.

Nome do funcionário tem menos de


10 caracteres. O nome deve ter
mais de 10 caracteres e conter
apenas letras e espaços.
Prototipação
Telas
Ferramenta mockup

https://balsamiq.com/wireframes/

http://wireframesketcher.com/
Download (The software is fully functional for 14 days.)
Opção 1: Standalone version
Opção 2: plug-in para o Eclipse
Mãos a Obra !
Dúvidas?
Referência bibliográfica
FOWLER, Martin e SCOTT, Kendall. Uml Essencial. 2a. Edição. Bookman.
Porto Alegre, 2000.

SCHNEIDER, Geri. Applying use case: a practical guide. Addison-Wesley,


1998.

OESTEREICH, Bernd. Developing Software with UML. Addison-Wesley, 1999.

Você também pode gostar