Blog

Service Catalog Request Fulfillment

For certain catalog items, when a user orders the item through CMS or the Service Portal, ServiceNow uses a process called Request Fulfillment.

This article will detail how this process works and is designed within ServiceNow.

Workflow Graphical Engine

The power of Request Fulfillment is within the workflow.  Here are just some of the things workflow can do:

  • Approvals to users, groups, or managers
  • Multiple Task Generation
  • Notifications and Events
  • Timed Activities (Timers, Waits, Locks)
  • Conditions (If, Switch, Join, Turnstiles)
  • Orchestration
  • Set Values in Fields
  • Scripting (Javascript, REST, and SOAP)

Service Catalog Item Workflow

TABLE STRUCTURE

Request Fulfillment uses these common tables to hold most of the data.  I might be forgetting some of them, but these I use the most:

Order Form for a Catalog Item

  • Requests (REQ) -  this is the order the user placed (Cart).  It contains a bundle of Requested Items (RITM)
  • Requested Item (RITM) - has the workflow and approvals. Stage Field on Requested Item (RITM) indicates if the RITM is waiting for approval, fullfillment, rejected or closed.
  • Catalog Task (TASK) - Work is only done on the Catalog Task (TASK) Level.  this is where the work is assigned to a group or individual user
  • Variables - this is where the questions/answers on the request are stored
  • Approvals - approvals by users and groups

Other details:

  • Requests (REQ) and Requested Item (RITM) are not “assigned” to any group or user. Only the task is. 
  • When all Tasks are closed, the Requested Item is closed.  When all Requested Items is Closed, Request is closed.

Three Table Terror

The three-tiered structure of Requests, Requested Item, and Catalog Tasks can be confusing to users.

Due to this, companies often want to use just incident management instead. However Incident Management doesn't provide the features that Request Management has. Incidents don't have a cart, workflow, approvals, tasks.  If they did, they might as well be Request Fulfillment.

In terms of ITIL, requests and incidents should be different too.

  • An incident has a process to ensure normal service operation is restoration as quickly as possible and the business impact is minimized
  • A request is formal request from a user for something to be provided – for example, requesting a mobile phone, virtual desktop, or PC Refresh, requesting system access, etc.

Catalog Item Request Form

When is the right time for a company to start using Request Management?  

  • Maturity - It depends a lot on company maturity and readiness.  Large enterprise customers compared to smaller commercial customers have better success, however that isn't always true.
  • Previous ITSM Experience - If they had used a system that had tasks before and the concept is not new.
  • Process Driven - If the company has a process driven environment
  • Management Buy-in - If the management buys into the framework and promotes it within the organization
  • Knowledge - Good training and champion enablement teaching employees the structure and workflow concept

Example

AutoRepairPals.com Order: REQ0010001

  • RITM010012: Rotate Tires (No Approval Needed)
    • TASK0010022: Rotate Tires (Group: Tire Rotators, Assigned To: Mike)
  • RITM010013: Oil Change (No Approval Needed)
    • TASK0010023: Oil Change (Group: A+ Oil Change, Assigned To: John)
  • RITM010014: Transmission Replacement (Manager and Owner Approval Needed)
    • TASK0010024: Order New Transmission (Group: Parts Department, Assigned To: Mark)
    • TASK0010025: Transmission Removal (Group: Transmission Technicians L1, Assigned To: Dan)
    • TASK0010026: Transmission Install (Group: Transmission Technicians L2, Assigned To: Ted)