Você está na página 1de 27

ENGENHARIA DE

SOFTWARE
P R T I C A N 0 2
DIAGRAMAS DE CASOS DE
USOS
Domingos Filipe de Oliveira

DIAGRAMA DE CASO DE USO


Diagramas de caso de uso um cenrio que fornece um
modo de descrever a viso externa do sistema e
suas interaes com o mundo exterior.
Na modelagem de casos de uso, o sistema visto como
uma caixa-preta que fornece situaes de aplicao (ou
casos de uso).
Os diagramas de casos de uso tm um papel central para
a modelagem do comportamento de um sistema. Cada
diagrama mostra um conjunto de casos de uso e atores e
seus relacionamentos.
Domingos Filipe de Oliveira

PROPSITOS DOS CASOS DE USO


Descrever os requerimentos funcionais do sistema de
maneira
consensual
entre
utilizadores
e
desenvolvedores de sistemas.
Captar o comportamento pretendido do sistema que
est sendo desenvolvido, sem ser necessrio especificar
como esse comportamento implementado.
Oferecer as possveis situaes do mundo real para o
teste do sistema.
Domingos Filipe de Oliveira

ELEMENTOS BSICOS DO DIAGRAMA


DE CASO DE USO
Um diagrama de caso de uso um grfico de atores, um
conjunto de casos includo por um limite de domnio,
comunicao, participao e associaes entre atores.
d) sistema
c) interao
b) Caso de uso

a) Ator
Domingos Filipe de Oliveira

ATOR
Um ator uma entidade externa ao sistema que de alguma
forma participa de um caso de uso, isto , interage com o
sistema;
Um ator estimula o sistema com eventos externos e
tipicamente recebe algo do sistema;
Representado por bonecos magros;

Cliente

Um ator pode ser um ser humano, mquinas, dispositivos,


outros sistemas inlusive um software ou hardware.
Domingos Filipe de Oliveira

IDENTIFICANDO ATORES DE UM SISTEMA


Atores

tpicos

incluem,

por

exemplo,

clientes,

utilizadores,

gestores,

computadores, impressoras dispositivos de conexo de rede.


Identificar um atore de um sistemos:
Quem utilizar a principal funcionalidade do sistema?
Quem (ou o que) tem interesse nos resultados do sistema?
Quais dispositivos (hardware) so necessrios?
Com quais outros sistemas o sistema em foco ir interagir?

Domingos Filipe de Oliveira

EXEMPLOS DE ATORES

Cliente
Atendente

Sistema de
Cortes
Domingos Filipe de Oliveira

CASOS DE USO
Referem-se aos servios, tarefas ou funes que podem
ser utilizados pelos utilizadores do sistema (ator);
So

usados

para

expressar

documentar

os

comprtamentos das funes do sistema;


Em geral, podemos associar um caso de uso a um ecr (ou

Procurar na
Agenda

pagina) de um sistema, apesar de isto no ser uma regra;


Representados por um elipse.
Contm um texto descrevendo o servio (iniciando-se com
um verbo).

Domingos Filipe de Oliveira

CARACTERSTICAS DOS CASOS DE


USO
sempre iniciado por uma tor
Realizado em nome de um ator que, por sua vez, deve pedir direta ou
indiretamente ao sistema tal realizao.

Um caso de uso completo


Deve ser uma descrio completa de um determinado processo.

Deve prover um valor a uma tor


Como resposta solicitao do ator, retorna um valor.

Domingos Filipe de Oliveira

IDENTIFICAO DE CASOS DE USO


O trabalho dirio do sistema pode ser simplificado ou tornado
mais eficiente usando novas funes?
Quais as funes que o ator necessita do sistema?
O que o ator necessita fazer?
Quais so as entradas e as sadas, juntamente com sua origem
e destino, que o sistema requer?
Domingos Filipe de Oliveira

10

INTERAO OU ASSOCIAES
So representadas por uma linha que liga o ator ao caso de sus:
Podem existir setas
para indicar a
navegabilidade

Podem conter uma


descrio para indicar o
tipo de informao

Associao
bidirecional
Domingos Filipe de Oliveira

11

GENERALIZAO E ESPECIALIZAO
Forma de associao na qual existem
dois

ou

mais

casos

de

uso

com

caractersticas semelhantes;
Existem pequenas diferenas entre os
casos de uso associados;
Tambm possivel representar uma
associao
generalizao/especializao

de
com

atores;

Domingos Filipe de Oliveira

12

INCLUSO
Indica uma obrigatoriedade, ou seja, a
execuo de um caso de uso obriga a
execuo do outro;
Pode ser comparado chamada de uma
sub-rotina;
Representada por uma reta tracejada com
seta apontando para o caso de uso que foi
includo;
Esteretipo com o texto <<include>>

Domingos Filipe de Oliveira

13

EXTENSO
Descreve cenrios opcionais de um
caso de uso;
S

ocorrer

se

uma

determinada

condio for satisfeita;


Representada por uma reta tracejada
com uma seta apontando para o caso
de uso que recebe a extenso;
Esteretipo com o texto<<extend>>

Domingos Filipe de Oliveira

14

RESTRIES
s

vezes,

no

fica

claro

condio que deve ser satisfeita


para que um caso de uso seja
executado;
Nesses

casos,

restries
explicativa

com

podemos
uma

usar
nota

determinando

condio para que o caso de uso


seja executado;
Domingos Filipe de Oliveira

15

CENRIO
Descrio bastante simples do caso de uso;
uma narrativa de uma parte do comportamento global do
sistema e uma coleo completa de cenrios usada para
especificar completamente um sistema;
Um casa de uso est para um cenrio assim como uma classe
est para um objeto. Ou seja, um caso de uso representa uma
declarao de um um aspecto de comportamento que
carateristicas por lote de cenrios concretos.

Domingos Filipe de Oliveira

16

CENRIO (CONT.)
Tem como objetivo informar os atores que interagem com
o sistem e as etapas que devem ser executadas pelo ator
e pelo sistema para que o caso de uso execute sua funo;
No h um modelo padro para criar cenrios (especificar
de caso de uso);
recomenda-se que seja simples e de fcil acesso.
Domingos Filipe de Oliveira

17

EXEMPLO DE UM MODELO
Nome do caso de uso Abrir conta
Caso de uso geral
Ator principal

Cliente

Atores secundarios

Funcionrio

Resumo

Este caso de uso descreve as etapas percorridas por um


cliente para abrir uma conta corrente

Pr-condies

O pedido precisa ser aprovado

Ps-condies

necessario realizar um depsito inicial

Aes do ator

Aes do sistema

1. Solicitar conta
2. Consultar cliente por seu NIF
3. Avaliar pedido do cliente
Domingos Filipe de Oliveira

18

EXEMPLO DE UM MODELO (CONT.)


Nome do caso de uso Abrir conta
5. Escolher a password
da conta
6. Abrir conta
7. Definir cliente como ativo
8. Fornecer valor a ser
depositado
9. Emitir carto da conta
Restries/Validaes

1. Para abrir uma conta preciso ser maior de idade


2. O valor mnimo de depsito 20.000 KZ

Domingos Filipe de Oliveira

19

DECOMPOSIO DE DIAGRAMAS DE
CASOS DE USO
Pode-se dividir sistemas
complexos
em
subsistemas e, para cada
um deles, elaborar um
diagrama de caso de uso.
Para
mostrar
o
relacionamento
entre
esses subsistemas, os
casos
de
uso
so
Domingos Filipe de Oliveira
agrupados em pacotes.

20

RECOMENDAES
Crie nomes sempre comeando com um verbo no infinitivo.
Identifique primeiros os fluxos principais, iniciando com:
1.

Este caso de uso comea quando <Ator> <inicia evento>

Use subsees para representar desvios para sequncias alternativas com igual
importncia ou probabilidade de ocorrncia.
Procure estimar a dimenso de cada caso de uso, no deixando muito extenso.
Procure identificar partes comuns nos seus caso de uso (usar <<include>>).
Identifique servios comuns aos casos de uso e crie casos de uso genricos.

Domingos Filipe de Oliveira

21

EXEMPLOS DE CASOS DE USO

Domingos Filipe de Oliveira

22

EXEMPLOS DE CASOS DE USO

Domingos Filipe de Oliveira

23

EXEMPLOS DE CASOS DE USO

Domingos Filipe de Oliveira

24

CONCLUSO
Os casos de uso so elementos muito importante na modelagem de um sistema baseado em procesos
unificados, pois todas as atividades de desenvolvimento so organizados em funo dos deles;
Para escrever os casos de uso:

Identificar atores;

Identificar objetivos (de alto nvel);

Objetivos se tornam casos de uso;

Escrever cenrios:

Identificar fluxo normal;

Identificar fluxos alternativos;

Identificar fluxos de erros.

Domingos Filipe de Oliveira

25

EXERCCIOS

Resolver

ficha

de

exerccios.

Domingos Filipe de Oliveira

26

REFERNCIAS
1. Slides do professor Mrio Zenha Rela

- Engenharia de

Software (Casos de uso) Universidade de Coimbra.


2. Nunes, M. ONeil, H. Ramos, P Exerccios de UML. FCA
editora, 2010
3. BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. UML
Guia do Usurio. Editora Campus.

Domingos Filipe de Oliveira

27