A abordagem de trabalho
State Machine modela o comportamento da interface como estados e transições explícitos, em vez de flags booleanas vagamente relacionadas. Identifica os eventos que movem o componente, as guardas que permitem uma transição e as ações que ocorrem no caminho. Formulários, requisições de dados, autenticação e assistentes de várias etapas são os exemplos da fonte.
O objetivo é uma especificação de comportamento testável. Cada estado precisa de uma representação de interface definida. Estados não terminais precisam de uma saída, e combinações inválidas devem ser identificadas antes da implementação. A fonte não escolhe uma biblioteca state-machine nem afirma gerar automaticamente uma prova exaustiva.
Entregas esperadas
- Um inventário de estados e eventos para um único tema.
- Um mapa de transições com guardas e ações de entrada ou saída.
- Casos de erro, recuperação e estados impossíveis para revisão.
Do briefing à revisão
- 01Liste estados e eventos
Nomeie os modos relevantes e todos os gatilhos que podem alterá-los, começando pelo caminho feliz.
- 02Defina transições válidas
Especifique destinos, condições e efeitos colaterais. Identifique as combinações que o design deve impedir.
- 03Adicione recuperação e mapeamento da interface
Modele falha, nova tentativa, cancelamento e saídas; mostre a aparência da interface em cada estado.