Está en la página 1de 144

Modelado de Procesos

UNIDAD 3: VISTA DE PROCESOS


“Si no puedes describir
lo que estas haciendo
como un PROCESO, no
conoces lo que estas
haciendo”

William Edwards Deming


 Desde la revolución industrial, la productividad ha
estado aumentando por las innovaciones técnicas,
mejoramiento en la organización del trabajo y uso
de la tecnología de información.
 Adam Smith (1723-1790) mostró las ventajas de la
division del trabajo.
 Frederick Taylor (1856-1915) introdujo los
principios iniciales de la administración científica.
 Henry Ford (1863-1947) introdujo la línea de
producción para la producción en masa de “black
T-Fords”.
 Alrededor de 1950 computadores e
infraestructuras de comunicación digital
empezaron a influenciar los procesos de negocios
y su administración.
 Hoy en día, las innovaciones en computación y
comunicación son aún los conductores principales
detrás del cambio en los procesos de negocios.
 Los sistemas de información necesitan ser
configurados y conducidos por instrucciones
precisas. Como resultado, se usan ampliamente los
Modelos de Procesos en las organizaciones de
hoy.
 Sin embargo, BPM (Gestión de Procesos de
Negocios) y la Administración de las Operaciones
(Investigación de Operaciones para la
administración) tienen en común, el hacer un
buen modelo es "un arte en lugar de una ciencia".
 Crear modelos es por lo tanto, una tarea dificil y
propenso a error.
 Los errores típicos incluye:
• El modelo describe una versión idealizada de la
realidad.
• El modelo es incapaz de capturar adecuadamente
el comportamiento humano.
• El modelo está en el nivel de abstracción
incorrecto
• Por lo tanto y dada la difusión
globalizada de transacciones
digitales, se recomienda
usar los datos de eventos
o event data:
 La Minería de Procesos
permite la extracción
de modelos basados
en hechos o eventos
(event data).
 Además, la Minería de Procesos no tiene como
objetivo crear un único modelo del proceso
 En cambio, proporciona varias vistas sobre la
misma realidad en diferentes niveles de
abstracción.
 Por ejemplo, los usuarios pueden decidir
observar el comportamiento más frecuente
para obtener un modelo simple ("modelo al
80%").
 Sin embargo, también pueden inspeccionar el
comportamiento completo derivando el
"modelo al 100%" que cubre todos los casos
observados.
 El propósito de la Minería de Procesos o Process
Mining es usar event data o los datos de eventos
para extraer la información relacionada a los
procesos, e.g., descubrir automáticamente un
modelo de un proceso al observar los eventos
registrados por algún sistema de información
 Comenzaremos discutiendo el enfoque clásico en
el modelado de procesos de negocio.
 La Vista de Procesos de la empresa es una de las 3
vistas de la empresa como sistema (pensamiento
sistémico) y es esta vista de procesos que muestra
como la empresa entrega valor al cliente.
 El propósito del modelado de procesos es producir
una abstracción de los procesos inmersos en las
funciones empresariales.
 La abstracción producida al modelar procesos
sirve como base para entenderlo, describirlo a
otros, analizarlo basado en su rendimiento, y para
especificarlo mediante un diseño del mismo.
 Dos vista dominantes de un proceso se centran en
el flujo de actividades y en el flujo de información.
 La primera vista representa la secuencia lógica de
actividades en el proceso y la segunda representa
como la información fluye a través del sistema
 Luego del enfoque clásico continuaremos con el
enfoque actual presentando el tema:
“descubrimiento de procesos” utilizando el
algoritmo-α
 El algoritmo-α ilustra algunas ideas generales
usadas por muchos algoritmos de Minería de
Procesos y ayuda a entender la noción de
descubrimiento de procesos
Agenda
1. Definición de Función de la Empresa y
Proceso de Negocio.
2. Enfoque clásico de Modelado de Procesos
a) Descomposición de procesos
b) Clasificación de procesos
3. Enfoque actual de Modelado de Procesos
a) Modelado y análisis de procesos
b) Minería de Procesos
c) Obteniendo Datos
d) Descubriendo Procesos
e) El algoritmo α
1. Definición de Función de la Empresa y
Proceso de Negocio

 Una función de la empresa es un conjunto de


actividades las cuales están lógicamente
agrupadas en procesos. Juntas respaldan un
aspecto hacia la consecución de la MISIÓN de la
empresa.
 Una función no se apoya para su definición en las
estructuras organizacionales.
 Una función CATEGORIZA lo QUE se hace, no
COMO se hace.
 Un proceso IDENTIFICA lo QUE se hace, no
COMO se hace.
 Un proceso es una red de actividades específicas
en una empresa que se ejecutan repetidamente.
 Un proceso no se apoya para su definición en las
estructuras organizacionales.
DESCOMPOSICIÓN FUNCIONAL

Areas Funcionales
 Las funciones de la empresa

de una
empresa Nivel de

pueden ser
Funciones

subdivididas
en procesos. Nivel de
Procesos

Los procesos pueden ser


descompuestos dentro de
procesos de nivel más bajo
 Ejemplo de Áreas Funcionales corporativas típicas
y sus Funciones:
Area Funcional Funciones Area Funcional Funciones
Planificación del Análisis del mercado, revision de la gama de Producción Control de materiales, dimensionamiento y
negocio productos, pronóstico de ventas corte, operaciones de máquina
Finanzas Planificación financiera, adquisición de capital, Ventas Administración del territorio, venta,
gestión de fondos administración de ventas, relaciones con el
cliente.
Planificación del Diseño del producto, fijación de precios, Distribución Control del inventario terminado, atención de
producto mantenimiento de las especificaciones del ordenes, empaquetado, envio.
producto.
Materiales Requerimientos de materiales, compras, Contabilidad Acreedores y deudores, flujo de caja,
recepción, control de inventarios, control de planificación presupuestal, análisis de
calidad rentabilidad
Planificación de la Planificación de la capacidad, programación de Recursos Humanos Planificación del personal, admisión, política de
producción planta, diseño del flujo de trabajo compensación económica
 Mientras que una función, esta en marcha y
continúa, un proceso se relaciona con un acto
específico (incluye actividades y/o tareas) que
tiene punto de inicio y final definibles.
 El análisis de los procesos no se hacen en detalle
hasta la etapa de análisis del área de negocio
 La percepción de un proceso al más alto nivel es
conocido como SIPOC.
Areas funcionales
1 Funciones

2 Procesos

Procedimientos

3
S UPPLIERS I NPUTS P ROCESS O UTPUTS C USTOMERS
PROVEEDORES ENTRADAS PROCESO SALIDAS CLIENTES
(Proveedores de (Recursos (descripción a alto nivel de la actividad) (Entregables del (alguien quien recibe un entregable del proceso)
Recursos requeridos) requeridos por el proceso)
proceso) Requerimientos Requerimientos
Propietario restaurant cocina calentar agua inicio: que el spaghetti este suave, clientes del
añadir ingredientes pero ligeramente firme restaurant
Propietario restaurant caserola contener ingredientes
medir la sal y remover
Propietario restaurant cuchara ingredientes spaghetti que satisfaga a
los clientes y pueda ser propietario
Propietario restaurant tasa de medida medir el aceite y el agua preparado rápidamente restaurant
Propietario restaurant agua cocinar el fideo tallarín
proceso: cocinar spaghetti
spaghetti cocinado
Proveedor comestible sal condimentar y remover alterando
temperatura de hervido que los fideos pasen la
prueba de estar bien cocinero
Proveedor comestible aceite evitar que el fideo se pegue
cocinados: “se pega a la
producto para la comida del pared cuando se tira”
Proveedor comestible fideos tallarín cliente
INGENIERIA DE INFORMACIÓN EMPRESARIAL e-mail: egonzalezh@upao.edu.pe spaguetti según lo
despacho de la camarero
camarero orden del cliente
IIND-169, VI CICLO orden precisa / fácil de leer fin: servir spaghetti
e-mail: elmer.gonzalez@fulbrightmail.org ordenado/borrar número
orden del cliente
de mesa
 Un proceso de negocio es una red de actividades
interrelacionadas que convierte los inputs en un
output, donde el output es un resultado, producto
o servicio, de valor para el cliente.
Función A Función B
del negocio del negocio

PROCESO A Actividad A1 Actividad B3


Tarea A11 Tarea B31
Tarea A12
Actividad B1 Tarea B32
Tarea B11
Tarea B12

Actividad A2 Actividad B2
PROCESO B Tarea A21 Tarea B21
Tarea A22 Tarea B22
 Un proceso de negocio describe el flujo de trabajo
dentro de una organización y es gestionado y
apoyado por un sistema de información
 Un proceso de negocio involucra el esfuerzo
coordinado de personas, información, y tecnología
 Algunos ejemplos de Procesos de Negocio son…
 Los elementos de un proceso de negocio son:
1.Transformación de inputs a outputs
2.La unidad de trabajo
3.Red de actividades
4.Clientes
5.Metas y mediciones de rendimiento
6.Pool (grupo) de recursos y recursos
Pool

Resources
https://www.youtube.com/watch?v=wYF-D3SutfM
1. Transformación de inputs a outputs
2. La unidad de trabajo
3. Red de actividades

1. Transformaciones de Inputs a Outputs: 4.


5.
Clientes
Metas y mediciones de rendimiento
6. Pool (grupo) de recursos y recursos
• Una transformación puede ser FISICA:
 Tal como ocurre en una manufactura cuando la entrada (Input) de materia
prima es transformado por varios procesos de manufacturación dentro de
un producto terminado
• La transformación puede ser de LOCALIZACIÓN:
 En Logística, la transformación cambia de una localización a otra
localización.
• La transformación puede ser TRANSACCIONAL:
 Tal como cuando se hace una reservación, en el cual la transformación es
desde una solicitud de reservación a una reservación confirmada
• Una transformación puede ser INFORMACIONAL:
 Tal como ocurre en la transformación de los datos de venta en tendencias
del mercado mostrado en gráficos.
1. Transformación de inputs a outputs
2. La unidad de trabajo
3. Red de actividades
4. Clientes
5. Metas y mediciones de rendimiento
6. Pool (grupo) de recursos y recursos
Cualquiera que sea la transformación, los procesos del negocio
adiciona algún valor a los inputs los cuales son proporcionados
como outputs (resultados o productos) a los clientes.

2. La unidad de trabajo:
• La unidad de trabajo es el elemento, el que ha sido hecho para el
proceso, llegando a convertirse en el resultado final del proceso.
• La unidad de trabajo cambia a través del proceso. Por esta razón
generalmente referenciamos la unidad de trabajo usando el nombre
del producto final del proceso. Ver siguiente tabla
Proceso Unidad de Input Output
Trabajo
Ensamblar cámaras cámara Partes de la cámara Cámara ensamblada
fotográficas

Proporcionar pasajero Pasajeros y Pasajero en su


transporte aéreo combustible en una destino
localización
Reservar habitaciones reservación Reservación, Reservaciones
en un crucero requisitos, marketing, comprometidas
información de pago

Generar declaración declaración Finanzas, Declaración financiera


financiera contabilidad,
económica
marketing, y otros
datos.
1. Transformación de inputs a outputs
2. La unidad de trabajo
3. Red de actividades
4. Clientes
5. Metas y mediciones de rendimiento
3. Red de actividades: 6. Pool (grupo) de recursos y recursos

• El proceso de transformación usualmente no es un proceso de simple-


paso, sino que consiste de una red de actividades distinguibles.

Función A Función B
del negocio del negocio

PROCESO A Actividad A1 Actividad B3


Tarea A11 Tarea B31
Tarea A12
Actividad B1 Tarea B32
Tarea B11
Tarea B12

Actividad A2 Actividad B2
PROCESO B Tarea A21 Tarea B21
Tarea A22 Tarea B22
• Esto nos dirige a una jerarquía natural
por el cual un proceso consiste de sub-
procesos, los cuales consisten también
de otros subprocesos, etc.
• Para entender mejor un proceso, es
muy útil descomponer el proceso en
subprocesos para modelar el proceso
en un nivel de abstracción apropiado
para cualquier análisis que este siendo
conducido
1. Transformación de inputs a outputs
2. La unidad de trabajo
3. Red de actividades
4. Clientes
5. Metas y mediciones de rendimiento
4. Clientes: 6. Pool (grupo) de recursos y recursos

• Un cliente es la persona o grupo que recibe el resultado o producto(un


bien o un servicio) del proceso.
• Generalmente, pensamos que los clientes son externos a la
organización, sin embargo, un cliente puede ser también interno.
• Es importante identificar al cliente(s) del proceso de negocio debido a
que es el cliente quien define el valor del resultado final o producto del
proceso.
• El Valor es el beneficio que un cliente obtiene a partir del resultado del
proceso comparado al costo de aquel resultado.
• El “costo” no sólo se refiere al precio del producto/servicio, sino
también al costo en términos de tiempo y otros esfuerzos requeridos
para obtener aquel producto/servicio.
• Un ejemplo, un restaurante podría conocérsele por brindar comidas
excelentes a un costo razonable, pero si el cliente DEBE esperar un
mayor tiempo que su deseo de esperar, entonces el valor del producto
ofrecido por el restaurante se ve disminuido a vista y paciencia del
cliente.
• En un proceso de negocio, todas las actividades deberían contribuir a
proporcionar VALOR.
• Parte del análisis del proceso es identificar las actividades que adicionan
y no adicionan valor y buscar la manera de eliminar o reducir éstas
últimas, ver “customer journey map”
https://blog.fromdoppler.com/customer-journey-map-como-crear-uno/
1. Transformación de inputs a outputs
2. La unidad de trabajo
3. Red de actividades
4. Clientes
5. Metas y mediciones de rendimiento

5. Metas y Mediciones de Rendimiento: 6. Pool (grupo) de recursos y recursos

• La meta de un proceso de negocio es una declaración de lo que el


proceso de negocio esta intentando lograr para la empresa.
• Una declaración formal de un proceso ayuda al análisis del proceso
pues trae el propósito del proceso al primer plano tal que el analista no
pierda la mira del porque se esta haciendo el proceso y lo realizado por
el proceso.
• Tanto el proceso mismo y el producto/servicio que resulte del proceso
puede ser medido.
• Un proceso de negocio es gestionado por la medición de sus resultados
o producto y por el aseguramiento de alcanzar las expectativas del
cliente en términos de rendimiento, precio, oportunidad, y calidad.
• El rendimiento de un proceso debería ser medido DIRECTAMENTE.
1. Transformación de inputs a outputs
2. La unidad de trabajo
3. Red de actividades
4. Clientes
5. Metas y mediciones de rendimiento

6. Pool (grupo) de Recursos y Recursos: 6. Pool (grupo) de recursos y recursos

• Un pool de recursos es un grupo de recursos comunes e


intercambiables. Ejemplos: grupo de máquinas y una oficina de
técnicos de PC´s.
• Un proceso de negocio es ejecutado
por uno o más recursos. Un recurso
es una persona, una pieza de un
equipo, o un programa de compu-
tador usado por la empresa para
hacer un proceso de negocio.
• Los recursos no deberían ser confun
didos con inputs del proceso.
• Los inputs del proceso son consumibles por el proceso y juegan un rol
directo en la transformación, mientras los recursos no son consumibles
2. Enfoque CLÁSICO de modelado de Procesos
Diagnóstico/
requerimientos
Adaptación

Adopción/
(re)diseño
monitoreo

Configuración/
implementación
 Síntomas que experimentan la empresas antes de
utilizar un BPM
2.a. Descomposición de Procesos
 Los procesos de negocios son complejos, y su red
de actividades pueden ser muy extensas.
 El valor de mostrar el proceso en un simple nivel
de abstracción es muy restringido.
 Los procesos son jerárquicos por naturaleza y
deberían ser representados de esa manera en
mapas de procesos.
 Las formación de jerarquías nos capacita
comprender mejor los sistemas complejos.
 La descomposición nos ayuda manipular mejor la
complejidad de los procesos
 El nombre de un proceso debería ser un verbo
claúsula, tal como: crear requisición de compra,
seleccionar proveedor, rastrear ordenes, preparar
información para cuentas por pagar, analizar
rendimiento de proveedor, atender al cliente. etc.
DESCOMPOSICIÓN FUNCIONAL
Areas Funcionales
de la empresa

Nivel de
Funciones

Nivel de
Procesos

Los procesos pueden ser


descompuestos dentro de
procesos de nivel más bajo
una función CATEGORIZA lo
CASO AEROLINEA
Reservaciones Transporte aéreo Planificación de QUE se hace, no COMO se hace.
de vuelos de pasajeros programas de vuelo

Vender boletos y Cambiar Gestionar las


Controlar ingresos aeronave operaciones de vuelo un proceso o sub-proceso IDENTIFICA
lo QUE se hace, no COMO se hace

Descargar aeronave Preparar aeronave Cargar aeronave

Desembarque Descarga Combustible Control Provisión Limpieza Balanceado Abordaje Carga de Desa-
de pasajero equipaje a aeronave seguridad aeronave aeronave de carga pasajeros equipaje trancar

Controlar pase Juntar


Posicionar Colocar Desembarcar de abordaje puerta
aeronave ruedas pasajeros
en puente de cuña Llamado a Escaneado
pasajeros boletos
Asuntos de datos Areas funcionales
Tipos de entidad 1 Funciones

2 Procesos

Procedimientos

3
 Mientras que los procedimientos podrían ser
desechados o cambiados, las funciones y el
proceso deben continuar ejecutándose con el
propósito de funcionamiento de la empresa.
 En general, un proceso puede ser descompuesto
en subprocesos para diferenciar las etapas del
trabajo.
 La empresa puede cambiar periódicamente la
forma de su estructura organizacional, pero debe
continuar llevando a cabo las mismas funciones y
procesos.
 La identificación de funciones y procesos represen-
ta un interés fundamental para conocer como
opera la empresa, independientemente de su or-
ganigrama actual (el cual es usualmente confuso).
 Las funciones tienen que ver con lo ¿QUÉ se debe
hacer? para operar una empresa, no con ¿cómo se
hace?
 Los procedimientos se refieren a ¿CÓMO se hace?.
 Los procedimientos cambian con los avances
tecnológicos. Existen varios tipos de
procedimientos que pueden ser usados para llevar
a cabo procesos dados.
 Una actividad es una agregación intermedia para
ayudar al modelador entender lo QUE es hecho
por un recurso simple, usualmente por una unidad
de la organización.
 Una actividad puede descomponerse de 2 ó más
tareas. Una tarea es definida como el nivel más
bajo de una unidad de proceso.
 Una tarea es una unidad de trabajo completa y
lógica, con un input y un output, terminado por
un recurso simple
 Un paso describe a una acción o decisión simple en
la tarea que podría no ser una unidad de trabajo
terminada.
 En un modelo uno o más de los niveles pueden ser
omitidos dependiendo de la necesidad del análisis.
CASO MANUFACTURA categoriza
identifica

Área Funcional PLANIFICACIÓN ALMACÉN MATERIALES

Función Análisis de Determinación de


(describe una Adquisición Despacho Compras Recepción
mercado requerimientos
actividad en curso)

Proceso Analizar Estimar precios Predecir Monitorear Chequear Aceptar Controlar Almacenar Registrar Actualizar
(describe un clientes componentes demanda Niveles de stock inventarios envíos calidad items recepción inventarios
acto específico) de items

Registrar Formular los


Actividad mediciones estadísticos
de calidad de la calidad
2.b. Clasificación de los Procesos de Negocio
 Todos los procesos no son lo mismo, por lo que es
muy útil clasificarlos tal que puedan ser tratados
cada tipo de manera diferente.
 Existen diversas clasificaciones útiles de los
procesos, siendo una de ellas clasificarlos en tres
clases:
• Procesos Core (primordiales)
• Procesos Support (respaldo)
• Procesos de Management (gestión)
ACTIVIDADES SECUNDARIAS

ACTIVIDADES PRIMARIAS
 Procesos Core (primordiales) – tienen clientes
externos e incluyen actividades primarias de la
cadena de valor.
 Procesos de Respaldo o de Soporte – tienen
clientes internos e interés en las actividades
secundarias en de la cadena de valor.
 Procesos de Gestión – Gestionan los procesos
primordiales y los de soporte, estableciendo la
dirección estratégica para la empresa.
 Los Procesos de Gestión son usualmente procesos
no estructurados para la toma de decisiones. A
veces son llamados procesos de decisión.
 El uso de los sistemas de información para
automatizar los procesos de negocios ha dirigido el
interés en entender los flujos de trabajo o
workflow.
 Workflow es la automatización de un proceso de
negocio, en su totalidad o en parte, durante el cual
los documentos, información, o tareas son pasadas
desde un participante hacia otro de acuerdo a un
conjunto de reglas procedurales.
 Un workflow podría ser de un proceso primordial
o de un proceso de respaldo

https://www.youtube.com/watch?v=PvZY03Kr0NI&t=28s
 El énfasis del workflow esta en la ejecución del
proceso de negocio vía un sistema de información.
 A un alto nivel, las descripciones de los procesos
dentro de una industria son todas similares. Las
diferencias entre las compañías se manifestarán a
niveles más bajos en la descomposición de los
procesos.
Proceso Input Output

Orden de compra Prospecto o conducción Orden

Llenado de orden o pedido Orden o pedido Producto o servicio entregado o


brindado

Reservación Requisitos de reservación Reservación

Resolver demanda de seguro Demanda de seguro Demanda pagada/no pagada

Proporcionar apoyo al cliente Llamado explicando el Problema resuelto


problema

Diseño del producto Conceptualización del producto Especificaciones de diseño del


producto.
3. Enfoque ACTUAL de modelado de Procesos
3.a Modelado y Análisis de Procesos
 La gran cantidad de notaciones de modelado
disponibles hoy en día ilustra la importancia del
modelado de procesos.
 Algunas organizaciones solo usan modelos de
procesos informales para estructurar discusiones y
para documentar procedimientos
 Hoy en día, la mayoría de modelos de procesos
son hechos a mano y no estan basados en análisis
riguroso de datos de procesos existentes.
 Las organizaciones que operan en un alto nivel de
madurez de BPM (Business Process Management)
usan los modelos que puedan ser analizados y
usados para representar procesos operacionales
 No es fácil hacer buenos modelos de procesos .
Afortunadamente, Process Mining puede facilitar
la construcción de mejores modelos en menos
tiempo.
 Los algoritmos para el Descubrimiento de Procesos
como el algoritmo-α puede generar
automáticamente un modelo de proceso
 Existen varias notaciones de Modelado de
Procesos. Definiremos las notaciones básicas de
Petri Net y BPMN.

 PETRI Nets: Las redes de Petri o Petri nets son las


más antiguas y de mejor lenguaje de modelado de
procesos que permite el modelamiento de
concurrencias
 Existen varias notaciones de Modelado de
Procesos o procesos de negocio. Definiremos las
notaciones básicas de Petri Net y BPMN.
 Petri nets son ejecutables y muchas técnicas de
análisis pueden ser usadas para analizarlas.
 La estructura de Petri net es estática, pero,
gobernada por la regla de activación o de disparo,
los tokens pueden fluir a través de la red.
DEFINICIÓN DE PETRI NET
 Una red Petri net es un conjunto de (P, T, F),
donde:
1. P es un conjunto finito de lugares.
2. T es un conjunto finito de transiciones.
3. F ⊆ (P x T) U (T x P) es una relación de flujo.
Ejemplo1: una consultoria a especialistas
 En la clínica ambulatoria de un hospital, los
pacientes consultan a los especialistas. Cada
paciente tiene una cita con un cierto especialista.
 Se describe el curso de los negocios en torno a un
especialista como un modelo de proceso.
 El especialista recibe a los pacientes. En cada
momento, el especialista esta en uno de los tres
estados siguientes: (1) el especialista esta libre y
espera por el siguiente paciente (estado libre), (2)
el especialista esta ocupado tratando a un paciente
(estado ocupado), o el especialista esta
documentando el resultado del tratamiento
(estado docu).
 Cada paciente quien visita a un especialista esta en
uno de los siguientes estados: (1) el paciente esta
esperando (estado espera), (2) el paciente esta
dentro siendo tratado por el especialista (estado
dentro), o (3) el paciente ha terminado su
tratamiento por el especialista (estado terminado)
TRES POSIBLES ESTADOS DE UN ESPECIALISTA Y DE UN PACIENTE

libre docu
espera dentro terminado

ocupado El especialista El paciente


 Las figuras anteriores describen los estados del
especialista y los estados del paciente.
 Un paciente va a través de estos estados sólo una
vez( por visita).
 El especialista va a través de los tres estados en una
manera iterativa.
 Para este proceso de negocio, tres eventos son
importantes:
1. El especialista empieza con el tratamiento de
un paciente (evento “inicio”)
2. El especialista termina el tratamiento de un
paciente e inicia la documentación de los
resultados del tratamiento (evento “cambio”)
3. El especialista termina la documentación
(evento “terminado”)
 Modelemos el proceso de negocio como una Petri
net
 Si vemos al especialista separadamente, veremos
que existen 3 estados (libre, ocupado, y docu) y
tres transiciones (inicio, cambio, y fin).
 Podemos modelar cada estado del especialista
como un lugar y cada transición una transición de
Petri net.
 En el marcado mostrado el
especialista esta libre
(“desocupado”)
Modelando el estado del especialista
 Modelemos al paciente separadamente. Dado que
un paciente puede estar en uno de los tres
estados. Un token representa a un paciente en el
estado correspondiente.
 La figura muestra el Petri net resultante. En el
marcado mostrado hay 3 pacientes en el estado de
“espera”, y un paciente
el estado “terminado”
Modelando estados de los pacientes
 La transición “inicio” en la Petri net del especialista
representa el mismo evento de iniciar en la
transición “inicio” de la Petri net de los pacientes.
Lo mismo aplica para la transición “cambio”
 Si queremos mapear completamente el curso o
ruta del negocio alrededor del especialista,
podemos combinar las 2 Petri nets juntando las
transiciones etiquetadas iguales. La siguiente
figura muestra el resultado:
Modelando estados de los pacientes

Modelando el estado del especialista

Modelo de un especialista tratando pacientes


 Si podemos describir el marcado de tokens 𝒎 en el
modelo final de la figura anterior como 𝒎 =
𝟑. 𝒆𝒔𝒑𝒆𝒓𝒂, 𝒕𝒆𝒓𝒎𝒊𝒏𝒂𝒅𝒐, 𝒍𝒊𝒃𝒓𝒆 o también como 𝒎 =
𝟑. 𝒆𝒔𝒑𝒆𝒓𝒂, 𝟏. 𝒕𝒆𝒓𝒎𝒊𝒏𝒂𝒅𝒐, 𝟏. 𝒍𝒊𝒃𝒓𝒆
1. ¿Qué marcas son accesibles desde 𝒎 disparando
una transición una vez?
2. ¿Qué transiciones están habilitadas en estas
nuevas marcas?
Ejemplo2: manejo de solicitudes de indemnización
en una aerolínea
 El diagrama a continuación muestra un modelo de
proceso de negocio expresado en términos de
una red Petri o Petri net.
 En el modelo los clientes pueden solicitar
indemnizaciones por varias razones, e.g., un
retraso, o cancelación de vuelo, etc.
split = DIVERGENTE
join = CONVERGENTE
XOR-split XOR-join

AND-split XOR-split

AND-join

XOR-join

AND-split
split = DIVERGENTE
join = CONVERGENTE

XOR-join
XOR-split

XOR-split

AND-join
AND-split
AND-split

XOR-join
 La estructura de Petri net es estática, pero, go-
bernada por la regla de activación o de disparo,
los tokens pueden fluir a través de la red.
 Las dos figuras, mostradas a continuación
modelan el mismo proceso (Petri net) en términos
de un diagrama BPMN (Bizagi modeler y
AuraPortal-Helium modeler)
 Notación de Modelado
de Proceso de Negocio
(BPMN): se ha convertido
en uno de los mayores
lenguajes usados para
modelar procesos de
negocios.
 Las actividades atómicas
son llamadas tareas
 Una notable diferencia es que la lógica de ruta
no está asociada con las tareas sino con
compuertas separadas
 Tanto el modelo Bizagi y Aura Portal muestran
solo el control-flow o el control del flujo, i.e., el
ordenamiento de actividades para el proceso
descrito previamente. En consecuencia, los dos
modelos tienen una visión bastante limitada
sobre los procesos de negocio
3.b Minería de Procesos
 Minería de Procesos (Process Mining) es una
disciplina relativamente joven
que esta ubicado entre el Apren-
dizaje Automático (machine
learning) y Minería de Datos
(data mining) de un lado y el
Modelado de Procesos (process
modeling) del otro lado
 La idea principal de Process Mining es descubrir,
monitorear y mejorar procesos reales (i.e., no
asumir procesos) para extraer conocimiento
desde los event logs disponibles fácilmente en
los sistemas de información.
 Ejemplo: análisis de un event log (registro de
eventos) basado en los datos del manejo de
solicitudes de compensaciones en el escenario
de incidencias de los clientes en una aerolínea
 Usaremos los 2 fragmentos de event logs de las
tablas siguientes para aclarar algunos conceptos
fundamentales.
 Los algoritmos de Process Mining para el
proceso de Descubrimiento pueden transformar
la información mostrada en modelos de
procesos.
 Por ejemplo, el algoritmo-α descubre la red Petri
net descrito anteriormente cuando se le provee
el event log como dato de entrada. Ver
siguiente slide “Simplified event log”.
Caso ID Evento ID dd-mm-yyyy:hh.mm Actividad Recurso Costo
1 35654423 30-12-2010:11.02 registrar solicitud Pete 50
1 35654424 31-12-2010:10.06 examinar exhaustivamente Sue 400
1 35654425 05-01-2011:15.12 verificar ticket Mike 100
1 35654426 06-01-2011:11.18 decidir Sara 200
1 35654427 07-01-2011:14.24 rechazar solicitud Pete 200
2 35654483 30-12-2010:11.32 registrar solicitud Mike 50
2 35654485 30-12-2010:12.12 verificar ticket Mike 100
2 35654487 30-12-2010:14.16 examinar casualmente Sean 400
2 35654488 05-01-2011:11.22 decidir Sara 200
2 35654489 08-01-2011:12.05 pagar indemnización Ellen 200
3 35654521 30-12-2010:14.32 registrar solicitud Pete 50
3 35654522 30-12-2010:15.06 examinar casualmente Mike 400
3 35654524 30-12-2010:16.34 verificar ticket Ellen 100
3 35654525 06-01-2011:09.18 decidir Sara 200
3 35654526 06-01-2011:12.18 reiniciar solicitud Sara 200
3 35654527 06-01-2011:13.06 examinar exhaustivamente Sean 400
3 35654530 08-01-2011:11.43 verificar ticket Pete 100
3 35654531 09-01-2011:09.55 decidir Sara 200
3 35654533 15-01-2011:10.45 pagar indemnización Ellen 200
4 35654641 06-01-2011:15.02 registrar solicitud Pete 50
4 35654643 07-01-2011:12.06 verificar ticket Mike 100
4 35654644 08-01-2011:14.43 examinar exhaustivamente Sean 400
4 35654645 09-01-2011:12.02 decidir Sara 200
4 35654647 12-01-2011:15.44 rechazar solicitud Ellen 200
...

(a=registrar solicitud, b=examinar exhaustivamente, c=examinar casualmente, d=verificar


ticket , e=decidir, f=reiniciar solicitud, g=pagar indemnización, h=rechazar solicitud.
 La tabla anterior “Simplified event log”, muestra
el modelo resultante justamente con el
etiquetado compactado.
 Es fácil verificar que los 6 rastros (traces), de la
tabla anterior, son posibles en el modelo
resultante. Repitamos el rastro del primer caso --
<a, b, d, e, h>-- para mostrar que el rastro encaja
(i.e., conforme a) al modelo. ¡Compruébelo
usted mismo los 6 rastros!
 La Petri net antes mostrada también permite
rastros no presentes en los séis (6) antes
mencionados.
 Por ejemplo, los rastros: <a, d, c, e, f, b, d, e, g> y
<a, c, d, e, f, c, d, e, f, c, d, e, f, c, d, e, f, b, d, e, g>
también son posibles. Esto es un fenómeno
deseado ya que el objetivo no es solo
representar el conjunto particular de rastros de
ejemplo del event log (registro de eventos).
 Los algoritmos de Process Mining necesitan
generalizar el comportamiento contenido en el
registro o log para mostrar el modelo
representativo más probable que no sea
invalidado por el siguiente conjunto de
observaciones.
 Uno de los desafíos de Process Mining es
equilibrar entre el “sobreajuste” (el modelo es
demasiado específico y solo permite el
“comportamiento accidental” observado) y el
“subajuste” (el modelo es demasiado general y
permite un comportamiento no relacionado con
el comportamiento observado).
3.c. Obteniendo Datos
 Es imposible realizar Minería de Procesos o
Process Mining sin tener event logs o registros
de eventos apropiados.
 En esta parte, describiremos la información
que debería estar presente en tales event logs.
 Dependiendo de la técnica de la minería de
procesos usado, estos requerimientos pueden
variar.
 Una fuente de datos puede ser un simple
archivo plano, una hoja de cálculo MS Excel, un
registro de transacciones, o una tabla de una
base de datos.
 La realidad es que event data generalmente se
encuentran dispersos en diferentes fuentes de
datos y, a menudo, se necesitan diversos
esfuerzos para recopilar los datos relevantes.
 La minería de procesos o PM requiere
información de los eventos relevantes y su
ordenamiento. Los datos necesitan ser extraídos
y convertidos en event logs
 Los formatos típicos para almacenar event logs
son XES (eXtensible Event Stream) y MXML
(Mining eXtensible Markup Language).
 Event logs (registro de eventos) el siguiente slide
muestra un fragmento de event logs ya utilizado
en slides previos
 La tabla ilustra la información típica presente en
un event logs para realizar Minería de Procesos:
• Identificación del caso (case id)
• Identificación del evento (event id)
• Propiedades (properties): registro de tiempo,
actividad, recurso, costo,… etc.
 Ahora se muestra una
estructura tipo árbol de
un event log.
PROPIEDADES

Caso ID Evento ID dd-mm-yyyy:hh.mm Actividad Recurso Costo


35654423 30-12-2010:11.02 registrar solicitud Pete 50
35654424 31-12-2010:10.06 examinar exhaustivamente Sue 400
1 35654425 05-01-2011:15.12 verificar ticket Mike 100
35654426 06-01-2011:11.18 decidir Sara 200
35654427 07-01-2011:14.24 rechazar solicitud Pete 200
35654483 30-12-2010:11.32 registrar solicitud Mike 50
35654485 30-12-2010:12.12 verificar ticket Mike 100
2 35654487 30-12-2010:14.16 examinar casualmente Sean 400
35654488 05-01-2011:11.22 decidir Sara 200
35654489 08-01-2011:12.05 pagar indemnización Ellen 200
35654521 30-12-2010:14.32 registrar solicitud Pete 50
35654522 30-12-2010:15.06 examinar casualmente Mike 400
35654524 30-12-2010:16.34 verificar ticket Ellen 100
35654525 06-01-2011:09.18 decidir Sara 200
3 35654526 06-01-2011:12.18 reiniciar solicitud Sara 200
35654527 06-01-2011:13.06 examinar exhaustivamente Sean 400
35654530 08-01-2011:11.43 verificar ticket Pete 100
35654531 09-01-2011:09.55 decidir Sara 200
35654533 15-01-2011:10.45 pagar indemnización Ellen 200
35654641 06-01-2011:15.02 registrar solicitud Pete 50
35654643 07-01-2011:12.06 verificar ticket Mike 100
35654644 08-01-2011:14.43 examinar exhaustivamente Sean 400
4 35654645 09-01-2011:12.02 decidir Sara 200
35654647 12-01-2011:15.44 rechazar solicitud Ellen 200
... ... ... ... ... ...
 Usando la estructura tipo árbol listemos nuestro
entendimiento acerca de event logs.
• Un proceso consiste de casos.
• Un caso consiste de eventos tal que cada evento
se relaciona precisamente a un caso.
• Los eventos dentro de un caso están ordenados
• Los eventos pueden tener propiedades o
atributos.
• Ejemplos típicos de nombres de propiedades o
atributos son:
 registro de tiempo (timestamp)
 actividad
 recurso
 costo.
3.d. Descubriendo Procesos

 El descubrimiento de procesos es una de las


tareas más desafiantes de Process Mining o
minería de procesos.
 Basado en event logs o registro de eventos, se
construye un modelo de proceso que captura
el comportamiento visto en el log o registro.
 El descubrimiento. Esta técnica de
descubrimiento se realiza tomando un event
log y produciendo un modelo sin usar alguna
información a-priori. Un ejemplo es el
algoritmo-α. Este algoritmo toma un event log
y produce una red Petri net explicando el
comportamiento registrado en el Log.
 A continuación se formula el problema
general del problema Descubrimiento de
Procesos.
 Hagamos que L sea un event log como lo
especificado por el standard XES. Un algoritmo
de Descubrimiento de Procesos es una
función que mapea L dentro de un modelo de
proceso tal que el modelo sea representativo
para el comportamiento visto en el event log.
 Para hacer las cosas más concretas, definamos
que el objetivo sea un modelo de Petri net. Aún
más, usemos un event log simple como entrada.
 Definición de event log simple. Hagamos que A
sea un conjunto de nombres de actividades. Un
rastro simple σ es una secuencia de actividades,
i.e., σ ϵ A *. Un event log simple L es un multi-
conjunto de rastros sobre A, i.e., L ϵ B(A *).
 Un event log simple es solo un conjunto de
rastros sobre el conjuntoA .
 Por ejemplo [‹a,b,c,d›3, ‹a,c,b,d ›2, ‹a,e,d ›] define
un log conteniendo 6 casos.
 En total hay 3x4 + 2x4 + 1x3 = 23 eventos.
Todos los casos empiezan con a y terminan con
d.
 En un event log simple no existen atributos, e.g.,
se extraen la información de marcas de tiempo o
timestamps y de recursos.
 Hagamos ahora:
L1 = [‹a,b,c,d›3, ‹a,c,b,d›2, ‹a,e,d›]
 Entonces, L1 es un log simple que describe la
historia de 6 casos.
 La meta ahora es descubrir una red Petri que
pueda “reproducir” el event log L1
 Basado en estas elecciones reformulemos el
problema de descubrimiento de proceso
haciendolo más concreto.
 Definición del problema específico para el
descubrimiento de procesos:
Un algoritmo de descubrimiento de procesos es
una función γ que mapea un log L ϵ B(A *) en
una red Petri marcada por tokens γ(L) = (N,M).
Idealmente N es una red firme WF-net o “red de
flujo de trabajo” y todos los rastros en L
corresponden a una secuencia de disparos de
(N,M) donde M ϵ B(P) es un conjunto múltiple
marcas de tokens sobre los lugares o Places que
denota el marcado de la red.
3.e. Algoritmo-α
 El algoritmo-α es una técnica de descubrimiento
de procesos que toma un conjunto de datos
event log y deriva un proceso Petri net a partir
de aquel event log.
 Para entender el algoritmo-α necesitamos
considerar tres regla básicas de como derivar
modelos a partir de datos de eventos
 Reglas para derivar modelos a partir de Event
Data (Datos de Eventos):
1. Dependencia Temporal: b sigue a a pero
nunca sigue a b. b depende de a, a
siempre precede a b.
b y a son sólo eventos arbitrarios. Podría
ser “log in: conectarse” y “ordenar” en un
proceso actual de negocio.
Esta relación es escrita como: a  b
Ahora tomemos un ejemplo
log : [‹a,b,c,d›, ‹e,d,a,b›, ‹a,e›]
Aquí vemos que a y b siempre están en el
mismo orden. b siempre sigue a a :
log : [‹a,b,c,d›, ‹e,d,a,b›, ‹a,e›]
Acá tenemos una dependencia temporal y
este es la construcción Petri net.

a b
2. Independencia Temporal: existe un rastro
donde a sigue a b pero también un rastro
donde b sigue a esto significa que a y b
puedan ser ejecutados en paralelo.
La relación es escrita como: a‖b
Tomemos el ejemplo,
log : [‹a,b,c,d›, ‹e,d,b,a›, ‹a,e›]
Vemos una vez el orden a b y una vez el
orden b a pudiendo ejecutarlo en paralelo
bajo una independencia temporal.
log : [‹a,b,c,d›, ‹e,d,b,a›, ‹a,e›]

a
… …

b
3. Independencia: no existe un rastro donde a
sigue a b o b sigue a. a y b son
independientes.
Escribimos esta relación como: a#b
Tomemos el ejemplo,
log : [‹a,d,c,b›, ‹a,c,d,b›, ‹a,e›]
Aquí vemos que a y b no están entre si
siguiendose directamente.
log : [‹a,d,c,b›, ‹a,c,d,b›, ‹a,e›]
Al no estar a y b siguiéndose entre si
entonces son denominados independientes
y por lo tanto no se construye ningún block
Petri net.
 Ahora, demos una mirada al algoritmo-α.
 El Algoritmo-α:
 Interpretemos el algoritmo-α y observemos que
en realidad paso a paso es bastante simple:

1. Definir todos los eventos en el event log


2. Definir todos los posibles eventos start o de
inicio.
3. Definir todos los eventos end o de fin.
4. Calcular posibles conjuntos A y B (todos los
eventos dentro de A y dentro de B deben ser
independientes “#” entre si). Todos los eventos
en A deben estar causalmente relacionados
con los eventos en B.
5. Dejar de lado los conjuntos no máximos
(veremos lo que significa luego)
6. Crear lugares (places) para todos los
Conjuntos derivados y agregar estados de
start o inicio y de end o finalización.
7. Dibujar las conexiones.
8. Regresar a la red Petri net.
 Ahora, vayamos a través de estos pasos con un
ejemplo con este event log L1 :
L1 = [‹a,b,c,d› ,
3 ‹a,c,b,d› , ‹a,e,d›]
2

 Tenemos tres instancias a,b,c,d; dos instancias


a,c,b,d; una instancia a,e,d.
1. Definir todos los eventos ‹a,b,c,d,e›
2. Definir todos los eventos de start o inicio: ‹a›
3. Definir todos los eventos de end o finalización:
‹d›
4. Calcular posibles conjuntos A y B (todos los
eventos dentro de A y dentro de B deben ser
independientes “#” entre si).
L1 = [‹a,b,c,d›3, ‹a,c,b,d›2, ‹a,e,d›]

Asimismo, todos los eventos en A deben estar


causalmente relacionados con los eventos en
B. Ahora nos dejaremos ayudar por la matriz
de huellas: B
a b c d e
a #   # 
b  # ‖  #
A c  ‖ #  #
d #   # 
e  # #  #
Esta matriz describe todas las relaciones entre
los eventos de acuerdo a las tres reglas que
definimos.
Ahora con esta matriz podemos definir el
conjunto de combinaciones A y B.
Posibles conjuntos: ({a}, {b}),({a}, {c}),({a}, {e}),

({b}, {d}), ({c}, {d}), ({e}, {d}),


({a}, {b, e}) están causalmente relacionados
“”; asimismo, a es independiente “#” consigo
mismo y b y e entre ellos son independientes
“#” tambien. El mismo análisis se continúa…
({a}, {c, e}), ({b, e}, {d}), ({c, e}, {d}).
5. Abandonar a los conjuntos no máximos.
Queremos deshacernos de los conjuntos
innecesarios dejando de lado a los duplicados
Ejemplo:
Posibles conjuntos: ({a}, {b}), ({a}, {c}), ({a},
{e}), ({b}, {d}), ({c}, {d}), ({e}, {d}), ({a}, {b, e}),
({a}, {c, e}), ({b, e}, {d}), ({c, e}, {d}).
6. Crear lugares o places Petri net para todos los
conjuntos derivados (p1, p2, p3, p4), crear las
transiciones correspondientes de input y de
output y agregar el estado final start y end.
Conjuntos a ser mapeados: ({a}, {b, e}), ({a},
{c, e}), ({b, e}, {d}), ({c, e}, {d}).
7. Dibujar las conexiones.
p1 p2 p3 p4
({a}, {b, e}), ({a}, {c, e}), ({b, e}, {d}), ({c, e}, {d})

L1 = [‹a,b,c,d› ,
3 ‹a,c,b,d› , ‹a,e,d›]
2
Resumen
 Existen muchas maneras para modelar un proceso;
dentro de un proyecto dado posiblemente sea
necesario usar algunos de ellos.
 Conceptos comunes para todos los procesos:
• Transformación de inputs en outputs
• Descomposición
• Dependencias entre actividades
 Los principales modelos de procesos revisados
incluye:
• Minería de procesos
• Diagramas de Petri net
• BPMN

También podría gustarte