
O diagrama de caso de uso é um artefato visual da linguagem de modelagem padrão de software, a UML (Unified Modeling Language), um framework muito conhecido e utilizado pelas melhores empresas de desenvolvimento de software.
Este diagrama juntamente com os demais artefatos fornecidos por esta linguagem de e notação de software possibilitam que a execução e o gerenciamento de um projeto de desenvolvimento de software seja padronizado e detalhadamente documentado.
Pra que serve o diagrama de casos de uso?
Através da modelagem de um diagrama de caso de uso, é possível representar os requisitos de um sistema, sejam estes requisitos funcionais ou não funcionais.
O correto uso da linguagem de notação (ou ainda chamada diagramação) UML e o diagrama de casos de uso durante o levantamento de requisitos de um sistema auxilia no entendimento da lógica do sistema e do negócio envolvido.
O diagrama de caso de uso descreve a funcionalidade proposta para um novo sistema que será projetado, é uma excelente ferramenta para o levantamento dos requisitos funcionais do sistema.
Em projetos que utilizam notações visuais em seu processo de desenvolvimento, a incidência de refluxos durante as fases de arquitetura, desenvolvimento e testes tendem a serem menores.

Mesmo que a diagramação dos casos de uso seja uma tarefa mais comum do analista de requisitos, é possível também que sua elaboração seja feita pelo analista de negócios da equipe.
A importância do uso dos diagramas UML
Quando elaborados por analistas que dominam a linguagem de notação UML, os casos de uso tornam-se uma importante ferramenta de documentação e validação de requisitos.
A utilização de diagramas de casos de uso pode (deve) ser combinada com o documento de especificação de requisitos utilizado pela equipe, sendo fundamental para a engenharia de requisitos atual.
O entendimento de diagramas UML não apresenta maiores dificuldades, já que seus elementos e simbologia são altamente lúdicos.
Entretanto, mesmo considerando a facilidade de entendimento é necessário que os envolvidos tenham domínio da notação UML. Caso contrário a utilização de tais diagramas pode impor riscos graves para o projeto.
Utilizando UML e Padrões de Craig Larman
Um literatura recomenda a todos os profissionais que desejam compreender melhor e utilizar de forma mais eficiente os diagramas UML é o livro “Utilizando UML e Padrões” do autor Craig Larman.
Você pode fazer o download gratuito do livro em: Livro/PDF: Utilizando UML e Padrões de Craig Larman

Componentes do diagrama de caso de uso
Todo diagrama de caso de uso é composto por elementos que indicam entidades, requisitos, processos, restrições e atuadores. Graficamente existe a representação por:
- Atores
- Casos de Uso (requisitos de sistema ou negócio)
- Relacionamento de inclusão (include)
- Relacionamento de extensão (extend)
- Relacionamento de herança (pattern)
Através destes três tipos de representação é possível elaborar modelagens complexas e detalhadas da execução de determinada rotina, função ou condição em um software.

Atores do caso de uso
É toda e qualquer entidade que, durante a execução de determinada tarefa, rotina ou função interage com sistema ou algum artefato de saída por ele produzido.
Essa definição do ator de um caso aplica-se para sistemas de software ou sistemas de negócios. A representação gráfica do ator é feita por um boneco de linhas retas e um círculo representando sua cabeça, no estilo “boneco palito”.
-
Representação de um “ator” em um diagrama de casos de uso uml.
Requisitos no caso de uso
É a representação de toda e qualquer interação com o sistema (seja ele um software ou não). Um caso de uso pode representar uma interação com um ou mais atores, uma interação com um ou mais casos de uso adicionais.
Ainda é correto afirmar que um caso de uso pode contem um requisito de sistema, seja ele um requisito funcional ou não funcional.
Um caso de uso pode também representar uma interação com outros casos de uso e com um ou vários atores simultaneamente. A representação padrão é um círculo contendo em seu interior o título do caso de uso.
-
Representação de um “caso de uso” em um diagrama de caso de uso uml.
Indicadores de relacionamento:
Em um diagrama de caso de uso elaborado na linguagem UML existem três tipos de relacionamentos possíveis, include, extend e herança.
Os relacionamentos entre casos de uso do tipo include e extend são representados por uma linha pontilhada com seta, já os relacionamentos de herança são representados por uma linha sólida com seta.
Include ou Inclusão
Indica que o tipo de relacionamento entre dois casos de uso implica na obrigatoriedade da execução do caso de uso que está sendo incluído no caso de uso base.
Exemplo de caso de uso include
De forma simples e genérica podemos dizer que: quando um caso de uso “A” possui relacionamento do tipo include com o caso de uso “B”, sua execução deverá também executar o caso de uso “B”.
-
Representação de um relacionamento “include” em um diagrama de caso de uso uml.
Extend ou Extensão
Este tipo de relacionamento indica que dois ou mais casos de uso relacionados podem ou não executar o caso de uso que recebe o relacionamento do tipo extend.
Exemplo de caso de uso extend
O caso de uso “H” possui relacionamento do tipo extend com o caso de uso “P”, tal relacionamento significa que ao executar o caso de uso “H” pode-se ou não requisitar a execução do caso de uso “P”.
De forma objetiva, podemos afirmar que um relacionamento extend indica que a execução do caso de uso relacionado é opcional, não implicando no sucesso da execução do caso de uso base.
-
Representação de um relacionamento “extend” em um diagrama de caso de uso uml.
Herança e generalização
O relacionamento do tipo herança ou ainda chamado de patern, é um relacionamento possível entre dois ou mais atores de um caso de uso.
Entretanto a linguagem UML não prevê explicitamente o relacionamento de herança entre casos de uso. É muito comum encontrar diagramas de caso de uso onde o analista realizou essa ligação não permitida, dessa forma é necessário atenção durante a criação dos relacionamentos do caso de uso.
Quando dois ou mais atores de um diagrama de caso de uso estão relacionados através da representação gráfica de herança, indica que o ator que solicita a herança de outro ator, deve herdar todas as permissões e características do ator que recebe o relacionamento.
Este tipo de ligação entre atores é extremamente útil para o reaproveitamento de características em diagramas que representam sistemas complexos ou grandes cenários de interação.
Exemplos de casos de uso
Uma vez que tenhamos bem claro quais são os componentes de um diagrama de caso de uso vamos entender como ele é elaborado.
Abaixo mostraremos um exemplo de diagrama de caso de uso extremamente simples, apenas para representar seu uso.
Não se preocupe, mesmo que pareça ter pouco sentido, o diagrama é muito fácil de entender e útil.
Exemplo de relacionamento de herança (pattern)
O diagrama acima é composto por dois atores diferentes e cinco casos de uso distintos. Logo de início, podemos observar que entre o ator “Cliente” e o ator “Usuário” existe um relacionamento de herança, indicando que o “Cliente” herdará todas as atribuições e permissões do ator “Usuário”.
Exemplo de relacionamento de execução
O caso de uso “Realizar cadastro” possui um relacionamento de execução com o ator “Usuário”, indicando que tal ator pode solicitar o caso de uso.
Exemplo de relacionamento include e extend
O caso de uso “Consultar Cardápio” também é acionado pelo ator “Usuário”. Diferente do caso de uso anterior, este possui um relacionamento do tipo include com o caso de uso “Efetuar login”.
Ele indica que para a execução do “Consultar cardápio” obrigatoriamente o caso de uso “Efetuar login” deve ser executado.
Este caso de uso possui ainda um relacionamento do tipo extend com o caso de uso “Realizar pedido”. O extend entre os dois casos de uso citados, indica que o caso de uso “Realizar pedido” pode ou não ser executado em decorrência do seu extensor (“Consultar cardápio”).
Por último existe o caso de uso “Efetuar pagamento”, que é incluído (relacionamento tipo include) pelo caso de uso “Realizar pedido”.
Este relacionamento está definindo a obrigatoriedade da execução do incluído para a finalização do caso de uso base.
Conheça e aprenda mais sobre o processo de gerenciamento de projetos e análise de requisitos de software. Recomendamos a leitura dos seguintes artigos:
Parabéns pelo conteúdo muito bem explicado.