MD703 Final Class: Database Internal / External Integration Outsourcing.
Enrolments using external database
-
Upload
alex-walker -
Category
Documents
-
view
1.072 -
download
4
Transcript of Enrolments using external database
External Database Enrolments
Alex WalkerCity of Glasgow College
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.
The City of Glasgow College
Bb8.0
m1.9.8
m1.9.8
469628
CoursesSta! Accounts
672363
CoursesSta! Accounts
609157
CoursesSta! Accounts
The City of Glasgow College
m2.4.0
3,93216,102
CoursesActive Users
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.
Plan A
Student Record System
MoodleLDAP
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).
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.
Plan B
Student Record System
MoodleSQL DB
Plan B
• Moodle comes with several enrolment plugins.
• One lets you take enrolments from an external database.
Plan B
Student Record System
MoodleSQL DB
Data getsexportedfrom MIS.
Exported ina format
Moodle understands
Database Structure
• Required data exported from UNITe student record system.
• Relational database structure used to manage enrolments
Database Structure
• Students belong to the class group.
• Class groups get assigned to a course.
• Courses may be associated with one or more units.
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.
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.
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.
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.
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.
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.
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.
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!
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.
Scalability
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.
Scalability
• select * from allEnrolmentswhere username=“awalker”3.03 seconds
• select * from cachedEnrolmentswhere username=“awalker”0.01 seconds
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.
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
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.
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.
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
Finder Tool
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.
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.
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.
Finder Tool
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.
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.
Questions
Alex WalkerCity of Glasgow College