Escolar Documentos
Profissional Documentos
Cultura Documentos
Caso de Uso
Caso de Uso
Elaine
Casos de uso
O modelo de casos de uso modela os requisitos
funcionais do sistema.
uma tcnica de modelagem idealizada por Ivar
Jacobson, na dcada de 70.
Mais tarde a notao de casos de uso foi
adicionada UML.
O diagrama da UML utilizado na modelagem de
casos de uso o diagrama de casos de uso.
Elaine
Casos de Uso
Um caso de uso descreve um conjunto de
funcionalidades do sistema modelando o dilogo
que ocorre entre algo que est fora do sistema,
uma entidade externa chamada de ator e o
sistema.
Elaine
Casos de Uso
Um caso de uso especifica o comportamento de
um sistema ou parte dele.
uma descrio do conjunto de passos que o
sistema executar para desempenhar suas
funes
Um caso de uso baseado em um cenrio que
descreve como o ator interage com o sistema.
Ele identifica eventos que podem ser solicitados
e descreve a resposta do sistema para esses
eventos
Elaine
Elaine
Elaine
Casos de Uso
Anlise Tradicional
O que o sistema deve fazer?
Elaine
Atores
So entidades do meio ambiente (externas ao
sistema) que interagem com o sistema para
solicitar algo ou informar algo.
Atores podem dar inicio a eventos
ou interagir com o sistema em
decorrncia do resultado de
eventos ocorridos.
Elaine
Atores
Categorias de atores:
Pessoas (Empregado, cliente, gerente, aluno,
professor);
Organizaes ( Empresa Fornecedora, Administradora
de cartes);
Outros Sistemas ( Sistema de estoque, Sistema de
cobrana);
Equipamentos (Leitora de cartes, Sensores, Alarmes);
Elaine
Atores
Um ator corresponde a um papel representado
em relao ao sistema
O mesmo indivduo pode ser o cliente que efetua
compras na loja e pode ser o vendedor que processa
vendas;
Uma pessoa pode representar o papel de Funcionrio
de um banco, mas tambm pode ser Cliente do
banco.
Atores
Atores se comunicam com o sistema por muitas
razes, incluindo:
Iniciar um caso de uso. Os casos de uso sempre so
iniciados por atores.
Pedir alguns dados armazenados no sistema, os quais
ento o caso do uso apresenta ao ator.
Mudar os dados armazenados no sistema por meio de
um dialogo com o sistema.
Informar que ocorreu algo que o sistema deve estar
ciente.
Elaine
Atores
Um ator inicia um caso de uso. Entretanto,
depois que o caso de uso comeou, ele pode se
comunicar com vrios outros atores.
Considera-se s vezes, erradamente, que a
associao de comunicao representa o fluxo de
dados. No isso. A associao de comunicao
representa um dilogo entre o ator e o sistema,
um tipo de canal de comunicao sobre o qual
podem fluir dados em ambas as direes durante
o dilogo.
Elaine
Casos de Uso
Caso de uso um requisito que
ser automatizado. usado
para representar as
funcionalidades de um sistema.
Representa o que o sistema faz
(no como). O como est
associado descrio do caso
de uso. partir dessa
descrio partimos para as
atividades de projeto.
Elaine
Cadastrar
produto
Casos de Uso
Casos de uso se comunicam com atores por
muitos motivos:
Se algo especial aconteceu no sistema, um ator pode
ter de ser informado.
Um caso de uso pode necessitar da ajuda de um ator
para tomar uma deciso.
Um caso de uso pode delegar responsabilidade a um
ator.
Elaine
Descrio de um
conjunto de passos
que o
detalhamento do
caso de uso
Associao entre
ator e caso de uso
Elaine
Exemplo
Cliente de banco pode usar um caixa automtico
para:
Sacar dinheiro
Transferir dinheiro
Consultar saldo
Elaine
Exemplo
Elaine
Relacionamentos
Os relacionamentos que ocorrem com mais
freqncia quando trabalhamos com casos de
uso so:
Extend
Include
Elaine
Extenso
um tipo de relacionamento que s pode
ocorrer entre casos de uso. No existe um
relacionamento de extenso entre um ator e um
caso de uso.
Define uma extenso de um relacionamento para
um caso de uso a partir de outro caso de uso e
essa extenso opcional, ou seja um
comportamento que poder ou no ser usado
pelo caso de uso de origem.
Elaine
Extenso
Nesse relacionamento de extenso estou
definindo que ao acessar a funcionalidade
encerrar conta pode ser necessrio ou no
sacar dinheiro (Se a conta tem saldo
positivo, vou sacar dinheiro) mas essa
funcionalidade no obrigatria, caso a
conta tem saldo igual a zero no ocorrer a
funcionalidade de sacar dinheiro. opcional.
De forma semelhante, ao acessar a funcionalidade encerrar conta
pode ser necessrio ou no depositar dinheiro (Se a conta tem
saldo negativo vou depositar dinheiro) mas essa funcionalidade
no obrigatria, caso a conta tem saldo positivo ou igual a zero
no ocorrer a funcionalidade de depositar dinheiro.
Elaine
Extenso
Pode ser usada para:
Simplificar fluxos de eventos complexos
Representar comportamentos opcionais
Lidar com excees
Extenso
As seguintes situaes podem dar margem
utilizao do extend:
Descries de caractersticas que so opcionais ao
comportamento bsico do sistema, por exemplo,
caractersticas que podem ser adquiridas ou no.
Descries complexas de erros ou tratamentos de
excees que, de outra forma, iriam obscurecer o
comportamento primrio do sistema. Exemplos disso
so fluxos alternativos de tamanho significativo,
especialmente aqueles cujo tamanho maior do que
o do fluxo principal.
Elaine
Extenso
Mais situaes que podem dar margem
utilizao do extend:
Customizao do modelo de requisitos para atender a
necessidades especficas do usurio. Exemplos disso
so fluxos alternativos que especificam como
usurios especficos tratam diferentes condies que
ocorrem dentro de um mesmo caso de uso.
Gerncia de escopo e verso. Um exemplo disso so
caractersticas que no sero introduzidas at as
ltimas verses.
Elaine
Extenso
Podemos concluir ento que o relacionamento de
extenso me permite definir relaes entre casos
de uso onde existe uma adio de
comportamentos opcionais ao caso de uso que
est sendo estendido.
Elaine
Incluso
Tambm um tipo de relacionamento que s
pode ocorrer entre casos de uso. No existe um
relacionamento de incluso entre um ator e um
caso de uso.
Defini a incluso de comportamentos presentes
em outro caso de uso e essa incluso ser
obrigatria. Sempre ir utilizar essas
funcionalidades presentes no caso de uso
includo ao caso de uso de origem
Elaine
Incluso
Identificar usurio uma funcionalidade que poderia ser
interna de sacar dinheiro e de depositar dinheiro mas
sendo comum a vrios casos de uso, mais interessante
modelar identificar usurio em um caso de uso que
permita o reuso do mesmo.
Assim, todos os casos de uso
que necessitem identificar
usurio de forma obrigatria
ligado ao caso de uso
Identificar usurio atravs do
relacionamento de incluso.
Elaine
Incluso
Pode ser usada para:
Representar comportamentos reutilizveis
Simplificar fluxos de eventos complexos
Especializao
Um caso de uso pode especializar outro caso de
uso:
Adicionando o fluxo de eventos original
Refinando o fluxo de eventos original
Elaine
Relacionamentos
Relao
Funo
Notao
Associao
Incluso
Generalizao
Extenso
Sentido da seta
Na incluso partimos do caso de uso base para o
caso de uso que ser includo
Sacar
dinheiro
Elaine
<<include>>
Identificar
usurio
Sentido da seta
Na extenso parte do caso de uso opcional para
o caso de uso base
Inscrever
Aluno
Secretria
Elaine
<<extend>>
Atualizar
cadastro
Regras
No existe ligao entre atores.
Atores so entidades externas do sistema, portanto a
comunicao entre eles est fora do escopo do
sistema, no devendo ser modelada no diagrama de
caso de uso, um vez que ele modela apenas as
funcionalidades do sistema.
Elaine
Herana de Atores
Alguns casos de uso so
utilizados por vrios atores,
para simplificar o diagrama
e diminuir o nmero de
associaes, cria-se um ator
genrico.
Alm disso alguns casos de
uso so exclusivos de apenas
um ou alguns atores, mas
no de todos.
Generalizao pode
simplificar a representao
grfica do sistema.
Elaine
Elaine
Exemplo
Elaine
Estudo de Caso
Locadora de Veculos
O diagrama de caso de uso criado com base em um
cenrio descrito a partir da especificao de requisitos.
Assim, vamos construir o diagrama de caso de uso para
a locadora de veculos descrita no cenrio a seguir.
importante ressaltar que a partir de um conjunto de
requisitos definidos podemos ter diferentes diagramas
de casos de uso modelados pois estes diagramas
refletem a soluo que cada analista d para o
problema.
Elaine
Funcionalidades do Sistema
Alugar Carro: cliente deve solicitar ao funcionrio o aluguel
do carro. O sistema verifica se o carro solicitado pelo cliente
est disponvel. Caso esteja, o processo de locao concludo e
o carro passa a estar indisponvel. A data de aluguel deve ser
guardada para calculo do valor do aluguel na devoluo.
Dar Baixa: cliente faz devoluo do carro para o
funcionrio e solicita nota fiscal (recibo) com a
quilometragem percorrida e o valor do aluguel. O
funcionrio coloca o status do carro novamente como
disponvel, solicita ao sistema para calcular o valor a ser pago e
emite o recibo para o cliente.
Cadastrar Cliente: cliente solicita ao funcionrio que o cadastre
na locadora. O funcionrio recebe os dados e cadastra-o.
Cadastrar Carro: funcionrio cadastra o carro adquirido.
Elaine
Funcionalidades do Sistema
Na funcionalidade Alugar Carro temos descrito um
conjunto de passos que sero executados no contexto
desta funcionalidade. Essa descrio de passos servir
para descrever o caso de uso e no gerar outros casos de
uso.
Assim, solicitar aluguel, verificar disponibilidade do
carro, alterar disponibilidade etc no sero casos de uso,
mas passos que sero executados dentro do caso de uso
Alugar Carro.
O mesmo ocorre para Dar baixa, Cadastrar Cliente e
Cadastrar Carro
Elaine
Elaine
Estudo de Caso II
Sistema de reserva de passagem area
Para esse estudo de caso trabalharemos com a lista
de requisitos definidos durante a engenharia de
requisitos.
Importante deixar claro que nem todo requisito
listado ser um caso de uso. Ele pode ser
simplesmente um passo interno de algum caso de uso
que represente uma funcionalidade mais abrangente.
Elaine
RF1
RF2
RF3
RF4
RF5
RF6
RF7
RF8
RF9
Sistema deve permitir que o usurio consulte CEP no sistema dos correios
RF10
RF11
RF12
RF13
RF14
RF15
RF16
RF17
RF18
RF1
RF2
RF3
RF4
RF5
RF6
RF7
RF8
RF1
RF2
RF3
RF4
RF5
RF6
RF7
RF8
RF9
Sistema deve permitir que o usurio consulte CEP no sistema dos correios
RF10
RF11
RF12
RF13
RF14
RF15
RF16
RF17
RF18
Cadastrar Usurio
Enviar e-mail promocional
Efetuar reserva
Cancelar reserva
Emitir relatrio de reservas
Emitir relatrio de usurios cadastrados
Atualizar dados pessoais.
Elaine
Definio de Atores
Os RF14, RF15 e RF17 so efetuados pelo
administrador do sistema.
Os RF2, 7, 8, 10, 12, 13 e 18 citam um ator usurio
O RF9 diz que haver interao com um sistema
externo (Sistema dos correios), como um sistema
externo que troca informao com o sistema
considerado um ator, teremos o ator Sistema do
Correio.
Da mesma forma que o RF16 cita interao com a
operadora de carto, definindo assim o ator Operadora
de Carto
Elaine
RF1
RF2
RF3
RF4
RF5
RF6
RF7
RF8
RF9
Sistema deve permitir que o usurio consulte CEP no sistema dos correios
RF10
RF11
RF12
RF13
RF14
RF15
RF16
RF17
RF18
Funcionalidades do Administrador
Elaine
Funcionalidades do Usurio
Podemos perceber que o
usurio (internauta) pode
se cadastrar mas que para
Efetuar reserva, Cancelar
reserva e Atualizar dados
pessoais, ele tem que ser
um usurio logado, ou
seja um tipo especial de
usurio que vamos
chamar de cliente.
Elaine
Ator Correio
O sistema de correios consultado durante o
cadastro do usurio, para consultar o CEP, assim
esse ator est ligado ao caso de uso Cadastrar
usurio
Elaine
Elaine
Elaine
O software deve ident. e validar todos os usurios que desejarem acess-lo, identificando seu perfil
RF2
O software deve disp. ao usurio identificado as func. associadas ao seu perfil e ao seu papel no sist.
(coordenador, bolsista, etc). As func. de acesso restrito e as func. de acesso pblico.
RF3
RF4
RF5
RF6
O software deve permitir que o adm. inclua, altere ou exclua perfis de acesso
RF7
O software deve permitir que o adm. associe as func. disponveis nos mdulos aos perfis cadastrados
ou exclua dos perfis as funcionalidades previamente associadas.
RF8
O software deve permitir que o adm. associe um usurio a um nico perfil de acesso
RF9
RF10 O software deve permitir ao adm. consultar os usurios associados a um determinado perfil
RF11 O software deve permitir ao adm. indicar se um determinado usurio pode administrar seus
substitutos ou no
RF12 O software deve permitir que os usurios devidamente autorizados designem um ou mais substitutos
com os respectivos perodos de substituio (data inicial e final) e selecionem um subconjunto das
suas funcionalidades as quais os substitutos tero acesso.
Elaine
Elaine
Estudando cada RF
RF1- O software deve identificar e validar todos os usurios que desejarem
acess-lo, identificando seu perfil
Caso de Uso: Autenticar Usurio
Ator: Usurio
RF4- O software deve permitir ao usurio recuperar a sua senha, caso esquea
Se quisssemos modelar a possibilidade de recuperao de senha a qualquer
momento atravs de um menu da seria um caso de uso, mas neste caso vamos
optar por s poder recuperar senha dentro do efetuar login, ento essa
funcionalidade ser um fluxo alternativo de efetuar login.
Elaine
Estudando cada RF
RF5- O software deve permitir que o administrador inclua, altere ou exclua
usurios
Caso de uso: Administrar usurio
Ator: Administrador
RF6- O software deve permitir que o administrador inclua, altere ou exclua
perfis de acesso
Caso de uso: Administrar perfis de acesso
Ator: Administrador
RF7- O software deve permitir que o administrador associe as funcionalidades
disponveis nos mdulos aos perfis cadastrados ou exclua dos perfis as
funcionalidades previamente associadas.
Passo da funcionalidade Administrar perfil de acesso.
RF8- O software deve permitir que o administrador associe um usurio a um
nico perfil de acesso
Passo da funcionalidade Administrar perfil de acesso.
Elaine
Estudando cada RF
Estudando cada RF
RF13- O software deve permitir que todos os usurios faam a manuteno de
seus dados pessoais: e-mail, localizao, senha e telefones.
Caso de uso: Manter dados pessoais
Ator: usurio autenticado
RF14- O software deve permitir que os administradores reenviem a senha de
qualquer usurio e que os usurios reenviem a prpria senha
Passo presente em administrar usurio e em administrar perfil
RF15- O software deve gerar senhas temporrias, vlidas somente no primeiro
login, quando as senhas forem reenviadas pelos administradores ou pelos
prprios usurios
Passo presente em casos de uso do sistema
RF16- O software deve solicitar a troca de senha, aps o login, para todas as
senhas que j expiraram
Regras associadas a autenticar usurio
Elaine
Estudando cada RF
RF17- O software deve, caso o usurio corrente seja um
substituto, apresentar a lista de usurios que ele est substituindo
na data corrente.
Regra interna ao autenticar usurio
RF18- O software deve, caso o usurio corrente seja um
substituto, permitir que ele selecione o usurio com o qual vai
atuar, caso ele seja substituto de mais de um usurio.
Caso de uso: Selecionar perfil de uso
Ator: Usurio autenticado
Elaine
Elaine
Elaine
Prioridade e Risco
Devemos considerar os casos de uso mais importantes
primeiramente. Para identificar os mais importantes verificamos
os parmetros: risco de desenvolvimento(criticalidade) e
prioridade estabelecidas pelo usurio. Dessa forma, cada caso de
uso se encaixa em uma das categorias a seguir:
1. Risco alto e prioridade alta: casos de uso nesta categoria so os mais
crticos. Devem ser considerados o quanto antes.
2. Risco alto e prioridade baixa: embora os casos de uso nesta categoria
tenham risco alto, necessrio, antes de comear a consider-los, negociar
com o cliente em relao a sua verdadeira necessidade.
3. Risco baixo e prioridade alta: embora os casos de uso tenham prioridade
alta, necessrio ter em mente que os casos de uso de mais alto risco
devem ser considerados primeiro.
4. Risco baixo e prioridade baixa: em situaes em que o desenvolvimento
do sistema est atrasado, estes casos de uso so os primeiros a serem
"cortados".
Elaine
Exemplo de descrio
UC1 Consultar Clientes
Objetivo: O sistema deve permitir que o setor de atendimento
ao cliente consulte clientes cadastrados
Requisitos: RF1
Atores: Setor de atendimento ao cliente
Prioridade: Pr-condies: Freqncia de uso: diria
Criticalidade: Condio de entrada: o ator seleciona a opo consultar
cliente
Elaine
Fluxo Principal:
1. O sistema apresenta tela de busca de clientes contendo as
informaes:
- Nome (campo editvel)
- Status (lista contendo os itens: Em dia, Inadimplente)
- As opes:
* Buscar
* Cancelar
2. O ator informa dados de busca e seleciona a opo Buscar [A1]
3. O sistema apresenta tela com informaes dos Clientes de acordo com
o filtro especificado:
- Nome (somente leitura)
- Status (somente leitura)
- CPF (somente leitura)
- Data de Nascimento (somente leitura)
- A opo Detalhar
4. O sistema apresenta ao final a opo Voltar
Elaine
Fluxo Principal:
5. O ator seleciona a opo Detalhar [A2]
6. O sistema apresenta tela de detalhes para o cliente contendo
as informaes:
- Nome (somente leitura)
- CPF (somente leitura)
- Status (somente leitura)
Se o cliente estiver com
- Data de Nascimento (somente leitura)
status em dia no
- Endereo (somente leitura)
aparece, se estiver em
atraso, mostra o motivo
- Motivo [RN1] (somente leitura)
de acordo com regra
- A opo Ok
negcio 1
7. O ator seleciona a opo ok
8. O sistema retorna ao passo 3 do fluxo principal.
Elaine
Fluxo Alternativo:
Fluxo Alternativo:
[A1] O ator selecionou a opo Cancelar
1. Sistema retorna para a tela inicial.
2. O caso de uso encerrado.
[A2] O ator selecionou a opo Voltar
1. Sistema retorna ao passo 1 do fluxo principal.
Extenses: Ps Condies: Regras de Negcio: [RN1] O campo Motivo ser apresentado
apenas se o Status do cliente for inadimplente
Elaine
Elaine
Fluxo Principal:
1. O sistema apresenta tela de cadastro de clientes contendo as
informaes:
(Dados Pessoais)
- Nome (campo editvel)
- CPF(campo editvel)
- RG (campo editvel)
-Data de Nascimento (campo editvel)
-Sexo (lista contendo as opes feminino e masculino)
(Informaes de Contato)
- Endereo (campo editvel)
- Telefone de contato (campo editvel)
- e-mail (campo editvel)
- As opes:
* Incluir Cliente
* Cancelar
Elaine
Fluxo Principal:
2. O ator informa os dados do cliente e seleciona a
opo incluir Cliente [A1]
3. O sistema valida os dados informados [RN1]
4. O sistema efetua o cadastro do cliente [RN2]
5. O sistema exibe a mensagem Cliente cadastrado com
sucesso com a opo OK no final.
6. O ator seleciona OK
7. O sistema retorna para a tela inicial
8. O caso de uso encerrado.
Elaine
Fluxo Alternativo
Fluxo Alternativo:
[A1] O ator seleciona a opo Cancelar
1. Sistema retorna para a tela inicial.
2. O caso de uso encerrado.
[A2] Dados para cadastro do cliente invlidos
1. O sistema exibe mensagem de erro Existem informaes
obrigatrias que no foram preenchidas com a opo OK no final.
2. O ator seleciona a opo
3. O sistema retorna ao passo 1 do fluxo principal.
Extenses: Ps Condies: Regras de Negcio:
[RN1] Todos os campos do cadastro de clientes so obrigatrios.
[RN2] Ao efetuar o cadastro do cliente, um nmero de matrcula deve
ser gerado para o cliente.
Elaine
Elaine