lunes, 24 de junio de 2013

Introducción al diseño e implementación de un proceso con la herramienta BPMS Bonita.

Como ya se ha visto en otras entradas del blog existen varias herramientas BPMS en el mundo Open Source que están a la altura de muchas de las herramientas propietarias del mercado.

En algunos casos aún les falta un camino por delante como es el caso de Activiti y en otros casos ya pueden ser usadas en ambientes de desarrollo como la herramienta Bonita que nos ocupa en esta entrada y en varias más.

Comenzaremos con el diseño de un proceso que nos dará pie a ir mejorando su diseño, implementación, simulación y pruebas hasta desplegarlo en un entorno real.

Descripción del proceso:

El proceso se encarga de permitir que un cliente de una tienda pueda acceder al sitio online de la tienda, seleccionar varios artículos los cuales deben ser aprobados por un empleado de forma manual, esto puede llevar a que el cliente compre los artículos con su tarjeta de crédito, o a que rechace la compra o a que se pida más información sobre los artículos a comprar. Si se ejecuta el pago entonces los artículos serán enviados al cliente en 3 días hábiles y la transacción será archivada, en caso de que se rechace la compra también se archiva la transacción. En cualquier caso se da por terminado el proceso.

En esta entrada veremos como diseñar este simple proceso usando la herramienta Bonita.

Lo primero es descargar la herramienta Bonita, lo cual pueden hacer desde este enlace www.bonitasoft.com/products/download/ si ya tienes una cuenta creada, si no la tienes aun pues la creas y listo, es gratis.

En nuestro caso hemos descargado:

BonitaBPMCommunity-6.0.0-x86.exe que será la herramienta con la que trabajaremos hoy y también BonitaBPMCommunity-6.0.0-Tomcat-6.0.35.zip que es el servidor tomcat donde podremos correr nuestras aplicaciones.

Luego de instalar la herramienta Community podemos ejecutarla y verán la siguiente pantalla al inicio.

clip_image001

Una vez abierta la herramienta se les mostrará esta pantalla donde podrán tener acceso a múltiples recursos online que van desde documentación, ejemplos, y video tutoriales que los ayudarán a comprender como usarla.

clip_image003

Para este ejemplo crearemos un proceso que es uno de los tutoriales básicos de la herramienta y que nos permitirá ir viendo paso a paso como usarla.

Así que crearemos un diagrama nuevo y agregaremos una actividad de inicio “Inicio1” usando la paleta de componentes a nuestra izquierda y luego dando clic encima de ella veremos que en la esquina superior derecha nos aparece u pequeño rectángulo, damos clic en él y lo sostenemos y lo arrastramos hacia la derecha de esta manera habremos creado una nueva tarea como se aprecia en la siguiente imagen. Si damos clic sobre esta nueva tarea podemos introducir información general sobre la misma. Como se puede apreciar hemos cambiado su nombre, descripción y tipo de tarea. Esta tarea recibe una solicitud de una compra la cual debe ser revisada de forma manual por un empleado de ventas.

clip_image005

Si volvemos a realizar el paso anterior pero esta vez resaltando la tarea recién creada podremos crear una nueva tarea, “Pagar”, donde se completa la información del pago por la compra que se está realizando.

clip_image007

Puede darse el caso de que la información introducida de la tarjeta de crédito no sea válida o que no se desee terminar la compra así que damos la opción de otra tarea “Rechazar” la cual es creada a partir de la primera actividad.

clip_image009

Llegados a este punto hemos visto que de forma muy fácil podemos ir creando tareas conectadas entre sí y modificar su información general para lograr un diseño adecuado y entendible del proceso.

Ahora podemos editar el pool sobre el que estamos trabajando y cambiamos su nombre y descripción.

Deben ver un pool como ese rectángulo horizontal que delimita la zona donde hemos puesto las tareas hasta el momento.

clip_image011

Par realizar la edición solo tienen que marcar el nombre del pool y luego en General -> Pool darle al botón “Editar”.

Después de terminada esta acción debemos agregar otras tareas más:

  • Entrega express que nos permite una vez realizada la compra entregarle sus artículos al cliente en el plazo de 3 días.
  •  Más Información para el caso en que el empleado de ventas requiera más detalles sobre la compra que se desea realizar.
  •  Archivar que nos permite guardar la transacción realizada cualquiera sea su terminación. Por eso es que tanto el pagar como el rechazar como la entrega express llevan a “Archivar”.

clip_image013

Llegado este punto nos damos cuenta que la tarea de “Más Información” nos permite recopilar la información pero no es devuelta al empleado que está revisando la compra, así que para ello introducimos un nuevo elemento. En este caso un XOR, que en BPMN no es otra cosa que el mecanismo que nos permite crear una compuesta con múltiples entradas que la conectan.

Para seleccionar el elemento pueden ir a la paleta de componentes.

clip_image014

La cual aparece a la izquierda en la herramienta y seleccionar el ícono correspondiente y arrastrarlo al proceso. Deben entonces eliminar la conexión de “Inicio1” con “Revisión por ventas”, agregar el componente XOR y reorganizar las conexiones tal y como se ve en la siguiente imagen. De esta manera ya el empleado de ventas se puede enterar de la nueva información.

clip_image016

Y eso esto, de una forma bastante rápida hemos diseñado un proceso en BONITA y estamos listos para el siguiente paso que será agregar las variables que nos permitirán manejar la información de cada tarea y del proceso de forma global, lo cual estaremos realizando en la siguiente entrada.


¿Te ha gustado este Post? Compártelo con tus amigos.

1 comentario:

IconIconIcon