Actividades

Marcador de Bucle(Loop Marker)

El marcador (↻) que hace que una actividad se repita mientras se cumpla una condición — el while/do-while de BPMN sobre una sola actividad.

La característica de bucle estándar repite una actividad hasta que su condición de bucle indica parar, probando opcionalmente antes o después de cada iteración y acotada por un número máximo. Comprime «reintentar hasta ser aceptado» en una sola actividad marcada en lugar de un ciclo de compuerta.

Cuándo usar y evitar

Cuándo usar

  • Para pasos de reintento hasta el éxito: intentos de contacto, rondas de negociación, reverificaciones de calidad.

  • Cuando las iteraciones son secuencialmente dependientes — cada repetición tiene en cuenta el resultado anterior.

  • Para despejar los diagramas de pequeños bucles con flecha de retorno.

Cuándo NO usar

  • Cuando las iteraciones se ejecutan por elemento de una colección — eso es multi-instancia, no un bucle.

  • Cuando el ciclo abarca varias actividades — modele un bucle explícito con compuerta.

  • Cuando no existe condición de terminación — los bucles no acotados son un error de modelado.

Ejemplo de negocio

Llamar al cliente hasta contactarlo

Diagrama BPMN: Llamar al cliente hasta contactarlo
Llamar al cliente hasta contactarlo

Abra este ejemplo en el editor de procesos de HEFLO y explore el diagrama por dentro.

Abrir en el editor HEFLO →

Paso a paso

  1. Contactar al cliente (resaltado, marcador de bucle ↻) se ejecuta.
  2. La condición de bucle «cliente aún no contactado» lo relanza — intento tras intento, con un máximo razonable.
  3. Una vez logrado el contacto (o alcanzado el límite), el flujo continúa.

Diferencias

Bucle vs Multi-instancia

El Bucle repite el mismo trabajo mientras se cumple una condición (número desconocido, secuencial por naturaleza). La Multi-instancia crea una ejecución *por elemento de la colección* (número conocido al iniciar, paralelo o secuencial). Guiado por condición → bucle; guiado por datos → MI.

Preguntas frecuentes

¿Dónde se define la condición del bucle?

En las características de bucle de la actividad: la expresión booleana, el indicador testBefore y el loopMaximum opcional.

¿Cómo escapar de un bucle atascado?

Fije un loopMaximum, o adjunte un contorno de temporizador interruptivo a la actividad en bucle como válvula de seguridad.

Elementos relacionados