Tarefa: Estruturar o Modelo de Caso de Uso
Esta tarefa é onde o modelo de casos de uso é estruturado, para tornar os requisitos mais fáceis de compreender e de manter. Isso inclui alavancar a semelhança entre casos de usos e agentes e identificar o comportamento excepcional e opcional.
Disciplinas: Requisitos
Objetivo

A finalidade dessa tarefa é:

  • Extrair o comportamento dos casos de uso que precisam ser considerados casos de uso abstratos. Como exemplos desse comportamento estão o comportamento comum, o comportamento opcional, o comportamento excepcional e o comportamento que será desenvolvido nas iterações posteriores.
  • Localizar novos agentes abstratos que definem funções compartilhadas por diversos agentes.
Relacionamentos
FunçõesExecutor Primário: Executores Adicionais:
EntradasObrigatório:
    Opcional:
    • Nenhum
    Saídas
      Etapas
      Identificar os Requisitos Comuns

      A primeira etapa na estruturação do Modelo de Casos de Uso é entender os requisitos comuns a mais de um Caso de Uso. Revise cada caso de uso, tomando notas de quaisquer fatos comuns.

      Utilize essas notas nas etapas posteriores (criando casos de uso incluídos, estendidos e generalizados) para minimizar a redundância. A meta é tornar os requisitos mais compreensíveis e fáceis de manter, NÃO definir uma decomposição funcional que seja transportada para o design.

      A criação de novos casos de uso nem sempre é a melhor forma de manipulação dos casos de uso. Considere mover o conteúdo comum para outros produtos de trabalho de requisitos, como o GlossárioEspecificações Suplementares e referência, conforme necessária a partir dos casos de uso.

      Estabelecer Relacionamentos de Inclusão entre Casos de Uso

      Se um caso de uso contiver um segmento de comportamento no qual somente o resultado e não o método para obter o resultado, tem alguma importância para o restante do caso de uso, esse comportamento poderá ser fragmentado em um novo caso de uso de inclusão. O caso de uso original se tornará o caso de uso base em uma relação de inclusão com o caso de uso de inclusão. Consulte também Diretriz: Modelo de Casos de Uso e Diretriz: Relação de Inclusão.

      Um relação de inclusão entre dois casos de uso significa que uma instância de caso de uso que venha após a descrição do caso de uso base também precisará acompanhar a descrição do caso de uso de inclusão para que seja considerada completa.

      A relação de inclusão pode ajudar a esclarecer um caso de uso da seguinte maneira:

      • Isolando e encapsulando detalhes complexos para que eles não obscureçam o sentido real do caso de uso.
      • Melhorando a consistência através da inclusão do comportamento dos diversos casos de uso.

      Geralmente, mais de um caso de uso deve conter um caso de uso de inclusão para que valha a pena manter um caso de uso extra e a relação de inclusão.

      Somente o caso de uso base tem conhecimento do relacionamento entre os dois casos de uso. Nenhum caso de uso de inclusão sabe o que está incluído em outros casos de uso.

      Descreva a relação de inclusão especificando, em poucas palavras, a finalidade da inclusão, bem como o local do caso de uso base em que a inclusão será inserida.

      Ao descrever o fluxo de eventos do caso de uso base, você deve se referir à inclusão no local em que ela está inserida.

      Estabelecer Ralações de Extensão entre Casos de Uso

      Se um caso de uso possuir segmentos de comportamento de caráter opcional ou excepcional que não inclua nada na compreensão da finalidade principal do caso de uso, fragmente-os em um novo caso de uso de extensão. O caso de uso original se tornará um caso de uso base, com o qual o caso de uso de extensão manterá uma relação de extensão. Consulte também Diretriz: Modelo de Casos de Uso e Diretriz: Relação de Extensão.

      No caso de uso base, você declara pontos de extensão, que definem em que local do caso de uso base podem ser feitas extensões. Consulte também Diretriz: Caso de Uso.

      Os subfluxos complexos e o comportamento opcional são os primeiros candidatos a um particionamento em casos de uso de extensão. Geralmente, esse comportamento pode ser bastante complexo e difícil de descrever: incluí-lo no fluxo de eventos de um caso de uso pode dificultar a visão do "comportamento" normal. A extração do comportamento deve melhorar a compreensão do modelo de casos de uso.

      Certifique-se de que o fluxo de eventos do caso de uso base ainda está com seu sentido completo e pode ser compreendido por si só, sem que seja necessária nenhuma referência ao caso de uso de extensão.

      Somente o caso de uso de extensão tem conhecimento do relacionamento entre os dois casos de uso. O caso de uso base sabe somente que ele possui pontos de extensão, mas não sabe quais casos de uso de extensão estão utilizando esses pontos.

      Descreva, em breves palavras, cada relação de extensão que você definiu. Defina as condições que devem ser atendidas para que a extensão ocorra. Certifique-se de que você definiu o ponto de extensão no caso de uso base em que a extensão deve ser inserida.

      • Se você não definir nenhuma condição, isso significa que a extensão sempre será executada. 
      • Se o caso de uso de extensão tiver vários segmentos de comportamento a serem inseridos em diferentes pontos de extensão do caso de uso base, certifique-se de que definiu esses segmentos e o ponto de extensão para cada segmento do caso de uso base.
      Estabelecer Generalizações entre Casos de Uso

      Se dois ou mais casos de uso tiverem semelhanças na estrutura e no comportamento, você poderá fragmentar o comportamento comum para criar um novo caso de uso pai. Os casos de uso originais passarão a ser casos de uso filho nos relacionamentos de generalização com o pai. O caso de uso filho herda todo o comportamento descrito do caso de uso pai. Consulte também Diretriz: Modelo de Casos de Uso e Diretriz: Generalização de Casos de Uso.

      Um relacionamento de generalização entre dois casos de uso significa que, quando uma instância de caso de uso acompanha a descrição de um caso de uso filho, ela também precisa acompanhar a descrição do caso de uso pai para que seja considerada completa.

      Geralmente, para que valha a pena manter um caso de uso pai e um relacionamento de generalização com um filho, deve haver, pelo menos, dois casos de uso filho que herdam do mesmo pai. Uma exceção é se você tiver dois casos de uso em que um seja uma especialização do outro, mas ambos precisem ter instâncias independentes.

      Somente o caso de uso filho tem conhecimento do relacionamento entre os dois casos de uso. Nenhum caso de uso pai sabe quais casos de uso filho o estão especializando.

      Para ajudar outras pessoas a compreender o modelo, você deve descrever, em poucas palavras, o relacionamento de generalização. Explique por que você criou o relacionamento de generalização.

      No fluxo de eventos do caso de uso filho, você precisará explicar como o filho modificará as seqüências de comportamento herdadas inserindo novos segmentos de comportamento.

      Estabelecer Generalizações entre Agentes

      Os agentes terão características comuns que você deverá modelar utilizando as generalizações de agente. Essa parte do trabalho é melhor executada após as primeiras tentativas em um modelo de casos de uso.

      Escreva uma breve descrição das generalizações de agente e insira-as nos diagramas de casos de uso para obter mais esclarecimentos.

      Para obter informações adicionais, consulte Diretriz: Generalização de Agentes.

      Organize o Conteúdo do Modelo de Casos de Uso em Pacotes

      Se o modelo de casos de uso tem um número grande de elementos, você pode desejar considerar a organização dos casos de uso em pacotes de casos de uso. Consulte Diretriz: Pacote de Casos de Uso, para obter informações adicionais sobre quando considerar essa opção.

      Avaliar Seus Resultados

      Você deve discutir continuamente com o cliente a incorporação de relacionamentos de inclusão, extensão e generalização, para saber se eles estão compreendendo bem os casos de uso e agentes resultantes, e se concordam com suas descrições.

      Chegando neste ponto, analise o modelo de casos de uso para saber se o trabalhando está indo bem, mas não faça uma revisão detalhada do modelo. Você deve revisar e discutir, com o cliente e os usuários, os casos de uso e relacionamentos recém-incorporados, a fim de que eles tenham clara compreensão dos casos de uso e concordem com suas descrições.

      Para recomendações específicas sobre o que procurar durante a revisão, consulte Lista de Verificação: Modelo de Casos de Uso.

      Considerações de Teclas

      Para auxiliar na revisão do Modelo de Caso de Uso, talvez você queira gerar um relatório sintético do modelo de caso de uso. 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