modelado básico con bpmn gestión de procesos y servicios
TRANSCRIPT
Modelado básico con BPMN
Gestión de Procesos y Servicios
Introducción
MapeadoAbstracciónPropósito
Un modelo se caracteriza por
¿Para qué modelamos?
Modelamos para entender
Diseño organizacionalDiseño de sistemas
Tipos de propósito
IntroducciónBPMN 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
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Un proceso sencillo
Actividades
Eventos
Flujo de secuencia
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 ORAND
ComplexEvent-based XOR
Fig 4.84. Gateway types in the BPMN, Object Management Group (2006) M. W
eske
: Bus
ine
ss P
roce
ss M
ana
gem
ent,
©
Spr
ing
er-V
erla
g B
erlin
Hei
delb
erg
200
7
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 splitXOR join
© 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ónBPMN Básico
La perspectiva de datos
33
Data objects
• Representan datos manejados por las actividades. El dato puede tener un estado asociado.
Objetos de datos
Almacenes de datos
Dato con estado
© 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ónBPMN Básico
La perspectiva de datosLa perspectiva de organizacional*
*En esta lección veremos una introducción a la perspectiva organizacional que profundizaremosen lecciones posteriores
Participante del procesoSistema software
Equipamiento
Recursos
Recursos
• Pasivos– Ej. fotocopiadora
• Activos– Ej. Persona que fotocopia
Pools y lanes
• Los pools y lanes no tienen un significado concreto, pero lo habitual es:– Pools: Representan organizaciones / procesos– Lanes: Representan roles o departamentos en una organización
(nunca personas concretas)
Poo
l
Flow Objects
Events
Activities Place Order
Gateways
Connecting Objects
Sequence Flow
Message Flow
Association
Swimlanes
Lane
Data Object
Group
Artefacts
Annotation
Fig 4.78. Business Process Modeling Notation: categories of elements
M. W
eske
: Bus
ines
s P
roce
ss M
anag
emen
t, ©
Spr
inge
r-V
erla
g B
erlin
Hei
delb
erg
2007
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Vista privada: Típico flujo de trabajo que muestra los procesos internos de una organización específica
EntregarPedido
Pro
duc
ció
n
Ges
tión
de
Ped
idos
Ser
vici
o a
l Clie
nte
Fac
tura
ció
n
Recibir Pedido
Enviar Factura
SatisfacerPedido
Pedido
RecibirPago
Factura
CerrarPedido
Pac
ient
eC
onsu
lta d
el M
édic
o
Recibir la Petición de Consulta
Petición deConsulta
Enviar la Cita
Datos de la Cita
Atender al Paciente
Enf
erm
era
Méd
ico
Síntomas
RecetarMedicinas
Receta
Vista abstracta: Representa la interacción entre un proceso de negocio privado y otro que se muestra como
una caja negra
Flujo de mensajes
Proceso de caja negra
Proceso de caja blanca
Colaboración: Representa la interacción entre dos o más procesos de negocio privados
Pac
ient
eC
onsu
lta d
el M
édic
o
Recibir la Petición de Consulta
Petición deConsulta
Enviar la Cita
Datos de la Cita
Atender al Paciente
Enf
erm
era
Méd
ico
Síntomas
RecetarMedicinas
Receta
Llamar al Médico
Recibir la CitaIr a la
ConsultaRecoger las
Recetas
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
IntroducciónBPMN Básico
La perspectiva de datosLa perspectiva organizacional*
Descomposición de procesos
Mejorar la legibilidad y entendibilidad
Descomposición de procesos
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 “+”)
– Expandida
Nombre
+
Nombre
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Cuando es demasiado grande (> 30 elementos aprox.)
¿Cuando descomponer en subprocesos?
Reutilización de procesos (subprocesos globales)
Call activities
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
IntroducciónBPMN Básico
La perspectiva de datosLa perspectiva organizacional*
Descomposición de procesosMé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ónBPMN Básico
La perspectiva de datosLa perspectiva organizacional*
Descomposición de procesosMé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ónBPMN Básico
La perspectiva de datosLa perspectiva organizacional*
Descomposición de procesosMétodo de modelado
Errores comunesResumen
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://0-link.springer.com.fama.us.es/book/10.1007/978-3-642-33143-5/page/1
• Más información en: http://fundamentals-of-bpm.org/
BPMN Method and Style
• Más información en: http://brsilver.com/bpmn-method-and-style/