Business Process Model and Notation (BPMN)

Posted by

¿Qué es BPMN?

Business Process Modeling and Notation (Notación y modelado de procesos de negocio). Es muy similar a los diagramas de flujo que existen desde alrededor de los 80’s. Tal como los diagramas de flujo, BPMN tiene como objetivo diseñar flujos de trabajo de tal manera que puedan ser entendidos fácilmente por otras personas. BPMN es un lenguaje, y como cualquier lenguaje su propósito es facilitar la comunicación. Está diseñado para facilitar la comunicación y entender los procesos de negocio.

La “N” de BPMN significa “Notación”. La notación gráfica consiste en diseñar símbolos que representen acciones, flujos o comportamiento de procesos. Los símbolos visuales han sido parte del estándar desde que la OMG lanzó la primer versión de la especificación de BPMN en mayo del 2004.

BPMN no es un software y no es “propiedad” de alguna empresa. Pero fue desarrollado por la
OMG (Object Management Group) como una notación estándar que puede ser entendida por analistas de negocio, desarrolladores y gerentes de proyecto.

No es solo una bonita imagen

El problema histórico con los diagramas de flujo era que cada quién entendía e interpretaba los diagramas a su manera. Esto tuvo como consecuencia no deseada, que no todas las interpretaciones de procesos llevaran el mismo camino. En otras palabras, el proceso de comunicación fue altamente imperfecto.

BPMN y más específicamente BPMN 2.0 resuelve estos problema de ambigüedad mediante la introducción de una capa semántica en XML, que transforma BPMN de solo otra bonita imagen en algo mucho más funcional. Por la adición de una definición XML para cada objeto BPMN, asegura que cada proceso y todos los objetos en el modelado de proceso signifiquen solo una cosa.

Existe una gran cantidad de elementos dentro de BPMN, sin embargo en este post solo listaremos algunos:

Events

  • Start.- Indica cuando inicia un proceso.
  • Intermediate.- Ocurre entre los eventos de inicio y fin, e indica un evento que ocurre a mitad del flujo.
  • End.- Indica cuando un proceso ha terminado.

Eventos

Activities:

Una actividad es un término genérico para el trabajo que un actor lleva a cabo en un proceso. Una actividad puede ser atómica o no atómica (compuesta). Es decir, puede ser una tarea o un subproceso (un proceso dentro del proceso principal).

Existen varios tipos de actividades. Por ejemplo tareas manuales, tareas de usuario (humanos), tareas de servicios, de mensaje (similar al evento intermedio).

Activities

Gateways

Los eventos y actividades son fáciles de entender. La verdadera magia ocurre en los gateways, estos son quienes indican cada uno de los escenarios que se pueden presentar en un proceso de negocio. Indicar si tomar un camino u otro, iniciar acciones en paralelo, en qué momento debe terminar un proceso o debe enviarse una notificación dependiendo de las circunstancias.

Existen tres tipos de gateways que es necesario saber.

  • Exclusive.- Esta decisión representa una división en un punto del proceso donde las alternativas están basadas en condiciones. Exclusive se usa para cuando solo se puede continuar por un camino del proceso.
  • Parallel (Fork).- BPMN usa el término “Fork” para referirse a la división del flujo en dos o más caminos que se ejecutan en paralelo.
  • Inclusive.- Esta decisión representa un punto de división en el que las alternativas están basadas en expresiones condicionales. Se realiza una operación en cada ramificación del proceso, lo que permite que se ejecuten todas o solo algunas de las opciones, pero siempre debe ejecutarse al menos una opción.

Gateways

Manejo de excepciones.

BPMN permite el uso de excepciones cuando ocurre algún suceso que no permite seguir con el camino planeado.

Una excepción se atrapa mediante un evento intermedio que recibe una señal que indica que ha ocurrido algo fuera de lo normal. Las excepciones pueden estar basadas en tiempo de respuesta, mensajes o un error.

Buenas prácticas

  • Hacer que el diagrama BPMN refleje con exactitud la lógica de proceso, con etiquetas de
    actividades, sub-procesos, eventos intermedios y gateways.
  • Mostrar explícitamente cómo se manejan las excepciones.
  • Establecer jerarquía en los modelos (y por tanto más fáciles de ver como un todo) con los procesos y subprocesos expansión de un diagrama de nivel superior.
  • Etiqueta tipos de tareas tales como “usuario” (una tarea lleva a cabo un ser humano) o “servicio” (una tarea automatizada).
  • Representar acciones en un formato de verbo-sustantivo (validar orden, verificar el crédito, etc.).
  • Utilizar consistentemente flujos de mensajes para indicar el contexto empresarial de actividades y eventos en una flujo de trabajo.

Fuente: BPMN 2.0 for Beginners, ProcessMaker

Comments