Q&A In Online EducationE-learning management system

Technology

Moodle 1.9, Moodle 2.4, PHP, MySQL, AWS, YUI yahoo apis, javascript, html, css, bootstrap, flash players

Overview

We have Questions and Quizzes functionality in the online learning platform for http://amelearning.com/ This is used by colleges in Canada

This is an E-learning management system with inclusion of features like Quiz assessments and assignments. Here are the prominent features

Features
  • Each type of question is having a different method of scoring like:- answers to numerical questions are allowed to have an accepted error. Some of the questions are having a penalty scoring as well
  • There were questions based on audio and video media. The video and audio questions used flash players for content.
  • The Quizzes are easy to design by selecting the module for which the quiz has to be designed and then using the Question bank for the selection of questions to be used in the quiz
  • The system is capable to restart the quiz from the last action in case the quiz was stopped abruptly or the user wants to quit the quiz in between.
  • The grade reviewer can view the grade reports on the basis of quizzes present for each module and can also see the average grades for all the quiz attempts.

The Quizzes/Assignments and assessments contain the below types of questions:-

  • Calculated
  • Multiple choice
  • Matching
  • Short Answer
  • Essay
  • Numerical
  • Third-party question types

Challenges

We have been working on this project since 2014 and came across so many challenges since then. Few of them are:

Complex Code Architecture – Since this project is an integration of three CMSs in PHP – Moodle, Drupal & WordPress, in which WP & Drupal resides on one server and Moodle on a different server. So managing data across these different CMS had been our first challange.

Huge Data & Frequent DB Calls – During exams, we get so many users online at the same time accessing same/different courses, tutorials, quizzes, etc. that increases processing time and response time, leaving the site responding very slow.

Initially, we were using Moodle version 2.4.3. But as the system was growing, we needed a very strong cache implementation for the system although the DB caching was already there.

Solutions

Implemented required APIs in different CMSs, and sharing data through that APIs only.

We moved the site Amazon EC2 instances and created instances, for load balancing on server. The DB is placed on Amazon RDS instance; and assets files are been synced and shared using NFS. On regular basis, we check and do database tuning, by changing global parameters. Additionally, we have several cron jobs, running for various different tasks assigned.

We upgraded Moodle 2.4.3 to 3.03 version, and taken benefit of Memcaching. We have one extra small instance as memcached server, that hold the application cache at one place for each different instances. And session cache has been stored locally by the memcached server running on same instance.

Result

Site is comparatively very fast. Client and site users are very happy with their experience.

How can we help you?

Have an experienced software architect provide a free estimate & professional consultation. 


The costs for having my software developed by Laitkor were considerably cheaper than anything I could find in Australia. I have been very happy with the service, costs and the management of my projects

Denis Ryan
Chief Technical Officer, YouTurkey/ThatsNewsY

Outstanding experience! Highly recommended. Good communication and professional work. Delivered on time and very satisfied. 10 on 10 review rating as they fixed my iOS gaming app for all the bugs!

MBS Port
Chairman, MBS Port

Looking for a First-Class Software Consultant?