Olá sejam bem-vindos ao canal engenharia de software com ênfase o ML Eu sou professor julianes Gets e eu já atuo na área de modelagem de software há vários anos eu tenho quatro livros publicados sobre o assunto e eu já ministrei diversas palestras e cursos técnicos so modelad de software utilizando a linguagem WL na aula de hoje eu vou falar sobre o diagrama de tempo ou diagrama de temporização da uml que é um diagrama que enfatiza fortemente o tempo exato em que há mudanças de estados ou de Valores em uma lifeline ou seja um objeto que
existe durante um tempo em um processo Então vamos iniciar a nossa aula Então essa é a nossa aula sobre diagrama de tempo ah ah eu gosto sempre de fazer uma pequena propaganda eu já ministrei desculpe eu já publiquei quatro livros sobre o ML o meu primeiro livro foi o umr uma abordagem prática que na época tratava da umr 1.5 mas que já abordava a MR2 no final do livro depois eu lancei o guia de consulta rápida que era exclusivo sobre o MR2 Poucos Anos depois eu transformei esse guia no livro m2 guia prático e mais
tarde eu lancei o meu livro mais completo mais atualizado que é o m2 uma abordagem prática que se encontra na terceira Edição Mas vamos ao nosso conteúdo então o diagrama de tempo ele possui muitas semelhanças com diagrama de máquina de estados mas ele possui uma forte concentração em destacar as mudanças de estado de um objeto ou as mudanças de valor de um objeto durante um tempo ele está ele deixa bem claro em que em que tempo em que determinado momento há a mudança desse estado ou desse valor então esse diagrama ele costuma ter uma utilidade
relativamente baixa em aplicações comerciais Mas nós vamos apresentar exemplos em que ele é útil todavia ele é particularmente útil para modelagem de sistemas de tempo real sistemas que utilizam recursos de multimídia ou hipermídia sistemas embarcados e processo de rede em que o tempo exato em que há mudanças de estado ou de valor é muito importante e precisa ser modelado bom vamos falar um pouquinho sobre lifelines lifelines já foram abordadas nas aulas sobre o diagrama de sequência ou diagrama de comunicação e são bastante semelhantes no diagrama de tempo porém diferente das lifelines do diagrama de sequência
ã ou diagrama de comunicação as lifelines do diagrama de tempo elas eh enfatizam a identificação do tempo de duração Por que passam os estados ou valores de um determinado objeto Lembrando que uma lifeline é um objeto um elemento que existe durante um determinado período de tempo em um processo existem dois tipos de lifelines lifelines de estado que representam o conjunto de estados porque passam um objeto ou seja uma lifeline e lifelines de valor que representa o conjunto de valores que a lifeline assume em um determinado tempo Ah aqui nós temos um exemplo de lifeline de
estado aqui essa lifeline é uma lifeline do tipo concurso ou seja um objeto da classe concurso então Aqui nós temos uma lifeline de estado em seu formato mais simples bom ah existem estados ou condições em diagramas de tempo estados eles obviamente são representados somente em lifelines de estado enquanto que condições são representados em lifelines de valor então os estados eles descrevem como nome já próprio o nome já diz os estados discretos ou seja os estados bem definidos porque passam objeto em um determinado tempo enquanto que as condições elas expressam valores que podem variar de maneira
contínua ou os valores que podem ser assumidos pela lifeline durante um tempo então Aqui nós temos a nossa lifeline agora determinando os estados por que passa essa lifeline então a lifeline concurso ela passa pelos Estados elaborando edital abrindo inscrições aplicando provas avaliando provas e publicando resultados Bom agora vamos falar sobre restrição de duração uma de duração ela determina o intervalo de tempo em que uma lifeline ela permanece em um estado específico ela determina o momento em que a lifeline entra no Estado até o momento em que a lifeline sai desse estado então Aqui nós temos
exemplo de restrição de restrições de duração que foram acrescidas a lifeline de estado da classe concurso então nós percebemos agora que o estado elaborando edital ele possui um determinado tempo ele o o a lifeline permanece nesse estado durante o período de 6 de janeiro a 31 de janeiro então durante esse período se está elaborando edital depois se passa para o estado abrindo inscrição e ele ocupa o tempo de 1 de fevereiro a 14 de Março como demonstra restrição de duração Ahã em 10 de Abril se passa pro estado aplicando provas e durante o período de
21 de Abril a 30 de Abril se passa pro estado avaliando provas e finalmente durante o período de 5 de Maio se passa pro estado publicando resultados esta aqui esse aqui é um diagrama de tempo no no formato robusto nós vamos ver que existe um outro formato chamado conciso dá é possível perceber que as restrições de duração elas possuem uma barra e uma estabelecendo os limites de tempo de cada estado Ah também no formato robusto existe uma linha que determina o o período o espaço de tempo em que a lifeline permanece em um determinado estado
Ah vou falar agora sobre a régua de tempo e sobre os valores de marca de seleção os dois costumam trabalhar juntos então uma régua de tempo basicamente ela determina uma escala temporal no diagrama o tempo que o diagrama ocupa o tempo que é representado no diagrama essa escala temporal ela pode possuir ã valores que são ã chamados que que estarão contidos na marca de seleção então esses valores eles indicam os pontos específicos no tempo que podem ser usado para determinar a ocorrência de um evento ou as transições de um Estado então Aqui nós temos o
exemplo de régua de tempo Onde eu tenho valores marcas de seleção que vão de 0 a 120 esses valores representam dias então essa régua de tempo ela deixa mais clara que o período do Estado elaborando edital ela vai ocupar cerca de eh 25 dias e que o período abrindo inscrições vai ocupar H cerca de 40 e poucos dias e assim vai Ah e nós temos também a restrição de tempo uma restrição de tempo ela determina o tempo exato em que uma lifeline ela entra ou sai de um estado quando é necessário acrescentar essa informação então
aqui por exemplo nós temos uma situação em que foi aplicado uma restrição de tempo notem que o estado aplicando provas ele possui uma restrição de tempo que é o valor 92.00 ou seja 9 horas entre colchetes então então nós sabemos que o a lifeline entra no estado aplicando provas no período de 10 de Abril porém essa restrição de tempo estabelece o tempo exato é 10 de abril às 9 horas que se iniciam as provas e nós temos também os eventos ou estímulos que eles determinam qual evento irá forçar a lifeline a assumir um determinado Estado
então aqui nós estabelecemos o evento de início das provas esse texto aqui início que determina que a partir desse momento ele as provas são iniciadas ã Aqui nós temos um exemplo de formato conciso antes nós estávamos trabalhando com formato robusto no formato conciso não existe aquele aquelas linhas que parecem representar um gráfico Mas cada estado ele é representado dentro de um hexágono sendo que o hexágono e o hexágono Inicial e o hexágono final eles são abertos certo então aqui nós temos exemplo de formato conciso mas as informações são praticamente as mesmas o formato conciso é
o único aceito pelas lifelines de valor nós vamos ver exemplos de lifelines de estado lifelines de valor e também situações em que é possível utilizar duas lifelines ao mesmo tempo uma lifelines de estado e uma lifeline de valor bom então falando sobre lifelines de valor como eu falei o formato conciso é o único formato considerado válido para representar lifelines de valor então as lifelines de valor elas representam mudanças de valor de um determinado elemento de uma determinada lifeline ao longo do tempo e cada valor ele é representado explicitamente no diagrama e cada mudança de valor
é representada como uma transição no diagrama então Aqui nós temos ã uma lifeline de valor que representa ã os valores que são o resultado da medição de uma radiação em SV barh Ah se não me engano sv quer dizer sverre ou coisa parecida Então sverre por horas não lembro se é exatamente ess ferre mas é algo semelhante a isso mas basicamente ele determina quando o nível de radiação ele é seguro para um ser humano quando ele é moderado quando ele é perigoso e quando ele é crítico então pode-se notar que ao longo do tempo essa
lifeline vai mudando de valores os valores são medidos de duas em duas horas como nós podemos ver pela régua aqui embaixo Ah que determina Ah um uma uma quantidade de horas então nas primeiras duas horas o nível de radiação é 0,05 considerado seguro nas duas horas seguintes ele sobe um pouco para 0,08 Mas ainda é considerado seguro nas duas horas seguintes ele sobe para 020 que é considerado moderado ã nas duas horas seguintes ele sobre para 0,5 que é considerado perigoso e nas últimas duas horas ele sobe para um que é considerado crítico ou seja
muito perigoso aqui agora nós vamos falar sobre alguns exemplos de diagrama de tempo então aqui a gente apresentou uma no slide anterior a gente representou apresentou uma lifeline de valor e Aqui nós temos uma um diagrama de tempo representando uma lifeline de status que é excepcionalmente útil para representar uma situação em um sistema comercial que trata do atendimento a um pedido então nós temos quatro Estados agora dando confirmação do pedido preparando pedido enviando pedido e cancelando o pedido nós temos uma régua que marca o número de horas que são medidas nessa lifeline tempo então durante
o estado aguardando confirmação eh se a lifeline permanece desne estado por 24 horas ah depois disso ela tem 6 horas para atender para preparar o pedido caso o pedido seja aprovado Aqui nós temos um evento depois disso nós temos cerca de 120 Horas para enviar o pedido eventualmente pode acontecer do pedido ser cancelado nesse caso Aqui nós temos o evento pedido cancelado E então é é o pedido permanece nesse estado por até 24 horas Ah aqui nós temos um outro exemplo de diagrama de tempo ainda é uma lifeline de estados que representa os estados porque
passam um semáforo os os estados são vermelho amarelo e verde Ah o os estados ele ocupam tempos grupos de segundos como demonstra essa régua com seus marcadores então o semáforo inicia no estado vermelho ocupando um período de tempo de 30 segundos depois ele passa pro estado Verde ocupando um outro período de 30 segundos em seguida ele passa pro estado Amarelo ocupando 5 segundos e aí ele volta pro estado vermelho des dessa vez ocupando 15 segundos por quê porque houve um evento houve uma emergência que determina que ah o semáforo pode permanecer verde para deixar passar
uma ambulância ou um carro da polícia ou um carro oficial durante 15 segundos depois volta para o estado vermelho pelos próximos 15 segundos Então esse é mais um exemplo de diagrama de tempo e Aqui nós temos um outro exemplo de diagrama de tempo dessa vez combinando lifelines de estado com lifelines de valor então eu tenho uma lifeline representando aqui no caso diagrama de tempo representa a reprodução de um vídeo eu tenho uma lifeline representando um uma os estados de uma lifeline de vídeo e nós temos uma lifeline representando os valores desse vídeo no caso a
qualidade deles ah a qualidade do do vídeo que tá sendo carregado que está sendo que está sendo reproduzido então nós temos qualidades que vão de eh alta resolução eh resolução eh completa Total eh eh alta resolução completa eh baixíssima resolução resolução padrão e resolução Ultra HD então nós temos os estados carregando reproduzindo Buff buffering bufferização os estados da lifeline vídeo então nos primeiros 3 segundos eh nos primeiros 3 minutos aliás como demonstra os marcadores da régua Ah o vídeo vai estar no estado carregando depois nos 17 segundos seguintes ele passa pro est pro estado reproduzindo
Ah aqui nós podemos ver que os valores são de alta qualidade e alta qualidade total full HD durante esse período mas mas aí se passa pro valor de 240p que é baixa a qualidade então o vídeo passa para o estado buffering Porque é necessário carregar mais vídeo antes de apresentar porque a qualidade de transmissão ou a qualidade eh de representação é baixa depois eu melhoro a qualidade do meu vídeo ah da minha qualidade transmissão do meu vídeo e eu passo novamente pro estado reproduzindo eh por algum motivo eu resolvo dar uma pausa no meu vídeo
então fico por 15 segundos com o meu vídeo pausado e quando eu volto eu já volto no valor de alta HD 4K ã e passo pro estado reproduzindo até que o meu vídeo seja finalizado ã Aqui nós temos um outro exemplo de diagrama de tempo também combinando uma lifeline de estado com uma lifeline de valor então a a lifeline de estados ela representa tá ã o os estados de transferência de um arquivo via FTP via o protocolo de File Transfer protocol ã protocolo de transferência de arquivo e o e a lif l de valor ela
representa os valores de latência ou seja o tempo que eh se demora para eh transferir o arquivo que é medido em microssegundos então quanto menor menor a latência quanto maior maior A latência então nós percebemos que nos primeiros 3 segundos é iniciada a conexão nos 5 segundos seguintes é feito uma autenticação o valor de latência é de 20 microssegundos depois se passa pro estado transferindo arquivo que ocupa 30 segundos onde Ah o valor da latência vai aumentando como vocês podem perceber ã começa com 20 mic segundos Ah e depois a partir do do segundo 15
até o 30 aumenta para 50 microssegundos e do segundo 30 ao 38 aumenta para 150 microssegundos então a latência fica muito alta Então o a lifeline de estados passa pro estado falha de conexão por alguns poucos segundos Ahã então [Música] Eh por cerca de 3 segundos e aí passa e aí volta pro estado de autenticação quando os valores de latência melhoram um pouco e depois para o estado de transferindo do arquivo onde os valores de latência H permanecem razoáveis depois se passa pro estado finalizando transferência que dura cerca de 3 segundos E aí pro estado
de desconexão que também ocupa cerca de 1 Ah aqui nós temos mais um exemplo que é de um sistema embarcado para controle de flaps de avião eu também tenho duas lifelines uma lifeline de Estados e uma lifeline de valor o primeiro médios estados dos Flex do avião são umas Barrinhas que se levantam na asa para ajudar na na no pouso ã do do avião então Eh e na lifeline de valor eu tenho as velocidades pelo que o avião passa pelas quais o avião passa ã isso tudo é medido em minutos então ã os flaps iniciam
no estado de 10 gra ã nos primeiros no primeiro minuto daí dos 5 minutos seguintes os fleps são recolhidos onde o avião ele decola ele primeiro ele inina uma velocidade uma velocidade 250 km para decolar e depois en voa ele atinge o valor de 900 km/h mas por algum motivo Ah há um evento onde é feita uma ordem de retorno para o aeroporto Então os flaps são colocados no estado de 30º durante 3 segundos então a velocidade era diminuir para 300 km/h como Demonstra o valor da lifeline de valor e ah depois de três depois
de 2 segundos eh os flaps são levantados para 40º para ajudar na aterrisagem durante os dois seguintes 2 segundos seguintes e finalmente os os flaps eles passam pro estáo de recolhidos quando o avião passa a assumir o valor de 0 km/h de velocidade e nós terminamos a nossa aula sobre o diagrama de tempo eu espero que vocês tenham gostado dessa aula espero que vocês tenham tenham será dessa aula válida se vocês gostaram dessa aula eu gostaria de solicitar que vocês dessem um like no vídeo e se vocês ainda não estão inscritos no canal e eu
gostaria de solicitar que vocês se inscrevessem obrigado pela atenção nós nos vemos na próxima aula