Aula 07 - UML - Diagrama de Casos de Uso (Mod. Funcional)
-
Upload
johnatas-ferreira -
Category
Documents
-
view
39 -
download
3
description
Transcript of Aula 07 - UML - Diagrama de Casos de Uso (Mod. Funcional)
-
UML: Casos de Uso
Prof. MBA. Ricardo Roberto de LimaEngenheiro de Sistemas Cesar.edu.brMestrando em Engenharia de Software
-
UNIP-PB
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
-
UNIP-PB
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
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Elementos do diagrama:
Atores Casos de uso Relacionamentos
Associao Generalizao Dependncia: Extenso e Incluso
Fronteira do sistema
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Elementos do diagrama
Atores Casos de uso Relacionamentos
Associao Generalizao Dependncia: Extenso e Incluso
Fronteira do sistema
-
UNIP-PB
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:
Secretria(from Use Case View)
Diretor(from Use Case View)
S istema de Relatrios
(from Use Case V iew)
-
UNIP-PB
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.
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando os atores
E o cliente? No ator pois ele no interage com o sistema!
Gerente(from Use Case View)
Atendente(from Use Case View)
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Elementos do diagrama
Atores Casos de uso Relacionamentos
Associao Generalizao Dependncia: Extenso e Incluso
Fronteira do sistema
-
UNIP-PB
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
-
UNIP-PB
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.
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando os casos de uso
Administrar estoque
Vender CDs
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Elementos do diagrama
Atores Casos de uso Relacionamentos
Associao Generalizao Dependncia: Extenso e Incluso
Fronteira do sistema
-
UNIP-PB
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:
Ator(from Use Case View)
Caso de Uso(from Use Case View)
interao
-
UNIP-PB
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.
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando os relacionamentos de associao
Atendente
Gerente
Vender CDs
Administrar estoque
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Elementos do diagrama
Atores Casos de uso Relacionamentos
Associao Generalizao Dependncia: Extenso e Incluso
Fronteira do sistema
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Relacionamento de generalizaoGeneralizao 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:
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando generalizao de atores
Atendente
Gerente
Vender CDs
Administrar estoque
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Relacionamento de generalizaoGeneralizao 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
-
UNIP-PB
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.
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando generalizao de casos de uso
Atendente
Vender CDs
Gerente
Vender CDs vistaVender CDs a prazo
Administrar estoque
-
UNIP-PB
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 cartoou 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.
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando generalizao de casos de uso
Atendente
Vender CDs
Gerente
Vender CDs vistaVender CDs a prazo
Administrar estoque
Vender c/ cartoVender c/ boleto
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Elementos do diagrama
Atores Casos de uso Relacionamentos
Associao Generalizao Dependncia: Extenso e Incluso
Fronteira do sistema
-
UNIP-PB
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:
-
UNIP-PB
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.
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando dependncia: extenso
Atendente
Vender CDs
Gerente
Vender CDs vistaVender CDs a prazo
Administrar estoque
Vender c/ cartoVender c/ boleto Calcular desconto
-
UNIP-PB
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:
-
UNIP-PB
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.
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando dependncia: incluso
Atendente
Gerente
Vender CDs vistaVender CDs a prazo
Vender c/ cartoVender c/ boleto Calcular desconto
Fazer login
Vender CDs
Administrar estoque
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Elementos do diagrama
Atores Casos de uso Relacionamentos
Associao Generalizao Dependncia: Extenso e Incluso
Fronteira do sistema
-
UNIP-PB
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:
-
UNIP-PB
Elementos Diagrama de Casos de Uso
Exemplo: Loja de CDs
Identificando a fronteira do sistema
Atendente
Gerente
Vender CDs vistaVender CDs a prazo
Vender c/ cartoVender c/ boleto Calcular desconto
Fazer login
Vender CDs
Administrar estoque
-
UNIP-PB
Descrio de Casos de Uso
A descrio mais importante do que o diagrama UML no especifica padro
Pode ser: Informal Tpica Detalhada
-
UNIP-PB
Descrio de Casos de Uso
Descrio Informal Contm o nome do caso de uso e
uma descrio textual de sua funcionalidade
Exemplo:
-
UNIP-PB
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:
-
UNIP-PB
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:
-
UNIP-PB
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 Estruturas de dados Regras de negcio Observaes
-
Exemplo 2: (usar nos trabalhos!)
-
Exemplo 2 (cont.): (usar nos trabalhos!)
-
Exemplo 2 (cont.): (usar nos trabalhos!)
-
UNIP-PB
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
-
UNIP-PB
Exemplo: Blog
blogSystem
Criar Comentario
Ler Conteudo
Remover Conteudo Remover Nota
Remover Comentario
Criar Blog
Ler Comentario
Ler Nota
Criar Nota
Usuario
Dono do blog
-
UNIP-PB
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 Software Modeler - http://www.ibm.com/software/rational ...
-
UNIP-PB
Ferramentas de Modelagem - Omondo
-
UNIP-PB
Ferramentas de Modelagem - JUDE
-
UNIP-PB
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.