iSAMS to Moodle Sync – One Year On

So we have been running my iSAMS to Moodle sync for over a  year now at my school and I thought it was probably time to write an update about how it has gone and what changes I have had to make to the system.

This July we had our first academic roll-over with the system in place and this highlighted a few things which need adjusting.

I had been thinking about the best way we could set courses up within Moodle using the iSAMS sync for some time and decided that the best way to continue was to allow the iSAMS sync courses to operate purely as enrolment courses and to be connected to the “live” Moodle courses using the “Course Meta Link” functionality of Moodle.

This rather crude diagram hopefully goes some way to explain what I mean:

2015-06-10 17.43.18

So in this diagram our iSAMS Sync courses are the “Child Courses” which remain hidden from the students that are enrolled into them. The enrolments of these courses are kept up to date by our iSAMS External Database Sync we have created earlier. We then make use of Moodle’s “Course Meta Link” enrolment plug-in to “pull” the enrolments from the iSAMS course into our “Parent course”.

My reasoning for this is set-up is twofold:

  1. Generally resources and activities created for a course will be relevant for more than one year’s cohort of students. Teachers will most likely wish to use all or most of the resources they have created with their next year group of students (unless of course the syllabus changes!).
  2. Teacher may well have more than one iSAMS class taking the same subject. Why duplicate resources for each iSAMS class if we can combine multiple iSAMS classes into one Moodle course?

With the release of Moodle 2.9 we see an important addition to the “Course Meta Link” enrolment plug-in – the ability to automatically add those enrolled into a child course into a group in the parent course. This allows us the ability to then make use of Moodle’s groups and groupings functionality to split up activities and resources between the different classes taking the parent course. It could be a simple as only seeing one class at a time when marking an assignment or you could take it further by using the “grouping” (groups of groups!) functionality to completely hide resources from certain classes. Because we are using the external database sync with iSAMS the memberships of these groups and child courses are all maintained automatically by iSAMS.

What is the process for teachers now?

  1. Request a new Moodle course (e.g. Biology – Year 1) using Moodle’s course request functionality
  2. The course is created and the requester is automatically added as a teacher
  3. The requester can then manually add any other teachers they want to the course. Note you need to change the standard teacher permissions to do this
  4. The teachers can then add their iSAMS teaching groups to this course and make it live when they are ready

What is new in the solution?

  1. iSAMS sync courses are now created in a category of their own (iSAMS Sync Courses)
  2. Each course for an academic class is created in a sub-category named after the academic year (2015-2016)
  3. Academic courses created by the sync process have the academic year appended to their title for easy recognition when selecting them and also to ensure that at roll-over everyone is unenrolled from all of last year’s courses even if the course name / code is reused
  4. We also now create iSAMS sync courses for each year group, all staff and each vertical house. Over time we may well end up creating more too as the need arises!

What has changed to facilitate this?

  1. The SQL scripts for creating the courses and the enrolments from iSAMS have been adjusted. You can find the latest versions here and here.

What needs to happen at the end of a course / academic year?

  1. At the end of your academic year, and before your iSAMS roll over you need to disable the db enrolment cron job on your Moodle server and also disable the “External Database” enrolment method in Moodle
  2. You then need to create your net year’s category and update the SQL script to point to this new category
  3. At the end of the academic year, or before you remove an iSAMS sync course from your Moodle course (for example, if you have a course which rotates through different groups throughout the academic year); the teacher of the course should back up the following things:
    1. Perform a full course backup
    2. Export the course grade book to Excel or ODS
    3. Save all assignment submissions to the course

    This is because when you remove a Course Meta Link enrolment method completely form a course, this information is deleted from the course!

  4. For the sake of being tidy(!) the teacher could also perform a course reset to clear out all other content which the students have created over the year (i.e. forum posts, wiki entries, quiz attempts etc.)

So the last steps I have now are to document it all and circulate this round our staff… So far I have documented the process of requesting a new course and that of adding iSAMS sync courses to a Moodle course, which you can see below.

Course Request Documentation

Adding iSAMS Sync course video

Leave a Reply

Your email address will not be published. Required fields are marked *