caso_de_uso

Upload: ariane

Post on 14-Jan-2016

223 views

Category:

Documents


0 download

DESCRIPTION

engenharia de requisitos

TRANSCRIPT

  • 1Casos de Uso

    Casos de Uso O que

    Descries narrativas de processos do domnio da aplicao

    Documentam a seqncia de eventos de um ator (um agente externo) usando o sistema para completar, do incio ao fim, um determinado processo

    Representao em UML:

    Buy Items

    Objetivos de um Caso de Uso

    Ser compreensvel para os usrios leigos em informtica

    Auxiliar a tarefa de anlise, especificando funcionalidades e comportamento do sistema

    Delimitar o sistema

    Servir de base para derivar casos de teste

    Atores

    Entidades externas ao sistema que de algum modo participam da estria do caso de uso Estimulam o sistema com eventos de entrada, ou recebem alguma coisa dele

    Designados pelo papel que exercem no caso de uso

    Ex.: Cliente, Operador, etc.

    Representao em UML:Customer

    Atores e Casos de Uso

    Um caso de uso possui um ator que o inicia, que gera o estmulo inicial, e possivelmente vrios atores participantes O ator iniciador deve ser indicado explicitamente na descrio do caso de uso

    Algumas categorias tpicas de atores incluem: papeis exercidos por pessoas

    sistemas de computao, outros softwares

    dispositivos eltricos e mecnicos

    hardware

    Diagramas de Caso de Uso

    Ilustram um conjunto de casos de uso e atores para um sistema e os relacionamentos entre eles

    Cashier

    POST

    Buy Items

    CustomerLog In

    Refund Purchaseditems

  • 2Relacionamentos no Diagrama de Casos de Uso

    Relacionamento entre atores

    Relacionamento entre atores e casos de uso

    Relacionamento entre casos de uso

    Relacionamento entre atores

    Relacionamento de Associao

    Relacionamento de Generalizao

    Funcionario

    Cliente Caixa

    Cliente

    _________

    _________

    Herana entre atores

    Gerente de Compras

    Gerente deVendas

    Gerente

    Relacionamento entre atores e casos de uso

    Buy Items

    Buy Items

    Cliente

    Customer

    _________

    _________

    A seta pode indicar duas alternativas a escolher: ator que inicia o caso de uso ou simplesmente a direo dos dados

    ou

    >

    ValidarCliente

    Cliente

    RealizarPedido

    CadastrarCliente

    Cliente

    RealizarPedido________

    Relacionamento entre Casos de UsoRelacionamento entre Casos de Uso

    ______

    Relacionamento de Uso ou Include

    Utilizar quando se tem um bloco de comportamento que o mesmo para vrios casos de uso.

    Representar o fluxo comum como um outro caso de uso B a ser chamado pelo caso de uso A complexo: A B

    Validar Cliente pode ser um caso de uso utilizado por outro caso tal como Abrir Conta alm de Realizar Pedido

  • 3Relacionamento de Extenso

    Utilizar quando se tem dois casos de usos que fazem algo parecido, s que o caso de uso B faz alguma coisa a mais que A. B estende A

    B representa alguma situao no muito comum que ocorre em A mediante a satisfao de uma pr-condio

    Relacionamento de Generalizao

    Identificar Usurio

    Verificar Senha

    _______

    Customer

    relao estrutural

    entre um caso de uso

    mais geral e um caso

    de uso mais especfico.

    o caso de uso mais

    geral uma generalizao(abstrao) do ou dos casosde uso mais especficos. Ocaso de uso geral, representaas partes comuns de casos deuso especializados.

    Fluxo de Eventos, Cenrios

    Um caso de uso descreve um fluxo de eventos para realizar uma operao

    Cenrio: uma das formas possveis de se realizar um caso de uso

    Tipos de fluxos: Tpicos: Principal ou Bsico

    Atpicos: Alternativos, casos de erro, cancelamento, etc.

    Pr e Ps Condies

    Condies que devem ser verdadeiras antes de o caso de uso ser executado, ou aps a sua execuo.

    Ex: retirar dinheiro em um caixa Pr-condio: cliente precisa ter conta no banco

    Ps-condio: o terminal fica pronto para outro cliente.

    Interfaces entre Atores e Casos de Uso

    Identificam quais operaes o ator (ou o caso de uso) realizam

    Auxiliam a especificar as interaes e a reutilizar casos de uso

    Cliente Realizar PedidoInterfaceCliente

    --------------

    ________

    Tipos de Caso de Uso Com Respeito Importncia

    PrimrioRepresentam os processos principais ou mais comuns (ex.: Comprar Itens)

    SecundrioRepresentam processos menos importantes ou mais raros (ex.: Cadastrar Operadores)

    OpcionalRepresentam processos que podem ser ignorados ou includos em futuras verses do sistema (ex.: Solicitar Estoque para um Novo Produto)

  • 4Tipos de Casos de Uso com Respeito Descrio Textual

    Alto-nvel Breve descrio de um processo, normalmente em duas ou trs frases, e deliberadamente vago em decises de projeto

    Criados na fase inicial de requisitos

    Expandido Descrio passo a passo dos fluxos de eventos de um processo

    Durante a fase de requisitos, apenas os casos de uso mais importantes so geralmente escritos nesse formato

    Exemplo de um caso de uso de alto-nvel:

    A UML no especifica um formato rgido para os cabealhos e a estrutura de um caso de uso Podem ser alterados de acordo com as necessidades de documentao

    Casos de Uso Alto Nvel

    Caso de uso:

    Atores:

    Tipo:

    Descrio:

    Comprar Itens (Buy Items)

    Cliente (Customer), Operador (Cashier )

    primrio

    Um Cliente chega no caixa com itens para comprar. O Operador registra os itens e coleta o pagamento. Ao final, o Cliente sai com os itens.

    Exemplo de um caso de uso expandido:

    Caso de Uso Expandido

    Caso de uso:

    Atores:

    Propsito:

    Descrio:

    Comprar Itens com Dinheiro (Buy Items with Cash)

    Cliente (Iniciador), Operador

    Capturar uma venda e seu pagamento em dinheiro.

    Um Cliente chega no caixa com itens para comprar. O Operador registra os itens e coleta um pagamento com dinheiro. Ao final, o Cliente sai com os itens.

    Tipo:

    Referencia:

    primrio e essencial

    Funes: R1.1, R1.2, R1.3, R1.7, R1.9, R2.1

    Tpica Seqncia de Eventos

    Ao do Ator Resposta do Sistema

    1. Este caso de uso comea quando um Cliente chega no caixa com itens para comprar.

    Exemplo de um caso de uso expandido (cont.):

    Caso de Uso Expandido

    Tpica Seqncia de Eventos

    Ao do Ator Resposta do Sistema

    2. O Operador registra o identi-ficador de cada item.

    Se h mais de um do mesmo item, o Operador tambm pode infor-mar a quantidade.

    3. Determina o preo do item e adiciona informao sobre o item transao de venda em anda-mento.

    Mostra a descrio e o preo do item corrente.

    4. Aps processar o ltimo item, o Operador indica ao POST que a entrada de itens terminou.

    5. Calcula e mostra o valor total da venda.

    6. O Operador informa o total ao Cliente.

    .

    Exemplo de um caso de uso expandido (cont.):

    Caso de Uso Expandido

    Tpica Seqncia de Eventos

    Ao do Ator Resposta do Sistema

    7. O Cliente entrega um paga-mento em dinheiro, possivelmente maior do que o valor total.

    8. O Operador registra o valor recebido em dinheiro.

    9. Mostra o troco devido.

    Emite um recibo.

    12. O Cliente sai com os itens comprados.

    .

    10. O Operador deposita o dinheiro e retira o troco devido.

    O Operador entrega o troco e o recibo ao Cliente.

    11. Registra a venda no log de vendas completadas.

    Tipos de Casos de Uso com Respeito Implementao

    Essencial Descrio de um processo em termos de sua motivao e atividades essenciais

    Expressos relativamente livres de detalhes de implementao, decises de projeto, e uso de tecnologias

    Real Descrio de um processo em termos de seu projeto real, comprometido com tecnologias de desenvolvimento, interfaces de entrada e sada, etc.

  • 5Caso de Uso EssencialTrecho do caso de uso Comprar Itens essencial

    Ao do Ator Resposta do Sistema

    2. O Operador registra o identi-ficador de cada item.

    Se h mais de um do mesmo item, o Operador tambm pode infor-mar a quantidade.

    3. Determina o preo do item e adiciona informao sobre o item transao de venda em anda-mento.

    Mostra a descrio e o preo do item corrente.

    4. ... 5. ...

    Caso de Uso Real

    Trecho do caso de uso Comprar Itens realAo do Ator Resposta do Sistema

    2. Para cada item, o Operador digita o cdigo universal de pro-duto (UPC) no campo de entrada UPC da Janela 1. Ele ento pres-siona o boto Entra Item com o mouse ou pressiona a tecla .

    3. Determina o preo do item e adiciona informao sobre o item transao de venda em anda-mento.

    Mostra a descrio e o preo do item corrente na Caixa de Texto 2 da Janela 1.

    4. ... 5. ...

    Casos de Uso com Fluxos Alternativos

    Caso de uso Comprar Itens Expandido

    Ao do Ator Resposta do Sistema

    1. ...

    2. O Cliente escolhe o tipo de pagamento:

    a) Se pagamento com dinheiro, veja seo Pagamento com Dinheiro.

    b) ...

    Seo: Principal

    Ao do Ator Resposta do Sistema

    1. O Cliente entrega um paga-mento em dinheiro ...

    Seo: Pagamento com Dinheiro

    Formato para um Caso de UsoNome do caso de uso

    Descrio

    Atores

    Tipo

    Referncias

    Pr-condies

    Fluxo de eventos

    Fluxo principal (tpico)

    Fluxos alternativos

    Fluxos no tpicos (erros, cancelamentos, etc)

    Ps-condies

    Pontos de extenso

    Casos de uso includos

    Outros requisitos (Interfaces)

    Decomposio de Diagramas de Casos de Uso

    Pode-se dividir sistemas complexos em sub-sistemas e para cada um deles um diagrama de Casos de Uso

    Para mostrar o relacionamento entre esses sub-sistemas, os Casos de Uso so agrupados em Pacotes.

    Decomposio de Diagramas de Casos de Uso

    Casos de usoGerais

    Casos de usoAdminitrativos

    Casos de usoMercadolgicos

  • 6Identificando Casos de Uso

    Normalmente no so eventos ou passos individuais, mas um processo completo Erro mais comum!

    Mtodo baseado em atores1. Identificar os atores relacionados com o sistema ou organizao

    2. Para cada ator, identificar os processo que eles iniciam ou participam

    Identificando Casos de Uso

    Mtodo baseado em eventos1. Identificar os eventos externos aos quais o sistema deve responder

    2. Relacionar os eventos a atores e casos de uso

    Exemplos do sistema Posto Comercial Operador: Login, Retirar Dinheiro Cliente: Comprar Itens, Devolver Itens Digitar Senha? Imprimir Recibo?

    Casos de Uso e Funes

    Todas as funes do sistema identificadas na especificao dos requisitos devem ser alocadas a casos de usos

    Alocao documentada atravs da seo Referencia

    Casos de Uso e o Limite do Sistema

    Identificar os atores e casos de uso de um sistema requer a definio de seu limite de atuao

    Alguns limites tpicos incluem: o software/hardware de um dispositivo ou sistema de computao

    um departamento de uma organizao

    uma organizao inteira

    Limites diferentes podem resultar em diferentes conjuntos de atores e casos de uso

    Casos de Uso e o Limite do Sistema

    Exemplo de um diagrama de caso de uso para o sistema Posto Comercial, quando o limite de atuao a loja inteira

    Store

    Buy Items

    CustomerRefund Purchased

    items

    Recomendaes Crie nomes sempre comeando com um verbo

    Identifique primeiro os fluxos principais, iniciando com:1. Este caso de uso comea quando

    Use a seo Seqncias no Tpicas para representar desvios para seqncias de eventos incomuns ou excepcionais.

    Use subsees para representar desvios para seqncias alternativas com igual importncia ou probabilidade de ocorrncia

  • 7Recomendaes

    Procure estimar a dimenso (granularidade) do caso de uso. Se ele estiver muito extenso procure identificar sub-casos

    Procure identificar partes comuns nos seus casos de uso, e usar .

    Identifique servios comuns aos casos de uso e crie casos de uso genricos.

    A medida que se definem os casos de uso um refinamento no diagrama possvel

    Referncias Boock, G. and Rumbaugh, J. The Unified Modeling Language User

    Guide . Addison-Wesley, 1999 Arlow, J. and Neustadt, I. UML 2 and the Unified Process: Practical

    Object-Oriented Analysis and Design, 2nd Edition, The Addison-Wesley Object Technology Series, 2005.

    Rumbaugh, J.; Jacobson, I. and Booch , G. The Unified Modeling Language Reference Manual, 2nd Edition, The Addison-Wesley Object Technology Series, 2004.

    Boock, G.; Rumbaugh, J. and Jacobson, I; Unified Modeling Language User Guide, 2nd Edition, The Addison-Wesley Object Technology Series, 2005.

    Jacobson, I; Boock, G. and Rumbaugh, J., Unified Software Development Process, Addison-Wesley, Janeiro 1999.

    Larman, C. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design Prentice-Hall, New Jersey - USA, 1997

    Bezerra, E. Princpios de Anlise e Projetocom a UML, ed. Campus-Elsevier. 2003.