Fundamentos de Diagramas de Caso de Uso
Download
Report
Transcript Fundamentos de Diagramas de Caso de Uso
UML
Diagrama de Caso de
Uso
Profª. Marcelo Siedler
[email protected]
Introdução
Casos de uso (use cases) são utilizados para
capturar os requisitos do sistema. De forma
breve, um caso de uso identifica uma
funcionalidade oferecida pelo sistema.
Exemplo (sistema bancário):
Diagrama de Casos de Uso
Um Diagrama de Casos de Uso apresenta um
conjunto de casos de uso, atores e suas relações.
Captura as funcionalidades de um sistema de acordo com
a visão de seus usuários.
Um Diagrama de Casos de Uso é composto por:
Casos de Uso
Atores
Relações de associação, dependência e generalização
Diagrama de Caso de Uso
São utilizados para modelar:
O contexto de um sistema: identificando os atores e seus
papéis na interação com o sistema;
Os requisitos de um sistema: especificando o que o sistema
deve fazer (do ponto de vista de seus usuários), sem no
entanto se preocupar em como é implementado.
Casos de uso - conceitos
Conceitos básicos:
Ator
Caso de uso
Relacionamentos:
entre atores
entre casos de uso
entre atores e casos de uso
Ator
Um ator representa uma entidade (um ser humano,
um dispositivo de hardware ou mesmo outro
sistema) que interage com o sistema que está
sendo modelado.
Atores estão fora do sistema, isto é, não são
entidades componentes do sistema que está sendo
modelado.
Atores podem ser conectados aos casos de uso
somente por associações.
Uma associação entre um caso de uso e um ator
significa comunicação entre ambos, onde cada
um pode enviar ou receber mensagens,
estabelecendo uma interação.
Ator
Representação:
Caso de uso
Um caso de uso descreve uma seqüência de
ações que o sistema deve executar, com o
objetivo de produzir como resultado algo de valor
para o atendimento das necessidades de um ator.
Um caso de uso:
Descreve uma funcionalidade completa do sistema;
Gera como resultado algo de valor tangível para um ator
(usuário);
Caso de uso
Representação:
Nome do caso de uso: Um caso de uso deve ter
como nome uma frase representando uma ação
(comportamento).
Ex: sacar, depositar, gerar relatórios...
Relacionamentos em Diagramas
de Caso de Uso
Entre ator e caso de uso
Uma associação indica a interação entre ator e caso de
uso
Exemplo
Relacionamentos em Diagramas
de Caso de Uso
Entre atores
Associações entre atores não são modeladas,
modela-se apenas generalizações.
A generalização pode identificar papéis específicos
de um ator no sistema
Relacionamentos em Diagramas
de Caso de Uso
Entre casos de uso: Generalização, Inclusão e
Extensão
Generalização
Indicam casos de uso mais específicos baseados em um
caso de uso mais genérico.
Relacionamentos em Diagramas
de Caso de Uso
Inclusão (Include)
Uma relação de inclusão de um caso de uso A
com um caso de uso B indica que o caso de uso A
(Sacar dinheiro, Liberar talão de cheque) deverá
incluir o comportamento especificado para o caso
de uso B (Validar conta).
Relacionamentos em Diagramas
de Caso de Uso
Extensão (Extend)
Uma relação de extensão de um caso de uso A
com um caso de uso B indica que o caso de uso B
(Sacar dinheiro) poderá incluir (sujeito a satisfação
de condições especificas) o comportamento
especificado para o caso de uso A (autorizar
saque).
Diagrama de Casos de Uso – Sistema
Bancário
Priorizando casos de uso
Esta tarefa objetiva estabelecer uma priorização
entre os casos de uso, de forma a estabelecer
quais deles são “mais importantes” para o
funcionamento do sistema
Categorias:
Casos de uso primários: representam processos principais,
sem eles o sistema “não funciona”
Casos de uso secundários: representam processos menos
importantes ou raros
Casos de uso opcionais: representam processos que podem
ser desconsiderados
Erros mais freqüentes
Fazer casos de usos pequenos demais (ex.:
“Incrementar contador”): não confundir um
“passo” do processamento como um “caso de
uso”.
Fazer casos de usos grandes demais (ex.: “Processar
sistema de vendas”): um caso de uso deve gerar
um resultado perceptível pelo ator.
“Forçar” relacionamentos entre casos de uso (ex.:
indicar <<include>> entre casos de uso “Consultar
produto” e “Cadastrar produto”): só indique um
relacionamento entre casos de uso se realmente
há alguma interação entre eles.