Você está na página 1de 3

APRENDENDO A ESCREVER CASOS DE USO

extraído do livro

Cockburn, Alistair. Escrevendo Casos de Uso Eficazes, Ed. Bookman

Aprender a escrever um bom caso de uso é difícil. O autor tem que dominar três conceitos que se aplicam a toda sentença em um caso de uso e ao caso de uso como um todo. Embora, à primeira vista, possa parecer estranho, manter estes três conceitos corretamente não é fácil. A dificuldade aparece logo que você escreve seu primeiro caso de uso. Os três conceitos são:

Escopo: Qual é realmente o sistema sob discussão?

Ator Primário: Quem tem o objetivo?

Nível: Quão alto ou baixo nível é o objetivo?

Vários exemplos de casos de uso seguem. As partes dos casos de uso são descritas no próximo capítulo. Por hora, lembre-se dessas definições resumidas:

Ator: alguém ou algo com comportamento.

Stakeholder: alguém ou algo com um interesse legal no comportamento do sistema sob discussão (SsD).

Ator Primário: o stakeholder quem ou qual inicia uma interação com o SsD para alcançar um objetivo.

Caso de Uso: um contrato sobre o comportamento do SsD.

Escopo: identifica o sistema que estamos discutindo.

Pré-condições e garantias: o que deve ser verdadeiro antes e após a execução do caso de uso.

Cenário de sucesso principal: um caso onde nada acontece errado.

Extensões: o que pode ocorrer de diferente durante aquele cenário.

Números nas extensões referem-se aos números dos passos no cenário de sucesso principal nos quais cada situação diferente é detectada (por exemplo, passos 4a e 4b indicam duas diferentes condições que podem aparecer no passo 4).

Quando um caso de uso faz referência a outro caso de uso, o caso de uso referido é sublinhado.

O primeiro caso de uso descreve uma pessoa ao comprar algumas ações na Internet. Para

notificar que estamos lidando com um objetivo a ser alcançado em uma única sessão, eu marco o caso de uso como sendo ao nível de objetivo do usuário, e etiqueto com o símbolo nível-do-mar, *figura*. O segundo caso de uso mostra uma pessoa que tenta receber por um acidente de carro, um objetivo que não leva mais do que uma única sessão. Para mostrar isso, eu marco o caso de uso como sendo ao nível de resumo, e etiqueto com o símbolo acima-do-nível-do mar, *figura*. Esses símbolos são explicados no Capítulo 5, e resumidos no verso da capa.

O primeiro caso de uso descrê a interação de uma pessoa com um programa (“PAF”) rodando

em uma estação de trabalho conectada a Internet. O símbolo de caixa-preta, *figura*, indica que o sistema que está em discussão é um sistema computacional. O segundo caso de uso descreve a interação de uma pessoa com uma companhia, que eu indiquei com um símbolo de casa, *figura*. O uso de símbolos é completamente opcional. Rotular o escopo e o nível não é.

Aqui estão os Casos de Uso 1 e 2.

Caso de Uso 1 Comprar Ações na Internet Ator Primário: Comprador Escopo: Conselheiro Particular / Pacote Financeiro (PAF) Nível: Objetivo do usuário

Stakeholders e Interesses:

Comprador – deseja comprar ações e tê-las adicionadas ao portfólio PAF automaticamente. Agência de ações – deseja toda informação da compra. Pré-condicão: Usuário já esteja com o PAF aberto. Garantia Mínima: Existirá informação de registro suficiente para que o PAF possa detectar que algo aconteceu errado e pedir para o usuário fornecer detalhes.

Garantia de Sucesso: O site na Internet remoto tem a compra confirmada; o registro e o portfólio do usuário são atualizados. Cenário de Sucesso Principal:

1. Comprador seleciona comprar ações na Internet.

2. PAF obtém o nome do site na Internet para usar (E*Trade, Schwab, etc.) do usuário.

3. PAF abre uma conexão de Internet com o site, mantendo controle.

4. Comprador navega e compra ações no site na Internet.

5. PAF intercepta respostas do site na Internet e atualiza o portfólio do comprador.

6. PAF mostra ao usuário a nova posição do portfólio.

Extensões:

2a. Comprador deseja um site na Internet que o PAF não suporta:

2a1. Sistema obtém nova sugestão do comprador, com a opção de cancelar o caso de uso. 3a. Algum tipo de falha na Internet durante a configuração:

3a1. Sistema informa a falha ao comprador com aviso, retorna ao passo anterior. 3a2. Comprador ou sai do caso de uso ou tenta novamente. 4a. Computador quebra ou é desligado durante a transação de compra:

4a1. (O que fazemos aqui?) 4b. Site na Internet não confirma a compra, mas põe ela em atraso:

4b1. PAF registra o atraso, ajusta um cronômetro para perguntar ao comprador sobre o resultado. 5a. Site na Internet não retorna a informação necessária para a compra:

5a1. PAF registra a falta de informação, recebe o comprador atualize compra questionada.

Caso de Uso 2 Receber por Acidente de Carro Ator Primário: Requerente Escopo: Seguradora (“MyInsCo”) Nível: Resumo Stakeholders e Interesses:

Requerente – receber o mais possível. MyInsCo – pagar a menor quantia apropriada. Departamento de Seguro – observar que todas as diretrizes foram seguidas. Pré-condicão: nenhuma. Garantia Mínima: MyInsCo registra a reivindicação e todas as atividades.

Garantia de Sucesso: Requerente e MyInsCo concordam sobre a quantia a ser paga; requerente recebe isso. Acionador: Requerente submete a reivindicação. Cenário de Sucesso Principal:

1. Requerente submete reivindicação com dados substanciais.

2. Seguradora verifica que requerente possui uma apólice válida.

3. Seguradora designa agente para examinar caso.

4. Seguradora verifica que todos os detalhes estão dentro das diretrizes da apólice

5. Seguradora paga requerente e fecha arquivo.

Extensões:

1a. Dados submetidos estão incompletos:

1a1. Seguradora solicita informação ausente. 1a2. Requerente fornece informação ausente. 2a. Requerente não possui uma apólice válida:

2a1. Seguradora nega reivindicação, notifica requerente, grava tudo isso, termina procedimentos. 3a. Nenhum agente está disponível no momento. 3a1. (O que a seguradora faz aqui?) 4a. Acidente viola diretrizes básicas da apólice:

4a1. Seguradora nega reivindicação, notifica requerente, grava tudo isso, termina procedimentos. 4b. Acidente viola algumas diretrizes secundárias da apólice:

4b1. Seguradora inicia negociação com requerente sobre quantia de pagamento a ser feito.

Muitos dos casos de uso neste livro vêm de projetos reais, e eu tive o cuidado de não retocá-los (exceto para adicionar os identificadores de escopo e nível se eles não estavam presentes). Eu quero que você veja exemplos do que funciona na prática, não apenas do que é atrativo na sala de aula. As pessoas raramente têm tempo para criar os casos de uso formais, completos e bonitos. Elas geralmente têm tempo para fazê-los “suficientes”, que é tudo aquilo que é necessário. Eu mostro esses exemplos reais porque você raramente será capaz de gerar casos de uso perfeitos sozinho, apesar de meu treinamento. Até mesmo eu não consigo escrever casos de uso perfeitos a maioria do tempo.

O Caso de Uso 3 foi escrito por Torfinn Aas do Banco Central de Norway para seu colega, seu usuário representativo, e para ele mesmo. Isso mostra como a forma pode ser modificada sem perder valor. O autor adicionou a história, adicional contexto do negócio, ilustrando como a aplicação computacional opera no curso de um dia de trabalho. Isto foi prático, a medida que isto poupou ter que escrever um documento separado descrevendo o processo de negócio. Isto não confunde ninguém e foi informativo para as pessoas envolvidas.

Caso de Uso 3 Registrar Chegada de um Caixa AR – “Agente Receptor” OR – “Operador de Registro” Ator Primário: AR

Escopo: Recebendo Registro de Software nas Horas Noturnas Nível: Objetivo do usuário Cenário de Sucesso Principal:

1. AR recebe e abre caixa (ID da caixa, sacolas com IDs das sacolas) da Companhia de Transporte

(CT).

2. AR valida ID da caixa com os IDs registrados da CT.

3. AR talvez assina formulário de papel para pessoa de entrega.

4. AR registra chegada da caixa no sistema, que armazena:

ID do AR Data, hora ID da caixa Companhia de Transporte <nome da pessoa?> # sacolas (com IDs das sacolas?) <valor estimado?>

5. AR retira sacolas da caixa, põe na carreta, leva para OR.

Extensões:

2a. ID da caixa não corresponde ao ID da Companhia de Transporte. 4a. Alarme de incêndio dispara e interrompe o registro. 4b. Computador desliga. Deixar dinheiro na mesa e esperar o computador voltar. Variações:

4’. Com ou sem ID da pessoa. 4”. Com ou sem valor estimado. 5’. AR deixa sacola na caixa.