Looplex Knowledge Base

Como criar um Workflow?

Os princípios de um Workflow

Tradicionalmente um Workflow ou fluxo de trabalho poderia ser projetado por qualquer pessoa com um pedaço de papel, com a sua execução conduzida por mensagens, e-mails e planilhas. Com o advento de novas ferramentas, hoje é possível criar, gerenciar e executar um Workflow de forma muito mais simples, automatizando parte ou a totalidade de um processo de negócios, executando com precisão todas as suas iterações, garantindo que os documentos e informações necessárias sejam disponibilizadas para cada etapa e participante do processo sem ruídos.

Como organizar e criar um Workflow

Para criar um fluxo de trabalho de forma efetiva, é necessário observarmos alguns aspectos importantes:

  • Identificar os recursos envolvidos (participantes, documentos, informações necessárias);
  • Listar as tarefas que desejamos completar, e em especial o objetivo que se pretende alcançar com o fluxo desenhado;
  • Determinar os responsáveis por cada tarefa e atribuir papéis;
  • Criar efetivamente o fluxo de trabalho para visualizar o processo;
  • Teste o seu Workflow;
  • Treinar o time para que compreenda o Workflow estabelecido; e
  • Publicar o Workflow para uso em produção.

1. Identificando os recursos envolvidos

O primeiro passo para criarmos o nosso Workflow é entender como a tarefa é conduzida atualmente:

  • Como os responsáveis lidam com a informação disponível?
  • Quais documentos e informações são vitais para que o objetivo seja alcançado?
  • Há a necessidade de obtenção de aprovações de pessoas diversas?
  • As informações circulam entre os participantes por e-mail, telefone? Há registro?

Em outras palavras, o primeiro passo é conversar com os interessados na operação e entender como o trabalho é feito, bem como o que esperam que a automatização desse fluxo pode trazer de benefícios.

2. Listando as tarefas que precisamos cumprir

Um workflow pode tanto consistir em uma estrutura simples e sequencial de passos que devem ser cumpridos como apresentar estruturas complexas que contém múltiplos caminhos paralelos ou condicionais que devem ser observados, criando um “mapa” com muitas tarefas que podem ou não ser cumpridas conforme o caso concreto.

Pode ainda depender de outras integrações ou informações de fontes variadas, bem como aprovações e inputs de pessoas diferentes.

Assim, é essencial entender quais as tarefas que devem ser cumpridas antes de desenhar um fluxo, bem como ter claro o objetivo que pretendemos alcançar ao executá-lo.

3. Determinando responsáveis e atribuindo papéis

Para que um fluxo funcione efetivamente é importante definir quem será o responsável por cada etapa do processo, bem como as partes envolvidas para eventuais aprovações. Portanto, é importante mapear previamente o papel de cada responsável nas etapas do processo.

4. Desenhando o fluxo de trabalho

De posse das informações acima, teremos uma visão mais clara do que consistirá o nosso Workflow e podemos proceder com o desenho da sua estrutura utilizando ferramentas de modelagem, como o Flowable.

Algumas dicas importantes na hora de desenhar o seu fluxo:

  • Ainda que a estrutura da operação seja complexa, opte por manter o fluxo o mais simples e direto possível: caso a operação envolva muitas etapas e desdobramentos, tente quebrar o fluxo em subfluxos de menor complexidade que cuidem de um objetivo específico. Por exemplo, ao criar um fluxo para a montagem de um contrato, você pode criar um fluxo menor que cuidará apenas da coleta de dados sobre as partes (e que pode ser reaproveitado em outras operações). Este “subfluxo” funcionaria como uma “caixa preta” que pode ser inserida no fluxo principal como uma etapa (no caso, uma etapa que coleta informações das partes). Essa estratégia simplifica o seu fluxo principal e modulariza a sua aplicação, com a vantagem de construir gradualmente uma biblioteca de subfluxos que podem ser reaproveitados em outras operações.
  • Sempre que possível, busque delegar operações complexas para chamadas de API: isso permite que o seu fluxo fique mais limpo e ao mesmo tempo aproveite funções já prontas no sistema que poderiam demandar uma complexidade muito grande para serem desenhados em BPMN.
  • Observe as métricas: ao criar o seu fluxo, tenha em mente quais etapas trazem informações importantes e que podem ser utilizadas como parâmetros de medição para otimização futura. O tempo que uma etapa leva para ser concluída, uma etapa que pode conduzir à interrupção do processo, obstáculos que conduzem a caminhos mais demorados no processo: todos exemplos de realidades que podem e devem ser medidos para que futuras otimizações no processo de trabalho sejam implementadas com sucesso. Nesse sentido, busque sempre trabalhar em conjunto com os responsáveis por Data Analytics e BI, que podem dar insights interessantes sobre dados importantes no processo.

5. Testando o Workflow criado

Assim como um software recém criado deve passar por uma fase de testes e iteração com o usuário final, o workflow também deve ser considerado um pedaço de software que depende de testes.

Faça rodadas de testes com os usuários finais que utilizarão o sistema, identifique problemas e dificuldades, otimize e simplifique.

Imagem da pasta 'packages'

6. Treinando o time

A maior dificuldade para a implementação de um workflow automatizado é fazer com que as pessoas envolvidas efetivamente deixem de conduzir as tarefas como fazem atualmente para adotar o novo modelo automatizado.

E, portanto, é essencial que um treinamento e OnBoarding do time seja feito, principalmente para que informações importantes e documentos sejam inseridos no sistema, garantindo assim que o workflow seja executado de maneira consistente e que as métricas observadas sejam fidedignas.

7. Publicando o Workflow

Após todo o desenvolvimento do Workflow podemos finalmente lançá-lo em produção. Contudo, como todo sistema, é recomendável que seja inicialmente lançado com acesso restrito a um grupo menor de pessoas e operações.

Isso possibilita observarmos a efetividade do fluxo, medirmos o desempenho alcançado, realizarmos ajustes necessários e, finalmente, escalarmos a solução em um ambiente controlado.

Edit this page on GitHub