hace 9 años
En el mundo de la gestión de procesos de negocio, BPMN (Business Process Model and Notation) se ha consolidado como un estándar fundamental para la modelización y automatización de flujos de trabajo. Uno de los elementos centrales de BPMN son los eventos. Comprender qué son y cómo funcionan es esencial para crear diagramas de procesos efectivos y eficientes. En este artículo, exploraremos en profundidad los eventos BPMN, sus tipos y cómo utilizarlos para representar con precisión la dinámica de tus procesos.

¿Qué son los eventos en BPMN?
Un evento en BPMN representa algo que ocurre durante el desarrollo de un proceso. Estos sucesos tienen un impacto en el flujo del proceso, ya sea como causa o como efecto. Piensa en un evento como un disparador o una señal que marca un punto importante en la ejecución de un proceso. Desde el inicio de un proceso hasta la recepción de un mensaje o la finalización de una tarea, todo puede ser modelado como un evento.

Visualmente, los eventos se representan con un círculo. Sin embargo, para diferenciar los distintos tipos de eventos y su función dentro del proceso, se utilizan variaciones en el contorno del círculo y símbolos internos.
Tipos de eventos BPMN
Los eventos en BPMN se clasifican principalmente en tres categorías, según su ubicación y función en el flujo del proceso:
- Eventos de inicio: Marcan el comienzo de un proceso.
- Eventos intermedios: Ocurren durante la ejecución del proceso, afectando su flujo.
- Eventos de fin: Señalan la finalización de un proceso.
Vamos a explorar cada uno de estos tipos de eventos en detalle:
Eventos de inicio
El evento de inicio es el punto de partida de un proceso. Aunque la especificación de BPMN indica que su uso es opcional, se recomienda su inclusión para mejorar la claridad y evitar ambigüedades en la documentación del proceso. Utilizar un evento de inicio facilita la comprensión del flujo y promueve las buenas prácticas en la modelización.
Existen diferentes tipos de eventos de inicio, cada uno representando una forma distinta de desencadenar el inicio de un proceso:
- Inicio (genérico o manual): Representado por un círculo simple con borde delgado. Indica un inicio manual del proceso, generalmente activado por un usuario. Por ejemplo, un empleado iniciando una solicitud de vacaciones en un sistema.
- Temporizador: Se simboliza con un círculo y un reloj en su interior. Representa un inicio automático del proceso basado en un patrón temporal. Puede ser diario, semanal, mensual o cualquier otro ciclo temporal. Un ejemplo sería un proceso que se inicia automáticamente todos los lunes para generar informes semanales.
- Mensaje: Se representa con un círculo y un sobre en su interior. El proceso se inicia al recibir un mensaje externo. Este mensaje puede provenir de diversas fuentes, como un correo electrónico, un servicio web o cualquier otro sistema conectado a la plataforma BPMN. Un ejemplo sería un proceso de atención al cliente que se inicia al recibir un correo electrónico con una consulta.
- Regla: Se simboliza con un círculo y un símbolo de regla en su interior. El proceso se inicia cuando se cumple una condición específica, definida como una regla de negocio. Por ejemplo, un proceso de aprobación de crédito que se inicia automáticamente cuando la puntuación de crédito de un cliente supera un umbral determinado.
- Señal: Se representa con un círculo y un triángulo en su interior. El proceso se inicia al recibir una señal emitida por otro proceso. Las señales son un mecanismo de comunicación entre procesos desacoplados. Imagina un proceso de alta de empleado que emite una señal que inicia procesos en otros departamentos, como el de TI para la creación de cuentas de usuario.
- Múltiple: Se simboliza con un círculo y un asterisco en su interior. Representa un inicio de proceso que puede ser desencadenado por varias condiciones posibles, pero solo una de ellas necesita ocurrir para iniciar el proceso. Por ejemplo, un proceso de recepción de pedidos que puede iniciarse a través de un formulario web o por correo electrónico.
- Paralelo: Se representa con un círculo y tres líneas paralelas en su interior. Similar al evento de inicio múltiple, pero en este caso, todas las condiciones definidas deben cumplirse simultáneamente para que el proceso se inicie. Un ejemplo podría ser un proceso de lanzamiento de un producto que se inicia solo cuando se completan simultáneamente la aprobación de marketing y la aprobación legal.
Además de estos eventos de inicio generales, existen eventos de inicio exclusivos para subprocesos:
- Escalada: Inicia un subproceso si el proceso principal lanza un evento intermedio de escalada. Se utiliza para manejar situaciones excepcionales o escalaciones dentro de un proceso.
- Error: Similar al evento de escalada, pero este siempre interrumpe el proceso principal al lanzar un error. Se utiliza para la gestión de errores críticos dentro de un subproceso.
- Compensación: Se activa cuando se requiere deshacer acciones previas realizadas en el proceso. Se inicia mediante un evento de lanzamiento de compensación en el diagrama principal del proceso. Por ejemplo, en un proceso de reserva de hotel, si la reserva falla, se puede activar un evento de compensación para cancelar el pago realizado.
Eventos intermedios
Los eventos intermedios ocurren durante la ejecución de un proceso y pueden afectar su flujo normal. Se utilizan para modelar desvíos en el flujo (flujos de excepción), pausas, esperas o interacciones con sistemas externos.
Los eventos intermedios se representan con un doble círculo y se clasifican en eventos de captura (que esperan un evento externo) y eventos de lanzamiento (que generan un evento para ser capturado por otro proceso o sistema).

- Intermedio (genérico): Representado por un doble círculo vacío. Indica un punto en el proceso donde ocurre un cambio de estado, pero sin una acción específica definida. Puede usarse como marcador o punto de referencia dentro del flujo.
- Mensaje: Representado por un doble círculo con un sobre en su interior. Puede utilizarse para modelar el intercambio de mensajes entre diferentes participantes del proceso (piscinas). En plataformas de automatización, también se usa para enviar y recibir correos electrónicos o interactuar con servicios web.
- Temporizador: Se simboliza con un doble círculo y un reloj en su interior. Se utiliza para introducir pausas o demoras en el proceso. Puede ser un evento de borde en una tarea para definir flujos de excepción basados en tiempo (por ejemplo, si una tarea no se completa en un plazo determinado). También se puede usar para establecer restricciones de tiempo en el flujo (por ejemplo, "Esperar 1 día antes de continuar").
- Enlace: Se representa con un doble círculo y un símbolo de enlace en su interior. Se utiliza para simplificar diagramas complejos, representando una continuidad en el flujo de secuencia sin necesidad de dibujar largas líneas. Un evento de enlace de "lanzamiento" redirige el flujo a un evento de enlace de "captura".
- Señal: Se simboliza con un doble círculo y un triángulo en su interior. Se utiliza para la comunicación desacoplada entre procesos. Puede lanzar una señal para que otros procesos la capturen o puede capturar una señal emitida por otro proceso.
- Condicional: Se representa con un doble círculo y un símbolo condicional en su interior. Similar al evento intermedio de temporizador, puede usarse como evento de borde para modificar el flujo normal de una tarea o fuera de tareas para representar una restricción basada en una condición. Por ejemplo, si se cumple una condición específica, se sigue un flujo alternativo.
- Paralelo: Se simboliza con un doble círculo y tres líneas paralelas en su interior. Permite esperar a que varios eventos intermedios ocurran simultáneamente antes de continuar el flujo del proceso. Todos los eventos intermedios paralelos deben activarse para que el evento paralelo se dispare.
- Múltiple: Se simboliza con un doble círculo y un asterisco en su interior. Similar al evento paralelo, pero en este caso, solo uno de los eventos intermedios múltiples necesita ocurrir para que el evento múltiple se dispare.
Eventos de fin
Los eventos de fin marcan la conclusión de un proceso o un flujo específico dentro de un proceso. Indican cómo y cuándo termina el proceso y pueden desencadenar acciones adicionales al finalizar.
Los eventos de fin se representan con un círculo grueso.
- Fin (genérico): Representado por un círculo grueso simple. Indica el final del proceso o de una rama del proceso. Simplemente finaliza el "token" (la instancia de ejecución) del flujo en ese punto. Un proceso puede tener uno o más eventos de fin, especialmente en procesos con flujos paralelos.
- Múltiple: Se simboliza con un círculo grueso y un asterisco en su interior. Representa un final de proceso que implica la ejecución de múltiples acciones de finalización simultáneamente.
- Mensaje: Se representa con un círculo grueso y un sobre en su interior. Al finalizar el proceso, lanza un mensaje a otro proceso o sistema. Se utiliza para la comunicación entre procesos al finalizar una tarea.
- Escalada: Se simboliza con un círculo grueso y un símbolo de escalada en su interior. Al finalizar el proceso, envía un mensaje de escalada para que otros eventos de captura (evento de inicio de escalada o evento intermedio de captura de escalada) inicien flujos complementarios. Se utiliza para notificar situaciones que requieren atención en un nivel superior o en otro proceso.
- Señal: Se simboliza con un círculo grueso y un triángulo en su interior. Envía una señal a otros procesos al finalizar. Similar al evento de mensaje, pero la señal no tiene un destinatario específico, sino que es capturada por cualquier proceso que esté "escuchando" esa señal.
- Error: Se simboliza con un círculo grueso y un símbolo de error en su interior. Finaliza el proceso e indica que ha ocurrido un error. Puede enviar una señal de error para que sea manejada por un subproceso de errores.
- Terminador: Se simboliza con un círculo grueso y un punto grueso en su interior. Finaliza el proceso de forma abrupta, cerrando todos los "tokens" activos, incluso si hay ramas del proceso aún en ejecución. Es útil para modelar situaciones donde el proceso debe detenerse completamente sin esperar a que se completen otras tareas o flujos paralelos.
- Compensación: Se simboliza con un círculo grueso y un símbolo de compensación en su interior. Finaliza el proceso o una parte del proceso e inicia un flujo de compensación. Este flujo se utiliza para deshacer acciones realizadas previamente en el proceso, como cancelar reservas o revertir transacciones.
Ejemplo práctico: Evento de inicio condicional para el departamento de compras
Consideremos la pregunta planteada: ¿Qué tipo de evento se utiliza cuando el departamento de compras comienza a operar cuando el stock de un producto llega a un nivel mínimo?
La respuesta es un Evento de Inicio Condicional. Este tipo de evento es ideal para representar situaciones en las que un proceso se inicia automáticamente cuando se cumple una condición específica. En este caso, la condición es que el stock de un producto sea inferior al nivel mínimo establecido.
En un diagrama BPMN, modelaríamos esto de la siguiente manera:
- Utilizaríamos un Evento de Inicio Condicional al principio del proceso del departamento de compras.
- En las propiedades del evento de inicio condicional, definiríamos la condición: "Stock del producto X <= Nivel mínimo".
- Cuando el sistema detecte que esta condición se cumple (es decir, el stock del producto X ha alcanzado o descendido por debajo del nivel mínimo), el Evento de Inicio Condicional se activará y dará comienzo al proceso de compra.
Este ejemplo ilustra claramente la utilidad de los eventos de inicio condicionales para automatizar procesos basados en reglas de negocio y condiciones específicas.

Consideraciones importantes sobre los eventos de inicio
Como se mencionó anteriormente, el uso de eventos de inicio es opcional, pero altamente recomendable. Aquí hay algunas consideraciones importantes a tener en cuenta:
- Claridad y complejidad: Si un proceso es complejo o la condición de inicio no es obvia, es fundamental utilizar un evento de inicio para clarificar el punto de partida del flujo.
- Consistencia: Si un proceso incluye al menos un evento de fin, es una buena práctica incluir también al menos un evento de inicio para mantener la coherencia y la integridad del modelo.
- Múltiples eventos de inicio: Un proceso puede tener múltiples eventos de inicio. En estos casos, cada evento de inicio se considera independiente y cada uno puede desencadenar una instancia separada del proceso. Esto es útil para modelar procesos que pueden iniciarse de diferentes maneras.
En resumen, los eventos de inicio son elementos esenciales en BPMN para definir el punto de partida de los procesos. Su correcta utilización mejora la comprensión, la documentación y la automatización de los flujos de trabajo.
Conclusión
Los eventos BPMN son componentes fundamentales para modelar procesos de negocio de manera precisa y efectiva. Desde los eventos de inicio que marcan el comienzo de un proceso, pasando por los eventos intermedios que gestionan el flujo durante su ejecución, hasta los eventos de fin que señalan su conclusión, cada tipo de evento desempeña un papel crucial en la representación de la dinámica de un proceso.
Comprender los diferentes tipos de eventos, sus características y cómo utilizarlos adecuadamente es esencial para cualquier profesional que trabaje con BPMN. Dominar los eventos BPMN te permitirá crear diagramas de procesos más claros, precisos y automatizables, lo que se traducirá en una mayor eficiencia y optimización de tus procesos de negocio.
Preguntas frecuentes (FAQ)
- ¿Es obligatorio usar eventos de inicio en BPMN?
No es estrictamente obligatorio, pero es altamente recomendable para mejorar la claridad y la documentación de los procesos, especialmente si son complejos. - ¿Cuántos eventos de inicio puede tener un proceso BPMN?
Un proceso puede tener múltiples eventos de inicio, cada uno desencadenando una instancia independiente del proceso. - ¿Qué tipo de evento de inicio se utiliza para un proceso que comienza a una hora específica cada día?
Se utiliza un Evento de Inicio Temporizador, configurado para ejecutarse diariamente a la hora deseada. - ¿Cuál es la diferencia entre un evento de inicio múltiple y un evento de inicio paralelo múltiple?
En el evento de inicio múltiple, solo una de las condiciones debe cumplirse para iniciar el proceso. En el evento de inicio paralelo múltiple, todas las condiciones deben cumplirse simultáneamente para iniciar el proceso. - ¿Qué son los eventos de borde en BPMN?
Los eventos de borde son eventos intermedios que se adjuntan al borde de una actividad (tarea o subproceso). Se utilizan para modelar flujos de excepción o interrupciones que pueden ocurrir durante la ejecución de una actividad, como eventos basados en tiempo (temporizador) o eventos condicionales.
