SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
Introducción al
                 Modelado de Procesos de Negocio



                                                    Profesores: Kawtar Benghazi
                                                       José Luis Garrido Bullejos
                                                        Manuel Noguera García

                          Invitados: Lawrence Chung (UT Dallas, EEUU)
                               Wil van der Aalst (TU Eindhoven, Holanda)
Departamento de Lenguajes y Sistemas Informáticos     Máster en Desarrollo de
            Universidad de Granada                           Software




                                             Índice
   •   Introducción
             Concepto de Proceso de Negocio
             Contexto
             Motivación
   •   Modelado de Procesos de Negocio
             Concepto
             Contexto
             Objetivos
             Componentes de un modelo de proceso de negocio
             Notaciones
               • Criterios para elegir una buena notación
             Herramientas
   •   Introducción a BPMN
             Elementos de la notación
             Ejemplos de uso
   •   Bibliografía
Departamento de Lenguajes y Sistemas Informáticos     Máster en Desarrollo de                                       2
            Universidad de Granada                           Software
                                                          Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
¿Qué es un Proceso de Negocio
          (Business Process - BP)?
   • “Un conjunto estructurado, medible de actividades diseñadas para producir un
       producto especificado, para un cliente o mercado específico. Implica un fuerte énfasis
       en CÓMO se ejecuta el trabajo dentro de la organización, en contraste con el
       énfasis en el QUÉ, característico de la focalización en el producto”, [Davenport 1993]

   • “Un proceso de negocio contiene actividades con propósito, es ejecutado
       colaborativamente por un grupo de trabajadores de distintas especialidades, con
       frecuencia cruza las fronteras de un área funcional, e invariablemente es detonado
       por agentes externos o clientes de dicho proceso”, [Ould 1995]

   • “A business process is a persistent unit of work started by a business event such as
       an invoice, request for proposal or a request for funds transfer. The process is driven
       by business rules that trigger tasks and subprocesses, with each state transition
       being executed within a transaction and audited for business reasons when required.
       Tasks and sub-processes are assigned to resources, which are organizational units
       that are capable and authorized to play specific roles in the processes”, [Dayal 2001]


Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de                                       3
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




           Ejemplo (de descripción de
         proceso de negocio): Actualizar
              Stock de Productos




                                                           Fuente: SOA agenda



Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Motivación
   • Sistemas empresariales altamente
       informatizados: el sistema software
       es un elemento central

   • Interés creciente por parte de las
       empresas
             Informe IDC (2008): 70% de empresas
             SOA pasando de un modelo tecnológico
             centrado en la integración a otro con foco
             en los procesos de negocio
             Informe ADECCO: Ej. “Programador
             JAVA”

   • Importantes intereses económicos:
             Ej: Airbus, Boeing y 787 “Dreamliner”
Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de                                       5
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




            Ámbito de los Procesos de
                    Negocio
   • Gestión de empresas y organizaciones
       (Enterprise Management)
             Enterprise Modelling
               • Enterprise Architectures
             Scheduling, planning
             Business Process Management
               • Business Process Modelling
               • Despliegue (deployment)* [también en Enterprise Architectures]
             Subcontratación (outsourcing)
Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Modelado de Procesos de Negocio

   • Business Process Modelling (BPM)
             BPM también (Business Process Management) [Ko 2009][Ko
             2009b]
             “Representar los procesos de negocio de una
             empresa u organización con objeto de que puedan
             ser analizados y mejorados”:
               • Validación: Se realizan todas la tareas, ciclos
               • Simulación: Ahorro de costes antes de la implementación




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




Modelado de Procesos de Negocio (II)
   • Antecedentes y ejemplos:
             Grupos de trabajo sobre workflow
               • WfMC
             Estándares y lenguajes de workflow
               • Redes de Petri
               • Activity diagrams
               • YAWL (Yet Another Workflow Language, Aalst)
             Metodologías de modelado de procesos
               • Proclets [Aalst 2001]
               • AMENITIES [Garrido 2003]
             Patrones de workflow
   • Autores actuales:
             Wil van der Aalst (Marlon Dumas, Arthur ter Hofstede...)
             Fabio Casati

Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Modelado de Procesos de Negocio (III)
                                                                                                                                                                                                                        system architect
                                                                                                        Collaborative
                                                                                                           System




• Principales responsables:
                                                                                                                                                                                                                                                                      Coop-Task mortgageGranting


                                                                                *           1..*                                                                                         1..*
                                                                                                                                                                                                                                                            payroll

                                                                      Organization                  *                                                                                    Group                                                            unpaids                      headOfRisk:                                               appraiser:
                                                                                                                                                                                                                                                                                   collectApplicantData                                            value
                                                                           *                *      connect                                                                                                                                                accounts
                                                                                                                                                                                                           *                                                                                                                                                     valuationReport
                                                                                                                                                                                                                                                                                                                                                                    [Finished]
                                                                           1..*                                                                                                                 1..*
                                                                                                    1..*                               < play
                                                                                                                                                                              *
                                                                            Role                                                                                                                                        *                                                                                         headOfRisk:
                                                                                                    *                                                                                     Actor                                                                                                                  feasibilityStudy

                                                                                            *   connect                                                                           *        *




        Analistas, Arquitectos/
                                                                                *

                                                                                                                           *                                                      *                                                                       debtReport
                                                       Goal                *
                                                                                                                                           check >                                                                                                                                                                               [Refusal]
                                                                                                           Law                                                           Capability                                                                                                                [Hesitant]
                                                                                                                                                                                                                                                                                                                    debtReport
                                                                      to achieve                                                       *                           *                                                                                                                                                  Status
                                                        interrupt
                                                                                                                                                                       assign/remove *
                                                                      *    1..*
                                                                                                                                                                                                                                                                            bankManager+headOfRisk:                        [Passed]
                                                              *                                                                                                                                                                                                                 decideConcession
                                                                            Task




        diseñadores, desarrolladores
                                                                                                                                                                                                                                                                                      [Refusal]       [Passed]

                                                                                        *
                                                         Cooperative                                                                                                                                                                                                                                                headOfRisk:
                                                                                                                                                                                                                                                      Protocol conversational-                                   prepareDocuments
                                                            Task                                                                                                                                                                                      communication Requirements
                                                                                                                               *
                                                                                                                                            Event                                                                                                     { face-to-face                                                                                                  draft
                                                                                                                                                                                                                                                        shared-workspace}
                                                                                        *
                                                                                                                                   1 send/receive                                                                                                                                                                 bankManager:
                                                                                    Work



        del sistema de información
                                                                                                                                                                                                                                                                                                                   giveApproval
                                                                                    Unit
                                                                                                                                       trigger                                                                                                                                                                                                                        draft
                                                                                                                       *           *                                                                                                                                                                                                                                [Signed]
                                                                                                                                        *
                                                        Subactivity                                     Action                          *                                                                                                                                                headOfRisk:                                                teller:
                                                                                    *                                                                                                                                                                                                     createDeed                                             openAccount
                                                                                                             *                              do
                                                                  *       do
                                                                                                                       use                                                                 *     use
                                                                           produce/use *                     *
                                                                                                    Information
                                                                                                       Object
                                                                                                              *
                                                                                                                                                                                        Artefact

                                                                                                                                                                                           *
                                                                                                                                                                                                                                        design                     titleDeed
                                                                                                                                                                                                                                                                  [Unsigned]                           notary+bankManager+client:
                                                                                                                                                                                                                                                                                                              agreeAndSign
                                                                                                                                                                                                                                                                                                                                             Protocol negotiation-
                                                                                                                                                                                                                                                                                                                                             communication Requirements
                                                                                                                                                                                                                                                                                                                                             { face-to-face
                                                                                                                                                                                                                                                                                                                                               shared-workspace}


                                                                                                                                                                                                                                        decisions
                                                                                                                                                                                                                                                                      titleDeed
                                                                                                                                                                                                                                                                      [Signed]
                                                              *           use                   AMENITIES conceptual framework
                                                        Interaction                             for collaborative systems
                                                         Protocol
                                                                                                                                                                 Organization Branch


                                                                                                                                   [BankManager?]
                                                                                                                                                                                  Role BankManager                                           Role HeadOfRisk
                                                                                                                                                                                         1
                                                                                                                                           [H

                                                                                                                                                                                                                                structural




                                                                                                                                                                                                 [Absent(BankManger)]
                                                                                                                                             ea
                                                                                                                                               dO
                                                                                                                                                                                                                                                                 [MortgageApplied]                                   NewClient
                                                                                                                                                 fR
                                                                                                                                                   isk




                                                                                                           [Teller?]
                                                                                                                                                      ?]
                                                                                                                                                                                                                                              Coop-Task MortgageGranting                            Task ServeClient
                                                                                                                                                                                                                                                             1
                                                                                                                                                                                                                                view
                                                                                                        Role Teller                                                               Role HeadOfRisk
                                                                                                            2                                                                             1
                                                                                                                                                                                                                                              Role Valuer
                                                                                                                                                                                                                                                                                           [MortgageApplied]

                                                                                                        Organization ValuationOffice                                           Organization NotaryOffice                                                       Coop-Task MortgageGranting
                                                                                                                                                                                                                                                                                       1
                                                                                                                       Role Director                                                      Role Notary
                                                                                                                           1                                                                  1




                                                                                                                                            [Absent(Director)]
                                                                                                [Director?]                                                                       [Notary?]



                                                                                                   [Valuer?]



                                                                                                                        Role Valuer
                                                                                                                                                                                      [Agent?]



                                                                                                                                                                                          Role Agent
                                                                                                                                                                                                                                                                                                       behavioral
                                                                                                                            2                                                                 3
                                                                                                                                                                                                                                                                                                       views

                                                                                                                                                                                                                                diferent views
                                                                                                                                                                                                                            of the system model



 Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
             Universidad de Granada                         Software
                                                                  Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




       Beneficios perseguidos/obtenidos
    • Para la organización:
              Efectividad    se concreta lo que ha de llevarse a cabo
              Eficiencia    reutilización de procesos probados como más
              eficientes
              Consistencia       detección de tareas no realizables,
              prerrequisitos,...
              Productividad       reutilización de procesos más productivos
              Ahorro     asignación de costes (de tiempo, espacio y
              económicos) e identificación de los procesos más ventajosos
              Calidad, mejora general de los procesos




 Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
             Universidad de Granada                         Software
                                                                  Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Beneficios perseguidos/obtenidos (II)
   • Para el analista:
             Agilización del proceso de desarrollo y, por tanto, de la carga de
             trabajo
             Identificación de errores en fases tempranas
             Mayor nivel de abstracción
             Independencia de plataformas tecnológicas concretas
               • El modelo de negocio y la tecnología que lo soporta pueden
                 evolucionar por separado     Model-driven Architecture (MDA)
             Trazabilidad del sistema, por identificación de tareas y su
             asignación a procedimientos manuales o automatizados




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




              Elementos de un Modelo de
                 Proceso de Negocio
   • Típicamente:
             Objetivo(s) o motivo del proceso
             Entradas
             Salidas
             Recursos utilizados
             Secuencia de Actividades
             Eventos que dirigen el proceso
             Roles/participantes involucrados




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Notaciones de modelado
   • Algunos lenguajes y estándares:
             Redes de Petri Carl Adam Petri
             Diagramas de Actividades de UML OMG
             SPEM (Software Process Engineering Meta-Model)
             OMG

             BPMN (Business Process Modeling Notation) OMG
             XPDL (XML Process Definition Language) WfMC
             IDEF (Integration DEFinition) U.S. Air Force
             EPC (Event-driven Process Chain) ARIS – Architecture of
             Integrated Information Systems, Scheer


Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




    Notaciones de modelado. Tipos
   • Dependiendo de las metodologías y estrategias
       empleadas:
             Orientados a proceso: Se centran en las diferentes tareas a
             completar para llevar a cabo un proceso completo
             Orientados a recurso: Se centran en la utilización y distribución
             de los recursos que son necesarios para llevar a cabo la
             realización del proceso
             Orientados a datos: Se centran en la definición de los datos y
             en las transformaciones que sufren estos a los largo del proceso




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Criterios
   •   Expresividad
             La capacidad de modelar la complejidad de los procesos de negocio.
             Regla de medida    Patrones de workflow (van der Aalst)
             La capacidad de representar roles y su asignación a diferentes tareas
   •   Capacidad para especificar las características de calidad de los
       procesos de negocio
   •   Capacidad para especificar repositorios de procesos que nos
       permitan la reutilización de procesos mediante la utilización de
       conceptos como la variabilidad y la extensibilidad
   •   Capacidad para especificar atributos que nos permitan gestionar los
       procesos (monitorizar, controlar o planificar los mismos)



Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




                                    Criterios (II)
   •   Permitir una vista multi-nivel de los procesos para partiendo de
       descripciones más comprensibles de alto nivel o agregados, tener la
       posibilidad de alcanzar niveles con gran cantidad de detalles
   •   Ser comprensible para aquellos que no son especialistas en
       modelado. Esta característica es especialmente útil si con
       posterioridad se pretende utilizar los modelos para la fase de análisis
       de requisitos
   •   Permitir la integración y soporte para otro tipo de notaciones que
       nos facilitará una mejor interacción entre las herramientas que den
       soporte a estas notaciones




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Herramientas
   • Soyatec eBPMN
   • Bonita Open Solution
   • Magic Draw
   • EPF                 Composer
                 (Eclipse Process Framework)

   • Star UML
                                                                        Procesos de desarrollo
                                                                             de software




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




                                            BPMN
   • Business Process Modeling Notation [OMG 2009]
             Estándar del OMG
             Notación gráfica fácil de entender por analistas,
             implementadores
               • y también gestores, clientes, proveedores... (i.e.,
                 stakeholders)
             Reduce la distancia entre el diseño de un proceso de
             negocio y su implementación
             Habilita la visualización de especificaciones en el
             lenguaje XML para la ejecución de procesos

Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
BPMN. Elementos Básicos
       Elementos de modelado
       para la creación de
       diagramas de procesos
       de negocio sencillos




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




            BPMN. Conjunto completo de
                    Eventos
                                                              Un evento es algo que
                                                              ocurre durante el
                                                              transcurso de un proceso
                                                              de negocio
                                                              Los eventos interfieren en
                                                              el flujo de un proceso y
                                                              normalmente tienen un
                                                              disparador o un resultado
                                                              Pueden iniciar, interrumpir
                                                              o finalizar un flujo


Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
BPMN. Conjunto completo de
                   Actividades
                                                                  Una actividad representa
                                                                  un trabajo realizado
                                                                  dentro de un proceso de
                                                                  negocio
                                                                  Puede ser simple o
                                                                  compuesta
                                                                  Tipos de actividades:
                                                                  Proceso, Sub-proceos y
                                                                  tarea


Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




              BPMN. Conjunto completo de
                   Actividades (II)
                                                           Un Sub-proceso puede
                                                           mostrarse en forma
                                                           expandida revelando
                                                           detalles sobre actividades
                                                           de menor nivel de
                                                           abstracción




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
BPMN. Conjunto completo de
               Conectores
                                                                   Los flujos de secuencia
                                                                   muestran el orden en que
                                                                   deben realizarse las
                                                                   actividades dentro de un
                                                                   proceso
                                                                   Un flujo de mensaje indica el
                                                                   orden en que se intercambian
                                                                   mensajes dos entidades
                                                                   preparadas para ello
                                                                   Las asociaciones relacionan
                                                                   información y artefactos con
                                                                   objetos de flujo

Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




            BPMN. Conjunto completo de
                   Pasarelas
                                                                 Las “pasarelas”
                                                                 (gateways) se utilizan
                                                                 para bifurcar y coordinar
                                                                 flujos de control
                                                                 alternativos o
                                                                 concurrentes
                                                                 Si no hay que coordinarlo,
                                                                 no hay por qué usarlas




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
BPMN. Conjunto completo de
                     Calles

                                                                   Una “piscina” (pool) es un
                                                                   contenedor gráfico para
                                                                   particionar un conjunto de
                                                                   actividades
                                                                   Una “calle” (lane) es una
                                                                   partición (vertical u
                                                                   horizontal) dentro de una
                                                                   piscina a lo largo de la
                                                                   misma


Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




            BPMN. Conjunto completo de
                    Calles (II)

                                                                         Pueden anidarse




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
BPMN. Conjunto completo de
                   Artefactos
                                                             Los objetos de datos no son
                                                             objetos de flujo (conectados
                                                             por flujos de secuencia)
                                                             Proveen información sobre
                                                             documentos, datos y otros
                                                             objetos de un proceso
                                                             Las anotaciones de texto son
                                                             un mecanismo para
                                                             proporcionar información
                                                             adicional al usuario de un
                                                             diagrama
                                                             Los grupos sirven para
                                                             organizar visualmente las
                                                             actividades
Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




           Ejemplo de un Flujo Normal




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Ejemplo de modelado B2B




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




       Ejemplo de modelado B2B (II)




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Ejemplo de Gestión de
                          Excepciones
                                                            Los eventos intermedios sobre
                                                            el borde de una actividad
                                                            representan disparadores que
                                                            pueden interrumpir dicha
                                                            actividad
                                                            Toda la ejecución de la
                                                            actividad se detiene y el flujo
                                                            prosigue a partir del evento
                                                            Ejemplos: excepciones,
                                                            mensajes, temporizadores, etc.




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




           Ejemplo de Gestión de
        Compensación y Transacciones
                                                             Las transacciones son
                                                             subprocesos representados con
                                                             borde doble
                                                             Se sigue el flujo normal de salida
                                                             cuando se completa con éxito
                                                             Un evento intermedio de
                                                             cancelación representa el camino
                                                             a seguir cuando se cancela una
                                                             actividad
                                                             Ídem para los eventos intermedios
                                                             de excepciones o errores
                                                             Las actividades de compensación
                                                             están fuera del flujo normal del
                                                             proceso
Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Un proceso complejo




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




       La vida
        real
   W.M.P. Aalst. “TRENDS IN
   BUSINESS PROCESS ANALYSIS.
   From Verification to Process
   Mining”, ICEIS 2007, INSTICC,
   Medeira, Portugal, pp. 12–22
   (2007)




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Ejemplo de mapeo a BPEL4WS
                                          <process name="EMailVotingProcess">
                                             <!-- The Process data is defined first-->
                                             <sequence>
                                                <receive partnerLink="Internal" portType="tns:processPort"
                                                           operation="receiveIssueList“ variable="processData"
                                                            createInstance="Yes"/>
                                                <invoke name="ReviewIssueList" partnerLink="Internal"
                                                           portType="tns:internalPort" operation="sendIssueList"
                                                           inputVariable="processData“ outputVariable="processData"/>
                                                <switch name="Anyissuesready">
                                                   <!-- name="Yes" -->
                                                   <case condition="bpws:getVariableProperty(ProcessData,NumIssues)>0">
                                                          <invoke name=“DiscussionCycle“ partnerLink="Internal"
                                                                  portType="tns:processPort" operation=“callDiscussionCycle"
                                                                  inputVariable="processData"/>
                                                          <!– Other Activities not shown -->
                                                   <!--name="No" -->
                                                   </case>
                                                   <otherwise>
                                                      <empty/>
                                                   </otherwise>
                                                </switch>
                                             </sequence>
Departamento de Lenguajes y Sistemas Informáticos
                                         </process>       Máster en Desarrollo de
            Universidad de Granada                               Software
                                                              Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




            BPMN. ¿Objetivos/Goals?*

 • Whitestein
 • URN – User Requirements
     Notation (ITU), [Pourshahid 2009]
 •   Business Motivation Model
     (OMG)
 •   Patente: “Method and tool for
     business process adaptation
     using goal modeling and analysis”
     [A. Lapouchnian et al.]
 *Tema de un posible trabajo para el curso

Departamento de Lenguajes y Sistemas Informáticos         Máster en Desarrollo de
            Universidad de Granada                               Software
                                                              Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Investigación




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




                                  Investigación




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Bibliografía
   •   [Aalst 2001] W.M.P. van der Aalst, P. Barthelmess, C.A. Ellis, J.
       Wainer. “Proclets: A Framework for Lightweight Interacting Workflow
       Processes”, International Journal of Cooperative Systems 10(4),
       2001, pp. 443-481
   •   [Dayal 2001] U. Dayal, M. Hsu, and R. Ladin. “Business Process
       Coordination: State of the Art, Trends, and Open Issues”. 27th
       International Conference on Very Large Data Bases (VLDB 2001),
       pp. 3-13, Roma, Italy, 2001. Morgan Kaufmann
   •   [Davenport 1993] T.H. Davenport. “Process innovation :
       reengineering work through information technology”. Boston, Mass.:
       Harvard Business School Press, 1993
   •   [Garrido 2003] J.L. Garrido. “AMENITIES: Una metodología para el
       desarrollo de sistemas cooperativos basada en modelos de
       comportamiento y tareas”. Tesis Doctoral, Granada 2003



Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




                                     Bibliografía
   •   [Ko 2009] R.K.L. Ko. “A Computer Scientist's Introductory Guide to
       Business Process Management (BPM)”.
       http://www.acm.org/crossroads/xrds15-4/bpm.html
   •   [Ko 2009b] R.K.L. Ko, S.S.G. Lee, E. Lee. “Business process
       management (BPM) standards: a survey”. Journal:Business Process
       Management Journal, 2009, Volume 15 (5), pp.744 – 791
   •   [OMG 2009] OMG. "Business Process Model and Notation 2.0 Beta
       1 Specification. http://www.omg.org/cgi-bin/doc?dtc/09-08-14
   •   [Ould 1995] M.A. Ould. “Business Process: Modelling and Analysis
       for Re-engineering and Improvement”. Baffins Lane, Chichester,
       England: John Wiley & Sons Ltd, 1995
   •   [Pourshahid 2009] A. Pourshahid, D. Amyot, L. Peyton, S.
       Ghanavati, P. Chen, M. Weiss A.J. Forster. “Business process
       management with the user requirements notation“. Electronic
       Commerce Research, Volume 9, Number 4, Springer, pp. 269-316


Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Ejercicio
   • Modelar un proceso de negocio para un sistema de
       gestión de reservas de vuelo. Algunos requisitos:
             Existen 3 operadores de reservas distribuidos
             Los clientes pueden interactuar con ellos a través de Internet
             El número de plazas del avión es limitado
             Se requiere confirmación de la reserva en el plazo de cinco
             minutos. En otro caso habrá de cancelarse
             La reserva se lleva a cabo en una única transacción
             El pago ha de recibirse en el plazo de un día




Departamento de Lenguajes y Sistemas Informáticos     Máster en Desarrollo de
            Universidad de Granada                           Software
                                                          Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




                         Introducción al
                 Modelado de Procesos de Negocio



                                                    Profesores: Kawtar Benghazi
                                                       José Luis Garrido Bullejos
                                                        Manuel Noguera García

                          Invitados: Lawrence Chung (UT Dallas, EEUU)
                               Wil van der Aalst (TU Eindhoven, Holanda)
Departamento de Lenguajes y Sistemas Informáticos     Máster en Desarrollo de
            Universidad de Granada                           Software
                                                          Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Detección de inconsitencias
   • Ej. de actividad no alcanzable en BPEL




Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




           Patrones de workflow (van der
                      Aalst)
   •   van der Aalst, W., ter Hofstede, A., Kiepuszewski, B. & Barros, A. (2003),
       ‘Workflow patterns’, Distributed and Parallel Databases 14(3), 5–51 (enlace)
   •   20 patrones de workflow clasificados en:
             De control básico de flujo: Describen los aspectos elementales del control de
             flujo de los procesos
             De ramificación avanzada y sincronización
             Patrones estructurales: Permiten identificar limitaciones estructurales de los
             procesos, en especial aquellas relacionadas con bucles y terminaciones
             Patrones con múltiples instancias: Comprenden aquellas situaciones en las
             que puede haber ejecutándose varias instancias de una misma actividad dentro
             de una misma instancia de un proceso
             Patrones basados en estado: Permiten describir situaciones donde el siguiente
             paso de la ejecución de la instancia de un proceso viene determinado por el
             estado de la propia instancia
             Patrones de cancelación: Para representar la terminación de actividades e
             instancias de procesos cuando concurren ciertas circunstancias

Departamento de Lenguajes y Sistemas Informáticos   Máster en Desarrollo de
            Universidad de Granada                         Software
                                                        Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Ejemplos:
     Red de Petri




Departamento de Lenguajes y Sistemas Informáticos                                     Máster en Desarrollo de
            Universidad de Granada                                                           Software
                                                                                                Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11




    Ejemplo: Diagrama de Actividad
                                          Coop-Task mortgageGranting


                                payroll

                               unpaids                    headOfRisk:                                               appraiser:
                                                      collectApplicantData                                            value
                               accounts
                                                                                                                                    valuationReport
                                                                                                                                       [Finished]


                                                                                     headOfRisk:
                                                                                    feasibilityStudy




                               debtReport
                                                                                                    [Refusal]
                                                                                       debtReport
                                                                       [Hesitant]        Status



                                                bankManager+headOfRisk:                       [Passed]
                                                    decideConcession

                                                         [Refusal]       [Passed]


                                                                                       headOfRisk:
                           Protocol conversational-                                 prepareDocuments
                           communication Requirements
                           { face-to-face                                                                                                draft
                             shared-workspace}

                                                                                     bankManager:
                                                                                      giveApproval

                                                                                                                                         draft
                                                                                                                                       [Signed]


                                                            headOfRisk:                                                teller:
                                                             createDeed                                             openAccount




                                       titleDeed
                                      [Unsigned]                          notary+bankManager+client:            Protocol negotiation-
                                                                                 agreeAndSign                   communication Requirements
                                                                                                                { face-to-face
                                                                                                                  shared-workspace}
                                          titleDeed
Departamento de Lenguajes y Sistemas Informáticos
                                          [Signed]
                                                                                      Máster en Desarrollo de
            Universidad de Granada                                                           Software
                                                                                                Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
Ejemplo: Diagrama de Actividad (II)
                                      Activity replace_stock



                                                                       issue_purchase




                                                                      send_to_vendors




                                                               <<d=5 days>>




                                                           confirm_order




                                                                                          <<d=10 days>>

                                                                                    confirm_order



                                                                                                                 [else]


                                                                                                          confirm_order




                                                                                   contract_vendor




                                                                                   order_payment




Departamento de Lenguajes y Sistemas Informáticos                     Máster en Desarrollo de
            Universidad de Granada                                           Software
                                                                              Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11

Más contenido relacionado

La actualidad más candente

Adonis Community Edition
Adonis Community EditionAdonis Community Edition
Adonis Community EditionLivia Guzman
 
Tipos de modelos en un proyecto de automatización con tecnología BPM
Tipos de modelos en un proyecto de automatización con tecnología  BPMTipos de modelos en un proyecto de automatización con tecnología  BPM
Tipos de modelos en un proyecto de automatización con tecnología BPMCROSSNET S.A.C.
 
Bpm
BpmBpm
BpmUJAP
 
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosFundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosJosé Antonio Sandoval Acosta
 
Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)Anel Sosa
 
Gestión de Procesos y Seis Sigma
Gestión de Procesos y Seis SigmaGestión de Procesos y Seis Sigma
Gestión de Procesos y Seis SigmaBOC Ibérica
 
Proyecto sigaa modelo de negocio v1.0
Proyecto sigaa   modelo de negocio v1.0Proyecto sigaa   modelo de negocio v1.0
Proyecto sigaa modelo de negocio v1.0ionsihuay
 
Clase3 Caso Practico
Clase3 Caso PracticoClase3 Caso Practico
Clase3 Caso Practicojmch19
 
Arquitecturas Empresariales, Soa Y Bpm 1.0
Arquitecturas Empresariales, Soa Y Bpm 1.0Arquitecturas Empresariales, Soa Y Bpm 1.0
Arquitecturas Empresariales, Soa Y Bpm 1.0Alberto Otero
 
Modelado de procesos de negocio
Modelado de procesos de negocioModelado de procesos de negocio
Modelado de procesos de negociorehoscript
 
Comparativo bpm
Comparativo bpmComparativo bpm
Comparativo bpmLuis Coba
 
Plataforma Oracle para BPM
Plataforma Oracle para BPMPlataforma Oracle para BPM
Plataforma Oracle para BPMCROSSNET S.A.C.
 
Icc Lean Thinking i les TIC
Icc Lean Thinking i les TICIcc Lean Thinking i les TIC
Icc Lean Thinking i les TICFundació CATIC
 

La actualidad más candente (20)

Adonis Community Edition
Adonis Community EditionAdonis Community Edition
Adonis Community Edition
 
Tipos de modelos en un proyecto de automatización con tecnología BPM
Tipos de modelos en un proyecto de automatización con tecnología  BPMTipos de modelos en un proyecto de automatización con tecnología  BPM
Tipos de modelos en un proyecto de automatización con tecnología BPM
 
Bpm
BpmBpm
Bpm
 
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosFundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
 
Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)
 
Proyecto análisis y Diseño de Sistemas
Proyecto análisis y Diseño de SistemasProyecto análisis y Diseño de Sistemas
Proyecto análisis y Diseño de Sistemas
 
Separata2
Separata2Separata2
Separata2
 
Gestión de Procesos y Seis Sigma
Gestión de Procesos y Seis SigmaGestión de Procesos y Seis Sigma
Gestión de Procesos y Seis Sigma
 
Herramientas de Software para Proyectos BPM
Herramientas de Software para Proyectos BPMHerramientas de Software para Proyectos BPM
Herramientas de Software para Proyectos BPM
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
Proyecto sigaa modelo de negocio v1.0
Proyecto sigaa   modelo de negocio v1.0Proyecto sigaa   modelo de negocio v1.0
Proyecto sigaa modelo de negocio v1.0
 
Clase3 Caso Practico
Clase3 Caso PracticoClase3 Caso Practico
Clase3 Caso Practico
 
Arquitecturas Empresariales, Soa Y Bpm 1.0
Arquitecturas Empresariales, Soa Y Bpm 1.0Arquitecturas Empresariales, Soa Y Bpm 1.0
Arquitecturas Empresariales, Soa Y Bpm 1.0
 
Modelado de procesos de negocio
Modelado de procesos de negocioModelado de procesos de negocio
Modelado de procesos de negocio
 
Comparativo bpm
Comparativo bpmComparativo bpm
Comparativo bpm
 
BPM Chile Day 2011 - Informe BPM&SOA
BPM Chile Day 2011 - Informe BPM&SOABPM Chile Day 2011 - Informe BPM&SOA
BPM Chile Day 2011 - Informe BPM&SOA
 
Documento completo mdna
Documento completo mdnaDocumento completo mdna
Documento completo mdna
 
bpnm
bpnmbpnm
bpnm
 
Plataforma Oracle para BPM
Plataforma Oracle para BPMPlataforma Oracle para BPM
Plataforma Oracle para BPM
 
Icc Lean Thinking i les TIC
Icc Lean Thinking i les TICIcc Lean Thinking i les TIC
Icc Lean Thinking i les TIC
 

Similar a Collaborative systems business-processes_10-11

Modelos procesos de negocios
Modelos procesos de negociosModelos procesos de negocios
Modelos procesos de negocioscraXMqZO2
 
Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]
Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]
Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]Lia Nakid
 
isu1modelodenegocios-160918001452.pdf
isu1modelodenegocios-160918001452.pdfisu1modelodenegocios-160918001452.pdf
isu1modelodenegocios-160918001452.pdfPaolaMedina821778
 
Bpm Value Proposition + Ultimus
Bpm Value Proposition + UltimusBpm Value Proposition + Ultimus
Bpm Value Proposition + UltimusHernan Marsili
 
Importancia de uml y bpmn
Importancia de uml y bpmnImportancia de uml y bpmn
Importancia de uml y bpmnAaron Cruz
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rupmireya2022
 
Diferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoftDiferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoftunemi
 
Diferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoftDiferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoftunemi
 
Eduardo hiram godínez aguirre inv psp conceptos básicos
Eduardo hiram godínez aguirre   inv psp conceptos básicosEduardo hiram godínez aguirre   inv psp conceptos básicos
Eduardo hiram godínez aguirre inv psp conceptos básicosEduardo Hiram
 

Similar a Collaborative systems business-processes_10-11 (20)

Modelos procesos de negocios
Modelos procesos de negociosModelos procesos de negocios
Modelos procesos de negocios
 
Herramientas BPM
Herramientas BPMHerramientas BPM
Herramientas BPM
 
BPM METODOLOGIA
BPM METODOLOGIABPM METODOLOGIA
BPM METODOLOGIA
 
Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]
Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]
Sio2009 Eq9 Lec15 Presentacion Gold Bernstein [Autoguardado]
 
SAP
SAPSAP
SAP
 
Bpm 1226861151466924-8
Bpm 1226861151466924-8Bpm 1226861151466924-8
Bpm 1226861151466924-8
 
Bpm
BpmBpm
Bpm
 
BusinessPM
BusinessPMBusinessPM
BusinessPM
 
Bpm
BpmBpm
Bpm
 
Metodologia RUP
Metodologia RUPMetodologia RUP
Metodologia RUP
 
isu1modelodenegocios-160918001452.pdf
isu1modelodenegocios-160918001452.pdfisu1modelodenegocios-160918001452.pdf
isu1modelodenegocios-160918001452.pdf
 
Bpm Value Proposition + Ultimus
Bpm Value Proposition + UltimusBpm Value Proposition + Ultimus
Bpm Value Proposition + Ultimus
 
Importancia de uml y bpmn
Importancia de uml y bpmnImportancia de uml y bpmn
Importancia de uml y bpmn
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
bpm
bpmbpm
bpm
 
¿Que es BPM?
¿Que es BPM?¿Que es BPM?
¿Que es BPM?
 
Semana 2
Semana 2Semana 2
Semana 2
 
Diferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoftDiferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoft
 
Diferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoftDiferencia entre metodología xp extreme programming y estilo moprosoft
Diferencia entre metodología xp extreme programming y estilo moprosoft
 
Eduardo hiram godínez aguirre inv psp conceptos básicos
Eduardo hiram godínez aguirre   inv psp conceptos básicosEduardo hiram godínez aguirre   inv psp conceptos básicos
Eduardo hiram godínez aguirre inv psp conceptos básicos
 

Collaborative systems business-processes_10-11

  • 1. Introducción al Modelado de Procesos de Negocio Profesores: Kawtar Benghazi José Luis Garrido Bullejos Manuel Noguera García Invitados: Lawrence Chung (UT Dallas, EEUU) Wil van der Aalst (TU Eindhoven, Holanda) Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Índice • Introducción Concepto de Proceso de Negocio Contexto Motivación • Modelado de Procesos de Negocio Concepto Contexto Objetivos Componentes de un modelo de proceso de negocio Notaciones • Criterios para elegir una buena notación Herramientas • Introducción a BPMN Elementos de la notación Ejemplos de uso • Bibliografía Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de 2 Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 2. ¿Qué es un Proceso de Negocio (Business Process - BP)? • “Un conjunto estructurado, medible de actividades diseñadas para producir un producto especificado, para un cliente o mercado específico. Implica un fuerte énfasis en CÓMO se ejecuta el trabajo dentro de la organización, en contraste con el énfasis en el QUÉ, característico de la focalización en el producto”, [Davenport 1993] • “Un proceso de negocio contiene actividades con propósito, es ejecutado colaborativamente por un grupo de trabajadores de distintas especialidades, con frecuencia cruza las fronteras de un área funcional, e invariablemente es detonado por agentes externos o clientes de dicho proceso”, [Ould 1995] • “A business process is a persistent unit of work started by a business event such as an invoice, request for proposal or a request for funds transfer. The process is driven by business rules that trigger tasks and subprocesses, with each state transition being executed within a transaction and audited for business reasons when required. Tasks and sub-processes are assigned to resources, which are organizational units that are capable and authorized to play specific roles in the processes”, [Dayal 2001] Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de 3 Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Ejemplo (de descripción de proceso de negocio): Actualizar Stock de Productos Fuente: SOA agenda Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 3. Motivación • Sistemas empresariales altamente informatizados: el sistema software es un elemento central • Interés creciente por parte de las empresas Informe IDC (2008): 70% de empresas SOA pasando de un modelo tecnológico centrado en la integración a otro con foco en los procesos de negocio Informe ADECCO: Ej. “Programador JAVA” • Importantes intereses económicos: Ej: Airbus, Boeing y 787 “Dreamliner” Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de 5 Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Ámbito de los Procesos de Negocio • Gestión de empresas y organizaciones (Enterprise Management) Enterprise Modelling • Enterprise Architectures Scheduling, planning Business Process Management • Business Process Modelling • Despliegue (deployment)* [también en Enterprise Architectures] Subcontratación (outsourcing) Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 4. Modelado de Procesos de Negocio • Business Process Modelling (BPM) BPM también (Business Process Management) [Ko 2009][Ko 2009b] “Representar los procesos de negocio de una empresa u organización con objeto de que puedan ser analizados y mejorados”: • Validación: Se realizan todas la tareas, ciclos • Simulación: Ahorro de costes antes de la implementación Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Modelado de Procesos de Negocio (II) • Antecedentes y ejemplos: Grupos de trabajo sobre workflow • WfMC Estándares y lenguajes de workflow • Redes de Petri • Activity diagrams • YAWL (Yet Another Workflow Language, Aalst) Metodologías de modelado de procesos • Proclets [Aalst 2001] • AMENITIES [Garrido 2003] Patrones de workflow • Autores actuales: Wil van der Aalst (Marlon Dumas, Arthur ter Hofstede...) Fabio Casati Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 5. Modelado de Procesos de Negocio (III) system architect Collaborative System • Principales responsables: Coop-Task mortgageGranting * 1..* 1..* payroll Organization * Group unpaids headOfRisk: appraiser: collectApplicantData value * * connect accounts * valuationReport [Finished] 1..* 1..* 1..* < play * Role * headOfRisk: * Actor feasibilityStudy * connect * * Analistas, Arquitectos/ * * * debtReport Goal * check > [Refusal] Law Capability [Hesitant] debtReport to achieve * * Status interrupt assign/remove * * 1..* bankManager+headOfRisk: [Passed] * decideConcession Task diseñadores, desarrolladores [Refusal] [Passed] * Cooperative headOfRisk: Protocol conversational- prepareDocuments Task communication Requirements * Event { face-to-face draft shared-workspace} * 1 send/receive bankManager: Work del sistema de información giveApproval Unit trigger draft * * [Signed] * Subactivity Action * headOfRisk: teller: * createDeed openAccount * do * do use * use produce/use * * Information Object * Artefact * design titleDeed [Unsigned] notary+bankManager+client: agreeAndSign Protocol negotiation- communication Requirements { face-to-face shared-workspace} decisions titleDeed [Signed] * use AMENITIES conceptual framework Interaction for collaborative systems Protocol Organization Branch [BankManager?] Role BankManager Role HeadOfRisk 1 [H structural [Absent(BankManger)] ea dO [MortgageApplied] NewClient fR isk [Teller?] ?] Coop-Task MortgageGranting Task ServeClient 1 view Role Teller Role HeadOfRisk 2 1 Role Valuer [MortgageApplied] Organization ValuationOffice Organization NotaryOffice Coop-Task MortgageGranting 1 Role Director Role Notary 1 1 [Absent(Director)] [Director?] [Notary?] [Valuer?] Role Valuer [Agent?] Role Agent behavioral 2 3 views diferent views of the system model Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Beneficios perseguidos/obtenidos • Para la organización: Efectividad se concreta lo que ha de llevarse a cabo Eficiencia reutilización de procesos probados como más eficientes Consistencia detección de tareas no realizables, prerrequisitos,... Productividad reutilización de procesos más productivos Ahorro asignación de costes (de tiempo, espacio y económicos) e identificación de los procesos más ventajosos Calidad, mejora general de los procesos Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 6. Beneficios perseguidos/obtenidos (II) • Para el analista: Agilización del proceso de desarrollo y, por tanto, de la carga de trabajo Identificación de errores en fases tempranas Mayor nivel de abstracción Independencia de plataformas tecnológicas concretas • El modelo de negocio y la tecnología que lo soporta pueden evolucionar por separado Model-driven Architecture (MDA) Trazabilidad del sistema, por identificación de tareas y su asignación a procedimientos manuales o automatizados Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Elementos de un Modelo de Proceso de Negocio • Típicamente: Objetivo(s) o motivo del proceso Entradas Salidas Recursos utilizados Secuencia de Actividades Eventos que dirigen el proceso Roles/participantes involucrados Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 7. Notaciones de modelado • Algunos lenguajes y estándares: Redes de Petri Carl Adam Petri Diagramas de Actividades de UML OMG SPEM (Software Process Engineering Meta-Model) OMG BPMN (Business Process Modeling Notation) OMG XPDL (XML Process Definition Language) WfMC IDEF (Integration DEFinition) U.S. Air Force EPC (Event-driven Process Chain) ARIS – Architecture of Integrated Information Systems, Scheer Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Notaciones de modelado. Tipos • Dependiendo de las metodologías y estrategias empleadas: Orientados a proceso: Se centran en las diferentes tareas a completar para llevar a cabo un proceso completo Orientados a recurso: Se centran en la utilización y distribución de los recursos que son necesarios para llevar a cabo la realización del proceso Orientados a datos: Se centran en la definición de los datos y en las transformaciones que sufren estos a los largo del proceso Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 8. Criterios • Expresividad La capacidad de modelar la complejidad de los procesos de negocio. Regla de medida Patrones de workflow (van der Aalst) La capacidad de representar roles y su asignación a diferentes tareas • Capacidad para especificar las características de calidad de los procesos de negocio • Capacidad para especificar repositorios de procesos que nos permitan la reutilización de procesos mediante la utilización de conceptos como la variabilidad y la extensibilidad • Capacidad para especificar atributos que nos permitan gestionar los procesos (monitorizar, controlar o planificar los mismos) Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Criterios (II) • Permitir una vista multi-nivel de los procesos para partiendo de descripciones más comprensibles de alto nivel o agregados, tener la posibilidad de alcanzar niveles con gran cantidad de detalles • Ser comprensible para aquellos que no son especialistas en modelado. Esta característica es especialmente útil si con posterioridad se pretende utilizar los modelos para la fase de análisis de requisitos • Permitir la integración y soporte para otro tipo de notaciones que nos facilitará una mejor interacción entre las herramientas que den soporte a estas notaciones Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 9. Herramientas • Soyatec eBPMN • Bonita Open Solution • Magic Draw • EPF Composer (Eclipse Process Framework) • Star UML Procesos de desarrollo de software Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 BPMN • Business Process Modeling Notation [OMG 2009] Estándar del OMG Notación gráfica fácil de entender por analistas, implementadores • y también gestores, clientes, proveedores... (i.e., stakeholders) Reduce la distancia entre el diseño de un proceso de negocio y su implementación Habilita la visualización de especificaciones en el lenguaje XML para la ejecución de procesos Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 10. BPMN. Elementos Básicos Elementos de modelado para la creación de diagramas de procesos de negocio sencillos Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 BPMN. Conjunto completo de Eventos Un evento es algo que ocurre durante el transcurso de un proceso de negocio Los eventos interfieren en el flujo de un proceso y normalmente tienen un disparador o un resultado Pueden iniciar, interrumpir o finalizar un flujo Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 11. BPMN. Conjunto completo de Actividades Una actividad representa un trabajo realizado dentro de un proceso de negocio Puede ser simple o compuesta Tipos de actividades: Proceso, Sub-proceos y tarea Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 BPMN. Conjunto completo de Actividades (II) Un Sub-proceso puede mostrarse en forma expandida revelando detalles sobre actividades de menor nivel de abstracción Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 12. BPMN. Conjunto completo de Conectores Los flujos de secuencia muestran el orden en que deben realizarse las actividades dentro de un proceso Un flujo de mensaje indica el orden en que se intercambian mensajes dos entidades preparadas para ello Las asociaciones relacionan información y artefactos con objetos de flujo Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 BPMN. Conjunto completo de Pasarelas Las “pasarelas” (gateways) se utilizan para bifurcar y coordinar flujos de control alternativos o concurrentes Si no hay que coordinarlo, no hay por qué usarlas Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 13. BPMN. Conjunto completo de Calles Una “piscina” (pool) es un contenedor gráfico para particionar un conjunto de actividades Una “calle” (lane) es una partición (vertical u horizontal) dentro de una piscina a lo largo de la misma Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 BPMN. Conjunto completo de Calles (II) Pueden anidarse Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 14. BPMN. Conjunto completo de Artefactos Los objetos de datos no son objetos de flujo (conectados por flujos de secuencia) Proveen información sobre documentos, datos y otros objetos de un proceso Las anotaciones de texto son un mecanismo para proporcionar información adicional al usuario de un diagrama Los grupos sirven para organizar visualmente las actividades Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Ejemplo de un Flujo Normal Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 15. Ejemplo de modelado B2B Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Ejemplo de modelado B2B (II) Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 16. Ejemplo de Gestión de Excepciones Los eventos intermedios sobre el borde de una actividad representan disparadores que pueden interrumpir dicha actividad Toda la ejecución de la actividad se detiene y el flujo prosigue a partir del evento Ejemplos: excepciones, mensajes, temporizadores, etc. Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Ejemplo de Gestión de Compensación y Transacciones Las transacciones son subprocesos representados con borde doble Se sigue el flujo normal de salida cuando se completa con éxito Un evento intermedio de cancelación representa el camino a seguir cuando se cancela una actividad Ídem para los eventos intermedios de excepciones o errores Las actividades de compensación están fuera del flujo normal del proceso Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 17. Un proceso complejo Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 La vida real W.M.P. Aalst. “TRENDS IN BUSINESS PROCESS ANALYSIS. From Verification to Process Mining”, ICEIS 2007, INSTICC, Medeira, Portugal, pp. 12–22 (2007) Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 18. Ejemplo de mapeo a BPEL4WS <process name="EMailVotingProcess"> <!-- The Process data is defined first--> <sequence> <receive partnerLink="Internal" portType="tns:processPort" operation="receiveIssueList“ variable="processData" createInstance="Yes"/> <invoke name="ReviewIssueList" partnerLink="Internal" portType="tns:internalPort" operation="sendIssueList" inputVariable="processData“ outputVariable="processData"/> <switch name="Anyissuesready"> <!-- name="Yes" --> <case condition="bpws:getVariableProperty(ProcessData,NumIssues)>0"> <invoke name=“DiscussionCycle“ partnerLink="Internal" portType="tns:processPort" operation=“callDiscussionCycle" inputVariable="processData"/> <!– Other Activities not shown --> <!--name="No" --> </case> <otherwise> <empty/> </otherwise> </switch> </sequence> Departamento de Lenguajes y Sistemas Informáticos </process> Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 BPMN. ¿Objetivos/Goals?* • Whitestein • URN – User Requirements Notation (ITU), [Pourshahid 2009] • Business Motivation Model (OMG) • Patente: “Method and tool for business process adaptation using goal modeling and analysis” [A. Lapouchnian et al.] *Tema de un posible trabajo para el curso Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 19. Investigación Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Investigación Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 20. Bibliografía • [Aalst 2001] W.M.P. van der Aalst, P. Barthelmess, C.A. Ellis, J. Wainer. “Proclets: A Framework for Lightweight Interacting Workflow Processes”, International Journal of Cooperative Systems 10(4), 2001, pp. 443-481 • [Dayal 2001] U. Dayal, M. Hsu, and R. Ladin. “Business Process Coordination: State of the Art, Trends, and Open Issues”. 27th International Conference on Very Large Data Bases (VLDB 2001), pp. 3-13, Roma, Italy, 2001. Morgan Kaufmann • [Davenport 1993] T.H. Davenport. “Process innovation : reengineering work through information technology”. Boston, Mass.: Harvard Business School Press, 1993 • [Garrido 2003] J.L. Garrido. “AMENITIES: Una metodología para el desarrollo de sistemas cooperativos basada en modelos de comportamiento y tareas”. Tesis Doctoral, Granada 2003 Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Bibliografía • [Ko 2009] R.K.L. Ko. “A Computer Scientist's Introductory Guide to Business Process Management (BPM)”. http://www.acm.org/crossroads/xrds15-4/bpm.html • [Ko 2009b] R.K.L. Ko, S.S.G. Lee, E. Lee. “Business process management (BPM) standards: a survey”. Journal:Business Process Management Journal, 2009, Volume 15 (5), pp.744 – 791 • [OMG 2009] OMG. "Business Process Model and Notation 2.0 Beta 1 Specification. http://www.omg.org/cgi-bin/doc?dtc/09-08-14 • [Ould 1995] M.A. Ould. “Business Process: Modelling and Analysis for Re-engineering and Improvement”. Baffins Lane, Chichester, England: John Wiley & Sons Ltd, 1995 • [Pourshahid 2009] A. Pourshahid, D. Amyot, L. Peyton, S. Ghanavati, P. Chen, M. Weiss A.J. Forster. “Business process management with the user requirements notation“. Electronic Commerce Research, Volume 9, Number 4, Springer, pp. 269-316 Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 21. Ejercicio • Modelar un proceso de negocio para un sistema de gestión de reservas de vuelo. Algunos requisitos: Existen 3 operadores de reservas distribuidos Los clientes pueden interactuar con ellos a través de Internet El número de plazas del avión es limitado Se requiere confirmación de la reserva en el plazo de cinco minutos. En otro caso habrá de cancelarse La reserva se lleva a cabo en una única transacción El pago ha de recibirse en el plazo de un día Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Introducción al Modelado de Procesos de Negocio Profesores: Kawtar Benghazi José Luis Garrido Bullejos Manuel Noguera García Invitados: Lawrence Chung (UT Dallas, EEUU) Wil van der Aalst (TU Eindhoven, Holanda) Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 22. Detección de inconsitencias • Ej. de actividad no alcanzable en BPEL Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Patrones de workflow (van der Aalst) • van der Aalst, W., ter Hofstede, A., Kiepuszewski, B. & Barros, A. (2003), ‘Workflow patterns’, Distributed and Parallel Databases 14(3), 5–51 (enlace) • 20 patrones de workflow clasificados en: De control básico de flujo: Describen los aspectos elementales del control de flujo de los procesos De ramificación avanzada y sincronización Patrones estructurales: Permiten identificar limitaciones estructurales de los procesos, en especial aquellas relacionadas con bucles y terminaciones Patrones con múltiples instancias: Comprenden aquellas situaciones en las que puede haber ejecutándose varias instancias de una misma actividad dentro de una misma instancia de un proceso Patrones basados en estado: Permiten describir situaciones donde el siguiente paso de la ejecución de la instancia de un proceso viene determinado por el estado de la propia instancia Patrones de cancelación: Para representar la terminación de actividades e instancias de procesos cuando concurren ciertas circunstancias Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 23. Ejemplos: Red de Petri Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11 Ejemplo: Diagrama de Actividad Coop-Task mortgageGranting payroll unpaids headOfRisk: appraiser: collectApplicantData value accounts valuationReport [Finished] headOfRisk: feasibilityStudy debtReport [Refusal] debtReport [Hesitant] Status bankManager+headOfRisk: [Passed] decideConcession [Refusal] [Passed] headOfRisk: Protocol conversational- prepareDocuments communication Requirements { face-to-face draft shared-workspace} bankManager: giveApproval draft [Signed] headOfRisk: teller: createDeed openAccount titleDeed [Unsigned] notary+bankManager+client: Protocol negotiation- agreeAndSign communication Requirements { face-to-face shared-workspace} titleDeed Departamento de Lenguajes y Sistemas Informáticos [Signed] Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11
  • 24. Ejemplo: Diagrama de Actividad (II) Activity replace_stock issue_purchase send_to_vendors <<d=5 days>> confirm_order <<d=10 days>> confirm_order [else] confirm_order contract_vendor order_payment Departamento de Lenguajes y Sistemas Informáticos Máster en Desarrollo de Universidad de Granada Software Manuel Noguera – Sistemas Colaborativos y Procesos de Negocio 10-11