Workflow Implementation Guide - Plan
Workflow Implementation Guide - Plan
For
Workflows Implementation
Guidelines
Berca Hardayperkasa
10 May 2011
Table of Contents
1. Introduction......................................................................................................................1
2. Analyzing Your Business Processes................................................................................3
3. Identifying Processes That Will Use Workflow..............................................................4
4. Identifying Steps in a Process..........................................................................................4
5. Identifying People and Roles...........................................................................................5
6. Identifying Standard Notifications..................................................................................6
7. Identifying Time-Sensitive Records and Tasks...............................................................6
8. Identifying Automated Tasks..........................................................................................7
9. Documenting Processes for Workflow............................................................................7
10. Using Workflow’s Process Design Elements................................................................8
11. Designing Workflow Processes.....................................................................................9
Creating Different Kinds of Workflow Processes......................................................10
Design Considerations................................................................................................10
1. Introduction
I hear of many people that know what workflow is. Why don't companies really make
use of workflow technologies to optimize business processes? I had to give a
presentation tonight to a group of business managers providing an overview of
workflow. So I decided to give a short description of what workflow is and does in an
organization. Workflow should be enabled through N-tier web architecture and a zero
latency infrastructure. Usually workflow forms part of a process management and
knowledge management strategy.
Definition
Planning Document Page 2
Description
Based on business rules an event trigger workflow and route documents needed to
initiate and execute a business process that has to be completed in order to satisfy a
business requirement. Workflow is used to share information between different users
and to make the whole business process visible. Through workflow the sequence of
events is managed and delays in the process are escalated to higher authorities.
Escalations and notifications prompt action in time to still ensure fulfillment of the
process objectives. Workflow enables the management of various parallel process
streams triggered by a single event. The E-business trend is to allow an internal party to
trigger a workflow sequence from a website e-collaboration across the whole supply
chain. In essence a workflow solution manages the complexity of scheduling activities
needed for work to be done.
Interdependencies
Workflow is normally closely linked or integrated with the document management and
business process management technologies
Design Principles
Workflow, is used to "intelligently" guide the user through usage of a series of user
facing applications irrespective of the means used to access the information
- Automation of processes
- Routing and scheduling of activities
- Balancing workload
- Process visibility
- Process control through escalations and notifications
- Tracking of activities
- Collaboration of all parties involved
- Convergence of process and information
- Redesign of business processes
Start collecting data by asking questions about your enterprise and your
implementation. Your implementation team might have already documented the
answers to some of these questions.
The answers to the following questions provide background information for planning
Workflow processes. These answers also help you to determine what types of
processes you might want to use Workflow to automate.
Do you have business process flows documenting the various business units of your
organization? Are there different process flows for the same organizations at different
locations? Do the business practices at different locations have major or minor
differences?
Does your enterprise have written standard operating procedures (SOPs)? For example,
does your enterprise have an ISOTM 9000 quality management or ISOTM 14000
environmental management system in place?
Planning Document Page 4
What are the regulatory requirements for your industry? How do they impact your
business processes?
Does your enterprise have written policies that define who are responsible for creating
budgets? Are there written policies that define financial approval limits and which
individuals have the authority to approve spending?
What types of records at your enterprise require approval? Are there written policies that
define the levels of approval that are required for each type of record?
What types of new records must be reviewed by someone at your enterprise? For
example records for new employees or new inventory item records.
What types of new records must be processed by more than one individual at your
enterprise? For example purchasing records, tickets, or work orders.
Are there records that must be approved or activated before they can be used? For
example new asset records, contracts, solution records, and so forth.
Does the life cycle of a record require one or more individuals to review the record and
then take action, such as approving the record or changing its status?
Do you want to handle status changes for new records manually or via a Workflow
process?
Are industry standard processes available to follow that can be formalized in the various
affected applications (ITIL, Service Management angles)?
What are the common paths that a record can follow? Which factors decide where a
record goes next? Can the system determine which path a record takes based on data
contained on the record? Or, does the record require that an individual review or act on
the record? Do these common paths have any exceptions?
What actions must be taken at each decision point? Who must initiate these actions?
How quickly must a task assignment be performed? Does the task need a time limit and
escalation?
What are the different statuses that a record can go through during its life cycle?
How will individuals be notified of Workflow assignments? Individuals who are going to
be assigned tasks must have person records and user records.
Which individuals must be notified of the progress of a record? The system can send e-
mail messages to notify individuals, but creating person records for all individuals who
will be receiving notifications is more efficient.
Which individuals supervise other workers? You must list these individuals as a
Supervisor on person records for escalations and notifications.
Does your enterprise hire contract labor? Will any contractors be required to interact with
a record in a Workflow process? Must contract workers have person records and labor
records?
Planning Document Page 6
Which level of security applies to individuals in different roles at your enterprise? Which
applications and actions are workers in each security group allowed to view? When you
design your security groups and Workflow processes, ensure that users in a role have
the security permissions that let them perform their assigned tasks.
Which individuals must be informed when records are modified? For example, when the
status of the record changes?
What information must be contained in the text of the message? Which information, such
as a work order number, description, or location, must you include to describe the
record?
Which records must be processed in a timely manner? For example, emergency work
orders, or tickets subject to service level agreements.
Which kinds of records require that someone be notified when a record is created,
modified, updated, or passes a certain date? For example password expirations, asset
lease renewals, contract expirations, and so forth.
Planning Document Page 7
Under what conditions a record must be escalated? For example, if a work order has
passed the Target Start date and the status is still waiting for approval (WAPPR).
What types of actions must be taken when an assignment is escalated? For example,
changing the status of the record, or reassigning the task to another user.
Who must be notified when an assignment is escalated? For example, the assignee,
their supervisor, and so forth.
Do you want the system to generate ticket or work order records during a process?
Do you want the system to apply a service level agreement during a process?
Do you want the system to change the status of a record during a process?
Do you want the system to initiate a Workflow process for a different object from within a
process? For example, to launch the incident process from within a service request
process?
How do records enter the process, and where do they go when they exit the process?
When are the records managed by a process, and how long does it take a record to go
through the process?
What parts of your current processes are working well and should be kept?
Planning Document Page 8
What parts of your current process do not work or are inefficient and should be
changed?
After you answer these questions, you can begin to format your information into a
flowchart. You can also use a spreadsheet to generate lists of process elements to help
you identify whether there are process elements that you can reuse. Ensure that you
define the beginning and end of the life cycle of a record. Also, define what parts of the
life cycle will be managed by a Workflow process.
As you document your business process, note possible trouble spots, such as
undocumented procedures, or different ways to complete the same task. Address these
issues and refine your business processes before you create and implement a Workflow
process.
In your Workflow process, incorporate the most efficient and effective ways of
completing the various business tasks required by a business process.
During your research, you might have discovered that the business processes at your
enterprise were not well defined. If so, evaluate your current practices and determine
how you can improve or standardize them before you design Workflow processes.
Remember that the system can direct records only through paths that you define when
you create a Workflow process. When you design a process, be sure to consider what
can happen at each decision point and include all possible paths that a record can take.
You might choose to begin your Workflow implementation with simple processes. You
can always build in more complexity in a later revision.
Planning Document Page 10
Workflow process elements give you great flexibility when designing Workflow
processes. The types of Workflow processes that you can design fall into several
general categories. These categories are based on the number of individuals who must
interact with the record and the amount of freedom they have to make decisions
regarding the record.
When a process does not require user interaction with the record, you can create an
automated type process. With an automated process, the system uses the information
contained on Condition nodes to trigger actions regarding the record.
When you have a process where several different individuals must interact with a
record, you can create a routing type process. With a routing type process, the system
uses the information specified on Manual Input and Task nodes to route the record to
the individuals who must make decisions or take actions regarding the record. The
system "pushes" the record to each individual who must act on the record.
When you have a process where a single individual interacts with a record you can
create an interaction type process. The system uses the information specified on
Interaction and Manual Input nodes to guide the user through a structured interaction
with the record. The system "pulls" the individual through the process.
You also can create a process that includes elements of both routing and interaction
type processes. Hybrid type processes can include Interaction, Manual Input, and Task
nodes to manage the different types of user interaction with the record. Hybrid type
processes are useful when some individuals have guided interaction with a record,
while others have more flexibility in how they interact with the record.
Design Considerations
As you design your Workflow processes, remember the following design considerations:
Generic processes require less maintenance. For example, you might modify roles that
resolve to an individual more frequently than roles that resolve to a person group.
When designing processes, consider when you want the system to generate
notifications. The system can generate notifications when any of the following occur in a
process:
o when a record reaches a decision point (node)
o when a record follows a specific path (connection line) in a process
o when task assignments are made
When designing processes, consider how you want to handle null values. What happens
if a process reaches a decision point that evaluates data on the record and that data is
missing?
Planning Document Page 11
What happens when a record takes the negative path? Does it have another chance to
be modified and take the positive path, or does it exit the process permanently?
If a record can go through a process again after it has been rejected, is there any limit to
the number of times a record can repeat the process?
Try to avoid having separate groups of nodes and connection lines that perform the
same function at different points in a process. It is more efficient to reuse the same code
via looping or creating a subprocess.
The number of nodes that you can include in a process has no limit. However, simple
processes are easier to troubleshoot and maintain. If the number of nodes in your
process grows too large, you might want to consider whether you can break down the
process into subprocesses.
When writing SQL statements, consider how your SQL syntax affects how the system
interprets the statements. For example:
o ASSETNUM — (no colon) instructs the system to go to the database for the
asset record.
o : ASSETNUM — (with colon) instructs the system to use the asset record in
memory (the record currently on screen).