Diagrama de caso de uso
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. Segundo Ivar Jacobson, podemos dizer que um caso de uso é um "documento narrativo que descreve a sequência de eventos de um ator que usa um sistema para completar um processo". Um caso de uso representa uma unidade discreta da interação entre um ator e o sistema. Um caso de uso é uma unidade de um trabalho significante. Por exemplo: o "login para o sistema", "registrar no sistema" e "criar pedidos" são todos casos de uso. Cada caso de uso tem uma descrição da funcionalidade que será construída no sistema proposto. Um caso de uso pode "incluir" outra funcionalidade de caso de uso ou "estender" outro caso de uso com seu próprio comportamento.
Ator
O ator especifica um papel executado por um usuário ou outro sistema que interage com o assunto (sistema). O Ator deve ser externo ao sistema. Um ator deve ter associações exclusivamente para casos de uso, componentes ou classes a exceção que um ator possa herdar o papel de outro. Um ator é representado por um boneco palito (stick man). A identificação dos atores conta com um conjunto de questões auxiliares, como: quem utiliza, instala, inicia, mantém ou desliga o sistema; quais outros sistemas interagem com ele; quem fornece ou obtém informações; e se existem processos ou eventos que ocorrem de forma automática. Essas perguntas ajudam a mapear os diferentes papéis externos envolvidos no sistema, conforme descrito por Schneider e Winters (1998, apud VISUAL PARADIGM, s.d.).
Caso de uso
É uma especificação de um conjunto de ações executadas por um sistema, que contém um resultado observável. Caso de uso é representado por uma elipse, com o nome do caso de uso dentro ou abaixo. Se há limites do sistema no diagrama, o caso de uso deve ficar dentro. Para auxiliar na identificação dos casos de uso, a literatura propõe um conjunto de questões orientadoras, como: quais funções o ator deseja obter do sistema; se o sistema armazena informações e quais atores são responsáveis por criar, ler, atualizar ou excluir esses dados; se o sistema precisa notificar atores sobre alterações em seu estado interno; e se existem eventos externos que o sistema deve reconhecer, bem como os agentes responsáveis por informá-lo sobre esses eventos (SCHNEIDER; WINTERS, 1998, apud VISUAL PARADIGM, s.d.).
Interações entre atores não são mostradas no diagrama de caso de uso. Se esta interação é essencial para uma descrição coerente do comportamento desejado, talvez o limite do sistema ou caso de uso deva ser re-examinado. Alternativamente, interação entre atores pode fazer parte de suposições dos sistemas.
Generalização de atores
Uma popular relação entre atores é a generalização/especialização. Isto é útil para definir sobreposição de papéis entre atores. A notação é uma linha sólida com um triângulo em direção ao ator mais geral.
Relações entre casos de usos
Uma das formas de interação, um dado caso de uso pode incluir outro. Incluir é uma relação direta entre dois casos de usos, implicando que o comportamento do caso de uso incluído é inserido no comportamento do caso de uso inclusor. Esta relação indica uma obrigatoriedade do caso de uso incluir a funcionalidade do caso de uso incluído. Assim, sempre que o primeiro ocorrer obrigatoriamente o incluído ocorrerá. ALTERAR DADOS DO CLIENTE e INCLUIR CLIENTE, obrigatoriamente será necessário CONSULTAR DADOS DO CLIENTE. A seta pontilhada escrita <<include>> partirá de ALTERAR DADOS DO CLIENTE e de INCLUIR CLIENTE e apontará para CONSULTAR DADOS DO CLIENTE.
Exemplo de um Diagrama de Caso de Uso
O diagrama de casos de uso corresponde a uma visão externa do sistema e representa graficamente os atores, os casos de uso, e os relacionamentos entre estes elementos. Ele tem como objetivo ilustrar em um nível alto de abstração quais elementos externos interagem com que funcionalidades do sistema, ou seja, a finalidade de um diagrama de caso de uso é apresentar um tipo de diagrama de contexto que apresenta os elementos externos de um sistema e as maneiras segundo as quais eles as utilizam. A notação utilizada para ilustrar atores em um diagrama de caso de uso é a figura de um boneco, com o nome do ator definido abaixo dessa figura. Vale ressaltar que um ator nem sempre é um ser humano. É qualquer elemento externo que interage com o sistema (pessoas, organizações, outros sistemas, equipamentos).
Imagem: davisclick · BY-SA · Openverse
Para um bom entendimento tanto do desenvolvedor quanto do cliente, é muito importante que um diagrama de caso de uso seja definido corretamente, dito isso, algumas das melhores práticas a serem adotadas para isso são:


