Seminar Nasional ke – 9: Rekayasa Teknologi Industri dan Informasi
Pengembangan Extensi Fitur Akses Quiz Pada Moodle Mobile berbasis Android Resmana Lim1, Pieter Sindu Wijaya2, Andreas H2, Rolly Intan2, Justinus Andjarwirawan2 1)
2)
Program Studi Teknik Elektro Fakultas Teknologi Industri Universitas Kristen Petra Program Studi Teknik Informatika Fakultas Teknologi Industri Universitas Kristen Petra Jl. Siwalankerto 121 – 131 Surabaya 60236 E-mail:
[email protected]
Abstrak Aplikasi sistem manajemen pembelajaran elektronik (e-learning) saat ini banyak digunakan untuk melakukan kegiatan belajartanpa harus beradadi ruang kelasfisik. Penggunaan Moodle sebagai Learning Management System (LMS) telah banyak memberikan manfaat.Moodle dilengkapi dengan aplikasi Moodle Mobile yang dapat diinstal pada perangkat Android. Aplikasi inimemiliki banyak fitur yang telah diimplementasikan untuk mengakses materi belajar. Namun fitur akses quiz masih belum dapat sepenuhnya diakses langsung pada mobile device. Proyek ini melakukan modifikasi aplikasi Moodle Mobile dan menyediakan tambahan web-services agar fitur quiz dapat berjalan pada piranti mobile. Pengguna yang terdaftar sebagai guru dapat membuat pertanyaan dan membuat quiz untuk kemudian dikerjakan oleh murid. Aplikasi telah di uji dengan berbagai perangkat android. Berdasarkan hasil pengujian, aplikasi ini dapat bekerja dengan baik pada versi Android 4,0-4,3 atau Jelly Bean. Murid dapat mengerjakan quiz secara langsung pada aplikasi mobile yang dikembangkan. Keyword :Moodle Mobile, m-learning, Android, quiz online
1.
Pendahuluan
Salah satu sistem pembelajaran elektronik (elearning) yang banyak digunakan saat ini adalah Moodle (Modular Object-Oriented Dynamic Learning Evironment). Moodle memungkinkan adanya kegiatan belajar mengajar antara pengajar dan peserta tanpa harus bertemu dalam satu ruang kelas. Moodle adalah aplikasi web dengan berbagai fitur seperti penempatan konten belajar, forum diskusi, chat, tugas online, quiz, dan lain lain. Fitur Quizdibuat untuk peserta didik dapat mengerjakan soal-soal latihan secara online. Quiz dibuat oleh pengajar, yang mana beberapa jenis Quiz yang diberikan adalah antara lain Essay, Multiple Choice, dan Multiple Answer. Saat ini juta tersedia aplikasi Moodle Mobile untuk mengakses konten Moodle dari perangkat bergerak (smartphone, tablet)(Juan Leyva, 2014). Belum semua fitur dapat secara langsung diakses via aplikasi mobile tersebut. Misalkan Quiz, saat ini belum ada fitur untuk pembuatan Quiz yang dilakukan melalui perangkat mobile. Oleh karena itu, pada penelitian ini dibuatlah sebuah aplikasi tambahan pada aplikasi Moodle Mobile yang dapat
berjalan pada perangkat berbasis Android dengan memanfaatkan web services sebagai sarana pertukaran data yang akan dilakukan antara perangkat dengan database pada server. Fitur yang dibuat adalah pengajar dapat membuat Quiz melalui perangkat Android sedangkan peserta dapat mengerjakan Quiz melalui perangkat Android. Selanjutnya akan diulas pada bagian 2 beberapa teknologi pendukung yang diperlukan, dilanjutkan dengan desain sistem dan implementasi serta diakhiri dengan pengujian dan penyampaian kesimpulan.
2.
Teknologi Pendukung
2.1. Platform E-Learning Moodle Moodle adalah open source Course Management System (CMS) yang digunakan oleh banyak universitas dan sekolah sebagai platform e-learning. Aplikasi ini memungkinkan siswa untuk masuk kedalam “ruang kelas” digital untuk mengakses materi pembelajaran. Selama 10 tahun terakhir, pengguna Moodle telah menunjukkan pertumbuhan yang besar. Jumlah skenario penggunaan Moodle sangat bervariasi Sekolah Tinggi Teknologi Nasional (STTNAS) Yogyakarta | 208
Seminar Nasional ke – 9: Rekayasa Teknologi Industri dan Informasi
dengan dukungan situs Moodle.org yang menyediakan ratusan plug-in tambahan (modul kegiatan, courses, blok, theme, integrasi dan hacks). Plug-in tambahan ini adalah kontribusi dari komunitas pengembang Moodle yang bersifat open source (Xhafa, Caballe, Rustarazo, & Barolli, 2010).
2.4. PhoneGap Selain ADT, penulis memanfaatkan PhoneGap yaitu sebuah aplikasi dengan platform HTML5 yang memungkinkan menulis aplikasi native dengan teknologi web. Phone Gap merupakan framework aplikasi mobile berbasis HTML5, CSS3, JQuery Mobile, dan Javascript (Steven Suehringand, 2013)
2.2. Moodle Mobile Dalam beberapa tahun telah dikembangan beberapa aplikasi mobileyang menyediakan akses aplikasi Moodle bagi pengguna bergerak. Itu tersedia dengan banyak fitur dan antar muka yang userfriendly (Sakharkar, Iyer, & Baru, 2009; Zamfirache, Eftcnoiu, Iosif, Olteanu, & Tapus, 2013).Moodle head quater (HQ) Moodle.org telah membangun aplikasi Moodle untuk pengguna ponsel/tablet berbasis HTML 5 yang berjalan pada android dan iOS.
3.
Aplikasi resmi moodle mobile dikembangkan olehJuanLeyva(Juan Leyva, 2014) dengan dukungan dari Jerome Mouneyrac, Moodle HQ dan lain-lain. Moodle Mobile Apps mempunyai fitur meliputi : 1) desain Responsif untuk telepon dan tablet, 2) Upload gambar ke folder pribadi, 3) Rekam file audio dan meng-upload ke folder pribadi, 4) Kirim pesan pribadi ke peserta kuliah (bisa dilakukan secara offline), 5) Mengambil catatan pribadi tentang peserta kuliah, 6) Menambahkan peserta kuliah ke kontak telepon, 7) akses cepat kekonten kuliah.
Pertama kali aplikasi dijalankan akan keluar halaman Login (gambar 1) dengan inputan berupa site URL, username, dan password. Aplikasi berkomunikasi dengan web services yang dikembangkan penulis (Lim, Wijaya, Andjarwirawan, Handojo, & Intan, 2014) pada server Moodle untuk memeriksa username dan password pada database. Apabila user terdarfar dalam sistem, maka berikutnya user berhak untuk mengakses konten kuliah beserta dengan quiz yang ada.
Desain Sistem
Desain sistem dari aplikasi yang dibuat mengarah pada alur web services dan desain database yang digunakan. Juga desain inter face (form-form) yang akan digunakan pada aplikasi untuk menambahkan fitur-fitur seperti menambahkan Quiz, soal, dan mengerjakan Quiz pada aplikasi mobile.
3.1. Flowchart sistem
Khusus untuk fitur akses Quiz, saat ini mobile apps yang tersedia masih belum menyediakan akses langsung. Siswa mengerjakan quiz masih melalui web browser yang mana ini terasa kurang nyaman karena masih belum menyatu dengan mobile apps. Penelitian ini mencoba untuk memodifikasi moodle mobile apps agar akses quiz (membuat dan mengerjakan quiz) dapat tersedia langsung pada apps.
2.3. Android Development Tools Proyek ini memanfaatkan Android Development Tools (ADT) Bundle. Ini merupakan sebuah paket aplikasi yang digunakan untuk mengembangkan aplikasi berbasis Android. ADT Bundle terdiri dari aplikasi dua aplikasi yangg diperlukan untuk membuat suatu aplikasi Android, yaitu Eclipse IDE dan Software Development Kit (SDK). ADT Bundle dilengkapi dengan fitur yang mendukung dalam mengembangkan aplikasi Android seperti LogCat Monitor yang digunakan untuk memberikan informasi error message, warning, dan process log saat aplikasi sedang dijalankan.
Gambar 1. Proses Login Pada bagian View kelas (gambar 2), web services akan mengirimkan data user dan mengembalikan data kelas yang sedang diikuti oleh user berdasarkan userid yang dimiliki. Dengan demikian user memperoleh akses hanya kepada kelas yang diikuti saja.Alur pembuatan Quiz (gambar 3) dimulai dengan memeriksa useriddari user. Jika Sekolah Tinggi Teknologi Nasional (STTNAS) Yogyakarta | 209
Seminar Nasional ke – 9: Rekayasa Teknologi Industri dan Informasi
user terdaftar sebagai pengajar, maka diberikan akses untuk membuat Quiz dan juga membuat/ menambahkan soal-soal. Kemudian alur untuk siswa mengerjakan Quiz dapat dilakukan oleh user sebagai peserta Course/kuliah (gambar 4). Web services akan me-request data Quiz yang akan ditampilkan dan setelah selesai dikerjakan, web services akan mengirimkan data jawaban dari user kedalam database.
Gambar 4. Proses Mengerjakan Quiz
3.2. Desain User Interface
Gambar 2. Proses Melihat Kelas
Desain user interface yang ditambahkan pada aplikasi mobile moodle antara lain desain form untuk membuat Quiz oleh pengajar.Setelah pengajar membuat Quiz, terdapat form untuk membuat soal dan menambahkan soal pada Quiz yang sudah dibuat sebelumnya.Jika status user sebagai peserta Course, maka akan muncul menu untuk Take Quiz atau mengerjakan quiz yang sudah dibuat sebelumnya.Web services akan memanggil soal yang ada pada Quiz dan menampilkan pada user untuk dikerjakan.
Gambar 3. Proses Membuat Quiz Gambar 5. Desain Form Create Quiz
Sekolah Tinggi Teknologi Nasional (STTNAS) Yogyakarta | 210
Seminar Nasional ke – 9: Rekayasa Teknologi Industri dan Informasi
3.3. Database mdl_course mdl_enrol id_enrol
Integer <M> enrol_enrol Variable characters (20) status_enrol Integer sortorder_enrol Integer name_enrol Variable characters (255) enrolperiod_enrol Integer enrolstartdate_enrol Integer enrolenddate_enrol Integer expirynotify_enrol Integer expirythreshold_enrol Integer notifyall_enrol Integer password_enrol Variable characters (50) cost_enrol Variable characters (20) currency_enrol Variable characters (3) customint1_enrol Integer customint2_enrol Integer customint3_enrol Integer customint4_enrol Integer customint5_enrol Integer customint6_enrol Integer customint7_enrol Integer customint8_enrol Integer customchar1_enrol Variable characters (255) customchar2_enrol Variable characters (255) customchar3_enrol Variable characters (255) customdec1_enrol Decimal (12,7) customdec2_enrol Decimal (12,7) customtext1_enrol T ext (255) customtext2_enrol T ext (255) customtext3_enrol T ext (255) customtext4_enrol T ext (255) timecreated_enrol Integer timemodified_enrol Integer
has
mdl_user_enrolments id_user_enrolments Integer <M> status_user_enrolments Integer timestart_user_enrolments Integer timeend_user_enrolments Integer timecreated_user_enrolments Integer timemodified_user_enrolments Integer Identifier_1
has
mdl_user id_user <M> Long integer auth_user Variable characters (20) confirmed_user Short integer policyagreed_user Short integer deleted_user Short integer suspended_user Short integer username_user Variable characters (100) password_user Variable characters (255) idnumber_user Variable characters (255) firstname user Variable characters (100) ...
Integer <M> id_course fullname_course Variable characters (254) shortname_course Variable characters (255) idnumber_course Variable characters (100) summary_course Text (255) summaryformat_course Short integer format_course Variable characters (20) showgrades_course Short integer newsitems_course Integer startdate_course Integer marker_course Integer maxbytes_course Integer legacyfiles_course Integer showreports_course Integer visible_course Short integer visibleold_course Short integer groupmode_course Integer groupmodeforce_course Integer lang_course Variable characters (30) calendartype_course Variable characters (50) theme_course Variable characters (50) timecreated_course Integer timemodified_course Integer requested_course Short integer enablecompletion_course Short integer completionnotify_course Short integer cacherev Integer
contain
has
mdl_course_sections id_course_sections Integer <M> name_course_sections Variable characters (255) summary_course_sections Text (255) summaryformat_course_sections Integer sequence_course_sections Text (255) visible_course_sections Integer availablefrom_course_sections Integer availableuntil_course_sections Integer showavailability_course_sections Integer
Identifier_1
Identifier_1
Identifier_1 Enrolled belongs to mdl_role contain
Long integer <M> id_role name_role Variable characters (255) shortname_role Variable characters (100) description_role Text (255) sortorder_role Long integer archetype_role Variable characters (30)
(D)
Identifier_1 has
mdl_course_modules id_course_modules In idnumber_course_modules V In added_course_modules In score_course_modules In indent_course_modules In visible_course_modules In visibleold_course_modules In groupmode_course_modules In groupingid_course_modules In groupmemberonly_ In completion_course_modules completiongradeitemnumber_course_modules In completionview_course_modules In completionexpected_course_modules In availablefrom_course_modules In availableuntil_course_modules In showavailability_course_modules In showdescription_course_modules In
mdl_role_assignments Integer <M> id_role_assignments timemodified_role_assignments Integer component_role_assignments Variable characters (100) sortorder_role_assignments Integer
contain
mdl_context
belongs to
id_context Integer <M> contextlevel_context Integer path_context Variable characters (255) depth_context Integer
Identifier_1 mdl_external_tokens
Identifier_1
id_external_tokens Integer token_external_tokens Variable characters (128) tokentype_external_tokens Integer externalserviceid_external_tokens Integer iprestriction_external_tokens Variable characters (255) validuntil_external_tokens Integer timecreated_external_tokens Integer lastaccess_external_tokens Integer
mdl_question_answers id_question_answers Integer <M> answer_question_answer Variable characters (100) answerformat_question_answers Integer fraction_question_answers Decimal (12,7) feedback_question_answers T ext (255) feedbackformat_question_answers Integer
Required
Member
has
has
Identifier_1
Identifier_1 mdl_question_attempt_steps mdl_quiz
Integer <M> id_question_attempt_steps sequencenumber_question_attempt_steps Integer state_question_attempt_steps Variable characters (13) fraction_question_attempt_steps Decimal (12,7) timecreated_question_attempt_steps Integer Identifier_1 attempt to
Save to
mdl_modules
id_quiz <M> Integer name_quiz Variable characters (255) intro_quiz Text (255) introformat_quiz Integer timeopen_quiz Integer timeclose_quiz Integer timelimit_quiz Integer overduehandling_quiz Variable characters (16) graceperiod_quiz Integer preferredbehaviour_quiz Variable characters (32) attempts_quiz Integer attemptonlast_quiz Integer Categories by grademothod_quiz Integer decimalpoints_quiz Integer questiondecimalpoints_quiz Integer reviewattempt_quiz Integer t i I t ... i
mdl_question id_question Integer name_question Variable characters (255 Text (255) questiontext_question questiontextformat_question Integer generalfeedback_question Text (255) generalfeedbackformat_question Integer defaultmark_question Decimal (12,7) penalty_question Decimal (12,7) qtype_question Variable characters (20) l th ti I t ...
has has
id_modules Integer <M> name_modules Variable characters (20) cron_modules Integer lastcron_modules Integer search_modules Variable characters (255) visible_modules Integer
Contain
Identifier_1
mdl_question_categories id_question_categories Integer <M> name_question_category Variable characters (100) info_question_categories T ext (255) infoformat_question_categories Integer stamp_question_categories Variable characters (255) parent_question_categories Integer sortorder_question_categories Integer Identifier_1
mdl_question_attempts Integer <M> id_question_attempts behavior_question_attempts Variable characters (20)
has
belongs to Used
mdl_quiz_feedback
Identifier_1 mdl_question_attempt_step_data Integer <M> id_question_attempt_step_data name_question_attempt_step_data Variable characters (32) value_question_attempt_step_data T ext (255)
contain
has
id_quiz_feedback Integer feedbacktext_quiz_feedback Text (255) feedbacktextformat_quiz_feedback Integer mingrade_quiz_feedback Decimal (10,5) maxgrade_quiz_feedback Decimal (10,5)
mdl_quiz_question_instances
Identifier_1
Integer <M> id_quiz_question_instances grade_quiz_question_instances Decimal (12,7)
mdl_question_usages
Gambar 6. Form Membuat Soal
Identifier_1
Integer <M> id_question_usages component_question_usages Variable characters (255) preferredbehaviour_question_usages Variable characters (32)
qtype_multichoice_options id_qtype_multichoice_options Integer <M> layout_qtype_multichoice_options Integer single_qtype_multichoice_options Integer shuffleanswers_qtype_multichoice_options Integer correctfeedback_qtype_multichoice_options T ext (255) correctfeedbackformat_qtype_multichoice_options Integer partiallycorrectfeedback_qtype_multichoice_options T ext (255) partiallycorrectfeedbackformat_qtype_multichoice_options Integer incorrectfeedback_qtype_multichoice_options T ext (255) incorrectfeedbackformat_qtype_multichoice_options Integer answernumbering_qtype_multichoice_options Variable characters (10)
Identifier_1 (D)
has
has
mdl_quiz_attempts id_quiz_attempts Integer <M> layout_quiz_attempts Text (255) currentpage_quiz_attempts Integer preview_quiz_attempts Integer state_quiz_attempts Variable characters (16) timestart_quiz_attempts Integer timefinish_quiz_attempts Integer timemodified_quiz_attempts Integer timecheckstate_quiz_attempts Integer sumgrades_quiz_attempts Decimal (10,5) needsupgradetonewqe_quiz_attempts Integer
attempt to
mdl_quiz_grades Integer <M> id_quiz_grades grade_quiz_grades Decimal (10,5) timemodified_quiz_grades Integer
Grade
Identifier_1
Identifier_1
Gambar 9. Entity Relationshop Diagram
Desain database yang digunakan menggunakan stuktur database yang sudah ada pada aplikasi Moodle. Sehingga fungsi web services disini memanfaatkan data yang ada sesuai kebutuhan.
4. Gambar 7. Form Mengambil Quiz
Gambar 8. Form Mengerjakan Quiz
Implementasi Sistem
Aplikasi dimulai dengan menampilkan halaman login. Kemudian web services akan memeriksa user yang melakukan login dan dibedakan masuk sebagai pengajar atau peserta.Pengajar dapat menambahkan Quiz pada suatu Course melalui perangkat Android dengan memanfaatkan web services yang sudah dibuat sehingga dapat sinkron antara Quiz yang ada pada aplikasi dan yang ada pada website.
if($teacher == 1) { $sectionData2 = $DB->get_records ('course_sections', array('course' => $course_id,'section' => $section_no) ); if($sectionData2) { foreach($sectionData2 as $sectionData1) { $section_id = $sectionData1->id; }} $module_id = 16;//quiz $module_name = "quiz"; $quiz = new stdClass(); $quiz->course = $course_id; $quiz->name = $name; $quiz->intro = $description;
Sekolah Tinggi Teknologi Nasional (STTNAS) Yogyakarta | 211
Seminar Nasional ke – 9: Rekayasa Teknologi Industri dan Informasi
$quiz->introformat = 1; $quiz->timeopen = 0; $quiz->timeclose = 0; $quiz->timelimit = 0; $quiz->overduehandling = "autoabandon"; $quiz->graceperiod = 0; $quiz->preferredbehaviour = "deferredfeedback"; $quiz->attempts = 0; $quiz->attemptonlast = 0; $quiz->grademethod = 1; $quiz->decimalpoints = 2; $quiz->questiondecimalpoints = -1; $quiz->reviewattempt = 69904; $quiz->reviewcorrectness = 4368; $quiz->reviewmarks = 4368; $quiz->reviewspecificfeedback = 4368; $quiz->reviewgeneralfeedback = 4368; $quiz->reviewrightanswer = 4368; $quiz->reviewoverallfeedback = 4368; $quiz->questionsperpage = 1; $quiz->shufflequestions = 0; $quiz->shuffleanswers = 1; $quiz->questions = ""; $quiz->sumgrades = 0.00000; $quiz->grade = 10.00000; $quiz->timecreated = 0; $quiz->timemodified = time(); $quiz->browsersecurity = "-"; $quiz_id = $DB->insert_record ("quiz",$quiz); $qfeed = new stdClass(); $qfeed->quizid = $quiz_id; $qfeed->feedbacktext = ""; $qfeed->feedbacktextformat = 1; $qfeed->mingrade = 0; $qfeed->maxgrade = 11; $qfeed_id = $DB->insert_record ("quiz_feedback",$qfeed); $course = $DB->get_record ('course',array('id' => $course_id)); $smodule = new stdClass(); $smodule->course = $course_id; $smodule->module = $module_id; $smodule->instance = $quiz_id; $smodule->section = $section_id; $smodule->idnumber = ""; $smodule->added = time(); $smodule->score = 0; $smodule->indent = 0; $smodule->visible = 1; $smodule->visibleold = 1; $smodule->groupmode = 0; $smodule->groupingid = 0; $smodule->groupmembersonly = 0; $smodule->completion = 0; $smodule->completionview = 0; $smodule->completionexpected = 0; $smodule->availablefrom = 0; $smodule->availableuntil = 0; $smodule->showavailability = 0; $smodule->showdescription = 0; $smodule_id = $DB->insert_record ("course_modules",$smodule); $context = context_module::
instance($smodule_id); $qcat = new stdClass(); $qcat->name = "Default for ".$name; $qcat->contextid = $context->id; $qcat->info = "The default category for quiz $name"; $qcat->infoformat = 0; $qcat->stamp=""; $qcat->parent = 0; $qcat->sortorder= 999; $qcat_id = $DB->insert_record ("question_categories",$qcat); $sectionData = $DB->get_record ('course_sections', array('id' => $section_id) ); if($sectionData) { if($sectionData->sequence == "") { $sectionData->sequence = $smodule_id; } else { $sectionData->sequence = $sectionData->sequence.", ".$smodule_id; } $DB->update_record ('course_sections', $sectionData);} $event = \core\event\course_module_ created::create(array( 'courseid' => $course->id, 'context' => $context, 'objectid' => $smodule_id, 'other' => array( 'modulename' => $module_name, 'name' => $name, 'instanceid' => $quiz_id ))); $event->trigger(); rebuild_course_cache($course->id, true); $sukses = 1;}
Peserta yang dapat mengerjakan Quiz yang telah dibuat pada perangkat Android dengan pemanfaatan web services. Pada halaman Take Quiz, web services akan memanggil soal yang sudah dibuat dalam database kemudian ditampilkan pada perangkat Android peserta yang akan mengerjakan Quiz tersebut. $cmData = $DB->get_record ('course_modules',array( 'id' => $cm_id, 'module' => 16) ); if($cmData) { $quiz_id = $cmData->instance; $quizData = >get_record('quiz',array( 'id' => $quiz_id) ); if($quizData) { $soal = array(); $attemptData2 = $DB->
$DB-
Sekolah Tinggi Teknologi Nasional (STTNAS) Yogyakarta | 212
Seminar Nasional ke – 9: Rekayasa Teknologi Industri dan Informasi
get_records('quiz_attempts', array('quiz' => $quiz_id, 'userid' => $user_id)); if ($attemptData2) {
{ $questiontype =
foreach($attemptData2 as $attemptData) { $attempts = 1; }} $course = $DB->get_record ('course',array( 'id' => $course_id)); $context = context_course:: instance($course_id); $qcat_id = 0; if ($qcat_datas = $DB->get_records( 'question_categories',array ('contextid'=>$context->id,'parent' => 0 ))) { foreach($qcat_datas as $qcat_data) { $qcat_id = $qcat_data->id; }} $quizQuestionData2 = $DB->get_records( 'quiz_question_instances', array('quiz' =>$quiz_id)); if($quizQuestionData2) { foreach($quizQuestionData2 as $quizQuestionData) { $question_id = $quizQuestionData ->question; $grade = $quizQuestionData->grade; $questionData = $DB->get_record ('question',array('id' $question_id)); if($questionData) { $questiontype=""; $answers = array(); if($questionData->qtype == "essay"){ $questiontype = "Essay";}
=>
if($questionData->qtype == “multichoice") { $questiontype = "MultipleChoices"; $questionOptionData2 $DB-> get_records('qtype_
=
"Multiple Answers";}}} $questionAnswerData2 = $DB->get_records('question_answers', array('question' => $question_id)); if($questionAnswerData2) { foreach($questionAnswerData2 as $questionAnswerData) { array_push($answers,array( "id" => $questionAnswerData->id, "answer" => $questionAnswerData->answer, "fraction" => $questionAnswerData ->fraction));}}} if($questiontype != "") { array_push($soal,array( "id" => $questionData->id, "name" => $questionData->name, "questiontext" => $questionData ->questiontext, "grade" => $grade, "qtype" => $questionData->qtype, "questiontype" => $questiontype, "answers" => $answers ));}}}} $data = array( "quizId" => $quizData->id, "name" => $quizData->name, "intro" => $quizData->intro, "soal" => $soal, "teacher" => $teacher, "attempts" => $attempts);
5.
Kesimpulan
Proses mulai dari perancangan sistem sampai pengujian aplikasi yang dilakukan dapat diambil beberapa kesimpulan sebagai berikut.Dari hasil pengujian terhadap beberapa perangkat Android yang digunakan, yaitu Android versi 4.1 – 4.3 (Jelly Bean) dan versi 4.4.2 (KitKat), aplikasi dapat berjalan dengan baik pada semua perangkat. Siswa dapat mengerjakan quiz dan Tutor dapat membuat quiz secara langsung pada moodle mobile apps hasil modifikasi. Kendati demikian soal yang bergambar masih belum dapat ditampilkan sempurna. Letak folder gambar pada server Moodle masih belum dapat ditampilkan.
multichoice_options',array( 'questionid' => $question_id)); if($questionOptionData2) { foreach($questionOptionData2 as $questionOptionData) { if($questionOptionData-> single == 0)
6.
Daftar Pustaka
Juan Leyva. (2014). Official Moodle Mobile Application. Retrieved April 06, 2014, from http://docs.moodle.org/dev/Moodle_Mobile Lim, R., Wijaya, P. S., Andjarwirawan, J., Handojo, A., & Intan, R. (2014). Web Services Extension for Accessing Quiz on Moodle Mobile Application. In 1st International Conference on Engineering Sekolah Tinggi Teknologi Nasional (STTNAS) Yogyakarta | 213
Seminar Nasional ke – 9: Rekayasa Teknologi Industri dan Informasi
Science and Indonesia.
Technology
Innovation.
Bali,
Sakharkar, H., Iyer, S., & Baru, M. (2009). MOLE: An Extension to MLE Moodle. In National Conference on Open Source Sofware (pp. 1–10). Mumbay. Steven Suehringand, J. V. (2013). PHP, MySQL, Javascript & HTML5 ALL-IN-ONE FOR DUMMIES. Hoboken: John Wiley & Sons, Inc. Xhafa, F., Caballe, S., Rustarazo, I., & Barolli, L. (2010). Implementing a Mobile Campus Using MLE Moodle. In 2010 International Conference on P2P, Parallel, Grid, Cloud and Internet Computing (pp. 207–214). IEEE. doi:10.1109/3PGCIC.2010.35 Zamfirache, V., Eftcnoiu, A., Iosif, P., Olteanu, A.C., & Tapus, N. (2013). Extending the moodle course management system for mobile devices. In 2nd International Conference on Systems and Computer Science (pp. 103–108). IEEE. doi:10.1109/IcConSCS.2013.6632031
Sekolah Tinggi Teknologi Nasional (STTNAS) Yogyakarta | 214