Tarefa: Localizar Atores e Casos de Uso
Essa tarefa é onde os agentes e casos de uso são identificados para suportar os requisitos que estão sendo implementados. Identificar os agentes e os casos de uso explicitamente define o escopo do sistema.
Disciplinas: Requisitos
Objetivo

A finalidade dessa tarefa é:

  • Definir o escopo do sistema - o que será tratado pelo sistema e o que será tratado fora dele.
  • Definir quem e o que interagirá com o sistema.
  • Delinear a funcionalidade do sistema.
Relacionamentos
Descrição Principal

Há uma técnica muito bem sucedida que pode ser utilizada para localizar os agentes e os casos de uso para manter um Workshop de Casos de Uso.

Etapas
Localizar Agentes

A localização de agentes é um dos primeiros passos da definição do uso do sistema. Cada tipo de fenômeno externo com o qual o sistema deverá interagir é representado por um agente. Para localizar os agentes, faça as seguintes perguntas:

  • Quais grupos de usuários necessitam de ajuda do sistema para executar tarefas?
  • Quais grupos de usuários são necessários para executar as funções básicas mais óbvias do sistema?
  • Quais grupos de usuários deverão executar funções secundárias, como manutenção e administração do sistema?
  • O sistema interagirá com algum sistema externo de hardware ou software?

Qualquer indivíduo, grupo ou fenômeno que se encaixe em uma ou mais dessas categorias é uma sugestão de agente.

Para determinar se possui os agentes (humanos) adequados, você poderá tentar nomear duas ou três pessoas que podem atuar como agentes e ver se o seu conjunto de agentes é suficiente para as necessidades deles. Para obter informações adicionais sobre o que constitui um agente, consulte Diretriz: Agente.

Inicialmente, talvez seja difícil localizar os agentes mais adequados. Além disso, é provável que você não localize todos eles de imediato porque ainda não localizou todos os casos de uso. Trabalhar com os casos de uso é a única tarefa que permite uma compreensão mais detalhada do ambiente do sistema e da forma como ele interage com o sistema. Quando você chegar nessa etapa, convém revisar o modelo original, pois há uma tendência inicial de modelar um número excessivo de agentes. Tenha cuidado ao alterar agentes; as mudanças efetuadas também podem afetar os casos de uso. Lembre-se de que qualquer modificação nos agentes constitui uma alteração importante nas interfaces e no comportamento do sistema. Se você desenvolveu um modelo de casos de uso de negócios e um modelo de análise de negócios, poderá utilizá-los como origem para identificar os agentes principais.

O nome do agente deverá indicar claramente a função dele. Certifique-se de que haja um risco mínimo, em uma etapa posterior, de confundir o nome de um agente com outro.

Para definir cada agente, forneça uma descrição resumida que inclua a área de responsabilidade dele e o uso que ele fará do sistema. Como os agentes representam elementos fora do sistema, não é necessário descrevê-los detalhadamente. Consulte também a seção Descrição Resumida em Diretriz: Agente.

Localizar Casos de Uso

Quando a sua primeira descrição dos agentes estiver completa, o passo seguinte é procurar os casos de uso do sistema. Os primeiros casos de uso são muito preliminares; certamente, você precisará alterá-los algumas vezes até estabilizá-los. Se a visão ou os requisitos do sistema forem deficientes ou se a análise do sistema for vaga, a funcionalidade dele será confusa. Dessa forma, pergunte sempre a si mesmo se localizou os casos de uso corretos. Além disso, você deverá estar preparado para adicionar, remover, reunir e dividir os casos de uso antes de chegar a uma versão final. Após descrevê-los com detalhes, você os compreenderá melhor.

A melhor forma de identificar casos de uso é considerar o que cada agente exige do sistema. Lembre-se de que o sistema existe apenas para seus usuários; portanto, deve se basear nas necessidades deles. Você reconhecerá muitas das necessidades dos agentes através dos requisitos funcionais especificados no sistema. Para cada agente, humano ou não, faça a si mesmo estas perguntas:

  • Segundo o agente, quais são as principais tarefas a serem executadas pelo sistema?
  • O agente criará, armazenará, alterará, removerá ou lerá dados no sistema?
  • O agente precisa informar o sistema sobre mudanças externas repentinas?
  • O agente precisa estar informado sobre certas ocorrências no sistema?
  • O agente inicializará ou desligará o sistema?

As respostas a essas perguntas representam os fluxos de eventos que identificam sugestões de casos de uso. Nem todas constituem casos de uso distintos; algumas podem ser modeladas como variantes do mesmo caso de uso. Nem sempre é fácil saber o que é uma variante e o que é um caso de uso separado e distinto. No entanto, isso ficará mais fácil quando você descrever os fluxos de eventos com detalhes.

Com exceção dos requisitos, um modelo empresarial da sua organização (também chamado de modelo de negócios) é uma fonte de entrada valiosa para determinar casos de uso. O modelo empresarial descreve como o sistema de informações pode ser incorporado às operações existentes e, assim, fornece uma visão razoável das adjacências do sistema. Você também localizará conceitos que precisam ser definidos no modelo corporativo porque ele contém os "objetos de negócios" da corporação. Se você tiver seguido o workflow  Modelagem de Negócios , você terá um  modelo de caso de uso de negócios  e um  modelo de análise de negócios  a ser utilizado como entrada.

Um sistema pode ter diversos modelos de casos de uso. A melhor forma de localizar o modelo "mais eficiente" é desenvolver dois ou três modelos, escolher um deles e, então, desenvolvê-lo mais adiante. O desenvolvimento de diversos modelos alternativos também ajuda a compreender melhor o sistema.

Após descrever o seu primeiro modelo de casos de uso, você deverá verificar se ele abrange todos os requisitos funcionais. Examine os requisitos cuidadosamente para assegurar que todos os casos de uso satisfaçam a todos os requisitos.

Para obter informações adicionais sobre a definição de caso de uso e a forma de localizá-lo, consulte Diretriz: Modelo de Caso de Uso e Diretriz: Caso de Uso.

Nomear e Descrever Resumidamente os Casos de Uso Encontrados

Cada caso de uso deve ter um nome que indique o que é alcançado pelas suas interações com os agentes. Talvez o nome precise ter várias palavras para ser entendido. Dois casos de uso não podem ter o mesmo nome. Consulte também a seção Nome em Diretriz: Caso de Uso.

Para definir cada caso de uso, descreva-o resumidamente. À medida que você escreve a descrição, consulte o glossário e, se necessário, defina novos conceitos. Consulte também a seção Descrição Resumida em Diretriz: Caso de Uso.

Descrever o Fluxo de Eventos

Neste ponto, prepare também um primeiro rascunho do fluxo de eventos do caso de uso. Descreva o fluxo de eventos de cada caso de uso como breves instantes de desempenho, mas não entre em detalhes. A pessoa que, posteriormente, especificar o caso de uso - mesmo que seja você - precisará dessa descrição passo a passo. Comece com a descrição do fluxo de eventos básico e, depois de chegar a um acordo sobre ele, adicione fluxos alternativos.

Exemplo:

A descrição passo a passo inicial do fluxo de eventos do caso de uso Reciclar Itens no Sistema de Máquina de Reciclagem pode ser assim:

  • O cliente pressiona o botão "Iniciar".
  • O cliente insere itens de depósito.
  • O sistema verifica o tipo dos itens de depósito inseridos.
  • O sistema aumenta o total do dia dos tipos de itens recebidos.
  • O cliente pressiona o botão "Recebimento".
  • O sistema imprime o recibo.
Reunir Requisitos Adicionais

Alguns dos requisitos do sistema não podem ser alocados para casos de uso específicos; colete-os nas Especificações Suplementares (consulte Produto de Trabalho: Especificações Suplementares).

Descrever Como Agentes e Casos de Uso Interagem

Visto que é importante mostrar como os agentes se relacionam com o caso de uso, você deverá, ao localizar um caso de uso, estabelecer quais agentes interagirão com ele. Para fazer isso, defina uma associação de comunicação que seja navegável no mesmo sentido da transmissão de sinais entre o agente e o caso de uso.

As transmissões de sinais geralmente ocorrem nos dois sentidos. Quando for o caso, permita que as associações de comunicação sejam navegáveis nos dois sentidos. Defina, no máximo, uma associação de comunicação para cada par de agente e caso de uso.

Você também deverá descrever resumidamente cada associação de comunicação definida.

Para obter informações adicionais sobre associações de comunicações, consulte Diretriz do Produto de Trabalho: Associação de Comunicação.

Empacotar Casos de Uso e Agentes

Se o número de agentes ou casos de uso crescer muito, divida-os em pacotes de casos de uso para simplificar a manutenção do modelo de casos de uso. Isso também facilita a compreensão desse modelo e simplifica a atribuição de responsabilidades nele, permitindo que os desenvolvedores sejam responsáveis por pacotes de casos de uso ou agentes.

Algumas formas alternativas de empacotar casos de uso podem se basear nas situações em que eles:

  • Interagem com o mesmo agente.
  • Possuem relacionamentos de inclusão ou extensão uns com os outros.
  • São todos opcionais e são oferecidos pelo sistema em conjunto ou não são oferecidos.

Você pode escolher outras formas; no entanto, para manter o modelo intuitivo, é importante utilizar uma estratégia clara ao efetuar o empacotamento.

Para obter informações adicionais sobre pacotes de casos de uso, consulte Diretriz do Produto de Trabalho: Pacote de Caso de Uso.

Apresentar o Modelo de Casos de Uso em Diagramas

É possível ilustrar relacionamentos entre casos de uso e agentes, bem como entre casos de uso relacionados, em diagramas do modelo de casos de uso. Esses diagramas podem conter o seguinte:

  • Agentes que pertencem ao mesmo pacote de caso de uso.
  • Um agente e todos os casos de uso com os quais interage.
  • Casos de uso que tratam as mesmas informações.
  • Casos de uso utilizados pelo mesmo grupo de agentes.
  • Casos de uso que são executados freqüentemente em uma seqüência.
  • Casos de uso que pertencem ao mesmo pacote de caso de uso.
  • Os casos de uso mais importantes. Um diagrama desse tipo pode funcionar como um sumário do modelo, e é provável que seja incluído na visão dos casos de uso.
  • Casos de uso desenvolvidos juntos (no mesmo incremento).

Cada diagrama deve pertencer a um pacote apropriado no modelo de casos de uso.

Para obter informações adicionais sobre diagramas de casos de uso, consulte Diretriz: Diagrama de Caso de Uso.

Desenvolver uma Pesquisa de Opinião do Modelo de Casos de Uso

Nessa etapa você desenvolve a descrição da pesquisa de opinião do modelo de casos de uso.  Em sua pesquisa de opinião, assegure-se de incluir o seguinte:

  • Seqüências normais em que os casos de uso são empregados pelos usuários.
  • Funcionalidade não tratada pelo modelo de casos de uso.

Para obter informações adicionais sobre a descrição da pesquisa de opinião de modelo de casos de uso, consulte a seção de descrição da pesquisa de opinião em Diretriz: Modelo de Caso de Uso.

Avaliar Seus Resultados

Nesta etapa, consulte o modelo de casos de uso para verificar se o trabalho está na direção certa, mas não efetue uma revisão detalhada. Convém também considerar verificar o modelo de caso de uso enquanto você estiver trabalhando nele.  Para recomendações específicas sobre o que procurar, consulte Lista de Verificação: Modelo de Caso de Uso.

É importante que as pessoas fora da equipe de desenvolvimento (por exemplo, usuários e clientes) aprovem o modelo de casos de uso nesta etapa. Portanto, você deve envolver os usuários e o cliente na revisão do modelo de caso de uso, antes de concluir essa tarefa. Você pode utilizar a pesquisa de opinião do modelo de caso de uso e seus diagramas de caso de uso criados na etapa anterior como um guia em suas discussões.

As partes interessadas deverão determinar:

  • Se todos os casos de uso necessários foram identificados.
  • Se algum caso de uso desnecessário foi identificado.
  • Se o comportamento de cada caso de uso ocorreu na ordem certa.
  • Se o fluxo de eventos de cada caso de uso é o mais completo possível nesta etapa.
  • Se a descrição do relatório sintético do modelo de casos de uso permite a sua compreensão.
Considerações de Teclas
Ao executar a etapa Desenvolver um Relatório Sintético do Modelo de Caso de Uso, talvez você queira gerar o relatório sintético. Para obter mais informações, consulte o Relatório: Relatório Sintético do Modelo de Caso de Uso e Mentor de Ferramenta: Criando um Relatório Sintético do Modelo de Caso de Uso Utilizando o Rational SoDA.
Informações Adicionais