Modelado básico con BPMN

Download Report

Transcript Modelado básico con BPMN

Modelado básico con
BPMN
Gestión de Procesos y Servicios
Introducción
Un modelo se caracteriza por
Mapeado
Abstracción
Propósito
¿Para qué modelamos?
Modelamos para entender
Tipos de propósito
Diseño organizacional
Diseño de sistemas
Introducción
BPMN Básico
BPMN
• BPMN viene de Business Process Modeling
Notation (Notación para el Modelado de Procesos de
Negocio).
• Es un estándar de representación gráfica de procesos de
negocio
• Pretende ser un lenguaje accesible tanto para
desarrolladores como para clientes y directivos.
http://www.bpmn.org/
Tres niveles de BPMN
• Nivel 1 (Modelado descriptivo): Usa un subconjunto
reducido de elementos de BPMN y su objetivo es facilitar la
definición de un proceso.
• Nivel 2 (Modelado analítico): Usa toda la expresividad de
BPMN para describir el proceso de negocio de forma
precisa, incluyendo manejo de excepciones.
• Nivel 3 (Modelado ejecutable): Orientado a la
implementación del proceso de negocio.
10
Un proceso sencillo
Actividades
Flujo de
secuencia
Eventos
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Tokens
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Convenciones de nombres
• Actividades: VERBO + NOMBRE (Primera letra mayúsculas)
– Aprobar orden
• Eventos: NOMBRE + PARTICIPIO (Primera letra
mayúsculas)
– Factura emitida
• Procesos: NOMBRE + ADJETIVO (Minúsculas)
– Gestión de pagos
• Evitar nombres muy largos (< 5 palabras)
• Evitar verbos genéricos (ej. Hacer)
Data-based XOR
AND
Event-based XOR
Complex
OR
Fig 4.84. Gateway types in the BPMN, Object Management Group (2006)
M. Weske: Business Process Management,
© Springer-Verlag Berlin Heidelberg 2007
Gateways
• Cuando se recibe la factura de un cliente, tiene que ser
comprobada. La comprobación puede resultar en tres
casos: 1) No hay errores, en cuyo caso la factura es
contabilizada; 2) hay errores pero pueden ser corregidos,
en cuyo caso la factura es reenviada al cliente, y 3) hay
errores pero no pueden ser corregidos, en cuyo caso la
factura se bloquea. Al terminar una de estas tres
atividades, la factura es almacenada y el proceso termina.
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Gateways
• Nodo exclusivo: el flujo continúa por la primera alternativa
que satisface la condición. Si ninguna satisface, entonces
continúa por la alternativa que tiene la marca “/”
Condición 1
Condición 2
Decisiones exclusivas
XOR join
XOR split
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
• Al recibir la tarjeta de embarque, los pasajeros van al
control de seguridad. Aquí tienen que pasar el control
personal y el control del equipaje. Una vez realizado,
pueden pasar a la puerta de embarque.
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Gateways
• Ejecución en paralelo (bifurcación): se usa cuando
dos o más tareas se empiezan a llevar a cabo
concurrentemente
Gateways
• Ejecución en paralelo (unión): se usa para postsincronizar
dos o más tareas que se han llevado a cabo
concurrentemente. Espera un token de todas las ramas.
Ejecución en paralelo
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Ejecución en paralelo
Distintos
resultados
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Distintos eventos de inicio
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
• Una compañía tiene dos almacenes que almacenan
distintos productos, uno está en Amsterdam y otro en
Hamburgo. Cuando se recibe un pedido, se distribuye a
estos almacenes: si alguno de los productos están en
Amsterdam, un subpedido se envía allí; del mismo modo,
si algún producto está en Hamburgo, un subpedido se
envía allí. Después el pedido se registra y el proceso
termina.
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Gateways
• Nodo inclusivo: el flujo continúa por todas las alternativas
que satisfacen la condición.
Condición 1
Condición 2
Decisión inclusiva
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Deadlocks
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Continuamos con el proceso de gestión de pedidos…
• Si el producto solicitado no está en stock, hace falta
fabricarlo antes de que la gestión del pedido pueda
continuar. Para fabricar un producto, es necesario pedir los
materiales para fabricarlo. Dependiendo del producto, los
materiales se pueden pedir al Proveedor 1, al Proveedor 2
o a ambos. Una vez que los materiales están disponibles,
el producto se puede fabricar y el pedido se confirma. Por
otro lado, si el producto está en stock, se obtiene del
almacen antes de confirmar el pedido.
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
• En el ministerio de hacienda, las peticiones recibidas se
registran en el sistema. Luego se investigan para preparar
una respuesta del ministerio. La finalización de la
respuesta incluye la preparación de la misma por un
miembro del gabinete y su revisión por parte del
responsible del mismo. Si éste no aprueba la respuesta,
tiene que ser preparada de nuevo por el miembro del
gabinete. El proceso termina cuando la respuesta es
aprobada.
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Bucles
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Introducción
BPMN Básico
La perspectiva de datos
Data objects
• Representan datos manejados por las actividades. El dato
puede tener un estado asociado.
33
Objetos de datos
Dato con estado
Almacenes de
datos
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Puedo sustituir el flujo de secuencia por flujo
de datos?
¿Afectan los objetos de datos a los tokens?
¿Tenemos que modelar siempre los objetos de
datos?
Introducción
BPMN Básico
La perspectiva de datos
La perspectiva de organizacional*
*En esta lección veremos una introducción a la perspectiva organizacional que profundizaremos
en lecciones posteriores
Recursos
Participante del proceso
Sistema software
Equipamiento
Recursos
• Pasivos
– Ej. fotocopiadora
• Activos
– Ej. Persona que fotocopia
Pools y lanes
Connecting Objects
Place
– Pools: Representan
organizaciones
/ procesos
Message Flow
Group
Order
– Lanes: Representan roles o departamentos en una organización
Gateways
Association
(nunca personas concretas)
Annotation
Activities
Lane
Pool
Swimlanes
Fig 4.78. Business Process Modeling Notation: categories of elements
M. Weske: Business Process Management,
© Springer-Verlag Berlin Heidelberg 2007
Artefacts
• Los pools y lanes no tienen un significado concreto, pero lo
Sequence Flow
Data Object
Events
habitual es:
Flow Objects
W
a
r
e
h
o
u
s
e
&
D
is
tr
ib
u
tio
n
-E
R
P
S
y
s
te
m
W
a
re
h
o
u
s
e
&
D
is
trib
u
tio
n
E
R
P
S
y
s
te
m
P
u
rc
h
a
s
e
o
rd
e
r
P
u
rc
h
a
s
e
o
rd
e
r
re
c
e
iv
e
d
C
h
e
c
k
s
to
c
k
a
v
a
ila
b
ility
C
h
e
c
k
ra
w
m
a
te
ria
ls
p
ro
d
u
c
t
a
v
a
ila
b
ility
n
o
t
in
s
to
c
k
p
ro
d
u
c
t
in
s
to
c
k
S
u
p
p
lie
rs
c
a
ta
lo
g
W
a
r
e
h
o
u
s
e
&
D
is
tr
ib
u
tio
n
W
a
re
h
o
u
s
e
D
B
R
e
q
u
e
s
t
ra
w
m
a
te
ria
ls
fro
m
S
u
p
p
lie
r1
O
b
ta
in
ra
w
m
a
te
ria
ls
fro
m
S
u
p
p
lie
r1
R
a
w
m
a
te
ria
ls
S
e
lle
r
ra
w
m
a
te
ria
ls
p
ro
v
id
e
d
b
y
S
u
p
p
lie
r1
G
e
t
s
h
ip
p
in
g
a
d
d
re
s
s
M
a
n
u
fa
c
tu
re
p
ro
d
u
c
t
R
e
trie
v
e
p
ro
d
u
c
t
fro
m
w
a
re
h
o
u
s
e
ra
w
m
a
te
ria
ls
p
ro
v
id
e
d
b
y
S
u
p
p
lie
r2
P
ro
d
u
c
ts
w
a
re
h
o
u
s
e
R
e
q
u
e
s
t
ra
w
m
a
te
ria
ls
fro
m
S
u
p
p
lie
r2
O
b
ta
in
ra
w
m
a
te
ria
ls
fro
m
S
u
p
p
lie
r2
R
a
w
m
a
te
ria
ls
P
ro
d
u
c
t
S
a
le
s
S
a
le
s
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
C
o
n
firm
o
rd
e
r
P
u
rc
h
a
s
e
o
rd
e
r
S
h
ip
p
in
g
a
d
d
re
s
s
P
ro
d
u
c
t
[p
a
c
k
a
g
e
d
]
S
h
ip
p
ro
d
u
c
t
g
s
In
v
o
ic
e
O
rd
e
rs
D
B
E
m
it
in
v
o
ic
e
R
e
c
e
iv
e
p
a
y
m
e
n
t
A
rc
h
iv
e
o
rd
e
r
O
rd
e
r
fu
lfille
d
P
u
rc
h
a
s
e
o
rd
e
r
[c
o
n
firm
e
d
]
P
a
y
m
e
n
t
P
u
rc
h
a
s
e
o
rd
e
r
[p
a
id
]
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Facturación
Vista privada: Típico flujo de trabajo que muestra los
procesos internos de una organización específica
Recibir
Pago
Factura
Servicio al Cliente
Cerrar
Pedido
Recibir
Pedido
Producción
Gestión de Pedidos
Enviar
Factura
Pedido
Satisfacer
Pedido
Entregar
Pedido
Paciente
Vista abstracta: Representa la interacción entre un
proceso de negocio privado y otro que se muestra como
Proceso de
una caja negra
caja negra
Enfermera
Recibir la
Petición de
Consulta
Datos de la
Cita
Flujo de
mensajes
Síntomas
Receta
Atender al
Paciente
Recetar
Medicinas
Enviar la Cita
Médico
Consulta del Médico
Petición de
Consulta
Proceso de
caja blanca
Enfermera
Médico
Consulta del Médico
Paciente
Colaboración: Representa la interacción entre dos o más
procesos de negocio privados
Llamar al
Médico
Recibir la Cita
Petición de
Consulta
Datos de la
Cita
Recibir la
Petición de
Consulta
Ir a la
Consulta
Recoger las
Recetas
Síntomas
Receta
Atender al
Paciente
Recetar
Medicinas
Enviar la Cita
C
u
s
to
m
e
r
P
u
r
c
h
a
s
e
o
rd
e
r
[c
o
n
fir
m
e
d
]
P
u
rc
h
a
s
e
o
rd
e
r
P
ro
d
u
c
t
S
h
ip
p
in
g
a
c
k
a
g
e
d
]
a
d
d
r
e
s
s [p
In
v
o
ic
e
P
a
y
m
e
n
t
W
a
r
e
h
o
u
s
e
&
D
is
tr
ib
u
tio
n
-E
R
P
S
y
s
te
m
P
u
r
c
h
a
s
e
o
rd
e
r
r
e
c
e
iv
e
d
C
h
e
c
k
s
to
c
k
a
v
a
ila
b
ility
p
ro
d
u
c
t
in
s
to
c
k
C
h
e
c
k
r
a
w
m
a
te
r
ia
ls
a
v
a
ila
b
ility
S
u
p
p
lie
rs
c
a
ta
lo
g
p
ro
d
u
c
t
n
o
t
in
s
to
c
k
W
a
r
e
h
o
u
s
e
&
D
is
tr
ib
u
tio
n
R
a
w
m
a
te
ria
ls
W
a
r
e
h
o
u
s
e
D
B
R
e
q
u
e
s
t
r
a
w
m
a
te
r
ia
ls
fro
m
S
u
p
p
lie
r1
S
e
lle
r
W
a
re
h
o
u
s
e
&
D
is
tr
ib
u
tio
n
E
R
P
S
y
s
te
m
P
u
r
c
h
a
s
e
o
rd
e
r
O
b
ta
in
r
a
w
m
a
te
r
ia
ls
fr
o
m
S
u
p
p
lie
r1
S
h
ip
p
in
g
a
d
d
re
s
s
r
a
w
m
a
te
r
ia
ls
p
ro
v
id
e
d
b
y
S
u
p
p
lie
r1
G
e
t
s
h
ip
p
in
g
a
d
d
r
e
s
s
M
a
n
u
fa
c
tu
r
e
p
ro
d
u
c
t
R
e
tr
ie
v
e
p
ro
d
u
c
t
fro
m
w
a
r
e
h
o
u
s
e
S
h
ip
p
ro
d
u
c
t
r
a
w
m
a
te
r
ia
ls
p
ro
v
id
e
d
b
y
S
u
p
p
lie
r2
R
e
q
u
e
s
t
r
a
w
m
a
te
r
ia
ls
fro
m
S
u
p
p
lie
r2
P
ro
d
u
c
ts
w
a
r
e
h
o
u
s
e
P
ro
d
u
c
t
O
b
ta
in
r
a
w
m
a
te
r
ia
ls
fro
m
S
u
p
p
lie
r2
O
r
d
e
r
s
D
B
S
a
le
s
S
a
le
s
E
m
it
in
v
o
ic
e
C
o
n
firm
o
rd
e
r
R
e
c
e
iv
e
P
a
y
m
e
n
t
A
rc
h
iv
e
o
rd
e
r
O
r
d
e
r
fu
lfille
d
P
u
rc
h
a
s
e
o
rd
e
r
R
a
w
m
a
te
ria
ls
r
e
q
u
e
s
t
R
a
w
m
a
te
ria
ls
S
u
p
p
lie
r1
R
a
w
m
a
te
r
ia
ls
r
e
q
u
e
s
t
R
a
w
m
a
te
ria
ls
S
u
p
p
lie
r2
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
P
u
r
c
h
a
s
e
o
rd
e
r
[c
o
n
fir
m
e
d
]
P
u
rc
h
a
s
e
o
rd
e
r
[p
a
id
]
Introducción
BPMN Básico
La perspectiva de datos
La perspectiva organizacional*
Descomposición de procesos
Descomposición de procesos
Mejorar la legibilidad y entendibilidad
Actividades
• Tareas
• Subprocesos
Nombre
Nombre
+
Actividades
• Subproceso: actividad compuesta que se
puede desglosar en subactividades con un
nivel más fino de detalle. Pueden aparecer:
– En versión colapsada (signo “+”)
Nombre
+
– Expandida
Nombre
A
c
q
u
ire
ra
w
m
a
te
ria
ls
ra
w
m
a
te
ria
ls
p
ro
v
id
e
d
b
y
S
u
p
p
lie
r1
P
u
rc
h
a
s
e
ra
w
m
a
te
ria
ls
fro
m
S
u
p
p
lie
r1
C
h
e
c
kra
w
m
a
te
ria
ls
a
v
a
ila
b
ility
M
a
n
u
fa
c
tu
re
p
ro
d
u
c
t
R
a
w
m
a
te
ria
ls
a
c
q
u
ir
e
d
S
to
c
ka
v
a
ila
b
ility
c
h
e
c
k
e
d
ra
w
m
a
te
ria
ls
p
ro
v
id
e
d
b
y
S
u
p
p
lie
r2
P
u
rc
h
a
s
e
ra
w
m
a
te
ria
ls
fro
m
S
u
p
p
lie
r2
p
ro
d
u
c
tn
o
t
in
s
to
c
k
C
h
e
c
ks
to
c
k
a
v
a
ila
b
ility
P
u
r
c
h
a
s
e
o
r
d
e
r
r
e
c
e
iv
e
d
p
ro
d
u
c
t
in
s
to
c
k
S
h
ip
a
n
d
in
v
o
ic
e
R
e
trie
v
e
p
ro
d
u
c
tfro
m
w
a
re
h
o
u
s
e
G
e
ts
h
ip
m
e
n
t
a
d
d
re
s
s
S
h
ip
p
ro
d
u
c
t
C
o
n
firm
o
rd
e
r
A
rc
h
iv
e
o
rd
e
r
O
r
d
e
rs
h
ip
p
e
d
a
n
d
in
v
o
ic
e
d
O
rd
e
r
c
o
n
firm
e
d
E
m
itin
v
o
ic
e
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
R
e
c
e
iv
e
p
a
y
m
e
n
t
O
rd
e
rfu
lfille
d
Order6_2
A
c
q
u
ire
ra
w
m
a
te
ria
ls
M
a
n
u
fa
c
tu
r
e
p
ro
d
u
c
t
R
e
trie
v
e
p
r
o
d
u
c
tfr
o
m
w
a
re
h
o
u
s
e
C
o
n
firm
o
rd
e
r
p
ro
d
u
c
tn
o
t
in
s
to
c
k
C
h
e
c
ks
to
c
k
a
v
a
ila
b
ility
P
u
r
c
h
a
s
e
o
r
d
e
r
r
e
c
e
iv
e
d
p
ro
d
u
c
t
in
s
to
c
k
S
h
ip
a
n
d
in
v
o
ic
e
A
rc
h
iv
e
o
r
d
e
r
O
r
d
e
rfu
lfille
d
S
h
ip
a
n
d
in
v
o
ic
e
G
e
ts
h
ip
m
e
n
t
S
h
ip
p
ro
d
u
c
t
© M. Dumas et al. Fundamentals
of
BPM,
a
d
d
r
e
s
s Springer-Verlag, 2013
A
c
q
u
ir
e
r
a
w
m
a
te
ria
ls
¿Cuando descomponer en subprocesos?
Cuando es demasiado grande
(> 30 elementos aprox.)
Reutilización de procesos (subprocesos globales)
ch4_LoanHierarchy2
lo
w
lia
b
ility
R
e
g
is
te
rh
o
m
e
lo
a
n
a
p
p
lic
a
tio
n
R
e
je
c
th
o
m
e
lo
a
n
C
h
e
c
kh
o
m
e
lo
a
n
a
p
p
lic
a
tio
n
H
o
m
e
lo
a
n
a
p
p
lic
a
tio
n
c
o
m
p
le
te
d
H
o
m
e
lo
a
n
a
p
p
lic
a
tio
n
re
c
e
iv
e
d
h
ig
h
lia
b
ility
d
e
b
ts
R
e
g
is
te
r
s
tu
d
e
n
tlo
a
n
a
p
p
lic
a
tio
n
A
p
p
r
o
v
e
h
o
m
e
lo
a
n
S
ig
n
lo
a
n
C
o
n
d
itio
n
a
lly
a
p
p
ro
v
e
s
tu
d
e
n
tlo
a
n
C
h
e
c
kd
e
b
ts
Call activities
S
ig
n
lo
a
n
S
tu
d
e
n
tlo
a
n
a
p
p
lic
a
tio
n
c
o
m
p
le
te
d
S
tu
d
e
n
tlo
a
n
a
p
p
lic
a
tio
n
re
c
e
iv
e
d
n
o
d
e
b
ts
A
p
p
r
o
v
e
s
tu
d
e
n
tlo
a
n
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Introducción
BPMN Básico
La perspectiva de datos
La perspectiva organizacional*
Descomposición de procesos
Método de modelado
Método para modelar en BPMN
Paso 1: Definir el alcance del proceso
Paso 2: Crear el diagrama de alto nivel para el camino feliz
Paso 3: Añadir otros caminos de alto nivel
Paso 4: Expandir subprocesos para mostrar detalles
Paso 5: Añadir flujo de mensajes intermedios a pools
externos
• Paso 6: Añadir datos
•
•
•
•
•
Paso 1: Definir el alcance del proceso
• ¿Qué constituye el inicio del proceso?
• ¿Qué representa una instancia del proceso?
• ¿Quién es el “cliente”? ¿O es el iniciador un participante de
dentro del proceso?
• ¿Qué significa el final del proceso?
Paso 2: Crear el diagrama de alto nivel para el camino
ideal
•
•
•
•
•
Añadir pools
Añadir lanes al pool del proceso
Añadir eventos de inicio y fin (feliz)
Añadir pasos principales en el camino feliz
Reconectar pasos concurrentes y condicionales
Paso 2 (previo)
Paso 2
Paso 3: Añadir otros caminos de alto nivel
• Identificar estados finales de error
• Insertar evento final por cada estado final
• Insertar gateways para definir los caminos de error
Paso 3
Paso 4: Expandir subprocesos para mostrar detalles
Paso 5: Flujo de mensajes intermedios a pools externos
• Añadir black-box pools para participantes externos
• Añadir flujo de mensajes de alto nivel
• Añadir flujo de mensajes en diagramas de subprocesos
Paso 5
Paso 5
Paso 6: Añadir datos
Introducción
BPMN Básico
La perspectiva de datos
La perspectiva organizacional*
Descomposición de procesos
Método de modelado
Errores comunes
Reglas básicas de uso a tener en cuenta
• Todo proceso o subproceso debe tener un evento de inicio.
Reglas básicas de uso a tener en cuenta
• Todas las actividades, gateways y eventos deben estar
conectados por una cadena de flujos de secuencia desde
el nodo de inicio al nodo de fin.
Reglas básicas de uso a tener en cuenta
• Los flujos de secuencia no deben cruzar nunca de un pool
a otro. Para eso se usan los de mensaje.
Reglas básicas de uso a tener en cuenta
• Los flujos de secuencia no deben cruzar nunca de un pool
hijo al padre.
Reglas básicas de uso a tener en cuenta
• El flujo de mensajes no puede conectar puntos del mismo
pool
Reglas básicas de uso a tener en cuenta
• El flujo de mensajes no puede conectar puntos del mismo
pool (forma correcta)
Reglas básicas de uso a tener en cuenta
• El flujo de mensajes no puede conectarse a un gateway.
Introducción
BPMN Básico
La perspectiva de datos
La perspectiva organizacional*
Descomposición de procesos
Método de modelado
Errores comunes
Resumen
Resumen
•
•
•
•
•
•
Actividades, eventos, gateways
Perspectiva de datos
Perspectiva organizacional
Descomposición en subprocesos
Método de modelado
Errores comunes
Fundamentals of Business Process Management
• Accesible en: http://0link.springer.com.fama.us.es/b
ook/10.1007/978-3-642-331435/page/1
• Más información en:
http://fundamentals-of-bpm.org/
BPMN Method and Style
• Más información en:
http://brsilver.com/bpmnmethod-and-style/