Como escrever casos de uso eficazes

Você já escreveu bons casos de uso para o seu sistema?

Um dos problemas mais difíceis no desenvolvimento de software é capturar exatamente o que você deseja construir. Requisitos imprecisos podem levar, eventualmente, a atrasos significativos no projeto, retrabalho ou até mesmo abandono.

A aplicação eficaz de técnicas de casos de uso pode ajudar sua equipe a capturar requisitos do ponto de vista do usuário, que pode ser facilmente compreendido tanto pelo usuário final quanto pela sua equipe. O desenvolvimento orientado por casos de uso apoia atividades subsequentes de desenvolvimento, como análise, design e testes.

use case diagram example

O que é um Caso de Uso?

objective

Casos de uso são coisas que atores desejam fazer para alcançar um objetivo de negócio observável. Eles são nomeados com um verbo curto ou uma frase verbo + substantivo. Você deve usar verbos e substantivos específicos para evitar ambiguidades. Verbos como ‘fazer’ e ‘realizar’ e substantivos como ‘dados’ e ‘informação’ devem ser evitados sempre que possível.

Teoricamente, os usuários finais realizarão as ações suportadas pelo sistema para alcançar seu objetivo final, conforme identificado na análise de casos de uso. Vamos considerar como exemplo um sistema de reserva de hotéis online. ‘Reserva’ é, sem dúvida, um objetivo de negócio e, portanto, um caso de uso. A capacidade de encontrar um hotel em um mapa online também pode ser desejada pelo usuário. No entanto, isso não é um caso de uso porque a ação em si não produz nenhum objetivo observável.

É inadequado modelar requisitos relacionados a problemas de implementação como casos de uso, por exemplo, suporte a múltiplas ocorrências, arranjos de implantação, construção de um banco de dados. Todos esses são incorretos e podem levar à construção de sistemas ruins, ou até mesmo errados.

Histórias de Usuário são amplamente utilizadas atualmente

Qualquer pessoa com experiência em desenvolvimento de software pode enfrentar problemas de comunicação entre usuários finais e a equipe de desenvolvimento. Isso pode ser agravado quando os membros trabalham em locais remotos diferentes. Histórias de usuário são uma ótima forma de abrir discussões com clientes e garantir que realmente compreendamos o que eles realmente querem.

As histórias de usuário criadas pelo proprietário do produto capturam o ‘quem’, ‘o que’ e ‘por quê’ dos requisitos de forma simples e concisa, e geralmente são escritas em linguagem natural e não técnica.

O desenvolvimento ágil entrou na corrente principal dos métodos de desenvolvimento usados para descoberta de requisitos, juntamente com as histórias de usuário.

Considerações Práticas

Normalmente, uma equipe ágil com uma média de 10 membros pode ter centenas de histórias de usuário no fluxo de trabalho, algumas das quais estão interconectadas e divididas a partir de épicas ou versões detalhadas de histórias de usuário do Sprint anterior. Uma história de usuário é um artefato efêmero que permanece apenas no Sprint e é descartada ao final da iteração de desenvolvimento.

Equipes ágeis e membros do Scrum frequentemente percebem que podem se tornar facilmente desorganizados e difíceis de gerenciar de forma clara e ordenada, especialmente quando os membros da equipe desejam consultar histórias de usuário relevantes dos Sprints anteriores.

Em vez disso, o caso de uso tem como objetivo ter mais continuidade ao longo do ciclo de vida do desenvolvimento de software e pode servir como um espaço reservado para manter histórias de usuário relevantes dentro do escopo da épica. Além disso, o caso de uso tem como objetivo ser uma referência contínua para a equipe de desenvolvimento

Overview of user stories creation

O que é um Diagrama de Caso de Uso?

Um diagrama de caso de uso é um tipo de Linguagem Unificada de Modelagem (UML) diagrama criado para a elicitação de requisitos definido por Grupo de Gestão de Objetos (OMG). O diagrama de caso de uso fornece uma visão gráfica dos objetivos (modelados por casos de uso) que os usuários (representados por atores) desejam alcançar ao usar o sistema (representado por uma fronteira do sistema, opcionalmente).

Os casos de uso em um diagrama de caso de uso podem ser organizados e dispostos de acordo com sua relevância, nível de abstração e impacto sobre os usuários. Eles podem ser conectados para mostrar suas relações de dependência, inclusão e extensão. O principal objetivo de modelar casos de uso com um diagrama de caso de uso é estabelecer uma base sólida do sistema ao identificar o que os usuários desejam. Com base nos resultados da análise, você pode avançar para estudar como atender essas necessidades dos usuários.

use case diagram exampleUm diagrama de caso de uso é principalmente formado por atores, casos de uso e associações (conectores).

Um ator é qualquer pessoa ou sistema externo que interage com o sistema para alcançar um objetivo do usuário. Existem dois tipos de atores – primário e secundário.

  • O ator primário é qualquer pessoa ou coisa que interage com o sistema para obter benefício direto.
  • O ator secundário é qualquer pessoa ou coisa que participa na realização de um caso de uso, mas que não obtém benefício direto do sistema. Muitas vezes, o ator secundário é alguém que auxilia o ator primário a realizar um caso de uso.

Desenhando Diagrama de Caso de Uso no Visual Paradigm

Neste tutorial, usaremos um sistema de reserva de hotéis online como exemplo para demonstrar como escrever casos de uso eficazes com o Visual Paradigm. Vamos começar desenhando um diagrama de caso de uso. Continuaremos escrevendo casos de uso eficazes com o design resultante.

  1. Abra o UeXceler no Visual Paradigm selecionando “UeXceler > UeXceler da barra de ferramentas do aplicativo.
  2. Abra o Diagrama de Caso de Uso página.
    Open use case diagram
  3. Selecione Ator na barra de ferramentas do diagrama. Clique no diagrama para criar um ator e nomeie-o como Cliente.
    actor
  4. Um cliente pode fazer uma reserva de hotel, que é um caso de uso do sistema. Vamos criar um caso de uso a partir do Cliente ator. Mova o ponteiro do mouse sobre o Cliente ator. Pressione no ícone do Catálogo de Recursos no canto superior direito e arraste-o.
    create use case
  5. Selecione Associação -> Caso de Uso no Catálogo de Recursos.
    select use case in resource catalog
  6. Soltar o botão do mouse para criar o caso de uso. Nomeie-o como Fazer Reserva. A associação entre o ator e o caso de uso indica que o ator irá interagir com o sistema para alcançar o caso de uso associado.
  7. Complete o design para que ele fique assim:
    Use case diagram example

Elaborando casos de uso com Histórias de Usuário

Enquanto o caso de uso é o objetivo do negócio de um sistema de TI a ser desenvolvido, a história do usuário representa um problema ou preocupação do usuário capturado pelo analista e pelos stakeholders de frente durante a discussão detalhada de um caso de uso. Sem dúvida, todas as histórias de usuário capturadas visam atender ao objetivo do negócio do sistema de TI.

  1. Clique com o botão direito em Fazer Reserva e selecione Abrir Detalhes do Caso de Uso… do menu suspenso.
    open use case details
  2. Abra o Histórias de Usuário página.
    Open user story tab
  3. Crie histórias de usuário clicando duas vezes na região vazia dentro da aba. Crie três histórias: Buscar hotel, Fazer uma reserva de hotel e Processar reserva urgente.
    User stories created

Capture o Cenário da História de Usuário

Uma história de usuário informa o que o usuário final deseja alcançar, identificando primeiro seu problema. Uma vez identificado o problema, você pode começar a procurar uma solução. A ferramenta de Cenário de História de Usuário permite que você esboce as interações entre os atores e o sistema na resolução do problema descrito na história de usuário. Você pode usar esta ferramenta para identificar o comportamento desejado do sistema pelo usuário.

Um cenário de história de usuário constitui uma conversa de alto nível entre usuário e sistema, cujo propósito é descobrir o que os atores pretendem ou fazem e como o sistema reage às entradas desses atores. Ao decidir o que incluir no fluxo de eventos, você deve ser conciso. Não inclua detalhes de implementação, como como o sistema processa internamente as entradas do usuário ou mesmo a inserção de registros no banco de dados. Isso está errado porque histórias de usuário, e de fato a análise de casos de uso, são projetadas para identificar requisitos a partir da perspectiva do usuário final. No entanto, detalhes de implementação podem ser modelados em diagramas de sequência UML na forma de subdiagramas de histórias de usuário.

Vamos escrever o cenário de uma história de usuário.

  1. Clique duas vezes na história de usuário Buscar hotel para abri-la.
    Open user story
  2. Abra o Cenário aba. O editor de cenário é formado por linhas, conhecidas como etapas. Cada etapa representa uma entrada do ator ou uma resposta do sistema.
    Open user story scenario tab
  3. Clique na primeira etapa e insira a primeira entrada do usuário: Insira cidade, data de chegada, data de saída, tipo de quarto e clique em Buscar.
    Entered first step
  4. Use as ferramentas de formatação disponíveis abaixo do UeXcelerbarra de ferramentas para definir a palavra Buscar em azul e negrito, para ênfase.
    Format scenario step text
  5. Pressione Entrar para concluir esta etapa. A Etapa 2 será criada para você.
  6. A Etapa 2 trata de como o sistema reage à entrada do usuário. Você pode começar escrevendo “Sistema…”, mas há uma maneira melhor de representar a resposta do sistema. Selecione UeXceler > Adicionar Controle > Resposta do Sistema da barra de ferramentas para adicionar uma etapa de resposta do sistema.
    Add system response to scenario
  7. Agora você pode digitar o conteúdo da Etapa 2: Exibir uma lista de hotéis.
    Entering system response text
  8. Adicione as seguintes etapas:
    Entrada do usuário Resposta do sistema
    Clique no logotipo de um hotel para ler seus detalhes
    Exibir detalhes do hotel

    Scenario steps entered

Mais Alguma Coisa – Criando Wireframe Baseado em Cenário

Wireframeé um esboço da interface do usuário. Ajuda você a representar a tela e o fluxo de telas do sistema a ser desenvolvido, cedo na coleta de requisitos. Você pode associar wireframes às etapas em um cenário. Esta seção mostrará como utilizar a ferramenta de wireframe para adicionar um wireframe a uma etapa.

  1. Clique na primeira etapa.
    Select first step
  2. Mova o ponteiro do mouse para o triângulo verde no lado direito. Em seguida, clique em Definir Wireframe.
    Define wireframe
  3. Você vê a pane cinza aparecer no lado direito? Clique nela para selecionar o tipo de wireframe a criar.
    Create wireframe
  4. Na janela pop-up, selecione Site.
    Select wireframe type
  5. Clique Novo Wireframe de Site. Um novo wireframe aparece, com uma janela de navegador vazia. É onde você pode preparar o protótipo para o site.
  6. Antes de começarmos a adicionar diferentes componentes na janela do navegador, vamos redimensioná-la para torná-la menor. Clique no título da janela do navegador.
  7. Após clicar, os manipuladores de redimensionamento aparecem ao redor da janela do navegador para que você possa ajustar o tamanho da janela manualmente. Vamos tentar um método mais direto. Clique com o botão direito no título do navegador e selecione Tamanho do Navegador (1024 x 768) > 800 x 600 do menu suspenso.
    Resize wireframe
  8. Utilize as ferramentas de wireframe listadas na barra de ferramentas do diagrama para criar um wireframe como este:
    Wireframe created
  9. Volte ao editor de cenários clicando no botão triangular ao lado do título da etapa.
    Go back to scenario editor
    Concluído, e você pode ver a miniatura do seu wireframe aparecer no editor de cenários.
    Wireframe added

Referências:

Leave a Reply