Casos de uso
Sistemas de informação
APSOO
Alunos:José Luis, Douglas, Gustavo, Maurenn,
Thiago.
Objetivos dos casos de uso
-C
obrir as principais atividades de negócio ligadas ao
sistema que será desenvolvido;
-Especificar o comportamento de um sistema ou de parte de
um sistema;
-Fornecer uma maneira para os desenvolvedores chegarem
a uma compreensão comum com os usuários finais do
sistema e com os especialistas do domínio;
-Servir para ajudar a validar e orientar a arquitetura e para
verificar o sistema a medida que ele evolui durante seu
Casos de uso
“Documento narrativo que descreve a sequência
de eventos de um ator que usa um sistema para
completar um processo”
-Ivar Jacobson
Casos de uso
-E
specificam o comportamento desejado do sistema para
que ele atenda aos requisitos solicitados
-Eles não determinam como esse comportamento será
executado permitindo que você focalize os pontos
considerados de maior risco
-Um caso de uso representa um requisito funcional do
sistema como um todo, descrevendo um conjunto de
sequências, cada um representando a interação de itens
externos ao sistema (ator) com o próprio sistema. Esses
comportamento são funções em nível de sistema.
Atores – Casos de uso
- A interação dos atores com o sistema é envolvida em um
caso de uso
- Os atores podem ser humanos ou sistemas automatizados
- Os casos de uso realizam algo que é de valor para a
Variantes – Casos de uso
-Qualquer sistema interessante terá casos de uso que são
versões especializadas de outros casos de uso que são
incluídos como parte de outro caso de uso que estendem
o comportamento de outro caso de uso básico.
Ex:
na modelagem de um banco você encontrará muitas variações do caso de uso básico de processamento de empréstimos, como a diferença entre o processamento do financiamento de uma casa e o empréstimo para umapequena empresa. Em cada situação esses casos de uso compartilham
algum grau de comportamento comum, como o caso de uso de qualificação
do cliente para o empréstimo, um comportamento que faz parte do
Casos de uso
-
Uma vez que os requisitos tenham sido levantados.
Isso na fase de concepçao.
- O objetivo de Listar os casos de uso é levantar
informações sobre como o sistema interage com
possíveis usuários e quais consultas e transformações
são necessárias para que os processos sejam
Casos de uso de alto nível
-Deve cobrir as principais atividades de negocio do sistema a ser desenvolvido;
-Recomenda-se que apenas atores efetivamente interessados no caso de uso sejam considerados;
Casos de uso de alto nível
- Deve-se apresentar no diagrama apenas os processos isolados - Caracteria-se por ser:
- Mosossessao; - Interativo;
Casos de uso de alto nível
Características casos de uso de
alto nível
- Vários requisitos associam-se a um caso de uso, especialmente
quando se trata de um caso de uso complexo. Alguns requisitos, porém, podem estar associados a vários casos de usos. Em alguns casos,
também é possível que um requisito corresponda a um único caso de uso e vice-versa.
- Um diagrama de caso de uso em alto nível não é um dos diagramas mais úteis, mas é bastante popular para mostrar quais funções um
sistema efetivamente executará. Deve-se evitar que o diagrama tenha um conjunto muito grande de elipse, pois , nesse caso, fica inviável compreendê-los
- Um bom caso de uso deve ser monossessão. Isso significa que ele deve iniciar e terminar sem ser interrompido, não pode terminar
Para descobrir os casos de uso
-Deve-se identificar os atores envolvidos com o sistema(funcionários, gerentes,compradores, fornecedores).
-Após as entrevistas com esses atores, para descobrir seus
objetivos, o analista deve descobrir quais os principais processos de negócio de que eles participam
-A cada processo possivelmente corresponderá um ou mais casos de usos
-Processos parciais que são executados necessariamente dentro de outros processos não devem ser representados
Complexidade de casos de uso
- Os casos de uso podem ser classificados de acordo com a sua complexidade da seguinte forma :
-processos de negócio
-CRUD(Create, Retrive, Update e Delete)
Processos de negócio
Os principais processos de negócio da empresa que não se encaixam em nenhum dos padrões a seguir possivelmente abarcarão um
número considerável de requisitos funcionais. Apresentam alto risco na modelagem de um sistema, pois usualmente são os mais
CRUD(Create, Retrive, Update e
Delete)
criar, consultar, atualizar e remover, as quatro operações básicas
sobre unidade de informação ou conceitos. Em vez de definir cada uma dessas operações como um caso de uso individual, elas devem ser agrupadas em casos de uso do tipo “manter” ou “gerenciar”.
Essas operações seguem um padrão bem definido, variando apenas as regras de negócio que são especificas do conceito sendo
gerenciado ou mantido. Portanto, são casos de uso de médio risco e média complexidade.
Relatórios
Um relatório é um acesso à informação presente no sistema que não altera essa informação. A consulta de CRUD apenas apresenta
dados sobre um conceito(p. Exe., nome, endereço e telefone de um comprador) . Mas um relatório deve ter pelo menos uma totalização ou filtro para ser considerado um caso de uso à parte(p. Exe.,
quantidade de livros vendidos para um comprador). È considerada caso de uso de baixo risco e baixa complexidade.
Complexidade de casos de uso
Apenas os casos de uso que correspondam a processos de negócio precisam ser expandidos na fase de elaboração, visto que os outros dois tipos seguem padrões que permitem que as operações
envolvidas sejam especificadas diretamente, sem necessidade de um estudo sobre a interatividade do caso de uso.
Priorização de Casos de uso
- O RUP é dirigido por casos de uso e centrado na arquitetura, as próximas fases desse processo consistirão em detalhar cada vez mais uma arquitetura de sistema
-O RUP também é um processo iterativo e incremental, a cada ciclo de desenvolvimento um conjunto tratável de casos de uso são considerado para estudo e incorporação de funcionalidade na arquitetura
-Assim que os casos de uso forem identificados, deve-se verificar se todos os requisitos funcionais do sistema se associam a pelo menos um caso de uso
Priorização de Casos de uso
- Ordem da priorização em incorporar os casos de usos no
sistema:
1°
-
processos de negócio: são mais complexos e é com eles que o analista pode aprender mais sobre o sistema real2°-casos de uso padronizados CRUD: são para gerenciar os processos de negócios já incorporados
3°-relatórios: que vão apenas tabular e totalizar informação que já deve estar disponível
Casos de uso expandidos
-Corresponde ao aprofundamento da análise de requisitos
-Um exame detalhado dos processo envolvidos no caso de uso em expansão
-Descreve o caso de uso passo a passo, como ela ocorre e como é a interação entre os atores e o sistema
-Essa descrição deve ser essencial
Casos de uso expandidos
-Baseado em um fluxo principal que descreve o que acontece quando tudo dá certo na interação
-Depois de descrever o fluxo principal do caso de uso, analisa-se
criticamente cada passo e procura-se verificar uma possível exceção -O caso de uso então passa a possuir fluxos alternativos
-Os fluxos alternativos descreve procedimentos para resolver essa possível exceção
Fluxo principal
-O fluxo principal é a principal seção de um caso de uso expandido.
- Ele é a descrição do processo quando tudo dá certo, ou seja, quando não ocorre nenhuma exceção.
-Todo caso de uso tem passos que são:
*obrigatórios: esses passos envolvem informações que passam dos atores para o sistema e vice-versa, sem essa troca de
informações, o caso de uso não faz sentido ou não pode prosseguir
*complementares: servem para contextualizar o caso de uso, mas não são fundamentais porque não passam nenhuma informação para dentro ou fora do sistema.
Fluxo principal
-Como o caso de uso é uma descrição da interação entre os atores e o sistema, deve-se evitar descrever quaisquer processos internos que ocorram no sistema, como “o sistema armazena a informação no BD”. Esses passos são considerados impróprios ou não
Exemplo de casos de uso
expandido
●
Caso de uso: comprar livros
●
1.[IN] O comprador informa sua identificação
●
2.[OUT] O sistema informa os livros disponíveis para
venda(titulo, capa, preço)
●
3.[IN] O cliente seleciona o livro que deseja comprar
●
4.[OUT] O sistema informa o valor total dos livros e
apresenta as opções de endereço cadastradas
●
5.[IN] O cliente seleciona um endereço para a entrega
●
6.[OUT} O sistema informa valor do frete e total geral,
bem como a lista de cartões já cadastradas para o
pagamento
●
7.[IN]O cliente seleciona um cartão de crédito
●
8.[OUT] O sistema envia os dados do cartão e valor de
venda para a operadora
●
9.[IN] A operadora informa o código de autorização da
venda
Tratamento de exceções em casos
de uso
-O analista deve imaginar o que poderia dar errado em cada um dos passos descritos, gerando, dessa forma, os fluxos alternativos que tratam as exceções
-Uma exceção é um evento que se não for devidamente tratado, impede o prosseguimento do caso de uso
-Para cada exceção deve-se tentar identificar possíveis ações corretivas
Tratamento de exceções de casos
de uso
● Caso de uso: comprar livros
● 1.[IN] O comprador informa sua identificação
● 2.[OUT] O sistema informa os livros
disponíveis para venda(titulo, capa, preço)
● 3.[IN] O cliente seleciona o livro que deseja
comprar
● 4.[OUT] O sistema informa o valor total dos
livros e apresenta as opções de endereço cadastradas
● 5.[IN] O cliente seleciona um endereço para a
entrega
● 6.[OUT} O sistema informa valor do frete e
total geral, bem como a lista de cartões já cadastradas para o pagamento
● 7.[IN]O cliente seleciona um cartão de crédito
● 8.[OUT] O sistema envia os dados do cartão e
valor de venda para a operadora
● 9.[IN] A operadora informa o código de
autorização da venda
● 10.[OUT] O sistema informa o prazo de
entrega
● Exceção 1a: Comprador não cadastrado
● 1a.1[IN] O comprador informa seu CPF, Nome,
Endereço e Telefone
● Retorna ao passo 1
● Exceção 5a: Endereço consta como inválido
● 5a.1 [IN]O comprador atualiza seu endereço