Pular para o conteúdo principal

Glossário

Parte do vocabulário do Kikwiflow vem de nomes de classes e de convenções de mercado que não têm uma tradução consagrada — traduzir à força atrapalharia mais do que ajuda. Esta página reúne esses termos com uma explicação curta. Na primeira vez que um deles aparece em um capítulo, o texto dá a mesma explicação em uma linha e aponta para cá.

Vocabulário do Kikwiflow

TermoO que é
motor (às vezes engine)O código do Kikwiflow que executa um processo: navega de um passo ao próximo, chama a lógica de cada nó, persiste o estado, agenda timers e faz retentativas. Roda embarcado na sua aplicação, não como serviço à parte.
processoA definição de um fluxo de negócio — o grafo de passos descrito no arquivo .kikwi. É o "molde".
instânciaUma execução concreta de um processo — uma abertura de conta específica, com suas variáveis. É a "peça feita a partir do molde".
(flow node)Cada caixa do diagrama: um início, um fim, uma tarefa, um gateway, um timer.
handlerA classe Java que contém a lógica de um nó. Um TaskHandler executa uma tarefa; um AnswerProvider resolve uma decisão. É um bean Spring comum, com o nome registrado no .kikwi.
beanUm objeto gerenciado pelo Spring (criado com @Component, @Service etc.). O motor encontra o handler de um nó pelo nome do bean.
executorO campo do .kikwi, em uma tarefa executável, que guarda o nome do bean handler a ser chamado.
variável de processoUm dado que vive na instância e passa de um nó para o outro (cpf, score, decisao).
chave de negócio (business key)Um identificador do seu domínio associado à instância (por exemplo, o CPF do solicitante), para você achá-la depois sem saber o id interno.
tarefa executável (EXECUTABLE_TASK)Um passo que roda lógica Java na hora e segue em frente. Sem espera.
tarefa externa (EXTERNAL_TASK)Um passo que fica pendente até algo de fora (uma pessoa, outro sistema) sinalizar que terminou.
wait state (estado de espera)Qualquer ponto em que a instância fica parada, com o estado salvo, sem consumir CPU, esperando um sinal externo para avançar. Uma tarefa externa e um timer são wait states.
gatewayUm nó que decide o caminho: o exclusivo escolhe um entre vários ramos; o paralelo abre e depois junta vários ramos ao mesmo tempo.
split / joinA divisão (split) e a junção (join) de um gateway paralelo: o split abre N ramos, o join espera todos chegarem antes de seguir.
fan-out / fan-inSinônimos de split / join: "abrir em vários ramos" e "reunir os ramos de volta".
timer de borda (boundary timer)Um timer preso na lateral de uma tarefa, que dispara um desvio se aquela tarefa demorar além do prazo.
incidenteO registro que o motor abre quando uma tarefa falha e esgota as retentativas, ou quando um erro de negócio não tem tratamento no fluxo. Fica visível no Monitor, com botão para tentar de novo.
retentativa (retry)Uma nova tentativa automática de executar uma tarefa que falhou, segundo a política (retryPolicy) do nó.
workerUm processador que roda em segundo plano, fora da chamada que iniciou o processo — é ele quem retoma um ramo assíncrono ou uma tarefa persistida.
pollerO componente que, de tempos em tempos, varre o banco em busca de tarefas prontas para um worker executar.
canvasA área de desenho do Craft, onde você arrasta e liga os nós.
stub (classe-esqueleto)Uma classe gerada já com a assinatura certa e o corpo vazio (// TODO), pronta para você preencher a lógica.
payloadOs dados de entrada de uma chamada — no início de uma instância, o conjunto de variáveis que a solicitação "traz do site".
claim / completeAções sobre uma tarefa externa: reivindicar (claim) marca a tarefa como sua para ninguém mais mexer; completar (complete) a encerra e devolve o fluxo ao motor.
implantar (deploy)Registrar uma definição de processo no motor para que instâncias dela possam ser iniciadas. Reservamos "subir" para pôr a aplicação no ar.

Siglas

SiglaSignificado
BPMBusiness Process Management — a disciplina de modelar, executar e acompanhar processos de negócio.
BPMNBusiness Process Model and Notation — a notação gráfica padrão de BPM (caixas, losangos, setas). O Kikwiflow usa uma notação própria, mais enxuta, não BPMN XML.
DSLDomain-Specific Language — uma linguagem pequena feita para um domínio específico. O Kikwiflow não tem uma: a lógica é Java comum.
KYCKnow Your Customer — o conjunto de verificações de identidade e risco que uma instituição financeira faz antes de abrir uma conta.
SLAService Level Agreement — o prazo ou nível de serviço acordado (ex.: "o analista decide em até 48h").
SSEServer-Sent Events — um canal em que o servidor envia atualizações para o navegador sem ele ficar perguntando de novo a cada segundo. É como o Monitor mostra dados ao vivo.
UUIDUniversally Unique Identifier — o identificador longo e aleatório (43ee89f9-…) que o Craft usa internamente para cada nó.

Próximo passo

Com o vocabulário à mão, o Início Rápido monta o primeiro processo do zero.