Escolar Documentos
Profissional Documentos
Cultura Documentos
Caso de Uso
Caso de Uso
Introduo
O modelo de casos de uso uma
representao
das funcionalidades externamente observveis do sistema e dos elementos externos ao sistema que interagem com o mesmo.
Introduo
O diagrama da UML utilizado na modelagem
de casos de uso o diagrama de casos de uso. Tcnica de modelagem idealizada por Ivar Jacobson, na dcada de 1970. Mais tarde, incorporada ao mtodo Objectory. Posteriormente, a notao de casos de uso foi adicionada UML.
5
Introduo
O
modelo de casos de uso fora os desenvolvedores a moldar o sistema de acordo com o usurio.
Componentes do modelo
O modelo de casos de uso de um sistema
composto de:
Casos de uso
Um caso de uso a especificao de uma seqncia de interaes entre um sistema e os agentes externos. uma seqncia de aes que um sistema executa para produzir um resultado de valor observvel por um ator Define parte da funcionalidade de um sistema
Casos de uso
Um caso de uso representa quem faz o que (interage) com o sistema, sem considerar o comportamento interno do sistema.
Descries narrativas
Cada caso de uso definido atravs da
descrio narrativa das interaes que ocorrem entre o(s) elemento(s) externo(s) e o sistema.
10
seu carto. O Sistema requisita a senha do Cliente. Aps o Cliente fornecer sua senha e esta ser validada, o Sistema exibe as opes de operaes possveis. O Cliente opta por realizar um saque. Ento o Sistema requisita o total a ser sacado. O Sistema fornece a quantia desejada e imprime o recibo para o Cliente.
11
1. Cliente insere seu carto no caixa eletrnico. 2. Sistema apresenta solicitao de senha. 3. Cliente digita senha. 4. Sistema exibe menu de operaes disponveis. 5. Cliente indica que deseja realizar um saque. 6. Sistema requisita quantia a ser sacada. 7. Cliente retira a quantia e recibo.
12
Sistema
Apresenta solicitao de senha. Exibe operaes disponveis. Requisita quantia a ser sacada.
13
Detalhamento
O grau de detalhamento a ser utilizado na
Um caso de uso sucinto descreve as interaes sem muitos detalhes. Um caso de uso expandido descreve as interaes em detalhes.
14
Cenrios
Um caso de uso tem diversas maneiras de
ser realizado. Um cenrio a descrio de uma das maneiras pelas quais um caso de um pode ser realizado. Um cenrio tambm chamado de instncia de um caso de uso. Normalmente h diversos cenrios para um mesmo um caso de uso.
15
Cenrio Principal
Descreve um seqncia de aes que sero executadas considerando que nada de
o cenrio perfeito
16
Cenrio Principal
Trecho do caso de uso
Cenrios
Cenrio Perfeito: impossvel tudo ocorrer sem problemas !
O mundo no perfeito, muito menos as
Cenrios Alternativos
Permite uma seqncia diferente de eventos
em relao ao cenrio principal Para cada um destes cenrios atpicos ser definido o fluxo de eventos correspondente. So os casos onde podem ocorrer excees, erros ou qualquer outra ao possvel e diferente.
19
Cenrios Alternativos
1. O sistema faz a leitura do carto magntico
magntico 1a) Se o sistema no conseguir ler os dados do carto magntico, tentar novamente por, no mximo, mais duas vezes. Caso persista o problema, encerrar o caso de uso.
20
Atores
Elemento externo que interage com o sistema.
externo: atores no fazem parte do sistema. interage: um ator troca informaes com o sistema.
seqncia de interaes como o sistema, ou um evento acontece para que o sistema responda.
21
Atores
Categorias de atores: pessoas (Empregado, Cliente, Gerente, Almoxarife, Vendedor, etc); organizaes (Empresa Fornecedora, Agncia de Impostos, Administradora de Cartes, etc); outros sistemas (Sistema de Cobrana, Sistema de Estoque de Produtos, etc). equipamentos (Leitora de Cdigo de Barras, Sensor, etc.)
22
Atores
Um ator corresponde a um papel
O mesmo indivduo pode ser o Cliente que compra mercadorias e o Vendedor que processa vendas. Uma pessoa pode representar o papel de Funcionrio de uma instituio bancria que realiza a manuteno de um caixa eletrnico, mas tambm pode ser o Cliente do banco que realiza o saque de uma quantia.
23
Atores
O nome dado a um ator deve lembrar o seu
uso.
24
Durante esta fase, os analistas devem identificar as atividades do negcio relevantes ao sistema a ser construdo.
casos de uso so necessrios para descrever completamente um sistema. A quantidade de casos de uso a ser utilizada depende completamente da complexidade do sistema.
26
Identificao de atores
Fontes e os destinos das informaes a serem
uma vez que um ator todo elemento externo que interage com o sistema.
O analista deve identificar: as reas da empresa que sero afetadas ou utilizaro o sistema. fontes de informaes a serem processadas e os destinos das informaes geradas pelo sistema.
27
Identificao de atores
Perguntas teis: Que rgos, empresas ou pessoas iro utilizar o sistema? Que outros sistemas iro se comunicar com o sistema a ser construdo? Algum deve ser informado de alguma ocorrncia no sistema? Quem est interessado em um certo requisito funcional do sistema? O desenvolvedor deve ainda continuar a
pensar sobre atores quando passar para a identificao dos casos de uso.
28
29
existe para cadastrar informaes, nem tampouco para gerenciar os seus usurios.
O objetivo principal produzir algo de valor para o ambiente no qual ele est implantado.
31
Casos de Uso
Trabalhando com um caso real
Casos de Uso
No levantamento de dados ...
Desejo um pequeno sistema que controle minhas contas a pagar. Deve emitir relatrios gerais ou por tipo de conta, para contas vencidas e a vencer. No futuro, gostaria de total integrao desse sistema com um conjunto de outros sistemas que vou pedir, alm de exportao e importao de arquivos para Palm.
33
Casos de Uso
Pensando nos Casos de Uso ...
Quais so os atores ?
Micro-Empresrio
Secretria
34
Casos de Uso
Existe relacionamento entre os atores?
herda de
Micro-Empresrio
Secretria
35
Casos de Uso
Quais as responsabilidades de cada ator ?
* Secretria: - Relatrio de contas a vencer - Relatrio de contas vencidas - Cadastrar tipo de conta
36
Casos de Uso
Quais as responsabilidades de cada ator ?
* Micro-empresrio: todas as tarefas da Secretria + - Lanar conta a pagar - Registrar pagamento de conta - Emitir extrato de lanamentos por perodo
37
Casos de Uso
Descrio dos Casos de Uso
. Cenrio Principal fluxo perfeito, no qual nada ocorre de errado . Cenrios Alternativos alternativas do fluxo ; excees
38
Casos de Uso
Caso de Uso Lanar Conta a Pagar . Cenrio Principal
Ator: Micro-empresrio 1. O usurio informa um tipo de conta. 2. O sistema busca e exibe a descrio do tipo de conta. 3. O usurio informa: 3.1. data de vencimento 3.2. descrio da conta 3.3. valor total a pagar 3.4. valor parcial a pagar
39
Casos de Uso
. Cenrios Alternativos
... 2. O sistema busca e exibe a descrio do tipo de conta ... Tipo de Relacionamento entre Casos de Uso
3a. Se o tipo de conta no existir, carregar a consulta de tipos de contas. Extends (Consultar tipos de contas).
40
Exerccios
41
Exerccio
Caso de uso Escreva um caso de uso que mostre uma
42
uso e relacionamentos entre os elementos. Tem o objetivo de ilustrar em um nvel alto de abstrao quais elementos externos interagem com que funcionalidades do sistema. Uma espcie de diagrama de contexto.
menos um ator
45
Relacionamentos
Casos de uso e atores no existem sozinhos.
Generalizao
Notao
A notao para um ator em um DCU a
figura de um boneco
elipse.
Um relacionamento de comunicao
representado por um segmento de reta ligando ator e caso de uso. Pode-se tambm representar a fronteira do sistema em um diagrama de casos de uso.
47
Relacionamentos de Comunicao
a relao de um ator com o caso de uso
48
Exemplo (Notao)
Ator Caso deuso
49
Exemplo (Notao)
Ator: algum ou alguma coisa que interage com
o sistema
50
Exemplo (Notao)
Sistema de Vendas de Livros por Correio Vendedor Realizar Pedido
Cliente
Empresa Transportadora
51
Relacionamentos
Casos de uso e atores no existem sozinhos.
Incluso Extenso
Generalizao
52
Relacionamentos de Comunicao
a relao de um ator com o caso de uso
53
Relacionamento de Incluso
uma simples relao de incluso, ou seja, os
cenrios ou situaes possveis detalhados em um caso de uso esto includos em outro caso de uso.
Quando dois ou mais casos de uso tm
comportamento comum - uma seqncia comum de interaes - esse comportamento pode ser modelado ou descrito em um caso de uso separado, que utilizado por outros casos.
54
Relacionamento de Incluso
Na elaborao de um sistema comum que
um novo cliente estiver sendo cadastrado; um novo pedido estiver sendo feito; ou uma consulta dos pedidos de um cliente for solicitada, etc.
55
Relacionamento de Incluso
Esta relao serve para evitar a repetio
deste caso de uso nos outros casos de uso, onde necessrio tambm Validar Cliente.
Podemos ler da seguinte maneira: o caso de
Relacionamento de Incluso
Este conceito no novo, podendo ser
comparado ao conceito de sub-rotina ou subprograma e estas so algumas caractersticas das relaes de uso:
Aparecem como funcionalidade comum ao invs de especificar vrios casos de uso; Os casos <<include>> usados so casos de uso por si s, isto , existem primariamente como um caso de uso; O caso de uso <<include>> usado sempre que o caso de uso principal executado. Isto faz a diferena com as extenses, que so opcionais.
57
Alterar Pedido
58
Relacionamento de extenso
Utilizado para modelar situaes onde
Sejam A e B dois casos de uso. Um relacionamento de extenso de A para B indica que um ou mais dos cenrios de B podem incluir o comportamento especificado por A. Neste caso, diz-se que B estende A. O caso de uso A chamado de estendido e o caso de uso B de extensor.
59
Relacionamento de extenso
Cada uma das diferentes seqncias representa
um comportamento opcional, que s ocorre sob certas condies ou cuja realizao depende da escolha do ator.
Aps a sua execuo, o fluxo de interaes volta ao caso de uso estendido, recomeando logo aps o ponto em que o extensor foi inserido.
Importante: no necessariamente o
Relacionamento de extenso
Exemplo: considere um processador de
textos. Considere que um dos casos de uso deste sistema seja Editar Documento.
No cenrio principal deste caso de uso, o ator abre o documento, modifica-o, salva as modificaes e fecha o documento. Mas, em outro cenrio, o ator pode desejar que o sistema faa uma verificao ortogrfica no documento. Em outro, o ele pode querer realizar a substituio de um fragmento de texto por outro.
61
Relacionamento de extenso
Interaes de Substituir Texto: 1. Em qualquer momento durante Editar Documento, o ator pode optar por substituir um fragmento de texto por outro. 2. O ator fornece o texto a ser substitudo e o texto substituto. 3. O ator define os parmetros de substituio (substituir somente palavras completas ou ocorrncias dentro de palavras; substituir no documento todo ou somente na parte selecionada; ignorar ou considerar letras maisculas e minsculas). 4. O sistema substitui todas as ocorrncias encontradas no texto.
62
C liente
63
C a C a d a s D Ve F u n c i o
include
64
extends
Relacionamento de generalizao
Relacionamento no qual o reuso mais
evidente. Este relacionamento permite que um caso de uso (ou um ator) herde caractersticas de um caso de uso (ator) mais genrico. O caso de uso (ator) herdeiro pode especializar o comportamento do caso de uso (ator) base.
Resumo: Pode existir entre dois casos de uso
65
Relacionamento de generalizao
Vantagem: comportamento do caso de uso
Somente o comportamento que no faz sentido ou diferente para um herdeiro precisa ser redefinido.
66
Relacionamento de generalizao
A generalizao entre atores significa que o
herdeiro possui o mesmo comportamento que o ator do qual ele herda. Alm disso, o ator herdeiro pode participar em casos de uso em que o ator do qual ele herda no participa. Um exemplo: considere uma biblioteca na qual pode haver alunos e professores como usurios.
Ambos podem realizar emprstimos de ttulos de livros e reservas de exemplares. No entanto, somente o professor pode requisitar a compra de ttulos de livros biblioteca.
67
Generalizao entre casos de uso: significa que um caso de uso filho herda o comportamento e o significado do caso de uso pai O caso de uso filho dever acrescentar ou sobrescrever o comportamento do caso de uso pai
A generalizao representada graficamente por uma linha slida com um tringulo numa das extremidades O tringulo aponta para o caso de uso pai
68
Notao
Os relacionamentos de incluso, extenso e herana so
representados por uma seta direcionada de um caso de uso para outro. esteretipo <<inclui>>.
69
Notao
Obter Extrato inclui
Fornecer Identificao
70
Notao
estende Substituir Texto
71
72
que
Cliente
Cliente especial
Cliente regular
73
Notao
Realizar Pagamento Cliente
74
Quando um cliente compra um eletrodomstico ele se dirige ao caixa da loja para efetuar o pagamento do que foi comprado. O cliente pode pagar vista, no credirio da loja ou com carto de crdito. Para qualquer forma de pagamento a loja realiza uma consulta no SPC para depois emitir a NF de venda.
75
76