Casos De Uso “Incluir” E “Estender”
Um caso de uso descreve como um usuário usa um sistema para atingir um objetivo específico. Um diagrama de caso de uso consiste no sistema, nos casos de uso e atores relacionados e os relaciona entre si para visualizar: o que está sendo descrito? ( sistema ), quem está usando o sistema? ( atores ) e o que os atores querem alcançar? ( casos de uso ), portanto, os casos de uso ajudam a garantir que o sistema correto seja desenvolvido capturando os requisitos do ponto de vista do usuário.
Estruturação de casos de uso
Os relacionamentos de caso de uso modelam as dependências entre os casos de uso no modelo de interação do sistema. Embora, casos de uso independentes possam representar adequadamente sistemas mais simples. No entanto, para representar sistemas complexos ou grandes, podemos precisar construir casos de uso complexos com a ajuda de dependências entre casos de uso. Estabelecer relacionamentos entre casos de uso permite a reutilização desses casos de uso que precisam ser definidos repetidamente, o que reduz o esforço do desenvolvedor.
A UML define três estereótipos para estruturar as associações de casos de uso.
O que é um caso de uso <<Incluir>>?
Um caso de uso de extensão é, efetivamente, um curso alternativo do caso de uso base. O caso de uso <<extend>> realiza isso inserindo conceitualmente sequências de ação adicionais na sequência do caso de uso base.
A hora de usar o relacionamento <<include>> é depois de ter concluído a primeira descrição de corte de todos os seus casos de uso principais. Agora você pode examinar os Casos de Uso e identificar sequências comuns de interação usuário-sistema.
- Quando um caso de uso é descrito como usando a funcionalidade de outro caso de uso, o relacionamento entre os casos de uso é denominado relacionamento de inclusão ou uso.
- Um caso de uso inclui a funcionalidade descrita em outro caso de uso como parte de seu fluxo de processo de negócios.
- Um relacionamento de uso de um caso de uso base para um caso de uso filho indica que uma instância do caso de uso base incluirá o comportamento especificado no caso de uso filho.
- Um relacionamento de inclusão é representado por uma seta direcionada com uma linha pontilhada. A ponta da seta aponta para o caso de uso filho e o caso de uso pai conectados na base da seta.
- O estereótipo “<<include>>” identifica o relacionamento como um relacionamento de inclusão.
Exemplo de Caso de Uso – Incluir Relacionamento
O relacionamento de inclusão inclui funcionalidade adicional não especificada no caso de uso base. O relacionamento <<Include>> é usado para incluir comportamento comum de um caso de uso incluído em um caso de uso base para suportar a reutilização de comportamento comum.
O que é um caso de uso <<Estender>>?
- Indica que um caso de uso de “Senha Inválida” pode incluir (sujeito ao especificado na extensão) o comportamento especificado pelo caso de uso base “Conta de Login” .
- Represente com uma seta direcionada com uma linha pontilhada. A ponta da seta aponta para o caso de uso base e o caso de uso filho é conectado na base da seta.
- O estereótipo “<<extends>>” identifica como um relacionamento de extensão
Estender Relacionamento
Os relacionamentos estendidos são importantes porque mostram funcionalidade opcional ou comportamento do sistema. O relacionamento <<extend>> é usado para incluir comportamento opcional de um caso de uso estendido em um caso de uso estendido. No exemplo acima, há um conector de extensão com um ponto de extensão “Senha inválida”.
Caso de uso abstrato e generalizado
O caso de uso geral é abstrato. Não pode ser instanciado, pois contém informações incompletas. O título de um caso de uso abstrato é mostrado em itálico.
Exemplo de Diagrama de Caso de Uso
Este exemplo de diagrama de caso de uso descreve um modelo de vários casos de uso de negócios (objetivos) que representam a interação entre um restaurante (sistema de negócios) e seus principais interessados (participantes de negócios e trabalhadores de negócios). Tendo identificado os casos de uso básicos na primeira rodada de cortes, talvez possamos construir ainda mais esses casos de uso com casos de uso “estender” e “incluir” na segunda rodada de revisões.