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.