Introducción a BPMN


Este artículo pretende ser un resumen por encima y una introducción a la Business Process Modeling Notation (BPMN). Se describirán los fundamentos de la notación BPMN: tipos de objetos gráficos que componen la notación, y como trabajan juntos como parte de un diagrama de procesos de negocios. También se tratarán los diferentes usos de BPMN, incluyendo cómo los niveles de precisión afectan qué incluirá un modelador en un diagrama. Finalmente, se describirá el valor de usar BPMN como una notación estándar.
Esta entrada es una traducción del artículo de Stephen A. White, de IBM Corp., llamado Introduction to BPMN, el cual es un buen punto de partida para aquellos que queremos saber sobre esta metodología de modelado de procesos de negocio. Los elementos BPMN dibujados en este artículo se han hecho BizAgi Process Modeler.

¿QUÉ ES BPMN?

El Business Process Management Initiative (BPMI) ha desarrollado una notación estándar llamada Business Process Modeling Notation (BPMN). La especificación de la versión 1.0 salió al público en mayo del 2004. El objetivo principal de los esfuerzos de BPMN era dar una notación rápidamente comprensible por toda esa gente de negocios, desde el analista de negocio que hace el borrador inicial de los procesos, pasando por los desarrolladores técnicos responsables de implementar la tecnología que llevarán a cabo dichos procesos, llegando finalmente a la gente de negocio que gestionará y monitorizará esos procesos. Además, BPMN está apoyado en un modelo interno que genera el ejecutable BPEL4WS. Así, BPMN crea un puente estandarizado para el hueco entre el diseño de los procesos de negocio y la implementación de procesos.

BPMN define un Business Process Diagram (BPD), que se basa en una técnica de grafos de flujo para crear modelos gráficos de operaciones de procesos de negocio. Un modelo de procesos de negocio, es una red de objetos gráficos, que son actividades (trabajo) y controles de flujo que definen su orden de rendimiento.


FUNDAMENTOS DE BPMN

Un BPD está formado por un conjunto de elementos gráficos. Estos elementos habilitan el fácil desarrollo de diagramas simples que serán familiares para la mayoría de analistas de negocio (diagrama de flujo). Los elementos fueron elegidos para ser distinguibles los unos de los otros y para usar formas familiares para la mayoría de modeladores. Por ejemplo, las actividades son rectángulos y las decisiones son diamantes. Debe notarse que uno de los objetivos del desarrollo de BPMN  es crear un mecanismo simple para crear modelos de procesos de negocio, y al mismo tiempo que sea posible gestionar la complejidad inherente en dichos procesos. El método elegido para manejar estos dos conflictivos requisitos fue organizar los aspectos gráficos de la notación en categorías específicas. Esto da un pequeño grupo categorías que alguien que lea un BPD pueda reconocer fácilmente los tipos básicos de elementos y pueda entender el diagrama. Dentro de las categorías básicas de elementos, se puede añadir información y variaciones adicionales para dar soporte a los requerimientos complejos sin cambiar dramáticamente el look-and-feel básico del diagrama. Las cuatro categorías básicas de elementos son:

  • Objetos de flujo
  • Objetos conectores
  • Artefactos
  • Swimlanes

Objetos de flujo

Un BPD es un pequeño conjunto (tres) de elementos básicos, que son los Objetos de Flujo, de modo que los modeladores no tienen que aprender y reconocer un gran número de formas diferentes. Los tres objetos de flujo son:

  • Evento: un evento se representa con un círculo. Es algo que “pasa” durante el curso del proceso de negocio. Estos eventos afectan al flujo del proceso y suelen tener una causa (trigger) o un impacto (resultado). Los eventos representados con un círculo con centro abierto permiten a los marcadores internos diferenciar diferentes triggers y resultados. Hay tres tipos de eventos,  basados en cuando afectan al flujo: Start , Intermediate, y End.
Start Event Intermediate Event End Event
  • Actividad: una actividad se representa con un rectángulo redondeado y es un término genérico para el trabajo que hace una compañía. Una actividad puede ser atómica o compuesta. Los tipos que hay son: Task y Sub-Process. El Sub-Process se distingue por una pequeña marca de suma en la parte central inferior de la figura.
  • Gateway (compuerta): una gateway se representa por la típica figura de diamante y se usa para controlar la divergencia o convergencia de la secuencia de flujo. Así, ésto determina las tradicionales decisiones, así como la creación de nuevos caminos, la fusión de estos o la unión. Los marcadores internos indicarán el tipo de control de comportamiento.
Objetos conectores

Los objetos de flujo se conectan entre ellos en un diagrama para crear el esqueleto básico de la estructura de un proceso de negocio. Hay tres objetos conectores que hacen esta función. Estos conectores son:

  • Sequence Flow: el flujo de secuencia se representa por una linea sólida con una cabeza de flecha sólida y se usa para mostrar el orden (la secuencia) en el que las diferentes actividades se ejecutarán en el Proceso. El término “control flow” normalmente no se usa en BPMN.
  • Message Flow: el flujo de mensaje se representa por un linea discontinua con una punta de flecha hueca y se usa para mostrar el flujo de mensajes entre dos participantes del proceso separados (entidades de negocio o roles de negocio). En BPMN, dos pools separadas en el diagrama representan los dos participantes.
  • Association: una asociación se representa por una linea de puntos con una punta de flecha de lineas y se usa para asociar datos, texto, y otros artefactos con los objetos de flujo. Las asociaciones se usan para mostrar entradas y salidas de las actividades.

Para los modeladores que requieren o desean más precisión para crear modelos de proceso por motivos de documentación y comunicación, los elementos básicos más los conectores dan la posibilidad de crear fácilmente diagramas comprensible.

Para los diseñadores que necesiten un nivel más alto de precisión, para análisis detallado o que sean manejados por un Business Process Management System (BPMS), existen detalles adicionales que se pueden añadir a los elementos básicos.



Swimlanes (canales)

Muchas metodologías de modelado de procesos usan el concepto de swimlanes como un mecanismo para organizar actividades en categorías separadas visualmente para ilustrar diferentes capacidades funcionales o responsabilidades. BPMN soporta los swimlanes con dos constructores principales. Los dos tipos de objetos swimlanes son:

  • Pool: una pool representa un Participante de un Proceso. Además actúa como un contenedor gráfico para particionar un conjunto de actividades desde otros pools, normalmente en el contexto de B2B.
  • Lane: una lane es una sub-partición dentro de un pool y extiende la longitud del pool, verticalmente u horizontalmente. Las lanes se usan para organizar y categorizar actividades.
Las pools se usan cuando un diagrama implica dos entidades de negocio o participantes separados y están físicamente separados en el diagrama. Las actividades dentro de pools separadas se consideran procesos autocontenidos. Así, el flujo de secuencia no debe cruzar el límite de un pool. El flujo de mensajes se define como el mecanismo para mostrar las comunicaciones entre dos participantes, y, de este modo debe conectar dos pools (o los objetos dentro de las pools).


Las pistas (lanes) están más estrechamente relacionadas con las metodologías tradicionales de las swimlanes. Las pistas se suelen usar para separar las actividades asociadas con la función o rol de una compañía específica. El flujo de secuencia puede cruzar los límites de las pistas dentro de un pool, pero el flujo de mensajes no puede ser usado entre objetos de flujo en pistas de mismo pool.

Artefactos

BPMN fue diseñado para permitir a los modeladores y las herramientas de modelado un poco de flexibilidad a la hora de extender la notación básica y a la hora de habilitar un contexto apropiado adicional según una situación específica, como para un mercado vertical (por ejemplo, seguros o banca). Se puede añadir cualquier número de artefactos a un diagrama como sea apropiado para un contexto de proceso de negocio específico. La versión actual de la especificación de BPMN sólo tiene tres tipos de artefactos BPD predefinidos, los cuales son:

  • Data Object: los objetos de datos son un mecanismo para mostrar como los datos son requeridos o producidos por las actividades. Están conectados a las actividades a través de asociaciones.
  • Group: un grupo es representado por un rectángulo redondeado con linea discontinua. El agrupamiento se puede usar documentación o análisis, pero no afecta al flujo de secuencia.
  • Annotation: las anotaciones son mecanismos para que un modelador pueda dar información textual adicional.

Los modeladores pueden crear sus propios tipos de artefactos, que añaden más detalle sobre como se ejecuta el proceso – bastante a menudo para mostrar las entradas y las salidas de las actividades del Proceso. Sin embargo, la estructura básica del proceso, determinada por las actividades, gateways, y flujos de secuencia, no se cambia por añadir artefactos al diagrama.

USO GENERAL DE BPMN

El modelado de procesos de negocio se usa para comunicar una amplia variedad de información a diferentes audiencias. BPMN está diseñado para cubrir muchos tipos de modelados y para permitir la creación de segmentos de proceso así como procesos de negocio end-to-end, con diferentes niveles de fidelidad. Dentro de la variedad de objetivos de modelado de procesos, hay dos tipos de modelos básicos que se pueden crear con un BPD:

  • Procesos B2B colaborativos (públicos)
  • Procesos de negocio internos (privados)

Procesos B2B colaborativos

Un proceso B2B colaborativo ilustra las interacciones entre dos o más entidades de negocio. Los diagramas para estos tipos de procesos están generalmente desde un punto de vista global. Esto es, no toman la visión de un participante en particular, pero muestra las interacciones entre los participantes. Las interacciones están ilustradas como una secuencia de actividades y los patrones de intercambio de mensajes entre participantes. Las actividades para los participantes son los “touch-points” entre participantes; el proceso define las interacciones que son visibles al público para cada participante. Cuando miramos un proceso en un solo Pool (por ejemplo, para un participante), un proceso público también se llama proceso abstracto. Los procesos reales (internos) son como tener más actividades y detalle que lo que se enseña en los procesos B2B colaborativos.

Procesos de negocio internos

Un proceso de negocio interno se enfocará generalmente en el punto de vista de una única organización de negocio. Aunque los procesos internos suelen mostrar interacciones con participantes externos, definen las actividades que generalmente no están visibles para el público, esto es, privadas. Si se usan swimlanes entonces un proceso interno estará contenido dentro de un solo Pool. El flujo de secuencia del proceso está por lo tanto contenido dentro de un Pool y no puede cruzar los límites del Pool. El fujo de mensajes puede cruzar los límites del Pool para mostrar las interacciones que existen entre procesos de negocios internos separados. Así, un solo diagrama de procesos de negocio puede mostrar múltiples procesos de negocio privados.

Propósitos diferentes – diferentes niveles de precisión

El modelado de procesos de negocio suele empezar capturando actividades de alto nivel para luego ir bajando de nivel de detalle dentro de diferentes diagramas. Pueden haber múltiples niveles de diagramas, dependiendo de la metodología usada para desarrollar los modelos. De todas formas, BPMN es independiente de cualquier metodología.

A continuación tenemos un ejemplo de procesos de alto nivel, capturados para un caso de estudio de BPMN. Se trata de una serie de sub procesos con tres puntos de decisión

A continuación se baja de nivel para mostrar en detalle el primer sub proceso: dos pools, una para los clientes y otra para la compañía suministradora Este diagrama muestra un proceso de negocio interno para la compañía y un proceso abstracto para el cliente. Las actividades de la compañía están particionadas con pistas o lanes para mostrar los roles/departamentos responsables de su rendimiento.

¿Cual es el valor de modelar en BPMN?

Los miembros de BPMI Notation Working Group representan un gran segmento de la comunidad de modelado de procesos de negocio y han llegado a un consenso y presentan BPMN como la notación de modelado de procesos de negocio estándar. El desarrollo de BPMN es un paso importante para reducir la fragmentación que existe con la gran cantidad de herramientas de modelado de procesos y notaciones. El BPMI Notation Working Group portan una gran experiencia con muchas de las notaciones existentes y trabajan para consolidar las mejores ideas de todas estas notaciones para crear una sola notación estándar. Ejemplos de otras notaciones o metodologías que fueron revisadas son: diagramas de actividades de UML, UML EDOC Business Processes, IDEF, ebXML BPSS, Diagrama de flujo de actividades-decisiones (ADF), RosettaNet, LOVeM, Cadenas de Eventos-Procesos (EPCs).
Una única notación bien definida reduce la confusión entre los usuarios IT y de negocios.
Otro factor del desarrollo de BPMN es que, históricamente, los modelos de procesos de negocio desarrollados por la gente de negocios han estado técnicamente separados de las representaciones de procesos requeridas por los sistemas diseñados para implementar y ejecutar dichos procesos. Así, era necesario traducir manualmente los modelos de procesos de negocio originales a los modelos de ejecución. Esas traducciones están sujetas a errores y dificultan a los dueños del procesos entender la evolución y el rendimiento de los procesos desarrollados.

Mapear un diagrama BPMN a BPEL4WS

Para ayudar a aliviar el vacío técnico de modelado, un objetivo clave para el desarrollo de BPMN era crear un puente entre la notación de modelado de procesos de negocios y los lenguages de ejecución respecto a las Tecnologías de la Información que implementan los procesos que hay dentro de un sistema. Los objetos gráficos de BPMN, más un buen número de atributos de estos objetos, se han mapeado al Business Process Execution Language para Web Services (BPEL4WS v1.1), el estándar de facto para la ejecución de procesos.  A continuación tenemos un segmento de un proceso de negocio que marca el mapeo con BPEL4WS.


El futuro de BPMN

Aunque la especificación de BPMN se encuentra en su versión 1.0, muchas compañías la soportan e implementan dicha especificación. El futuro inmediato dará un punto de experiencia entre usuarios y vendedores que permitirá, mediante feedback, afinar detalles de la especificación, en concreto con BPEL4WS. En las siguientes versiones de mantenimiento es de esperar un esfuerzo en estandarización de los artefactos para que soporten modelado de negocios generales y dominios de negocios verticales (seguros, manufacturación, finanzas). Además, se está intentando encajar BPMN en un mayor contexto de modelado de negocios de alto nivel (incluyendo reglas de negocio y estrategias de negocio).

Ya hay 26 comentarios. ¿Quieres dejar el tuyo?

  • Félix
    05 feb 2009

    Me gustaría saber si hay algún libro o documentación que trate sobre metodologías en el modelado de procesos. Qué pasos y acciones hay que dar cuando existen procesos que incluso pueden estar documentados y explicados en texto para poder convertirlos en un diagrama BPM. Teniendo en cuanta que estos procesos tendrá reglas complejas, diferentes actores y que existirán actividades comunes en distintos procesos (aunque tengan distintos actores).

  • ramón
    06 feb 2009

    Hola Manuel

    Gracias por este resumen introductorio, es bueno. Estoy escribiendo una tesis de doctorado y aplicando la bpmn y usando visio como herramienta. Me pudieras decir donde pudiera consegir la especificación de BPMN se encuentra en su versión 1.0 EN ESPAÑOL.

  • 28 may 2009

    El artículo me parece muy substancioso. Muestra de una manera concisa los aspectos fundamentales del BPMN, así como sus origigenes y filosofía. Muy buen artículo, felicidades!.

  • Angeles Pérez
    17 jun 2009

    Hola!!
    Primero que nada, el artículo es muy bueno me ayudo mucho Manuel, felicidades!!.

    Felix.
    He modelado procesos a través de visio y hasta hace poco conocí BizAgi y me parece una buena herramienta. esta liga podría ser útil para tu inquietud. http://www.bizagi.com/esp/descargas/BizAgiR9-Funcional.pdf , checala ojala te sirva.

  • 03 jul 2009

    Gracias por la introducción tan comprensiva y detallada. Soy parte de una empresa de software libre de BPM (con operaciones en La Paz, Bolivia), y estamos investigando BPMN para implementarlo en de nuestra herramienta ProcessMaker. Pasare tu introduccion a los miembros de mi equipo — será un gran ayuda para ellos. Saludos!

    http://processmaker.com/?lang=es

  • Josu
    06 jul 2009

    Buen artículo, aunque no estaría nada mal que reconocieses el autor, hacer unatraducción literal de un artículo sin reconocer la autoría no es muy ético.

    Ya que no lo he visto por ningún sitio lo pongo yo aquí.

    El Autor: Stephen A. White – IBM, May 2004
    El link al documento original (en inglés): http://www.bpmn.org/Documents/Introduction%20to%20BPMN.pdf

  • Josu, como puedes ver en el primer párrafo, lo primero que hago es mencionar al autor y poner un enlace al artículo original.
    Saludos.

  • Josu
    08 jul 2009

    Perdona Manuel, fallo mio, no lo habia visto. El comentario lo había hecho porque alguna vez me ha ocurrido a mí, siendo yo el autor encontrarme mi articulo en otro sitio sin reconocer la autoría y sienta un poco mal.

    Por lo demás, como ya he dicho, das una información que viene muy bien, especialmente para gente como yo que estamos empezando a trabajar con BPM

    Saludos

  • Diego
    29 sep 2009

    Estoy dando mis primeros pasos en lo relacionado con BPM porque pienso que puede proporcionar una gran agilidad en el funcionamiento de una empresa.
    La cuestión que planteo es si me pueden ayudar a localizar alguna aplicación que ofrezca la posibilidad de modelado de un procedimiento y la generación automática de una aplicación para ponerlo en práctica.
    Para rizar el rizo, si la aplicación es de código abierto o freeware, mejor que mejor.
    Gracias de antemano por vuestra colaboración.

  • K'tr
    15 oct 2009

    Hola Manuel, excelente artículo, se agradece la aportación. Tengo una pregunta, Actualmente yo estoy adentrándome en BPMN, pero ¿Qué otras metodologías para modelar procesos existen o conoces?
    ¡Saludos!
    Diego: Porque no das un vistazo a Bizuit

  • Nicolas
    15 oct 2009

    Tremendo… Tengo que hacer un trabajo para la facultad sobre BPMN y esto esta explicado perfecto… En unas horas vuelvo y le pongo ganas a esto… Saludos!

  • Jorge
    24 feb 2010

    jajajaj un BPMN como tesis de doctorado poor sap.. yo ni soy graduado de U y lo uso constantemente. definitivamente esta sobrevalorada la educacion superior .

  • joseph2a
    05 mar 2010

    No sabes de alguna API en java, o php similar al Bizagi para poder modelar BPMN e integrarlo en cualquier aplicacion web que desarrollemos.

    He visto un software que tiene su modelador en web, y es bastante parecido hasta un poco mejor q el bizagi.

    Si sabes de alguna por favor lo comunicas, estoy deseperado. Lo necesito para un proyecto de WF con modelador bajo standar BPMN.

  • 10 mar 2010

    BizAgi es una aplicación similar a ADONIS, desarrollada por la empresa europea BOC y que también da soporte a BPMN. Sin embargo, la parte más interesante no es el modelado sino, las capacidades de análisis, mejora (mediante simulación de procesos y organización) y documentación. Además existe una versión gratuita en español en http://www.es.adonis.community.com.

    Aparte de la notación BPMN también existe la posibilidad de utilizar una metodología adaptada a la organización, bien partiendo de BPMN y ajustándola a las necesidades particulares de cada uno, o bien emepzando desde cero.

    joseph2a, existe una herramienta parecido a lo que dices que se llama Polymita, pero no es opensource. Esta permite modelar en BPMN y automatizar los flujos para la integración en portales web, gestores de contenidos y sistemas Workflow (www.polymita.com).

  • maria valladares
    21 mar 2010

    Esta bueno y completo el contenido… Muchas felicidades y sigan asi.

  • carito puente
    10 abr 2010

    el articulo es bueno pero es una SIMPLE TRADUCCION del orinal que esta en ingles.

  • Adriana
    07 may 2010

    Me agrado la información encontrada, y me agradaría que me recomendaran un libro de consulta de la metodología…..

  • katering
    01 jun 2010

    muy buen aporte, pero necesito un ejemplo de bucle en BPM, cualquier caso, haber si lo publican.. espero su respuesta y a seguir adelante..!!!!
    gracias, atte. kalemy de Puno – Perú.!!!

  • Diego
    08 jul 2010

    Aunque sea una SIMPLE TRADUCCION, ayuda a quien esta internandose recienteme a lo que es la programacion orientada a objeto.

  • Abby
    15 oct 2010

    Me gusto, muy entendible y util …

  • Sergio
    10 nov 2010

    Me gusto mucho, es muy puntual, felicitaciones . . .

  • Marita
    10 jun 2011

    Hola, me gustaria saber las ventajas concretas de BPMN con respecto a UML?? Saludos….

  • Percy Artica
    01 ago 2011

    Me parece buen material como para iniciarse en la materia….me gustó…gracias.
    Saludos

  • Yuliana
    11 sep 2012

    Gracias manuel, me fué de gran ayuda para incursionar en BPMN

Dejar un Comentario