Last Updated 09.28.03
Checklist Templates should be used when a user has a process that contains many discrete steps, mainly in setup/administration
applications (e.g. a system configuration application). In working on the process, the user may be unable to complete all the
tasks in a single session. For instance, the user may not have all the information available to complete the process during the
initial setting, or perhaps the user is frequently interrupted with other work during this process. In such cases, it is
necessary to help users track their progress in the overall process via status indicators, and also provide navigation/entry
points to resume the overall process from where they left off.
Throughout this guideline, the following terminology is used:
Process - an operation that consists of a single or multiple tasks. For instance, a typical process may be to create a
Task - a function that consists of a single or multiple discrete steps. For instance, in creating a purchase order, a
typical task would be to select an item to purchase. In a process with multiple tasks, the tasks can be linear (i.e. required
to be performed in a specific order) or nonlinear (i.e., can skip from task to task).
Step - a single action item within a task. For instance, in creating a purchase order, in selecting an item to
purchase, if the item has some options, the user may need to go through a single or series of steps to specify the desired
option(s). If a task has multiple steps, the steps can be linear (i.e., required to be performed in a specific order) or
nonlinear (i.e., can skip from step to step).
Spec Version # - 3.1
Spec Contributors - Raymond Wong, Lisa Serface, Aylin Uysal, George Hackman, Luke Kowalski
UI Models - All models
Example Products - All products
Related Guidelines - Introduction to Page
Templates, Messaging (including
Confirmation) Page Template, Object List
Templates, 2 Step Processes Template,
Step by Step (3[+] Steps) Template, Step
by Step Page Flows, Introduction to Page Flows,
Checklist Flows, Object
Interaction and Usage Specifications
The checklist templates are recommended for processes that contain many steps that the user does not complete in a single
session, typically a setup of administration process. Checklist templates should not be used when the processes have a low
number of steps (i.e., 10 or less).
Checklist templates consist of a single, long list of tasks (or groups of tasks) which can be either linear or nonlinear in
Multiple Discrete Steps Checklist
The Multiple Discrete Steps Checklist (linear) is for an ordered list of tasks. This option is recommended when the user
must perform tasks with multiple, discrete steps in a specific order. It does not allow users to jump forward from task to
task. Rather, the user must complete the first task in order to proceed to the next one on the list.
The Multiple Discrete Steps Checklist (nonlinear) is for an unordered list of tasks. This option is recommended when the user
can perform tasks in any order. It does allow users to skip to different tasks (i.e., jumping forward and backwards) from task
- Hierarchical (Linear)
The Hierarchical Checklist (linear) is for an ordered list of grouped tasks. This option is recommended when the many tasks can
be clearly organized into high-level groups, and that the user must perform the groups of tasks in a specific order. The
hierarchical version of the checklist is represented via an HGrid.
- Hierarchical (Nonlinear)
The Hierarchical Checklist (nonlinear) is for an unordered list of grouped tasks. This option is recommended when the many
tasks can be clearly organized into high-level groups, and that the user can perform any group of tasks in any order. It does
allow users to skip to different tasks (i.e., jumping forward and backwards) from group to group. The hierarchical version of
the checklist is represented via an HGrid.
Single Related Steps Checklist (linear)
A Single Related Steps Checklist (linear) is for a single ordered set of tasks. It can also be described as a "super train".
This option is recommended when users must perform a single, large, linear process. Users may jump only back to previously
visited tasks or to the next immediate task on the list.
Example of a Typical Checklist Flow
For further flow examples, please refer to the Checklist
Templates Used in a Checklist Flow
Using checklist generally consists of 4 types of templates:
||Object List Template - This template can be an initiation point for the
checklist. Typically, the checklist can be launched by an action/navigation button or a functional icon within the table. In
some self-service applications, the Home Page
Template may also be used as the initiation point of the checklist.
Checklist Template - This template lists all the tasks included in the large process. The
template consists of the following components:
- A table or HGrid to display the list of tasks. Columns included in this checklist
- Task Name - if some tasks within the checklist are required, the required
field indicator may be place beside those tasks.
- Task Description (optional)
- TaskStatus (with icons)
- The Task Status icons are status only, and thus, not clickable.
- A tip above the table/HGrid which provides a link to icon key information.
Refer to the Key
Notation guideline for more information. For visual specification of status
icons, please refer to the Status Icons Used In a Checklist
- Go To Task (icon) - to navigate users to each task
- Last Updated Date - to indicate the last revision date to this task
- Last Updated By (optional) - to indicate who last revised this task.
- The page level buttons for this checklist page include:
- Cancel(optional) - This action will cancel all actions previously
started on the checklist. Because the user could lose significant data with this
action, a Warning Page is required to inform the user of this risk.
- Finish or Submit(optional) - This action is used to complete
the checklist process. The button should only be enabled when all required tasks
have been completed. In some cases, completing the last required item actually
completes the overall process/checklist. Thus, the "Submit" or "Finish"
button may not be needed.
- A "Return to [Object List Page or Home Page]" Link - this link must be provided
for the user to return to the previous page (i.e., the launch page).
||Object Templates - Each task
within the checklist is an individual step in the overall process.
A "Save for Later" button must be present on all Object Templates. This button saves changes to the database and returns the user
to the checklist. The "Status" column of the checklist will be updated with the current status per task. With this approach,
when users return to their work at a later time, it would be easy for them to determine where they left off to resume work.
- Multiple Discrete Steps Checklist Templates
For Multiple Discrete Steps Checklist Templates (either linear or nonlinear), use the following templates, as applicable:
- Single Related Steps Checklist Templates
- For Single Related Steps Checklist Templates, only the 3+ Step by Step Templates are used.
||Warning (or Messaging) Template - A warning page must be used to alert users
in the following scenarios of a checklist:
- When user is at risk for losing data without saving changes.
- When user has made a revision to a task which can affect other dependent tasks.
Task Status Icons Interaction
The five statuses of checklist tasks include: Not Started, In Progress, Completed, Error and Not Applicable.
Depending on the type of checklist used, the Task Status Icons can have different interactions.
Status Interaction Within a Multiple Discrete Steps Checklist (Linear)
Status Interaction Within a Multiple Discrete Steps Checklist (Nonlinear)
- The first task on the checklist moves from status "Not Started" to "In Progress" and then to "Complete" (unless an error
occurs during task completion). Thus, in order to proceed to the next task, the previous task on the checklist must be either
"Complete" or "Not Applicable". Please refer to Visual Specifications below for
Status Interaction Within a Multiple Discrete Steps Checklist (Hierarchical - Linear)
- Because the checklist is not linear, tasks may be in any status at any time. Please refer to Visual Specifications below for more details.
Status Interaction Within a Multiple Discrete Steps Checklist (Hierarchical - Nonlinear)
- If the hierarchical checklist is linear, the first task on the checklist moves from status "Not Started" to "In Progress"
and then to "Complete" (unless an error occurs during task completion). Thus, in order to proceed to the next task, the
previous task on the checklist must be either "Complete" or "Not Applicable".
- If the hierarchical checklist is not linear, tasks may be in any status at any time.
- In a hierarchical checklist, if the parent node does not have its own specific status, it should assume the overall status
of its child tasks. That is, if a parent node has 5 child tasks in various states of "Complete", "Error" or "In Progress", the
parent node's status would be "In Progress". The parent status will only update to "Complete" once all child tasks are in a
state of "Complete" or "Not Applicable". Please refer to Visual
Specifications below for more details.
Page Layout of Checklist Templates
Multiple Discrete Steps Checklist (Linear)
Multiple Discrete Steps Checklist (Nonlinear)
Multiple Discrete Steps Checklist (Hierarchical -
Single Related Steps Checklist
Status Icons Used In a Checklist
There are 5 statuses available for each of the task/step in the Checklist Template.
These statuses are represented as status ONLY indicator icons and are not clickable:
Specification of Status Indicator Icons Used on a Checklist Template
- Not Started
- In Progress
- Not Applicable
03.10.03 The ability to manually update task statuses in the checklist to be investigated in revision 3.1. Need to gather
requirements for cases where a user will need to manually update a task status.
03.10.03 The addition of heuristics for a "checklist within checklist" interaction. This will be investigated in revision
03.10.03 The addition of requirements and heuristics for a "semi-linear" checklist.
03.10.03 The visual display of a task with dependencies in a checklist that has a combination of dependent/independent tasks. A
"Dependency" icon column is currently considered as an option.