- Introducción
- Primeros pasos
- Modelado de procesos
- Comprender el modelado del proceso
- Abrir el lienzo de modelado
- Modelar tu proceso
- Alinear y conectar elementos BPMN
- Autopilot™ para Maestro (vista previa)
- Implementación del proceso
- Depuración
- Simular
- Publicar y actualizar procesos de agente
- Escenarios de implementación comunes
- Extracción y validación de documentos
- Operaciones de proceso
- Supervisión de procesos
- Optimización de procesos
- Información de referencia

Guía del usuario de Maestro
Subprocesos y modularidad
Los subprocesos favorecen la claridad del modelo agrupando actividades relacionadas en una sola estructura reutilizable. Ayudan a reducir la complejidad de los diagramas, aislar la lógica empresarial y fomentar la reutilización.
En BPMN, un subproceso puede modelarse en línea (contraído o expandido dentro del mismo diagrama) o como una actividad de llamada reutilizable.
En Maestro:
- Los subprocesos en línea (contraídos o expandidos) son compatibles para agrupar y estructurar la lógica dentro del mismo diagrama.
- Las actividades de llamada son compatibles para invocar un proceso agéntico independiente (proyecto).
- No se admite la llamada a un archivo BPMN diferente desde el mismo proyecto. Para una lógica de procesos cruzados reutilizable, crea un proceso agéntico independiente e invócalo utilizando una actividad de llamada.
- Al utilizar una actividad de llamada, el proceso de llamada pasa la entrada y recibe la salida a través de parámetros definidos explícitamente.
¿Por qué utilizar actividades de llamada?
Una actividad de llamada hace referencia a un subproceso definido en otra parte del proyecto o entorno. Se comporta como una función reutilizable. las actividades de llamada mejoran el modelado de los procesos:
- Reduciendo la duplicación en los diagramas
- Aislando la lógica reutilizable (por ejemplo, aprobaciones, validaciones, despacho)
- Mantener el diagrama principal conciso
- Favoreciendo un comportamiento consistente en todas las variantes del proceso.
Cómo modelar subprocesos
En Maestro, puedes modelar subprocesos de dos maneras:
- Como subproceso en línea (contraído o expandido dentro del mismo diagrama)
- Como subproceso reutilizable utilizando una actividad de llamada
Modelar un subproceso en línea
Utiliza un subproceso en línea cuando quieras agrupar pasos relacionados dentro de la misma instancia de proceso.
- Inserta un elemento de SubProceso en tu diagrama BPMN.
- Elija si desea mostrarlo en vista contraída o expandida .
- Modela la lógica interna directamente dentro del subproceso.
- Utiliza el subproceso para agrupar pasos relacionados manteniendo el diagrama principal legible.
Los subprocesos en línea se ejecutan dentro de la misma instancia de proceso y comparten el mismo contexto de ejecución.
Modelar un subproceso reutilizable utilizando una actividad de llamada
Utiliza una actividad de llamada cuando quieras reutilizar la lógica en varios procesos.
- Crea un proceso de Agentic independiente (proyecto) que contenga la lógica reutilizable.
- En el diagrama principal, inserta una actividad de llamada.
- Selecciona el proceso de Agentic de destino que se va a invocar.
- Configura variables de entrada y salida para intercambiar datos entre el proceso principal y el proceso llamado.
Una actividad de llamada invoca una instancia de proceso agéntico independiente. Los datos deben asignarse explícitamente entre el proceso principal y el llamado.
Ejemplos de modelado
Caso de uso: un flujo de trabajo de incorporación utiliza el mismo subproceso Collect Documents tanto en los procesos de incorporación de empleados como de proveedores. En lugar de duplicar pasos, se añade una actividad de llamada en cada proceso principal que hace referencia al mismo subproceso.

Caso de uso: este ejemplo de subproceso muestra un flujo de trabajo de descarga y carga de archivos condicional en Maestro. El proceso comienza con un evento de inicio de mensaje y se ramifica mediante una puerta de enlace exclusiva. Dependiendo de la condición, descarga un archivo adjunto de correo electrónico o un archivo de un campo de registro. Ambas rutas convergen en una tarea Cargar archivo, seguida de un elemento Subproceso llamado Sub-proceso1. Este subproceso encapsula pasos adicionales relacionados con las acciones posteriores a la carga antes de completar el flujo de trabajo en el evento de finalización.

Convenciones de nombres
Los nombres de los subprocesos y de las actividades de llamada deberían:
- Utilizar lenguaje empresarial, no términos técnicos
- Describe el resultado (por ejemplo, no )
- Reflejar lo que logra el subproceso, no cómo lo hace.
- Los carriles de participantes no se admiten dentro de los subprocesos.
No compatible
- No se admite la llamada a un archivo BPMN independiente dentro del mismo proyecto.
- Para una lógica reutilizable en varios procesos, crea un proceso agéntico independiente (proyecto) e invócalo utilizando una actividad de llamada.
- No se admiten los subprocesos ad-hoc.
- No se admite el uso compartido de variables implícitas a través de los límites del proceso. Los datos deben asignarse explícitamente a través de enlaces de entrada/salida.
- Los carriles de participantes no se admiten dentro de los subprocesos.
Marcadores multiinstancia
Los subprocesos en línea admiten la ejecución de varias instancias.
Las actividades de llamada también admiten la ejecución de varias instancias al invocar un proceso de Agentic independiente.
Los subprocesos ad-hoc y los subprocesos de eventos no son compatibles.
Marcadores anidados
Las siguientes variables de cadena se admiten como iteradores anidados:
| Categoría | Atributos | Cómo utilizar/acceder |
|---|---|---|
| OuterSP: obtener información de contacto para cada usuario | InputCollection | var.GetUsers |
| OuterSP: obtener información de contacto para cada usuario | Iterator Item | iterator.item.gid |
| InnerSP: obtener todos los correos electrónicos para cada contacto | InputCollection | iterator[0].item.contactArray |
| InnerSP: obtener todos los correos electrónicos para cada contacto | Iterator Item | iterator[1].item.ContactId |
| Enviar correo electrónico | InputCollection | iterator[1].item.EmailArray |
| Enviar correo electrónico | Iterator Item | iterator[2]item.emailAddress |
Para obtener más detalles sobre los elementos BPMN admitidos en Maestro, consulta Soporte BPMN.