Content Server Workflow Best Practices
Content Server Workflow Best Practices
Best Practices
Workflow and Best Practices
Contents
Abstract .................................................................................................................. 4
Overview ................................................................................................................. 4
Application .............................................................................................................. 4
Background ............................................................................................................ 4
Settings and Discussion ............................................................................................ 6
Introduction ...................................................................................................... 6
Understanding and Illustrating the Current Business Process ........................ 6
Best Practices Abridged List ................................................................................... 7
Understanding the problem to be solved is crucial! ......................................... 7
First Pass at Mapping out the Process to Content Server Steps – Story
Boarding ........................................................................................................... 8
Designing the Solution............................................................................................ 8
Participants to Performers ............................................................................... 8
Packages to Data Elements ............................................................................. 9
Reporting and Notification................................................................................ 9
Understanding the Workflow Agent................................................................ 10
Some Useful Facts and Best Practices to Consider During Map Design ............ 10
Browser Settings .................................................................................................. 12
Workflow Map Naming Convention(s) .................................................................. 12
Defining the Process ............................................................................................ 13
Dates and Times................................................................................................... 13
Options for these due dates include .............................................................. 14
User and Group Options .......................................................................................... 16
Advanced User and Group Options ..................................................................... 16
Authenticate and DS ...................................................................................... 17
Users and Groups .......................................................................................... 17
Assigning steps to groups with only one user ......................................... 17
Replacement Tags .................................................................................................... 18
Priority .................................................................................................................. 18
1. Is the alteration of a priority committed as a record in the audit
table? ................................................................................................................... 18
2. What permission does a manager need to have to alter the priority? .......... 18
3. What do the numbers mean in DataType_1_3_ and
DataType_1_4_FormID? ..................................................................................... 19
More on Workflow Map Permissions .................................................................... 19
More on Attachment Permissions ........................................................................ 20
Management Permissions .................................................................................... 21
Attachment Permissions ....................................................................................... 21
Troubleshooting Workflow Paths............................................................................ 22
Best Practices Abridged List .......................................................................... 22
Loopbacks ............................................................................................................ 23
2
Here is a list of general rules: .................................................................. 23
Sub workflow ........................................................................................................ 24
You can use sub-workflow steps to: ........................................................ 24
Performance Hit?.................................................................................................. 25
Exporting – see notes about this above ............................................................... 25
Workflows and LiveReports .................................................................................. 26
Some abridged Workflow Information to Assist in Creating Live Reports ......... 27
Process Automation Step ..................................................................................... 27
Item Handler Step................................................................................................. 29
Testing ........................................................................................................................ 31
Functional Testing ................................................................................................. 31
End-User Testing.................................................................................................. 32
Problems During Testing? .................................................................................... 32
Workflow Validation .............................................................................................. 33
Message Meaning ................................................................................................ 34
Content Server will check for errors such as: ................................................ 34
References ................................................................................................................. 35
About OpenText ........................................................................................................ 36
3
Abstract
Application Note dealing with OpenText™ Content Server Workflows and best
practices for workflow design, management and use.
Overview
This application note was written in an effort to enhance product information that may
not be covered in documentation to date and to expand on information that is
presently provided either in Content Server Training Courses or Customer Support
materials.
Application
The following document is an attempt to compile a number of best practices,
recommendations and suggestions for the designing, editing and managing of
Livelink 9.x workflows. While most of these best practices applies to most Livelink 9.x
systems, this documentation has been written against versions 9.5 SP1, 9.6, 9.7.x,
and Content Server 10, and 10.5. Where behavior of Content Server is known to
differ between versions, every effort will be made to identify the differences.
Where necessary, specific areas of the best practices will be covered as follows:
Background 1
The following document will touch on some topics and subject matter that is currently
covered in Content Server Training courses, including the following:
• 2-0110 Content Server Workflow Design I
• 2-0111 Content Server Workflow Design II
• 2-0112 Content Server Workflow Design III
• 2-0114 Designing and Implementing Content Server Forms
• 2-0115 Content Server eForms
1
It is assumed that readers of this document have previously attended the appropriate Content Server
training classes or have an equal level of practical experience.
4
Some or all of these courses should be considered as required training for individuals
who plan on designing and maintaining Content Server Workflow Maps. For those
individuals who plan to merely initiate, interact with WF instances and packages or
manage the maps, this basic information is covered in the 9x-101 Knowledge
Fundamentals and the 9x-201 System Administration courses.
5
Settings and Discussion
Introduction
The Content Server Workflow is a powerful mechanism for automating and
monitoring business processes. Content Server Workflows provide a set of features
and options that allows an infinite number of unique workflows to be developed.
6
From the information gathered so far, begin determining what functionality you will
need to complete the work at hand. Can your project be completed using the tools
immediately at your disposal or is additional functionality or modules required? For
example: HTML or Web Forms, e-Sign for digital signatures, e-Forms to make use of
advanced Form capabilities XML Workflow Interchange (XML WFIC) to transfer XML
data to other systems. At this point it may be helpful to tabulate or map out what
steps and WF items would be helpful in meeting various business requirements.
Where additional modules are required, that too should be noted.
7
First Pass at Mapping out the Process to Content Server
Steps – Story Boarding
The following guidelines should be used when developing flow charts documenting
the WF process:
• Processes should be mapped left to right and top to bottom
• Each flow chart item or shape should contain one discrete event
• For complex processes, a main process should be diagrammed with sub-
processes in separate diagrams
• Compartmentalize your processes where possible, for example there may be
separate stages of a business process where documents are created, marked
up, approved and then released or published.
Participants to Performers
Mapping of process participants to Content Server Workflow performers is a
straightforward process. First, it should be determined if the Initiator step is
appropriate for the design. In situations where different users initiate the workflow
and the process involves review or approval of that user’s submissions, the Initiator
step should be used. WF Steps that have a group of participants can simply be
mapped to an existing Content Server group or a new group can be defined. When
the customer has identified individual Participants for certain tasks in the process,
some questions need to be asked. If the process is time-sensitive, it is not a good
idea to have a single user indicated as a step performer, even if that individual
will be performing the step 99% of the time. It creates a problem should the user be
unexpectedly absent (as no one else can perform the task). In this situation, it is a
good practice to create a Group to perform the step. Include in the Group the person
who normally performs the step and some additional personnel, such that one of
them will be able to perform the task when the regular step performer is unavailable.
This way the process will not stall due to one individual’s absence. An alternative to
this approach is to make use of the WF Proxy (more on this later).
8
Packages to Data Elements
There are three basic types of data that may become part of the WF packages that
flow through their business process. Correctly determining the type of data will help
to determine how it should be modeled in the workflow process. Some of the data
used in the WF may help determine the paths that the work process takes
(accept/reject disposition or attribute data). Every data element that is added to a
workflow is saved in the database including: dispositions, attributes and comments.
These data elements can be used to report on decisions made by participants as well
as assisting in determining which path the workflow will take. An example of this kind
of data is a disposition.
Metadata is data about the documents, forms or other Content Server objects that
are being routed. Metadata can assist in searching and reporting. Examples of
metadata are workflow attributes and object categories and attributes. Workflow
attributes are process-centric and useful in later reporting on the process
itself. Categories and attributes are object-centric and follow the objects within
or outside of the workflow process.
Attachment data can also be an important and integral aspect of many workflows.
The workflow package (Attachments Folder) and associated functionality is available
to assist customers in standardizing processes, whether it is document – centric or
data – centric.
9
steps directly to users email addresses, based on the email address stored in their
Content Server profile or login.
• When moving from one web page to another during map design, be sure to save
your work using the Add to Workflow Definition button
( ), otherwise your changes could be lost
• Save your work often. When PAINTING a map, workflow changes are saved in
memory on the server and written to a cache file. The Java Applet 2 reflects the
2
10.5 does not use a Java Applet, it uses HTML 5
10
most recent version of the cache file. Only when you save the map does the
definition get saved to the database. Set the version limits on your workflow
maps. Since we trust that you are saving often, you will quickly create many
versions of the map, so we recommend that you let Content Server automatically
purge old versions as you create new ones.
• Use the Edit Performers functionality on the WF Map to ensure that all steps
have an assignee
• Use the Verify Map functionality to test the WF Map has no other reported errors
• Consider using HTML tags like numbered list to make steps instruction sets more
readable and use WF replacement tags to provide dynamic step naming
• When picking assignees or users, use the ‘Easter island head’( ) instead of
trying to key in assignee
• For users to initiate a WF map, See and See Contents permission is required.
• For users to initiate a WF or where Forms are present in the WF, a minimum of
"See" and "See Contents" are required on the workflow map and on the form
templates.
• A minimum "See" and "See Contents" are required on the workflow map and on
the Form Templates and at least one step to be able to initiate it.
• Consider using Shortcuts / Aliases to WF Maps so people do not have to
navigate to the map.
• Assign steps to Groups as often as possible. It will save time and give you
flexibility with your performers. If you wish to change performers, you can change
the Group membership, not the Workflow.
• Disable versioning on WF attributes unless you have a specific requirement to
track changes made to attribute values. By keeping versioning enabled (the
default setting), you grow your database table unnecessarily.
• If your process has many evaluate steps and loop backs, try to paint the map so
that these evaluations and loop backs are in blocks, and make the blocks sub-
workflows. This will make initiation much faster and finishing tasks that do loop
backs will also be more efficient for Content Server to process (more on
loopbacks later).
• The mantra concerning loopbacks should be chanted once a day during map
design: “I shall remember that loopbacks can be nested, but they cannot
intersect.”
• Try to ensure that the first step(s) in the workflow are NOT evaluation steps (as
these will make initiation take longer).
• The business need should determine when to use recalculate due-dates. If
performance becomes an issue, then an Architecture Assessment should be
performed to profile the Content Server system and recommend a suitable
architecture.
• There is a potential performance impact if WF Map Designers use multiple
nested evaluate steps as opposed to simplifying the evaluations, however,
business needs will dictate how the WF Map must be drawn.
11
NOTE: Each time a step is processed, Content Server must load
the entire map definition into memory to evaluate the conditions;
the more steps on the map, the longer it will take for Content
Server to process. Creating fewer evaluate steps reduces the
number of steps on the map and allows Content Server to
evaluate the same branching logic all at once.
• When using the workflow agent to finish a step, control is returned immediately to
the end user and the browser refreshes. The workflow will move forward in the
background by the workflow agent
Browser Settings
• Browser Settings, including visit page every time
• Browser and computer workstation should use a supported java (JRE) version
• While editing or painting Maps (also when Suspend and Modify Map) do not use
browser back button
Figure 1
When you are ready to SAVE your modified map, choose MODIFY on the menu
12
Defining the Process
• Create needed WF performer and manager groups
• Set general options for entire workflow
• Set all workflow management options
• Assign groups or users to all steps via the ‘Edit Map Performers’ function
• Select the appropriate group completion option for group steps
• Define all workflow attributes
• Edit all WF Step names to be unique and descriptive.
• Define all dispositions.
• Create all Step connections and routings (parallel, rendezvous, loopback)
• Attach all attachments and set permissions
• Set all task durations as desired
• Set step options for initiation, delegation
• Hide any unused options (attachments, comments, attributes).
• Create and paste HTML instructions for all tasks.
• Set all process step email notification options.
Naming Groups: The role-based performer groups should be named clearly, based
on the roles that the participants will perform. Prefacing the name with ‘WF-‘ is a
recommended or common practice, as it makes future maintenance of the groups
easier by clearly indicating that the groups are related to workflows processes
WF Step Instructions: Providing clear and concise instructions for each workflow
step is the key to making sure that users understand the actions they need to perform
to complete a step. Using the feature that allows the instructions to be written in
HTML and pasted into the instruction area makes them more readable and is a
recommended practice and highly encouraged. Using the workflow replacement tags
is also a great way to personalize the instructions to the performer. URL links to
Content Server documents or other pages in the workflow screen can also be added
as part of the HTML based instructions to save the users clicks.
Advanced User Features: More is not always better. Use the ‘Send for Review’ and
‘Delegate’ options sparingly when first implementing a workflow. These features,
while powerful can make it more difficult for the end user to understand what they
need to do. These types of features are best deployed after a workflow has been in
use for a while, when a need becomes obvious, or when users might benefit from the
extra flexibility.
13
Each step in the workflow can have a specified duration, in days or hours. If that
duration is exceeded, the workflow status becomes Step Late
You can set specific due dates in milestones. If the date specified in the milestone
has passed by the time the workflow reaches the milestone, then the workflow status
becomes Milestone Late.
Content Server can calculate an overall workflow due date programmatically when a
workflow is initiated from the map. When the duration of all the steps has been
exceeded, then the status will change from Step Late to Workflow Late.
The Start Date field in a User Step specifies the earliest date on which the step
should appear in the assignee’s My Assignments page. This is useful if, for example,
you are coordinating an assignment with the availability of another resource such as
a laboratory.
If you select the option of Calculate Target Date, the due date of the milestone will
match the most previous User Step. A date specified via Enter Target Date will not be
so dynamic; most likely, the workflow map will have to be updated before initiation
Milestones can be useful markers in a workflow - when they are passed events are
added to the workflow's audit trail. You can also use milestone due dates to help
drive the workflow, defining a specific milestone due date or letting Content Server
calculate the due date.
14
If the due date for the milestone should be the same as the due date of the prior User
Step, leave the Calculate Target Date option selected. The milestone due date will be
filled in with the appropriate date during the workflow instance.
In order for an evaluation step to incorporate a milestone deadline, the milestone
must be located immediately following the evaluation step, along the false or true
path.
15
User and Group Options
If a task has been assigned to a group (one level or full level expand), the task
will not proceed to the next step until all members have completed it. If
someone is absent, and has not set a workflow proxy, then the work will not proceed
until that person returns and completes the task.
When assigning work to a group, there are four options to choose from to determine
who has to complete the task:
• Member accept: When one member accepts the work, it is removed from the
Assignments page of all other group members.
• One level expand: Each member of the group must complete the task. If the
group has sub-groups, one member of each sub-group must also complete the
task.
• Full level expand: Each member of the group and all members of all subgroups
must complete the work.
• Member Accept [Maintain]: Use this option if the task is part of a loopback
design. When a task is assigned to a group, the same user that processed the
task the first time will automatically receive the work the second and subsequent
times.
When assigning any WF step to a combination of users AND groups, then any
selected group will adhere to the “group options” that have been selected for the
step.
The Workflow Design II course covers this particular Advanced User ‘Role’ option in
much greater detail; however, the following single table extracted from that course
may help to illustrate some of the properties of the Role – based WF.
Experimentation and testing with the Role functionality should be part of the map
design and testing process.
16
Question: For a Role For a User Attribute:
Who Chooses the The Initiator Anyone in the workflow who has Editable
Group or User? access to the user attribute
When is the User At Initiation. The At any point in the workflow, anyone who
or Group Chosen? Initiator must has Editable access to the user attribute
populate all the can choose a user or group.
roles before the
workflow can be
initiated
Can the Specified No. Once the Yes. Anyone who has Editable access to
User or Group be workflow has been the user attribute can change the user or
Modified? initiated, a role group.
cannot be
reassigned.
Authenticate and DS
Directory Services provides two types of functionality, namely: synchronization &
authentication. Synchronization has no impact on Content Server WF authenticate
because the user passwords are still managed by Content Server locally (behaves
just like DS is not installed).
Using DS Authentication forces Content Server WF authentication to pass the
credentials to the authorizing application (LDAP or Active Directory) and will evaluate
the response in the HTTP header REMOTE_USER (this is the same way Content
Server works when logging in with authentication enabled by providing your Domain
Password.
17
Replacement Tags
A tabulated list of supported Content Server WF Replacement Tags is provided
below.
https://knowledge.opentext.com/knowledge/cs.dll?func=ll&objId=18988187&objAction
=ArticleView
Workflow map designers should consult the on-line help
(support\help\_en_US\webwfp\wf_use_tags_bg.html) to see where the Replacement
tags are or are not supported within the map design interface.
Beginning with Livelink 9.5, there is support for the use of <WorkID /> in workflow title
and the Process Automation email fields. <InitiatorMail /> should work in any field that
allows replacement tags. The <SubWorkID /> tag is only supported and accurate in
Process Automation Step Email fields; for all other steps and fields, it will put
something in other fields, but it will probably not be what is expected, and as such is
not supported
Additionally, WF Map Designers may wish to improve the appearance and readability
of any text in a work package, such as instructions, comments or initiation message.
Typical HTML tags can be used. (e.g., Bold: <b> </b>; Emphasis (italics): <em>
</em>; Line break: <br> </br>; Ordered list: <ol> </ol>; Bulleted list: <ul> </ul>.
Priority
Values stored in the db are 0 for high, 50 for medium and 100 for low.
18
Replacement Tag Result
19
or modify it when needed, with the appropriate permissions. By default, the initiator of
the workflow is its master manager, but you want to assign management of the
workflow to another user or group. You change the workflow's manager and set
permissions for the initiator and manager or managers of the workflow on the Edit
Management Permissions page. The master manager of the workflow has full
management permissions for the workflow. These permissions are: See Details,
Suspend, Stop, Delete, Archive, Change Permissions, Change Data, and Change
Route. You may, for example, want the initiator to be able to edit all aspects of the
workflow instance except the path that the work process follows. In that case, you
would give the initiator all permissions except Change Route. In addition to the
Master Manager, you can set as many additional managers as you wish. These
managers can have any combination of management permissions. You can set a
group as a workflow manager, in addition to a single user. Management permissions
appear nested on the Edit Management Permissions page, showing their
dependencies. You cannot assign a nested permission without assigning the
permission upon which it depends.
Figure 2
20
Management Permissions
Although the intent of Management Permissions is to allow those who should have
management rights over an active workflow, assigning groups with See Details
permissions is a great way to allow users who are not participants of the workflow
access to view status of the executing process.
Users with management permissions to a workflow will have the ability to navigate to
the Workflow Status page of that workflow directly from their Personal Assignments
page by clicking on the workflow title (the far right column of the assignment).
Attachment Permissions
Since public access has full control on the workflow attachments package, ALL
USERS IN CONTENT SERVER who have Public Access enabled will be able to view
the workflow attachments. This includes users who are not participants of the
workflow and do not have management permissions. Users gain access to workflow
attachments through search.
In Livelink 9.5 the attachments package was moved to a new volume. This should
eliminate the ability for users to retrieve attachments documents through search.
21
Troubleshooting Workflow Paths
The evaluate step offers many options. Here are some general pointers to consider
when creating complex expressions:
Every outcome defined in the Expression Builder must have a path to follow.
In expressions that have many potential outcomes, you must ensure that the
Evaluate step will address all of the possible outcomes. Create a truth table or matrix
of all the possible values and their outcomes. Your evaluate step should have a path
for each of these values. True tables are discussed in the Workflow Training course.
Don’t forget to include a false path if it’s possible that none of the expressions
will have a true outcome.
The false path can be used as the option to follow if no statements evaluate to true.
This could be the last case in your scenario or it can catch all – other workflow
expressions that have no valid route. When you include a false path, the workflow will
not hang indefinitely or complete prematurely and it will always have a path to follow.
Use the evaluate and User Step expression builders at the appropriate time.
If all of the steps that branch from the evaluate step contain the same task, but will be
sent to different user(s), then the User Step expression builder is a better choice. The
more complicated the workflow routing, the more testing needed to make sure no
routes are left “un-routed”.
The Verify Map Definition function will not check to make sure that all
outcomes have been considered in the evaluate step.
Unlike the evaluation step expression builder, the User Step stops evaluating when it
reaches the first “true” path. Programmers call this an “if / else” structure. This is an
important distinction that you should keep in mind.
22
NOTE: Common request: "On the fly, I want to be able to specify
a range of individuals who would perform the next step.
Conceptually this would work exactly the same as if these people
were all members of a Content Server Group, where the step is
assigned to all group members.
However, the group would not exist until someone earlier in the
workflow process filled out a set of attributes.” To do this, add a
multi-value user attribute and have the step that is supposed to
pick the performers add as many users as needed.
Loopbacks
Many business processes contain steps or procedures that need to be repeated.
Loopbacks are workflow paths that repeat a section, and they appear on the painter
(or map) as blue lines. Loopbacks may originate or terminate at any kind of step
except a start step, and you may nest loopbacks as many levels as you like.
The rules for Content Server loopbacks are straightforward, and you will get an error
message if your loopback is not allowed. It may be of interest to note that painting
loopbacks became more restrictive in Workflow Maps between Workflow Module
version 3.x and version 4.x. Further loopback painting restrictions were implemented
beginning with Content Server version 9.5 Service Pack 1 and continue through to
the current version of product.
Here is a list of general rules:
• A loopback set, which is all the steps involved in the loopback, may never include
a start step.
• A step may produce only one loopback.
• A step can be the termination point of multiple loopbacks.
• Paint your outer-most loopbacks first, then your inside ones.
• This can get a little confusing because of the way a map gets painted. In
fact, Content Server will sometimes interpret what is in fact an inner loop
as an outer loop.
• When you run into a situation where the painter gives you an error when
you know it is a valid loopback, change the order in which you paint the
loopbacks (delete the link and recreate the loopback).
Loopbacks and Evaluation steps: if there is only one path emanating from the
evaluation step, and it is the loopback, then the loopback is true. If there are two
paths, then the loopback is always the opposite of the defined path (meaning, if the
link is green, or true, then the loopback will be false).
23
NOTE: Common question: This is used for background
information on a topic Why can’t you loop back to the start step?
Because the start step happens before the workflow is initiated.
The following set of illustrations may help demonstrate some of these fundamental
loopback rules:
Figure 3
Sub workflow
The sub-workflow step initiates another workflow, but it will skip the start step. It’s
important to remember this when designing a sub-workflow. You can create a
recursive sub-workflow - a workflow that calls itself. There may be workflows that you
wish to have started over again for processing or auditing reasons.
You can use sub-workflow steps to:
• Segment a complex workflow into smaller, more editable pieces.
• Help simplify the workflow’s design so you can better understand its flow and
business processes.
• Embed standard procedures as a subset of a larger procedure.
• Help individual departments retain autonomy over their processes.
24
Splitting a workflow into sub-workflows can also help the performance of your
workflow, especially at initiation, since the workflow doesn’t have to consider the sub-
workflow steps until it reaches the sub-workflow
You may wish to pass attribute values from the parent workflow to the sub-workflow
to branch conditional statements.
There are many options available, and the expression builder is quite flexible.
• Both maps must contain compatible data types (for example, text popup or
integer field).
• You may have different attribute names in the parent and sub-workflows.
• Popup data types must have identical values in the parent and sub-workflows,
but field data types will work with only partial matches.
For example, you may use the starts with, ends with or contains options. VALUES to
affect conditional statements in the sub-WF: make sure you discuss “mapping” the
different attributes and how the attribute values must have identical names in the
main and sub workflows (or, in the case of strings or fields, start with the same name
if you use the “starts with” parameter in the evaluation step). “End with” and
“contains” are also options.
Performance Hit?
One of the largest performance hits on Content Server workflow is using multiple,
large forms with workflow and passing the form data to sub-workflows.
When you pass data from a parent WF to a sub WF (attribute data or form data),
Content Server creates a copy of the data in the database table and assigns the new
subworkflow ID to the row(s).
For simple forms (5-10 attributes or form fields) this is efficient, but is less so with
multiple forms and/or larger number of fields. With more form fields, this could mean
the system takes more time to complete the sub-workflow initiate step.
Something to consider when designing workflows and evaluating performance
implications.
25
associated with them in a new instance, so if they are associated with a workflow,
there may be resulting errors. In addition, special consideration must be taken when
migrating workflows that have associated dependencies, sub-workflows, form
templates, or named assignees.
26
Some abridged Workflow Information to Assist
in Creating Live Reports
User Desired Value Example LiveReport How to Supply the Value
Input
[Perfor The unique id of Number of Active For this type of report, Content
mer] a Content Steps By [Performer] Server provides you with an
Server user. interface for selecting the
workflow assignee–you simply
click the choose user icon and
select a Content Server user.
27
• Send an e-mail to an address of your choice, either to a Content Server user or
an external address.
• Add comments to the work package.
• Define default values or set new values for workflow attributes.
In the Message field, you can incorporate any of the options described below:
• You can use replacement tags: Include information about the initiator, initiated
date or workflow name in the subject and message. Refer to your user help for
more information on these tags.
• You can copy and paste URLs to workflow attachments, Content Server items, or
to an Add New Item page in the work package in order to prompt the recipient to
perform a certain action in your Content Server system. If you choose to include
a URL to an item in Content Server, then the e-mail recipient needs to be a
Content Server user in order to process the URL.
The following table should help illustrate where use of the Process Automation Step
is suitable:
Add a category to a Content Server item, and update the Item Handler
category attributes with values from the workflow
attributes
28
Item Handler Step
Use multiple Item Handler steps: There is no limit to the number of Item Handler
steps that you can employ in a workflow map. Multiple Item Handler steps are
necessary in the following scenarios:
• A step must occur in-between the processing of an Item Handler’s operations.
For example, after an Item Handler updates a document with a new version, an
evaluation step will determine whether the new version is approved before
passing the document to another Item Handler that is configured to move the
updated document into the Enterprise Workspace.
• You need to plan the order of your automated events. For a single Item Handler
step, it will perform automated events based on the order of the Tabs, namely:
Folder Creation -> Categorized -> Versioning -> Copy /Move. For example, if you
needed the step to first create a new folder and then movie or copy material into
that folder, this could be done in one step. If that same step required a folder to
be created, then files moved into that new folder and lastly a new version added
to a document, this would need at least two separate Item Handler steps.
When an Item Handler is reached in an executing workflow, its operations become
ready for processing.
However, one of the following must begin the Item Handler’s processing:
1. The workflow agent. The workflow agent processes ANY User Step that you
designate in the background. In order for an Item Handler step to be
PROCESSED by the workflow agent, the map designer must check the option to
Execute using Workflow Agent on the Item Handler’s General page. In addition,
the Item Handler must be assigned to a Content Server user. Additionally, the
user must have permissions (as defined on the Administration pages) for
workflow agent privileges. By default only the Admin user has these privileges.
2. A Content Server user: When an Item Handler is not configured to execute
using the workflow agent, or when the Item Handler encounters an error, the Item
Handler step will be sent to the My Assignments page of the user assigned to the
step. This user must open the step and click its button in order to process the
Item Handler, and send the workflow on to the next step.
You may want to wait until you have finished testing a workflow map before you
check the option to Execute using Workflow Agent. Otherwise, you will have to wait
for the workflow agent to process the step before you can continue testing the
workflow.
When the Item Handler executes, it checks to see how you have chosen to link the
data between workflow attributes and category attributes on the Definitions page. The
Operations page then dictates what kind of data transfer is performed.
29
To define an operation, you will need to configure the following sections on the Add
Operation page.
• Item: Targets an item in Content Server, a workflow attachment, or an item that
has been selected via an item reference attribute. In Content Server version 9.5,
you may also target a folder definition, if one is available. The update options will
be based on this item.
• Update Options: Specifies whether the category on the specified Item is getting
updated, possibly with the current workflow attribute values, or whether the
current workflow attribute values will be updated by the specified Item’s category.
• Item Handler will update the category information on the Item you’ve specified,
according to the following options:
• Remove Categories: will delete the categories specified on the Definitions sub-
tab from the Item you’ve specified.
• Add Categories: will add the categories specified on the Definitions sub-tab to
the Item that you’ve specified.
• Set Attribute Value(s), will update the category attribute values on the Item
you’ve specified with the corresponding workflow attribute values that you
defined on the Definitions sub-tab.
30
Testing
Testing your workflows can be a time consuming process. The following are
suggestions to assist you in developing your test plans and scripts. For initial testing,
you may wish to assign all steps to the Initiator. Be aware that although this may
speed the testing of the workflow, it may also result in some unexpected surprises
when the workflow is moved from a development to your production environment. For
example, if the workflow is only tested as a user with System Administration Rights, it
is unlikely you will encounter errors in using the Workflow Agent for Item Handler
processing for moving or copying documents and other operations. However,
remember the user assigned to the Item Handler will have to have the proper
permissions (as well as the appropriate privileges) on the target destination for these
operations to perform successfully.
Testing and refinement of the workflow should focus on two areas. The first is
functional testing, to verify that the workflow is error free and performing as expected.
The second area of testing is end-user testing, to verify that the assignments are
clear to the end-users, and that they can complete their workflow assignments
effectively.
The results of testing will likely cause modifications to be made to the workflow. An
iterative process of retesting and modification will be necessary until everything is
working to the design.
Functional Testing
The following functional tests should be completed:
• Map Verification: Verify the workflow map using the ‘Verify Map Definition’
function. This will help identify mistakes or omissions.
• Routing: Verify the routing for conditions to make sure everything is flowing as
designed. Open Text Workflow Designers often call the route testing "permutation
testing", which is a fancy way of saying test all available, possible routing options.
Testing of step durations can also be conducted at this stage, however, Map
Designers may prefer to put this testing together with end-user testing since it is
end-users who will provide the feedback that "step X should take Y days".
• Visibility: Verify that all performers have access (or are denied access) to all
data elements as designed. This should include attachments, attributes and
comments
• Storage: Verify that resulting documents and metadata are stored correctly at
workflow completion. This will include a verification of the permissions on the
folders targeted by any Process Steps. The same is true of Item Handler Steps.
Whoever the step assignee is, they need to have adequate permissions for the
operations performed on specified objects.
• Management: Verify that LiveReports are producing intended results.
Additionally, verify users (or groups) who have management permissions to the
workflow have the appropriate level of access.
31
• Item Handler Step: When using the Item Handler, you may wish to wait to
assign the steps to the workflow agent until after the workflow has been
thoroughly tested manually. This could speed up your testing.
End-User Testing
The following end-user tests should be completed:
• Instruction Review: Verify that users understand the instructions and can
complete the assignments correctly. Verify the instructions and package
information appear correctly on each step. This could include verifying the
comments were passed from one step to the next, the Delegate, Send for Review
and Authenticate functions appear as appropriate and the Attachments, Attributes
and Form values are passed and appear correctly in each step.
• User Involvement in Testing: Get end users involved in testing at the
appropriate time. Getting end users involved too early can lead to frustration and
possibly a lack of interest in using the tool. Getting them involved too late can
result in lack of user adoption.
• Solicit feedback from end users. Have the users attempt to complete the
workflow steps based on a limited overview of workflow assignments to see if the
instructions were clear enough and was it easy for them to figure out what to do,
where to click etc.
• Disposition Review: Verify that users understand the disposition choices for
evaluation steps.
32
• If an evaluation was based on attributes, and the evaluation failed, was it
because the attribute being used to route the workflow was never required prior
to the evaluation step?
• If the map designer assigned a step to a group, were the Group Options set
correctly? If there was a disposition on the step, was the Group Step Tabulation
configured correctly? Remember, in many cases, the workflow is designed so
that a user selects the performer of a step via user attributes or role
implementation. In the event that a user selects a group, then the designer must
consider what the appropriate Group Options should be.
• Permissions on supported object and Workflow Packages. If a user cannot see a
document that has been added to the workflow Attachments, does that user (or
group) have permissions to the Workflow Attachments folder? If using Forms,
does the user (or group) have See and See Contents permissions on the Form
Template? If using e-Sign, does the user (or group) have Reserve permission on
document that is to be signed?
• If Attributes were used, were the attributes specified with the proper setting on
the step (Editable, Read Only, Required, etc.)?
Workflow Validation
• Map Verification - Verify the workflow map using the ‘Verify Map Definition’
function. This will help identify mistakes or omissions. If the Workflow Map has
been imported from another Content Server System, it is a good idea to double-
check the Item Handler Steps within the imported Workflow Map.
• Completion Actions – Ensure that a completion action is selected, either
‘Archive on Completion’ or ‘Delete on Completion’. This will alleviate the need for
the workflow manager to clean up completed processes.
33
Message Meaning
Verify Map Resulting Message Message Meaning
The Evaluate step uses criteria that no The criteria required to evaluate the step is
longer appear in the map definition no longer available or is invalid.
In Content Server, you can quality check your workflow map for certain errors before
it is initiated. To check a workflow map for errors, choose Verify Map Definition from
the Map menu when you are designing the workflow map.
34
References
The following Learning Services Courses:
2-0110 Content Server Workflow Design I
2-0111 Content Server Workflow Design II
2-0112 Content Server Workflow Design III
2-0114 Designing and Implementing Content Server Forms
2-0115 Content Server eForms
35
About OpenText
OpenText is the world’s largest independent provider of Enterprise Content
Management (ECM) software. The Company's solutions manage information for all
types of business, compliance and industry requirements in the world's largest
companies, government agencies and professional service firms. OpenText supports
approximately 46,000 customers and millions of users in 114 countries and 12
languages. For more information about OpenText, visit www.opentext.com.
36
www.opentext.com
NORTH AMERICA +800 499 6544 • UNITED STATES +1 847 267 9330 • GERMANY +49 89 4629 0
UNITED KINGDOM +44 118 984 8000 • AUSTRALIA +61 2 9026 3400
Copyright © 2015 OpenText SA and/or OpenText ULC. All Rights Reserved. OpenText is a trademark or registered trademark of OpenText SA and/or OpenText ULC. The list of trademarks
is not exhaustive of other trademarks, registered trademarks, product names, company names, brands and service names mentioned herein are property of OpenText SA or other respective
owners.