Personalizando BPM

marzo 20, 2013

share

Archived

BPM es más que una tecnología: en un sentido más general es una disciplina donde los procesos tienen un rol relevante a la hora de medir el rendimiento y productividad de una organización. BPM incluye un conjunto coherente de métodos, políticas, métricas y prácticas para optimizar los procesos de una empresa y así lograr maximizar su potencial y el retorno de inversión en cada producto encarado.

Existen en el mercado diferentes herramientas que asisten a la creación y monitoreo de actividades BPM. Generalmente las mismas se pueden agrupar en frameworks que proveen componentes y diversas funcionalidades predefinidas de manera de facilitar el modelado de procesos, son los llamados BPMS. Generalmente estas plataformas ofrecen funcionalidades que se pueden agrupar, tal como se menciona en [1], en:

Modelado de Negocios: diagramas gráficos al estilo UML que ayudan a plasmar de manera visual la interacción entre procesos. La notación más utilizada proviene del lenguaje Business Process Modeling Notation (BPMN). Herramientas como Intalio o Visual Paradigm (www.visual-paradigm.com/product/vpuml/editions) cuentan con la posibilidad de realizar este tipo de diagramas.

  • Ejecución de procesos de Negocios: Motor encargado de ejecutar o simular la ejecución de procesos de negocios a través de la interacción de usuarios, tareas y recursos.
  • Manejo de datos e información: El framework es el encargado de manejar y sincronizar los datos vinculados a las instancias de procesos.
  • Interacción con recursos externos: Distintos procesos de negocio pueden usar e interactuar con servicios fuera de la organización. El motor de ejecución se comunicará con los mismos generalmente a través de una capa de interacción, generalmente alineado a SOA y utilizando servicios web.
  • Adaptación a cambios: facilidades para adaptarse a cambios en los procesos de negocio.
  • Monitoreo de actividades: Registro de todo intercambio de datos, información y control producido entre los procesos.

Estos frameworks son sin duda de mucha ayuda y de gran utilidad en múltiples contextos y aplicaciones.

Sin embargo, existen situaciones donde no es fácil adaptar estas funcionalidades predefinidas a las necesidades particulares de una empresa u organización. En estos escenarios resulta difícil instanciar estas soluciones generales en un contexto concreto de una empresa. Esto puede determinar el abandonando técnicas de BPM que podrían facilitar enormemente los procesos de negocio de dicha organización.

Como respuesta a este problema surgió el enfoque conocido como “Tailoring BPM”, que propone personalizar la disciplina BPM de manera de lograr un match perfecto entre la metodología y las necesidades de la empresa.

Tailoring  BPM

El término proviene del inglés tailor, que significa sastre. Entonces tailoring BPM sería el proceso de encargar una técnica BPM a medida de la organización.

Una herramienta Tailoring BPM funciona de la siguiente manera. Existe una etapa de diseño donde se seleccionan, adaptan o incluso crean las técnicas, métricas y procesos a utilizar. Luego, esta información es la entrada a un motor que transformará estos modelos para generar una herramienta que cumple con lo requerido en el diseño.

En otras palabras, una herramienta tailoring BPM es una meta-herramienta, encargada de crear otras herramientas BPM más especializadas. Esta metodología es quizás comparable al Model-Driven Development (MDD), donde un sistema es desarrollado a partir de la iteración de modelos cada vez más cercanos a la implementación.  Naturalmente, estas meta-herramientas requieren usuarios idóneos en la etapa de diseño para lograr una configuración adecuada. Este hecho representa una de las mayores dificultades a la hora de adoptar una herramienta BPM hecha a medida.

Una de las herramientas más conocidas que funcionan con esta modalidad es WebRatio (http://www.webratio.com/). WebRatio corre en un entorno JAVA tradicional, lo que facilita su utilización. Otra característica interesante es la aplicación “front-end”  y el  motor BPM son completamente independientes. Esto permite integrar la capa front-end con otros motores BPM.  Otra herramienta que vale la pena mencionar es PerfectForms (http://www.perfectforms.com/ismwf/bpm-tools.php). Ofrece una gran cantidad de templates para poder personalizar el monitoreo y sincronización de los procesos de negocios.

[1] The tailor of BPM Applications. Web Ratio: http://www.webratio.com/Portal/documents/WebRatio_TheTailorOfBPMApplications.pdf