LogiFlow
Plataforma de gestão logística e entregas em Java e Spring Boot: pedidos com sagas, rastreamento ao vivo, ocorrências, SLA e app do motorista
- Meu papel
- Designer UX/UI · Análise de arquitetura
LogiFlowContexto
LogiFlow é uma plataforma de gestão logística e entregas para transportadoras e operações de última milha: pedidos, separação nos centros de distribuição, frota, rotas, ocorrências e SLA numa operação só, do pedido à porta do cliente, com um app para o motorista.
Fiz o produto, o UX/UI e a análise de arquitetura. A fundação técnica é o FTGO, a arquitetura de microsserviços em Java e Spring Boot do livro Microservices Patterns, com sagas, outbox transacional e CQRS; sobre ela desenhei as regras de logística, os fluxos, as telas e o design system.
Problema de negócio
Numa operação de entregas, o pedido passa por várias mãos: o cliente que compra, o financeiro que aprova, o centro de distribuição que separa, o motorista que entrega. Cada etapa costuma morar num sistema ou numa planilha diferente, e a coordenação só descobre o atraso quando o cliente liga.
O LogiFlow junta tudo numa operação só: mostra o que vai atrasar antes de atrasar, trata a entrega que deu errado com regra clara e dá ao motorista um app que funciona mesmo sem sinal.
A fundação técnica
Do FTGO vêm os serviços em Spring Boot: pedido com ciclo de vida controlado por sagas (criar, cancelar e revisar), aprovação pela conta do cliente, ticket de separação com estados, entregador com disponibilidade e plano de coletas e entregas, histórico de pedidos em CQRS, API Gateway e documentação Swagger em cada serviço.
O produto LogiFlow
A camada de logística de última milha e toda a interface: centros de distribuição, frota, rastreamento ao vivo, ocorrências com limite de tentativas, SLA por janela de entrega, painel gerencial, relatórios, perfis de acesso e o app do motorista.
Arquitetura
Cada serviço é uma aplicação Spring Boot com banco próprio. As escritas que envolvem mais de um serviço viram sagas orquestradas pelo Order Service, e os eventos saem pelo Apache Kafka com outbox transacional: o evento é gravado na mesma transação do dado e publicado depois, então nada se perde entre o banco e a fila. Ao lado, como cada conceito do FTGO vira um conceito do LogiFlow.
Decisões de arquitetura e trade-offs
Seis decisões registradas como ADRs: o contexto, o que foi decidido, o custo de cada uma e como ela aparece para quem usa o produto.
Arquitetura de informação e fluxos
Antes das telas, o mapa do produto, os cinco perfis de acesso e os três fluxos que mais importam: do pedido à entrega, ocorrência na entrega e revisão ou cancelamento.
As telas no Figma
Doze telas desktop com protótipo navegável, para quem coordena a operação.
- 01 / 10
Dashboard operacional
A primeira tela responde “o que vai dar problema hoje?”: pedidos do dia, rotas na rua, entregas no prazo contra a meta, atrasos e ocorrências abertas, o SLA de cada centro de distribuição e a lista de pedidos com risco de atraso, já com a folga em minutos.
- 02 / 10
Pedidos
Busca, filtros por status, centro, janela e motorista, ordenação e paginação. Cada status tem uma cor fixa, e aguardando aprovação, aprovado e recusado são os estados reais do pedido no Order Service.
- 03 / 10
Detalhe do pedido
O ciclo de vida do pedido como linha do tempo, com os passos da saga e do ticket de separação, o plano do motorista com cada coleta e entrega (o Plan do Delivery Service), a folga do SLA, os itens e a auditoria de quem mudou o quê.
- 04 / 10
Novo pedido
O formulário avisa que o pedido nasce aguardando aprovação, porque é isso que a saga faz. A janela fora do horário do cliente é barrada no campo, e o resumo lembra que a mesma validação roda no servidor.
- 05 / 10
Rastreamento ao vivo
As rotas ativas com o progresso de cada motorista, filtros para atrasadas e sem sinal, e no mapa a rota selecionada com as paradas feitas, a próxima e a folga até o fim da janela.
- 06 / 10
Ocorrências
A fila de problemas na entrega e o tratamento de cada um: quem registrou, a foto, a distância do endereço, o prazo do SLA e três saídas possíveis. Reagendar exige motivo, e a terceira tentativa é a última.
- 07 / 10
Relatórios e SLA
Entregas no prazo por semana contra a meta, causas de falha e produtividade por motorista, lidos da visão CQRS para não pesar a operação.
- 08 / 10
Frota
Motoristas e veículos com a disponibilidade do turno, que vem do Delivery Service, mais veículo, habilitação e desempenho no prazo de cada motorista.
- 09 / 10
Usuários e permissões
A matriz de permissões por perfil, aplicada na API e não só na tela. O cliente B2B e o motorista veem apenas os próprios pedidos.
- 10 / 10
Login
Entrada por e-mail ou pelo login único da empresa (OIDC), com bloqueio após tentativas erradas. A recuperação de acesso usa uma mensagem neutra, que não revela quem tem conta.
Estados da interface
Carregando, vazio, erro e retorno das ações. O erro mantém os filtros e mostra um código para o suporte, e os avisos de pedido recusado ou em processamento vêm direto dos estados das sagas.
App do motorista
O plano do entregador é uma lista ordenada de coletas e entregas. O app transforma essa lista na rota do dia, com comprovante por foto, assinatura e localização, e uma ocorrência que fica salva sem internet e sobe quando o sinal volta.
Decisões de UX/UI
O que guiou as escolhas de interface:
Sistema Visual
Um design system próprio no Figma, com variáveis de cor, espaçamento e raio, estilos de texto e componentes com variantes: botão, status do pedido, campo, item de menu, filtro e card de indicador. Neutros frios para a leitura longa, laranja para agir e uma cor por status.
Paleta
Laranja Sinal
#F2551D
Ação principal e alertas
Noite
#0E1525
Menu lateral
Tinta
#101828
Títulos e textos
Verde Entregue
#067647
Entregue e no prazo
Roxo Separação
#5B3CC4
Em separação no CD
Vermelho Falha
#B42318
Atraso e tentativa falhou
Tipografia
Space Grotesk
700
Títulos e números de indicador
Inter
400 / 500 / 600 / 700
Interface, tabelas e formulários
JetBrains Mono
400 / 700
Códigos de pedido e horários
Próximas versões
O que vem a seguir no roadmap do produto:
Referências e créditos
A fundação técnica do LogiFlow é o FTGO, de Chris Richardson e da Eventuate, Inc., publicado sob a licença Apache 2.0.
Aprendizado
Desenhar sobre uma arquitetura de verdade muda a interface: consistência eventual vira estado “em processamento”, compensação de saga vira motivo de recusa, e a separação entre leitura e escrita define onde ficam listas e relatórios.


