Use cases: por que você precisa deles?
Para se criar um bom produto, uma das estratégias determinantes é colocar o cliente no centro de tudo. Ou seja, entender quais são os requisitos que farão um produto ser mais útil, prático e eficiente para os clientes é fundamental.
Essa é uma das grandes razões para se valer de use cases. Eles são fundamentais para conectar usuários, técnicos e desenvolvedores em um objetivo comum.
Os use cases apoiam o cliente na comunicação com desenvolvedores de software para ter certeza que o sistema desenvolvido será o esperado pelo cliente.
Continue a leitura e entenda mais sobre essa ferramenta importante no desenvolvimento de produtos de tecnologia.
O que são use cases?
De forma geral, use case é uma descrição de todas as maneiras que um usuário final poderia usar um sistema. Cada um desses usos são como solicitações e os casos descrevem o que o sistema produz a partir dessa solicitação.
Sobretudo, os casos de uso são um ponto de conexão e ferramenta de comunicação entre usuários finais, analistas de negócio e desenvolvedores. Eles são construídos a partir da simulação de como um cliente irá interagir com um produto ou sistema.
A partir disso, são construídos diagramas de modelo de caso de uso, ou seja, uma representação visual dos usuários de um produto, como eles interagem com o produto e o como o produto irá reagir.
Componentes dos use cases
Existem alguns componentes principais dos use cases. São eles:
Sistema — é o produto, serviço ou software. Exemplo: aplicativo de comida delivery.
Atores — é tudo aquilo que interage diretamente com o sistema, podendo ser pessoas, outros sistemas ou até o tempo. Por exemplo:
- Pessoas — são clientes, funcionários, técnicos, instaladores ou gerentes do sistema. São definidos a partir das interações que eles realizam com o sistema.
- Sistema — são qualquer dispositivo automatizado com o qual o sistema fará interface. Isso inclui outros computadores e dispositivos de interface
- Tempo — são iniciadores baseados em tempo ou acionadores de atividade de processamento para o sistema. Os temporizadores comuns são semanais, diários e mensais, por exemplo: todas as sextas-feiras, às 18h, um relatório de status é gerado.
Exemplo: cliente solicita a entrega de um prato específico.
Cenário — é uma sequência específica de ações que ocorrem entre os atores e o sistema em discussão.
Exemplo: cliente navega pelo aplicativo e seleciona a refeição que deseja.
Casos de uso — são os processos que acontecem dentro do sistema, a partir de um escopo com início, meio e fim. Geralmente, os casos de uso são nomeados com um verbo ativo e um substantivo, como “Cumprir Pedido” ou “Retornar Item”.
Para definir o escopo do sistema, é necessário descobrir todos os casos de uso possíveis para todos os atores previamente definidos, o que ajuda a definir o escopo do sistema. Um caso de uso descreve os cenários de sucesso e falha que pode ocorrer quando os atores interagem com o sistema
Exemplo: este caso de uso ilustra como o cliente e o funcionário do restaurante (os atores) interagem com o aplicativo de entrega (o sistema) e o resultado esperado de cada interação.
Isso ajuda a esboçar uma estrutura para o que é esperado no estágio de desenvolvimento do projeto.
O que é um modelo de use case?
Para entender completamente todas essas interações, pode ser necessário criar um modelo de caso de uso, que é a representação visual das interações entre atores e o sistema. Nessas visualizações, existem três componentes principais:
- Sistema — representado por um retângulo;
- Atores — são mostrados como pessoas palitos;
- Casos de uso — texto dentro da caixa oval.
As linhas sólidas e tracejadas representam a conexão entre os atores e os casos de uso do sistema. Abaixo, você confere um exemplo de como um diagrama de modelo de uso pode ser aplicado:
Os diagramas de modelo de caso de uso são usados para:
- Visualizar o fluxo e o comportamento do sistema;
- Ilustrar a funcionalidade do sistema;
- Representar as principais interações do usuário do sistema.
Dependendo do sistema, um diagrama de modelo de caso de uso pode variar em complexidade, mostrando associações básicas ou expandindo para mostrar várias exceções.
Quais são os benefícios de se utilizar um use case?
De forma geral, os casos de uso agregam valor porque ajudam a explicar como o sistema deve se comportar e, no processo, também ajudam a debater o que pode dar errado. Entre alguns dos benefícios, podemos citar:
- Como uma técnica centrada no usuário, os casos de uso ajudam a garantir que o sistema seja desenvolvido a partir das necessidades do usuário;
- São uma técnica poderosa para a documentação de requisitos funcionais dos sistemas desenvolvidos;
- São fáceis de entender e fornecem uma excelente maneira de se comunicar com clientes e usuários;
- Podem ajudar a gerenciar a complexidade de grandes projetos decompondo o problema em funções principais e especificando aplicativos da perspectiva dos usuários;
- Ajudam a fornecer a justificativa para as mensagens que unem os objetos e as classes;
- Fornecem uma boa base para a verificação dos modelos de nível superior e para a validação dos requisitos funcionais;
- Os casos de uso fornecem um meio objetivo de acompanhamento do projeto no qual o valor agregado pode ser definido em termos de casos de uso implementados, testados e entregues.
Como aplicar um use case em 8 etapas?
Para aplicar um use case, você pode usar as seguintes etapas:
1. Identifique quem são os usuários do sistema;
2. Escolha um desses usuários para ser o seu ator;
3. Defina o que esse usuário deseja fazer no sistema. Cada ação se torna um caso de uso;
4. Para cada caso de uso, decida sobre o curso normal dos eventos quando esse usuário estiver usando o sistema;
5. Descreva o curso básico na descrição do caso de uso. Descreva-o utilizando a regra da ação do usuário e, depois, da ação do sistema em resposta ao usuário;
6. Quando o curso básico for descrito, considere cursos alternativos de eventos e adicione-os para ampliar o caso de uso;
7. Procure por semelhanças entre os casos de uso. Extraia-os e anote-os como casos de uso comuns do curso;
8. Repita as etapas de 2 a 7 para todos os outros usuários.
Uma vez que um modelo de caso de uso tenha sido desenvolvido, ele pode ser usado para conduzir muitos outros aspectos do desenvolvimento de software, incluindo planejamento de projeto, modelos de objetos, definições de casos de teste e documentação do usuário.
Quer oportunidades de ter os use cases no seu dia a dia, na prática? Acesse o banco de talentos da Mosaico e inscreva-se em oportunidades incríveis de trabalho. Esperamos você!