You are on page 1of 38

UML Diagrama de Casos de Uso

Rosana Cristina Colombo FATEC -TQ

Como definir o Projeto Certo

Um dos maiores problemas ao iniciar a criao de um sistema passar pelas fases de concepo e de requisitos. So nestas fases que descobrimos que os sistemas no vivem isoladamente;

Gerenciar Requisitos

Para gerenciar requisitos temos que entender o que o usurio deseja em seu sistema;

difcil transportar para modelos e cdigos dezenas de linhas em linguagem natural

Gerenciar Requisitos

Como a lngua Portuguesa ambgua, necessitamos de um padro que permita o uso da linguagem natural: Caso de Uso

Diagramas de Caso de Uso

Diagramas de Caso de Uso fornecem um modo de descrever a viso externa do sistema e suas interaes com o mundo exterior, representando uma viso de alto nvel de funcionalidade intencional mediante o recebimento de um tipo de requisio do usurio.

O que um Caso de Uso?

Um Caso de Uso (USE CASE) descreve uma seqncia de aes que representam um cenrio principal (perfeito) e cenrios alternativos, com o objetivo de demonstrar o comportamento de um sistema (ou parte dele), atravs de interaes com atores.

Caractersticas do Caso de Uso


a)

b) c)

Um caso de uso sempre iniciado por um ator; Um caso de uso completo; Um caso de uso prov valor a um ator.

Pergunta chave: Quais so as funes que o ator necessita do sistema?

Diagramas de Caso de Uso

Composto por 4 elementos:


Ator; Caso de Uso; Interao; Sistema.

Sistema

interao

Caso de Uso

ator

Casos de Uso - Atores

Os Sistemas recebem e enviam informaes para o mundo externo atravs de suas fronteiras. Logicamente que essas informaes no podem cair num buraco negro, na sada, nem surgem por mgica, na entrada. Algum ou algo deve ser responsvel por enviar e/ou receber do sistema.

Na modelagem de Casos de Uso, esse papel exercido por um ATOR (actor)

Casos de Uso - Atores

Os Atores no so parte do sistema eles representam qualquer um e qualquer coisa que precise interagir com o sistema. Um ator pode:

Apenas fornecer informaes ao Sistema Apenas receber informaes do Sistema Fornecer e receber informaes para e do Sistema

Atores

importante ressaltar que um ator representa um papel, e no um usurio individual do sistema. O mundo externo representado por atores que desempenham papis. Um ator um agente que interage com o sistema, que pode ser humanos, mquinas, dispositivos ou outros sistemas.

Para identificar Atores:


Quem utilizar a principal, funcionalidade do sistema(atores principais)? Quem ir manter, administrar e fazer com que o sistema permanea operando? Quem ou o qu tem interesse nos resultados produzidos pelo sistema? Com quais outros sistemas o sistema em foco ir interagir?

Como implementar um Caso de Uso

A implementao de um tipo de caso de uso apresentada como uma colaborao de objetos e vnculos junto com as possveis seqncias de fluxos de mensagem que produzem o efeito do caso de uso. Diagramas de interao mostras as seqncias de mensagens entre objetos que implementam o caso de uso.

Exemplo Diagrama de Caso de Uso


Caixa Eletrnico
Consulta de saldo

Solicitao de extrato

Cliente

Saque

Caso de Uso
O Caso de Uso deve descrever uma rotina bem definida do sistema e deve ser totalmente compreensvel tanto para a equipe de desenvolvimento quanto para os clientes que detm o conhecimento do domnio do sistema.

Casos de Uso Fronteiras do Sistema

Clientes

Sistema de Vendas de Loja

Fornecedores

Fronteira do Funcionrios Sistema

Fronteira do Sistema

Casos de Uso
Seqncias de Aes Cenrio Principal Cenrios Alternativos

Interaes com atores

Fronteira do Sistema

Comandos de Utilizao(Caso de Uso)

Eles representam a funcionalidade oferecida pelo sistema, ou seja, quais capacidades sero oferecidas a um ator pelo sistema.

Comando de utilizao (Caso de Uso)

Casos de Uso
Exemplo: Sistema de Vendas de Loja

Cada uma dessas tarefas possui um conjunto de aes que precisam ser executadas para que o objetivo da loja seja alcanado.

Consultar informaes sobre o produto Efetuar reserva Emitir comprovante de reserva Efetuar venda Emitir nota fiscal Realizar fechamento dirio do caixa

Casos de Uso
Efetuar Venda
1. Informar identificao da vendedora 2. Informar identificao do produto 3. Quantidade vendida 4. Informar valor total da venda

No exemplo acima, estamos lidando com um cenrio perfeito(uma rotina sem problemas), da qual ser chamado de Cenrio Principal.

Casos de Uso

Cenrio Principal

Descreve uma seqncia de aes que sero executadas considerando que nada de errado ocorrer durante a execuo da seqncia.

Casos de Uso
Mas...o mundo no perfeito!

Casos de Uso

Ento, como representamos as excees?

Cenrios Alternativos

Casos de Uso

Exemplo (Cenrio Alternativo)

Alternativa: Quantidade insuficiente no estoque 3a) Se a quantidade pedida pelo cliente for maior que a quantidade no estoque do determinado produto, informar ao mesmo a quantidade do estoque. Informar tambm que poder ser efetuada uma reserva de produto. Encerrar o Caso de Uso.
No exemplo acima, as alternativas so apresentadas como subitens do cenrio principal

Interao

A comunicao Sistema-Ator consiste na Interao entre o Sistema e os Atores; O caso de uso sempre iniciado a partir do momento que um ator envia sua mensagem(estmulo);

Tipos de Interaes

Ator x Caso de Uso

Ator x Ator

Caso de Uso x Caso de Uso

Tipo de Interao: Atores x Casos de Uso

Associao (Association) de Comunicao

Representa a interao do ator com o caso de uso, ou seja, a comunicao entre atores e casos de uso, por meio do envio e recebimento de mensagens. As Associaes so sempre binrias Pode ser navegvel em ambas as direes ou em apenas uma direo; o nico relacionamento possvel entre casos de uso e atores.

Interao: Caso de Uso x Casos de Uso

Extenso(Extend)

Um relacionamento de extenso entre casos de uso indica que um deles ter seu procedimento acrescido, em um ponto de extenso, de outro caso de uso,identificado como base.

permitido colocar diversos pontos de extenso num mesmo caso de uso, inclusive repetir um mesmo ponto de extenso.

Interao: Casos de Uso x Casos de Uso

Caso de uso de extenso utilizado para:

Expressar rotinas de exceo; Separar um comportamento obrigatrio de outro opcional; Separar um trecho do caso de uso que ser executado apenas em determinadas condies; Separar trechos que dependam da interao com um determinado ator.

Interao: Casos de Uso x Casos de Uso

Incluso (Include) - uses

Indica que um deles ter seu procedimento copiado num local especificado no outro caso de uso. Exemplo: validar matrcula til para os casos de uso Renovar matrcula de aluno, Emitir histrico escolar, Lanar notas de provas, entre outros.

Obs.: evita cpias de trechos idnticos

Interao: Atores x Atores

Generalizao (Generalization)

quando temos dois elementos semelhantes, mas com um deles realizando algo a mais. Exemplo: podemos criar um ator genrico Aluno e especializ-los nos atores Aluno Matriculado e Aluno Ouvinte.

Casos de Uso

No existe padro da UML que determine uma forma nica de escrever Casos de Uso. As aes podem ser descritas:

Em pargrafos; Em pargrafos com enumeraes; Em textos com pr e ps condies; Em pseudocdigo.

Diagrama de Caso de Uso

Matricular Aluno Trancar Matrcula Efetuar Venda


Pontos de extenso
Desconto Cliente Vip

Representao de Casos de Uso

Diagrama de Caso de Uso

Sistema Acadmico

Cliente

Departamento de Cobrana

actor
Cliente

Representao de Atores

Diagrama de Caso de Uso

Caso de Uso

Ator

Representao de uma Associao

Diagrama de Caso de Uso


Matricular Aluno

Validar Matrcula
Caso de Uso Base

Emitir Histrico Escolar


Caso de Uso Base

Caso de Uso que ser includo

Representao de um Relacionamento Include

Diagrama de Caso de Uso


Caso de Uso Base

Calcular desconto de Cliente VIP


Caso de Uso de extenso

Efetuar Venda

Caso de Uso de extenso

Falha na autorizao do carto

Representao de um Relacionamento Extend

Diagrama de Caso de Uso


Cadastrar Funcionrio

Vendedor

Cadastrar Professor
Generalizao entre Casos de Uso

Gerente
Generalizao entre Atores

Representao de um Relacionamento de Generalizao