Oracle BPM Suite 11g – People Assignment

advertisement
Oracle BPM Suite 11g Sample – People Assignment
Oracle BPM Suite 11g – People
Assignment
Contents
Oracle BPM Suite 11g – People Assignment ..................................................................... 1
1
Oracle BPM Suite 11g – People Assignment .............................................................. 1
1.1
1.2
1.3
1.4
1.5
Concepts ............................................................................................................................... 1
1.1.1
BPM Process Roles (Logical Roles)........................................................................... 1
1.1.2
Organization Unit ......................................................................................................... 2
1.1.3
Extended User Properties ........................................................................................... 2
1.1.4
Parametric Roles ........................................................................................................... 3
Sample Overview ................................................................................................................ 3
1.2.1
Scope ............................................................................................................................... 3
1.2.2
What’s Included ............................................................................................................ 3
Understanding the Purchase Requisition sample .......................................................... 3
1.3.1
Context ........................................................................................................................... 3
1.3.2
Overview ........................................................................................................................ 4
1.3.3
Create Purchase Requisition by Employee ............................................................... 4
1.3.4
Approve Purchase Request ......................................................................................... 5
1.3.5
Approve Spec by IT ..................................................................................................... 7
1.3.6
Approve funding by IT................................................................................................ 8
Set up..................................................................................................................................... 8
1.4.1
BPM Roles & Members ............................................................................................... 8
1.4.2
Set up and add members to Organization Units ..................................................... 9
1.4.3
Set up Extended User Properties ............................................................................. 10
1.4.4
Set up Parametric Roles ............................................................................................. 11
Testing................................................................................................................................. 11
Oracle BPM Suite 11g Sample – People Assignment
1
1.1
Oracle BPM Suite 11g – People
Assignment
Concepts
1.1.1 BPM Process Roles (Logical Roles)
The swim lanes in a BPMN process represent a logical Role. The assignees or participants of the
human tasks dropped in to this swim lane in most cases are derived from the swim lane role. These
logical Roles have to be mapped to a physical LDAP user or group before the BPMN process can
be deployed to a run-time. The logical Roles can be specific to a process or can be shared across
processes in a project. This can be either accomplished inside BPM Studio or inside BPM
Workspace if you have Administrator privileges.
Inside BPM Studio, Each Project in addition to having a Processes folder also has an Organization
folder. This node is used to define the BPM Roles, mapping of LDAP Users & Groups as members
to the BPM Role.
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_ws_admin.htm#BAJ
JBCEE
Figure shows defining Roles and members of a Role inside BPM Studio
With Oracle BPM 11g R1 PS4 FP release, the logical Roles can be shared as shown in the figure
below. You can also specify escalations for each Role.
Oracle BPM Suite 11g – People Assignment
1
Oracle BPM Suite 11g Sample – People Assignment
Figure shows defining Roles and members of a Role inside BPM Workspace – Administration Panel.
1.1.2 Organization Unit
An organizational unit represents departments or divisions within an organization. Organizational units can contain
child organizational units, creating a hierarchy that corresponds to your organization. Organization Unit contains a list
of members just like BPM Role and might have a Business Calendar associated with it. Organization Units are useful
when you wish to associate the process steps or the process itself with members of an organization unit as in this
sample. You only want those members of a BPM Role belonging to a certain Organization Unit to be able to perform
this task and filter out other members of the BPM Role who do not belong to the specific Organization Unit. The
process instance in this case is associated with a specific Organization unit and this information is usually part of the
incoming process instance payload. Only those members that belong to both the BPM Role and Organization Unit are
assigned to the human workflow task.
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_ws_admin.htm#BAJHHFDD
1.1.3 Extended User Properties
User specific properties can be defined either in an LDAP or defined outside of LDAP inside BPM Workspace. In
most situations, it might not be possible to extend LDAP to specify process specific user extension
attributes. In these situations, the recommendation is to create Extended User Properties for the various
Oracle BPM Suite 11g – People Assignment
2
Oracle BPM Suite 11g Sample – People Assignment
members inside the BPM Workspace. These extended user properties can be used to filter members of a
Role by evaluating conditional expressions based on these properties. For example, the extended user
properties can be Location, Job skills, Priority, Languages, Job Level etc and you can define conditions such
as “this step can be performed only by a support person in New Mexico, whose Job Level is manager,
Language is Spanish etc”.
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_ws_admin.htm#BAJDJAHC
1.1.4 Parametric Roles
Parametric Roles are used for dynamic role assignment based on evaluation of conditions. These conditions can be
based on Extended User Properties and Organization Units. Refer to this documentation link on creating, editing and
deleting Parametric Roles.
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_ws_admin.htm#BAJDJIAG
1.2
Sample Overview
1.2.1 Scope
This sample covers Organization Unit, Parametric Roles & Extended User Properties, Sticky User and
Participant Exclusion List.
Note: This sample will work with Oracle BPM 11 g R1 PS4 FP release and above.
1.2.2 What’s Included
The sample Application has 2 Projects:
1.3
1.
PurchaseRequisition BPM Project that includes the Purchase Requisition process.
2.
CreatePurchaseReq ADF Project that contains the User Interface for the first human process
step of the Purchase Requisition BPM Project. All other human steps are not associated with
a UI Project.
Understanding the Purchase Requisition sample
1.3.1 Context
1.
Organization Unit: You need to use Organization Unit when there is a need to filter out
members of a Role based on a specific Organization Unit. For example, a support request
originating in North America can only be handled by a person in Support Role belonging to the
North American Support Organization Unit.
2.
Parametric Role and Extended User Properties: You need to use Parametric Role when
there is a need to filter out members of a Role based on specific properties associated with the
members. For example, a support request originating in Texas, North America of type priority 1
can only be handled by a person in Support Role belonging to the Texas location of the North
American Support Organization Unit and who has been designated to handle priority 1 type of
support requests. The Extended User Properties are used to capture the properties associated
with a member for Parametric Role evaluation.
3.
Sticky User: You select the Sticky User setting in the human workflow task definition when
you want the same member who acted on the previous human step in a specific swimlane role
to also act on the subsequent step in the same swimlane.
Oracle BPM Suite 11g – People Assignment
3
Oracle BPM Suite 11g Sample – People Assignment
4.
Participant Exclusion List: This is the opposite of Sticky User. You specify the “Participant
Exclusion List” in the human workflow task definition when you want to filter out the member
who acted on the previous human step in a specific swimlane role to not work on the
subsequent step in the same swimlane.
1.3.2 Overview
Every employee is required to submit a purchase requisition request to be approved through his
management chain as well as the IT department before it can be fulfilled. The request contains
details such as:

Requisition Id

Requisition Date

Requestor Org

Requisition Value

Requisition Status

Priority

Location

Item
o
Item Id
o
Item Type
o
Item Price
o
Quantity
1.3.3 Create Purchase Requisition by Employee
The employee creates a Purchase Requisition by filling a form on the company website. The
employee has to specify the Organization Unit, the location and the priority of the request. This
triggers the process instance.
This is an Initiator Task – Interactive or human workflow task type that triggers the process
instance. All members of the Employee task can work on this step. It has to be associated with a
Task Form or User Interfaces. The User Interface is part of the zip file.
Oracle BPM Suite 11g – People Assignment
4
Oracle BPM Suite 11g Sample – People Assignment
In addition to mapping the output of the Create Purchase Requisition process step to the purchaseReqProcess Data Object, the Organization Unit of the process instance is set to the organizationUnit –
Predefined Variable. The process instance after this step is tied to the Organization Unit contained in the
incoming process instance payload.
Please refer to Set up section to understand how to define Organization Units and members of an
Organization Unit in BPM Workspace.
1.3.4 Approve Purchase Request
The manager of the employee and the manager’s manager need to approve the purchase requisition
(management chain workflow pattern). If the manager rejects, the process ends.
Add a Management task from the BPMN Palette. Select Properties/Implementation and create a
human workflow task implementation of type Sequential Management workflow pattern. Then edit
the task definition. Edit the Assignees section
Oracle BPM Suite 11g – People Assignment
5
Oracle BPM Suite 11g Sample – People Assignment
.
Use BPM XPATH Expressions – getLastPerformer() to access the employee id of the employee
who submitted the purchase request. Then use Identity XPATH functions to set the assignees to
manager and manager’s manager of the employee who has submitted the request.
Oracle BPM Suite 11g – People Assignment
6
Oracle BPM Suite 11g Sample – People Assignment
1.3.5 Approve Spec by IT
The purchase requisition request then needs to be approved by the IT department. In this sample,
the purchase request needs to be approved by the IT department under the same Organization Unit
(there are 2 Organization units for purposes of this sample – EMEA IT and North America IT).
The Purchase Requisition request contains the Organization Unit field to which this employee
belongs. You will have to use this information to filter members of the IT group. In addition,
depending on Priority (Number - - for purposes of simplicity can have only one of 2 values – 1, 2)
and Location (String type - for purposes of simplicity can have only one of 2 values – CA, TX), the
assignees are further filtered. The Location and Priority are part of the Purchase Requisition Request
payload of the incoming message. If the IT rejects the spec of the Purchase Requisition Request, it
goes back to the Create Purchase Requisition step.
Open up the associated Human workflow Task definition to understand the role assignment. This is
captured in the screen shot above. The assignment is based on Parametric Role. The role is set to
the swimlane role (all members of the swimlane role), the location property of the Parametric Role is
set to the location attribute of the incoming purchase request payload and the priority of the
Parametric Role is set to the priority attribute of the incoming purchase request payload. The
Organization Unit for the process instance was set in the previous step. So, only those members
who belong to the swimlane Role as well as the Organization Unit of the process instance and
whose properties – location and priority match with the incoming request can work on this process
step.
Please refer to Set up section to understand how to define Parametric Roles and Extended
User Properties for members in BPM Workspace.
Oracle BPM Suite 11g – People Assignment
7
Oracle BPM Suite 11g Sample – People Assignment
1.3.6 Approve funding by IT
Once the spec is approved, the funding needs to be approved by a different member of the IT
department. The same constraints as the previous step in terms of assignee apply to this step as well.
Only those members of the IT department who belong to the same Organization Unit, location and
priority as that of the Purchase Requisition Request will be able to work on this step. In addition, it
should be a different person from the previous step. If the funding is approved the process ends in
fulfillment of the purchase requisition. If not, the process ends in cancellation of the purchase
requisition (same state as when manager rejects the purchase requisition request).
Open up the task definition for this step. The assignment is the same as the previous step. The only
addition is in the Participant Exclusion List section. Here the member who acted on the previous
step (BPM.GetLastPerformer()) is filtered.
1.4
Set up
1.4.1 BPM Roles & Members
This is already done for you and specified as part of the BPM Project.
Role
Member
Employee
jcooper (manager – jstein and manager’s manager is – wfaulk)
IT Approvals
Jausten, jverne, mmitch, fkafka, ltolstoy, istone, mtwain, vhugo, cdickens, wshake,
rsteven
Oracle BPM Suite 11g – People Assignment
8
Oracle BPM Suite 11g Sample – People Assignment
1.4.2 Set up and add members to Organization Units
Org Unit
Members
North America IT
Eheming, jausten, jverne, mmitch, fkafka, ltolstoy, istone,
mtwain
EMEA IT
Vhugo, cdickens, wshake, rsteven
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_ws_admin.htm#BAJHHFDD
Figure shows adding Organization Units inside BPM Workspace
Figure shows adding members to Organization Unit inside BPM Workspace
Oracle BPM Suite 11g – People Assignment
9
Oracle BPM Suite 11g Sample – People Assignment
1.4.3 Set up Extended User Properties
Name
Org Unit
Location
Priority
eheming
North America IT
CA
1
jausten
North America IT
CA
1
jverne
North America IT
CA
2
mmitch
North America IT
CA
2
fkafka
North America IT
TX
1
ltolstoy
North America IT
TX
1
istone
North America IT
TX
2
mtwain
North America IT
TX
2
vhugo
EMEA IT
FR
1
cdickens
EMEA IT
GB
1
wshake
EMEA IT
FR
2
rsteven
EMEA IT
GB
2
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_ws_admin.htm#BAJDJAHC
The Extended User Properties and possible values are defined in the top half section. The values of various Extended
User Properties for the members are defined in the bottom half section.
Note: Currently the Extended User Properties can be only of type “String” or “Number” (Integer). Further,
there can be only one set of Extended User properties for a given member.
Oracle BPM Suite 11g – People Assignment
10
Oracle BPM Suite 11g Sample – People Assignment
1.4.4 Set up Parametric Roles
http://download.oracle.com/docs/cd/E21764_01/user.1111/e15175/bpmug_ws_admin.htm#BAJDJIAG
1.5
Testing
1.
Go to BPM Workspace. Log in as “jcooper”. Submit a purchase requisition request. Set the
Priority to 1, Location to CA, organization Unit to “North America IT” in the purchase
Oracle BPM Suite 11g – People Assignment
11
Oracle BPM Suite 11g Sample – People Assignment
requisition request. Other fields can have any valid values. Upload 2 documents (create dummy
word documents) as attachments to UCM.
2.
Login to the BPM Workspace as jstein, who is jcooper’s manager and approve the request.
3.
Logout and login as wfaulk, who is jstein’s manager, and approve the request.
4.
Login as jausten and approve the spec
5.
Log in as eheming and approve the funding (You can also log in as “jausten” – you will see the
task but the Actions will not have APPROVE option).
6.
In the EM console, check the process flow. You should see the completion of the process.
7.
Try changing the location and priority as well as Organization Unit and test if the right
members are assigned to the “Approve Spec” and “Approve funding” tasks.
Oracle BPM Suite 11g – People Assignment
12
Download