DGERT   APCER
Relações de compromisso

Como Utilizar as Setas Direccionais nas Linhas de Comunicação/Associação Entre Actores e Casos de Uso


Quando se olha para os diagramas de casos de uso provenientes de várias fontes constata-se frequentemente alguma falta de consistência quanto à presença ou inexistência de setas nas relações de comunicação/associação entre actores e casos de uso nos diagramas. De facto, este aspecto tem sido alvo de discussões entre os especialistas da matéria. A Unified Modeling Language (UML) não é prescritiva relativamente a esta questão, pelo que este artigo representa uma proposta, conjuntamente com algumas opções aceitáveis e conformes à UML.

1. A seta direccional só deve ser colocada na linha de comunicação/associação que vai do actor que inicia o caso de uso para o caso de uso iniciado, de modo a mostrar a direcção da iniciação (Figura 1). Todas as outras linhas de comunicação/associação não têm setas direccionais.

Figura1

Figura 1. Opção 1 - setas direccionais apenas nas linhas de comunicação/associação que vão do actor para o caso de uso.

2. Não colocar setas direccionais nas linhas de comunicação/associação entre os actores e os casos de uso (Figura 2). Se quisermos ser rigorosos, é esta a convenção na UML 1.3. No entanto, as setas direccionais são permitidas pelo standard se forem necessárias por uma questão de clareza. Na nossa opinião, a inexistência de setas dá um aspecto demasiado estático ao diagrama e não fornece a informação adicional que é disponibilizada pelas setas da opção 1. A opção inicial (Figura 1) comunica melhor o valor obtido e por qual actor.

Figura2

Figura 2. Opção 2 - inexistência de setas direccionais nas linhas de comunicação/associação entre actores e casos de uso.

3. Colocar setas direccionais em todas as linhas de comunicação/associação entre actores e casos de uso, de modo a mostrar a direcção da iniciação (açor para caso de uso ou caso de uso para actor (Figura 3).

Figura3

Figura 3. Opção 3 - setas direccionais em todas as linhas de comunicação/associação do actor para o caso de uso e do caso de uso para o actor.

4. Mostrar uma seta direccional apenas nas comunicações de um sentido que não têm resposta prevista. Como exemplo deste caso podemos referir a saída para uma impressora, apesar de muitas impressoras também terem uma função para comunicar o estado da impressão.

Poderíamos apresentar aqui mais opções, mas estas parecem-nos ser as principais. Apresentamos a seguir dois tópicos de tipo notas e cuidados a ter:

  • Assegure-se de que uma seta direccional não vai ser percebida como indicando o fluxo de dados. Só deve ser utilizada para mostrar a (iniciação da) comunicação.
  • Na nossa opinião, as setas bidireccionais (com dois sentidos) só contribuem para sobrecarregar o diagrama. A comunicação nos dois sentidos é um pressuposto básico por omissão.
    A regra

Depois do que referimos atrás, podemos avançar com algumas regras comuns. "As relações de associação entre as classes de actores e as classes de casos de uso são utilizadas para indicar que o actor participa e comunica com o sistema que contém o caso de uso. As relações de associação são apresentadas sob a forma de linhas contínuas ou trajectos. Podem ser utilizadas setas para indicar quem inicia a comunicação na interacção. Se uma seta apontar para um caso de uso, o actor que se encontra na outra extremidade da associação inicia a interacção com o sistema. Se uma seta apontar para um actor, o sistema inicia a interacção com o actor que se encontra na outra extremidade da associação".

Baseado num texto de Leslee Probasco com o título "What About Arrowheads on Communication-Association Lines Between Actors and Use Cases?"

Topo
Pesquisa
Agenda
Destaques