This is a modified version of an email sent to a new stakeholder that offers a useful overview in the different ways you might want to group courses. 

When talking about how courses can be grouped, we default to "terms of convenience" where we use terms that represent how things are usually used, but when you look at the feature more, there can be more to it, in some cases a lot more, to the term (or feature). For someone coming from another system, this may mean you need to un-learn terminology imprinted in the way the other system does things. We give you the most bang for your time if we can help get you thinking about course grouping in our nomenclature.

Our "Catalog Manager" is where we group courses into one or more Catalog Types. Types include: Course Catalog, Learning Track, Certification, Qualification Catalog.

A "Course Catalog" type is a collection of courses typically called a "Library" or "Curricula". Courses (or things we want to track which might be more than a course) are assigned to the catalog. A user is assigned to the catalog. Training is not assigned to the user. A user goes into the "Course Catalog" and can select any Course to get more information. A client will often create an "All Users Course Library" containing ONLY those courses you want for all users.  The final piece for ALL Users is assigning the All User (Flexi-Group) to that catalog. You may have courses or content ONLY appropriate to a specific audience you DO NOT want to share with other audiences. You can create as many catalogs as you like and can regulate the audience who has access to the catalog. A key concept is that while you are assigning the user to the catalog, the courses are not assigned. Like going to the library, they can view any course in the catalog for self-directed learning.  

When a user views the course in the catalog, actually any catalog type, they land on a course home page for the course in the catalog. Rules in the course will guide the user in terms of what their options are. For example, they may need to satisfy prerequisites, they may only be able to request, they may be able to register, or to launch... We are talking how courses are grouped so let's keep our focus on that for now.

A "Learning Track" catalog type is a key core technology in AbilityLMS. You have the same capabilities in the catalog except that when user is assigned a learning track, all the courses in the learning track are also assigned. This means there is an assignment record for the Track ID + Course ID + Learner ID. The Assigment Record can be Required or Not Required, has a date assigned, date due and a key to the "best" history record the system can find to satisfy the assignment.

A key concept is the assignment record is not a training history record and the system on assignment always looks to find the "best" history record it can find. If it can find no history, the assignment is "Not Taken". This creates a very efficient data structure to get a list of assignments not taken. Usually the "best" history record is the most recent completion, but not always such as when version control is used or effective dates which demands the training has to be completed to the proper version or completed in the effective date range. When a learning track is assigned, the system scans all history for the user looking for the "best" historical record which also includes considering course equivalents. When history is added to the database the reverse happens, when the system checks to see if the history record also satisfies an assignment.

Required / Not Required lives in the context of Required or not Request to complete the learning track. Often you want courses to be required so than when all required courses are complete, the learning track record for the assigned user is also set to complete. Sometimes you do not care if the Learning Track is ever complete, so the course is not required, but the course is still assigned to the user with its own due date.

A Learning Track can have effective dates which defines a FROM and TO range for when to consider training. A 2017 Security Track might contain a course that was completed back in 2015. With effective dates, only training tracking records completed within the effective date range are considered.

A Learning Track can be linked to one or more qualification catalogs. As a user completes a course in the qualification catalog, the course automatically shows as satisfying a requirement in the learning track. This is an elegant way of handling electives and certain types of certifications where the user has to complete X number of courses or earner X number of credits or both.

A qualification catalog type serves a silo purpose of creating a pool of courses that on completion "relates" to a target learning track. You might think of this as an elective pool.

A Certification Catalog type is a special type of learning track that on completion creates a Certification record for a learner who completes all the required elements on the learning track. This certification record can contain additional fields such as a certification number. Once a person is certified, they can re-certify through a re-certification track.

An IDP is one other type of catalog I did not mention. It is very similar to a learning track, but the root level of requirements are goals. Under the goals you assign a child learning track, course, a skill or some other activity. We call these activities. When all activities are done, the goal is done.

There also exists the concept of a custom learning track. This is a learning track of courses you select for an individual as opposed to uses with some common attribute such as a job title or department.

There also exists add-on technology that can build learning tracks from a questionnaire. Rather than knowing what courses to assign, the worker or manager (or both) answer questions and based on the answer training is assigned. We call this a Compliance Needs Assessment.

There also exists another Add-on technology, that guides creation of a learning track through an expert system.. This presents training you might assign by job title, risk factor, building, lab...

A learning track can also support a concept of version control. This can create a snap-shot in time of the version of the learning track so that you can go back and see requirements from previous changes to the track which some compliance environments will need. In addition, when version control is used, you can provide better controls on when changes are made to tracks as it has to go through an approval process to make a change to a learning track effective. For some this can be overkill so do not use the feature. For others this can introduce essential oversight to the process of managing training requirements.

While what has been discussed covers most needs, we will be asked from time to time to make enhancements and we will do so tied to a Statement of Work that defines scope and labor costs. At the end of the day, our platform is about adapting to your needs and your workflow.

The way we group courses has a number of other variations so my comments are meant to get you thinking about possibilities.