|
What is Workflow, what are the software elements?
Workflow Management Software
Many companies today are reorganising: the top-down
command-and-control hierarchy that has typically characterised
business is out. Smaller, independent, self-directing business units
are in. The goal of this "process reengineering," as it is
called, is to develop a better mechanism for allowing work processes
to become market driven. With the growth of client-server-based PC
LAN networks, the existing technology and information infrastructure
is already in place to meet this goal. All that is needed is some
vehicle for automating these reengineered processes within the
client/server topology. Workflow management software is fast
becoming a vehicle to do just that.
Note:
1. In September 1994. Wang acquired Bull's workflow and imaging
business world-wide, along with Bull's federal systems business and
its U.S. customer services business. FileNet began shipping its long
awaited Visual WorkFlo in December 1994
2. Prices and product status quoted are as identified at
September 1995
Introduction
Workflow has its foundation in the idea that business processes
are actually sets of tasks done in a prescribed order that
incorporate information from various sources. The earliest workflow
management systems concentrated on managing the flow of information
as it is processed, shared, manipulated, and compiled.
An example is a company's hiring process. Whenever an employment
offer is made and accepted, a routine process is set in motion.
Information regarding such things as the new employee's payroll
deductions, insurance benefits, photo ID, telephone number, and
office location is collected, reviewed, and routed to other
departments for processing. Information may be routed as paperwork
or sent electronically as a message or a form. Departments that
process new employee information-Payroll, Benefits, Security,
Facilities Management, each have their own work to do based on the
new employee information and their own procedures governing how to
do it.
This traditional implementation of workflow is primarily
concerned with automating existing operations. As global competition
heats up, however, companies are searching for ways to apply
workflow management tools to reinventing the way they currently do
business. For these organisations workflow management involves
looking at business processes as networks of human relationships
augmented by data and material flows. The goal is to first make
these relationships explicit, then to automate both the actions that
operate these relationships and the involved data and material
flows.
Hence, workflow management software is increasingly being used to
initiate and develop applications by, for, and within the workgroup.
Emphasis on automating data flows and the existing tasks involved in
the movement of data is giving way to the automation of the actual
actions that define and operate the work itself, not just the
supporting data flows. This transition coincides with the increasing
trend toward right-sizing, where the concern is achieving greater
workgroup productivity by empowering workers through client-server
computing.
Approaches to Workflow Management
How an organisation approaches the management of its workflow
will determine which workflow management tools are appropriate to
the organisation. There are four types of workflow, and each
requires a different management approach:
- transaction-based
- ad hoc
- object-oriented
- and knowledge-based.
Transaction-Based Workflow
Transaction or case-based workflow is traditionally found in
"production" departments in which workers perform related
tasks where the output is often the company's product (e.g..
insurance claims processing, bank loan application processing, or
pharmaceutical case report form processing). This type of workflow
also characterizes certain administrative operations such as
processing purchase orders expense reports, time sheets, or human
resources recruitment. Workflow management tools for these
environments must support sophisticated routing, the capability to
interface with other programs for automating certain work functions,
and extensive work-in-process reporting.
Ad Hoc Workflow
Ad hoc workflows arise from the specific temporary needs of a
project team whose members become active and inactive depending on
their function within the group. For example, a new drug development
team consists of a workgroup whose members come from many
departments-chemical compound development, animal testing, human
testing, regulatory liaison, packaging, and advertising. Each member
has a specific role to fill in the process of obtaining approval for
the drug. Since this process is temporary, workflow management
software must provide tools that let the members themselves initiate
and build the processes for the group. Some workflow management
packages offer graphical tools, designed for nonprogrammers, that
allow team members to customise their own desktop environment,
design repetitive workflows and track progress on open work items.
These tools must allow users to dynamically change the workflow
process as the workgroup's requirements change over time.
Object-Based Workflow
This type of workfiow is characterised by interactive development
tools whereby users can graphically depict and change its existing
workflow process. The focus is on automating the relationships
within the process to obtain greater productivity. In this type,
workflow management is a network service separated from the
applications and transaction processes it controls. These services
provide the capability to move work electronically between
applications according to a user-defined workflow activity map.
"Work" can consist of various combinations of images,
data, messages, etc.
Knowledge-Based Workflow
This type of workflow goes one step beyond object-based work-flow
and assumes that a new model for the organisation's processes is
required if the business is to truly benefit from workflow
automation. Here, workflow development is linked to the concept of
business reengineering. which contends that many of today's top-down
job designs, workflows. and organisational structures are from a
different competitive era when technology was limited, markets were
highly regulated, there was no threat from overseas competitors and
the labour force was predominantly low or semiskilled. With
knowledge-based workflow, an analysis of the current process goes
beyond understanding who does what, when and how. It also questions
why and identifies ways of measuring whether or not current methods
are obtaining desired results. Here, more visual programming tools
are required that allow workers to build and test workflows
"on-the-fly." Ideally, these development toolkits would be
front-ended with a set of CASE tools or business process modelers
that would assist non-programmers in the design of new work
processes.
Workflow Components
No matter how workflow is managed each approach must provide
tools for handling the interrelationships between the five
components of a business process:
- People
- People are performers of the various tasks at each point in
the business process. For example. some people compile
information, others review it, others may approve further
courses of action.
- Procedures
- Procedures are rules for processing such as "all
employees level 20 or higher automatically receive free life
insurance benefits."
- Information
As travelling images within a process. information is the way to
make the process visible to all performers and customers and the
means to accumulate value throughout the process. Information is not
the process. rather. it is the way to make the process visible.
establish a tracking capability. and maintain a historical record of
accumulated work.
- Task
Tasks are steps or activities (also called work steps or actions)
that must be performed at each point within a business process and
must be consistent with the workgroup's overall procedures. For
example, opening a spreadsheet application and calculating the
federal tax rate for a new employee with three dependants is a task.
- Management
Management is the capability to monitor the flow of work and take
appropriate action.
Workflow management software defines the relationships between
these five components. including what occurs, under what conditions,
at what priority, and under whose supervision or discretion.
Selection Criteria
Before applying workflow management software to automating a work
process users should first establish what that work process is and
what steps can and should be automated. In other words which steps
need to be performed by humans and which can be better performed by
computer automation. For example, the purchasing department
super-visor is responsible for assigning purchase orders to the
accounting clerks for processing. Will the supervisor continue to
handle this or can a rules-based routing scheme be implemented that
will automatically place all scanned images of incoming purchase
orders in a central queue, to be monitored by the workflow software,
or distribution to the individual clerks' electronic mailboxes? The
more steps to be automated, the greater the functionality that will
be demanded from the workflow software.
Not all workflow software packages provide the same level of
automation Some software packages claim to be workflow applications
when they merely support sequential routing of images from one
user's electronic mailbox to another. They do not provide for
exceptions: nor can they handle more than one type of data, such as
word processing documents and spreadsheets along with image data.
Hence, users should be aware of the minimum feature requirements for
building workflow management applications.
Rules-Based versus sequential Routing
Workflow programs must provide some type of information routing.
The simplest sequential routing, moves information from one person
to the next on a predetermined list. But what it an exception occurs
(such as the absence of a signature for approval)? Is there some
mechanism for a system administrator to override the predefined
routing scheme? Another mechanism would be rules-based routing,
which defines the routing path according to certain rules or logic:
e.g.,
if-then-else. (Note that information should be any data type or
object that is required in the work process. The system should be
able to handle forms, images, files, folders, etc. Often, what data
types the system will handle will determine whether it is useful to
a particular type of application.)
Parallel Processing
Another routing scheme which should be supported is parallel
processing. This allows work to be routed to multiple queues or
in-baskets for simultaneous processing. This is particularly useful
when a work item must go through several work steps where the
processing order is not important, or where two different, but not
contradictory steps must be performed first before the work can move
on to a third step. Parallel processing also has the added advantage
of being able to use idle resources to speed up processing time.
Role Assignments
Rather than assign an action or step of a workflow to an
individual person, it should be possible to assign the action to a
role: for example, the "Issue Cheque" step in an
accounting procedure should be routed to the role: Accounts Payable
Clerk. The administrator then would be able to assign any operator
to that role as required without having to change the routing
program. This provides for those instances when the original person
assigned to an action step is away (e.g., on vacation) and work
needs to be reassigned.
Deadlines
Workflow management should allow the the setting of deadlines.
Each action (step) should have a deadline assigned to it, and backup
actions should be defined (for example: reroute the case to the
supervisor) when the deadline is missed.
Work-in-Process Tracking
All objects of a workflow must be monitored by the system so that
the process status is visible to management at all times. For
example, managers should be able to query the system at any time to
evaluate the number of outstanding cases, unpaid invoices,
unapproved travel and expense reports, etc. The status of all
work-in-process queues should be available so that work can be
shifted, as required, and bottlenecks are eliminated. The proper
users should be alerted when actions are overdue or have been
pending beyond a specified amount of time (for example, an accident
claim is awaiting a police report for further processing).
Not just anyone should be allowed to initiate a workflow process,
view status reports, reroute a document, or modify a screen within a
workflow. The workflow program should be able to specify who can
perform these functions. In addition, some mechanism must be in
place to perform electronic signature verification (often
accomplished by requiring a user to enter his or her password ID)
before the workflow is allowed to proceed to the next step.
Integration With Other User Applications
Sometimes the next action or task in a process is not to be
performed by another person, but by another computer application.
For example: if the next step requires that a form letter be sent to
the patient indicating that the doctor's report is required for
further processing, the workflow program should be able to launch a
word processing program to open the form letter, fill in all the
necessary information from the central database and print the
letter.
Document Rendezvous
When documents come into the system, the workflow management
program should be able to match the new document with existing
documents that pertain to it and clip them together before it is
routed to the next action step. For example: a customer's folder is
automatically retrieved in response to an incoming letter from that
customer. The letter is then forwarded with the folder for
processing.
Functions Automated by Workflow Management Software
What workflow functions can be automated?
Most workflow management development tools can be used to
automate one or more of the following:
- Information routing
- Task processing
- Work-in-process reporting
Information Routing
The simplest routing that can be automated is based on a
predefined set of processing steps (routing path) associated with a
form or document to be processed. When both the normal and exception
processing flows along the routing path arc predefined, routing
automation is said to be rules based.
In many implementations a database table stores paths for each
transaction type, for example: all property damage claims go to the
property clerk, all casualty claims to the casualty clerk. By
examining specific entries on the claims upon entry in the system
the workflow software will automatically route the document per the
rules set up in the database table.
When routing cannot be predefined by a set of rules but is
conditional upon information brought into the system at various
steps in the process conditional routing routines apply. For
example: all purchase orders that exceed the sender's signature
authority are automatically routed back to the originator.
Workflow management software must be implemented over a network
in order for routing to occur. Work is routed through electronic
mail (e-mail) or a network's LAN transport, such as NETBIOS. Routing
based on e-mail usually places incoming work in a particular
person's in-basket. LAN transport based routing deposits work into
queues for which access privileges are assigned.
Task Processing
At its most complex, workflow management automatically triggers
processes that perform the tasks necessary to complete a business
process without human intervention. In the case of a new hire, for
example, identifying the new employee as a level 20 at the start of
the workflow would automatically generate application forms for
executive life insurance with most information fields already filled
in with pertinent applicant data.
In an auto insurance claims processing operation, a workflow
management program would automatically check the policy database for
type of coverage, calculate potential payment based on damage and
deductibles, and generate requests for police reports and drivers'
records before routing the claim form to the claims examiner. Once
the claim has been processed and approved the program will trigger
the check-writing process producing a cover letter to the insured,
queuing it to the printer, and recording the entire transaction in
the claims history database.
Automatic task processing capabilities vary among workflow
management packages and depend on the availability of development
tools for interfacing the workflow program to existing applications
software: For example: via application programming interfaces (APIs)
or Remote Procedure Calls (RPCs) to existing databases. Many
Windows-based workflow management development languages allow for
exchange of data among different applications (e.g., word processing
and spreadsheets) via Dynamic Data Exchange (DDE).
Work-in-Process Reporting
Work-in-process reporting tracks the location of outstanding
items, what steps have been completed and whether or not processing
is on schedule. Workflow management of transaction-based workflows
often includes extensive work-in-process capabilities that assess
current work volume, backlog and age of backlog. This alerts users
to the location of bottlenecks within the system so that tasks
and/or documents can be rerouted. This type of software can also be
used to produce ad hoc management reports.
The Role of Databases in Workflow Management
Workflow management software stores its routing instructions in a
queue. Workflow queues are nothing more than database tables with
queue entries (i.e., work to be processed) stored as records.
Attributes associated with the queue entries (e.g.. the next role in
the process, its address etc.) are stored as fields in the records.
In some implementations, the database serves as a repository for
such things as processing rules, procedures, associated tasks, and
information assembly criteria.
Typically, all workflow software requires its own database
whether it be proprietary or derived from a standard database, such
as Oracle. In order to fully integrate with other applications the
software should provide some way of allowing other applications to
access the data within the database. An example would be:
to obtain information on the amount of money collected on
invoices routed through the workflow so that the information can be
input into a spreadsheet program. In addition, workflow programs
should also be capable of accessing data from other databases to
complete their tasks: e.g. a workflow application that sends form
letters to overdue clients should be capable of accessing the
clients' names and addresses from an existing mainframe database.
Workflow Management Development Tools
The intent of workflow management development tools is to give
the actual system users the ability to program a workflow
application. Currently however workflow management software is not
an off-the-shelf technology. Even vendors who now provide graphical
flowcharting tools for end users to develop some limited function
applications also provide sophisticated tools, intended for
programmers for designing "mission-critical"
production-oriented workflow applications for the enterprise. Most
vendors caution that an organization's initial workflow development
must be performed under the guidance of an MIS professional. Most
workflow applications programs will still require extensive
scripting for all but the simplest operations. However, once in
production development tools are now available that allow users to
make workflow modifications without the aid of MIS.
Hence, the trend is increasingly to provide more functionality in
graphically oriented flowcharting development tools that can act as
front ends to traditional scripting tools for more complex
application development. This front end now serves two purposes: to
assist end users in describing the workflow process to MIS at the
onset of development and to allow end users to make routine
modifications to the workflow "on-the-fly."
In general there are five types of development tools employed in
building workflow applications:
- Workllow configuration tools-allow users to build a workflow
management program by responding to promptod questions in menus
or by using a graphical tool that produces an onscreen
flowchart. Some packages provide simulation and analysis
modelling tools for testing a workflow program before any code
is generated.
- Scripting tools-are used to code the workflow management
program. Object-oriented scripting tools allow developers to
point and click on lists of typical workflow functions such as
"suspend" or "print." and code is
automatically generated for executing those functions. Scripting
engines are often used in conjunction with workflow
configuration tools to automatically generate code based on the
desired configuration. Scripting tools may also be 4GL languages
specifically designed for creating workflow programs.
- Electronic forms generators-are used to design screens for
information capture. The generated forms may contain intelligent
fields that automatically prompt other processing actions.
Graphical forms generation tools provide designers with features
found in graphical user interfaces (GUIs) such as scroll bars,
radio buttons and pull-down menus. Some workflow software
packages accept screens designed with other forms' design tools,
such as Object Vision.
- Interface tools APIs, RPCs and other interface tools allow
workflow processing programs to automatically open application
packages such as word processors and spreadsheets at appropriate
points in the work process.
- Reporting tools-allow users to develop customised reporting
mechanisms for monitoring both individual and group performance.
Ad hoc reporting capability should also be available. These
tools should be able to provide meaningful data on the status of
all active and inactive processes.
Market Perspective
Because it is a systems function, workflow management software is
very rarely sold as a separate package, but is more likely
integrated with other computer application products such as document
imaging, electronic mail (e-mail), or office automation. Vendors of
workflow management development tools usually market their products
to third party vendors who will integrate their workflow
capabilities into their proprietary office products. The extensive
upfront development demanded of workflow applications lends itself
to distribution through value added reseller (VAR) channels. The
vendors whose products are profiled in this report lead the industry
not only in their product innovations but also in their vision for
future development in this area. They include those who integrate
workflow into their applications products as well as those who
provide workflow development tools to support other vendors'
development efforts.
Current Applications
While the trend is moving toward using workflow software to
reengineer new business processes on a workgroup or project basis,
most workflow applications to date have been implemented in
heads-down, mission-critical production environments. Experience in
these situations has shown that work processes that lend themselves
best to automation are those where:
- The process is well defined and rules or conditions can be
identified (there are few exception conditions)
- Fixed delays or deadlines are involved such as those
associated with government regulations, contractual obligations,
accounting periods, customer service and sales lead follow-up
- Tracking progress is important
Related Technologies
Examples of successful workflow management applications that have
been implemented in production departments have involved such
processes as:
- Bid and proposal routing and tracking
- Engineering change notice distribution
- Automated purchasing requests
- Tax management
- Property transfer
- Handling customer service and complaints
- New drug registration
- College enrolment
- Human resource recruiting and hiring
- Claims processing and management
- Jet-engine turbine blade design
These implementations along with other early adopters of workflow
management software provide evidence of the software's capability to
improve response times and time-to-market, decrease error rates,
improve customer service, and provide more compliance to standards
by streamlining and managing the work through computer automation.
Future Trends
Workflow management software is changing to reflect new business
paradigms and restructured organisations. The trend toward
client/server architectures, GUIs, multiple database access and
growing use of PC LAN based networks will continue requiring open,
flexible, scaleable workflow products. Workflow management software
will continue to migrate out of the production department and into
the workgroup, with development tools that empower end users to
initiate workflows in response to market demands. For example:
FileNet announced WorkFlo Custom Controls for Microsoft Visual
Basic, and, as part of Version 4.0 of its WorkForce Desktop and
WorkShop software released Callable WorkFlo which allows users
familiar with PowerBuilder and Visual Basic to create frontend
interfaces to FileNet's imaging and WorkFlo applications that were
developed with its WorkFlo System Development Kit.
Press
here to go to workflow mainpage < |