Normalmente, os sinais são utilizados em sistemas dirigidos por eventos e ambientes de computação distribuída. Por exemplo, um sistema de comunicações pode conter uma classe Pager, cujos objetos aguardam por, ou respondem a, sinais de Page. Os sinais são diferentes de outros tipos de mensagens pois quando um objeto recebe um sinal, ele não precisa retornar nada, mas reage ao recebimento de um sinal de acordo com o comportamento especificado por sua recepções.
Assume-se que todos os sinais possuam uma operação send( ). Os atributos de um sinal representam os dados que ele carrega em sua operação de envio. Os sinais não podem ter nenhuma outra operação.
É possível incluir sinais nos diagramas de classe no modelo para representar as seguintes funções:
Um sinal possui um nome que descreve seu objetivo no sistema. Como a figura seguinte ilustra, a notação UML para um sinal é um retângulo com dois compartimentos.
