Introdução aos Diagramas de Tempo UML
Os diagramas de tempo UML (Linguagem de Modelagem Unificada) são uma forma especializada de diagramas de interação usados para ilustrar o comportamento de objetos ao longo de um período específico. Eles se concentram nas restrições de tempo e na sequência de eventos, tornando-os particularmente úteis para modelar sistemas em tempo real e análise de desempenho. Este tutorial irá guiá-lo pelos fundamentos dos diagramas de tempo UML, incluindo seu propósito, elementos principais e como criá-los e interpretá-los.
Propósito dos Diagramas de Tempo UML
Os diagramas de tempo UML servem vários propósitos críticos no design e análise de sistemas:
- Modelagem de Sistemas em Tempo Real: São essenciais para o design de sistemas em que o tempo é um fator crucial, como sistemas embarcados, protocolos de comunicação e aplicações críticas em desempenho.
- Análise de Restrições de Tempo: Eles ajudam a compreender e analisar os aspectos temporais das interações entre objetos, garantindo que todas as restrições de tempo sejam atendidas.
- Análise de Desempenho: São usados para avaliar o desempenho de sistemas ao modelar o tempo de eventos e interações.
Elementos Principais dos Diagramas de Tempo UML
Linha de Vida
Uma linha de vida representa um participante individual na interação, como um objeto ou ator. É representada por uma barra horizontal que mostra a existência do participante ao longo do tempo.
Linha de Tempo de Estado ou Condição
Uma linha de tempo de estado ou condição representa o estado de um objeto ou uma condição que deve ser atendida. É mostrada como uma barra horizontal com segmentos que indicam diferentes estados ou condições ao longo do tempo.
Restrição de Duração
Uma restrição de duração especifica a duração dentro da qual uma condição deve ser atendida. É representada por uma barra horizontal com duas linhas verticais que indicam o início e o fim da duração.
Restrição de Tempo
Uma restrição de tempo especifica um ponto no tempo em que uma condição deve ser atendida. É representada por uma linha vertical que intersecta a linha de vida nesse momento específico.
Ocorrência de Destruição
Uma ocorrência de destruição representa o ponto no tempo em que um objeto é destruído. É representada por um “X” no final da linha de vida.
Notação
A notação nos diagramas de tempo UML inclui rótulos e anotações que fornecem informações adicionais sobre as restrições de tempo e condições.
Criando um Diagrama de Tempo UML
Passos para Criar um Diagrama de Tempo UML
- Identificar Participantes: Determine os objetos, atores ou entidades que participarão da interação.
- Definir Linhas de Vida: Desenhe barras horizontais para representar as linhas de vida dos participantes.
- Adicionar Estados ou Condições: Divida as linhas de vida em segmentos para representar diferentes estados ou condições ao longo do tempo.
- Especificar Restrições de Duração: Adicione barras horizontais com linhas verticais para indicar a duração em que as condições devem ser atendidas.
- Especificar Restrições de Tempo: Adicione linhas verticais que cruzam as linhas de vida para indicar pontos específicos no tempo em que as condições devem ser atendidas.
- Adicionar Ocorrências de Destruição: Coloque um “X” no final da linha de vida para representar a destruição do objeto.
- Rotular e Anotar: Adicione rótulos e anotações para fornecer informações adicionais sobre as restrições de tempo e condições.
Exemplo: Diagrama de Tempo de Interação Web
Propósito
Modelar os aspectos de tempo de uma interação web, com foco específico no tempo de ciclo de solicitação e resposta web.

Participantes
- Usuário da Web: A pessoa que interage com a web.
- Navegador da Web: O navegador usado para acessar a web.
- Resolver DNS: O servidor que resolve nomes de domínio em endereços IP.
- Servidor Web: O servidor que hospeda o conteúdo web.
Diagrama de Tempo
- Linha de Vida do Usuário da Web:
- Estados/Condições:
- Inativo: O usuário não está interagindo ativamente com a web.
- URL: O usuário insere uma URL no navegador da web.
- Aguardando: O usuário está esperando que a página da web carregue.
- Visualizando: O usuário está visualizando a página da web.
- Estados/Condições:
- Linha de vida para o navegador da web:
- Estados/Condições:
- Inativo: O navegador não está processando ativamente uma solicitação.
- Processando: O navegador está processando a entrada do usuário ou a resposta do servidor.
- Aguardando: O navegador está esperando uma resposta do servidor.
- Eventos/Estímulos:
- Resolver URL: O navegador resolve a URL para um endereço IP.
- Solicitação HTTP: O navegador envia uma solicitação HTTP ao servidor da web.
- Mostrar página: O navegador exibe a página da web para o usuário.
- Restrições de tempo:
- O processo de resolução de URL deve levar entre 0 e 400 milissegundos.
- A solicitação HTTP deve ser enviada dentro de 50 a 200 milissegundos após resolver a URL.
- A página deve ser exibida para o usuário dentro de 100 a 500 milissegundos após receber a resposta HTTP.
- Estados/Condições:
- Linha de vida para o resolvedor DNS:
- Estados/Condições:
- Inativo: O resolvedor de DNS não está ativamente resolvendo um nome de domínio.
- Processando: O resolvedor de DNS está processando um pedido de resolução de nome de domínio.
- Restrições de Tempo:
- O processo de resolução de DNS deve levar entre 0 e 400 milissegundos.
- Estados/Condições:
- Salva-vidas para o Servidor Web:
- Estados/Condições:
- Aguardando: O servidor web está aguardando um pedido de entrada.
- Processando: O servidor web está processando o pedido de entrada.
- Enviando resposta: O servidor web está enviando uma resposta de volta para o navegador da web.
- Restrições de Tempo:
- O servidor web deve enviar uma resposta dentro de 200 a 800 milissegundos após receber o pedido.
- Estados/Condições:
Interações e Restrições de Tempo
- Usuário da Web para Navegador da Web:
- O usuário digita uma URL no navegador da web, passando de “Inativo” para “URL”.
- O navegador da web resolve a URL, o que deve levar entre 0 e 400 milissegundos.
- Navegador da Web para Resolvedor de DNS:
- O navegador da web envia uma mensagem síncrona ao resolvedor de DNS para resolver a URL em um endereço IP.
- O resolvedor DNS processa o pedido, o que deverá levar entre 0 e 400 milissegundos.
- Navegador Web para Servidor Web:
- O navegador web envia uma solicitação HTTP ao servidor web, a qual deverá ser enviada dentro de 50 a 200 milissegundos após resolver o URL.
- O servidor web processa o pedido e envia uma resposta de volta ao navegador web.
- O servidor web deverá enviar a resposta dentro de 200 a 800 milissegundos após receber o pedido.
- Navegador Web para Usuário Web:
- O navegador web exibe a página web para o usuário, o que deverá ocorrer dentro de 100 a 500 milissegundos após receber a resposta HTTP.
- O usuário passa de “Esperando” para “Visualizando” a página web.
Interpretando Diagramas de Tempo UML
Compreendendo Linhas de Vida
- Barras Horizontais: Representam a existência do participante ao longo do tempo.
- Segmentos: Indicam diferentes estados ou condições ao longo do tempo.
Compreendendo Restrições de Duração
- Barras Horizontais com Linhas Verticais: Representam a duração em que uma condição deve ser atendida.
- Pontos Inicial e Final: Indicam o início e o fim da duração.
Compreendendo Restrições de Tempo
- Linhas Verticais: Representam pontos específicos no tempo em que as condições devem ser atendidas.
- Interseção com Linhas de Vida: Indicam o tempo específico na linha de vida.
Compreendendo Ocorrências de Destruição
- Símbolo “X”: Representa a destruição do objeto.
- Fim da Linha de Vida: A ocorrência de destruição é colocada no final da linha de vida.
Compreendendo a Notação
- Rótulos e Anotações: Forneça informações adicionais sobre as restrições de tempo e condições.
- Informações Adicionais: Inclua quaisquer detalhes relevantes que ajudem na compreensão dos aspectos temporais da interação.
Conclusão
Os diagramas de tempo UML são essenciais para modelar e analisar os aspectos temporais das interações entre objetos. Ao compreender os elementos principais e seguir os passos para criá-los e interpretá-los, você pode usar efetivamente os diagramas de tempo para raciocinar sobre o tempo e modelar sistemas em tempo real.
Referências
- O que é um Diagrama de Tempo?
- Visual Paradigm. (s.d.). O que é um Diagrama de Tempo? 1.
- 12. Diagrama de Tempo – Círculo da Comunidade Visual Paradigm
- Círculo da Comunidade Visual Paradigm. (2018, 11 de maio). 12. Diagrama de Tempo – Círculo da Comunidade Visual Paradigm 2.
- Como desenhar um Diagrama de Tempo?
- Visual Paradigm. (s.d.). Como desenhar um Diagrama de Tempo? 3.
- Restrições de tempo – Diagrama de Tempo – UML – Discuta o Visual Paradigm
- Fóruns do Visual Paradigm. (2019, 19 de julho). Restrições de tempo – Diagrama de Tempo – UML – Discuta o Visual Paradigm .
- Introdução aos Diagramas UML no Visual Paradigm – ArchiMetric
- ArchiMetric. (2024, 23 de agosto). Introdução aos Diagramas UML no Visual Paradigm – ArchiMetric .
- Diagrama de Tempo, Exemplo de Diagramas UML: Linha de Tempo de Estado / Condição – Círculo da Comunidade Visual Paradigm
- Círculo da Comunidade Visual Paradigm. (2018, 24 de setembro). Diagrama de Tempo, Exemplo de Diagramas UML: Linha de Tempo de Estado / Condição – Círculo da Comunidade Visual Paradigm .
- Guia Prático UML – Tudo o que você precisa saber sobre modelagem UML
- Visual Paradigm. (s.d.). Guia Prático UML – Tudo o que você precisa saber sobre modelagem UML .
- Diagrama de Tempo – Diagramas UML 2 – Ferramenta de Modelagem UML
- Visual Paradigm. (s.d.). Diagrama de Tempo – Diagramas UML 2 – Ferramenta de Modelagem UML .
- Diagrama de Tempo – Círculo da Comunidade Visual Paradigm
- Círculo da Comunidade Visual Paradigm. (s.d.). Diagrama de Tempo – Círculo da Comunidade Visual Paradigm .