enrolments using external database

57
External Database Enrolments Alex Walker City of Glasgow College

Upload: alex-walker

Post on 27-May-2015

1.091 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Enrolments using external database

External Database Enrolments

Alex WalkerCity of Glasgow College

Page 2: Enrolments using external database

The City of Glasgow College

• Colleges in Scotland merging into regional super-colleges.

• City of Glasgow College formed in 2011, when three Glasgow city centre colleges merged.

Page 3: Enrolments using external database

The City of Glasgow College

Bb8.0

m1.9.8

m1.9.8

469628

CoursesSta! Accounts

672363

CoursesSta! Accounts

609157

CoursesSta! Accounts

Page 4: Enrolments using external database

The City of Glasgow College

m2.4.0

3,93216,102

CoursesActive Users

Page 5: Enrolments using external database

The Merger

• Colleges merged in Summer 2011.

• We had to launch a new Moodle while every other IT system in the college was changing.

• New Novell login system, new student record system.

Page 6: Enrolments using external database

Plan A

Student Record System

MoodleLDAP

Page 7: Enrolments using external database

Plan B

• Lots of IT systems changing at the same time made it hard to get time to discuss Plan A with the IT team.

• Too many ‘fringe use cases’ (e.g. students with multiple part-time courses).

Page 8: Enrolments using external database

Plan B

• Pull data from student record system into ‘middle man’ database.

• Use the database structure to manage enrolments.

• Gave our team much more control over enrolments.

Page 9: Enrolments using external database

Plan B

Student Record System

MoodleSQL DB

Page 10: Enrolments using external database

Plan B

• Moodle comes with several enrolment plugins.

• One lets you take enrolments from an external database.

Page 11: Enrolments using external database

Plan B

Student Record System

MoodleSQL DB

Data getsexportedfrom MIS.

Exported ina format

Moodle understands

Page 12: Enrolments using external database

Database Structure

• Required data exported from UNITe student record system.

• Relational database structure used to manage enrolments

Page 13: Enrolments using external database

Database Structure

• Students belong to the class group.

• Class groups get assigned to a course.

• Courses may be associated with one or more units.

Page 14: Enrolments using external database

Meta Link Mayhem

• Our database structure has its own meta-link system.

• Don’t do this! Use Moodle’s built-in meta-link facility.

• There were reasons we had to do this.

Page 15: Enrolments using external database

Meta Link Mayhem

• In Moodle 2, you can add users directly to metalinked courses. You couldn’t in Moodle 1.9.

• We were merging three Moodles, with thousands of courses and existing metalinks.

• mdl_course_metalink table was removed from Moodle 2.

Page 16: Enrolments using external database

city12345

city12345

city12345

HNDPHO student

student

student

HNDPHO11

HNDPHO12

Student Enrolments

Moodle

student › cohort cohort › course course › unit

Data export from student

record sys.

Lecturers add cohorts to

courses

Migrated from old systems.

Page 17: Enrolments using external database

awalker

awalker

awalker

HNDPHO lecturer

lecturer

lecturer

HNDPHO11

HNDPHO12

Sta! Enrolments

Moodle

lecturer › course

Data came from legacy

systems.

course › unit

Migrated from old systems.

Page 18: Enrolments using external database
Page 19: Enrolments using external database

Getting Data from MIS

• Central College (Glasgow) developed a front-end for the Unit-e student record system, called Enquirer.

• Central College is now part of the City of Glasgow College.

• We get Enquirer for free.

Page 20: Enrolments using external database

Getting Data from MIS

• Enquirer generates a CSV of the student usernames and their class cohorts.

• This CSV is automatically picked up at midnight by our Moodle server, which adds these records to our enrolment database.

Page 21: Enrolments using external database

Getting Data into Moodle

• Moodle expects to read from one database table.

• We used a view to pull the sta! and student lists into one table.

Page 22: Enrolments using external database

Scalability

• 16,000 students.

• 20,000 student:cohort records.

• 1,500 cohorts added to top level courses.

• About 30 ‘All Student’ coursesx 16,000 students = 480,000 rows!

Page 23: Enrolments using external database

Scalability

• Entire view contains 715,604 rows.

• Takes 5 seconds to generate.

• Moodle generates this view every time a user logs in.

• During peak times, Moodle was slow and unreliable.

Page 24: Enrolments using external database

Scalability

Page 25: Enrolments using external database

Scalability

• Cache the contents of the view in a regular table.

• Index the username column to speed up Moodle’s query.

• Update the cache regularly with the latest contents of the view.

Page 26: Enrolments using external database

Scalability

• select * from allEnrolmentswhere username=“awalker”3.03 seconds

• select * from cachedEnrolmentswhere username=“awalker”0.01 seconds

Page 27: Enrolments using external database

Administration

• When using the SQL database, only the developer could look into issues or change enrolments.

• Wrote a front-end, allowing the Learning Technologists to modify and troubleshoot enrolment issues.

Page 28: Enrolments using external database

Finder Tool

Page 29: Enrolments using external database

Finder Tool

Page 30: Enrolments using external database

Finder Tool

Page 31: Enrolments using external database

Finder Tool

Page 32: Enrolments using external database

Finder Tool

Page 33: Enrolments using external database

Finder Tool

Page 34: Enrolments using external database

Finder Tool

Page 35: Enrolments using external database

Finder Tool

Page 36: Enrolments using external database

Finder Tool

Page 37: Enrolments using external database

Finder Tool

Page 38: Enrolments using external database

Finder Tool

Page 39: Enrolments using external database

Finder Tool

Page 40: Enrolments using external database

Finder Tool

Page 41: Enrolments using external database

Building Finder 2.0

• Finder can’t be easily released, because it’s tightly tied to our custom enrolment database.

• Work has just started on Finder 2.0, which is modular and can be released for those just using Moodle.

Page 42: Enrolments using external database

Building Finder 2.0

• Renamed ‘Finder’ to ‘Inspector’.

• More detailed reporting tools.

• ‘Course info panels’ to show number of assignments, forum posts and "les in a course.

• New ‘Timeline’ feature to see what a user has done, or what’s done on a course.

Page 43: Enrolments using external database

Finder Tool

Page 44: Enrolments using external database

Finder Tool

Page 45: Enrolments using external database

Finder Tool

Page 46: Enrolments using external database

Finder Tool

Page 47: Enrolments using external database

Finder Tool

Page 48: Enrolments using external database

Finder Tool

Page 49: Enrolments using external database

Finder Tool

Page 50: Enrolments using external database

Finder Tool

Page 51: Enrolments using external database

Advantages

• Latest enrolment data automatically pulled from MIS every night.

• Lecturers can add students to their courses themselves, by cohort.

• New students automatically see their courses when they log in for the "rst time.

Page 52: Enrolments using external database

Advantages

• Non-developers have the power to check, modify and troubleshoot enrolment issues.

• Learning technologists have the power to check and "x issues themselves.

• No waiting for a developer to check issues.

• Developer able to take holidays.

Page 53: Enrolments using external database

Disadvantages

• Lecturers and students don’t show up on list of participants until they log in for the "rst time.

• Newly enrolled users won’t show up until the next time they log in.

• Can’t manage database enrolments through Moodle. Have to edit them at the database level.

Page 54: Enrolments using external database

Finder Tool

Page 55: Enrolments using external database

Disadvantages

• ‘Yet another system’ for Learning Technologists to use.

• New Learning Technologists already familiar with Moodle still have to learn Finder.

• Requires a developer in-house to oversee and manage.

Page 56: Enrolments using external database

Future Improvements

• Working on Finder 2.0 (Inspector), with a greater emphasis on reports and a smoother work#ow.

• Get rid of meta links at the database level. Use Moodle’s meta links, or don’t use them at all.

Page 57: Enrolments using external database

Questions

Alex WalkerCity of Glasgow College