Você está na página 1de 11

Modelagem de Casos

de Uso
Diagrama de Casos de Uso
Especificao de Cenrios
2
Modelagem de Casos de Uso
! Um modelo funcional
! Mostra como os valores so processados, sem
preocupaes com:
! ordenamento (seqncia) das aes;
! as decises, ou;
! as estruturas dos objetos.
! Dependncia de valores entre si e quais as
funes que os relacionam.
3
Modelagem de Casos de Uso
! Etapas para Modelagem Funcional
! Identificar as requisies de entrada e sada
! Para usurios;
! Envolvendo outros sistemas existentes.
! Construir diagramas mostrando as dependncias
funcionais;
! Descrever as funes (casos de uso);
! Identificar as restries.
4
Modelagem de Casos de Uso
! O diagrama de casos de uso exerce um papel
importante na anlise de sistemas:
! o principal diagrama para ser usado no dilogo
com o usurio na descoberta e validao de
requisitos;
! Os casos de uso constituem elementos que
estruturam todas as etapas do processo de
software.
5
Modelagem de Casos de Uso
! Aspecto tratado pelos Casos de Uso:
Funes
Funes
Dados
Eventos
Sistema
Funes
6
Modelagem de Casos de Uso
! Exemplo
Caixa eletrnico
Consultar
saldo
Solicitar
extrato
Realizar
Saque
Cliente Funcionrio
Abastecer
dinheiro
Recolher
envelopes de
depsitos
[Furlan98]
Realizar
depsito
7
Modelagem de Casos de Uso
! Notao
! Elementos:
Ator
Ator. Elemento externo do sistema que sempre
inicia o uso ou recebe um valor do caso de uso
Caso de Uso. Servio que o sistema fornece aos usurios.
Sistema
Caso de uso 1
Interao. Estmulos recebidos pelo sistema.
Sistema. Contexto aonde o caso de uso utilizado
(corresponde a uma classe ou um conjunto de classes)
8
Modelagem de Casos de Uso
! Analogia com Controle Remoto
! Viso externa do sistema;
! Fornece um conjunto de servios complexos que
so acessados atravs de botes;
9
Modelagem de Casos de Uso
! Exemplo
! Telefone Celular
Telefone Celular
Usurio
Rede
Celular
Fazer
ligao
Receber
ligao
Fazer uso
programado
10
Telefone Celular
Modelagem de Casos de Uso
! Tipos de Interao
! Comunicao
! Representa quais atores esto ligados a quais casos
de uso
Usurio
Fazer ligao
A comunicao representada atravs
de um arco simples
11
Modelagem de Casos de Uso
! Tipos de Interao
! Incluso
! Um caso inclui (precisa de, composto de) outro
! Representada atravs de um arco pontilhado com o rtulo <<inclui>>
ou <<include>> (UML 1.4+) ou <<uses>> (UML 1.3-)
Telefone Celular
Usurio
Fazer ligao
Identificar
destinatrio
<<include>>
12
Telefone Celular
Modelagem de Casos de Uso
! Tipos de Interao
! Extenso
! Um caso de uso pode opcionalmente utilizar um outro
Receber
ligao
Receber
ligao
adicional
<<extend>>
Usurio
Opcional
13
Modelagem de Casos de Uso
! Tipos de Interao
! Generalizao
! Especializao (sub-tipos de caso de uso)
! Herana
Usurio
Efetua
pagamento
Pagto com
Carto de crdito
Pagto com
Dbito em Conta
Super tipo
Sub tipos
14
Modelagem de Casos de Uso
! Tipos Possveis de Associao
! Quadro geral
X Caso de uso e
ator
X Ator e Ator
X X X Caso de uso e
caso de uso
Herana Incluso Extenso Comunicao
[Bezerra, 2002]
15
Modelagem de Casos de Uso
! Os Diagramas de Caso de Uso e de Fluxo de
Dados possuem similaridades
! DFD so mais complexos em virtude da maior
quantidade de itens
! Entidades externas
! Depsitos de dados
! Fluxo de dados
! Os Casos de Uso no descrevem fluxo de dados
16
Modelagem de Casos de Uso
Verificar
validade do
pedido
CLIENTE
PEDIDOS PENDENTES
LIVROS EDITORAS
CLIENTES
Situao
de crdito
Pedidos
Preparar
pedido para
editora
EDITORA
Endereo
Pedidos agrupados
Pedidos
vlidos
Ordens
de
compra
dados dos
livros
Entregar
livros livros
fatura
livros
pedidos
Pedidos agrupados
! DFD
17
Modelagem de Casos de Uso
Verificar
validade do
pedido
CLIENTE
PEDIDOS PENDENTES
LIVROS EDITORAS
CLIENTES
Situao
de crdito
Pedidos
Preparar
pedido para
editora
EDITORA
Endereo
Pedidos agrupados
Pedidos
vlidos
Ordens
de
compra
dados dos
livros
Entregar
livros livros
fatura
livros
pedidos
Pedidos agrupados
! DFD
Cliente
Editora
18
Modelagem de Casos de Uso
Verificar
validade do
pedido
PEDIDOS PENDENTES
LIVROS EDITORAS
CLIENTES
Situao
de crdito
Pedidos
Preparar
pedido para
editora
Endereo
Pedidos agrupados
Pedidos
vlidos
Ordens
de
compra
dados dos
livros
Entregar
livros livros
fatura
livros
pedidos
Pedidos agrupados
! DFD
Cliente Editora
19
Modelagem de Casos de Uso
Verificar
validade do
pedido
Pedidos
Preparar
pedido para
editora
Ordens
de
compra
Entregar
livros livros
fatura
livros
pedidos
! DFD
Cliente Editora
Verificar validade
do pedido
Preparar pedido
para editora
Entregar
livros
20
Modelagem de Casos de Uso
! DFD
Cliente Editora
Verificar validade
do pedido
Preparar pedido
para editora
Entregar
livros
Receber pedido
<<include>>
<<include>>
21
Modelagem de Casos de Uso
Telefone Celular
Usurio
Rede
Celular
Fazer
ligao
Receber
ligao
Fazer uso
programado
Fazer
ligao em
conferncia
Receber
ligao
adicional
<<extend>>
<<extend>>
Identificar
destinatrio
<<include>>
22
Modelagem de Casos de Uso
! Cuidado ao modelar as fronteiras do sistema
! Um usurio pode desempenhar diferentes papis
Carlos
Carlos como
professor
Estudante
Professor
Carlos como
estudante
23
Modelagem de Casos de Uso
! Cuidado ao modelar as fronteiras do sistema
! Quais as fronteiras do sistema?
Caixa
Sistema ATM
Sistema Bancrio
Limites do
sistema?
Cliente
24
Modelagem de Casos de Uso
Cliente
Cliente
Pessoa
Fsica
Cliente
Pessoa
Jurdica
Sistema de Venda
com Carto de Crdito
Varejista
Administradora
de
carto de
crdito
Transao
Venda
Cancelamento
de venda
<<extends>>
Obs: padro de anlise
25
Modelagem de Casos de Uso
! Caso de Uso Transao
! Abstrato
! usado como generalizao
! usado para representar servios da organizao que
precisam ter a sua ocorrncia registrada
! O registro obrigatoriamente contm
" o momento em que ocorreu a transao (data/hora)
" quem participou (cliente e vendedor)
" o qu esteve envolvido (o produto da venda)
26
Modelagem de Casos de Uso
Bibliotecrio
Sistema de Bibliotecas
Exerccio! Bibliotecrio
27
Modelagem de Casos de Uso
! Exerccio
! Seja um sistema de controle acadmico para
universidade que deve fornecer:
! Matrcula (e trancamento) de disciplinas
! Alocao de professores e alunos para turmas
! Permitir que uma pessoa seja professor ou aluno de
vrios cursos simultaneamente
28
Modelagem de Casos de Uso
! Exerccio
! Um programa Leitor de E-mail tem como principal propsito fornecer uma
interface amigvel para usurios de Correio Eletrnico da Internet. Tal
programa interage com programas que atuam como servidores de envio e
recebimento de e-mail geralmente fornecidos por provedores de acesso
Internet (ISPs) contratados pelo usurio
! Um Leitor de E-mail deve ser configurado com informaes das contas do
usurio, contendo: o nome do usurio, a senha e endereo IP do servidor de
e-mail.
! A principal funo fornecida a de obter as mensagens existentes no
servidor, colocando-as em uma pasta denominada Inbox. Toda mensagem
obtida do servidor de e-mail possuir o estado unread, o que poder
visualizado facilmente pelo usurio. A partir da seleo de uma mensagem, o
usurio poder: respond-la, encaminh-la para outro usurio e apag-la.
! O usurio pode ainda escrever uma nova mensagem para um destinatrio.
As mensagens podem conter arquivos em anexo. As mensagens enviadas
ficam armazenadas em uma pasta denominada SentMail
! Finalmente, um usurio pode criar novas pastas para agrupar mensagens
recebidas ou enviadas.
29
Modelagem de Casos de Uso
! Representao de UCs no Rose
Paleta de
cones pode
ser customizada
No h representao
para sistema nos moldes
da UML
30
Modelagem de Casos de Uso
! Heursticas (1)
! Evitar um nmero muito elevado de casos de uso
! Fragmentar o sistema em sub-sistemas (ou em sub-
pacotes)
! Usar casos de uso com denominao genricas como
Manter ou Gerenciar para descrever as funes de
Cadastro de uma entidade
! Evitar detalhamento algortmico
31
Modelagem de Casos de Uso
! Heursticas (2)
! Evitar o uso de <<include>> e <<extend>> nas
primeiras iteraes;
! Lembrem-se que modelagem um processo iterativo;
32
Modelagem de Casos de Uso
! Heursticas (3)
! Diagramas de Caso de Uso tm sido usados para
auxiliar no dilogo com o usurio
! Deve-se ter ateno para o fato que o diagrama
tem semntica informal
! Isto , no preciso
! Para um mesmo problema, mltiplas solues vlidas
so admitidas
33
Modelagem de Casos de Uso
! Especificao de Cenrios
! Um caso de uso deve ser descrito textualmente
! H grande variedade de formatos para descrever
casos de uso
" Exemplo: Praxis (http://www.wppf.uaivip.com.br/praxis/gabaritos/documentos/ERSw.dot)
" Exemplo: Processo Unificado
34
35 36
37
Modelagem de Casos de Uso
! Especificao de Cenrios
! Um fluxo normal e diversos fluxos alternativos
! Variantes regulares; e
! Casos incomuns.
! Fluxos excepcionais para manipular situaes de
erro
! S devem ser analisados e descritos aps a descrio
dos fluxos bsicos;
" Lembrem-se que modelagem um processo iterativo;
38
Modelagem de Casos de Uso
! Especificao de Cenrios
! Exemplo (Sacar dinheiro):
! Saque com sucesso;
! Tentativa de saque MAS senha incorreta;
! Tentativa de saque MAS saldo insuficiente;
! Recomendaes
! Concentre-se inicialmente na funcionalidade
bsica/central do caso de uso;
! Pense nos fluxos secundrios depois!
39
Resumo
! Escrever 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 erro;
40
Dicas: Como encontrar atores?
! Quem usa o sistema?
! Quem instala/mantm o sistema?
! Quem inicia/desliga o sistema?
! Que outros sistemas usam o sistema?
! Quem recebe informao do sistema?
! Quem prov informao ao sistema?
41
Dicas: Como encontrar casos
de uso?
! Atores so fundamentais para a descoberta
dos casos de uso
! Qual o objetivo de cada ator com o sistema?
! Pergunte:
! O sistema armazena informaes? Que informaes atores
iro criar, ler, atualizar ou apagar?
! O sistema precisa notificar o ator sobre mudanas no seu
estado interno?
! Existe algum evento externo que o sistema precisa saber?
Que ator informa o sistema destes eventos?
42
Casos de Uso devem ser
! Unidades testveis e auto-contidas!
! Isso facilita:
! distribuio de tarefas entre os desenvolvedores;
! gerenciamento do cronograma;
! planejamento e realizao de testes unitrios; e
! integrao do sistema.
! Sem isso, no vivel um desenvolvimento iterativo
e incremental!
! O escopo de um caso de uso deve ser limitado.
43
Modelagem de Casos de Uso
! Comentrio Final
! Os casos de uso so elementos muito importantes
na modelagem de um sistema baseado em
Processo Unificado;
! Todas as atividades de desenvolvimento so
organizadas em funo dos casos de uso;
44
Leitura fortemente
recomendada
! Captulos a serem definidos.

Você também pode gostar