Tutorial de máquinas de estado

9 min

Um diagrama de estados, por vezes conhecido como diagrama de máquina de estados, é um tipo de diagrama comportamental na Linguagem de modelação unificada (UML) que mostra transições entre vários objetos. Crie uma conta gratuita no Lucidchart hoje mesmo para usar nosso programa de diagramas UML colaborativo e desenvolver seu próprio diagrama de máquina de estados!

O que é um diagrama de estados em UML?

Uma máquina de estados é qualquer dispositivo que armazena o status de um objeto em um determinado momento e pode mudar de status ou causar outras ações baseado na entrada que recebe. Estados indicam as diferentes combinações de informações que um objeto pode conter, e não como ele se comporta. Para entender os diferentes estados de um objeto, você pode visualizar todos os possíveis estados e mostrar como um objeto chega a determinado estado; e isso pode ser feito com um diagrama de estados UML.

Cada diagrama de estados começa, geralmente, com um círculo escuro que indica o estado inicial, e termina com um círculo contornado, indicando o estado final. No entanto, apesar de ter pontos iniciais e finais claros, diagramas de estados não são necessariamente a melhor ferramenta para registrar a progressão geral de eventos. Em vez disso, eles ilustram tipos específicos de comportamento, principalmente mudanças de um estado para outro.

Diagramas de estados retratam principalmente estados e transições. Estados são representados por retângulos com cantos arredondados e rotulados com o nome do estado. As transições são marcadas com setas que fluem de um estado para outro, mostrando como os estados mudam. Abaixo, você pode ver esses dois elementos em ação por meio de um diagrama básico retratando a vida de um estudante. Nossa ferramenta de diagramas UML ajuda você a criar qualquer diagrama de máquinas de estado personalizado.

Com o nosso recurso de diagrama por código, isso ficou mais rápido e fácil do que nunca. Você pode criar um mockup personalizado de um diagrama de máquinas de estado e adicioná-lo ao seu documento no Lucidchart usando código Mermaid.

Exemplo básico de diagrama de estado 500x281.png

Aplicações de diagramas de estados

Como a maioria dos diagramas UML, diagramas de estados têm diversos usos. As principais aplicações são as seguintes:

  • Descrever objetos orientados a eventos em um sistema reativo.
  • Ilustrar cenários de caso de uso em um contexto de negócios.
  • Descrever como um objeto se move por vários estados em seu tempo vida.
  • Mostrar o comportamento geral de uma máquina de estados ou o comportamento de um conjunto relacionado de máquinas de estados.

Símbolos e componentes de diagramas de estados

Você pode incluir muitas formas diferentes em um diagrama de estados, principalmente se você decidir combiná-lo com outro diagrama. Esta lista resume as formas mais comuns que podem ser encontradas.

Estado composto

Um estado que contém subestados em sua estrutura. Veja o exemplo de diagrama UML de estados para universidades abaixo. Neste exemplo, a “Matrícula” é o estado composto porque ela engloba diversos subestados no processo de matrícula.

Pseudoestado de escolha

Um símbolo de diamante que indica uma condição dinâmica com resultados potenciais ramificados.

Pseudoestado de escolha.png

Evento

Uma instância que aciona uma transição, rotulada acima da seta de transição apropriada. Neste caso, o “término das aulas” é o evento que aciona o fim do estado “Sendo ensinado” e o início do estado de “Provas finais”.

Event Shape.png

Ponto de saída

O ponto em que um objeto sai de um estado composto ou uma máquina de estados, identificado por um círculo com um X no meio. O ponto de saída é geralmente usado se o processo não está concluído mas tem que ser encerrado por algum erro ou outro problema.

Fluxo Final 35x26@2x.jpeg

Primeiro estado

Um marcador para o primeiro estado no processo, representado por um círculo escuro com uma seta de transição.

Final State Shape.png

proteção

Uma condição booleana que permite ou impede uma transição, escrita acima da seta de transição.

Estado

Um retângulo com cantos arredondados que indica a natureza atual de um objeto.

Forma do estado.png

Subestado

Um estado contido dentro da região de um estado composto. No diagrama de máquinas de estados para universidades abaixo, “Matrículas abertas” é um subestado no estado composto maior de “Matrícula”.

Terminação

Um círculo com um ponto no meio, indicando que um processo foi terminado.

End 35x35@2x.jpeg

Transição

Uma seta que flui de um estado a outro, indicando um estado em mudança.

Transição Arrow.png

Comportamento transicional

Um comportamento resultante que ocorre quando um estado entra em transição, escrito acima da seta de transição.

Acionador

Um tipo de mensagem que move um objeto de forma ativa de estado para estado, escrito acima da seta de transição. Neste exemplo, “Problema com a reserva” é o acionador que mandaria a pessoa para a agência de viagens do aeroporto em vez do próximo passo no processo.

Trigger.png
 

Exemplos de diagramas de estados

Este exemplo de diagrama de máquina de estados mostra o processo pelo qual uma pessoa define um compromisso em seu calendário. No estado composto “Verificar data”, o sistema verifica a disponibilidade no calendário em alguns subestados. Se o horário não estiver disponível no calendário, o processo será encerrado. Se houver disponibilidade, no entanto, o compromisso será adicionado ao calendário.

State Diagram 525x626@2x.jpeg

Exemplo de diagrama de estados para universidades

Este diagrama de estados mostra o processo de matrícula e as aulas em uma universidade. O estado composto de “Matrícula” é formado por diversos subestados que orientarão os alunos no processo de matrícula. Com o aluno matriculado, serão “Ensinados” e, por fim, passarão pelas “Provas finais”.

Enrollment Example.png

Exemplo de diagrama de estados para check-in em aeroportos

O exemplo a seguir simplifica os passos necessários para fazer check-in no aeroporto. Para as companhias aéreas, um diagrama de estados pode ajudar a otimizar processos e eliminar passos desnecessários.

Exemplo de check-in no aeroporto.png

Como fazer um diagrama de máquinas de estados em UML

Os diagramas de máquinas de estado, também conhecidos como diagramas de estado, são uma forma útil de visualizar os vários estados existentes em um processo. Os diagramas de estado ajudam os administradores a identificar etapas desnecessárias e a simplificar processos para melhorar a experiência do cliente.

1. Comece a usar o Lucidchart

Para criar seus próprios diagramas de máquinas de estado, cadastre-se em uma conta gratuita no Lucidchart. Após se cadastrar, abra um documento em branco e ative as bibliotecas de formas UML. Clique em "Formas" no canto superior esquerdo da janela e marque "UML". As bibliotecas de formas UML aparecerão no lado esquerdo da janela. Role para baixo até a biblioteca de diagramas de estado e arraste um círculo preto para iniciar o diagrama. Esse círculo indica o estado inicial.

2. Identifique os componentes

Identifique o propósito do seu diagrama e quais elementos você vai descrever com ele. Para ajudar a determinar o propósito, veja algumas das principais aplicações de um diagrama de estados:

  • Representando o movimento de um objeto de estado a estado.

  • Mostrando como objetos orientados a eventos funcionam em sistemas reativos.

  • Examinando como sequências de casos de uso podem ser aplicadas a um cenário de negócios.

  • Fornecendo uma visão geral de uma máquina de estados complexa ou de uma série de máquinas de estados.

Estados e transições são os principais elementos de um diagrama de estado. Faça uma lista de todos os estados que você precisa incluir no diagrama. Considere cada estado que o usuário vai experimentar durante o processo e, em seguida, pense nas transições e nos eventos que levam o usuário a esse estado. Por exemplo, neste trecho de diagrama de estado de calendário abaixo, um compromisso precisa ser adicionado ao calendário antes que o estado "Compromisso adicionado" possa ser concretizado.

Trecho de exemplo de transições em diagrama de estado (trecho 319x346.png)
 

3. Adicionar formas

Arraste o mouse a partir de um dos pontos vermelhos que aparecem ao passar o cursor sobre o círculo inicial para criar uma seta de transição, que indica uma mudança de estado e aponta na direção do fluxo do processo. Depois de criar a seta, o editor vai sugerir automaticamente uma nova forma para conectar. Escolha a forma de estado, um retângulo com cantos arredondados.

Etapa de diagrama de estado 1 277x147.png

Rotular formas

Em seguida, clique e digite para rotular o seu estado. Para adicionar uma mensagem na seta de transição, clique duas vezes na linha onde deseja inserir o texto. Para eventos e gatilhos, você também pode arrastar uma caixa de texto diretamente acima da seta de transição.

Adicionar opções

Se precisar expressar várias opções para suas transições, escolha a forma de losango para indicar um pseudoestado. Você pode criar várias setas de transição a partir dessa forma.

Pseudoestado de escolha.png

Conclua o diagrama

Quando o seu diagrama de estado (ou, em diagramas mais complexos, uma das suas máquinas de estados) estiver concluído, escolha o círculo com borda para indicar o estado final.

Etapa de diagrama de estado 2 400x239.png

Formate o diagrama

O Lucidchart permite personalizar cada detalhe do seu diagrama para um visual profissional e coeso. Depois de esboçar o básico, é fácil alterar a cor, o tamanho e a direção das linhas e formas.

Diagrama de estado de sistema de agendamento 740x860.png
 

4. Publique, implemente e compartilhe

O verdadeiro potencial dos diagramas de máquinas de estado se revela depois que você cria o diagrama, quando pode colaborar e compartilhar com colegas de trabalho, de classe, entre outros. Para baixar o documento, acesse Arquivo > Baixar como e escolha o tipo de arquivo desejado.

Você também pode adicionar sua criação a qualquer um dos seus aplicativos favoritos graças às integrações do Lucidchart. Inclua diagramas em seus documentos Microsoft ou G Suite ou em plataformas compartilhadas de toda a empresa, como a Confluence.

Para permitir que outras pessoas colaborem no seu diagrama, clique no botão laranja "Compartilhar" no canto superior direito da janela. Os usuários do Lucidchart poderão visualizar o documento e contribuir com ele, dependendo das permissões definidas por você. Mesmo quem não tem conta pode visualizar o diagrama de máquinas de estado.

Tudo o que você precisa para criar um diagrama

Crie um diagrama profissional e sofisticado gratuitamente com o Lucidchart. Não importa o que você tenha em mente, temos as ferramentas necessárias para construí-lo. Crie uma conta e comece a diagramar hoje mesmo.

Teste grátis

Modelos e exemplos de máquinas de estado

Diagrama de classes com notação UML

Preços:

Conta paga

Diagrama de classes com notação UML, Preços: Conta paga

Diagrama de máquinas de estados UML

Preços:

Conta paga

Diagrama de máquinas de estados UML, Preços: Conta paga

Perguntas frequentes

Um diagrama de máquinas de estado UML é um tipo de diagrama comportamental que mostra transições entre vários objetos, ilustrando como um objeto se move por diferentes estados ao longo de seu ciclo de vida com base em eventos e condições.

Os principais símbolos são um círculo escuro para o estado inicial, retângulos com cantos arredondados para os estados, setas para as transições, um círculo com borda e ponto para o estado final e formas de losango para os pseudoestados de sua preferência.

Cadastre-se em uma conta gratuita no Lucidchart, ative as bibliotecas de formas UML, identifique os estados e as transições que você precisa incluir, arraste as formas da biblioteca para a tela, conecte-as com setas de transição e rotule cada elemento.

Um estado composto é um estado que contém subestados aninhados, permitindo mostrar processos mais detalhados dentro de um estado maior.

Um evento é uma ocorrência que causa uma transição e é rotulado acima da seta de transição, enquanto um gatilho é um tipo de mensagem que move ativamente um objeto de um estado para outro.

Use diagramas de estado para representar objetos orientados a eventos em sistemas reativos, ilustrar cenários de casos de uso em contextos de negócios, descrever como os objetos se movem pelos estados ou mostrar o comportamento geral das máquinas de estados.

Um pseudoestado de escolha é representado por um símbolo de losango e indica uma condição dinâmica com resultados ramificados, permitindo várias opções de transição a partir de um único ponto.

Sim, você pode clicar em Compartilhar para permitir que outros visualizem e contribuam para o seu diagrama com base nas permissões que você definir.

Tudo de que você precisa para criar um diagrama UML

Além da nossa ferramenta online de diagramas UML, o Lucidchart oferece recursos de suporte e treinamento para ajudar você a explorar qualquer tipo de diagrama.

Montar um diagrama