- Introdução
- Introdução
- Modelagem de processos
- Noções Básicas sobre Modelagem de Processos
- Abertura da tela de modelagem
- Modelagem de seu processo
- Alinhamento e conexão de elementos BPMN
- Autopilot para Maestro Orchestrate (pré-visualização)
- Implementação de processos
- Depuração
- Simulação
- Publicação e atualização de processos agênticos
- Cenários de implementação comuns
- Extração e validação de documentos
- Operações do processo
- Monitoramento de processo
- Informações de referência
Subprocessos e modularidade
Use BPMN subprocesses to group related activities, reduce diagram complexity, and build reusable, modular process structures in Maestro Orchestrate.
Os subprocessos oferecem suporte à clareza do modelo agrupando atividades relacionadas em uma única estrutura reutilizável. Eles ajudam a reduzir a complexidade do diagrama, isolar a lógica de negócios e incentivar a reutilização.
No BPMN, um subprocesso pode ser modelado em linha (recolhido ou expandido dentro do mesmo diagrama) ou como uma atividade de chamada reutilizável.
In Maestro Orchestrate:
- Os subprocessos em linha (recolhidos ou expandidos) são compatíveis para agrupamento e estruturação de lógica dentro do mesmo diagrama.
- As atividades de chamada são compatíveis para invocar um processo com agente separado (projeto).
- Não é possível chamar um arquivo BPMN diferente do mesmo projeto.Para lógica de processos cruzados reutilizáveis, crie um processo com agente separado e invoque-o usando uma Atividade de chamada.
- Ao usar uma Atividade de chamada, o processo de chamada passa entrada e recebe saída por meio de parâmetros definidos explicitamente.
Por que usar atividades de chamada?
Uma atividade de chamada faz referência a um subprocesso definido em outro lugar do projeto ou ambiente. Comporta-se como uma função reutilizável. Atividades de chamada melhoram a modelagem de processos por:
- Reduzindo a duplicação entre diagramas
- Isolar lógica reutilizável (por exemplo, aprovações, validações, despacho)
- Mantendo o diagrama principal conciso
- Suporte a comportamento consistente entre variantes de processo.
Como modelar subprocessos
In Maestro Orchestrate, you can model subprocesses in two ways:
- Como um subprocesso em linha (recolhido ou expandido dentro do mesmo diagrama)
- Como um subprocesso reutilizável usando uma Atividade de chamada
Modelar um subprocesso em linha
Use um subprocesso em linha quando quiser agrupar etapas relacionadas dentro da mesma instância de processo.
- Insira um elemento Subprocesso em seu diagrama BPMN.
- Escolha se deseja exibi-lo em visualização recolhida ou expandida.
- Modele a lógica interna diretamente dentro do subprocesso.
- Use o subprocesso para agrupar etapas relacionadas enquanto mantém o diagrama principal legível.
Os subprocessos em linha são executados dentro da mesma instância de processo e compartilham o mesmo contexto de execução.
Variáveis em Subprocessos
Variables behave the same way in collapsed and expanded subprocesses. The view only changes how the subprocess is displayed on the canvas.
A variable created inside a subprocess is scoped to that subprocess. Elements after the subprocess can't reference it directly. A value becomes available outside the subprocess only after it's exposed as an output, in one of these ways:
- Adding an output on the subprocess element and mapping it to the inner variable.
- Declaring an output variable on the subprocess end event.
For step-by-step instructions, see Exposing outputs from a subprocess.
If an element outside the subprocess references an inner variable that isn't exposed, Studio Web shows the validation warning Variable '<name>' is not set at this point in the flow.
Modelar um subprocesso reutilizável usando uma Atividade de chamada
Use uma Atividade de chamada quando quiser reutilizar a lógica em vários processos.
- Crie um Processo com agente (projeto) separado que contenha a lógica reutilizável.
- No diagrama pai, insira uma Atividade de chamada.
- Selecione o processo com agente de destino para invocar.
- Configure variáveis de entrada e saída para trocar dados entre o processo pai e o processo chamado.
Uma Atividade de chamada invoca uma instância de processo com agente separada. Os dados devem ser mapeados explicitamente entre o pai e os processos chamados.
Exemplos de modelagem
Caso de uso: um fluxo de trabalho de integração usa o mesmo subprocesso Collect Documents nos processos de integração de funcionários e fornecedores. Em vez de duplicar etapas, uma atividade de chamada é adicionada em cada processo pai fazendo referência ao mesmo subprocesso.
Use case: This subprocess example shows a conditional file download and upload workflow in Maestro Orchestrate. The process begins with a message start event and branches using an exclusive gateway.
Dependendo da condição, ele baixa um anexo de e-mail ou um arquivo de um campo de registro. Ambos os caminhos convergem para uma tarefa Carregar arquivo, seguida de um elemento Subprocesso chamado Sub-Process1, que encapsula as ações pós-upload antes que o fluxo de trabalho seja concluído.
Convenções de Nomes
Os nomes dos subprocessos e atividades de chamada devem:
- Use linguagem de negócios, não termos técnicos
- Descreva o resultado (por exemplo, , não )
- Refletir o que o subprocesso realiza, não o modo como.
- As faixas de participante não são compatíveis dentro de subprocessos.
Não Compatível
- A chamada de um arquivo BPMN separado dentro do mesmo projeto não é compatível.
- Para lógica reutilizável em vários processos, crie um processo com agente separado (projeto) e invoque-o usando uma Atividade de chamada.
- Os subprocessos ad-hoc não são compatíveis.
- O compartilhamento de variáveis implícitas em limites de processos não é compatível. Os dados devem ser mapeados explicitamente por meio de mapeamentos de entrada/saída.
- As faixas de participante não são compatíveis dentro de subprocessos.
Marcadores de várias instâncias
Os subprocessos em linha são compatíveis com a execução de várias instâncias.
As Atividades de chamada também são compatíveis com a execução de várias instâncias ao invocar um processo com agente separado.
Subprocessos ad-hoc e subprocessos de evento não são compatíveis.
Marcadores aninhados
As seguintes variáveis de string são suportadas como iteradores aninhados:
| Categoria | Atributos | Como usar/acessar |
|---|---|---|
| OuterSP - Obter informações de contato para cada usuário | InputCollection | var.GetUsers |
| OuterSP - Obter informações de contato para cada usuário | Iterator Item | iterator.item.gid |
| InnerSP - Obtenha todos os e-mails para cada contato | InputCollection | iterator[0].item.contactArray |
| InnerSP - Obtenha todos os e-mails para cada contato | Iterator Item | iterator[1].item.ContactId |
| Enviar Email | InputCollection | iterator[1].item.EmailArray |
| Enviar Email | Iterator Item | iterator[2]item.emailAddress |
Para obter mais detalhes sobre os elementos BPMN compatíveis com o Maestro Orchestrate, consulte Compatibilidade com BPMN.