Rdiff and Rsync Implementation on Moodle's Backup and Restore Feature of Course Synchronization over...

38
Rdiff and Rsync Implementation on Moodle’s Backup and Restore Feature for Course Synchronization over The Network Fajar Purnama 1 Tsuyoshi Usagawa 1 Royyana Ijtihadie 2 Linawati 3 1 Kumamoto University 2 Institut Teknologi Sepuluh Nopember 3 Udayana University [email protected] [email protected] [email protected] [email protected] October 18, 2016 Fajar Purnama (KU) TENSYMP2016 October 18, 2016 1 / 38

Transcript of Rdiff and Rsync Implementation on Moodle's Backup and Restore Feature of Course Synchronization over...

Rdiff and Rsync Implementation on Moodle’s Backupand Restore Feature for Course Synchronization over

The Network

Fajar Purnama 1 Tsuyoshi Usagawa 1 Royyana Ijtihadie 2 Linawati 3

1Kumamoto University

2Institut Teknologi Sepuluh Nopember

3Udayana University

[email protected] [email protected] [email protected] [email protected]

October 18, 2016

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 1 / 38

Outline

1 IntroductionE-learningOnline CourseLMS MoodleDeveloping a Course

2 Related WorkCourse SharingIssue of Traditional CourseSharingCourse Synchronization

3 ExperimentProposed CourseSynchronizationScenarios

4 ResultDemonstrationMeasurement

5 Conclusion and Future Work

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 2 / 38

Introduction E-learning

Electronic Learning

The use of electronic devices in the learning and teaching process.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 3 / 38

Introduction Online Course

Classroom: Conventional vs Online

Anywhere

Anytime

Face to Face

Face to Face

AnytimeAnywhere

Face to FaceAnywhereAnytime

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 4 / 38

Introduction LMS Moodle

Learning Management System

Learning Management System (LMS) can be refered to a software with asystem that can manage online learning and teaching process.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 5 / 38

Introduction LMS Moodle

On the students’ side they can read materials

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 6 / 38

Introduction LMS Moodle

On the students’ side they can follow quizzes

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 7 / 38

Introduction LMS Moodle

On the students’ side they can join discussions

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 8 / 38

Introduction LMS Moodle

On the students’ side they can submit assignments

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 9 / 38

Introduction Developing a Course

On The Teacher’s Side

Flexibility

Teachers can return feedbacks at their leasure time. Withall the student’s activity recorded on the system, it iseasier to monitor

IssueIt is not so easy developing a course. Some contents maycorrectly be written by Professors. Through experience can a persondevelop a well designed and written course, but also takes time to gainthose experiences, not to mention developing a course afterwards.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 10 / 38

Related Work Course Sharing

Course sharing as one of the solutions.

The term massive open online course (MOOC) was one of the triggers where course areopen for countless participants to enroll online. Then came an idea, why not share thesecourses? It’s one of the solutions to the issue of developing a course by oneself.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 11 / 38

Related Work Course Sharing

Moodle’s Course Backup and Restore Feature

Moodle had a feature to reuse course on other sites.

The course can be backup into .mbz format archive and that is whatis downloaded on the course sharing on moodle.net.

The major features Moodle’s backup and restore are the flexibility toset the informations contain on the backup whether they are includingusers information or not, or including all contents or just certaincontents.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 12 / 38

Related Work Issue of Traditional Course Sharing

Constant revisions for perfecting a course, especially informal education systems.

FLOW

OF

TIME

Authors Subscribers

CreatesCourse

16MBCourse

16MB

Share

RevisesCourse

28MBCourse

28MB

Share

RevisesCourse

30MBCourse

30MB

Share

RevisesCourse

...MBCourse

Share

HeavyNetwork

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 13 / 38

Related Work Course Synchronization

Identify the differences between databases and directories,then send the differences and update current course.

FLOW

OF

TIME

Authors Subscribers

CreatesCourse

16MBCourse

16MB

Share

RevisesCourse

28MBCourse

~10MB

Update

RevisesCourse

30MBCourse

~2MB

RevisesCourse

...MBCourse

Update

16MBCourse

28MBCourse

Update

...MBCourse

EfficientNetwork

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 14 / 38

Related Work Course Synchronization

Application Written in PHP

Master Console

Slave Console

Before Synchronization After Synchronization

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 15 / 38

Related Work Course Synchronization

Challenges of Course Synchronization

CompatibilityDeveloping many applications to be compatible with allversions of Moodle.

FlexibilityDevelop features to set the synchronized informations.

These FeaturesMoodle’s course backup and restore has these features.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 16 / 38

Experiment Proposed Course Synchronization

Moodle’s Backup and Restore Feature + FileSynchronization

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 17 / 38

Experiment Proposed Course Synchronization

Implements rdiff: controlled rsync algorithm application

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 18 / 38

Experiment Scenarios

Our Course: Section 1

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 19 / 38

Experiment Scenarios

Our Course: Section 2

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 20 / 38

Experiment Scenarios

Our Course: Section 3

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 21 / 38

Experiment Scenarios

Scenario 1: Without Synchronization

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 22 / 38

Experiment Scenarios

Scenario 2: Large Content Synchronization

Slave LMS

Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 23 / 38

Experiment Scenarios

Scenario 3: Medium Content Synchronization

Slave LMS

Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 24 / 38

Experiment Scenarios

Scenario 4: Small Content Synchronization

Slave LMS

Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 25 / 38

Experiment Scenarios

Scenario 5: Small Modification Synchronization

Slave LMS

Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 26 / 38

Experiment Scenarios

Scenario 6: Change Order

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 27 / 38

Experiment Scenarios

Scenario 7: No Change

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 28 / 38

Result Demonstration

Console Written in PHP, both sides uploads their backuparchive.

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 29 / 38

Result Demonstration

On the slave side, ”settings” to define the Master’s Url,then ”update”.

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 30 / 38

Result Demonstration

Slave side generates signature file.

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 31 / 38

Result Demonstration

Slave side sends signature file and Master side receives.

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 32 / 38

Result Demonstration

Master side generates delta file using its backup file andreceived signature file.

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 33 / 38

Result Demonstration

Master side returns delta file to Slave side.

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 34 / 38

Result Demonstration

Master side updates the backup archive using the receiveddelta file.

Slave LMS Master LMS

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 35 / 38

Result Measurement

Network Usage of Synchronization

Rdiff direct archive synchronization. Rdiffdir recursive file synchronization.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 36 / 38

Conclusion and Future Work

Efficiency

Like the previous course synchronization, this paper’scourse synchronization method also shows networkefficiency.

Compatibility

Since it uses the existing feature in Moodle, it is likelycompatible with all versions of Moodle, but it has not yet fullydemonstrated on this paper. In the future it will be demostrated and also furtherdevelop the application to be compatible with all other LMSs.

Flexibility

Unlike our previous course synchronization, the one on this paper gave moreflexibility to specify the informations to be synchronizedsince it uses Moodle’s backup and restore feature. However this too hasn’t been fullydemonstrated.

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 37 / 38

Conclusion and Future Work

Thank youAny comments or questions?

Fajar Purnama (KU) TENSYMP2016 October 18, 2016 38 / 38