Best practice forum (Archived)

New certification and program completion editor

 
Nathan Lewis
New certification and program completion editor
di Nathan Lewis - Wednesday, 10 February 2016, 18:51
Gruppo Totara

Hi everyone.

I'm pleased to officially announce a new feature which we've been working on over the last few months.

 

The ability to manually edit program and certification completion records is being added to Totara in the upcoming February releases of Totara 2.5, 2.6, 2.7 and 2.9.

This new functionality will appear on the Certification and Program administration interfaces as a new tab "Completion". Typically we are against back porting improvements and new functionality. However due to the prominence of certifications, the serious consequences of certification issues and ongoing maintainability, after much discussion a decision has been made to back port this new functionality. It will not be enabled by default - for those wishing to make use of it they will need to enable it as described below. 

About this tool

Over the past few months, we've had a number of reported bugs with certifications, some of which have been hard to reproduce or very complex to understand and recover from. Several factors weigh into the complexity surrounding completion issues: 

  • The long running periods over which these issues occur.
  • A lack of history, there is no complete log or track of the actions that have fed into the certification.
  • Previously fixed issues for which invalid data was not successfully cleaned up.
  • Complexity of certification interaction, becoming certified, windows opening, expiry, and their relation to courses which can also have their completion settings unlocked.

To try to simplify the problems, we have developed this tool to identify and fix existing data problems and allow for much more flexible management of a user's progress in programs and certifications.

Highlights of the new functionality include:

  • A list of all users who are, or were (assuming they made some progress), assigned to a program or certification.
  • An interface to manually make changes to the current completion record of a user.
  • Validation of a user's current and history records, with information stating any issues and how they can be resolved.
  • Ability to view/add/edit/delete program and certification completion history for users, even if they are no longer assigned.
  • A full audit trail of all changes that occur to a user's program and certification completion records.
  • A checker which can identify any program and certification completion records which contain problems.
  • Automated fixes which can be triggered to fix discovered issues.

Some examples of known issues and limitations within the system that this tool will help identify and resolve:

  • If you want to change the active period of a certification, you will be able to manually change the expiry date of users who are already certified. Previously, the user was stuck with their original expiry date until they recertified.
  • If you add a new course which is required for completion of a program or on the primary certification path, you will be able to manually change a user's program or certification state to incomplete, and require them to complete the new course.
  • If you re-uploaded certification completion records, resulting in duplicate entries, you will be able to manually remove the duplicates.
  • If you experienced a problem where a user's certification became stuck in an invalid state, then you will be able to manually (and in some cases automatically) repair the state of a user's records.

The new editor must first be turned on by setting "Enable program completion editor" in Administration -> Site administration -> Advanced features.

Features of the editor

There are several pieces to the new program and certification editor.

Completion lists

Two new report builder reports have been added, Certification Membership and Program Membership. The primary purpose of these reports is to provide an interface with a list of users who are currently, and were previously, assigned to a program or certification.

In the completion tab, each user has a status, which either indicates their current status in the program or certification, or "Not assigned", and a link to "Edit completion records". Clicking the link will take you to the program or certification completion editor for that user, which includes the current completion editor, completion history editor and the transactions log. Above the completion list there is a link to "Check completions for problems", which can be used to find all records with an invalid state for the given program or certification.

Custom reports can of course be created using these new sources.

Certification completion editor

The first section on this page contains the user's current certification completion record, if they are currently assigned. The editor is controlled primarily by the "Certification completion state" drop down list. Changing this form field will determine the form fields below which can be edited. If there is a problem with the record then it will be highlighted, and a valid "Certification completion state" must be selected before any further changes can be made. When saving changes, information will be provided on a confirmation page, detailing the consequences of the changes. For example, if you change the state of a certification from "Certified, window is open" to "Certified, before window opens" then you will be warned that the recertification window will be reopened when it is next processed by cron, causing courses to be reset again.

The second section shows completion history. Here you can add, edit and delete history records. Form validation when editing history records is the same as when editing current completion records, but there is no information and confirmation step when saving (because history records do not have an effect on a learner's active learning process).

The last section on this page shows a list of all transactions that have occurred which relate to this user. If includes:

  • Events that naturally occur during certification, such as becoming certified, the certification window opening, expiry, etc.
  • Manual changes made to the current or history completion records using this editor.
  • Changes to the certification settings, such as the Active period (this type of change might not directly affect a user's completion records, but the fact of the change might be relevant, so is included in this log).
  • Changes cause by certification completion uploads, or triggered indirectly by course completion uploads.
  • Automated fixes which were applied.

Program completion editor

The program completion editor works in pretty much the same way as the certification completion editor, but with fewer form fields.

Check completions for problems

On this page, you will find a list of all program or certification completion records which are in an invalid state.

At the top of the page is a summary of the results. The total number of records and number of records with problems are listed.

In the first table, each class of problem is counted separately. If the specific problem combination is known and understood, information may be provided, which could include a cause, recommendations for a manual solution, or in some cases a link to trigger an automated fix for the problem.

Some problem classes may reuse the same automated fix. For example, in certifications, users whose windows are open and their due date does not match their expiry date are kept separate from users whose window has not yet opened and their due date does not match their expiry date. They have the same problem but are in different states. You would need to trigger the fix for each of these separately. Both classes of problem will be fixed by the same function, by copying the expiry date to the due date. But other problems may require different solutions when they are in different states, even if the symptom seems the same. This system was designed in a way which makes it easy and safe to add new information or fixes for specific classes of problems in the future, when they are fully understood.

Below the summary table you will find a list of individual users and their specific problem. Clicking the user's name will take you to the program or certification editor for that user. Additionally, if there is any information or automated fix for that specific problem in that specific state, it will be provided at the top of the completion editor.

 

I know there are several people out there who are very keen to get their hands on this feature. I look forward to hearing feedback from you once you've got it up and running.

Nathan

Wen Hao Chuang
Re: New certification and program completion editor
di Wen Hao Chuang - Thursday, 11 February 2016, 13:07
 

Hi Nathan,

This is indeed great news! A while ago when we first heard about this tool from George, he mentioned that this would be an external tool. If that's the case would it work with 2.5.30? Thanks!

Nathan Lewis
Re: New certification and program completion editor
di Nathan Lewis - Thursday, 11 February 2016, 13:21
Gruppo Totara

Hi Wen.

It's built into Totara 2.5.36. While it might be possible to back port the patch, I wouldn't recommend it, because there may be changes in the way that certifications work internally which would mess things up.

Nathan

Martin Sandberg
Re: New certification and program completion editor
di Martin Sandberg - Friday, 12 February 2016, 04:06
Gruppo Partners

Just a quick glance at the documentation but I want to give a thumbs up.

Sounds like a fantastic addition to the certifications... as of now we have had to import new dates if we needed to change a users valid date. The ability to edit the state of the user and the dates will greatly help in maintaining ongong certifications.

Also the change to how a user gets reassigned to a certification sounds just like how it should be...

Peter Pappas
Re: New certification and program completion editor
di Peter Pappas - Tuesday, 8 March 2016, 08:08
 

Hi Nathan,

 

I just wanted to give some positive feedback on the completion editor.

We currently have approximately 49000 active certifications in our system for just under 800 active users and the Completion editor is a life saver. You folks really put a lot of thought into this new feature and I appreciate the efforts. we are using version 2.9.4 now on our production site and this is just the medicine we needed.

 

Thank you,

 

Peter

? ?
Re: New certification and program completion editor
di ? ? - Monday, 18 April 2016, 09:00
 

Good Afternoon/Morning,

The initial question that sparked this development was around completions for courses that were not certificates and having them update automatically if people choose to do the course again. So the course in theory overwrites itself when completed again.

Would the above program completion 'fix' solve this or would it be a manual process?

Thanks,

Kevin