Utilización de la aplicación de procesos para BAW ( IBM Business Automation Workflow )

La aplicación de procesos BAW (una aplicación de procesos para Business Automation Workflow ) no está disponible por defecto en la página de aplicaciones de procesos. Puede descargar el extractor y la aplicación de proceso BAW para extraer, transformar y cargar los datos de proceso en IBM Process Mining.

Con la aplicación de procesos BAW, puede extraer datos de BAW mediante el conector BAW y, a continuación, transformarlos y cargarlos en IBM Process Mining.

La aplicación de procesos está pensada como un activo de PoC (prueba de concepto). Es un ejemplo de cómo utilizar la información empresarial derivada de los flujos de trabajo de BAW mediante IBM Process Mining.

Puede importar la aplicación de proceso BAW desde el archivo BAW-IBM-Process-Mining-Assets.zip , que puede descargar desde aquí.

Para utilizar la aplicación del proceso BAW, siga estos pasos:

  1. Coloca el conector BAW.
  2. Ejecute el módulo conector BAW.
  3. Cargue la aplicación de proceso personalizada en IBM Process Mining.
  4. Crea un proceso utilizando la aplicación de gestión de procesos BAW.

Configuración del conector BAW

El conector BAW es un módulo de Python diseñado para extraer datos sin procesar de Business Automation Workflow (BAW) y crear archivos CSV. El conector ofrece opciones interactivas basadas en archivos para configurar la extracción de datos.

Este conector utiliza programación asíncrona para procesar varias tareas simultáneamente e incluye una característica de planificación de hasta 24 horas. El flujo de datos implica pasos como la recopilación de detalles de configuración, el establecimiento del registro, la elección de modalidades de ejecución, la recuperación de listas de instancias, la extracción de datos en paralelo y la generación de archivos CSV.

Para configurar y utilizar el conector BAW, sigue estos pasos:

  1. Vaya al directorio BAW-Connector.

    Si descarga el archivo BAW-IBM-Process-Mining-Assets.zip , extraiga el archivo y vaya al directorio BAW-Connector .

    Si descarga el archivo BAW-Connector.zip de la aplicación de proceso BAW importada en Process Mining, extraiga zip en la carpeta BAW-Connector y acceda al directorio BAW-Connector.

    cd <path to your folder>/BAW-Connector
    

  2. Cree un entorno virtual de conector BAW.

    Utilice la herramienta de entorno virtual Python para crear un entorno dedicado para el conector BAW.

    python -m venv bawc_venv
    

  3. Activar el entorno virtual

    Active el entorno virtual del conector BAW para aislar dependencias y garantizar la compatibilidad.

    • macOS/Linux

      source bawc_venv/bin/activate
      
    • Windows en CMD

      .\bawc_venv\Scripts\activate.bat
      
    • Windows en Powershell

      .\bawc_venv\Scripts\Activate.ps1
      
  4. Instale las dependencias necesarias.

Utilice pip para instalar todas las dependencias/bibliotecas necesarias listadas en el archivo requirements.txt dentro del entorno virtual.

pip install -r requirements.txt

Ejecución del módulo de conector BAW

Para ejecutar el módulo de conector BAW, puede utilizar las funciones siguientes como puntos de entrada al módulo BAW_Connector.py :

Función principal (interacción del usuario por línea de comandos)

Esta función ejecuta el conector BAW directamente desde la línea de comandos. Muestra unas breves instrucciones sobre cómo ejecutar el módulo BAW_Connector.py de forma interactiva y le indica cómo puede ejecutar el módulo para extraer datos BAW.

Para ejecutar el módulo BAW_Connector.py en la línea de mandatos:

  1. Vaya a la carpeta BAW-Connector.

        cd <path to your folder>/BAW-Connector
    

  2. Ejecute la herramienta BAW Connector. Puede ejecutar el conector BAW de las siguientes formas de pasar la configuración:

    a. Ejecución del módulo de conector con la línea de mandatos correcta pero no se pasa nada como argumentos de mandato:

    python BAW_Connector.py 
    

    O

    python -m BAW_Connector
    

    Herramienta de extracción de datos BAW

    Si no proporciona ningún argumento de mandato o archivo JSON o si hay un error en las variables de configuración proporcionadas (ya sea en los argumentos de línea de mandatos o en el archivo JSON), se visualiza una modalidad interactiva con instrucciones adicionales:

    • Se proporciona 'i' para añadir todas las variables individualmente cuando se le solicite (sin comillas en las cadenas).

    • ' c' se proporciona para añadir todas las variables en 1 línea, con cada par clave=valor que no contiene comillas y cada nueva clave separada del último valor por el carácter de espacio.

      Después de seleccionar 'c', se le solicitará que entre variables (sin comillas en los valores de las variables).

      Por ejemplo:

      root_url= process_name= project= from_date= from_date_criteria=<one of these: modifiedAfter/createdAfter/closedAfter> to_date= to_date_criteria=<one of these: modifiedBefore/createdBefore/closedBefore> status_filter=<either one or all of these: Active,Completed,Failed,Terminated,Suspended,Late,At_Risk> instance_limit= offset= thread_count= csvpath= csvfilename= logfile= user_name= password= schedule_time=<HH:mm (e.g. 13:33) or cron expression (e.g. 33 13 * * *   or   */1 * * * *)>
      
    • Se proporciona 'p' para añadir todas las variables a través de un archivo JSON.

    • Se proporciona ' s' para leer todas las variables a través de variables de entorno.

    b. Ejecución del módulo de conector con la línea de mandatos y los argumentos de mandato correctos como origen de las variables de configuración.

    Por ejemplo:

    python BAW_Connector.py root_url= process_name= project= from_date= from_date_criteria=<one of these: modifiedAfter/createdAfter/closedAfter> to_date= to_date_criteria=<one of these: modifiedBefore/createdBefore/closedBefore> status_filter=<either one or all of these: Active,Completed,Failed,Terminated,Suspended,Late,At_Risk> instance_limit= offset= thread_count= csvpath= csvfilename= logfile= user_name= password= schedule_time=<HH:mm (e.g. 13:33) or cron expression (e.g. 33 13 * * *   or   */1 * * * *)>
    
    

La única diferencia entre esta instrucción y la selección de la instrucción 'c' es que ésta incluye adicionalmente los valores de root_url, process_name, csvpath y schedule_time.

c. Ejecutando el módulo conector con la línea de comandos correcta y sobre un fichero de configuración JSON como fuente de variables de configuración:

    python BAW_Connector.py ./baw_config.json

La plantilla JSON:

        {
        
        "root_url": "",
        
        "process_name": "",

        "project": "",

        "from_date": "2011-08-04T03:12:53Z",

        "from_date_criteria": "",

        "to_date": "2024-08-04T03:12:53Z",

        "to_date_criteria": "",

        "status_filter": "Active,Completed,Failed,Terminated,Suspended,Late,At_Risk",

        "instance_limit": 10,

        "offset": 0,

        "thread_count": 1,

        "csvpath": "",

        "csvfilename": "",

        "logfile": "",

        "user_name": "",

        "password": ""

        }

Tabla 1. Descripción de los parámetros JSON

Parámetro JSON Sistema/entorno Variable Descripción
uRL_raíz BAW_ROOT_URL Define la creación de una solicitud de API para IBM Business Automation Workflow. Debe ser el nombre de host para llamar a las API de BAW.
process_name BAW_PROCESS_NAME Devuelve las instancias para el nombre completo de la instancia del proceso BAW/BPD que está buscando.
Proyecto BAW_PROJECT_NAME Devuelve las instancias de los proyectos especificados, que se identifican por sus siglas (nombres abreviados). El nombre_proceso anterior pertenece a este proyecto.
desde_fecha BAW_START_DATE Incluye sólo los casos de BPD a partir de esta fecha. La fecha debe estar en formato ISO8601, como por ejemplo 2011-08-04T03:12:53Z.
desde_fecha_criterios BAW_START_DATE_CRITERIA From_date puede basarse en la creación, modificación o cierre. Debe utilizar uno de estos valores: createdAfter, modifiedAfter, closedAfter
to_date BAW_END_DATE Incluye sólo los casos de BPD hasta la fecha especificada. La fecha debe estar en formato ISO8601, como por ejemplo 2011-08-04T03:12:53Z.
criterios_hasta_la_fecha BAW_END_DATE_CRITERIA To_date puede basarse en la creación, modificación o cierre. Debe utilizar uno de estos valores: createdBefore, modifiedBefore, closedBefore
Filtro_de_estado BAW_STATUS_FILTER Devuelve las instancias que sólo tienen el estado especificado. La lista de valores de estado es: Active, Completed, Failed, Terminated, Suspended, Late, At_Risk. Para especificar más de un valor de estado, separe los valores con una coma, así Activo,Retrasado,Fallido,En_riesgo.
Límite_de_instancia BAW_INSTANCE_LIMIT El número máximo de resúmenes de instancia que se devuelven.
Desplazamiento BAW_OFFSET El número de instancias a omitir antes de recoger los datos. Si, por ejemplo, ha generado un archivo CSV con 10 instancias en las que offset=0, puede realizar una consulta con instance limit 10 y offset=10 para recopilar los 10 resultados siguientes.
Thread_Count BAW_THREAD_COUNT Elige el número de hilos sobre los que se ejecutará el conector BAW. Puede aumentar el número de hilos para límites_de_instancia mayores para recopilar datos simultáneamente, pero esto también aumenta la carga en el servidor BAW. Hay que encontrar un buen equilibrio
Csvpath BAW_CSV_PATH Proporcione una ruta para el archivo que genera el conector BAW.
Csvfilename BAW_CSV_FILENAME Proporcione el nombre del archivo csv específico que genera BAW Connector (sin la extensión del archivo).
Archivo de registro BAW_LOG_FILE Proporcione el nombre del archivo de registro específico que rastrea los detalles de ejecución del conector BAW (sin la extensión del archivo). Consiste en un archivo de datos que contiene información sobre patrones de uso, actividades y operaciones.
nombre de usuario BAW_USERNAME Usuario de IBM BAW para permitir la llamada a la API de IBM BAW.
contraseña BAW_PASSWORD IBM BAW contraseña del nombre de usuario antes de este
Hora_de_programación (opcional) BAW_SCHEDULE_TIME Elige una hora dentro de una ventana de 24 horas para iniciar BAW Connector.

Establecimiento de la planificación


En los métodos para especificar estos parámetros, sólo la variable < schedule_time> es opcional que se puede aceptar en un formato de hora (horas: minutos) o expresión cron, tal como se muestra a continuación:

Especifique la hora planificada dentro de las próximas 24 horas en formato de hora hours: minutes (es decir, de 00:05 a 24:00) o expresión cron:

A continuación, especifique la hora:

  • 13:33

O especifique la expresión cron:

  • 33 13 * * *

Por ejemplo, la expresión cron 33 13 * * * representa la hora 1 3: 33 (1:33 PM) cada día.

  • */1 * * * *

La expresión cron */1 * * * * representa un trabajo que se ejecuta cada minuto.

Si desea especificar cada 5 minutos mediante cron, se basa en cada 5 minutos desde el inicio de la hora, no cada 5 minutos desde la hora actual.

La ventaja de utilizar una expresión cron es tener una hora planificada coherente. Con la expresión cron, cada cierto tiempo es consistente.

Ejecutando Python baw_conector py file user choose p con cuenta atrás programada Ejecutando el archivo Python baw_conector py, el usuario elige p con la cuenta atrás de la planificación

Ejecutando Python baw_conector py archivo usuario elegir p con horario cuenta atrás termina Ejecutando el archivo Python baw_conector py, el usuario elige p con la finalización de la cuenta atrás de la planificación

Una vez finalizado el procedimiento de recuperación de datos BAW, el programa debe terminar y el ciclo de vida de ejecución debe llegar a su fin. Esto implica que una expresión cron se puede establecer para que se ejecute una vez cada cantidad predeterminada de tiempo. La planificación tiene una sola aparición y finaliza cuando se ejecuta el programa. El cron sólo se ejecuta una vez más cuando se ejecuta el módulo de conector BAW.

Función System_extract_baw_data (interactiva o integración/automatización del sistema)

Esta función toma las variables de configuración de las variables de entorno que le permiten ejecutar el módulo BAW de una forma automatizada en la que las variables de configuración se establecen como variables de entorno. Para ver la variable de entorno configurada, consulte Explicación de los parámetros.

Hay dos formas de ejecutar el módulo BAW_Connector.py a través de la función system_extract_baw_data . La función system_extract_baw_data permite al módulo BAW_Connector ampliar e integrar en el módulo Python o ejecutar el módulo BAW_Connector.py de forma automatizada

  • Modalidad interactiva:

    Vaya a la carpeta BAW-Connector.

        cd <path to your folder>/BAW-Connector
    

    Ejecute el mandato.

    python BAW_Connector.py
    

    Elija la opción: para extraer datos BAW basándose en el conjunto de configuración como variables de entorno, escriba 's'.

  • utilizando un script: Si amplía e integra el módulo de conector BAW con un módulo existente utilizando un script, el módulo Python existente importa la función system_extract_baw\data desde el módulo de conector BAW y llama a la función system_extract_baw_data(config) en el módulo existente con un diccionario de configuración.

Por ejemplo:

from main.BAW_Connector import system_extract_baw_data

config = {

...

    }

if name == "main":

system_extract_baw_data(config)

Carga de la aplicación de proceso personalizada en IBM Process Mining

Después de utilizar el conector BAW para generar el archivo CSV, puede utilizar la aplicación de proceso BAW para extraer, transformar y cargar los datos de proceso.

BAW Process App and Connector es compatible con la versión de BAW 23.0.2.

Para acceder a los servicios de Process App para BAW, realice los pasos siguientes:

  1. En la página de inicio, haz clic en Iniciar desde una aplicación de proceso.

  2. En la página Aplicación de proceso , pulse Importar aplicación de proceso desde archivo.

  3. Cargue el archivo Process Management.pma de BAW Business en el cuadro de diálogo Aplicación de proceso y pulse Crear. Se crea la aplicación de proceso.

    Importar aplicación de proceso desde archivo

Creación de un proceso utilizando la aplicación de gestión de procesos BAW

Para crear la aplicación de proceso, siga estos pasos:

  1. En la página Aplicaciones de procesos, haga clic en Empezar en el mosaico de gestión de procesos BAW.

  2. En el paso Detalles del proceso, complete los siguientes pasos:

    a. Introduzca el nombre de su proceso.

    b. Opcional: Vincule su proceso a una organización.

    • Si desea vincular su proceso a una organización existente, seleccione la opción Utilizar organización existente y seleccione el nombre de una organización de la lista.

    • Si desea vincular su proceso a una nueva organización, seleccione la opción Crear nueva organización e introduzca el nombre de la nueva organización.

    c. Pulse Siguiente para ir al paso Documentación .

    Para recopilar datos de la aplicación de proceso BAW, debe descargar y configurar el script de código de conector/extractor BAW para extraer los datos en bruto BAW de la aplicación BAW. Después de ejecutar estos pasos, pulse Siguiente para ir al paso Configuración de registros de sucesos .

    Si no ha ejecutado estos pasos, seleccione Ayúdeme a recopilar mis datos.

    Pulse Descargar archivo .gz para acceder al script Python para extraer datos de proceso de una aplicación BAW.

    Una vez completada la ejecución, se crea un archivo .gz (que contiene un archivo CSV de los datos de proceso BAW de la aplicación BAW) en la ubicación que especifique durante dicha configuración y ejecución del script de conector/extractor. El archivo .gz es necesario para continuar con el paso siguiente. Después de tener el archivo .gz , pulse Siguiente para ir al paso Configuración de registros de sucesos .

  3. Configuración de registros de sucesos

    En los registros de sucesos de configuración, puede añadir cualquier proceso o datos de tarea al CSV.

    En el recuadro de selección Configuración de registros de sucesos, seleccione Incluir variables expuestas para incluir las variables de proceso expuestas. El nombre de campo de cada variable rastreada en el origen de datos de Process Mining empieza por 'trkd'.

    Por ejemplo:

    trkd.requisition.requester
    

    Con el área de texto de datos de negocio, puede listar otros datos de proceso o tarea separados por una coma (,).

    Por ejemplo:

    requisition.requester,currentPosition.jobTitle,currentPosition.replacement.lastName
    

    El nombre de campo de cada una de estas variables en el origen de datos de Process Mining empieza por 'tsk'.

    Por ejemplo:

    tsk.requisition.requester, tsk.currentPosition.jobTitle, tsk.currentPosition.replacement.lastName
    

    Después de elegir qué incluir, pulse Siguiente para cargar los datos en bruto de .csv que se extraen utilizando el conector BAW.

    La imagen siguiente procede de una aplicación BAW para hacer referencia a dónde se originan los datos de tarea y las variables expuestas.

    Ejemplo de variable

Los valores de tipo fecha de BAW están en el formato ISO8601, por ejemplo, 2011-08-04T03:12:53Z.

Para trabajar con IBM Process Mining NextGen, el formato se cambia a "%Y-%m- %d %H:%M:%S" a través de una función dentro de BAW_process_app.py, que es el archivo lógico dentro de su BAW Process App. La función format_dates encuentra las columnas y actualiza sus valores filtrando los nombres que contienen date o Time. La búsqueda distingue entre mayúsculas y minúsculas.

Si sus resultados incluyen columnas de tipo Date que no coinciden con los nombres date o Time, es posible que tenga que editar el archivo lógico de Process App. Las columnas pueden proceder de variables rastreadas o no rastreadas.

El archivo lógico de Process App tiene una lista de subcadenas que se comprueban en las columnas:


def format_dates(event_list: pl.DataFrame) -> pl.DataFrame:
    #case sensitive list of substrings to watch out for in column names
    columns_search_text = [ "date", "Time"]

Debe añadir la subcadena columns_search_text al archivo. Utilice el nombre de la columna afectada o una subcadena de ese nombre si necesita aplicar el formato de fecha a varias columnas.

  1. Carga de datos

    Arrastre y suelte su archivo .gz o haga clic en cargar para ver la ventana Carpeta. Vaya a la ruta del archivo en el que generó el archivo zip que contiene los datos extraídos del conector/extractor BAW y cárguelo aquí.

    Cargue los datos

A continuación, Process App valida los datos para comprobar que se pueden cargar. Después de que Process App termine de validar los datos, haga clic en Siguiente para ir al paso Genere su proceso.

  1. Generar su proceso.

    En el paso Genere su proceso, IBM Process Mining genera un proceso basado en los datos que usted cargó en el paso Cargue sus datos. Puede ver el progreso del proceso generado en cualquiera de los estados siguientes: PENDING, IN PROGRESS, completed y ERROR. Cada uno de los estados es aplicable en las etapas siguientes del paso Generar el proceso :

    • Transformación de los datos

    • Generación del registro de sucesos

    • Aplicación del análisis predeterminado

    • Finalización del proceso

    Generar el proceso

    Haga clic en Finalizar para ir al panel de control IBM Process Mining Processes. La generación del proceso se ejecuta en segundo plano. Cuando la aplicación de proceso completa la generación de procesos, puede ver el nuevo proceso que se crea en la lista de procesos en el panel de control Procesos .

    Si permanece en la misma ventana para ver el progreso de la generación del proceso hasta el final, verá el estado de cada una de las etapas que están marcadas como completadas. Generar el proceso

    Pulse Finalizar para ver el proceso en la pestaña Modelo de proceso.

Visualización de la configuración del registro de sucesos

Puede ver las configuraciones de registro de sucesos para el proyecto de minería de procesos que ha creado utilizando la Aplicación de proceso de módulo de negocio BAW. Para ver la entrada de usuario o las configuraciones del registro de eventos, complete los siguientes pasos:

  1. Vaya a la página de inicio > Todos los proyectos.
  2. Seleccione el proyecto de minería de procesos que creó mediante la aplicación de procesos.
  3. Vaya a Datos y Ajustes > Process App para ver las configuraciones de registro de eventos en la sección Entradas de usuario (Configuraciones de registros de eventos).