Diretriz: Detalhar Casos de Uso e Cenários
Esta diretriz ajuda no detalhamento de casos de uso e cenários.
Relacionamentos
Descrição Principal

Maneira mais eficiente de escrever casos de uso

Por casos de uso modelarem requisitos, eles são altamente dinâmicos por natureza. Quanto mais examinamos um requisito, mais aprendemos, e mais as coisas mudam. Para complicar ainda mais, mudanças num caso de uso podem levar a mudanças em outros. Portanto, queremos um método flexível e altamente eficiente para escrever casos de uso que eliminam trabalho desnecessário e reescrita.

Uma abordagem iterativa, em que o caso de uso é continuamente avaliado antes da adição de mais detalhes, é uma maneira eficiente de escrever casos de uso. Essa abordagem envolve dois aspectos: escrever o conjunto de casos de uso e escrever casos de uso individuais.

Escrevendo o conjunto de casos de uso: Casos de uso existem em conjuntos, e os relacionamentos entre os vários casos de uso e Atores são importantes. Conforme você aprende mais sobre os Atores, você também aprende mais sobre os limites e transações do sistema. Do mesmo modo, conforme você aprende mais sobre as transações do sistema, você aprende mais sobre seus atores. Portanto, é mais eficiente escrever vários casos de uso simultaneamente do que escrevê - los sequencialmente Desse modo, você pode identificar e entender os efeitos dos vários casos de uso uns sobre os outros conforme você os escreve, em vez de pensar nisso depois, o que requer reescrita e eliminação de trabalho anterior.

Escrevendo casos de uso individuais. De modo similar, faz sentido escrever cada caso de uso iterativamente. Iniciando com o cenário principal, você pode identificar várias alternativas e fluxos de erro que o casos de uso pode seguir, então avaliá - los, rearranjá - los ou eliminá - los, só então adicionar os detalhes dos cenários sobreviventes

O nível de detalhes que você captura depende de um número de fatores. Veja Diretriz: Formatos de Caso de Uso para diretrizes na seleção do formato correto para seus casos de uso

Detalhe o fluxo de eventos do cenário principal

De início, use a descrição passo - a - passo do cenário principal que você criou durante Tarefa: Find and Outline Requirements. Então, adicione detalhes a esse cenário gradualmente, descrevendo o que o caso de uso faz, não como resolver problemas internos ao sistema.

Uma descrição de fluxo de eventos explora:

  • Como e quando o caso de uso se inicia
  • Quando o caso de uso interage com os Atores, e quais informações eles trocam
  • Quando o caso de uso usa dados armazenados no sistema ou armazena dados no sistema
  • Como e quando o caso de uso termina

Ele não descreve:

  • A interface com o usuário
  • Os detalhes técnicos de hardware ou software
  • Questões de design

Identifique fluxos alternativos

Um caso de uso é formado por um conjunto de cenários, cada um representando instâncias específicas do caso de uso que correspondem a entradas específicas do Ator ou condições específicas do ambiente.  Cada cenário descreve modos alternativos de comportamento do sistema, ou pode descrever falhas ou casos excepcionais.

À medida que você detalha o cenário principal, identifique fluxos alternativos se perguntando as seguintes questões:

  • Existem opções diferentes, dependendo da entrada do Ator? (por exemplo, se o Ator entrar um número de cartão inválido enquanto usa um caixa eletrônico)
  • Que regras de negócio podem estar em jogo? (o Ator requisita ao caixa eletrônico mais dinheiro do que está disponível na sua conta)
  • O que poderia dar errado? (não há conexão de rede disponível quando é necessária uma transação)

É melhor desenvolver estes cenários iterativamente, como o cenário principal. Inicie identificando - os. Examine cada cenário possível para determinar se ele é relevante, se pode realmente acontecer e se é distinto dos outros cenários. Elimine cenários redundantes ou desncessários, e comece a elaborar os mais importantes.

Estruture o caso de uso

É útil estruturar o caso de uso em cenários. Isso ajuda a simplificar a comunicação e manutenção e permite que os casos de uso sejam implementados iterativamente.

Além de estruturar os casos de uso em cenários, é útil estruturar os próprios cenários em sub - fluxos. Isso garante um nível adicional de granularidade para o planejamento do trabalho e acompanhamento do progresso. A menos que um sub - fluxo envolva somente uma parte menor do fluxo completo de eventos (que pode ser descrita no corpo do texto), é recomendado que você descreva cada sub - fluxo numa seção separada da seção Fluxo de Eventos. Sub - fluxos que deveriam ser separados numa seção incluem os seguintes exemplos:

  • Sub - fluxos que ocupam um grande segmento de um fluxo de eventos.
  • Fluxos de eventos excepcionais e alternativos. Isso ajuda a manter o fluxo básico de eventos mais claro.
  • Qualquer sub - fluxo que pode ser executado em vários intervalos no mesmo fluxo de eventos.

Para mais informações, veja a seção "Fluxo de Eventos - Estrutura" em Conceito: Caso de Uso.

Descreva requisitos especiais

Você deve também capturar qualquer requisito que está relacionado ao caso de uso, mas não é levado em consideração no fluxo de eventos do caso de uso. Geralmente, tais requisitos são não - funcionais.

Tipicamente, requisitos não - funcionais que se referem a um caso de uso específico são capturados na seção de requisitos especiais do caso de uso. Para mais informações, veja a seção "Requisitos Especiais" em Conceito: Caso de Uso.

Se houver requisitos não - funcionais que se aplicam a mais que um caso de uso, capture - os em Artefato: Requisitos Suplementares. Para mais informações sobre requisitos suplementares, veja Conceito: Requisitos Suplementares.

Descreva pré - condições e pós - condições

Uma pré - condição num caso de uso descreve o estado em que o sistema deve estar para o caso de uso poder iniciar. Tome cuidado ao descrever o estado do sistema. Evite descrever detalhes de atividades  incidentais que já podem ter acontecido.

Uma pós - condição num caso de uso lista os possíveis estados em que o sistema pode ficar ao término da execução do caso de uso. O sistema deve estar em num desses estados. Uma pós - condição também declara ações que o sistema executa ao fim do caso de uso, independentemente do que ocorreu no caso de uso. Pós - condições podem ser categorizadas como Garantias Mínimas ou Garantias de Sucesso. Uma Garantia Mínima representa uma condição que será verdadeira quando o caso de uso terminar, independentemente de como ele terminar. Uma Garantia de Sucesso representa uma condição que será verdadeira quando o caso de uso termina em sucesso, independentemente de qual caminho ele seguiu.

Pré - condições e pós - condições não deveriam ser usadas para criar uma sequência de casos de uso. Como regra geral, nunca deveria existir um caso em que você deve ter executado primeiro um caso de uso e depois outro para ter um fluxo de eventos que faz sentido. Se esse for o caso, corrija o problema revendo os casos de uso. Para mais informações, veja as seções "Pré - condições" e "Pós - condições" em Conceito: Caso de Uso.

Informações Adicionais