viernes, 19 de julio de 2013

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

clip_image002

En la primera entrada de esta serie con el BPMS Bonita habíamos visto como modelar el proceso de la figura anterior.

En la segunda entrada  vimos cómo crear tanto variables globales como locales para actividades en particular.

Y en esta entrada veremos cómo definir las condiciones y transiciones dentro del proceso para darle un poco más de funcionalidad al mismo.

Empecemos.!!!

Cuando vemos la actividad de “Revisión por ventas” notamos que tiene 3 salidas, y podríamos preguntarnos como el proceso sabe qué salida tomar. Y ese es el objetivo de las condiciones, definir cuándo tomar una salida u otra.

Para ello seleccionamos la actividad “Revisión por ventas” y damos clic en General y luego en Datos.

clip_image003

Creamos una nueva variable local, como se aprendió en la entrada anterior, con la siguiente información:

· Variable: decision.

· Descripción: múltiples opciones requieren una decisión.

· Tipo de dato: lista de opciones (ya sabemos cómo crearla) y sus valores son:

o Aprobar.

o Rechazar.

o Más información.

clip_image005

Y finalmente se ve así:

clip_image007

Ahora viene la parte interesante porque debemos realizar lo siguiente:

Seleccionar cada una de las transiciones, las líneas con saetas al final que van de la actividad “Revisión por ventas” hacia:

a. “Pagar” cuando el valor de la decisión sea “Aprobar

b. “Rechazar” cuando el valor de la decisión sea “Rechazar

c. “Más Información” cuando el valor de la decisión sea “Más Información

Para hacer esto damos clic encima de una de las líneas, en este caso la que va de “Revisión por ventas” hacia “Pagar”.

clip_image008

Ahí debemos especificar un nombre, y el resto de los campos que se nos piden, de la siguiente manera:

clip_image009

Se debe hacer lo mismo para las otras 2 líneas. Solo tengan en cuenta que a la hora de introducir la condición debe de poner bien el nombre de la variable “decision” y el nombre del valor que debe tomar.

En nuestro caso quedó de la siguiente manera el proceso luego de hacer estos cambios:

clip_image011

Como pueden apreciar ya se ven las condiciones saliendo de la actividad “Revisión por ventas” y en cada condición se muestra cuál es su nombre. En versiones anteriores se mostrada el valor de la condición, ya en esta versión se muestra su nombre lo cual lo hace más fácil de entender.

Ahora podemos ver que la actividad de “Pagar” tiene 2 condiciones también, una que se ejecuta cuando el cliente selecciona el envío Express y otra cuando el envío es regular, por lo que se deben realizar los mismos pasos anteriores para definir cuando el proceso se va por una y cuando se va por la otra.

Recuerden que para esta actividad “Pagar” ya tenemos una variable que toma valor true, en caso de que el envío sea Express y false en caso de que el envío sea regular. Solo deben definir las condiciones.

En nuestro caso queda así:

clip_image012

Lo interesante es que la variable que definimos en la actividad “Pagar” de nombre “escogerEntregaExpress” es de tipo boolean, o sea que tiene valores true o false, así que solo poniendo su nombre en la condición esta es evaluada usando Groovy y con eso basta.

Para el caso de la entrega regular ponemos lo siguiente:

clip_image013

Vean el signo ! antes del nombre de la variable en la condición, eso es para el caso en que su valor sea false, indicando que la entrega será regular, el resultado final sea evaluado de true y se vaya por este camino.

El proceso queda de la siguiente manera:

clip_image015

Como ven en cada iteración se va haciendo más comprensible, incluso para el personal no técnico que es la idea que se busca, y va quedando clara cada una de las posibles alternativas que se pueden presentar durante su ejecución.

Hasta aquí esta entrada, cuyo objetivo era mostrarle como definir condiciones y las transiciones entre distintas actividades para darle más sentido al proceso completo.

Cualquier duda no dejen de escribirnos.

En la siguiente entrada de esta serie veremos como definimos los actores que participarán en el proceso y ejecutaremos una primera corrida del mismo.



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

1 comentario:

  1. veo que usas una tarea para definir las condiciones, porque no mejor usas una compuerta exclusiva, sería más adecuado, espero compartir ideas

    ResponderEliminar

IconIconIcon