Diagrama de Tempo - apontes77/projetoApp_CMP1118 GitHub Wiki

Diagrama de Tempo

Conceitos básicos de diagramas de tempo

Alterações de um estado para outro são representadas por uma alteração no nível da linha de vida . Durante o período em que o objeto é um determinado estado, a linha do tempo é paralela a esse estado. Uma mudança de estado aparece como uma mudança vertical de um nível para outro. A causa da mudança, como é o caso em um diagrama de estado ou de sequência, é o recebimento de uma mensagem, um evento que causa uma mudança, uma condição no sistema ou mesmo apenas a passagem do tempo.

Lifeline

Uma Lifeline (linha de vida) em um diagrama de tempo forma um espaço retangular na área de conteúdo de um quadro. Lifeline é um elemento nomeado que representa um participante individual na interação. Geralmente, é alinhado horizontalmente para ler da esquerda para a direita.

Lifeline do estado no diagrama de tempo

Uma Lifeline de estado ou condição representa o conjunto de estados e horas válidos. Os estados são empilhados na margem esquerda da linha de vida de cima para baixo. A causa da mudança, como é o caso em um diagrama de estado ou de sequência, é o recebimento de uma mensagem, um evento que causa uma mudança, uma condição no sistema ou mesmo apenas a passagem do tempo.

Vários compartimentos

É possível colocar várias Lifeline de diferentes objetos no mesmo diagrama de tempo. Uma linha de vida acima da outra. As mensagens enviadas de um objeto para outro podem ser representadas usando setas simples. Os pontos inicial e final de cada seta indicam quando cada mensagem foi enviada e quando foi recebida.

Estado Lifeline

Uma Lifeline do estado mostra a alteração do estado de um item ao longo do tempo. O eixo X exibe o tempo decorrido em quaisquer unidades escolhidas enquanto o eixo Y é rotulado com uma determinada lista de estados. Uma linha de vida do estado é mostrada abaixo:

Lifeline e restrições

Podemos usar o comprimento de uma Lifeline para indicar quanto tempo o objeto permanece em um determinado estado, lendo-o da esquerda para a direita.

O exemplo abaixo mostra que o evento Login é recebido três unidades de tempo após o início da sequência. Para mostrar tempos relativos, você pode marcar uma instância específica no tempo usando um nome de variável. A figura marca a hora em que o evento sendMail é recebido como a hora.