SlideShare a Scribd company logo
1 of 92
Download to read offline
Oracle BPM 11g Developer Lesson -1
Name – Rakesh Gujjarlapudi

Email Address – rakesh_gujj@yahoo.com
LESSON 1 - OVERVIEW
SAMPLE APPLICATION
THE PERMIT PROCESSING SCENARIO

In this workshop, we will utilize the full BPM Lifecycle around a specific use-case of permit processing
to achieve continuous process improvement.

                                   Oracle BPM Full Life Cycle

                                                Process
                                               Modelling


                             Process                          Process
                            Monitoring                      Improvement




                                    Process              Process
                                  Iteraction         Implementation


The City needs to manage the processing of construction and building permits submitted by local
citizens. This is currently a very manual and time consuming process. The applicant submits permit
applications either online or in person in the city hall. This has to be reviewed by zoning and planning
officers to make sure that the permit can be granted. This also has to be reviewed by the appropriate
construction officials responsible for electrical, plumbing, fire and building codes. Once approved, the
payment for the permit will be processed and the applicant will be notified of the approval.




                                                                          Construction
           Permit Applicant      Zoning Officer                             Officials
                                                      Planning Officer
              Applies for         Reviews Site                              Reviews
                                                       Reviews Plans
               Permit             Information                             Construction
                                                                             Code
The City also utilizes a couple of web services for this process from other agencies and vendors – a
Zoning Information Service and a 3rd party Payment Processing Service.




                  Zoning Information Service                        Payment Processing
                  A service that determines how a                        Service
                   property is zoned based on the            A service that processes credit card
                  address - Commercial, Industrial,          or electronic bank payments for the
                 Residential, Open Acess or Historical                      permit




The existing process can be described by the following characteristics:


      The City is receiving an         An applicant takes an           The City employs 8 Zoning
     average of 10 requests for       average of 5 minutes to         Officers taking an average of
     permit applications every          complete a permit              2 hours to complete a site
               hour.                       application.                  review per application.



                                        The City utilizes 10            The Zoning Information
    The City employs 5 Planning
                                    Construction Officials taking      Service and the Payment
    Officers taking an average of
                                    an average of 30 minutes to       Processing Service are both
          1 hour to review
                                         review the permit             averaging 30 seconds to
       construction plans per
                                     construction codes of an          process a transaction for
             application.
                                            application.                   each application.




                                    There is a 5% rejection rate
                                      for permit applications.
Oracle BPM Suite 11G will be used to accomplish the following:


                  Process Modeling          •Model the City ’s current permitting process.



                                            •Leverage simulation tools and optimization techniques to
               Process Improvement           optimize the process.


              Process Implementation        •Deploy the implemented process including service integration and
                  & Deployment               human workflow to the run-time environment.


                                            •Execute the process, engaging the various process participants
                 Process Interaction         using a work list application.


                                            •Monitor the overall performance of the permitting process using
                 Process Monitoring          real-time dashboards.
INTRODUCTION TO ORACLE BUSINESS PROCESS MANAGEMENT
The Oracle BPM Suite provides an integrated environment for developing, administering, and using business
applications centered on business processes. It enables us to create process models based on standards with
user-friendly applications. It enables collaboration between process developers and process analysts. Oracle
BPM supports BPMN 2.0 and BPEL across the process lifecycle starting from modeling and implementation to
run time and monitoring.

The Oracle BPM Suite provides a seamless integration of all stages of the application development life cycle
from design-time and implementation to run-time and application management. The Oracle BPM Suite is
layered on the Oracle SOA Suite and shares many of the same product components, including:

       Business Rules
       Human Workflow
       Oracle Adapter Framework for Integration
       Spring Components
       Oracle Web Service Manager

BUSINESS PROCESS MANAGEMENT ROLES & RESPONSIBILITIES

Different stages of the application development life cycle require interaction from different types of users.
PROCESS ANALYST
Process analysts are responsible for creating the initial flow of a business process and documenting its steps.
This includes identifying and defining the KPIs and high level rules that define the routing artifacts of the
business process. This person may also perform simulations to calculate and estimate ROI. Process analysts
typically use Business Process Composer to create process models. They may also use process analyst role
within Oracle BPM Studio for modelling and simulation.

You will play the role of the Process Analysts during Lab 1 - Process Modelling and Lab 2 - Process Improvement.


PROCESS DEVELOPER
Process developers are responsible for implementing the process models created by process analysts. Each step
in the process requires an implementation. The process developer is responsible for integrating the business
process with back-end applications like databases and services. Process developers typically use Oracle BPM
Studio to model and implement the components of a business application.

We will be deploying a fully implemented process during Lab 3 - Process Deployment. The Day 2 format of this
workshop will focus on the role of the Process Developer.

PROCESS PARTICIPANTS
Process participants are the people who use the business applications created with the Oracle BPM Suite.
Process participants typically use Oracle BPM Workspace or Process Spaces in the Oracle WebCenter Suite.

In this workshop, we have process participants such as the permit applicant, the zoning and planning officers
and certain constriction officials who will be interacting with the permitting process. You will play the roles of
these participants during Lab 4 - Process Interaction.

PROCESS OWNER
Process owners are responsible for controlling and managing deployed business processes. They are responsible
for the overall supervision of the running business process. They often use metric analysis tools like dashboards
to understand the current state of the managed business processes. Process owners typically use Oracle BPM
Workspace. They also use Business Process Composer to change the behavior of a process by editing Oracle
Business Rules. They may also use the Oracle BAM console to view metrics dashboards.

You will play the role of the Process Owner during Lab 4 - Process Interaction and Lab 5- Process Monitoring.

PROCESS ADMINISTRATOR
Process administrators are responsible for administering the BPM infrastructure. Typical activities include the
installation and setup of BPM environments and the overall management of the BPM

Engines that are hosting business processes. The main tool used by business administrators is the Oracle
Enterprise Manager and automated tools like Ant. Business administrators also use Workspace to manage
organizational units, role assignments and perform other activities like creating workflow advanced routing
declarations.

This workshop does not cover the Process Administrator role but has several of the administrative tasks in
setting up the BPM environment documented in the Appendices.

In summary, the Oracle BPM Solution spans all these business process roles and responsibilities and ties these in
with Enterprise Architecture and Governance initiatives of an organization in a Complete Business Process
Management Lifecycle, as indicated below
LESSON 1 – PROCESS MODELLING

The first stage of the Business Process Management life cycle is Process Modelling. During this stage a process
analyst creates process models based on real-world business processes and problems.


                                                Process
                                               Modelling


                           Process                            Process
                          Monitoring                        Improvement




                                    Process              Process
                                  Iteraction         Implementation


Business Process Modelling Notation (BPMN) is an industry standard notation for defining business processes.
The Oracle BPM Suite supports BPMN 2.0. The BPM Suite 11G provides BPMN design time modelling
capabilities using the Oracle BPM Studio and the Oracle Business Process Composer, which will run natively on
its BPMN 2.0 run-time engine. For this lab, we will utilize Oracle Business Process Composer for our initial
process modelling activities.

Oracle Business Process Composer
The Oracle Business Process Composer is a web-based application that enables business users to collaborate
with process developers and designers.
     Provides a user friendly environment for composing processes and process templates.
     Enables process analysts to create process blueprints, which are initial drafts of a process that can be
        used by process developers as a starting point for implementation in Oracle BPM Studio.
     Enables certain users to edit business rules at run time. This is important because policies tend to evolve
        faster that business processes.

CREATING A BPM PROJECT WITH A BUSINESS PROCESS

To get started, let’s use the Business Process Composer to create a new BPM project for the Permit Process.
    1. Start Oracle Business Process Composer by clicking on the BPM Composer icon from the desktop.




    2. This will bring up the Business Process Composer login screen in a web browser. Optionally, you can also
       enter the URL directly from your browser: http://localhost/bpm/composer.

                Login as the Process Analyst using the following:
                User Name: Rakesh.Gujjarlapudi
                Password: welcome1
3. Create a new project by clicking on                 from the top-right and enter the following
   information
   Name: PermitProject
   Description: Process management of construction permits




   Click Finish to create the project.
4. Click the New Process option as shown below.




5. Name the process PermitProcess, and click Create button.




6. You should now see your new Permit Process. Click the Save button from the top, to save your project
   and process. Double click PermitProcess to open the process.
By default, it creates a process with a simple Message Start and Message End.
7. Now, we will add roles and activities to build the most expected path of the Permit Process project.
   Let’s add the first role. Hover your mouse to the side bar of the horizontal lane and you will find a pencil
   icon on it. Click the icon to edit.




    Select the Create option and name the new role Applicant.




8. To initiate the process, we’ll use an Initiator task from the BPMN components on the right.

    Click the             button under the BPMN component list on the right and find the Initiator from the
    list of Interactive components.
9. Drag the Initiator task to the arrow between the Start and End activities.




    Click the text of the User Task activity and rename it to Apply for Permit.




    Click                   button under the BPMN component list to collapse the list of components.
    Drag a new Interactive Task from the BPM Components to the white space below the Applicant lane.




    Click the text of the new User Task activity to rename it to Review Site Information.
Right Click on the Unassigned Role and select Properties. Select the Create radio
    button create a new role called Zoning Officer.




    Drag the end of the arrow coming from Apply for Permit down to Review Site Information as shown:




    Drag another User Task from the BPM Components to the white space below the Zoning
    Officer lane and rename it to Review Plans




10. Right Click on the Unassigned Role and select Properties. Click the create radio button to create a new
    role. Call the role Planning Officer.
11. Drag a Default connector from the Review Site Information task and connect it to the new Review Plans
    task as shown. To do this, just hover your mouse on the Review Site Information task and you will see
        button. Just click that button and drag it to the Review Plans.




12. Drag another User Task from the BPM Components to the white space below the Planning Officer lane
    and rename it to Review Construction Codes.




   Click on the Unassigned Role and then click the icon and create a new role called Construction Officials
   by choosing the create option.
Connect the Review Plans and new Review Construction Codes task in the same way as you did earlier.




Because we are using an Initiator to initiate the process, let’s change the Start and End type to None. To
do this, hover you mouse on the Start and click the pencil      icon. Change the Trigger to None. Do
the same for the End.




Move the End event object from the top Applicant lane down to the bottom Construction Officials lane.
Lastly, drag a Default connector from Review Construction Codes task and connect it to the End object.




13. The PermitProcess should now look like this




   Save the work
ADDING AUTOMATED ACTIVITIES

Add a couple automated activities to the process. These activities will be in the form of Service Tasks. We will
define Service Tasks for the following services:




                Zoning Information Service                     Payment Processing
                 A service that determines how a                    Service
                  property is zoned based on the          A service that processes credit card
                 address - Commercial, Industrial,        or electronic bank payments for the
                Residential, Open Acess or Historical                    permit




    1. We’ll use the Service Task from the BPMN components on the right. Click the                button under
       the BPMN component list on the right and find the Service Task from the list of Activity components.




        Drag two Service Task components to the PermitProcess diagram as shown. One will be in between the
        Apply for Permit and Review Site Information tasks and the other one will be between the Review
        Construction Codes and the End object.

        Tip: When you drag the service tasks to the diagram, drag it to the connectors you want to insert it into.
        While dragging, mouse over the connectors and wait for them to pulse or get highlighted, and then
        release it. This way, the service tasks will be inserted in between.
Rename the first Service Task to Get Zoning Information.




Rename the second Service Task to Process Payment.

PermitProcess will now look like this:
Save your work
ADDING AN ALTERNATE PATH

Add an alternative path to what’s expected. For the permit process, there is the possibility that the permit
application will not meet the correct zoning, planning and construction requirements. In this case, the
application has to be rejected and sent back to the applicant.

    1. To determine the outcome of the reviews, add a conditional gateway right after the last review activity
       before payment is processed. Drag a Gateway object from the BPMN Components to the arrow
       between the Review Construction Codes and the Process Payment tasks.




        Rename the Exclusive Gateway to Review Outcome.




        We are sending back rejected applications to the applicant.
        To do this, do the following:
            a. Hover your mouse on Review Outcome and then use the icon to connect it to Apply for Permit.
            b. Drag the middle of the sequence flow arrow outbound to make the arrow cornered as shown
                below.
Save your work.

The Permit Process should look like
2. Close the project by selecting Close Project from the drop-down on the upper right section of the page.




   Log out of Oracle Business Process Composer by clicking Sign Out from the top right corner and close
   your web browser.




   As simple as it is, this process is our starting point for modelling the Permit Process. This is the “As- Is”
   model for the Permit Process. It represents the current way permits are processed which may not be as
   optimized as we want it to there are still several areas for improvement.

   Exercise:
   List down areas for improvement that you see in this permit process.
LESSON 2 – PROCESS IMPROVEMENT

The whole point of BPM is for continuous process improvement. The next stage focuses on the Process
Improvement aspect of Business Process Management. In this stage, we will identify potential bottlenecks in the
Permit Process using process simulations and then optimize the process by adjusting the model in Oracle BPM
Studio.


                                              Process
                                             Modelling


                         Process                           Process
                        Monitoring                       Improvement




                                  Process              Process
                                Iteraction         Implementation


ORACLE BPM STUDIO
Oracle BPM Studio is a component of the Oracle BPM Suite that enables process developers to create process-
based applications. It also enables process analysts and developers to model and simulate business processes.

Oracle BPM Studio is part of the Oracle JDeveloper IDE and shares the JDeveloper user interface elements used
by the Oracle SOA Suite. The JDeveloper environment can be tailored based on the role selected by the user.
Oracle BPM Studio includes the Analyst Role which only includes process design elements that are useful to
business analysts. Process developers who need access to the complete functionality of the Oracle BPM and
SOA Suites should use the default role.

IMPRORING PROCESS MODEL INTO ORACLE BPM STUDIO

   1. Start Oracle BPM Studio by clicking on the BPM Studio icon from the desktop.




       When prompted to select a role, select Default Role and click OK. This will allow us to download the
       Permit Process from the Oracle BPM Metadata Service (MDS) repository.
Create a new BPM Application by clicking New Application and name it
PermitApplication. Make sure that the Directory is pointed to
/home/oracle/jdeveloper/mywork/. Also make sure that the BPM Application is selected in the
Application Template. Click Finish.

Note that there is a default project called Project1, which we are not going to use. We will download the
project from the MDS Repository. Right-click on Project1 and select Delete Project and choose the
option to Remove the project and delete all of its contents (including source directories) and confirm
the deletion.




                                                                 Save all
2. Click on the third tab from the left. This is the BPM MDS Navigator. From there, select the option to
   Configure Connection as shown. (Note: If you do not see the BPM MDS Navigator, you can select this
   from the top menu – View > BPM MDS Navigator.)




   Select BPM_MDS when prompted for an MDS Connection, and click OK.

   Note: This connection has already been pre-configured to point to your BPM MDS Repository. Please
   refer to Appendix A on how to configure the BPM MDS Repository connection.




3. In the BPM MDS Navigator, you will see your PermitProject as shown. Right-click
   on it and select Check Out.

4. Note: If you notice that the PermitProject icon has a pad-lock on it like this:
                 . It means that it was not closed properly in Oracle BPM Composer.
   You can force this to close by right-clicking PermitProject and selecting Unlock,
   and then Check out
5. When asked if you want to migrate the project, select Yes. Then click OK to finish.




6. Click on the second tab from the left – BPM Project Navigator, and from there,
   expand the PermitProject > Process folder. Double click PermitProcess. You
   should now see the Permit Process diagram in Oracle BPM Studio.




   Tip: Change the View to 75% to see the full process (or your preference).

   Note that you will see yellow warning icons on each activity. This is because these
   activities have not been implemented yet and you are logged in with the Default
Role. If you want to view this without warnings, you can click on the Highlight
Level below the diagram, and slide the level to the middle to hide warnings and
only show errors.
CREATING STIMULATION MODEL
By running simulations, business analysts and developers can predict the behaviour of business processes under
specified conditions. They can run simulations to verify that the output meets the metric objectives and identify
any bottlenecks. They can also run simulations to test the effects of changes on an existing process design.

First, we need to define a Simulation Model. A Simulation Model enables you to define the behaviour for an
individual process model. Note that, for any given process model, you can have multiple simulation models, so
that you can mimic a variety of scenarios.

    1. From the BPM Project Navigator, navigate from PermitProcess > Simulations and right- click on
       Simulation model. Select New Simulation Model to define a simulation model.




        Click OK to Create the Simulation Model with the default name.




        You should see the Simulation Model that will allow you to configure the behavioural characteristics of
        the process including the duration of each activity, the resources and costs involved, queuing
        information and the probabilities of each outgoing flow from occurring.
2. Use the following characteristics for the Permit Process and capture the characteristics in the simulation
   model



          The City is receiving an         An applicant takes an         The City employs 8 Zoning
         average of 10 requests for       average of 5 minutes to       Officers taking an average of
         permit applications every          complete a permit            2 hours to complete a site
                   hour.                       application.                review per application.



                                            The City utilizes 10          The Zoning Information
        The City employs 5 Planning
                                        Construction Officials taking    Service and the Payment
        Officers taking an average of
                                        an average of 30 minutes to     Processing Service are both
              1 hour to review
                                             review the permit           averaging 30 seconds to
           construction plans per
                                         construction codes of an        process a transaction for
                 application.
                                                application.                 each application.




                                        There is a 5% rejection rate
                                          for permit applications.




3. Click the Start node from the list of Flow Nodes on the left. Define the average of 10 requests per hour
   for permit applications by setting the Start node’s distribution type to Exponential with an Average
   Frequency of 10 Instances every 1 hour as follows:
Click the Apply for Permit node from the list of Flow Nodes on the left. The 5 minute average for an
application to complete a permit application can be specified by setting the Apply for Permit node’s
Mean duration to 5 minutes as follows:




Click the Review Site Information node from the list of Flow Nodes on the left. The 2 hour average to
complete a site review can be specified by setting the Review Site Information node’s Mean duration to
2 hours as follows:




From the Review Site Information node, click the Resources tab. The City’s 8 zoning Officers doing site
reviews can be can be specified by setting the Available Resources to 8.
Click the Review Plans node from the list of Flow Nodes on the left. The 1 hour average to complete a
plan review can be specified by setting the Review Plans node’s Mean duration to 1 hour as follows:




From the Review Plans node, click the Resources tab. The City’s 5 Planning Officers doing site reviews
can be can be specified by setting the Available Resources to 5




Click the Review Construction Codes node from the list of Flow Nodes on the left. The 30 minute
average to complete a construction code review can be specified by setting the Review Construction
Codes node’s Mean duration to 30 minutes as follows:




From the Review Construction Codes node, click the Resources tab. The City’s 10 Construction Officials
doing construction code reviews can be can be specified by setting the Available Resources to 10
Click the Get Zoning Information node from the list of Flow Nodes on the left. Verify the 30 second
durations for the Zoning Information Service. This is the default value so no change is needed.




Click the Process Payment node from the list of Flow Nodes on the left. Verify the 30 second durations
for the Payment Processing Service. This is the default value so no change is needed.




Lastly, Click the Review Outcome node from the list of Flow Nodes on the left. Define the 5% Rejection
Rate in the probabilities of the Review Outcome such that:
a) There is a 5% probability that it will go to Apply for Permit
b) There is 95% a probability that it goes to Process Payment.

You can define this by dragging the probability sliders in the Outgoing Flows as follows.

Note: Make sure you specify the percentage correctly for the Apply for Permit and Process
Payment flows, as sometimes the order these flows are shown below is different.




Save the Simulation Model.
CREATING STIMULATION DEFINITION
Next, we need to create a Simulation Definition. A Simulation Definition enables you to define the processes and
resources that define a simulation scenario. In a simulation definition, you specify the processes that participate
in the simulation by selecting the simulation models associated to those processes. A process may have multiple
simulation models defined for it. If a process has multiple simulations models defined, then you must select one
of those models to use in the simulation definition.

    1. From the BPM Project Navigator, navigate from PermitProcess > Simulations and right- click on
       Simulation Definition. Select New Simulation.




        Click OK to Create the Simulation Definition with the default name.




        You should see the Simulation Definition that will allow you to set the start time, duration, models and
        resources used in the simulation.
        Set the Duration for 1 Day and check the box to Include in simulation for the PermitProcess
        SimulationModel as shown.




        Save the Simulation Definition.
RUNNING THE SIMULATION

Now, with the simulation definition and model, let’s run a simulation on the Permit Process.

    1. Click on the Permit Process to view the process diagram and click the Simulation tab below.




        Click the   icon to start the simulation.

        Observe the process diagram for bottlenecks.
Note that there is an obvious bottleneck in the Zoning Officer’s queue as indicated by the waiting queue
being marked as Red. This means that the 8 Zoning Officers are not able to handle the incoming workload.
Because the process is single threaded (all activities are sequential), all succeeding tasks are affected by this
bottleneck.

Stop the Simulation.
IMPROVING THE PROCESS WITH PARALELL ACTIVITY

One quick approach to improve the process is to parallelize certain activities. Let’s assume that there are no
dependencies between the work of the Zoning and Planning officers. In this case, we can make these activities
go in parallel.

    2. From the Component Palette on the right, drag the Parallel Gateway to the process diagram.




        Name the Parallel Gateway Parallel Reviews.




        You should see the Parallel Gateway added to your process. (Note: The red error icons simply indicate
        that the gateways are not connected to your process yet).

        To visually show that Review Site Information and Review Plans will go in parallel, position the Review
        Site Information and Review Plans to be vertically aligned and stretch the parallel gateway and in the
        middle of the 2 activities as follows:
3. Adjust the existing arrows in your process to connect to the parallel gateway to the Review Site
   Information and Review Plans by doing the following

        a. Drag the end of the connector going from Get Zoning Information to Review Site Information to
           make it connect to the start of the Parallel Reviews gateway:




        b. Drag the end of the Parallel Reviews connector to make it connect to Review Site Information:




        c. Drag the end of the connector going from Review Site Information to Review Plans to make it
           connect to the end of the Parallel Gateway:
d. Drag the end of the connector going from Review Plans to Review ConstructionCodes to make it
          connect to the end of the ParallelGateway:




       e.


4. You should now have something like this:
5. Right click on the Parallel Reviews gateway and select Add default sequence flow to connect it to the
   Review Plans task.




6. Add an Exclusive Gateway after the Parallel Gateway and call this Preliminary Review Outcome. This will
   loop back to the applicant in case there are rejections from the Zoning or Planning officers.




7. Create the loopback by right-clicking on the new gateway, selecting Add conditional sequence flow and
   connecting it to the Apply for Permit task.
8. Add default sequence flows to connect the ParallelGateway to the Preliminary Review Outcome
   gateway and to the Review Construction Codes task as shown. (Note: Adjust the other objects as
   needed)




9. Save the model

10. Run the simulation again. Notice that the bottleneck has now been divided between the 2 parallel
    activities. There is still queuing going on in each activity.
11. Stop the Simulation
IMPROVING THE PROCESS WITH PARALELL ACTIVITY

Another approach to improve the process is to bypass the execution of long running tasks using decisions made
by a rules engine. For the Permit Process, we can add a Business Rule to evaluate permits based on zoning and
project size and allow certain types of permits based on this information to skip the preliminary reviews. The
business rule will basically determine that certain projects may not require reviews from the Plan Officer and
the Zoning Officer.

   1. From the Component Palette on the right, drag a Business Rule to the process diagram, right after the
      Get Zoning Information task. (Hint: Drag it to the arrow and release when the arrow shows with a color
      blue. This will make automatically insert in between without having to define new sequence flows.)




       Name the Business Rule Evaluate Permit.




       Add an Exclusive Gateway after the business rule and call this Evaluation Outcome. This will determine
       whether preliminary review can be bypassed.
Add a conditional sequence flow from the new gateway to connect straight to the Review Construction
Codes task. Drag the arrow from the middle going outward to make it cornered. Adjust the other objects
to make room. The process should look like the following:
Let’s assume that with this new rule, 75% of the applications will not require preliminary review. Go to
the Simulation Model and adjust the Evaluation Outcome with a 75% probability of going to the
outgoing flow to Review Construction Codes.




Also adjust the Preliminary Review Outcome to have a 5% Rejection Rate.
Run the simulation again. Notice that the process is now executing very efficiently.
VIEWING SIMULATION METRICS

  1. While the simulation is still running, double click the simulation tab to maximize it.




  2. Look at some simulation metrics. Click the Configure icon       . Uncheck all the checkboxes under
     Units and check the Average process time and Average Waiting
     Time under Time. This will show us the time the process spends executing and waiting. Ideally, there
     should be minimal waiting time.
Click on the Drill Down icon to get a breakdown by activity.




Change the Column chart to a Bar chart and click on       to increase the font size until the fonts on the
right are readable.




Notice the breakdown of activities. Most of the time is spent processing, not waiting. The only activity
that’s spent waiting is when an applicant applies for a permit. This shows that the Permit Process is now
operating efficiently.
Stop the Simulation by clicking the icon.

Click the Save All icon

Go to the Application Navigator tab and with the PermitProject selected, select Close from the
Application menu.




Through process simulation, we have identified potential bottlenecks in our “As-Is” process and have
continuously improved it in our new “To-Be” Process. Next, we will move on to the next phase of the
BPM Lifecycle – Process Implementation.
LESSON 3 – PROCESS IMPLEMENTATION


                                            Process
                                           Modelling


                       Process                            Process
                      Monitoring                        Improvement




                                Process              Process
                              Iteraction         Implementation


This lesson will examine the fully implemented Permit Process developed by the Process Developer and deploy
it to the unified run-time environment. For all of these implementation activities, the Process Developer
leveraged declarative tools from the Oracle Fusion Middleware SOA Suite to design and construct the required
logic without having to do any custom coding. We will explore the following implementation activities:

      Human Task Implementation – Defining the human workflow task configuration for each interactivity
       activity in the process. Oracle SOA Suite Human Workflow component is used to define tasks.

      Service Task Implementation – Utilizing web services to integrate with back end services such as a
       zoning information system and a payment database system. Oracle SOA Suite Database Adapter to
       generate database operation services. Oracle SOA Suite Transformation Tools to declaratively transform
       the permit data object to the database structure.

      Business Logic Implementation – Defining a business rule to determine how to process permit
       applications. Oracle SOA Suite Business Rules component to create a decision table exposed as a
       decision service. You will also define the conditional expressions to control the process flow logic and a
       script task to initialize the process data objects.

      Business Activity Monitoring Implementation – Defining business indicators in the process and
       enabling the use of Oracle Business Activity Monitoring (BAM).

      User Interface Forms Generation and Customization – Generating user task forms for each human task
       and customizing the generated form to improve the end user interaction. The generated task forms are
       based on the Oracle Application Development Framework (ADF). Oracle ADF components for
       customizing the task forms.

      Process Deployment - Mapping the process roles to the actual roles that these users are assigned to in a
       Corporate Directory/LDAP Server and then deploying the process to the BPM/SOA runtime environment
       running on Oracle WebLogic Suite. Oracle WebLogic Embedded LDAP server for the users and groups.
       All the users and their corresponding groups have already been defined in the Oracle WebLogic
       Embedded LDAP Server.
OPENING THE COMPLETED APPLICATION

Open and deploy a BPM application that has already been completely implemented by the Process Developer.

   1. Start Oracle BPM Studio. When prompted to select a role, select Default Role and click OK.




       From the Application menu, select Open and navigate to /home/oracle/MyFiles/PermitApplication.
       Complete and open the file PermitApplication.jws




                                                          .
       You should see the completed PermitProject folder on the Application Navigator along with 3 generated
       forms projects – PermitApplicationForm, PermitContsructionOfficialForm, and PermitReviewForm.




       Click on the BPM Project Navigator and expand the PermitProject > Process folder.
       Double click PermitProcess. You should now see the fully implemented Permit Process diagram in Oracle
       BPM Studio.
EXAMINING HUMAN TASKS

Examine the Human Tasks for each interactive activity. Interactive activities are the ones with the green boxes.



    2. The Apply for Permit task is the task that initiates the PermitProcess. Double-click the Apply for Permit
       task and click on the Implementation tab. This task is a User Task implemented using a Human Task
       definition called PermitApplicationTask.




        Click OK. To see the Human Task definition file, right-click the Apply for Permit task and select Open
        Human Task.
Since this is the first user task, this utilizes the Initiator Pattern to allow the Applicant to submit a Permit
Application. Notice the outcome of SUBMIT.




Click on Data and see how the task is using the PermitApplication as its input with the Editable setting
checked. This will allow the Permit Applicant to edit the Permit Application during submission or re-
submission.




Back in the BPM process diagram; examine the Review Site Information and Review Plans tasks by
double-clicking them. Both of these tasks use the Human Task definition called PermitReviewTask.
View the Human Task definition by right-clicking on the task and select Open Human Task.




As shown in the Task Definition, the Permit Review task is defined using the default Simple pattern and
can return different outcomes – in this case the defaults - APPROVE or REJECT. Users will be able to
choose one of these outcomes to complete the task. (Note that you can configure additional outcomes
if needed).




Click on Data and notice that this task is read-only, the Editable is unchecked. This makes the permit
application data read-only for the reviewers.




Close the PermitReviewTask.task file to go back to the BPM Process diagram.

Examine the last task, Review Construction Codes, by double-clicking it. The task is using the Human
Task definition called ConstructionCodeReviewTask.
View the Human Task definition by right-clicking on the task and select Open Human Task.




As shown in the Task Definition, this task implements a complex pattern because the permit will have to
dynamically assigned to the appropriate official depending on the type of permit. Route to 2 officials –
the Plumbing Official for plumbing related permits and the Electrical Official for electrical related
permits.

Click the Assignments tab from the right to see the complex workflow pattern.
EXAMINING SERVICE TASKS

Examine the Service Tasks of the automated activities. Automated activities are the ones with the blue boxes.




    1. Let’s take a look at the first automated activity, Get Zoning Information. Web Service.
       From the BPM Process, double-click the first automated activity, Get Zoning Information and click the
        Implementation tab. Click the     icon and how this is implemented by a Service Call using a SOAP Web
        Service called ZoningInformationService.




    2. Click the Data Associations link to review the data associations.
       In the Data Association, view the Input and Output tabs to see the input and output mappings.
       The block, lot and siteAddress come from the Permit Application and the ZoningInformaationService
       returns the Zone.
3. Examine the last automated activity, Process Payment. Typically, the process payment activity will be
   handled by another process that will orchestrate the calls to an external credit card validation service
   and potentially internal billing and order management systems.

4. For simplicity invoke a database operation to store the payment information in a database table.
   This service task utilizes the Database Adapter to insert the Payment Information to the Payment
   database table. From the BPM Process, double-click the last automated activity, Process Payment and
   click the Implementation tab. Notice how it uses the insert operation of the PaymentProcessingService.




    It also transforms the data from the permit application to the payment database table. Click the Data
    Associations link to open the transformation.
Click the Counter tab. A counter mark is used in this activity to count the number of permit approvals
that has reached payment processing.
EXAMINING THE BUISNESS RULES

Examine the Business Rule for determining whether permit applications require preliminary reviews or not. The
business rule is the one with the yellow box.




   1. From the BPM Process, double-click Evaluate Permit business rule and click the Implementation tab. See
      that this task is using the PermitApplicationRules business rule.




       Click the Data Associations link. Notice how PermitApplication is assigned as the input and output. The
       rule takes in the PermitApplicationInput, evaluates it and returns the same object with the
       applicationEvaluationResults field populated with either: REVIEWS_REQUIRED or
       NO_REVIEW_REQUIRED.
In the Output tab, notice how we are setting the applicationStatus as Submitted and the
referenceNumber using a system function called getCompositeInstanceID.




In the Output tab, we are also initializing the values of 3 Business Indicators: Cost, TypeOfWork and
Zone with data coming from the Permit Application and Zoning Service. These business indicators will be
used for monitoring the process in business dashboards.
Click OK and go to the Counter tab. A counter mark is used in this activity to count the number of permit
   applications that has been evaluated.




   Click OK to go back to the BPM Process.

2. From the BPM Process, right click the Evaluate Permit business rule activity and select Open Business
   Rule.
This will bring you to the Rules Editor with a Decision Table with the following rule logic: Small projects
will return NO_REVIEWS_REQUIRED, Medium and Large projects will return REVIEWS_REQUIRED.




To see how Small, Medium and Large are defined, let’s review the Local List of Ranges, also called a
Bucket Set. This bucket set will be used to classify the permit applications based on the estimated cost
of the permit application.

Click on PermitApplication.summary.estimatedCost under Conditions. Make sure Local List of Ranges is
selected and click the      icon next to it.




The ProjectSize bucket set defines what is considered large, medium and small based on the permit
application’s estimated costs using the following ranges:

       Projects greater than or equal $100,000 are large projects.
       Projects greater than or equal $10,000 and less than $100,000 are medium projects.
       Projects less than $10,000 are small projects.
Click Ok.
        Close the Rules Editor by clicking the x button on the tab.


EXAMINING THE CONDITIONAL LOGIC

Examine the conditional logic of the process. We will take a look at the expressions for each conditional
transition.

    1. Double-click the transition that returns from the Preliminary Review Outcome gateway going back to
       Apply for Permit. This condition occurs when either the Zoning Office rejects the site information or the
       planning office rejects the plans.
Click on the Properties tab and review the condition:




Click Ok.

Next, double-click the transition that bypasses the preliminary reviews to go straight to the Review
Construction Codes. This condition occurs when EvaluatePermit business rule returns a value of
NoReviewRequired.
Click on the Properties tab and review the condition:




Click Ok.

Lastly, double-click the transition that returns from the Review Outcome gateway going back to Apply
for Permit. This condition occurs when the Construction Officials reject the construction codes.
Click on the Properties tab and review the condition:




        Click OK


EXAMINING THE SCRIPT TASK

Examine how the Process Developer made use of a Script task to initialize our permit application with an XML
data structure. The Script task is useful for initiating or setting any constant values in the data objects. For the
purposes of this workshop, initialize the permit application with default data to save us from having to type all
the information manually when we run this.

    2. Double-click the Initialize Permit Application script task and click the Implementation tab.




    3. Check the Data Associations link.




        From the Data Associations, notice how the Permit Application is being initialized with data in XML
        format.
Double click the icon      on the left of PermitApplication to review the XML that contains default
values we are assigning to the permit process.




Click OK on all dialog boxes until you’re back in the BPM Process.

To validate that there are no problems, click the Make icon in JDeveloper.
Note: The Compiler Output will show warnings about the Error assignee not specified. You can ignore
       these warnings.

EXAMINING THE USER INTERFACE
For users to interact with the human task in the Permit Process, we will need some UI forms. The integrated
development environment of Oracle BPM Suite includes Oracle Application Development Framework (Oracle
ADF) for this purpose. With Oracle ADF, you can design a task form that depicts the human task in the BPM
Process. You can also automatically generate the forms based on the input and output parameters defined for
the task form. In this lab, we will examine the task forms generated and customized by the Process Developer
for each of the human tasks in the process:

      Apply for Permit
      Review Site Information
      Review Plans
      Review Construction Codes

   1. Click on the Application Navigator, see 3 additional projects: Permit ApplicationForm,
      PermitReviewForm and PermitConstructionOfficialForm, together with your PermitProject.

       Under each project, you will see a file called taskDetails1.jspx. This is the generated task form that the
       Process Developer customized.
2. Open the taskDetails1.jspx file of the PermitApplicationForm project and review the various ADF
   components used:




3. Open the taskDetails1.jspx file of the PermitReviewForm project and review the various ADF
   components used:




4. Open the taskDetails1.jspx file of the PermitConstructionReviewForm project and review the various
   ADF components used:
5. Close all .jspx forms


ASSIGN PROCESS PARTICIPANTS
BPM is about tying in People, Process and Technology. We’ve create the Process, configured the Technology,
now let’s review how the People participate in the process

The following users will be participating in the Permitting Process with the respective roles and responsibilities:




The Process Roles you see in the diagram are mapped to the actual roles that these users are assigned to in the
Corporate Directory/LDAP Server. For this workshop, we will use the embedded LDAP server in the WebLogic
Application Server. All these users and their corresponding groups have already been defined in the LDAP
Server.
1. From the BPM Project Navigator, expand the PermitProject folder and double click Organization. You
   should see the Organization Editor in Oracle BPM Studio showing the process roles.




   Review how each process role is mapped to the LDAP Group. You should see the mappings defined in
   this table:

   Process Role                                        LDAP Group
   Applicant                                           Citizens
   Construction Officials                              PlumbingOfficials
                                                       ElectricalOfficials
   Planning Officer                                    PlanningOfficers
   Process Owner                                       PermitProcessOwners
   Zoning Officer                                      ZoningOfficers
DEPLOYING THE PROCESS
  2. Go to the Application Navigator and right-click the PermitProject. Select Deploy > PermitProject.




      Choose Deploy to Application Server and click Next.
Click Next to accept the default Revision ID.




Make sure you check the boxes to select the 3 task form projects. This will include these projects in the
deployment. Click Next.




Select the Application server SCAServer and click Next.
Click Next to accept the default partition.




Click Finish to proceed with the deployment
This may take a few minutes since each task form all has to be uploaded and deployed. Monitor the
Deployment log and wait for the following message:




Troubleshooting Tip: If you get deployment issues about “No credential mapper entry found for
password indirection”, go to 'Application Properties' -> Deployment -> Uncheck the 'Auto Generate
and Synchronize weblogic-jdbc.xml Descriptors During Deployment' option and try deploying again.




After successful deployment, close JDeveloper
LESSON 4 – PROCESS INTERACTION
Focus on the Process Interaction stage of the Business Process Management life cycle. In this stage, we will
engage the various Process Participants in interacting with the business process using the BPM Workspace


                                        Process
                                       Modelling


                   Process                                 Process
                  Monitoring                             Improvement




                            Process                Process
                          Iteraction           Implementation


We will use the following Process Participants with their corresponding roles and responsibilities.

                                                Bob Builder
                                Citizen and Owner of Bob and Sons Construction
                                   Needs to Apply for a Construction Permit


                                                   John Zone
                                               Zoning Officer, City
                               Needs to Review Site Information for Proper Zoning


                                                  Mary Plana
                                              Planning Officer, City
                                    Needs to Review the Construction Plans


                                                Chris Plummer
                                             Plumbing Official, City
                                        Needs to Review Plumbing Codes


                                                 Karen Elektra
                                             Electrical Official, City
                                        Needs to Review Electrical Codes


                                                   Mike Scott
                                 Department Head in Charge of Permitting, City
                                   Needs to Oversee the Permitting Process
ORACLE BPM WORKSPACE

The Oracle BPM Workspace is a web-based application that allows process participants to interact with process
applications deployed in Oracle BPM. The Oracle BPM Workspace user interface provides tabs for each of the
following:

      Process Instances: This tab enables process participants to view running process instances.
      Task List: This tab enables process participants to view and work with their assigned tasks.
      Process Dashboards: This tab provides out-of-the-box dashboards for monitoring process performance,
       task performance and workload.
      Custom Dashboards: This tab enables process participants to define and use custom dashboard based
       on the measurement data generated by process instances.

The Oracle BPM Workspace also enables business administrators to configure and maintain organizations and
roles.


BOB APPLIES FOR A CONSTRUCTION PERMIT

Let’s start interacting with the Process as Bob Builder, the owner of a construction company who wants to apply
for a permit for a new construction project in the City

   1. Start Oracle BPM Workspace by clicking on the BPM Workspace icon from the desktop




       This will bring up the BPM Workspace login screen in a web browser. (Optionally, you can also enter the
       URL directly from your browser:
       http://soa.odemo.com/bpm/workspace.

       Login as the permit applicant, Bob Builder using the following:
       User Name:      Bob.Builder
       Password:       welcome1
The BPM Workspace displays tasks that have been assigned to the user in the My Tasks section. In this
case, Bob does not have any tasks assigned to him. As a permit applicant, he has the ability to initiate
the Permit Process. You will see the Permit Process in the list of Applications on the left.




To initiate the process, click on PermitProcess from the list of Applications. This will bring up a window
for the Permit Application Data Entry form.
Notice all the fields have already been prefilled because of the Script Task that we added to the process.
        Review the information. Because the Estimated Cost is $1M, we should expect this to go through all the
        reviews.
        If you recall, our business rule specified that all large and medium projects $10,000 and above require
        reviews.

        Click Submit on the upper right corner of the form to submit the permit application

        Logout of the Oracle Business Process Workspace.

        Based on the process we modelled, this should have gone through the execution of the Zoning Service
        and the Business Rule, and because the Estimated Cost is $1 Million (more than the business rule’s
        “Small Project” maximum limit of $10,000), it will be routed to the Zoning Officer and the Planning
        Officer for preliminary reviews.

JOHN REVIEWS THE ZONING INFORMATION

Let’s login as the Zoning Officer John Zone to review the site information.

1.      Login as the Zoning Officer, John Zone using the following:
        User Name:      John.Zone
        Password:       welcome1

        The BPM Workspace displays tasks that have been assigned to the user in the My Tasks section. In this
        case, John has a new task assigned, a permit application waiting for his review of the site information.




        Double-click on the task Permit Review – Site Information. You should see a new window pop up with
        the Permit Information submitted.
Also notice the values under Permit Application – System. These were generated by the BPM Process,
        such as the unique Reference Number and the Application Status. The Evaluate Permit Business Rule
        determined the Application Evaluation Results of Reviews Required. The Zoning Information Service
        determined that this site is Commercial Zone.

        Click Approve. Notice the task disappears from John’s task list.




    1. Rakesh

MARY REVIEWS THE CONSTRUCTION PLANS
The permit is still awaiting the approval of the planning officer. Let’s login as the Planning Officer Mary Plana.

    1. Login as the Planning Officer, Mary Plana using the following:
       User Name:      Mary.Plana
       Password:       welcome1

        Like John, Mary has a new task assigned, a permit application waiting for her review of the construction
        plans. Single-click on the task Permit Review – Plans. You should see the Permit Application load in the
        bottom window.
From the Actions menu under My Tasks, select Approve.




        Notice the task disappears from Mary’s task list.
        Logout the BPM Workspace.

CHRIS VALIDATES THE PLUMBING CODES
After the permit gets reviewed by the zoning and planning officers, the codes should be approved by the
construction officials. In this case, it will have to go through 2 officials, the Plumbing Official and the Electrical
Official. Let’s login as Chris Plummer, a Plumbing Official.

    1. Login as the Plumbing Official, Chris Plummer using the following:
       User Name:      Chris.Plummer
       Password:       welcome1

        Chris should see a new task assigned, a permit application waiting for his review of the plumbing codes.
Double-click on the task. You should see the Permit Application popup in another window.

Scroll down to the end and in the Comments section, enter a comment about the Plumbing Codes.




From the Attachments section, click , choose a Desktop File Attachment Type and upload the
homepipes.pdf file found in /home/oracle/MyFiles/execution.
Scroll back up and click Approve.




KAREN VALIDATES THE ELECTRICAL CODES
  1. Let’s play the role of the Electrical Official.

      Login as the Electrical Official, Karen Elektra using the following:
      User Name:       Karen.Elektra
      Password:        welcome1

      Karen should see a new task assigned, a permit application waiting for her review of the electrical codes.




      Double-click on the task. You should see the Permit Application popup in another window.
      Scroll down to the end. Karen should see the Comment and Attachment entered by Chris.




      Enter another comment.




      Try opening the attachment by clicking the file link.
Scroll back up and click Approve.




MIKE TRACKS THE PROCESS
  1. Login as the Department Head, Mike Scott using the following:
     User Name:      Mike.Scott
     Password:       welcome1

     Mike should see the permit application on his task list because if you recall, there was an FYI task
     assigned to the Process Owner at the end of the complex task. It’s not waiting for his approval though
     because it is just an FYI.
Scroll down and look at the comments and attachments section from the previous approvers.




As the Process Owner, click on Process Tracking. Because it already completed, the task does not show
up by default. Click on the Advanced link above button to change the filter with the Status set to
Completed.




Click on the completed instance that shows up. From the instance details section below, scroll down and
expand the Audit Trail to see each activity in a tabular format.
Change it to Graphical Format to see the process flow that you modelled and track the path that the
    execution took. Click the small arrows on the top right and bottom left corners of the Instance Details to
    maximize the process map.




2. Press the F11 key to view in full screen. Once it’s maximized, you should see the process execution flow
   with the shaded green arrows indicating the execution path.
The last activity of Process Payment should have resulted in a new record inserted in the database. To
verify this, start JDeveloper and go to the Database Navigator. Note: If you do not see the Database
Navigator, you can enable this by selecting View > Database > Database Navigator.




From the Database Navigator, expand PermitApplication > PermitAppDB > Tables and double-click the
PERMIT_APPLICATION table. Click on the Data tab below and you should see the Permit Application
record with the same reference number.
RUNNING THE PROCESS FOR DIFFERENT SCENARIOS

Execute the process again using different scenarios. For example, try the following:

Try rejecting certain tasks and analyze the loopback behaviour.

Try submitting a permit application with Estimated Cost less than $10,000 to bypass the preliminary
reviews.

Try submitting a permit application with the Require Plumbing Permit or Require Electrical Permit check
boxes unchecked to skip the approvals needed from the Plumbing or Electrical officials.

Submit 10 or more permit applications and leave some of the permit applications sitting on the various
users’ task inbox without any action. We will use this for monitoring dashboards in the next lab.
LESSON 5 – PROCESS MONITORING
                                        Process
                                       Modelling


                   Process                            Process
                  Monitoring                        Improvement




                            Process              Process
                          Iteraction         Implementation


The next stage focuses on the Process Monitoring aspect of Business Process Management. In this stage, we will
monitor the activity of the process using Process Analytics. Process Analytics enable you to obtain performance
and workload metrics which are useful for making more intelligent decisions about your process.

BUSINESS PROCESS ANALYTICS

Business Process Analytics enables you to monitor the performance of your deployed processes. It measures the
key performance indicators in your project and stores them in pre-defined cubes in the database that enable
you to analyze the data in multiple perspectives. You can also store the metrics in the Oracle Business Activity
Monitoring (BAM) database for real-time monitoring. Process analysts can view the metrics using dashboards
from the Oracle BPM Workspace or Oracle Business Activity Monitoring (BAM).

In summary, Process Analytics track:

       Workload Metrics
       Process and Activity Performance Metrics
       Human Resource Metrics

By default, the BPM Engine stores the values of pre-defined measures and dimensions that are common to all
BPM processes. The supported pre-defined measures are:

       Number of active instances by activity, process, and participant
       Average time to complete an activity
       Average time to complete a process

The supported pre-defined dimensions are:

       Process
       Activity
       Participant

You can also define custom measures according to your needs. To define custom measures, you use business
indicators. The different types of business indicators enable you to measure specific values, keep track of
categories or count the times an instance completes one or more activities
MONITORING PROCESS USING STANDARD DASH BOARDS
  1. Login as the Department Head, Mike Scott using the following:
     User Name:      Mike.Scott
     Password:       welcome1Rakesh

      Click the Standard Dashboards tab to view the predefined metrics. Workload per process dashboard
      should be selected by default. This dashboard shows the number of instances sitting in the process. This
      should show you how many times your Permit Process was initiated.

      Click on the bar in the left graph and a new graph on the right will be displayed to show you the number
      of instances sitting in each activity.

      Click on any of the bars in the right graph and this will load the actual process instances below.




  2. Change the view to show Performance per process. This dashboard shows the average time your
     process takes to complete.

  3. Click on the bar in the left graph and a new graph on the right will be displayed to show you the average
     time it takes each activity in that process to complete.

  4. Click on any of the bars in the right graph and this will load the actual process instances below
5. Change the view to show Workload per participant. This dashboard shows the number of instances
   sitting for each participant. It will give the process owner an indication of human resource workload and
   bottlenecks

6. Click on the bar in the left graph and a new graph on the right will be displayed to show you the
   processes the selected participant are involved with and the number of instances for each. In our
   example, we only have 1 process, so only the Permit Process will show up there.

7. Click on any of the bars in the right graph and this will load the actual process instances below.




8. Change the view to show Performance per participant. This dashboard shows the average time each
   user takes to process their tasks. It will give the process owner an indication of human resource
   performance and bottlenecks.
9. Click on the bar in the left graph and a new graph on the right will be displayed to show you the
   processes the selected participant are involved with and the average time the user spends for each. In
   our example, we only have 1 process, so only the Permit Process will show up there.

10. Click on any of the bars in the right graph and this will load the actual process instances below.




    Completed The Lessons
Oracle BPM 11g Lesson 1

More Related Content

What's hot

IBM Business Process Management
IBM Business Process ManagementIBM Business Process Management
IBM Business Process ManagementAsif Hussain
 
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03Dennis Parrott
 
IBM BPM Case Manager for knowledge workers
IBM BPM Case Manager for knowledge workersIBM BPM Case Manager for knowledge workers
IBM BPM Case Manager for knowledge workerssflynn073
 
IBM Smarter Business 2012 - Headless BPM
IBM Smarter Business 2012 - Headless BPMIBM Smarter Business 2012 - Headless BPM
IBM Smarter Business 2012 - Headless BPMIBM Sverige
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...Brian Petrini
 
IBM BPM off prem options
IBM BPM off prem options IBM BPM off prem options
IBM BPM off prem options sflynn073
 
How EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work togetherHow EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work togetherAlexander SAMARIN
 
Adeptia BPM Suite datasheet
Adeptia BPM Suite datasheetAdeptia BPM Suite datasheet
Adeptia BPM Suite datasheetAdeptia
 
SOA - BPM
SOA - BPMSOA - BPM
SOA - BPMibankuk
 
Impact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top PracticesImpact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top PracticesBrian Petrini
 
What's new in IBM BPM 8.5.7 CF2017.06
What's new in IBM BPM 8.5.7 CF2017.06What's new in IBM BPM 8.5.7 CF2017.06
What's new in IBM BPM 8.5.7 CF2017.06Dennis Parrott
 
Modern BPM for Process Innovation
Modern BPM for Process InnovationModern BPM for Process Innovation
Modern BPM for Process InnovationAppian
 
What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7Dennis Parrott
 
Extend SAP processes using IBM BPM Webinar July-2016
Extend SAP processes using IBM BPM Webinar July-2016Extend SAP processes using IBM BPM Webinar July-2016
Extend SAP processes using IBM BPM Webinar July-2016Logan Vadivelu
 
IBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made Easy
IBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made EasyIBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made Easy
IBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made EasyBrian Petrini
 
New Engineering Client for Agile PLM
New Engineering Client for Agile PLMNew Engineering Client for Agile PLM
New Engineering Client for Agile PLMZero Wait-State
 
BPM Design Review Approach
BPM Design Review ApproachBPM Design Review Approach
BPM Design Review ApproachScott Simmons
 
Methods To Leverage SAP Workflow
Methods To Leverage SAP WorkflowMethods To Leverage SAP Workflow
Methods To Leverage SAP WorkflowEric Stajda
 

What's hot (20)

IBM Business Process Management
IBM Business Process ManagementIBM Business Process Management
IBM Business Process Management
 
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
 
IBM BPM Case Manager for knowledge workers
IBM BPM Case Manager for knowledge workersIBM BPM Case Manager for knowledge workers
IBM BPM Case Manager for knowledge workers
 
Bpm soa
Bpm soaBpm soa
Bpm soa
 
IBM Smarter Business 2012 - Headless BPM
IBM Smarter Business 2012 - Headless BPMIBM Smarter Business 2012 - Headless BPM
IBM Smarter Business 2012 - Headless BPM
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
 
IBM BPM Overview
IBM BPM OverviewIBM BPM Overview
IBM BPM Overview
 
IBM BPM off prem options
IBM BPM off prem options IBM BPM off prem options
IBM BPM off prem options
 
How EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work togetherHow EA, BPM, SOA and ECM work together
How EA, BPM, SOA and ECM work together
 
Adeptia BPM Suite datasheet
Adeptia BPM Suite datasheetAdeptia BPM Suite datasheet
Adeptia BPM Suite datasheet
 
SOA - BPM
SOA - BPMSOA - BPM
SOA - BPM
 
Impact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top PracticesImpact 2013 2963 - IBM Business Process Manager Top Practices
Impact 2013 2963 - IBM Business Process Manager Top Practices
 
What's new in IBM BPM 8.5.7 CF2017.06
What's new in IBM BPM 8.5.7 CF2017.06What's new in IBM BPM 8.5.7 CF2017.06
What's new in IBM BPM 8.5.7 CF2017.06
 
Modern BPM for Process Innovation
Modern BPM for Process InnovationModern BPM for Process Innovation
Modern BPM for Process Innovation
 
What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7What's new in IBM BPM 8.5.7
What's new in IBM BPM 8.5.7
 
Extend SAP processes using IBM BPM Webinar July-2016
Extend SAP processes using IBM BPM Webinar July-2016Extend SAP processes using IBM BPM Webinar July-2016
Extend SAP processes using IBM BPM Webinar July-2016
 
IBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made Easy
IBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made EasyIBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made Easy
IBM Cloud University 2017-IDPA009-IBM BPM Upgrade and Migration Made Easy
 
New Engineering Client for Agile PLM
New Engineering Client for Agile PLMNew Engineering Client for Agile PLM
New Engineering Client for Agile PLM
 
BPM Design Review Approach
BPM Design Review ApproachBPM Design Review Approach
BPM Design Review Approach
 
Methods To Leverage SAP Workflow
Methods To Leverage SAP WorkflowMethods To Leverage SAP Workflow
Methods To Leverage SAP Workflow
 

Viewers also liked

Enterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cEnterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cRakesh Gujjarlapudi
 
Oracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPSOracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPSRakesh Gujjarlapudi
 
Oracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning TutorialOracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning TutorialRakesh Gujjarlapudi
 
Oracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSMOracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSMRakesh Gujjarlapudi
 
SOA OSB suite cluster installation
SOA OSB suite cluster installationSOA OSB suite cluster installation
SOA OSB suite cluster installationRakesh Gujjarlapudi
 
Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1Rakesh Gujjarlapudi
 
Lesson1 - SOA Governance Overview
Lesson1  - SOA Governance OverviewLesson1  - SOA Governance Overview
Lesson1 - SOA Governance OverviewRakesh Gujjarlapudi
 
Integrating Oracle BI, BPM and BAM 11g: The complete cycle of information
Integrating Oracle BI, BPM and BAM 11g: The complete cycle of informationIntegrating Oracle BI, BPM and BAM 11g: The complete cycle of information
Integrating Oracle BI, BPM and BAM 11g: The complete cycle of informationEdelweiss Kammermann
 
Oracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12COracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12CRakesh Gujjarlapudi
 
Weblogic Administration Managed Server migration
Weblogic Administration Managed Server migrationWeblogic Administration Managed Server migration
Weblogic Administration Managed Server migrationRakesh Gujjarlapudi
 
Mule JSON Schema Validator
Mule JSON Schema ValidatorMule JSON Schema Validator
Mule JSON Schema ValidatorAnkush Sharma
 

Viewers also liked (20)

Oracle BPM 11g Lesson 2
Oracle BPM 11g Lesson 2Oracle BPM 11g Lesson 2
Oracle BPM 11g Lesson 2
 
Enterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cEnterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12c
 
Oracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPSOracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPS
 
Oracle WebLogic 11g Topology
Oracle WebLogic 11g TopologyOracle WebLogic 11g Topology
Oracle WebLogic 11g Topology
 
Oracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning TutorialOracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning Tutorial
 
Oracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSMOracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSM
 
Oracle OSB Tutorial 3
Oracle OSB Tutorial 3Oracle OSB Tutorial 3
Oracle OSB Tutorial 3
 
Oracle OSB Tutorial 2
Oracle OSB Tutorial 2Oracle OSB Tutorial 2
Oracle OSB Tutorial 2
 
SOA OSB suite cluster installation
SOA OSB suite cluster installationSOA OSB suite cluster installation
SOA OSB suite cluster installation
 
Oracle EMC 12C Grand Tour
Oracle EMC 12C Grand TourOracle EMC 12C Grand Tour
Oracle EMC 12C Grand Tour
 
Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1
 
Lesson1 - SOA Governance Overview
Lesson1  - SOA Governance OverviewLesson1  - SOA Governance Overview
Lesson1 - SOA Governance Overview
 
Oracle EMC 12 Installation
Oracle EMC 12 InstallationOracle EMC 12 Installation
Oracle EMC 12 Installation
 
Integrating Oracle BI, BPM and BAM 11g: The complete cycle of information
Integrating Oracle BI, BPM and BAM 11g: The complete cycle of informationIntegrating Oracle BI, BPM and BAM 11g: The complete cycle of information
Integrating Oracle BI, BPM and BAM 11g: The complete cycle of information
 
Oracle ADF 11g Tutorial
Oracle ADF 11g TutorialOracle ADF 11g Tutorial
Oracle ADF 11g Tutorial
 
Oracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12COracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12C
 
Oracle API Gateway Installation
Oracle API Gateway InstallationOracle API Gateway Installation
Oracle API Gateway Installation
 
Oracle OSB Tutorial 1
Oracle OSB Tutorial 1Oracle OSB Tutorial 1
Oracle OSB Tutorial 1
 
Weblogic Administration Managed Server migration
Weblogic Administration Managed Server migrationWeblogic Administration Managed Server migration
Weblogic Administration Managed Server migration
 
Mule JSON Schema Validator
Mule JSON Schema ValidatorMule JSON Schema Validator
Mule JSON Schema Validator
 

Similar to Oracle BPM 11g Lesson 1

2006 mm,ks,jb (miami, florida bpm summit) xpdl tutorial
2006 mm,ks,jb (miami, florida   bpm summit) xpdl tutorial2006 mm,ks,jb (miami, florida   bpm summit) xpdl tutorial
2006 mm,ks,jb (miami, florida bpm summit) xpdl tutorialMike Marin
 
What is Robotics Process Automation ?
What is Robotics Process Automation ?What is Robotics Process Automation ?
What is Robotics Process Automation ?Aditya Sharma
 
Business Process Management
Business Process ManagementBusiness Process Management
Business Process ManagementSoftSol, Inc.
 
Workflow Manager for Software License Optimization
Workflow Manager for Software License OptimizationWorkflow Manager for Software License Optimization
Workflow Manager for Software License OptimizationFlexera
 
Pm for application development
Pm for application developmentPm for application development
Pm for application developmentAbdelrahman Serag
 
RajivRanjan_Resume
RajivRanjan_ResumeRajivRanjan_Resume
RajivRanjan_ResumeRajiv Ranjan
 
Vehical Registration Plan
Vehical Registration PlanVehical Registration Plan
Vehical Registration PlanRizwan Qamar
 
Webinar - The continuous improvement cycle of business processes
Webinar - The continuous improvement cycle of business processesWebinar - The continuous improvement cycle of business processes
Webinar - The continuous improvement cycle of business processesAuraQuantic
 
Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...
Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...
Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...ManageEngine
 
Software Lifecycle Management
Software Lifecycle ManagementSoftware Lifecycle Management
Software Lifecycle ManagementAnkit Jain
 
Next generation business automation with the red hat decision manager and red...
Next generation business automation with the red hat decision manager and red...Next generation business automation with the red hat decision manager and red...
Next generation business automation with the red hat decision manager and red...Masahiko Umeno
 
The New Frontier For Business Agility Intelligent Bpm
The New Frontier For Business Agility   Intelligent BpmThe New Frontier For Business Agility   Intelligent Bpm
The New Frontier For Business Agility Intelligent BpmNat Evans
 
2. oracle bpm soa 11g - simple - unified - complete
2. oracle bpm soa 11g - simple - unified - complete2. oracle bpm soa 11g - simple - unified - complete
2. oracle bpm soa 11g - simple - unified - completeDoina Draganescu
 
Nextgen Bpm End to End
Nextgen Bpm End to EndNextgen Bpm End to End
Nextgen Bpm End to EndTechnoPeers
 

Similar to Oracle BPM 11g Lesson 1 (20)

Workflow tecnologies
Workflow tecnologiesWorkflow tecnologies
Workflow tecnologies
 
2006 mm,ks,jb (miami, florida bpm summit) xpdl tutorial
2006 mm,ks,jb (miami, florida   bpm summit) xpdl tutorial2006 mm,ks,jb (miami, florida   bpm summit) xpdl tutorial
2006 mm,ks,jb (miami, florida bpm summit) xpdl tutorial
 
What is Robotics Process Automation ?
What is Robotics Process Automation ?What is Robotics Process Automation ?
What is Robotics Process Automation ?
 
Business Process Management
Business Process ManagementBusiness Process Management
Business Process Management
 
Rpa consulting service in cognic
Rpa consulting service in cognicRpa consulting service in cognic
Rpa consulting service in cognic
 
Workflow Manager for Software License Optimization
Workflow Manager for Software License OptimizationWorkflow Manager for Software License Optimization
Workflow Manager for Software License Optimization
 
Pm for application development
Pm for application developmentPm for application development
Pm for application development
 
BPM for developers
BPM for developersBPM for developers
BPM for developers
 
RajivRanjan_Resume
RajivRanjan_ResumeRajivRanjan_Resume
RajivRanjan_Resume
 
Vehical Registration Plan
Vehical Registration PlanVehical Registration Plan
Vehical Registration Plan
 
Webinar - The continuous improvement cycle of business processes
Webinar - The continuous improvement cycle of business processesWebinar - The continuous improvement cycle of business processes
Webinar - The continuous improvement cycle of business processes
 
Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...
Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...
Simple, effective 'Synthetic End-User Experience Monitoring' with ManageEngin...
 
Software Lifecycle Management
Software Lifecycle ManagementSoftware Lifecycle Management
Software Lifecycle Management
 
Next generation business automation with the red hat decision manager and red...
Next generation business automation with the red hat decision manager and red...Next generation business automation with the red hat decision manager and red...
Next generation business automation with the red hat decision manager and red...
 
Arunkumar Resume
Arunkumar ResumeArunkumar Resume
Arunkumar Resume
 
The New Frontier For Business Agility Intelligent Bpm
The New Frontier For Business Agility   Intelligent BpmThe New Frontier For Business Agility   Intelligent Bpm
The New Frontier For Business Agility Intelligent Bpm
 
UpwanGupta
UpwanGuptaUpwanGupta
UpwanGupta
 
2. oracle bpm soa 11g - simple - unified - complete
2. oracle bpm soa 11g - simple - unified - complete2. oracle bpm soa 11g - simple - unified - complete
2. oracle bpm soa 11g - simple - unified - complete
 
Nextgen Bpm End to End
Nextgen Bpm End to EndNextgen Bpm End to End
Nextgen Bpm End to End
 
Actviti bpm framework 1.0
Actviti bpm framework 1.0Actviti bpm framework 1.0
Actviti bpm framework 1.0
 

Oracle BPM 11g Lesson 1

  • 1. Oracle BPM 11g Developer Lesson -1 Name – Rakesh Gujjarlapudi Email Address – rakesh_gujj@yahoo.com
  • 2. LESSON 1 - OVERVIEW SAMPLE APPLICATION THE PERMIT PROCESSING SCENARIO In this workshop, we will utilize the full BPM Lifecycle around a specific use-case of permit processing to achieve continuous process improvement. Oracle BPM Full Life Cycle Process Modelling Process Process Monitoring Improvement Process Process Iteraction Implementation The City needs to manage the processing of construction and building permits submitted by local citizens. This is currently a very manual and time consuming process. The applicant submits permit applications either online or in person in the city hall. This has to be reviewed by zoning and planning officers to make sure that the permit can be granted. This also has to be reviewed by the appropriate construction officials responsible for electrical, plumbing, fire and building codes. Once approved, the payment for the permit will be processed and the applicant will be notified of the approval. Construction Permit Applicant Zoning Officer Officials Planning Officer Applies for Reviews Site Reviews Reviews Plans Permit Information Construction Code
  • 3. The City also utilizes a couple of web services for this process from other agencies and vendors – a Zoning Information Service and a 3rd party Payment Processing Service. Zoning Information Service Payment Processing A service that determines how a Service property is zoned based on the A service that processes credit card address - Commercial, Industrial, or electronic bank payments for the Residential, Open Acess or Historical permit The existing process can be described by the following characteristics: The City is receiving an An applicant takes an The City employs 8 Zoning average of 10 requests for average of 5 minutes to Officers taking an average of permit applications every complete a permit 2 hours to complete a site hour. application. review per application. The City utilizes 10 The Zoning Information The City employs 5 Planning Construction Officials taking Service and the Payment Officers taking an average of an average of 30 minutes to Processing Service are both 1 hour to review review the permit averaging 30 seconds to construction plans per construction codes of an process a transaction for application. application. each application. There is a 5% rejection rate for permit applications.
  • 4. Oracle BPM Suite 11G will be used to accomplish the following: Process Modeling •Model the City ’s current permitting process. •Leverage simulation tools and optimization techniques to Process Improvement optimize the process. Process Implementation •Deploy the implemented process including service integration and & Deployment human workflow to the run-time environment. •Execute the process, engaging the various process participants Process Interaction using a work list application. •Monitor the overall performance of the permitting process using Process Monitoring real-time dashboards.
  • 5. INTRODUCTION TO ORACLE BUSINESS PROCESS MANAGEMENT The Oracle BPM Suite provides an integrated environment for developing, administering, and using business applications centered on business processes. It enables us to create process models based on standards with user-friendly applications. It enables collaboration between process developers and process analysts. Oracle BPM supports BPMN 2.0 and BPEL across the process lifecycle starting from modeling and implementation to run time and monitoring. The Oracle BPM Suite provides a seamless integration of all stages of the application development life cycle from design-time and implementation to run-time and application management. The Oracle BPM Suite is layered on the Oracle SOA Suite and shares many of the same product components, including:  Business Rules  Human Workflow  Oracle Adapter Framework for Integration  Spring Components  Oracle Web Service Manager BUSINESS PROCESS MANAGEMENT ROLES & RESPONSIBILITIES Different stages of the application development life cycle require interaction from different types of users.
  • 6. PROCESS ANALYST Process analysts are responsible for creating the initial flow of a business process and documenting its steps. This includes identifying and defining the KPIs and high level rules that define the routing artifacts of the business process. This person may also perform simulations to calculate and estimate ROI. Process analysts typically use Business Process Composer to create process models. They may also use process analyst role within Oracle BPM Studio for modelling and simulation. You will play the role of the Process Analysts during Lab 1 - Process Modelling and Lab 2 - Process Improvement. PROCESS DEVELOPER Process developers are responsible for implementing the process models created by process analysts. Each step in the process requires an implementation. The process developer is responsible for integrating the business process with back-end applications like databases and services. Process developers typically use Oracle BPM Studio to model and implement the components of a business application. We will be deploying a fully implemented process during Lab 3 - Process Deployment. The Day 2 format of this workshop will focus on the role of the Process Developer. PROCESS PARTICIPANTS Process participants are the people who use the business applications created with the Oracle BPM Suite. Process participants typically use Oracle BPM Workspace or Process Spaces in the Oracle WebCenter Suite. In this workshop, we have process participants such as the permit applicant, the zoning and planning officers and certain constriction officials who will be interacting with the permitting process. You will play the roles of these participants during Lab 4 - Process Interaction. PROCESS OWNER Process owners are responsible for controlling and managing deployed business processes. They are responsible for the overall supervision of the running business process. They often use metric analysis tools like dashboards to understand the current state of the managed business processes. Process owners typically use Oracle BPM Workspace. They also use Business Process Composer to change the behavior of a process by editing Oracle Business Rules. They may also use the Oracle BAM console to view metrics dashboards. You will play the role of the Process Owner during Lab 4 - Process Interaction and Lab 5- Process Monitoring. PROCESS ADMINISTRATOR Process administrators are responsible for administering the BPM infrastructure. Typical activities include the installation and setup of BPM environments and the overall management of the BPM Engines that are hosting business processes. The main tool used by business administrators is the Oracle Enterprise Manager and automated tools like Ant. Business administrators also use Workspace to manage organizational units, role assignments and perform other activities like creating workflow advanced routing declarations. This workshop does not cover the Process Administrator role but has several of the administrative tasks in setting up the BPM environment documented in the Appendices. In summary, the Oracle BPM Solution spans all these business process roles and responsibilities and ties these in with Enterprise Architecture and Governance initiatives of an organization in a Complete Business Process Management Lifecycle, as indicated below
  • 7.
  • 8. LESSON 1 – PROCESS MODELLING The first stage of the Business Process Management life cycle is Process Modelling. During this stage a process analyst creates process models based on real-world business processes and problems. Process Modelling Process Process Monitoring Improvement Process Process Iteraction Implementation Business Process Modelling Notation (BPMN) is an industry standard notation for defining business processes. The Oracle BPM Suite supports BPMN 2.0. The BPM Suite 11G provides BPMN design time modelling capabilities using the Oracle BPM Studio and the Oracle Business Process Composer, which will run natively on its BPMN 2.0 run-time engine. For this lab, we will utilize Oracle Business Process Composer for our initial process modelling activities. Oracle Business Process Composer The Oracle Business Process Composer is a web-based application that enables business users to collaborate with process developers and designers.  Provides a user friendly environment for composing processes and process templates.  Enables process analysts to create process blueprints, which are initial drafts of a process that can be used by process developers as a starting point for implementation in Oracle BPM Studio.  Enables certain users to edit business rules at run time. This is important because policies tend to evolve faster that business processes. CREATING A BPM PROJECT WITH A BUSINESS PROCESS To get started, let’s use the Business Process Composer to create a new BPM project for the Permit Process. 1. Start Oracle Business Process Composer by clicking on the BPM Composer icon from the desktop. 2. This will bring up the Business Process Composer login screen in a web browser. Optionally, you can also enter the URL directly from your browser: http://localhost/bpm/composer. Login as the Process Analyst using the following: User Name: Rakesh.Gujjarlapudi Password: welcome1
  • 9. 3. Create a new project by clicking on from the top-right and enter the following information Name: PermitProject Description: Process management of construction permits Click Finish to create the project.
  • 10. 4. Click the New Process option as shown below. 5. Name the process PermitProcess, and click Create button. 6. You should now see your new Permit Process. Click the Save button from the top, to save your project and process. Double click PermitProcess to open the process.
  • 11. By default, it creates a process with a simple Message Start and Message End. 7. Now, we will add roles and activities to build the most expected path of the Permit Process project. Let’s add the first role. Hover your mouse to the side bar of the horizontal lane and you will find a pencil icon on it. Click the icon to edit. Select the Create option and name the new role Applicant. 8. To initiate the process, we’ll use an Initiator task from the BPMN components on the right. Click the button under the BPMN component list on the right and find the Initiator from the list of Interactive components.
  • 12. 9. Drag the Initiator task to the arrow between the Start and End activities. Click the text of the User Task activity and rename it to Apply for Permit. Click button under the BPMN component list to collapse the list of components. Drag a new Interactive Task from the BPM Components to the white space below the Applicant lane. Click the text of the new User Task activity to rename it to Review Site Information.
  • 13. Right Click on the Unassigned Role and select Properties. Select the Create radio button create a new role called Zoning Officer. Drag the end of the arrow coming from Apply for Permit down to Review Site Information as shown: Drag another User Task from the BPM Components to the white space below the Zoning Officer lane and rename it to Review Plans 10. Right Click on the Unassigned Role and select Properties. Click the create radio button to create a new role. Call the role Planning Officer.
  • 14. 11. Drag a Default connector from the Review Site Information task and connect it to the new Review Plans task as shown. To do this, just hover your mouse on the Review Site Information task and you will see button. Just click that button and drag it to the Review Plans. 12. Drag another User Task from the BPM Components to the white space below the Planning Officer lane and rename it to Review Construction Codes. Click on the Unassigned Role and then click the icon and create a new role called Construction Officials by choosing the create option.
  • 15. Connect the Review Plans and new Review Construction Codes task in the same way as you did earlier. Because we are using an Initiator to initiate the process, let’s change the Start and End type to None. To do this, hover you mouse on the Start and click the pencil icon. Change the Trigger to None. Do the same for the End. Move the End event object from the top Applicant lane down to the bottom Construction Officials lane.
  • 16. Lastly, drag a Default connector from Review Construction Codes task and connect it to the End object. 13. The PermitProcess should now look like this Save the work
  • 17. ADDING AUTOMATED ACTIVITIES Add a couple automated activities to the process. These activities will be in the form of Service Tasks. We will define Service Tasks for the following services: Zoning Information Service Payment Processing A service that determines how a Service property is zoned based on the A service that processes credit card address - Commercial, Industrial, or electronic bank payments for the Residential, Open Acess or Historical permit 1. We’ll use the Service Task from the BPMN components on the right. Click the button under the BPMN component list on the right and find the Service Task from the list of Activity components. Drag two Service Task components to the PermitProcess diagram as shown. One will be in between the Apply for Permit and Review Site Information tasks and the other one will be between the Review Construction Codes and the End object. Tip: When you drag the service tasks to the diagram, drag it to the connectors you want to insert it into. While dragging, mouse over the connectors and wait for them to pulse or get highlighted, and then release it. This way, the service tasks will be inserted in between.
  • 18. Rename the first Service Task to Get Zoning Information. Rename the second Service Task to Process Payment. PermitProcess will now look like this:
  • 20. ADDING AN ALTERNATE PATH Add an alternative path to what’s expected. For the permit process, there is the possibility that the permit application will not meet the correct zoning, planning and construction requirements. In this case, the application has to be rejected and sent back to the applicant. 1. To determine the outcome of the reviews, add a conditional gateway right after the last review activity before payment is processed. Drag a Gateway object from the BPMN Components to the arrow between the Review Construction Codes and the Process Payment tasks. Rename the Exclusive Gateway to Review Outcome. We are sending back rejected applications to the applicant. To do this, do the following: a. Hover your mouse on Review Outcome and then use the icon to connect it to Apply for Permit. b. Drag the middle of the sequence flow arrow outbound to make the arrow cornered as shown below.
  • 21. Save your work. The Permit Process should look like
  • 22. 2. Close the project by selecting Close Project from the drop-down on the upper right section of the page. Log out of Oracle Business Process Composer by clicking Sign Out from the top right corner and close your web browser. As simple as it is, this process is our starting point for modelling the Permit Process. This is the “As- Is” model for the Permit Process. It represents the current way permits are processed which may not be as optimized as we want it to there are still several areas for improvement. Exercise: List down areas for improvement that you see in this permit process.
  • 23. LESSON 2 – PROCESS IMPROVEMENT The whole point of BPM is for continuous process improvement. The next stage focuses on the Process Improvement aspect of Business Process Management. In this stage, we will identify potential bottlenecks in the Permit Process using process simulations and then optimize the process by adjusting the model in Oracle BPM Studio. Process Modelling Process Process Monitoring Improvement Process Process Iteraction Implementation ORACLE BPM STUDIO Oracle BPM Studio is a component of the Oracle BPM Suite that enables process developers to create process- based applications. It also enables process analysts and developers to model and simulate business processes. Oracle BPM Studio is part of the Oracle JDeveloper IDE and shares the JDeveloper user interface elements used by the Oracle SOA Suite. The JDeveloper environment can be tailored based on the role selected by the user. Oracle BPM Studio includes the Analyst Role which only includes process design elements that are useful to business analysts. Process developers who need access to the complete functionality of the Oracle BPM and SOA Suites should use the default role. IMPRORING PROCESS MODEL INTO ORACLE BPM STUDIO 1. Start Oracle BPM Studio by clicking on the BPM Studio icon from the desktop. When prompted to select a role, select Default Role and click OK. This will allow us to download the Permit Process from the Oracle BPM Metadata Service (MDS) repository.
  • 24. Create a new BPM Application by clicking New Application and name it PermitApplication. Make sure that the Directory is pointed to /home/oracle/jdeveloper/mywork/. Also make sure that the BPM Application is selected in the Application Template. Click Finish. Note that there is a default project called Project1, which we are not going to use. We will download the project from the MDS Repository. Right-click on Project1 and select Delete Project and choose the option to Remove the project and delete all of its contents (including source directories) and confirm the deletion. Save all
  • 25. 2. Click on the third tab from the left. This is the BPM MDS Navigator. From there, select the option to Configure Connection as shown. (Note: If you do not see the BPM MDS Navigator, you can select this from the top menu – View > BPM MDS Navigator.) Select BPM_MDS when prompted for an MDS Connection, and click OK. Note: This connection has already been pre-configured to point to your BPM MDS Repository. Please refer to Appendix A on how to configure the BPM MDS Repository connection. 3. In the BPM MDS Navigator, you will see your PermitProject as shown. Right-click on it and select Check Out. 4. Note: If you notice that the PermitProject icon has a pad-lock on it like this: . It means that it was not closed properly in Oracle BPM Composer. You can force this to close by right-clicking PermitProject and selecting Unlock, and then Check out
  • 26. 5. When asked if you want to migrate the project, select Yes. Then click OK to finish. 6. Click on the second tab from the left – BPM Project Navigator, and from there, expand the PermitProject > Process folder. Double click PermitProcess. You should now see the Permit Process diagram in Oracle BPM Studio. Tip: Change the View to 75% to see the full process (or your preference). Note that you will see yellow warning icons on each activity. This is because these activities have not been implemented yet and you are logged in with the Default
  • 27. Role. If you want to view this without warnings, you can click on the Highlight Level below the diagram, and slide the level to the middle to hide warnings and only show errors.
  • 28. CREATING STIMULATION MODEL By running simulations, business analysts and developers can predict the behaviour of business processes under specified conditions. They can run simulations to verify that the output meets the metric objectives and identify any bottlenecks. They can also run simulations to test the effects of changes on an existing process design. First, we need to define a Simulation Model. A Simulation Model enables you to define the behaviour for an individual process model. Note that, for any given process model, you can have multiple simulation models, so that you can mimic a variety of scenarios. 1. From the BPM Project Navigator, navigate from PermitProcess > Simulations and right- click on Simulation model. Select New Simulation Model to define a simulation model. Click OK to Create the Simulation Model with the default name. You should see the Simulation Model that will allow you to configure the behavioural characteristics of the process including the duration of each activity, the resources and costs involved, queuing information and the probabilities of each outgoing flow from occurring.
  • 29. 2. Use the following characteristics for the Permit Process and capture the characteristics in the simulation model The City is receiving an An applicant takes an The City employs 8 Zoning average of 10 requests for average of 5 minutes to Officers taking an average of permit applications every complete a permit 2 hours to complete a site hour. application. review per application. The City utilizes 10 The Zoning Information The City employs 5 Planning Construction Officials taking Service and the Payment Officers taking an average of an average of 30 minutes to Processing Service are both 1 hour to review review the permit averaging 30 seconds to construction plans per construction codes of an process a transaction for application. application. each application. There is a 5% rejection rate for permit applications. 3. Click the Start node from the list of Flow Nodes on the left. Define the average of 10 requests per hour for permit applications by setting the Start node’s distribution type to Exponential with an Average Frequency of 10 Instances every 1 hour as follows:
  • 30. Click the Apply for Permit node from the list of Flow Nodes on the left. The 5 minute average for an application to complete a permit application can be specified by setting the Apply for Permit node’s Mean duration to 5 minutes as follows: Click the Review Site Information node from the list of Flow Nodes on the left. The 2 hour average to complete a site review can be specified by setting the Review Site Information node’s Mean duration to 2 hours as follows: From the Review Site Information node, click the Resources tab. The City’s 8 zoning Officers doing site reviews can be can be specified by setting the Available Resources to 8.
  • 31. Click the Review Plans node from the list of Flow Nodes on the left. The 1 hour average to complete a plan review can be specified by setting the Review Plans node’s Mean duration to 1 hour as follows: From the Review Plans node, click the Resources tab. The City’s 5 Planning Officers doing site reviews can be can be specified by setting the Available Resources to 5 Click the Review Construction Codes node from the list of Flow Nodes on the left. The 30 minute average to complete a construction code review can be specified by setting the Review Construction Codes node’s Mean duration to 30 minutes as follows: From the Review Construction Codes node, click the Resources tab. The City’s 10 Construction Officials doing construction code reviews can be can be specified by setting the Available Resources to 10
  • 32. Click the Get Zoning Information node from the list of Flow Nodes on the left. Verify the 30 second durations for the Zoning Information Service. This is the default value so no change is needed. Click the Process Payment node from the list of Flow Nodes on the left. Verify the 30 second durations for the Payment Processing Service. This is the default value so no change is needed. Lastly, Click the Review Outcome node from the list of Flow Nodes on the left. Define the 5% Rejection Rate in the probabilities of the Review Outcome such that: a) There is a 5% probability that it will go to Apply for Permit b) There is 95% a probability that it goes to Process Payment. You can define this by dragging the probability sliders in the Outgoing Flows as follows. Note: Make sure you specify the percentage correctly for the Apply for Permit and Process Payment flows, as sometimes the order these flows are shown below is different. Save the Simulation Model.
  • 33. CREATING STIMULATION DEFINITION Next, we need to create a Simulation Definition. A Simulation Definition enables you to define the processes and resources that define a simulation scenario. In a simulation definition, you specify the processes that participate in the simulation by selecting the simulation models associated to those processes. A process may have multiple simulation models defined for it. If a process has multiple simulations models defined, then you must select one of those models to use in the simulation definition. 1. From the BPM Project Navigator, navigate from PermitProcess > Simulations and right- click on Simulation Definition. Select New Simulation. Click OK to Create the Simulation Definition with the default name. You should see the Simulation Definition that will allow you to set the start time, duration, models and resources used in the simulation. Set the Duration for 1 Day and check the box to Include in simulation for the PermitProcess SimulationModel as shown. Save the Simulation Definition.
  • 34. RUNNING THE SIMULATION Now, with the simulation definition and model, let’s run a simulation on the Permit Process. 1. Click on the Permit Process to view the process diagram and click the Simulation tab below. Click the icon to start the simulation. Observe the process diagram for bottlenecks.
  • 35. Note that there is an obvious bottleneck in the Zoning Officer’s queue as indicated by the waiting queue being marked as Red. This means that the 8 Zoning Officers are not able to handle the incoming workload. Because the process is single threaded (all activities are sequential), all succeeding tasks are affected by this bottleneck. Stop the Simulation.
  • 36. IMPROVING THE PROCESS WITH PARALELL ACTIVITY One quick approach to improve the process is to parallelize certain activities. Let’s assume that there are no dependencies between the work of the Zoning and Planning officers. In this case, we can make these activities go in parallel. 2. From the Component Palette on the right, drag the Parallel Gateway to the process diagram. Name the Parallel Gateway Parallel Reviews. You should see the Parallel Gateway added to your process. (Note: The red error icons simply indicate that the gateways are not connected to your process yet). To visually show that Review Site Information and Review Plans will go in parallel, position the Review Site Information and Review Plans to be vertically aligned and stretch the parallel gateway and in the middle of the 2 activities as follows:
  • 37. 3. Adjust the existing arrows in your process to connect to the parallel gateway to the Review Site Information and Review Plans by doing the following a. Drag the end of the connector going from Get Zoning Information to Review Site Information to make it connect to the start of the Parallel Reviews gateway: b. Drag the end of the Parallel Reviews connector to make it connect to Review Site Information: c. Drag the end of the connector going from Review Site Information to Review Plans to make it connect to the end of the Parallel Gateway:
  • 38. d. Drag the end of the connector going from Review Plans to Review ConstructionCodes to make it connect to the end of the ParallelGateway: e. 4. You should now have something like this:
  • 39. 5. Right click on the Parallel Reviews gateway and select Add default sequence flow to connect it to the Review Plans task. 6. Add an Exclusive Gateway after the Parallel Gateway and call this Preliminary Review Outcome. This will loop back to the applicant in case there are rejections from the Zoning or Planning officers. 7. Create the loopback by right-clicking on the new gateway, selecting Add conditional sequence flow and connecting it to the Apply for Permit task.
  • 40. 8. Add default sequence flows to connect the ParallelGateway to the Preliminary Review Outcome gateway and to the Review Construction Codes task as shown. (Note: Adjust the other objects as needed) 9. Save the model 10. Run the simulation again. Notice that the bottleneck has now been divided between the 2 parallel activities. There is still queuing going on in each activity.
  • 41. 11. Stop the Simulation
  • 42. IMPROVING THE PROCESS WITH PARALELL ACTIVITY Another approach to improve the process is to bypass the execution of long running tasks using decisions made by a rules engine. For the Permit Process, we can add a Business Rule to evaluate permits based on zoning and project size and allow certain types of permits based on this information to skip the preliminary reviews. The business rule will basically determine that certain projects may not require reviews from the Plan Officer and the Zoning Officer. 1. From the Component Palette on the right, drag a Business Rule to the process diagram, right after the Get Zoning Information task. (Hint: Drag it to the arrow and release when the arrow shows with a color blue. This will make automatically insert in between without having to define new sequence flows.) Name the Business Rule Evaluate Permit. Add an Exclusive Gateway after the business rule and call this Evaluation Outcome. This will determine whether preliminary review can be bypassed.
  • 43. Add a conditional sequence flow from the new gateway to connect straight to the Review Construction Codes task. Drag the arrow from the middle going outward to make it cornered. Adjust the other objects to make room. The process should look like the following:
  • 44. Let’s assume that with this new rule, 75% of the applications will not require preliminary review. Go to the Simulation Model and adjust the Evaluation Outcome with a 75% probability of going to the outgoing flow to Review Construction Codes. Also adjust the Preliminary Review Outcome to have a 5% Rejection Rate.
  • 45. Run the simulation again. Notice that the process is now executing very efficiently.
  • 46. VIEWING SIMULATION METRICS 1. While the simulation is still running, double click the simulation tab to maximize it. 2. Look at some simulation metrics. Click the Configure icon . Uncheck all the checkboxes under Units and check the Average process time and Average Waiting Time under Time. This will show us the time the process spends executing and waiting. Ideally, there should be minimal waiting time.
  • 47. Click on the Drill Down icon to get a breakdown by activity. Change the Column chart to a Bar chart and click on to increase the font size until the fonts on the right are readable. Notice the breakdown of activities. Most of the time is spent processing, not waiting. The only activity that’s spent waiting is when an applicant applies for a permit. This shows that the Permit Process is now operating efficiently.
  • 48. Stop the Simulation by clicking the icon. Click the Save All icon Go to the Application Navigator tab and with the PermitProject selected, select Close from the Application menu. Through process simulation, we have identified potential bottlenecks in our “As-Is” process and have continuously improved it in our new “To-Be” Process. Next, we will move on to the next phase of the BPM Lifecycle – Process Implementation.
  • 49. LESSON 3 – PROCESS IMPLEMENTATION Process Modelling Process Process Monitoring Improvement Process Process Iteraction Implementation This lesson will examine the fully implemented Permit Process developed by the Process Developer and deploy it to the unified run-time environment. For all of these implementation activities, the Process Developer leveraged declarative tools from the Oracle Fusion Middleware SOA Suite to design and construct the required logic without having to do any custom coding. We will explore the following implementation activities:  Human Task Implementation – Defining the human workflow task configuration for each interactivity activity in the process. Oracle SOA Suite Human Workflow component is used to define tasks.  Service Task Implementation – Utilizing web services to integrate with back end services such as a zoning information system and a payment database system. Oracle SOA Suite Database Adapter to generate database operation services. Oracle SOA Suite Transformation Tools to declaratively transform the permit data object to the database structure.  Business Logic Implementation – Defining a business rule to determine how to process permit applications. Oracle SOA Suite Business Rules component to create a decision table exposed as a decision service. You will also define the conditional expressions to control the process flow logic and a script task to initialize the process data objects.  Business Activity Monitoring Implementation – Defining business indicators in the process and enabling the use of Oracle Business Activity Monitoring (BAM).  User Interface Forms Generation and Customization – Generating user task forms for each human task and customizing the generated form to improve the end user interaction. The generated task forms are based on the Oracle Application Development Framework (ADF). Oracle ADF components for customizing the task forms.  Process Deployment - Mapping the process roles to the actual roles that these users are assigned to in a Corporate Directory/LDAP Server and then deploying the process to the BPM/SOA runtime environment running on Oracle WebLogic Suite. Oracle WebLogic Embedded LDAP server for the users and groups. All the users and their corresponding groups have already been defined in the Oracle WebLogic Embedded LDAP Server.
  • 50. OPENING THE COMPLETED APPLICATION Open and deploy a BPM application that has already been completely implemented by the Process Developer. 1. Start Oracle BPM Studio. When prompted to select a role, select Default Role and click OK. From the Application menu, select Open and navigate to /home/oracle/MyFiles/PermitApplication. Complete and open the file PermitApplication.jws . You should see the completed PermitProject folder on the Application Navigator along with 3 generated forms projects – PermitApplicationForm, PermitContsructionOfficialForm, and PermitReviewForm. Click on the BPM Project Navigator and expand the PermitProject > Process folder. Double click PermitProcess. You should now see the fully implemented Permit Process diagram in Oracle BPM Studio.
  • 51. EXAMINING HUMAN TASKS Examine the Human Tasks for each interactive activity. Interactive activities are the ones with the green boxes. 2. The Apply for Permit task is the task that initiates the PermitProcess. Double-click the Apply for Permit task and click on the Implementation tab. This task is a User Task implemented using a Human Task definition called PermitApplicationTask. Click OK. To see the Human Task definition file, right-click the Apply for Permit task and select Open Human Task.
  • 52. Since this is the first user task, this utilizes the Initiator Pattern to allow the Applicant to submit a Permit Application. Notice the outcome of SUBMIT. Click on Data and see how the task is using the PermitApplication as its input with the Editable setting checked. This will allow the Permit Applicant to edit the Permit Application during submission or re- submission. Back in the BPM process diagram; examine the Review Site Information and Review Plans tasks by double-clicking them. Both of these tasks use the Human Task definition called PermitReviewTask.
  • 53. View the Human Task definition by right-clicking on the task and select Open Human Task. As shown in the Task Definition, the Permit Review task is defined using the default Simple pattern and can return different outcomes – in this case the defaults - APPROVE or REJECT. Users will be able to choose one of these outcomes to complete the task. (Note that you can configure additional outcomes if needed). Click on Data and notice that this task is read-only, the Editable is unchecked. This makes the permit application data read-only for the reviewers. Close the PermitReviewTask.task file to go back to the BPM Process diagram. Examine the last task, Review Construction Codes, by double-clicking it. The task is using the Human Task definition called ConstructionCodeReviewTask.
  • 54. View the Human Task definition by right-clicking on the task and select Open Human Task. As shown in the Task Definition, this task implements a complex pattern because the permit will have to dynamically assigned to the appropriate official depending on the type of permit. Route to 2 officials – the Plumbing Official for plumbing related permits and the Electrical Official for electrical related permits. Click the Assignments tab from the right to see the complex workflow pattern.
  • 55. EXAMINING SERVICE TASKS Examine the Service Tasks of the automated activities. Automated activities are the ones with the blue boxes. 1. Let’s take a look at the first automated activity, Get Zoning Information. Web Service. From the BPM Process, double-click the first automated activity, Get Zoning Information and click the Implementation tab. Click the icon and how this is implemented by a Service Call using a SOAP Web Service called ZoningInformationService. 2. Click the Data Associations link to review the data associations. In the Data Association, view the Input and Output tabs to see the input and output mappings. The block, lot and siteAddress come from the Permit Application and the ZoningInformaationService returns the Zone.
  • 56. 3. Examine the last automated activity, Process Payment. Typically, the process payment activity will be handled by another process that will orchestrate the calls to an external credit card validation service and potentially internal billing and order management systems. 4. For simplicity invoke a database operation to store the payment information in a database table. This service task utilizes the Database Adapter to insert the Payment Information to the Payment database table. From the BPM Process, double-click the last automated activity, Process Payment and click the Implementation tab. Notice how it uses the insert operation of the PaymentProcessingService. It also transforms the data from the permit application to the payment database table. Click the Data Associations link to open the transformation.
  • 57. Click the Counter tab. A counter mark is used in this activity to count the number of permit approvals that has reached payment processing.
  • 58. EXAMINING THE BUISNESS RULES Examine the Business Rule for determining whether permit applications require preliminary reviews or not. The business rule is the one with the yellow box. 1. From the BPM Process, double-click Evaluate Permit business rule and click the Implementation tab. See that this task is using the PermitApplicationRules business rule. Click the Data Associations link. Notice how PermitApplication is assigned as the input and output. The rule takes in the PermitApplicationInput, evaluates it and returns the same object with the applicationEvaluationResults field populated with either: REVIEWS_REQUIRED or NO_REVIEW_REQUIRED.
  • 59. In the Output tab, notice how we are setting the applicationStatus as Submitted and the referenceNumber using a system function called getCompositeInstanceID. In the Output tab, we are also initializing the values of 3 Business Indicators: Cost, TypeOfWork and Zone with data coming from the Permit Application and Zoning Service. These business indicators will be used for monitoring the process in business dashboards.
  • 60. Click OK and go to the Counter tab. A counter mark is used in this activity to count the number of permit applications that has been evaluated. Click OK to go back to the BPM Process. 2. From the BPM Process, right click the Evaluate Permit business rule activity and select Open Business Rule.
  • 61. This will bring you to the Rules Editor with a Decision Table with the following rule logic: Small projects will return NO_REVIEWS_REQUIRED, Medium and Large projects will return REVIEWS_REQUIRED. To see how Small, Medium and Large are defined, let’s review the Local List of Ranges, also called a Bucket Set. This bucket set will be used to classify the permit applications based on the estimated cost of the permit application. Click on PermitApplication.summary.estimatedCost under Conditions. Make sure Local List of Ranges is selected and click the icon next to it. The ProjectSize bucket set defines what is considered large, medium and small based on the permit application’s estimated costs using the following ranges:  Projects greater than or equal $100,000 are large projects.  Projects greater than or equal $10,000 and less than $100,000 are medium projects.  Projects less than $10,000 are small projects.
  • 62. Click Ok. Close the Rules Editor by clicking the x button on the tab. EXAMINING THE CONDITIONAL LOGIC Examine the conditional logic of the process. We will take a look at the expressions for each conditional transition. 1. Double-click the transition that returns from the Preliminary Review Outcome gateway going back to Apply for Permit. This condition occurs when either the Zoning Office rejects the site information or the planning office rejects the plans.
  • 63. Click on the Properties tab and review the condition: Click Ok. Next, double-click the transition that bypasses the preliminary reviews to go straight to the Review Construction Codes. This condition occurs when EvaluatePermit business rule returns a value of NoReviewRequired.
  • 64. Click on the Properties tab and review the condition: Click Ok. Lastly, double-click the transition that returns from the Review Outcome gateway going back to Apply for Permit. This condition occurs when the Construction Officials reject the construction codes.
  • 65. Click on the Properties tab and review the condition: Click OK EXAMINING THE SCRIPT TASK Examine how the Process Developer made use of a Script task to initialize our permit application with an XML data structure. The Script task is useful for initiating or setting any constant values in the data objects. For the purposes of this workshop, initialize the permit application with default data to save us from having to type all the information manually when we run this. 2. Double-click the Initialize Permit Application script task and click the Implementation tab. 3. Check the Data Associations link. From the Data Associations, notice how the Permit Application is being initialized with data in XML format.
  • 66. Double click the icon on the left of PermitApplication to review the XML that contains default values we are assigning to the permit process. Click OK on all dialog boxes until you’re back in the BPM Process. To validate that there are no problems, click the Make icon in JDeveloper.
  • 67. Note: The Compiler Output will show warnings about the Error assignee not specified. You can ignore these warnings. EXAMINING THE USER INTERFACE For users to interact with the human task in the Permit Process, we will need some UI forms. The integrated development environment of Oracle BPM Suite includes Oracle Application Development Framework (Oracle ADF) for this purpose. With Oracle ADF, you can design a task form that depicts the human task in the BPM Process. You can also automatically generate the forms based on the input and output parameters defined for the task form. In this lab, we will examine the task forms generated and customized by the Process Developer for each of the human tasks in the process:  Apply for Permit  Review Site Information  Review Plans  Review Construction Codes 1. Click on the Application Navigator, see 3 additional projects: Permit ApplicationForm, PermitReviewForm and PermitConstructionOfficialForm, together with your PermitProject. Under each project, you will see a file called taskDetails1.jspx. This is the generated task form that the Process Developer customized.
  • 68. 2. Open the taskDetails1.jspx file of the PermitApplicationForm project and review the various ADF components used: 3. Open the taskDetails1.jspx file of the PermitReviewForm project and review the various ADF components used: 4. Open the taskDetails1.jspx file of the PermitConstructionReviewForm project and review the various ADF components used:
  • 69. 5. Close all .jspx forms ASSIGN PROCESS PARTICIPANTS BPM is about tying in People, Process and Technology. We’ve create the Process, configured the Technology, now let’s review how the People participate in the process The following users will be participating in the Permitting Process with the respective roles and responsibilities: The Process Roles you see in the diagram are mapped to the actual roles that these users are assigned to in the Corporate Directory/LDAP Server. For this workshop, we will use the embedded LDAP server in the WebLogic Application Server. All these users and their corresponding groups have already been defined in the LDAP Server.
  • 70. 1. From the BPM Project Navigator, expand the PermitProject folder and double click Organization. You should see the Organization Editor in Oracle BPM Studio showing the process roles. Review how each process role is mapped to the LDAP Group. You should see the mappings defined in this table: Process Role LDAP Group Applicant Citizens Construction Officials PlumbingOfficials ElectricalOfficials Planning Officer PlanningOfficers Process Owner PermitProcessOwners Zoning Officer ZoningOfficers
  • 71. DEPLOYING THE PROCESS 2. Go to the Application Navigator and right-click the PermitProject. Select Deploy > PermitProject. Choose Deploy to Application Server and click Next.
  • 72. Click Next to accept the default Revision ID. Make sure you check the boxes to select the 3 task form projects. This will include these projects in the deployment. Click Next. Select the Application server SCAServer and click Next.
  • 73. Click Next to accept the default partition. Click Finish to proceed with the deployment
  • 74. This may take a few minutes since each task form all has to be uploaded and deployed. Monitor the Deployment log and wait for the following message: Troubleshooting Tip: If you get deployment issues about “No credential mapper entry found for password indirection”, go to 'Application Properties' -> Deployment -> Uncheck the 'Auto Generate and Synchronize weblogic-jdbc.xml Descriptors During Deployment' option and try deploying again. After successful deployment, close JDeveloper
  • 75. LESSON 4 – PROCESS INTERACTION Focus on the Process Interaction stage of the Business Process Management life cycle. In this stage, we will engage the various Process Participants in interacting with the business process using the BPM Workspace Process Modelling Process Process Monitoring Improvement Process Process Iteraction Implementation We will use the following Process Participants with their corresponding roles and responsibilities. Bob Builder Citizen and Owner of Bob and Sons Construction Needs to Apply for a Construction Permit John Zone Zoning Officer, City Needs to Review Site Information for Proper Zoning Mary Plana Planning Officer, City Needs to Review the Construction Plans Chris Plummer Plumbing Official, City Needs to Review Plumbing Codes Karen Elektra Electrical Official, City Needs to Review Electrical Codes Mike Scott Department Head in Charge of Permitting, City Needs to Oversee the Permitting Process
  • 76. ORACLE BPM WORKSPACE The Oracle BPM Workspace is a web-based application that allows process participants to interact with process applications deployed in Oracle BPM. The Oracle BPM Workspace user interface provides tabs for each of the following:  Process Instances: This tab enables process participants to view running process instances.  Task List: This tab enables process participants to view and work with their assigned tasks.  Process Dashboards: This tab provides out-of-the-box dashboards for monitoring process performance, task performance and workload.  Custom Dashboards: This tab enables process participants to define and use custom dashboard based on the measurement data generated by process instances. The Oracle BPM Workspace also enables business administrators to configure and maintain organizations and roles. BOB APPLIES FOR A CONSTRUCTION PERMIT Let’s start interacting with the Process as Bob Builder, the owner of a construction company who wants to apply for a permit for a new construction project in the City 1. Start Oracle BPM Workspace by clicking on the BPM Workspace icon from the desktop This will bring up the BPM Workspace login screen in a web browser. (Optionally, you can also enter the URL directly from your browser: http://soa.odemo.com/bpm/workspace. Login as the permit applicant, Bob Builder using the following: User Name: Bob.Builder Password: welcome1
  • 77. The BPM Workspace displays tasks that have been assigned to the user in the My Tasks section. In this case, Bob does not have any tasks assigned to him. As a permit applicant, he has the ability to initiate the Permit Process. You will see the Permit Process in the list of Applications on the left. To initiate the process, click on PermitProcess from the list of Applications. This will bring up a window for the Permit Application Data Entry form.
  • 78. Notice all the fields have already been prefilled because of the Script Task that we added to the process. Review the information. Because the Estimated Cost is $1M, we should expect this to go through all the reviews. If you recall, our business rule specified that all large and medium projects $10,000 and above require reviews. Click Submit on the upper right corner of the form to submit the permit application Logout of the Oracle Business Process Workspace. Based on the process we modelled, this should have gone through the execution of the Zoning Service and the Business Rule, and because the Estimated Cost is $1 Million (more than the business rule’s “Small Project” maximum limit of $10,000), it will be routed to the Zoning Officer and the Planning Officer for preliminary reviews. JOHN REVIEWS THE ZONING INFORMATION Let’s login as the Zoning Officer John Zone to review the site information. 1. Login as the Zoning Officer, John Zone using the following: User Name: John.Zone Password: welcome1 The BPM Workspace displays tasks that have been assigned to the user in the My Tasks section. In this case, John has a new task assigned, a permit application waiting for his review of the site information. Double-click on the task Permit Review – Site Information. You should see a new window pop up with the Permit Information submitted.
  • 79. Also notice the values under Permit Application – System. These were generated by the BPM Process, such as the unique Reference Number and the Application Status. The Evaluate Permit Business Rule determined the Application Evaluation Results of Reviews Required. The Zoning Information Service determined that this site is Commercial Zone. Click Approve. Notice the task disappears from John’s task list. 1. Rakesh MARY REVIEWS THE CONSTRUCTION PLANS The permit is still awaiting the approval of the planning officer. Let’s login as the Planning Officer Mary Plana. 1. Login as the Planning Officer, Mary Plana using the following: User Name: Mary.Plana Password: welcome1 Like John, Mary has a new task assigned, a permit application waiting for her review of the construction plans. Single-click on the task Permit Review – Plans. You should see the Permit Application load in the bottom window.
  • 80. From the Actions menu under My Tasks, select Approve. Notice the task disappears from Mary’s task list. Logout the BPM Workspace. CHRIS VALIDATES THE PLUMBING CODES After the permit gets reviewed by the zoning and planning officers, the codes should be approved by the construction officials. In this case, it will have to go through 2 officials, the Plumbing Official and the Electrical Official. Let’s login as Chris Plummer, a Plumbing Official. 1. Login as the Plumbing Official, Chris Plummer using the following: User Name: Chris.Plummer Password: welcome1 Chris should see a new task assigned, a permit application waiting for his review of the plumbing codes.
  • 81. Double-click on the task. You should see the Permit Application popup in another window. Scroll down to the end and in the Comments section, enter a comment about the Plumbing Codes. From the Attachments section, click , choose a Desktop File Attachment Type and upload the homepipes.pdf file found in /home/oracle/MyFiles/execution.
  • 82. Scroll back up and click Approve. KAREN VALIDATES THE ELECTRICAL CODES 1. Let’s play the role of the Electrical Official. Login as the Electrical Official, Karen Elektra using the following: User Name: Karen.Elektra Password: welcome1 Karen should see a new task assigned, a permit application waiting for her review of the electrical codes. Double-click on the task. You should see the Permit Application popup in another window. Scroll down to the end. Karen should see the Comment and Attachment entered by Chris. Enter another comment. Try opening the attachment by clicking the file link.
  • 83. Scroll back up and click Approve. MIKE TRACKS THE PROCESS 1. Login as the Department Head, Mike Scott using the following: User Name: Mike.Scott Password: welcome1 Mike should see the permit application on his task list because if you recall, there was an FYI task assigned to the Process Owner at the end of the complex task. It’s not waiting for his approval though because it is just an FYI.
  • 84. Scroll down and look at the comments and attachments section from the previous approvers. As the Process Owner, click on Process Tracking. Because it already completed, the task does not show up by default. Click on the Advanced link above button to change the filter with the Status set to Completed. Click on the completed instance that shows up. From the instance details section below, scroll down and expand the Audit Trail to see each activity in a tabular format.
  • 85. Change it to Graphical Format to see the process flow that you modelled and track the path that the execution took. Click the small arrows on the top right and bottom left corners of the Instance Details to maximize the process map. 2. Press the F11 key to view in full screen. Once it’s maximized, you should see the process execution flow with the shaded green arrows indicating the execution path.
  • 86. The last activity of Process Payment should have resulted in a new record inserted in the database. To verify this, start JDeveloper and go to the Database Navigator. Note: If you do not see the Database Navigator, you can enable this by selecting View > Database > Database Navigator. From the Database Navigator, expand PermitApplication > PermitAppDB > Tables and double-click the PERMIT_APPLICATION table. Click on the Data tab below and you should see the Permit Application record with the same reference number.
  • 87. RUNNING THE PROCESS FOR DIFFERENT SCENARIOS Execute the process again using different scenarios. For example, try the following: Try rejecting certain tasks and analyze the loopback behaviour. Try submitting a permit application with Estimated Cost less than $10,000 to bypass the preliminary reviews. Try submitting a permit application with the Require Plumbing Permit or Require Electrical Permit check boxes unchecked to skip the approvals needed from the Plumbing or Electrical officials. Submit 10 or more permit applications and leave some of the permit applications sitting on the various users’ task inbox without any action. We will use this for monitoring dashboards in the next lab.
  • 88. LESSON 5 – PROCESS MONITORING Process Modelling Process Process Monitoring Improvement Process Process Iteraction Implementation The next stage focuses on the Process Monitoring aspect of Business Process Management. In this stage, we will monitor the activity of the process using Process Analytics. Process Analytics enable you to obtain performance and workload metrics which are useful for making more intelligent decisions about your process. BUSINESS PROCESS ANALYTICS Business Process Analytics enables you to monitor the performance of your deployed processes. It measures the key performance indicators in your project and stores them in pre-defined cubes in the database that enable you to analyze the data in multiple perspectives. You can also store the metrics in the Oracle Business Activity Monitoring (BAM) database for real-time monitoring. Process analysts can view the metrics using dashboards from the Oracle BPM Workspace or Oracle Business Activity Monitoring (BAM). In summary, Process Analytics track:  Workload Metrics  Process and Activity Performance Metrics  Human Resource Metrics By default, the BPM Engine stores the values of pre-defined measures and dimensions that are common to all BPM processes. The supported pre-defined measures are:  Number of active instances by activity, process, and participant  Average time to complete an activity  Average time to complete a process The supported pre-defined dimensions are:  Process  Activity  Participant You can also define custom measures according to your needs. To define custom measures, you use business indicators. The different types of business indicators enable you to measure specific values, keep track of categories or count the times an instance completes one or more activities
  • 89. MONITORING PROCESS USING STANDARD DASH BOARDS 1. Login as the Department Head, Mike Scott using the following: User Name: Mike.Scott Password: welcome1Rakesh Click the Standard Dashboards tab to view the predefined metrics. Workload per process dashboard should be selected by default. This dashboard shows the number of instances sitting in the process. This should show you how many times your Permit Process was initiated. Click on the bar in the left graph and a new graph on the right will be displayed to show you the number of instances sitting in each activity. Click on any of the bars in the right graph and this will load the actual process instances below. 2. Change the view to show Performance per process. This dashboard shows the average time your process takes to complete. 3. Click on the bar in the left graph and a new graph on the right will be displayed to show you the average time it takes each activity in that process to complete. 4. Click on any of the bars in the right graph and this will load the actual process instances below
  • 90. 5. Change the view to show Workload per participant. This dashboard shows the number of instances sitting for each participant. It will give the process owner an indication of human resource workload and bottlenecks 6. Click on the bar in the left graph and a new graph on the right will be displayed to show you the processes the selected participant are involved with and the number of instances for each. In our example, we only have 1 process, so only the Permit Process will show up there. 7. Click on any of the bars in the right graph and this will load the actual process instances below. 8. Change the view to show Performance per participant. This dashboard shows the average time each user takes to process their tasks. It will give the process owner an indication of human resource performance and bottlenecks.
  • 91. 9. Click on the bar in the left graph and a new graph on the right will be displayed to show you the processes the selected participant are involved with and the average time the user spends for each. In our example, we only have 1 process, so only the Permit Process will show up there. 10. Click on any of the bars in the right graph and this will load the actual process instances below. Completed The Lessons