3.3. Modelando eventos com tempo decorrido
Muitas vezes uma mudança de estado é acionada devido à passagem do tempo. Por exemplo, em sistemas web é muito comum que se o usuário não executar uma operação dentro de um determinado tempo, ele é desconectado do sistema e um novo login é necessário.
Em sistemas de compra, após você selecionar um produto para comprar, ele fica reservado para você concluir a compra; entretanto, passado determinado tempo, se você não concluir a comprar, sua reserva é cancelada e o produto fica disponível para outro cliente.
Para modelar o tempo como uma condição de mudança de um estado de um objeto é comum utilizarmos expressões que nos remete à passagem do tempo, como as expressões “após”, “depois de”, “passados” etc. Após a expressão de condição de tempo, entre parêntesis, adicionamos a unidade de tempo necessária para acontecer a condição.
Exemplo: para modelar uma mudança de estado que ocorre após 5 minutos de inatividade do sistema, poderíamos utilizar a expressão “após (5 minutos de inatividade)”. Dessa forma, teríamos o seguinte diagrama hipotético: