Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Transaccional Construcción
Transaccional Construcción
TRANSACCIONAL
Bizagi Process Modeler
Contenido
6. PARTICIPANTES ............................................................................................................................................. 17
www.bizagi.com Confidential 2
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
1. INTRODUCCIÓN
Bizagi es una solución BPM (Business Process Management) muy poderosa y al mismo tiempo muy
sencilla de usar. Con Bizagi se puede automatizar cualquier clase de proceso, desde los más
sencillos hasta los más complejos. El presente documento describe cómo con Bizagi se ha
construido un proceso de alta complejidad manejando transacciones, el cual se presenta con un
ejemplo fácil de comprender y muy fácil de desarrollar.
Los procesos transaccionales son utilizados para coordinar múltiples actividades que necesitan ser
realizadas de forma exitosa para que el flujo del proceso pueda continuar. Si las tareas no son
exitosas y fueron terminadas, es necesario regresarlas a su estado inicial. Las actividades dentro del
sub-proceso transaccional pueden ser manuales o automáticas donde se necesite conexión con
sistemas externos.
1. La ejecución de forma exitosa de todas las actividades dentro un sub-proceso. En este caso,
el subproceso transaccional termina y el proceso padre continúa con el flujo del proceso.
2. El segundo resultado es la falla de alguna de las actividades dentro del sub-proceso
transaccional. Si se presenta, cada una de las actividades que ya fueron completadas deben
ser reversadas, ejecutando la actividad de compensación asociada a dicha tarea. Las
compensaciones sólo se realizan en actividades que ya fueron terminadas.
3. Adicionalmente las transacciones incluyen un tercer escenario. Cuando se presenta un error
no esperado en el subproceso. La transacción debe ser cancelada, no se realizan
compensaciones y el proceso continúa por el flujo de manejo de error.
www.bizagi.com Confidential 3
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
El proceso de solicitud de viajes empieza cuando un empleado registra una solicitud de viaje, en ella
el empleado indica si es necesario realizar reservas de hotel, vuelos y/o la renta de un automóvil.
El jefe del empleado puede aprobar, rechazar o pedir cambios en la solicitud. Si el viaje es
aprobado, el Asistente de viajes debe realizar las reservas de los ítems especificados a través del
sub-proceso transaccional Reserva.
Para que la solicitud del viaje pueda continuar, es necesario que todas las reservas sean exitosas. Si
se solicitó anticipo se continúa con esta actividad.
Finalmente al regreso del viaje el empleado debe realizar un reporte de todos sus gastos durante el
viaje.
www.bizagi.com Confidential 4
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
El subproceso de Reserva fue modelado como un subproceso transaccional ya que este tipo de
subprocesos soporta un protocolo especial que asegura que todas las partes involucradas tengan
acuerdo completo: el sub-proceso como un todo se comporta como una sola actividad la cual
debería ser completada o cancelada.
Una transacción o subproceso transaccional es realizado satisfactoriamente cuando las tareas que
se deben ejecutar dentro del subproceso terminan de forma exitosa. El sub-proceso termina y se
dice que la transacción ha terminado, en ese momento los resultados de las tareas ejecutadas son
salvados en la base de datos.
Los eventos de excepciones o cancelaciones son lanzadas sin afectar la información o integridad de
la base de datos cuando la transacción no se completó satisfactoriamente.
Para que un empleado pueda realizar su viaje es necesario que el Asistente de Viajes realice todas
las reservas solicitadas de forma correcta.
Por ejemplo si un empleado solicita un viaje fuera del país necesitará tiquetes de avión y un hotel
donde hospedarse. El empleado no podría viajar si tuviera el vuelo reservado pero no un sitio
donde alojarse, o al contrario tiene un hotel pero no los tiquetes aéreos que le permiten llegar a su
destino.
www.bizagi.com Confidential 5
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
Si todas las reservas son correctas, el empleado es notificado sobre los datos de las reservas y toda
la información de ellas queda guardada en la base de datos. Se continúa con el resto del flujo del
proceso.
Si en algún momento falla alguna de las actividades, es necesario compensar o llevar a su estado
original las actividades que ya fueron realizadas. Es decir se tiene una reserva de vuelo exitosa pero
no hay disponibilidad del hotel, en definitiva el empleado no puedo realizar el viaje. Sin embargo el
subproceso no puede terminar hasta que no se haya cancelado la reserva del vuelo.
Con un subproceso transaccional, la compensación (en este caso sería la cancelación de las
reservas) de las tareas que ya fueron ejecutada se realiza mediante el envío de una señal con una
excepción de cancelación. El proceso ejecuta las actividades de cancelación requeridas para cada
tarea.
www.bizagi.com Confidential 6
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
Luego de realizar las compensaciones sale del subproceso ejecutando el flujo de cancelación. Los
datos que fueron modificados dentro del subproceso no son almacenados en la base de datos y por
tanto el proceso quedará en el estado que se encontraba antes de iniciarse dicho subproceso.
Ahora, la reserva del tiquete aéreo se realiza mediante una interfaz que busca un vuelo de acuerdo
a los requerimientos del empleado. Es posible que en el transcurso de esta operación ocurra un
error inesperado. Debido a que es una tarea automática no se sabe cómo proceder, por tanto es
necesario interrumpir todas las actividades que se están ejecutando y/o aquellas que no han
empezado. Se debe asignar el caso a una persona, la cual será la encargada de realizar las acciones
correctivas necesarias.
www.bizagi.com Confidential 7
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
http://help.bizagi.com/bpmsuite/es/index.html?entendiendo_procesos_transacci.htm
http://help.bizagi.com/bpmsuite/es/index.html?configuracion_del_sub_proceso_.htm
Después de que el empleado llega de su viaje, debe reportar todos los gastos realizados durante el
viaje, el reporte de gastos debe ser aprobado por el jefe.
Es necesario revisar que el reporte de gastos concuerde con las políticas de la compañía, si este es
el caso se procede con el registro de los gastos, de lo contrario el proceso regresa al empleado con
la actividad Reportar Gastos.
www.bizagi.com Confidential 8
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
3. MODELO DE DATOS
El proceso de transacciones utiliza la tabla maestra Solicitud de Viajes como entidad principal. En
ella se encuentra la información relacionada a la solicitud, por ejemplo, las fechas del viaje, ciudad y
país destino, requerimientos de reservas, etc. La entidad está relacionada con las entidades
maestras hotel, tiquete aéreo y carro, donde se encuentra la información asociada a las reservas
como, fechas, nombre del hotel, nombre de la aerolínea, tarifas.
La información de las reservas solo queda en la base de datos una vez se hayan completado de
forma exitosa todas las reservas solicitadas por el empleado. Mientras en el proceso se ejecuta las
actividades que se encuentran dentro del subproceso transaccional, la información ingresada se
mantiene en memoria del sub-proceso sin ir a la base de datos (en Bizagi se conoce como scope) y
van a la base de datos únicamente cuando todas las actividades del subproceso han terminado
correctamente. Si el subproceso termina porque se lanza un evento de cancelación o de error, la
información no se guarda.
http://help.bizagi.com/bpmsuite/es/index.html?scopes.htm
www.bizagi.com Confidential 9
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
4. CONSTRUCCIÓN DE FORMAS
El proceso de solicitud de viajes utiliza varias formas que le ayuda en el manejo de la información,
facilitando el acceso a toda la información.
www.bizagi.com Confidential 10
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
www.bizagi.com Confidential 11
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
www.bizagi.com Confidential 12
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
www.bizagi.com Confidential 13
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
5. REGLAS DE NEGOCIO
DEFINIR EXPRESIONES
El subproceso transaccional Reserva incluye una compuerta inclusiva. La compuerta activa las
actividades en forma paralela de todas las reservas que fueron seleccionadas por el empleado que
realizo la solicitud de viajes.
www.bizagi.com Confidential 14
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
ACCIONES DE LA ACTIVIDAD
www.bizagi.com Confidential 15
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
www.bizagi.com Confidential 16
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
6. PARTICIPANTES
Para la definir quién debe realizar cada tarea se utilizan roles. En el quinto paso del asistente, de
clic en definir participantes.
www.bizagi.com Confidential 17
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
www.bizagi.com Confidential 18
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
7. CONFIGURACIÓN DE CORREOS
ELECTRONICOS
El proceso incluye varios correos:
www.bizagi.com Confidential 19
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
Para que estos puedan ser enviados correctamente dentro de su empresa, es necesario que se
configure correctamente el servidor de correo (Servidor SMTP). El envío de correos en la proyecto
viene activado pero sin la configuración personalizada.
Ingrese en Bizagi Studio a la pestaña de Configuración. Allí de clic sobre Entorno y seleccione la
opción de Popular. En esta opción debe activar el envío de notificaciones y digitar el nombre del
www.bizagi.com Confidential 20
CONSTRUCCIÓN DEL PROCESO
TRANSACCIONAL
Servidor SMTP, así como la cuenta de la que se enviarán los correos, como se muestra en la imagen
a continuación.
Configuración de ambiente:
http://help.bizagi.com/bpmsuite/es/index.html?configuracion_de_ambientes.htm
Servidor SMTP:
http://help.bizagi.com/bpmsuite/es/index.html?configuracion_smtp.htm
www.bizagi.com Confidential 21