edX Development - School of Information Technology · Sonam Gupta NIT Raipur Suhanth Boddu IIIT...
Transcript of edX Development - School of Information Technology · Sonam Gupta NIT Raipur Suhanth Boddu IIIT...
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
edX Development
Gagan Khanijau IIIT DelhiPiyush Tiwari LNMIIT JaipurRupal Sharma LNMIIT Jaipur
Sonam Gupta NIT RaipurSuhanth Boddu IIIT Delhi
Surabhi Prasad DAIICTUdayan Jain SGUV Jaipur
Zeel Shah DAIICT
03 July 2013
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Outline
IntroductionedX-platformDjango Caching FrameworkedX DatabaseedX-ORA
xqueueEASEDEMOFuture ScopeReferences
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Introduction
I EdX is a non-profit organization formed by collaborationof Harvard and MIT
I OpenEdX provides an open source platform for buildingMOOC(an online education system)
I We were working to develop MOOC system for iitbknown as ’IITBombayX’ using OpenEdX.
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
edX Platform
Figure: edX Overview
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
What is CMS?
I Course Management System
I It is the instructor side of the system where there is aprovision for creating and managing courses using theMOOC system.
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Features of CMS(Adding Videos)
Figure: Adding Videos
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Features of CMS(Adding Videos)
Figure: Adding Videos
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Features of CMS(Course Team)
Figure: Course Team
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Features of CMS(Grading Policy)
Figure: Grading Policy
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Features of CMS(Assignments)
Figure: Assignments
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
What is LMS?
I Learning Management System
I It is the student side of the system
I Students can register for courses according to their areaof interest
I Graded and certified on successful course completion.
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Features of LMS(Self Paced Learning)
Figure: Self Paced Learning
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Features of LMS(Student Dashboard)
Figure: Student Dashboard
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Discussions
Figure: Discussions
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Django Cache System
I Robust Cache System
I Save Dynamic Pages
I Levels of cache granularity
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Types of Caching
I Memcached
I Database Caching
I Filesystem Caching
I Local Memory Caching
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Experiment
Objective :To test different types of cache systems available inDjango
Testing Tool :Jmeter
Parameters :
I Number of Users : 10
I Ramp-up Period : 20
I Loop Count : 5
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Results
Type of Caching Average Sampletime (in ms)
Deviation
Local Memory Caching 168 196Memcached 93 8Database Caching 136 32Filesystem Caching 121 23
Table: Results
Memcached > FilesystemCaching > DatabaseCaching >LocalMemoryCaching
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Database
edX uses two database systems :
I SQLite* (Relational Database): used to store theuser-data
I MongoDB(Non Relational Database): used to store thecourseware content
*for production environments MySQL is used.
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Database
SQLite/MySQL
I Relational Database.
I Used to store the information about user profile,registration data, student enrollment, logs, test andgrading.
I There are (85+1) tables currently present in IITBombayX.
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Database
Figure: Categorization of relations
Categorization of relations:edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Database
MongoDB
I NoSQL - Document based database(has collections anddocuments)
I Used to store the courseware content, course policies etc.
I Data is stored as a series of key value pairs whichoptimizes retrieval and appending of data.
I Two databases:I xcontent: stores filesystem contentI xmodule: stores module definitions and metadata
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Database
Use of two different Databases:
Using MongoDB is a relatively new concept(previouslyarchitecture used XML based files). Since use of relationaldatabase for user-data predated the transition of content storeso it was not migrated to NoSQL platform.[1]
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
edX-ORA
I edX-ORA is used for the assessment of open responseproblems on the edx platform.
I It has support for Peer Grading, Staff Grading andMachine Grading.
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
edX-ORA
Figure: edx-ORA
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
edX-ORA
I AI AssessmentI In AI assessment, a computer algorithm scores student
submissions.
I Peer AssessmentI In Peer assessment each student gives one another
scores and feedbacks. For this he first has to gradehimself and then proceed for the calibration round, uponcompletion of which he can grade his peer with the helpof provided rubrics.
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
xqueue
I It provides an interface to the LMS to interact withexternal grading system like ORA. [2]
Figure: xqueue interaction
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
EASE
I The EASE module is used for machine learning basedautomated classification.
I Machine learning based automated classification can workon both free text and numeric values.[3]
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
EASE
Figure: model creation
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
EASE
Figure: training and prediction
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Time for DEMO
Demo of features :
1. Upload Video Directly through edX Studio
2. Popularity of Course (no. of students registered)
3. Course Search (on keyword)
4. Recommended Courses
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Future Scope
I Refining search
I Course feedback and rating
I Improvement in AI grader
I Access control to staff(added by Instructor)
I User interface to provide programming assignments thatwill run in codejail
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
References
[1] edX, “edX Wiki Github.”
[2] edX, “xqueue repository.”
[3] edX, “ease repository.”
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
IITBombayX Development Team
Gagan Khanijau Piyush Tiwari Rupal Sharma Sonam Gupta
Suhanth Boddu Surabhi Prasad Udayan Jain Zeel Shah
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
edX Development
Introduction edX-platform Django Caching Framework edX Database edX-ORA xqueue EASE DEMO Future Scope References
Any Queries?
edX Development