Una de las primeras personas que describió los procesos fue Adam Smith en el año 1776 con su ejemplo de una fábrica de alfileres.Smith describió la producción de un alfiler en la forma siguiente:"Un hombre saca el alambre, otro lo endereza, un tercero lo corta, un cuarto afina una punta, un quinto lo lima en la parte superior para recibir la cabeza.Hacer la cabeza requiere dos o tres operaciones distintas: ponerlo en su lugar es una de ellas, blanquear los alfileres es otra ... y el importante negocio de hacer un alfiler es, de esta manera, dividida en unas dieciocho operaciones distintas, que en algunas fábricas son todas realizadas por distintas manos, aunque en otras es el mismo hombre que en algún momento realiza dos o tres de ellas ".Smith reconoció por primera vez cómo la producción podría incrementarse a través del uso de la división del trabajo. El ejemplo que usó fue la fabricación de alfileres. Uno de los trabajadores probablemente podría hacer sólo veinte alfileres por día. Sin embargo, si diez personas se dividieron el dieciocho pasos necesarios para hacer un alfiler, podrían hacer combinados una cantidad de 48.000 alfileres en un día.
Un proceso de negocio es un conjunto de tareas relacionadas lógicamente llevadas a cabo para lograr un resultado de negocio definido. Cada proceso de negocio tiene sus entradas, funciones y salidas.Las entradas son aquello necesario en un proceso como “materia prima”, o en el caso de que el proceso sea un servicio, el detonante que inicia el proceso siguiente. Las salidas son el producto o servicio que los procesos producen. Los procesos de negocio pueden ser vistos como un recetario para hacer funcionar un negocio y alcanzar las metas definidas en la estrategia de negocio de la empresa.
Comenzamos con el modelador de procesos de GeneXus.
El modelador de procesos forma parte del entorno de Genexus.Para modelar un proceso de negocio, disponemos de un tipo de objeto llamado “Business ProcessDiagram” en el que podemos dibujar gráficamente la estructura del proceso. Podemos arrastrar objetos GX (transacciones, webpanels, procedimientos, etc) y automáticamente se van creando actividades.También dispone de un editor de Reglas de Negocio que permite definir: condiciones de bifurcación, duraciones de procesos, etc.El editor de reglas soporta la utilización de variables del proceso asi como también la de atributos que sean parte de las transacciones asociadas al diagrama.Como cualquier otro objeto GeneXus hereda también los siguientes beneficios: Control de Versiones, Histórico de Cambios, Referencias, Documentación, etc.En la nueva version X Evolution se agrega el soporte de la notacion BPMN.
Business ProcessModelingNotation o BPMN (en español Notación para el Modelado de Procesos de Negocio) es una notación gráfica estandarizada que permite el modelado de procesos de negocio. BPMN fue inicialmente desarrollada por la organización Business Process Management Initiative (BPMI), y es actualmente mantenida por el OMG (Object Management Group), luego de la fusión de las dos organizaciones en el año 2005. Su versión actual es la 1.1 y hay una versión futura propuesta, la 2.0.El principal objetivo de BPMN es proveer una notación estándar que sea fácilmente leíble y entendible por parte de todos los interesados en el negocio. Entre estos interesados están los analistas de negocio (quienes definen y redefinen los procesos), los desarrolladores técnicos (responsables de implementar los procesos) y los gerentes y administradores del negocio (quienes monitorean y gestionan los procesos).En síntesis BPMN tiene la finalidad de servir como lenguaje común para cerrar la brecha de comunicación que frecuentemente se presenta entre el diseño de los procesos de negocio y su implementación.Actualmente hay una amplia variedad de lenguajes, herramientas y metodologías para el modelado de procesos de negocio. La cada vez mayor adopción de la notación BPMN como estándar ayudará a unificar la expresión de conceptos básicos de procesos de negocio (por ejemplo procesos públicos y privados, orquestación, coreografía, etc.) así como conceptos avanzados de modelado (por ejemplo manejo de excepciones, compensación de transacciones, entre otros).
Ahora vamos a pasar a ver rápidamente el componente de Desarrollo e Integración.
Los formularios y reglas de negocio son desarrollados con GeneXus, permitiendo así la evolución tecnológica de aplicaciones para soportar múltiples plataformas y lenguajes, entre otras ventajas que ustedes seguramente ya conozcan.
Finalmente llegamos al componente de Workflow.El componente de Workflow (al que llamamos GXflow) esta formado por dos grupos de programas.Por un lado tenemos el servidor de procesos también más conocido como motor de workflow y por otro lado al conjunto de aplicativos que permiten gestionar y controlar los procesos.Tanto el motor de GXflow como el aplicativo Cliente están programado enteramente en GeneXus, lo que permite abarcar una amplia gama de plataformas a la vez que garantiza su evolución tecnológica.Los binarios correspondientes a las diferentes plataformas (*) están embebidos dentro de la instalación de GeneXus lo que permite acceder al entorno de ejecución inmediatamente.En rigor se instalan en forma predeterminada 2 plataformas de mayor uso y el resto de las mismas puede ser instalada “ondemand” para optimizar la instalación y el espacio en disco.
El Motor de Workflow es el software que provee el entorno de ejecución para los procesos de workflow.Es un conjunto de servicios, que provee facilidades para: interpretar la definición del proceso, controlar las instancias de los procesos (creación, activación, terminación, etc.). También hace posible la navegación entre actividades, el manejo de la lista de tareas pendientes del usuario (worklist), la transferencia de información entre aplicaciones y la invocación de aplicaciones externas.GXflow mantiene la historia de todos los eventos que controla, incluyendo fecha y hora, tareas involucradas y nombre de los participantes. La información histórica provee reportes en cuanto a los costos y progreso de cada actividad y rendimiento del proceso. Esto permite ver a los clientes y miembros de la organización la información exacta del estado del proceso de negocio.
Algunas de las características de Gxflow son.Envío de notificaciones ante determinas circunstancias (Ej: Nueva Tarea).Posibilidad de subscribirse a los eventos de auditoría para ejecutar lógica de negocio.Permite balancear la carga de trabajo entre grupo de usuariosPosibilidad de definir tiempos a las tareas utilizando diferentes calendarios de horarios de trabajo de las empresasSistema de Gestión Documental integrado para el manejo de documentosSoporte de Firma Digital (Pki, Certificados Digitales)
El cliente de GXflow es un conjunto de aplicaciones que dan soporte para la Gestión y Monitoreo de los procesos de Workflow.Como mencionábamos anteriormente, al igual que el motor de GXflow, esta programado enteramente en GeneXus. Por lo cual, toma las propiedades de los sistemas GeneXus: Multiplataforma, Multilenguaje, Interfaz web 2.0, etc.Para la ejecución se cuenta con una interfaz basada en el concepto de Inbox donde el usuario puede acceder a todo el trabajo pendiente o que le esté llegando a medida que se ejecutan las diferentes instancias de un proceso.El Inbox o Bandeja de entrada le permite al usuario acceder a su lista de trabajo (Worklist) mientras que la bandeja de salida a todas aquellas tareas que ya ejecutó en algún momento, de la misma manera puede consultar todos los procesos que él inició. En cualquiera de estos casos puede siempre acceder a ver el detalle de cómo llegó una tarea a su bandeja de entrada a través de la consulta del historia del proceso. Esta misma historia le sirve en la bandeja de salida para consultar en qué paso se encuentra el proceso luego de que pasó por su inbox. Existe una variante del Cliente de código abierto que es distribuida con GeneXus que puede ser consolidada y modificada por el usuario para adaptarla a las necesidades particulares de la empresa.
En ésta etapa se trabaja en el desarrollo de los programas que serán utilizados durante la ejecución del proceso. El desarrollo se hace utilizando GeneXus. Los Tipos
La etapa de ejecución implica iniciar, ejecutar y administrar los procesos modelados. Para esto se utiliza el Escritorio de GXflow que es la herramienta que utilizan los usuarios diariamente para participar en la ejecución de los procesos. En esta etapa se prueban los programas GeneXus desarrollados, se prueban los mecanismos automáticos de asignación de tareas a usuarios, se definen restricciones especiales a los usuarios, etc.BPM le permite ver los procesos mientras se ejecutan, y determinar cómo las transacciones de negocio que fluyen a través de los procesos afectan a las métricas empresariales clave.BPM proporciona las herramientas no sólo para reaccionar y responder, sino para también gestionar amenazas inminentes y oportunidades de forma proactiva. BPM le proporciona información que ayuda a desvelar la raíz de los problemas y le ofrece información objetiva y sobre la que se puede actuar en términos de la acción a tomar para mejorar el proceso.
En la etapa de análisis se utiliza Gxplorer la herramienta de Business Intelligence de GeneXus BPM Suite.Gxplorer permite realizar consultas sobre el Data Warehouse de Gxflow, el cual es alimentado con los eventos de auditoría que va generando el motor de Gxflow.GXplorer permite analizar el comportamiento de los procesos y determinar si su desempeño es el esperado. Esta etapa es muy importante ya que se pueden determinar: ineficiencias en el modelo del proceso, en los mecanismos de asignación de tareas a usuarios, o en los tiempos de ejecución de las tareas y del proceso general que pueden implicar un mal desempeño general de los procesos.
Modelador gráfico de procesos basado en el estándar BPMNEl Business Process Diagram permite diseñar y visualizar los procesos de negocio integrados a la Base de Conocimiento.Diseñado para simplificar el desarrollo de sus aplicaciones de workflowMinimiza el esfuerzo de programación requerido por los métodos tradicionales. El desarrollador programa las tareas, y GXflow se encarga del control de acceso (basándose en los usuarios o los roles), la transición de estados, la ejecución de tareas, y el manejo de la bandeja de entrada de tareas de cada usuario.Permite definir subprocesos que permiten reutilizar y simplificar los diagramas de workflow.Cuando se programa con GXflow, las aplicaciones utilizan una única interfaz gráfica, el Cliente de GXflow, el cual puede ser Windows o Web, haciendo las cosas más fáciles para el usuario.Herramienta de Business IntelligenceLa herramienta de BI Gxplorer OLAP permite analizar la ejecución, número y duración de los diferentes procesos de negocios por rol, tarea, proceso o fecha, entre otras opciones.Realiza un análisis de eficiencia de los procesos, detectando ineficiencias y caminos críticos antes de que se conviertan en un problema.Alineado con los estándares de la Workflow Management CoalitionLos componentes de GXflow siguen los estándares establecidos por la Workflow Management Coalition.