Program vs Curriculum Part 1 of 2

As an SAP SuccessFactors Partner we design solutions for our clients, who frequently ask, “Should I use a Program or a Curriculum?”  The Curricula function has been around since the original Plateau Learning Management System (LMS) was designed in 1996, while Programs made their debut in the SAP SuccessFactors software release 1405 in May 2014, but clients can sometimes be confused about how they differ and when one should be used over the over.

First, let’s look at the similarities between the two:

  1. Both are shells used to assign a group of learning activities to users
  2. Both can be assigned to a user by:
    • Self-assignment through a catalog search
    • A manager or an LMS administrator assigning to an end user
    • An assignment profile based on one or more attributes,

….and that’s where the similarities end.


Curriculum functionality is more restrictive to support training in regulated industries, so with our federal government client base we see it way more often than Programs.  The contents of a curriculum is limited to learning activities (SAP SuccessFactors refers to these as “items), sub-curricula, or requirement pools.  All of these must be contained within the Learning module.

Another element of a curriculum is the completion status.  When a user completes all the contents within a curriculum, they have no option of further defining the type of completion.  The curriculum is either complete, or incomplete.  The user’s curriculum status is subject to change if the contents of the curriculum change, or if a user fails to successfully complete the requirements.

Curricula can also be configured to enforce prerequisites, so that items are taken in the proper order, or can force users to get approval from another party before assigning the item.

Finally, curricula have the ability to support retraining intervals, so if part of a user’s compliance training requires them to take the same course at regular intervals, say once a year, the retraining can be assigned automatically upon completion.


Programs allow for more flexibility than curricula. Many of the system rules related to items don’t apply once an item is added to a Program.  When an item is added to a Program, prerequisites are no longer enforced and approval processes that may be assigned to the item are ignored.  Items in a Program don’t have to be in a catalog the user can access.  The item’s relationship to the Program gives the user access to the item.

Programs allow activities found outside of Learning to be included in the Program, such as links to external websites or to resources hosted on a client’s server outside the Learning module.

Although Programs are flexible, they also come with some limitations.  Users and Administrators can’t report on the completion of individual activities within a Program unless the activity is an item.  Programs don’t support retraining intervals either.

So, what do you do if you want to include a curriculum within a Program?  What if you want to give users options for meeting a required activity within a Program?  What if you want to use the Program completion as the trigger for assigning additional training?  We have some creative solutions to share with you in Part 2 of this series where we discuss workarounds to meet these business requirements.