Figuras de Inicio y Fin
De
<keywords content="keywords">inicio, fin, evento, evento de inicio, evento de fin, temporizador,evento intermedio, evento de mensaje, evento de enlace, evento de señal</keywords>
Contenido |
Eventos de Inicio, Intermedios y de Fin
El entendimiento, diseño, ejecución, análisis y control de los procesos demanda que diferentes áreas de la organización interactúen con los procesos. BPMN ha sido creado para proporcionar un lenguaje unificado que sea comprensible tanto para los analistas de negocio como para los expertos del área de tecnología.
BPMN provee una notación común para que las personas relacionadas con los procesos puedan expresarlos gráficamente en una forma más clara, estandarizada y completa. BPMN facilita no solo la estandarización de los procesos dentro de la organización sino que amplia el campo de acción para que estos puedan ser compartidos y entendidos entre los diferentes socios de negocio. Si desea obtener información adicional sobre BPMN, por favor lea el siguiente artículo.
Dentro de los Elementos de Modelamiento Básicos de BPMN, se encuentran los Eventos de Inicio, Intermedios y de Fin, que son los que explicaremos con más detalle en este artículo.
Definición: un evento es algo que sucede durante el curso del proceso, afectan el flujo de proceso y normalmente tienen una causa (trigger) o resultado.
Representación: Los eventos son representados a través de círculos con centro vacío, lo cual permite incluir diferentes marcadores para diferenciarlos entre sí.
Tipos: los tipos de eventos se clasifican dependiendo de cuándo ellos afectan el flujo:
TIPO DE EVENTO |
NOMBRE BPMN |
DEFINICIÓN |
NOTACIÓN |
Inicio |
Start |
Como su nombre lo indica, representa el punto de inicio de un proceso. |
|
Intermedio |
Intermediate |
Ocurren entre un evento de inicio y de fin. Estos Afectarán el proceso, pero no lo iniciarán o finalizarán directamente | |
Fin |
End |
Indica cuando un proceso termina. |
Evento de Inicio
Este tipo de evento indica el comienzo o el inicio de un proceso. Los diferentes tipos de Eventos de Inicio son:
NOMBRE BPMN |
USO |
NOTACIÓN |
Message Start |
Un proceso activo envía un mensaje a otro proceso específico para activar su inicio. |
|
Timer Start |
Se puede fijar una hora-fecha específica (e.g. todos los lunes a las 9am) en la que se activará el inicio de un proceso. | |
Signal Start
|
Un proceso activo envía una señal y causa el inicio de otro proceso. Notar que la señal se envía a cualquier proceso que pueda recibir la señal, pero no es un mensaje (el cual tiene una fuente específica y un objetivo). |
Consideraciones
Todos los flujos deben tener un comienzo, independientemente de si se refieren a un proceso o un subproceso.
Nota: Inicio es una figura opcional en la diagramación del proceso. Sin embargo, es recomendable utilizarlo en el diagrama. |
Sólo un flujo de secuencia puede salir de esta figura (nada puede venir antes de ésta).
Esta figura debe aparecer sólo una vez por proceso, aún cuando por múltiples razones se pueda dar inicio al proceso.
Propiedades
Se puede asociar una descripción con esta figura como información adicional.
Ejemplo: La figura "Inicio" es dibujada al comienzo de este proceso, indicando el comienzo del proceso. |
Inicio de Mensaje
Un proceso activo envía un mensaje a otro Proceso específico para causar su inicio.
Consideraciones
El Inicio de Mensaje siempre es una figura de atrapar (catch). Esto es, para usar el Inicio de Mensaje, debe haber un Evento de Mensaje que lance el mensaje.
Esta figura debe ser configurada para identificar el proceso objetivo y el elemento objetivo en el proceso que lanza el mensaje.
Propiedades
El Evento Intermedio que lanza el mensaje y el mensaje de inicio que lo atrapa deben tener exactamente el mismo nombre.
Ejemplo: El proceso de solicitud de crédito lanza un mensaje para iniciar un proceso de venta tan pronto una oferta sea viable. |
1. Para convertir una figura de evento en un mensaje: hacer clic derecho y seleccionar Event Type '-> Message' tal y como se muestra en la imagen a continuación. Recuerde que los eventos de mensaje de envío y respuesta deben tener el mismo nombre.
2. Dirigirse al ayudante de procesos y seleccionar el paso número 6, para el proceso que contiene el Evento de Envío. Configurar el mensaje de envío para identificar el proceso y el elemento destino, es decir, el proceso donde se encuentre el Evento de Mensaje de Inicio. Para leer más sobre colaboración, por favor leer el siguiente artículo.
Inicio de Señal
Un proceso activo envía una señal y causa el inicio de otro proceso.
Consideraciones
El Inicio de Señal siempre es una figura de atrapar (catch). Esto es, para usar una Señal de Inicio, debe haber un Evento de Señal que lance el mensaje.
Una señal es enviada a cualquier proceso que pueda recibirla, pero no tiene una fuente y objetivo específicos. Cualquier figura de atrapar (catch) con el mismo nombre será activada.
Propiedades
El Evento Intermedio que lanza la señal y la Señal de Inicio que la atrapa debe tener exactamente el mismo nombre.
Ejemplo: El proceso de solicitud de crédito lanza una señal para iniciar el proceso de ventas tan pronto haya una oferta viable. |
Diagrame las señales de envío y respuesta en el primer paso del asistente de procesos.Los eventos se pueden convertir en señales de la misma forma en la que se explica cómo convertir un Evento en un Mensaje, previamente en este artículo.
Inicio de Temporización
Con el inicio de temporización, se define una hora-fecha específica (e.g. todos los lunes a las 9am) para activar el inicio del Proceso de manera automática. Es decir, el proceso será iniciado automáticamente en la fecha y hora indicada. Los eventos se pueden convertir en temporizadores de la misma forma en la que se explica cómo convertir un Evento en un Mensaje, previamente en este artículo.
Propiedades
El Inicio de Temporización tiene una opción de horario en las propiedades de la figura. Este es el horario que causará que el caso sea iniciado.
Ejemplo: Un proceso de inventario debe ser iniciado cada dos meses el día 25. |
Configure el horario que causa el inicio del proceso
Eventos Intermedios
Los eventos intermedios son tareas que afectan el flujo normal del proceso y pueden ocurrir en cualquier momento, los eventos intermedios no dependen del usuario sino de un suceso externo. Los eventos intermedios pueden o no ocurrir dentro de un proceso.
El evento intermedio puede ser activado manualmente por el usuario o automáticamente por una regla de negocio pero para esto debe estar disponible.
Los diferentes tipos de Eventos Intermedio Son:
Ejemplo: El siguiente ejemplo tiene el Evento Intermedio de esperar documentos antes de continuar con el análisis de la solicitud de crédito. |
Consideraciones
Pueden llegar muchos flujos de secuencia, pero sólo entra una en una instancia de tiempo y siempre sale un flujo de secuencia.
Puede formar parte directa del flujo del proceso en la secuencia normal del mismo o anteceder a una actividad, un módulo o un subproceso como un hilo aparte del flujo normal del proceso.
Si un evento intermedio tiene forma asociada no es necesario que una actividad lo preceda.
Propiedades
Propiedades Basicas (nombre, nombre visible, descripción, texto de ayuda)
Ejemplos Avanzados: Desistimiento de una solicitud: En este ejemplo se muestra una situación de negocio en la que se podría desistir de una solicitud en cualquier momento después de ser registrado: |
Ejemplo Avanzado: Lanzamiento opcional de subprocesos: |
Evento Intermedio de Cancelación
Este tipo de evento intermedio es usado en subprocesos transaccionales. Debe ser siempre adjuntado (diagramado) a los límites del subproceso y debería ser lanzado si una excepción de cancelación es alcanzado mientras se está llevando a cabo el subproceso.
Ejemplo: Agencia de Viajes. Cuando ocurre un error en las reservas de vuelo o de hotel, se lanza el evento de terminación de cancelación dentro del subproceso de Reservas y al salir del subproceso se dispara el evento intermedio de cancelación adjunto al subproceso. |
Evento Intermedio de Error
Éste tipo de evento intermedio sólo puede ser usado si se adjunta a los límites de una actividad. Esto significa que la actividad es abortada cuando ocurre un error. Es posible usar este evento en actividades automáticas, lo que significa que un error del sistema.
Ejemplo: Orden de Compra. Cuando ocurre un error en la actividad de sistema de generar una orden de compra, el token pasa a la actividad de crear orden de compra manual. |
Evento Intermedio de Compensación
Este tipo de evento intermedio es usado en subprocesos transaccionales. Es usado también para manejar compensaciones. Se utiliza de forma reactiva cuando es dibujado en los límites de una actividad.
Ejemplo: Agencia de Viajes. Al ocurrir un error en la reserva de vuelo o de hotel, se lanza el evento de terminación de cancelación, lo cual produce que se ejecuten las actividades de compensación: Cancelar Vuelo y Cancelar Hotel. |
Configuración de Subprocesos Transaccionales o Transacciones.
Evento Intermedio de Temporizador
Esta figura representa una espera (periodo de tiempo) dentro del proceso. Este tiempo puede ser definido en tiempo de diseño o como parte de la información del proceso (Fecha o duración en cualquier tipo de unidad de tiempo).
La duración se define como una propiedad básica del evento, y será constante.
La duración del evento de temporizador puede ser variable también y puede modificarse en una expresión usando el método Me.Duration = x Minutos, donde los minutos pueden ser el resultado de un cálculo o un elemento del vocabulario. Otra forma de asignar la duración es usando el método Me.EstimatedSolutionDate = Fecha, donde fecha puede ser un atributo en el modelo de datos, el resultado de un cálculo o una definición de vocabulario. En el siguiente enlace se encontrará un ejemplo de como usar este método.
Ejemplo 1: El siguiente diagrama de una solicitud de crédito se cuenta con el Evento Intermedio de Temporizador representando una espera sencilla en el proceso (5 días) luego de la actividad de informar al cliente el resultado de la solicitud. Este tipo de usos del temporizador se conoce como demoras o esperas en el proceso. |
Ejemplo 2: En este proceso puede observarse un Evento Intermedio de Temporizador asociado a una actividad, lo cual indica que si en determinado tiempo no se ha podido completar la actividad de INFORMAR AL CLIENTE RESULTADO, se debe realizar la actividad posterior al Evento Intermedio de Temporizador: notificación automática al cliente y cerrar el proceso. Notificar al cliente vía email. En este caso, para definir la duración del temporizador asociado con la actividad, se debe usar Me.TimerEventDuration |
En el siguiente enlace puede encontrar más información sobre los Eventos Intermedios Adjuntos a los Límites de una Actividad.
Consideraciones
La duración o tiempo asignado al Evento Intermedio de Temporizador puede ser fijo o variable y está definido en minutos. Los minutos que se asignan corresponden al tiempo de espera que se debe tener en cuenta y estos dependerán de si los tiempos de jornada laboral están activos para Jobs. Por ejemplo, si el flujo de un proceso llega a un evento temporizador que tiene una Duración de 120 minutos a las 17.00 (5:00 pm) de un día Viernes y la jordana laboral está definida de Lunes a Viernes entre 8:00 (8:00 am) y 18:00 (6:00 pm), entonces el proceso esperará hasta el siguiente Lunes a las 9:00 (9:00 am) antes de continuar a la siguiente actividad.
Para que esta figura funcione correctamente, debe estar habilitado el servicio del scheduler para la aplicación correspondiente.
Puede ser diagramado dentro del flujo principal y actúa como mecanismo de retraso o espera. Si es usado como control de tiempo de una actividad manual, se diagramará dentro de la actividad (parte inferior).
Propiedades
Propiedades Basicas (nombre, duración del Evento Intermedio de Temporizador (dd-hh-mm) y costo. La duración (definido en dias, horas y minutos) puede ser tiempo fijo o variable.
Ejemplos Avanzados: En este caso se muestra una “Espera” de 3 días. En caso de que el Evento Intermedio Entrega de Documentos no ocurra antes del tiempo de la Espera (3 días) se deberá contactar al cliente. |
Evento Intermedio De Mensaje
Esta figura tiene una opción de lanzar y una de atrapar, que sirve para enviar o recibir un Mensaje. Para aprender cómo convertir un Evento Intermedio en un Evento Intermedio de Mensaje, por favor leer este artículo.
Cuando se usa para lanzar un mensaje, la figura está llena. Cuando se usa para atrapar un mensaje, la figura está vacía.
Consideraciones
Si un proceso está esperando un mensaje, éste será pausado hasta que el mensaje llegue o cambiará el flujo para manipulación de excepciones.
Para usar Lanzar Mensaje, debe haber un Evento Atrapar Mensaje que atrape el mensaje. Éste puede ser un Evento Intermedio de Mensaje o un Mensaje de Inicio.
La figura en el proceso que lance el mensaje debe ser configurada para identificar el Proceso y Elemento objetivos.
Propiedades
Los eventos de lanzado y atrapado de mensajes deben tener exactamente el mismo nombre y deben estar en procesos diferentes.
Ejemplo: El proceso de Solicitud de Crédito lanza un mensaje para iniciar un proceso de Ventas tan pronto una oferta sea viable. |
1. Configure la lanzada y atrapada de mensaje de modo que éstas tengan exactamente el mismo nombre.
2. En el Modelador de Procesos configure la figura que va a enviar el mensaje como “Envio” (“Is Throw”).
3. Ir al asistente en Bizagi Studio y seleccionar el paso 6 Colaboración para el proceso que tienen el evento de Envío. Configurar el evento de envío para identificar el proceso y elemento destino, es decir el proceso donde esta en evento de “Inicio De Mensaje”.
Evento Intermedio de Enlace
Un Enlace es un mecanismo para conectar dos secciones de un Proceso. Los Eventos de Enlace pueden ser usados para crear situaciones de bucle (loop) o para evitar líneas de flujo de secuencia largas. Esta figura tiene una opción de lanzar y atrapar, que es para lanzar un punto de conexión a una figura de Atrapar. Para convertir un Evento Intermedio en un Evento Intermedio de Enlace, se debe realizar un procedimiento similar al del primer paso para configurar la colaboración.
Consideraciones
Los usos de Eventos de Enlace son limitados a un solo nivel de proceso. Esto es, son usados sólo dentro del mismo proceso.
Primero dibuje el Evento de lanzar, luego el Evento de atrapar.
Propiedades
Los enlaces Atrapar y Lanzar deben tener exactamente el mismo nombre.
Ejemplo: Imagine que el proceso de Manejo de Quejas es muy grande y la actividad del Archivo está completamente a la derecha en el diagrama. Para enlazar el flujo sin usar un flujo de secuencia muy largo, use un Evento de Enlace. |
Evento Intermedio de Señal
Las Señales son usadas para enviar o recibir comunicaciones generales dentro y a través de los procesos. Una Señal BPMN es similar a una bengala disparada al cielo para que cualquiera que pudiera estar interesado la note y luego reaccione. Entonces, hay una fuente de la Señal, pero no un objetivo específico.
Consideraciones
Una señal es enviada a cualquier figura que esté configurada para recibirla, esto es, tiene el mismo Nombre. No hay un objetivo específico, entonces cualquier figura que esté disponible será activada.
Propiedades
Esta figura tiene una opción de lanzar y atrapar, que es para enviar una señal o recibir una señal. Cuando se usa para lanzar la señal, la figura está llena. Cuando se usa para atrapar la señal, la figura está vacía.
Para poder transformar un evento en una señal, hacer clic derecho y seleccionar Event Type -> Signal como se muestra en la imagen a continuación.
Ejemplo: El proceso de de solicitud de crédito lanza una señal para empezar el proceso de Ventas tan pronto una oferta sea viable. |
Configure las señales de envió y recepción con el mismo nombre.
Evento de Fin
El Evento de Fin de Terminación indica el fin de un proceso. Los diferentes tipos de Eventos de Fin son:
NOMBRE BPMN |
USO |
NOTACIÓN |
Terminador |
Es el fin del proceso. Solo existe uno por flujo. Si el proceso alcanza este evento, éste será cerrado. |
|
Cancelación |
Este tipo de Fin es usado dentro de un subproceso de transacción. Éste indicará que la transacción debe ser cancelada y causará un Evento Intermedio de Cancelación adjunto a la frontera del subproceso. | |
Error
|
Esta figura se usa para capturar errores, si están definidos o no. Todos los threads activos actualmente en un subproceso particular son en consecuencia terminados. El error será tomado por un Evento Intermedio de Error con el mismo Nombre, que está en la frontera de la actividad pariente más cercana. | |
Mensaje
|
Este tipo de Fin indica que un mensaje se envía a un proceso o caso de actividad específica, al concluir el proceso.. |
|
Señal
|
Este tipo de Fin indica que la señal será transmitida cuando el Fin haya sido alcanzado. Note que la señal es enviada a cualquier proceso que pueda recibir la señal y pueda ser enviada a través de los niveles del proceso, pero no es un mensaje (el cuál tiene una fuente y un objetivo). |
|
Fin |
Tipo de fin que indica un fin temporal en el proceso. Se usa cuando no se requiere hacer nada más, luego de una actividad, eventos intermedios o una compuerta exclusiva (elemento de divergencia). |
|
Evento Terminador
Evento que constituye el fin del proceso. Solo existe uno por flujo. Si el proceso alcanza este evento, éste será cerrado.
Consideraciones
Todos los flujos deben tener un evento de fin terminal, sin importar si hacen referencia a un proceso, un subproceso o un módulo.
Nota: El Evento de Fin de Terminación es una figura opcional en la diagramación del proceso. Sin embargo, es recomendable usarlo en el diagrama. |
Un flujo de secuencia entra en esta figura (nada puede salir de ésta).
Propiedades
Una descripción y un texto de ayuda pueden ser asociados con esta figura como información adicional.
Ejemplo: La figura "Evento de Fin de Terminación" es dibujada al final de este proceso, indicando el fin del proceso. |
Evento de Fin
Esta figura indica un fin temporal en el proceso. Se usa cuando nada más se requiere hacer luego de una actividad, eventos intermedios o una compuerta exclusiva (elemento de divergencia). A diferencia del Evento de Fin de Terminación, esta figura no cierra el proceso directamente a menos que no hayan tareas pendientes cuando ésta sea alcanzada; es decir, no hay más actividades manuales pendientes o puntos esperando que algo más sea terminado (por ejemplo, un Temporizador de Evento Intermedio).
Ejemplo: En la solicitud de préstamo, suponga que paralelo al desembolso y alistamiento de las tarjetas de crédito, los documentos que están aún en la oficina son archivados. La actividad de archivar no es requerida y puede entonces llevarse o no a cabo. Una vez realizada, el proceso no debe terminarse hasta cuando se haya hecho el cierre de la solicitud. Para este caso, luego de la actividad de archivar se incluye un "Evento de Fin", el cual indica que luego de esta actividad no hay nada más por realizar en este camino. |
Consideraciones
El Evento de Fin no tiene transiciones de salida.
El Evento de Fin tiene la propiedad de verificar para cada caso si existen o no actividades (tokens) pendientes. Si no hay actividades pendientes, el proceso se cierra automáticamente.
El uso típico de esta figura ocurre en situaciones de negocio en donde hayan caminos en paralelo y en uno de los caminos no hayan más actividades por realizar pero no es necesario cerrar el proceso por completo.
Este elemento no puede ser sintonizado con otro punto del proceso.
Nota: un Evento de Fin es una figura opcional en la diagramación del proceso; sin embargo, si es necesario, éste debe usarse en el diagrama. |
Propiedades
Se puede asociar Una descripción esta figura como información adicional; sin embargo, esto no se muestra en la aplicación Web.
Fin de Mensaje
Este tipo de Fin indica que un mensaje es enviado a un proceso o caso activo específico, al final de un proceso.
Consideraciones
El Fin de Mensaje siempre es una figura de lanzar (throw). Es decir, para usar el Fin de Mensaje, o el Mensaje de Inicio que atrapa el mensaje.
El Fin de Mensaje debe ser configurado para identificar el proceso objetivo y el elemento objetivo. Para poder crear un Fin de Mensaje, se debe hacer clic derecho en el Evento Fin y seleccione Event Type -> Message.
Propiedades
La figura que atrapa el mensaje y el Fin de Mensaje deben tener exactamente el mismo nombre.
Ejemplo: El proceso de solicitud de crédito lanza un mensaje que inicia un proceso de ventas tan pronto el proceso es finalizado. |
1. En el Modelador de Procesos, diagramar el Fin de Mensaje y la figura objetivo de este mensaje.
2. En el paso número 6 del asistente de procesos, configurar el el Mensaje de Envío para identificar el proceso y elemento objetivo, es decir, el proceso donde se encuentra el Mensaje de Inicio.
Fin de Señal
Este tipo de Fin indica que una Señal es transmitida cuando el Fin ha sido alcanzado.
Consideraciones
El Fin de Señal siempre es una figura de lanzar (throw). Esto es, para usar el Fin de Señal, debe haber un Evento de Señal que atrape el mensaje.
Una señal es enviada a cualquier proceso que pueda recibirla, pero no tiene una fuente y objetivo específicos. Cualquier figura de atrapar con el mismo nombre será activada.
Propiedades
La Figura que atrapa la señal y el Fin de Señal deben tener el mismo nombre.
El Mensaje de Fin debe ser configurado para identificar el Proceso y elemento objetivos.
Ejemplo: El proceso de Solicitud de Crédito lanza una señal para iniciar un proceso de Ventas tan pronto el proceso sea finalizado. |
Diagramar en el primer paso del asistente de procesos el Fin de Señal y la figura objetivo. Para convertir un Evento en una Señal, el procedimiento es similar al que se explicó previamente en este artículo para los mensajes.
Artículos Relacionados
Para mayor información y ejemplos acerca de Cancelar y eventos de Error de Fin, por favor vaya a: