Você está na página 1de 49

UML: Casos de Uso

Projeto de Sistemas de Software


Prof: Edilson Fa IFES SERRA-ES
UML Casos de Uso

Introduo Casos de uso


Elementos do diagrama de casos de uso
Descrio de casos de uso
Exemplo: Blog
Ferramentas de modelagem
Bibliografia
Introduo Casos de Uso

Os casos de uso:

Descrevem como os usurios interagem com o sistema


(as funcionalidades do sistema)

Facilitam a organizao dos requisitos de um sistema

Do uma viso externa do sistema

O conjunto de casos de uso deve ser capaz de comunicar a


funcionalidade e o comportamento do sistema para o cliente

Descrevem o que o sistema faz, mas NO especificam como


isso deve ser feito
Elementos Diagrama de Casos de Uso

Elementos do diagrama:

Atores
Casos de uso
Relacionamentos
Associao
Generalizao
Dependncia: Extenso e Incluso
Fronteira do sistema
Elementos Diagrama de Casos de Uso

Elementos do diagrama

Atores
Casos de uso
Relacionamentos
Associao
Generalizao
Dependncia: Extenso e Incluso
Fronteira do sistema
Elementos Diagrama de Casos de Uso

Atores
Representam os papis desempenhados por
elementos externos ao sistema
Ex: humano (usurio), dispositivo de hardware ou
outro sistema (cliente)
Elementos que interagem com o sistema

Notao:

Sistema de
Secretria Diretor Relatrios
(from Use Case View) (from Use Case View) (from Use Case View)
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando os atores

Uma loja de CDs possui discos para venda. Um cliente pode comprar uma
quantidade ilimitada de discos para isto ele deve se dirigir loja. A loja
possui um atendente cuja funo atender os clientes durante a venda dos
discos. A loja tambm possui um gerente cuja funo administrar o
estoque para que no faltem discos. Alm disso ele quem d folga ao
atendente, ou seja, ele tambm atende os clientes durante a venda dos
discos.
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando os atores

Gerente Atendente
(from Use Case View) (from Use Case View)

E o cliente?
No ator pois ele no interage com o sistema!
Elementos Diagrama de Casos de Uso

Elementos do diagrama

Atores
Casos de uso
Relacionamentos
Associao
Generalizao
Dependncia: Extenso e Incluso
Fronteira do sistema
Elementos Diagrama de Casos de Uso

Caso de Uso
Representa uma funcionalidade do sistema
(um requisito funcional)

iniciado por um ator ou por outro caso de uso

Dicas:
Nomeie os casos de uso iniciando por um verbo

Notao:

Nome do Caso de Uso


Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando os casos de uso

Uma loja de CDs possui discos para venda. Um cliente pode comprar uma
quantidade ilimitada de discos para isto ele deve se dirigir loja. A loja
possui um atendente cuja funo atender os clientes durante a venda dos
discos. A loja tambm possui um gerente cuja funo administrar o
estoque para que no faltem discos. Alm disso ele quem d folga ao
atendente, ou seja, ele tambm atende os clientes durante a venda dos
discos.
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando os casos de uso

Vender CDs

Administrar estoque
Elementos Diagrama de Casos de Uso

Elementos do diagrama

Atores
Casos de uso
Relacionamentos
Associao
Generalizao
Dependncia: Extenso e Incluso
Fronteira do sistema
Elementos Diagrama de Casos de Uso

Relacionamento de associao
Indica que h uma interao (comunicao) entre
um caso de uso e um ator
Um ator pode se comunicar com vrios casos de uso

Dicas:
NO use setas nas associaes
Associaes NO representam fluxo de informao

Notao:

interao
Ator Caso de Uso
(from Use Case View)
(from Use Case View)
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando os relacionamentos de associao

Uma loja de CDs possui discos para venda. Um cliente pode comprar uma
quantidade ilimitada de discos para isto ele deve se dirigir loja. A loja
possui um atendente cuja funo atender os clientes durante a venda dos
discos. A loja tambm possui um gerente cuja funo administrar o
estoque para que no faltem discos. Alm disso ele quem d folga ao
atendente, ou seja, ele tambm atende os clientes durante a venda dos
discos.
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando os relacionamentos de associao

Vender CDs

Atendente

Administrar estoque

Gerente
Elementos Diagrama de Casos de Uso

Elementos do diagrama

Atores
Casos de uso
Relacionamentos
Associao
Generalizao
Dependncia: Extenso e Incluso
Fronteira do sistema
Elementos Diagrama de Casos de Uso

Relacionamento de generalizao
Generalizao de atores
Quando dois ou mais atores podem se comunicar
com o mesmo conjunto de casos de uso
Um filho (herdeiro) pode se comunicar com todos
os casos de uso que seu pai se comunica.

Dica: coloque os herdeiros embaixo

Notao:
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando generalizao de atores

Vender CDs

Atendente

Administrar estoque

Gerente
Elementos Diagrama de Casos de Uso

Relacionamento de generalizao
Generalizao de casos de uso
O caso de uso filho herda o comportamento e
o significado do caso de uso pai
O caso de uso filho pode incluir ou sobrescrever o
comportamento do caso de uso pai
O caso de uso filho pode substituir o caso de uso pai
em qualquer lugar que ele aparea

Dica: deve ser aplicada quando uma condio resulta na definio de


diversos fluxos alternativos.

Notao: Pai

Filho 1 Filho 2
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando generalizao de casos de uso

Novos requisitos:
As vendas podem ser vista ou a prazo. Em ambos os casos o estoque
atualizado e uma nota fiscal, entregue ao consumidor.

No caso de uma venda vista, clientes cadastrados na loja e que compram


mais de 5 CDs de uma s vez ganham um desconto de 1% para cada ano de
cadastro.

No caso de uma venda a prazo, ela pode ser parcelada em 2 pagamentos


com um acrscimo de 20%. As vendas a prazo podem ser pagas no carto
ou no boleto. Para pagamento com boleto, so gerados boletos bancrios
que so entregues ao cliente e armazenados no sistema para lanamento
posterior no caixa. Para pagamento com carto, os clientes com mais de 10
anos de cadastro na loja ganham o mesmo desconto das compras a vista.
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando generalizao de casos de uso

Vender CDs

Atendente

Vender CDs a prazo Vender CDs vista

Administrar estoque

Gerente
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando mais generalizao de casos de uso

Novos requisitos:
As vendas podem ser vista ou a prazo. Em ambos os casos o estoque
atualizado e uma nota fiscal, entregue ao consumidor.

No caso de uma venda vista, clientes cadastrados na loja e que compram


mais de 5 CDs de uma s vez ganham um desconto de 1% para cada ano de
cadastro.

No caso de uma venda a prazo, ela pode ser parcelada em 2 pagamentos


com um acrscimo de 20%. As vendas a prazo podem ser pagas no carto
ou no boleto. Para pagamento com boleto, so gerados boletos bancrios
que so entregues ao cliente e armazenados no sistema para lanamento
posterior no caixa. Para pagamento com carto, os clientes com mais de 10
anos de cadastro na loja ganham o mesmo desconto das compras a vista.
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando generalizao de casos de uso

Vender CDs

Atendente

Vender CDs a prazo Vender CDs vista

Vender c/ boleto Vender c/ carto

Administrar estoque

Gerente
Elementos Diagrama de Casos de Uso

Elementos do diagrama

Atores
Casos de uso
Relacionamentos
Associao
Generalizao
Dependncia: Extenso e Incluso
Fronteira do sistema
Elementos Diagrama de Casos de Uso

Relacionamento de dependncia:
Extenso:
Representa uma variao/extenso do
comportamento do caso de uso base
O caso de uso estendido s executado
sob certas circunstncias
Separa partes obrigatrias de partes opcionais
Partes obrigatrias: caso de uso base
Partes opcionais: caso de uso estendido
Fatorar comportamentos variantes do sistema (podendo reusar este
comportamento em outros casos de uso)

Notao: <<extends>>

<<extends>>
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando dependncia: extenso

Novos requisitos:
No caso de uma venda vista, clientes cadastrados na loja e que
compram mais de 5 CDs de uma s vez ganham um desconto de 1%
para cada ano de cadastro.

No caso de uma venda a prazo...


...Para pagamento com carto, os clientes com mais de 10 anos de
cadastro na loja ganham o mesmo desconto das compras vista.
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando dependncia: extenso

Vender CDs

Atendente

Vender CDs a prazo Vender CDs vista

<<extend>>

<<extend>>
Vender c/ boleto Vender c/ carto Calcular desconto

Administrar estoque

Gerente
Elementos Diagrama de Casos de Uso

Relacionamento de dependncia:
Incluso:
Evita repetio ao fatorar uma atividade
comum a dois ou mais casos de uso
Um caso de uso pode incluir vrios casos de uso

Notao: <<includes>>

<<includes>>
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando dependncia: incluso

Novos requisitos:
Para efetuar vendas ou administrar estoque, atendentes e gerentes
tero que validar suas respectivas senhas de acesso ao sistema.
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando dependncia: incluso

Vender CDs

Atendente

Vender CDs a prazo Vender CDs vista

<<extend>>

<<extend>>
Vender c/ boleto Vender c/ carto Calcular desconto

<<include>>
Fazer login

<<include>>

Administrar estoque

Gerente
Elementos Diagrama de Casos de Uso

Elementos do diagrama

Atores
Casos de uso
Relacionamentos
Associao
Generalizao
Dependncia: Extenso e Incluso
Fronteira do sistema
Elementos Diagrama de Casos de Uso

Fronteira do Sistema
Elemento opcional (mas essencial para um bom entendimento)
Serve para definir a rea de atuao do sistema

Notao:
Elementos Diagrama de Casos de Uso

Exemplo: Loja de CDs

Identificando a fronteira do sistema

Vender CDs

Atendente

Vender CDs a prazo Vender CDs vista

<<extend>>

<<extend>>
Vender c/ boleto Vender c/ carto Calcular desconto

<<include>>
Fazer login

<<include>>

Administrar estoque

Gerente
Descrio de Casos de Uso

A descrio mais importante do que o diagrama


UML no especifica padro

Pode ser:
Informal
Tpica
Detalhada
Descrio de Casos de Uso

Descrio Informal
Contm o nome do caso de uso e
uma descrio textual de sua funcionalidade

Exemplo:
Descrio de Casos de Uso

Descrio Tpica
Contm:
Identificao do ator que iniciou o caso de uso
Pr-requisitos (se houver) do caso de uso
Descrio textual do:
Fluxo normal
Fluxos alternativos (se houver)
Exemplo:
Descrio de Casos de Uso

Descrio Detalhada (Ex.1)


Contm:
Identificao do ator que iniciou o caso de uso
Objetivo
Nvel
Pr-requisitos (se houver) do caso de uso
Condies de disparo (triggers)
Descrio textual do:
Fluxo normal
Fluxos alternativos (se houver)
Exemplo 1:
Descrio de Casos de Uso

Descrio Detalhada (Ex.2)


Contm:
Nome
Descrio sucinta
Atores
Pr-condies
Ps-condies
Fluxo bsico
Fluxos alternativos
Fluxos de exceo t i po
s t e
re
Estruturas de dados Usa o d
e
r i
esc
de d e us
o
Regras de negcio o s d
cas
l h o s da
a
Observaes trab
nos a!
i s c iplin
d
Exemplo 2: (usar nos trabalhos!)
Exemplo 2 (cont.): (usar nos trabalhos!)
Exemplo 2 (cont.): (usar nos trabalhos!)
Exemplo: Blog

Um blog uma ferramenta de colaborao

Um blog formado por um conjunto de contedos:

notas

comentrios sobre as notas

Os contedos possuem as seguintes informaes: texto, data de


criao e autor

Os usurios de um blog podem ser:

Usurio: pode ler contedos de um blog, comentar uma nota, remover


comentrios, e pode criar um blog.

Dono do blog: alm de todas as funcionalidades de um usurio


comum, o dono do blog pode criar notas e remover notas

Para remover um contedo o usurio precisa ler o contedo antes


Exemplo: Blog

blogSystem
Criar Blog

<<include>>
Criar Comentario

Ler Conteudo Ler Nota

Usuario
Ler Comentario

<<include>> <<include>>

Remover Comentario

Remover Conteudo Remover Nota

Dono do blog Criar Nota


Ferramentas de Modelagem

Omondo Plugin para Eclipse - http://www.omondo.com/

Jude - https://jude.change-vision.com/jude-web/

Together - http://www.borland.com/products/downloads/download_together.html

IBM Rational Rose - http://www.ibm.com/software/rational

...
Ferramentas de Modelagem - Omondo
Ferramentas de Modelagem - JUDE
Bibliografia

Cockburn, A., Writing Effective Use Cases, Addison-Wesley, 2001.

Fowler, M e Scott, K., UML Distilled A Brief Guide to the standard


Object Modeling Language, Addison Wesley Longman, 2002

Booch, G., Rumbaugh, J. and Jacobson, I., Unified Modeling


Language User Guide, 2nd Edition, Addison-Wesley Object
Technology Series, 2005.

Você também pode gostar