Está en la página 1de 67

Análisis de flujo, teorías

de colas y simulación

Gestión de Procesos y Servicios


Análisis de flujo
Análisis de flujo es una familia de técnicas que
nos permiten estimar el rendimiento total de un
proceso dado algún conocimiento sobre el
rendimiento de sus actividades
Tiempo
Coste
Ratio errores

¿Cuánto tarda en media el proceso completo?

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


En un proceso secuencial, el tiempo medio de
duración es igual a la suma de los tiempos
medios de duración de sus actividades
¿Y ahora?

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


¿Y ahora?

50%

50%

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


¿Y ahora?

90%

10%

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


XOR gateways

T1
p1

T2
p2

pn ...

TN

n
CT = p1T1+p2T2+…+pnTn = åpT i i
i=1

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


¿Y ahora?

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


AND gateways

T
1

T
2

...

T
N

CTparallel = Max{T1, T2,…, TM}

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


¿Cuál es la duración media del proceso?

Actividad Duración media


Check completeness 1 día
Check credit history 1 día
Check income sources 3 días
Assess application 3 días
Make credit offer 1 día
Notify rejection 2 días
Hay un 60% de casos en los que se concede el crédito
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Cuál es la duración media de este proceso?

• Todas las actividades tardan 1 hora de media en hacerse


• En el 40% de los casos los pedidos tienen sólo productos
de Amsterdam
• En el 40% de los casos tienen sólo productos de
Hamburgo
• En el 20% de los casos tienen de ambos almacenes
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Cuál sería la regla general para los OR
gateways?
¿Cuál es la duración media del proceso?

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


Ciclos

CT = T/(1-r)

Serie geométrica
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Cuál es la duración media del proceso?

Actividad Duración media


En un 60% de los casos se concede
Check completeness 1 día el crédito
Check credit history 1 día
Check income sources 3 días
En un 20% de los casos la solicitud
Assess application 3 días está incompleta
Make credit offer 1 día
Notify rejection 2 días

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


El ratio de llegada (arrival rate, λ) de un
proceso es el número medio de nuevas
instancias del proceso que se crean por unidad
de tiempo
El Work-In-Process (WIP) es el número medio
de instancias de un proceso que están activas
(no han terminado) en un instante de tiempo.
Ley de Little

WIP = λ x CT

Se cumple para cualquier proceso estable.


Es decir, un proceso en el que su número de instancias Tiempo medio de duración del
activas no crezca de forma incontrolada proceso (Cycle Time)
Calcular los tiempos medios de duración del proceso

• Calcula cuál es el tiempo medio de duración del proceso


de las solicitudes de crédito en base a los siguientes datos.
• El año tiene 250 días laborables.
• El último año se procesaron 2500 solicitudes de crédito
• Hemos preguntado cada dos semanas cuántas solicitudes
había abiertas en ese momento y la media ha sido de 200
Calcular los tiempos medios de duración del proceso

• Un restaurante recibe de media 1200 clientes al día (entre


10:00 y 22:00). En horas punta (De 13:00 a 16:00 y de
20:00 a 23:00), el restaurante recibe unos 900 clientes en
total y, de media, hay 90 clientes a la vez en el restaurante.
En horas no punta, el restaurante recibe 300 clientes en
total y, de media hay 30 clientes simultáneos en el
restaurante.
– ¿Cuál es el tiempo medio que un cliente pasa en un restaurante
en horas punta? ¿Y en horas no punta?
– La capacidad máxima del restaurante es de 110 clientes y, a
veces se alcanza en horas punta. El encargado del restaurante
espera además que aumente ligeramente el número de clientes
en los próximos meses. ¿Qué se puede hacer sin aumentar el
número de sitios disponibles?
Otras aplicaciones del análisis de flujo

• Calcular el coste medio por instancia de proceso


• Calcular ratios de error por proceso
• Estimar capacidades

Cuidado que las fórmulas no son exactamente


iguales en todos los casos
Calcula el coste medio por proceso

Actividad Clerk Credit officer Duración En el 20% de los casos la solicitud


Check completeness R 2 horas está incompleta.
En el 60% de los casos se concede
Check credit history R 30 minutos el crédito.
Check income sources R 3 horas El coste del Clerk es de 25€/hora y el
Assess application R 2 horas del Credit officer es de 50€/hora.
Make credit offer R 2 horas El banco carga 1€ por consultar el
Notify rejection R 30 minutos historial de crédito de una persona

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


Limitación 1: No todos los procesos son estructurados

• La solución es usar otras ecuaciones más complejas que si


se pueden utilizar para procesos no estructurados

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


Limitación 2: Requiren estimar la duración media de
todas las actividades del proceso

• La solución es conseguir la información por medio de:


– Entrevistas u observación
– Usar logs de los sistemas de información usados en el proceso
Limitación 3: No tienen en cuenta que los procesos se
comportan de forma distinta en función de la carga

• Asumen una carga fija y una capacidad de recursos fija


• No consideran los tiempos de espera debidos a conflictos
de recursos (resource contention), que ocurre cuando hay
más trabajo por hacer que recursos disponibles para hacer
el trabajo.
• La única solución es usar otra técnica como análisis de
colas o simulación.
Análisis de flujo
Teoría de colas
La teoría de colas es una colección de técnicas
matemáticas para analizar sistemas que tiene
contención de recursos.
Conceptos de teoría de colas

• Un sistema de colas consiste en una o múltiples colas y


un servicio que es provisto por uno o más servidores. Los
elementos en la cola son trabajos o clientes, según el
contexto
Ejemplo 1: Sistema multi-cola (Supermercado)

Clientes

Servidores
Cajero 1

Colas

Cajero 2

Cajero 3
Ejemplo 2: Sistema cola única (Banco)

Clientes

Servidores
Cajero 1

Cajero 2

Cajero 3
Cola
Vamos a estudiar dos modelos para sistemas de
cola única
Ratio de llegada

• Ratio de llegada: λ
– Ej: Los clientes llegan al banco con un ratio medio de 20 por hora
• Tiempo entre llegada: 1/λ
– Ej: El tiempo medio entre la llegada de dos clientes es de 5
minutos (1/20 horas).

Cuidado: Los tiempos son medias, no


representan exactamente la realidad
Proceso de Poisson: Distribución exponencial negativa

Slide taken from http://fundamentals-of-bpm.org/lectures/


Proceso de Poisson

• Describen una amplia categoría de procesos de llegada y


es muy común para modelar el proceso de llegada de
clientes en procesos de negocio.
• Siempre hay que asegurarse que los casos llegan
siguiendo esa distribución. Para ello se puede medir
tiempos entre llegadas durante un período de tiempo y
usar un paquete estadístico como R o EasyFit.
Tiempo de procesamiento de una actividad

• Igual que en el caso anterior, el tiempo de procesamiento


de una actividad puede variar mucho de un caso a otro.
• Actividades que requiren una diagnosis, una verificación no
trivial o una toma de decisiones no trivial, muy a menudo
siguen también una distribución exponencial negativa.
• Igual que antes, es necesario comprobar que esta
hipótesis es cierta.
Modelos de colas M/M/1 y M/M/c

• Cola única
• Tiempo entre llegada siguen una distribución exponencial
(M)
• Tiempo de procesamiento siguen una distribución
exponencial (M)
• Los clientes se atienden en orden de llegada
• Los clientes no dejan la cola
• Hay 1 (M/M/1) o c (M/M/c) servidores
En modelos de colas M/M/1 y M/M/c, dado:

• λ: El ratio medio de llegada de clientes por unidad de


tiempo
• μ: El número medio de clientes que pueden ser atendidos
por unidad de tiempo (el tiempo medio de procesamiento
de cliente es por tanto, 1/μ).
• En el caso de M/M/c, el número de servidores c

waiting service
arrivals

l
c m

© Wil van der Aalst


Podemos calcular:
• Ratio de ocupación: r
• Wq = Tiempo medio de un cliente en la cola
• W = Tiempo medio de un cliente en el sistema (tiempo medio
del proceso)
• Lq = Número medio de clientes en la cola
• L = Número medio de clientes en el sistema (Work-in-Progress)

l
c m
Wq,Lq

W,L

© Wil van der Aalst


Cola M/M/1

l
1 m

Capacity Demand λ
ρ 
Available Capacity μ

Lq= 2/(1- ) = L-


Wq=Lq/l
W=Wq + 1/m

© Laguna & Marklund


L=lW
Cola M/M/c

• Ahora hay c servidores en paralelo, por lo que la capacidad


esperada por unidad de tiempo es c*

Capacity Demand l
 
Available Capacity c * m

• Las otras fórmulas son iguales que para M/M/1 salvo Lq,
que es bastante complejo de calcular:
 (l / m ) c 
Lq   ( n  c) Pn  ...  P
2 0
n c c!(1  )
1
 c1 (l / m) n (l / m)c 1 
P0      
 n ! c ! 1  ( l /(c m ) 
 n  0 
Herramientas

• Como el cálculo en ocasiones puede ser bastante


complejo, se suelen usar herramientas como:
– http://apps.business.ualberta.ca/aingolfsson/qtp/
– http://www.stat.auckland.ac.nz/~stats255/qsim/qsim.html
Ejemplo: Urgencias en un hospital

• Los pacientes llegan en ambulancia o por su propio pie


• Hay siempre un único médico atendiendo las urgencias
• De media llegan dos pacientes por hora.
• Un médico atiende de media a 3 pacientes por hora.
• ¿Deberíamos contratar un segundo médico?
Ejemplo: Urgencias en un hospital

• Si:
– Los pacientes llegan siguiendo una distribución exponencial ( =
2)
– El tiempo de atención a los pacientes sigue una distribución
exponencial ( = 3)
• Entonces:
– Podemos modelar el sistema como un M/M/c, donde c es el
número de médicos
Ejemplo: Urgencias en un hospital

• Interpretation
– Estar en la cola = estar en la sala de espera
– Estar en el sistema = estar en urgencias (esperando o en el
médico)

Characteristic One doctor (c=1) Two Doctors (c=2)


 2/3 1/3
Lq 4/3 patients 1/12 patients
L 2 patients 3/4 patients
Wq 2/3 h = 40 minutes 1/24 h = 2.5 minutes
W 1h 3/8 h = 22.5 minutes

• Is it warranted to hire a second doctor ?

© Laguna & Marklund


Ejemplo

• Una compañía diseña hardaware electrónico personalizado


para varios clientes. La compañía recibe pedidos para
diseñar un nuevo circuito cada 20 días laborables de
media. Un equipo de ingenieros tarda de media 10 días
laborables en diseñar el hardware. Consideramos que sólo
hay un equipo de ingenieros.
– ¿Cuál es el ratio de ocupación?
– ¿Cuántos pedidos hay en la cola de media?
– ¿Cuánto tarda en media un pedido desde que se realiza hasta
que se finaliza?
Limitación 1

• Problema: Las técnicas que hemos visto sólo sirven para


distribuciones exponenciales negativas. Si los parámetros
siguen otras distribuciones, las fórmulas que hemos visto
no sirven.
• Solución: La teoría de colas ha desarrollado una gran
cantidad de modelos de colas que soportan otro tipo de
distribuciones para los parámetros.
Limitación 2

• Problema: La teoría de colas sólo tratan una actividad a la


vez.
• Solución: Para procesos con varias actividades, eventos y
recursos se pueden usar otras técnicas como redes de
colas.
• Problema: Las redes de colas pueden volverse muy
complejas sobre todo cuando hay paralelismo entre
actividades.
• Solución: Usar simulación
Análisis de flujo
Teoría de colas
Simulación
Un simulador ejecuta un gran número de
instancias hipotéticas de un proceso y registra
los pasos en cada ejecución.
Anatomía de un simulador

Modelo del
proceso
(BPMN)
Log de la
simulación

Simulador (y cálculos
derivados
de éste)
Parámetros
de la
simulación
Entrada del simulador

• El modelo del proceso incluyendo:


– Eventos, actividades, gateways
– Definición de recursos (como lanes, por ejemplo) y su coste
• Asignación de recursos a actividades
• Coste (por actividad y/o por par actividad-recurso)
• Probabilidades de tomar un camino u otro en XOR
gateways
• Tiempos de procesado (por actividad o por par actividad-
recurso)
• Ratio de llegada de instancias del proceso
• Comienzo y finalización de la simulación
Slide taken from http://fundamentals-of-bpm.org/lectures/
Distribuciones de tiempos de procesado

• Fija: El tiempo de procesado de la tarea es el mismo para


todas las ejecuciones de la misma. No son muy frecuentes,
sobre todo cuando intervienen personas en la tarea.
• Exponencial: Aplicable cuando el tiempo de procesado
suele estar en torno a un valor, pero a veces lleva mucho
más tiempo. Se aplica a tareas que requiren una diagnosis,
una verificación no trivial o una toma de decisiones no
trivial.
• Normal: Aplicable cuando el tiempo de procesado de una
tarea está alrededor de una media y su desviación sobre
este valor es simétrica.
Distribución exponencial negativa

Slide taken from http://fundamentals-of-bpm.org/lectures/


Distribución normal

Slide taken from http://fundamentals-of-bpm.org/lectures/


Anatomía de un simulador

Modelo del
proceso
(BPMN)
Log de la
simulación

Simulador (y cálculos
derivados
de éste)
Parámetros
de la
simulación
Logs de la simulación

• Para cada actividad:


– El momento en que estaba lista para ser ejecutada
– El momento en que empezó a ejecutarse
– El momento en que se terminó
– Qué recurso ha realizado la actividad
Ejemplo de log
Cálculos derivados del log

© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013


Pasos para evaluar un proceso con simulación

1. Modelar el proceso
2. Extender el modelo con información de simulación
modelo de simulación
– Basado en asunciones o mejor basado en datos (logs)
3. Ejecutar la simulación
4. Analizar las salidas de la simulación
– Duración del proceso y histogramas
– Tiempos de espera (por actividad)
– Utilización de recursos (por recurso)
5. Repetir para escenarios alternativos

Slide taken from http://fundamentals-of-bpm.org/lectures/


Herramientas para simulación

• BIMP: http://bimp.cs.ut.ee/
– Online y acepta BPMN 2.0 estándar como entrada.
• ITP Commerce Process Modeler for Visio
– Models presented earlier are made with ITP
Commerce
• Progress Savvion Process Modeler
• IBM Websphere Business Modeler
• Oracle BPA
• ARIS
• ProSim
Warning: Use with caution

• La fiabilidad de la simulación depende en gran medida de


la precisión de los datos usados como entrada.
• Lo ideal es obtener los datos de observaciones reales.
Esto se puede hacer con procesos as-is, pero no siempre
con procesos to-be.
• Se recomienda comprobar las salidas de la simulación con
un experto en el proceso.
Análisis de flujo
Teoría de colas
Simulación
Resumen
Análisis de flujo
Teoría de colas
Simulación
Fundamentals of Business Process Management

• Capítulo 7
• Accesible en: http://0-
link.springer.com.fama.us.es/b
ook/10.1007/978-3-642-33143-
5/page/1
• Más información en:
http://fundamentals-of-bpm.org/

También podría gustarte