Oracle BPM Suite Component Interaction

Configuring High Availability for Oracle Fusion Middleware SOA Suite 5-25 ■ BPM Infrastructure Libraries: The most important BPM Infrastructure Libraries are: – OBPI: The Oracle Business Process Interface provides functionality to access information about process instances, user tasks, and so on. It deploys as a library in WebLogic Server and exposes an EJB interface as well as Spring Beans for dependency injection. The OBPI leverages existing SOA Services such as Human Workflow Service, Identity Service, and Facade API. OBPI is the primary interface for clients that want to access the BPM Infrastructure. – PML: The Project Metadata Layer is an internal API for managing BPM projects. It leverages MDS for storage, retrieval and labeling of BPM projects and is used by BPM Composer and the BPMN Service Engine – Analytics: The Analytics library provides a set of functionality to manage Process Cubes. The library exposes a EJB3 stateless interface and uses JPAEclipseLink for persistence. This library is used by BPM Workspace.

5.4.1.2 Oracle BPM Suite Component Interaction

This section uses Table 5–1 to show how the BPM Suite components interact and the tasks that can be performed by each component during the execution of a BPMN process. After the heading row in Table 5–1 , each row in the table is for a particular BPM Suite component. After the first column in Table 5–1 , each column heading represents a point in time during the execution of the BPMN process. T1 is the first point in time, T2 is the next point in time, and so on. T8 is the last point in time for the process execution. The tasks that can be performed by each component are shown in the row for that component at the point in time that the task is performed during the BPMN process execution. Note: Since Oracle BPMN Service Engine is the core piece of BPM Suite, special attention and description of it is provided in the following sections. Table 5–1 Tasks Performed by BPM Suite Components During BPMN Process Execution Component T1 T2 T3 T4 T5 T6 T7 T8 BPM Workspace Instantiate process instance using Initiate Task Approve user task Monitor task performa nce and workload Monitor process performa nce BPM Composer Deploy BPM project 5-26 Oracle Fusion Middleware High Availability Guide The following list provides additional details about the eight points in time T1 through T8 during the BPMN process execution shown in Table 5–1 : ■ T1: The example in Table 5–1 assumes that a BPM project is available either in BPM Studio or BPM Composer and is ready for deployment. As part of deploying a BPM project from BPM Studio or BPM Composer, an SCA archive is created and transferred to the standard SOA Composite Deployer Servlet running in the WebLogic Server. The composite deployer servlet stores the content of the BPM Project in MDS and notifies the appropriate service engines that a new BPM Project has been deployed. After that, the BPMN Service Engine is ready to receive requests for processing. ■ T2: There are two ways to initiate a BPMN process: – Using an Initiate Task: If the user has modeled a Initiate Task in the BPMN process diagram to start the process instance, then after deployment the task would become visible in BPM Workspace and the process instance can be started from here. – Invocation of the Composite Service using any Web Service WS client Using an Initiate Task: In the case where the BPMN Process exposes a service interface, that service is exposed as a composite service and as such any WS client can be used to instantiate the process instance. ■ T3: The BPMN Service Engine starts executing the process and continues executing it until the first User Task is executed. For a User Task, the BPMN Service Engine creates a Human Task using OBPI. As a result, a new task is created in the SOA Infrastructure dehydration store. ■ T4: BPM Workspace uses OBPI to query new tasks for display in the Worklist. The user logged into BPM Workspace is supposed to work on the task. Eventually the task is approved or rejected and work on it has completed. BPM Workspace uses OBPI to complete the task. BPMN Service Engine Execute process instance Continue execution of process instance Complete process instance BPM Studio Deploy BPM project Web Service WS Client Instantiate process instance invoking composite service Return result Table 5–1 Cont. Tasks Performed by BPM Suite Components During BPMN Process Execution Component T1 T2 T3 T4 T5 T6 T7 T8 Configuring High Availability for Oracle Fusion Middleware SOA Suite 5-27 ■ T5: When the task is completed, that also completes the User Task Activity in the BPMN Process, and the process is able to continue. ■ T6: At any time during the execution of the process instance, a user might use BPM Workspace to monitor the task performance and workload. For this, BPM Workspace leverages the Cube Persistence API to query task performance data from the Process Cubes stored in the database. ■ T7: Eventually the BPMN process is completed. ■ T8: Typically, the last step in a BPMN process is to return a result via a Message End Event to the client that invoked the process. When the process has completed, a user may use BPM Workspace to monitor the process performance.

5.4.1.3 Oracle BPM Suite Startup and Shutdown Lifecycle