SKRIPSI. Pengembangan Aplikasi Content Management System Untuk Mobile Learning Bagi Pengajar Berbasis Java ADITYA PRASETIO

1 SKRIPSI Pengembangan Aplikasi Content Management System Untuk Mobile Learning Bagi Pengajar Berbasis Java ADITYA PRASETIO PROGRAM STUDI TEKNIK INFOR...
Author:  Ratna Salim

211 downloads 266 Views 2MB Size

Recommend Documents

        

course.jsp: <%@ page import="dao.DAO" %>  <%@ page import="dao.DAOMatkul" %>  <%@ page import="entity.AdException" %>  <%@ page import="entity.Matkul" %>  <%@ page import="java.util.Iterator" %>  <%@ page import="java.util.List" %>    <%@ taglib prefix="a" uri="http://jmaki/v1.0/jsp" %>                                Courses          <meta http‐equiv="Content‐Type" content="text/html; charset=UTF‐8" />                                          <%@ include file="header.jsp" %>              <%          try {              List matkuls = new DAOMatkul().list();              Iterator ci = matkuls.iterator();                while (ci.hasNext()) {                  Matkul matkul = (Matkul) ci.next();                  String id = Long.toString(matkul.getMatkul_id());                  Iterator ai = matkul.getMateris().iterator();                  if (ai.hasNext()) {                      out.print("" +                              ""  +  matkul.getMatkul_title()  +  "
");                  }              }              DAO.close();          } catch (AdException e) {              System.out.println(e.getMessage());          }              %>          
          

subject.jsp: <%              String idx = request.getParameter("id");              if ((idx == null) || (idx.equalsIgnoreCase(""))) {%>  <jsp:forward page="index.jsp"/>  <%  }    %>  <%@ page import="dao.DAO" %>  <%@ page import="dao.DAOMateri" %>  <%@ page import="dao.DAOFile" %>  <%@ page import="entity.AdException" %>  <%@ page import="entity.Materi" %>  <%@ page import="entity.Matkul" %>  <%@ page import="entity.File" %>  <%@ page import="java.util.Iterator" %>  <%@ page import="java.util.List" %>  <%@ page import="dao.DAOMatkul" %>  <%@ page import="entity.Matkul" %>  <%@ page import="java.io.*" %>    <%@ taglib prefix="a" uri="http://jmaki/v1.0/jsp" %>                              Subject          <meta http‐equiv="Content‐Type" content="text/html; charset=UTF‐8" />                                                                        
              
                                                         Lectures |                      Courses                  
                  <%              String id = request.getParameter("id");              String Courseid = request.getParameter("Courseid");              try {                  Materi materi = new DAOMateri().get(id);                  out.println("" + materi.getTitle() + "");                  out.print(materi.getContent() + "Attachment(s):");                  Iterator ai = materi.getFiles().iterator();                  while (ai.hasNext()) {                      File files = (File) ai.next(); 

                     if (files.getFile_type().equalsIgnoreCase("2")) {                          out.print("" + "" + files.getFile_path() + "
");                      }                  }                  DAO.close();              } catch (AdException e) {                  System.out.println(e.getMessage());              }                  %>                                               Materi lain dari Dosen ini:                  <%              Matkul matkul = new DAOMatkul().get(Courseid);              Iterator ai = matkul.getMateris().iterator();              while (ai.hasNext()) {                  Materi advert = (Materi) ai.next();                  if (advert.getMateri_id() != Integer.parseInt(id)) {                      out.print("" + "" + advert.getTitle()  + "");                      out.println(" Tutor : " + advert.getUser().getUser_namaDepan() +  "

");                  }              }              DAO.close();%>                                     

UNIVERSITAS ISLAM NEGERI (UIN) SYARIF HIDAYATULLAH JAKARTA Jln. Ir. H. Juanda No. 95 Ciputat 15412 Telp. (021) 7402982, Fax. (021) 7402982, website : www.uinjkt.ac.id, email :

[email protected]

NIM I.

: 105091002893 DATA PRIBADI Nama Tempat Tgl. Lahir Jenis Kelamin Agama Warga Negara Negara Asal Alamat Asal Kode Pos E-mail Telepon/HP Asal sekolah SMA Asal Propinsi SMA Jurusan Alamat Sekolah NEM Email IPK (terakhir)

II.

Foto 3 x 4 : Aditya Prasetio Terbaru : Jakarta, 3 November 1987 : Laki-Laki Pas photo : Islam : Indonesia : Indonesia : Jl. Petogogan I/22 RT 005/05 Gandaria Utara Keb. Baru Jakarta Selatan : 12240 : [email protected] : 081319960703 : MA. Darunnajah : Jakarta : IPA : Jl. Ulujami Raya No. 86 Keb. Lama Jak-Sel : 20.84 : SDA : 2.91

DATA KELUARGA Nama Ayah Pekerjaan Pendidikan Terakhir Nama Ibu Pekerjaan Pendidikan Terakhir Alamat Sekarang Kode Pos Telepon Penghasilan Orang Tua/Wali

: Achmad Soeharto :: STM : Sri Kadariyah :: SMP ::::: Syamsuddin

III.

JENJANG PROGRAM : S1

IV.

STATUS PROGRAM

V.

PILIHAN FAKULTAS/PROGRAM STUDI Fakultas Program Studi

: Reguler

: Fakultas Sains & Teknologi : Teknik Informatika

PENGEMBANGAN APLIKASI CONTENT MANAGEMENT SYSTEM UNTUK MOBILE LEARNING BAGI PENGAJAR BERBASIS JAVA

Aditya Prasetio

Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta Tel : (021) 823026 Fax : (021) 8624025 Email : [email protected] ABSTRAK Selama satu dekade terakhir, dunia pendidikan dan pelatihan sangat dipengaruhi oleh perkembangan teknologi. Fenomena ini akan semakin menguat mengingat teknologi ke depan akan semakin kompleks, powerfull, dan terjangkau secara ekonomi. Sebagai contoh paling populer, internet kini sudah menjadi kebutuhan penting bagi siapa pun yang terlibat dalam aktifitas pendidikan dan pelatihan, baik sebagai media maupun sumber belajar. Pada penelitian sebelumnya setiap aplikasi hanya terbatas pada satu pelajaran saja sehingga pengguna memerlukan aplikasi berbeda pada setiap pelajaran. Disamping itu pengguna harus mengunduh aplikasi tersebut ke handphone mereka, hal ini membuat content menjadi statis. Oleh karena itu, dirasa perlu untuk memngembangkan aplikasi mobile learning yang memiliki content dinamis. Adapun metodologi yang penulis gunakan dalam membuat aplikasi ini adalah menggunakan RAD, yang mempunyai lima tahapan, yaitu Communication, Planning, Modelling, Construction, dan Deployment. Penulis menggunakan bahasa pemrogaman Java, Framework Jmaki untuk AJAX, ORM Hibernate dan database MySQL dalam membuat aplikasi ini. Dengan adanya aplikasi ini maka akan mempermudah pengajar dalam memberikan materi belajar maupun soal latihan tanpa terbatas oleh ruang dan waktu sehingga diharapkan dapat meningkatkan efektifitas dalam belajar. Kata Kunci: Mobile learning, Content Management System, web dinamis, RAD.

1. PENDAHULUAN 1.1. Latar Belakang Pada penelitian sebelumnya setiap aplikasi hanya terbatas pada satu pelajaran saja sehingga pengguna memerlukan aplikasi berbeda pada setiap pelajaran. Disamping itu pengguna harus mendownload aplikasi tersebut ke

handphone mereka, hal ini membuat content menjadi statis. Berdasarkan content yang masih statis, maka penulis mengembangkan sebuah Content Management System untuk mengisi materi, agar content aplikasi dapat disesuaikan dengan kebutuhan dan tidak terbatas dengan satu mata pelajaran saja. Aplikasi yang

penulis kembangkan tidak membatasi pembelajar untuk mengakses content pembelajaran apapun yang ada, dengan demikian pambelajar dapat leluasa mendapatkan materi belajar. Untuk mengakses aplikasi yang penulis kembangkan pengguna cukup menggunakan web browser pada telepon genggam mereka. . 1.2. Rumusan Masalah Masalah yang dapat dirumuskan dalam tugas akhir ini sebagai berikut : 1. Bagaimana mengembangkan sebuah aplikasi Content Management Sistem untuk mobile learning yang diperlukan bagi pengajar. 2. Bagaimana membuat aplikasi web Content Management Sistem untuk mobile learning yang dapat diakses melalui telepon genggam. 1.3. Batasan Masalah Agar pembahasan mengenai topik ini tidak terlalu meluas maka diperlukan batasan masalah. Adapun batasan masalah untuk skripsi ini antara lain: 1. Mobile learning berperan sebagai pendamping untuk sistem belajar yang ada. 2. Pengguna memerlukan handphone memiliki mobile browser untuk mengakses sistem ini. 3. Pengajar memiliki hak untuk menambah isi materi yang sesuai dengan bidang yang diajarnya. 4. File yang diperbolehkan untuk diupload adalah file berformat .doc, .docx, ppt, pptx, xls, xlsx .pdf, .flv, dan MP3. 5. Pembelajar hanya bisa melihat materi yang telah dimasukkan oleh pengajar serta mendownload file. 6. Pembelajar bebas memilih materi

apa saja yang ada pada aplikasi mLearning, tidak terbatas oleh kelas dan semester yang diikutinya. 7. Bagian yang dapat diakses dengan handphone hanya pada frontend, sedangkan bagian beckend diakses dengan komputer atau laptop. 8. M-Learning akan dibangun menggunakan teknologi Java 1.5 dengan IDE Netbeans 6.7.1. 1.4. Tujuan dan Manfaat Penelitian Penelitian yang bertujuan untuk:

penulis

lakukan

1. Tujuan 1. Untuk mempermudah pengajar dalam memberikan materi belajar maupun soal latihan tanpa terbatas oleh ruang dan waktu sehingga diharapkan dapat meningkatkan efektifitas dalam belajar. Manfaat yang di dapatkan dalam penelitian ini adalah : 1. Memberikan independensi waktu dan tempat pada pengguna dalam memberikan materi belajar dan soal latihan kepada pembelajar. 2. Berguna sebagai tambahan dalam belajar bagi pembelajar. 1.5. Metodologi Penelitian Metode Penelitian yang penulis gunakan adalah sebagai berikut : 1. Pengumpulan data a. Wawancara Teknik yang penulis gunakan dalam memperoleh data adalah dengan cara mengajukan pertanyaan-pertanyaan kepada Kepala Pusat Data Teknik

informatika Fakultas Sains dan Teknologi (PUSDATIN FST). b. Studi Pustaka Mengumpulkan data dan informasi dengan cara membaca dan mempelajari buku-buku literatur referensi serta situssitus internet yang berkenaan dengan topik yang dapat dijadikan acuan pembahasan dalam penelitian ini.

1.

Metode Pengembangan Perangkat Lunak (Software Development Method) Metode pengembangan perangkat lunak yang penulis gunakan adalah SDLC (System Development Live Cycle) model linear sequencial yang sering disebut RAD (Rapid Application Development). Tahapannya adalah sebagai berikut : 1 Communication. 2. Planning. 3. Modelling. 4. Construction (Implementation). 5. Deployment

1.6. Sistematika Penelitian Penelitian ini terdiri dari lima bab, dengan penjelasan tiap-tiap bab sebagai berikut : BAB I : PENDAHULUAN Pada bab ini berisi tentang Latar Belakang, Rumusan Masalah, Batasan Masalah, Tujuan dan Manfaat Penelitian, Metodologi Penelitian serta Sistematika Penulisan Penelitian. BAB II: LANDASAN TEORI Pada bab ini menjelaskan tentang teori perangkat keras dan perangkat lunak, definisi sistem, analisa sistem, definisi

perancangan sistem dan jenis program yang digunakan. BAB III: Metodologi Penelitian Pada bab ini akan menguraikan dan memberikan penjelasan mengenai perancangan perangkat lunak, perancangan sistem sehingga dapat diketahui rencana yang akan dikerjakan. BAB IV: Pembahasan dan Implementasi Pada bab ini akan menjelaskan mengenai pembuatan sistem dan pengujian sistem. BAB V: Penutup Bab ini berisi kesimpulan dari pembahasan masalah dan saran-saran berkenaan dengan penelitian ini. 2. LANDASAN TEORI 2.1. Pengembangan Sistem Pengembangan sistem yaitu menyusun sistem yang baru untuk menggantikan sistem yang lama secara keseluruhan atau perbaikan pada sistem yang telah ada dengan harapan bahwa sistem yang baru dapat mengatasi sistem yang lama. (Mcleod, J., 1996). Pengembangan sistem dapat berarti menyusun suatu sistem yang baru untuk menggantikan sistem yang lama secara keseluruhan atau memperbaiki sistem yang telah ada. Dengan telah dikembangkannya sistem yang baru, maka diharapkan akan terjadi peningkatan-peningkatan ini antara lain: 1. Performance (Kinerja), yaitu terjadi peningkatan terhadap kinerja (hasil kerja) sistem yang baru sehingga menjadi lebih efektif.

2. Throughput, yaitu jumlah dari pekerjaan yang dapat dilakukan suatu saat tertentu. 3. Control (pengemdalian), yaitu peningkatan terhadap pengendalian untuk mendeteksi dan memperbaiki kesalahan-kesalahan serta kecurangankecurangan yang akan terjadi. Service (pelayanan), bagaimana peningkatan terhadap pelayanan yang diberikan oleh sistem. 2.2. Mobile Learning (m-Learning) Mobile learning (m-Learning) adalah penggunaan teknologi wireless mobile yang memungkinkan pengaksesan informasi dan meteri belajar kapanpun dan dimanapun. Dengan demikinan, pembelajar memiliki control penuh atas tempat dan waktu untuk belajar. Semua manusia memiliki hak yang sama dalam mengakses informasi dan materi belajar untuk meningkatkan kualitas mereka terlepas dari asal, status, dan budaya mereka (Mohamed. 2009: 1). 2.2.1. Mobile Learning Berbasis Web Mobile learning berbasis web memiliki standard content yang dapat diakses melalui web browser pada mobile devices yang dijelaskan oleh W3C Mobile Web Initiative (MWI) yang merupakan sebuah kolaborasi industri dan teknologi yang bertujuan untuk meningkatkan produksi content web dan akses untuk pengguna mobile (Low.2007:20). Mobile Web Best Practices 1.0 (W3C 2006a) adalah spesifikasi standard dan contoh praktek dari mobile webbased content (Low.2007:20). Berikut adalah garis besar

rekomendasi yang dikeluarkan oleh W3C (W3C 2006a). Dibawah rekomendasi dari Default Delivery Context, content untuk mobile web bisa saja melebihi rekomendasi ini jika content dirancang untuk diakses oleh perangkat yang berspesifikasi tinggi (Low.2007:21). 2.3. Content (CMS)

Management

System

Content Management System (CMS) adalah sebuah aplikasi berbasis web yang memiliki system sedemikian rupa hingga memberikan kemudahan kepada para pengguna sekaligus juga pengelolanya (Rachdian, 2005:4). Content Management System (CMS) memiliki serangkaian prosedur yang digunakan untuk mengatur alur kerja. Prosedurprosedur ini dapat bersifat manual maupun berbasis compute. Prosedur-prosedur ini didesain untuk: 1. Memungkinkan sejumlah untuk berkontribusi memasukkan data.

orang dan

2. Mengontrol akses dengan perannya.

sesuai

data,

3. Memudahkan penyimpanan penerimaan data.

dan

Pada sebuah CMS, content yang diatur bersifat industri spesifik. Sebagai contoh, content multimedia akan berbeda dengan desain dokumen untuk pesawat jet. Banyak terminologi yang mengaturnya. Beberapa contoh yang umum digunakannya CMS antara lain Web Content

Management, Digital Asset Management, Digital Records Management, Electronic Content Management, dan Mobile Content Management, Learning Management System. 2.3.1. Learning Management System (LMS) Learning Management System adalah system manajemen pembelajaran berbasis web yang memungkinkan pengajar untuk mengakses dan mendistribusikan materi belajar. Sistem ini juga memungkinkan murid untuk melakukan aktifitas belajar seperti mengakses konten dan materi yang dibuat oleh pengajar (Niazi, 2008: 3). Dengan learning management system, pengajar yang berperan sebagai pengelola konten belajar dapat membuat, dan mempublikasikan materi belajar kepada siswa-siswanya. 2.4. JAVA Java ditemukan oleh James Gosling, Patrick Naughton, Chris Warth, Ed Frank, dan Mike Sheridan dibawah Sun Microsystem, Inc pada 1991. Membutuhkan 18 bulan untuk mengembangkan versi pertamanya. Bahasa pemrograman ini awalnya diberi nama Oak tapi kemudian diganti Java pada 1995. Diantara implementasi awal dari Oak pada 1992 dan berganti nama menjadi Java pada 1995, banyak orang yang berkontribusi dalam desain dan evolusinya. Bill Joy, Arthur van Hoff, Jonathan Payne, Frank Yellin, dan Tim Lindholm adalah

kontributor kunci dalam proses pendewasaan dari prototype awal (Naughton, Patrick. 1999: 10). Java sendiri memiliki beberapa edisi untuk berbagai keperluan pengembang perangkat lunak yaitu J2SE, J2EE, J2ME, dan yang terakhir adalah JavaFX. Sebuah profile memberikan library tambahan untuk suatu kelas tertentu pada sebuah perangkat. profileprofile menyediakan user interface (UI) API, persistence, messaging library, dan sebagainya. 2.5. Hibernate 3 Bauer dan King (2005:2) menjelaskan Hibernate adalah framework yang memediasi interaksi aplikasi dengan database, dengan demikian developer dapat berkonsentrasi pada komponen logika bisnis. Dengan hibernate pengembang tidak perlu mengikuti semua aturan dan disain hibernate ketika membuat logika bisnis dan kelas-kelas. Hibernate tidak saja melakukan pemetaan kelas Java ke tabel database, tapi juga menyediakan fasilitas untuk query dan data retrieval dan secara signifikan mempersingkat waktu pengembangan dibandingkan dengan data handling secara manual pada SQL dan JDBC. Tujuan Hibernate adalah untuk membebas tugaskan pengembang dari tugas-tugas persisten data (Bauer. 2003:1).

2.6. Framework jMaki jMaki adalah framework ringan untuk membuat aplikasi Web centric 2.0 menggunakan tata letak CSS, widget-widget model, penangan JavaScript, dan proxy generik untuk berinteraksi dengan web eksternal RESTful web services. jMaki mengabstraksi JavaScript dan CSS dengan menyediakan widget default, widget JavaScript dan CSS yang dibuat mudah diakses sehingga bisa dikustomisasi oleh perancang. jMaki berfokus pada aspek memberikan JavaScript untuk memungkinkan klien untuk berkomunikasi dengan berbagai teknologi server-termasuk PHP, Java (JSP / JSF), dan Phobos dalam teknologi-server cara netral. 2.7. Database MySql 5.1.30 MySQL merupakan Open Source SQL database yang paling popular, MYSQL dibuat oleh MySQL AB. MySQL AB adalah sebuah perusahaan komersil yang menyediakan servis seputar database MySQL (MySQL Reference Manual. MySQL AB , 2001, pp.2). MySQL merupakan sebuah relational database management system, yang menyimpan data pada tabel yang terpisah, hal ini dapat meningkatkan kecepatan dan fleksibilitas. Tabel-tabel tersebut kemudian dihubungkan melalui relasi-relasi tertentu sehingga memungkinkan untuk mengkombinasikan data dari berbagai tabel sesuai dengan permintaan, melalui SQL yang telah menjadi bahasa standar yang umum untuk mengakses database.

2.8. Sekilas tentang NetBeans 6.7.1 NetBeans IDE adalah sebuah integrated development environment (IDE) untuk menulis, mengcompile, testing, dan debugging aplikasi untuk platform Java maupun bahasa pemrograman lain. Netbeans IDE memiliki text editor, perangkat disain visual, source code management, integrasi dengan database, integrasi dengan server, dan lain-lain. 2.9. Unit Testing Unit testing berfokus pada verifikasi di unit terkecil dari disain perangkat lunak. Menggunakan disain component-level sebagai penunjuk, control path yang penting akan dites untuk mendapatkan error di dalam batas modul. Kompleksitas dari pengujian tergantung pada batas yang ada untuk unit testing. Unit test berorientasi pada white-box testing, dan langkahnya dapat dijalankan secara parallel pada komponen yang berlainan. (Pressman, 2002:485). Ketika pemrograman object oriented digunakan, maka konsep dari unit berubah. Setiap class dan objek memiliki data dan operasi (methods) yang memanipulasi data-data ini. Unit testing tidak lagi dilakukan pada modulmodul terpisah, tetapi dilakukan pada class atau objek. Hal ini dikarenakan sebuah kelas bisa memiliki sejumlah operasi berbeda dan beberapa operasi tersebut dapat berada pada kelas-kelas yang berbeda, artinya unit testing berubah secara dramatis (Pressman, 2002:664). Kita tidak dapat lagi melakukan test pada satu operasi secara terpisah melainkan dilakukan sebagai bagian dari kelas. Berikut adalah ilustrasinya, sebuah superclass yang memiliki

operasi X yang diturunkan pada sejumlah subclasses. Maka setiap subclasses akan menurunkan operasi X . Dikarenakan operasi X tersebut digunakan oleh beberapa kelas, maka Unit test pada operasi X harus dilakukan pada subclasses. 2.10. System Testing System testing adalah serangkaian test yang bertujuan untuk menguji system secara keseluruhan. Meskipun setiap test memiliki tujuan yang berbeda, namun seluruh tahapan dilakukan dengan terintegrasi (Pressman, 2002:525). Berikut ini adalah serangkaian test yang termasuk dalam system testing. 2.11. Disain Antar Muka Antar muka pada aplikasi berbasis web adalah kesan pertama. Terlepas dari isi, kepuasan pelayanan, dan keseluruhan keuntungan dari aplikasi tersebut, disain yang kurang baik akan membuat User meninggalkan web tersebut (Pressman, 2005:813). Pressman menyebutkan ada beberapa faktor yang harus diperhatikan dalam mendisain website: a. Menu navigasi harus konsisten dan harus tersedia di setiap halaman yang bisa diakses oleh User b. Menu navigasi harus terlihat jelas oleh User. User tidak perlu mencari link untuk menuju ke halaman yang mereka kehendaki. Keindahan hendaknya tidak menggantikan fungsionalitas. Contoh, tombol yang sederhana lebih baik daripada tombol dengan gambar atau icon yang maksudnya tidak jelas.

2.12. Rapid Applications Development (RAD) Model RAD adalah sebuah metode pengembangan sistem yang menggunakan perencanaan minimal dan mengutamakan kecepatan. Tahap perencanaan dalam RAD berada pada fase panulisan kode software itu sendiri. Pengurangan porsi perencanaan secara umum membuat penulisan kode program lebih cepat, dan mudah beradaptasi pada perubahan (Pressman, 2005:82). 3. METODOLOGI PENELITIAN 3.1. Metode Pengumpulan Data 3.1.1 Wawancara Penulis menggunakan teknik wawancara langsung, yaitu dengan cara mengajukan pertanyaan-pertanyaan langsung kepada Kepala Pusat Data Teknik informatika Fakultas Sains dan Teknologi (PUSDATIN FST) dalam hal kebutuhan akan aplikasi yang penulis buat. 3.1.2 Studi Pustaka a) Membaca dan mempelajari buku-buku atau dokumendokumen. Dokumen atau buku yang termasuk didalamnya yaitu buku-buku, artikel, dan jurnal yang berhubungan dengan dan Dokumen m-learning. dokumen tersebut bisa bersifat hardcopy ataupu softcopy yang bersumber dari internet. Dapat dilihat di daftar pustaka. b) Dokumen- dokumen yang telah dikumpulkan kemudian dipilih dan dihimpun berdasarkan tujuan dan fokus penelitian. Dapat dilihat di daftar pustaka.

c) Dokumen-dokumen yang telah dipilih dan himpun kemudian diurutkan sesuai dengan urutan kronologis, kekuatan, dan kesesuaian. Dapat dilihat di daftar pustaka. d) Dilakukan analisis untuk mendapatkan suatu pemahaman mengenai konsep perancangan web aplikasi untuk mengakomodir m-learning. Dapat dilihat di daftar pustaka. 3.1.3

Studi Sejenis Dalam hal ini, penulis membaca dan memahami literatur ilmiah yang sejenis dengan penulis.

3.2. Alat dan Bahan Adapun peralatan yang digunakan dibagi dua, yaitu : 1. Perangkat Keras a. CPU (Central Processing Unit) CPU merupakan pusat pengolahan dan juga pusat pengontrolan dari sebuah sistem komputer yang saling melaksanakan kegiatan. Spesifikasi yang penulis gunakan adalah sebagai berikut: 1) Processor intel core i3 2.13 Ghz 2) Harddisk 320 GB 3) DDR RAM 1,7 GB 4) VGA on board Intel Graphics media accelerator b. Keyboard Keyboard adalah alat input yang biasanya didampingi dengan alat tampilan (display) di layar monitor yang menampilkan apa yang ditekan di keyboard. c. Mouse

Mouse adalah alat input komputer yang digunakan oleh berbagai program aplikasi GUI (Graphical User Interface) dengan petunjuk posisi yang ditampilkan melalui monitor. 2. Perangkat Lunak a) Sistem Operasi Sistem operasi yang penulis sarankan adalah Microsoft Windows XP SP2. b) Program aplikasi Merupakan perangkat lunak yang akan digunakan dalam pembuatan program adalah server Apache Tomcat 5.5.17, J2SE 1.5, NetBeans IDE 6.7.1, MySql 5. 3.3. Metode Pengembangan Sistem a. Communication Pada tahap ini, penulis melakukan analisis untuk mengetahui permasalahan yang terjadi, sehingga dapat diketahui informasi yang harus diakomodasi oleh aplikasi yang akan dibuat. b. Planning Pada tahap ini, penulis melakukan perencanaan yaitu dengan membuat timeline. c. Modelling Yang penulis lakukan pada tahap ini adalah sebagai berikut 1. Membuat Use Case Diagram 2. Membuat Entity Relational Diagram 3. Membuat Kamus data. 4. Merancang Antar Muka aplikasi. d. Construction Diketahui juga sebagai tahap pembuatan atau pembangunan. Pada tahap ini dilakukan : a. Implementasi antar muka.

b. Unit Testing. c. System testing. 4. PEMBAHASAN 4.1. Communication Pada tahap ini, penulis melakukan analisis untuk mengetahui permasalahan yang terjadi, sehingga dapat diketahui informasi yang harus diakomodasi oleh aplikasi yang akan dibuat. Secara rinci yang penulis lakukan pada tahap analisis kebutuhan adalah : 1. Analisis Kebutuhan User. 2. Alat dan Bahan. 4.2. Planning Pada tahap ini, penulis melakukan perencanaan yaitu dengan membuat timeline untuk memudahkan dan mengarahkan penulis dalam melakukan pembuatan sistem. 4.3. Modelling Pada tahap ini, penulis melakukan pemodelan informasi, interface yang akan dipergunakan, dan data yang diperlukan selama penggunaan aplikasi. Secara rinci, yang penulis lakukan pada tahap ini adalah sebagai berikut 1. Membuat Use Case Diagram 2. Membuat Entity Relational Diagram 3. Membuat Kamus data. 4. Merancang Antar Muka aplikasi. 4.4. Construction Diketahui juga sebagai tahap pembuatan atau pembangunan. Pada tahap ini dilakukan : a. Implementasi antar muka. b. Unit Testing. Unit Testing adalah proses eksekusi program yang bertujuan untuk menemukan error. Unit

Testing yang dilakukan pada tugas akhir ini dengan menggunakan JUnit. c. System testing. a. Recovery Testing Pada tahap ini Penulis membuat beberapa keadaan yang memaksa aplikasi gagal beroperasi. Hal ini dilakukan untuk memastikan proses pemulihan berjalan dengan baik. b. Security Testing Penulis melakukan Security Testing menggunakan HP Scrawler 1.0. Software ini melakukan crawl pada aplikasi yang penulis kembangkan dan secara simultan melakukan analisa untuk kemungkinan serangan SQLInjection pada setiap halaman. c. Stress Testing Pada tahap ini Penulis menggunakan WAPT 6.0. Penulis membebankan aplikasi menggunakan 500 looping pada satu waktu yang sama untuk menguji kemampuan system ketika berada mendapat beban berat. d. Performance Testing Pada tahap ini Penulis menggunakan software WAPT. Penulis melakukan testing yang sama dengan tahap Stress Testing, tetapi kali ini penulis menggunakan 20 looping pada 20 User untuk melihat performa aplikasi dalam keadaan normal.

5. KESIMPULAN 5.1. Kesimpulan Setelah melakukan pengetesan terhadap aplikasi yang telah dibuat dan menyelesaikan penelitian ini. Dapat ditarik kesimpulan sebagai berikut: 1. Dengan mengembangkan aplikasi mobile learning berbasis web, pengguna tidak memerlukan aplikasi khusus untuk menggunakan aplikasi ini. 2. Berdasarkan pengujian yang dilakukan oleh pengguna, dengan adanya fasilitas-fasilitas untuk mengupdate content, aplikasi memiliki content yang dinamis karena content dapat diisi sesuai dengan kebutuhan pengajar. 3. Berdasarkan pengujian yang dilakukan oleh penulis, aplikasi mobile learning ini dapat berjalan sesuai dengan tujuan, analisis, dan desain yang telah dirancang, sehingga aplikasi ini dapat membantu pembelajar dalam aktifitas belajar.. 5.2. Saran Berikut ini beberapa saran yang mungkin berguna untuk digunakan sebagai bahan pertimbangan yang ingin melakukan penelitian atau aplikasi yang hampir sama, 1. Disarankan adanya media player untuk file multimedia sehingga dapat dibuka dengan cara streaming. 2. Aplikasi ini belum dapat menyimpan hasil yang didapat mahasiswa setelah mengerjakan soal. Disarankan adanya penyimpanan nilai bagi mahasiswa yang telah mengerjakan soal-soal.

Daftar Pustaka Ally , Mohamed. 2009. Mobile Learning Transforming the Delivery of Education and Training. Edmonton: AU Press. Bauer , Christian And King , Gavin. 2005. Java Persistence with Hibernate. New York: Manning Basaeed, Essa and Berri, Jawad.2007. Learner-Centric Context-Aware Mobile Learning. Jogiyanto, H.M. 2008. Metodologi Penelitian Sistem Informasi. Yogyakarta: Andi Offset. Kineo and UFI. 2009. Mobile Learning Reviewed. UK Low , Leonard.2007. M-learning standards report. Canberra MySQL Reference Manual. 2001. MySQL AB Naik, Kshirasagar And Tripathy, Priyadarshi. 2008. Software Testing And Quality Assurance Theory and Practice. New Jersey: A johnwiley & sons, inc., publication. Naughton , Patrick and Schildt, Herbert . 2001. Java 2: The Reference. Complete California:Osborne/McGraw-Hill Niazi , Razieh and Qusay H. Mahmoud. 2008. Design and Development of a DeviceIndependent System for Mobile

Learning. IEEE Education Society Students Activities Committee Pressman, Roger S. 2001. Software Engineering: A Practitioner's Approach. New York: McGrawHill. 2005. Software Engineering: A Practitioner’s Approach. New York: Mc-Graw Hill. Rachdian , Adhi. 2005 Mastering CMS dengan Mambo/ Joomla. Jakarta: PT. Elex Media Komputindo. Stieglitz , Stefan and Fuchß, Christoph.2007. Mobile Learning by Using Ad Hoc Messaging Network.

APPLICATION DEVELOPMENT CONTENT MANAGEMENT SYSTEM FOR MOBILE LEARNING FOR JAVA-BASED Teachers Aditya Prasetio Faculty of Science and Technology State Islamic University Syarif Hidayatullah Jakarta Tel : (021) 823026 Fax : (021) 8624025 Email : [email protected] ABSTRACT Over the last decade, the education and training is strongly influenced by developments in technology. This phenomenon will become stronger given the technology in the future will be more complex, powerful, and economically affordable. The most popular example, the Internet has now become an important requirement for anyone involved in education and training activities, both as media and learning resources. In a previous study of each application is limited to just one lesson so that the user requires a different application on each lesson. Besides, users must download the applications to their mobile phone, it makes the content into static. Therefore, it is necessary to develope mobile learning applications that have dynamic content. The methodology that I use in making this application is the RAD, which has five stages, namely Communication, Planning, Modeling, Construction, and Deployment. The author uses the Java programming language, JMaki Framework for AJAX, Hibernate ORM and MySQL database in making this application. With this application it will be easier for teachers in providing learning materials and practice questions without limited by space and time so it is expected to increase effectiveness in learning. Keywords: Mobile Learning, Content Management System, dynamic web, RAD.

1. INTRODUCTION 1.1 Background In a previous study of each application is limited to just one lesson so that the user requires a different application on each

lesson. Besides, users must download the applications to their mobile phone, it makes the content into static. Based on the content was static, the authors developed a Content

Management System to fill material, so content can be tailored to the needs of the application and not limited to one subject only. Applications that do not restrict the authors develop the learners to access any existing learning content, thus pambelajar can freely obtain learning materials. To access the authors developed an application that users can simply use a web browser on their mobile phone. 1.2 Problem Formulation Problems that can be formulated in this thesis as follows: 1. How to develop an application Content Management System for mobile learning is necessary for teachers. 2. How to create a web application Content Management System for mobile learning which can be accessed via mobile phones. 1.3 Limitation Problem In order for the discussion of this topic is not too widespread it is necessary to limit the problem. The boundary problem for this thesis include: 1. Mobile learning acts as a companion to existing learning systems. 2. Users need a mobile phone has a mobile browser to access this system. 3. Teachers have the right to increase the content of the material in accordance with the field that was teaching. 4. Files that are allowed to be uploaded is the file format. Doc,. Docx, ppt, pptx, xls, xlsx. Pdf,. Flv, and MP3.

5. Learners can only see material that has been entered by the teacher for and download files. 6. Learners are free to choose whatever materials are on mLearning applications, not limited by class and the semester that followed. 7. The part that can be accessed by mobile phone only on the frontend, while the beckend accessed by a computer or laptop. 8. M-Learning will be built using Java 1.5 with NetBeans IDE 6.7.1. 1.4 Objectives and Benefits Research Research Methodology Research conducted by the author aims to: 1.Goal To facilitate teachers in providing learning materials and practice questions without limited by space and time so it is expected to increase effectiveness in learning. The benefit is in getting in this study are: 1. Giving independence to the user's time and place in providing learning materials and practice questions to the learner. 2. Useful as an extra in learning for the learner. 1.5 Systematics Research Research Methods I use are as follows: 1. Data collection a. Interview The technique I use in obtaining data is by asking questions to the Head of Data Engineering Informatics Faculty of Science and

Technology (FST PUSDATIN). b. Library Studies Collecting data and information by reading and studying literature, reference books and Internet sites related to topics that can be used as reference for discussion in this study. 1. Software Development Methods (Software Development Method) software development method which writer use is SDLC (System Development Live Cycle) sequencial linear model is often called RAD (Rapid Application Development). Stages are as follows: 1 Communication. 2. Planning. 3. Modelling. 4. Construction (Implementation). 5. Deployment. 1.6 Systematics Research This study consists of five chapters, with explanations of each chapter as follows: CHAPTER I: INTRODUCTION This chapter contains the Background, Problem Formulation, Limitation of Issues, Objectives and Benefits of Research, Research Methodology and Writing Systematic Research. CHAPTER II: THEORY BASIS This chapter describes the theory of hardware and software, system definition, system analysis, system design definition and type of program used. CHAPTER III: Research Methodology

In this chapter will describe and give an explanation about software design, system design so that it can be seen that the plan will be undertaken. CHAPTER IV: Discussion and Implementation In this chapter will explain about the making of the system and test system. CHAPTER V: Conclusion This chapter contains the conclusion of the discussion of problems and suggestions regarding this research. 2. BASIS THEORY 2.1 System Development Development of the system is compiling a new system to replace the old system as a whole or repairs on existing systems in the hope that the new system can overcome the old system. (McLeod, J., 1996). Development means the system can compile a new system to replace the old system as a whole or improve existing systems. With it has developed a new system, it is expected that there will be improvements include: 1.Performance (Performance), which is an increase on performance (the work) a new system to become more effective. 2. Throughput, ie the number of jobs that can be done a certain time. 3. Control , namely the increase of controls to detect and correct these mistakes and fraud that will occur. Service (service), how the improvement of services provided by the system.

2.2 Mobile Learning (m-Learning) Mobile learning (m-Learning) is the use of mobile wireless technology that allows access to information and learning materials anytime, anywhere. Thus, learners have full control over the place and time to learn. All human beings have equal rights in accessing information and learning materials to improve their quality regardless of origin, status, and their culture (Mohamed. 2009: 1). 1. Web-Based Mobile Learning Mobile learning has a standard web-based content that can be accessed through a web browser on mobile devices described by the W3C Mobile Web Initiative (MWI), which is a collaboration of industry and technology that aims to enhance web content production and access for mobile users (Low.2007: 20). Mobile Web Best Practices 1.0 (W3C 2006a) is a standard specification and practice examples of web-based content (Low.2007: 20). Here is an outline of the recommendations issued by the W3C (W3C 2006a). Under the recommendation of the Default Delivery Context, content for the mobile web could have exceeded this recommendation if the content is designed to be accessed by the device high specification (Low.2007: 21). 2.3 Content Management System (CMS) Content Management System (CMS) is a web-based application

that has a system in such a way as to provide convenience to the users as well as managers (Rachdian, 2005:4). Content Management System (CMS) has a series of procedures used to manage workflow. These procedures can be either manually or based compute. These procedures are designed to: 1. Allows a number of people to contribute and enter data. 2. Controlling access to data, in accordance with its role. 3. Facilitate storage and receiving data. In a CMS, content is subject to specific industries. For example, multimedia content will vary with the design documents for the plane jet. Many terms that govern them. Some common examples include the use of CMS Web Content Management, Digital Asset Management, Digital Records Management, Electronic Content Management, and Mobile Content Management, Learning Management System. 1. Learning Management System (LMS). Learning Management System is a web-based learning management system that allows teachers to access and distribute learning materials. This system also allows students to perform learning activities such as accessing content and material created by teachers (Niazi, 2008: 3). With the learning management system, teachers who act as managers of learning content to

create, and publish learning materials to students. 2.4 JAVA Java invented by James Gosling, Patrick Naughton, Chris Warth, Ed Frank, and Mike Sheridan under Sun Microsystems, Inc. in 1991. Require 18 months to develop the first version. Programming language was originally named Oak Java but later replaced in 1995. Among the initial implementation of Oak in 1992 and changed its name to Java in 1995, many people who contributed in the design and evolution. Bill Joy, Arthur van Hoff, Jonathan Payne, Frank Yellin, and Tim Lindholm were key contributors in the process of maturation of the initial prototype (Naughton, Patrick. 1999: 10). Java itself has several editions for different purposes ie software developers J2SE, J2EE, J2ME, and the last is JavaFX. A profile provides additional libraries for a particular class on a device. profile-profile provides a user interface (UI) API, persistence, messaging libraries, and so forth. 2.5 Hibernate 3 Bauer and King (2005:2) describes Hibernate is a framework that mediates interactions with the database application, so developers can concentrate on business logic components. With hibernate developer does not need to follow all the rules and design of hibernate when creating the business logic and classes.

Hibernate not only to map Java classes to database tables, but also provides the facility to query and data retrieval and significantly shorten development time compared with manual data handling in SQL and JDBC. Hibernate goal is to free developers from assigned duties persistent data (Bauer. 2003:1). 2.6 JMaki Framework jMaki is a lightweight framework for creating Web applications centric 2.0 uses CSS layout, widget-widget model, JavaScript handlers, and generic proxy to interact with external RESTful web services web. jMaki abstracts JavaScript and CSS to provide default widget, widget JavaScript and CSS are made easily accessible so that it can be customized by the designer. jMaki focuses on the aspect of giving JavaScript to enable clients to communicate with various server-technologies including PHP, Java (JSP / JSF), and Phobos in server-technology neutral way. 2.7 Database MySql 5.1.30 MySQL Open Source SQL database is the most popular, MYSQL made by MySQL AB. MySQL AB is a commercial company that provides services around the MySQL database (MySQL Reference Manual. MySQL AB, 2001, pp.2). MySQL is a relational database management system, which stores data in separate tables, this can increase the speed and flexibility. The tables are then connected via certain relations making it possible

to combine data from multiple tables in accordance with the request, via SQL which has become a common standard language for accessing databases. 2.8 Overview of NetBeans 6.7.1 NetBeans IDE is an integrated development environment (IDE) for writing, compiling, testing, and debugging applications for the Java platform as well as other programming languages. Netbeans IDE has a text editor, visual design tools, source code management, integration with databases, integration with the server, and others. 2.9 Unit Testing Unit testing focuses on verifying the smallest unit of software design. Using component-level design as a bookmark, an important control paths will be tested to get an error in the module boundary. The complexity of testing depends on the existing boundary for unit testing. Oriented unit tests on white-box testing, and steps can be run in parallel on different components. (Pressman, 2002:485). When the object-oriented programming is used, then the concept of the unit changed. Each class and object has its data and operations (methods) that manipulate this data. Unit testing is no longer done in separate modules, but done in class or object. This is because a class can have a number of different operations and some operations may be in different classes, meaning changed dramatically unit testing (Pressman, 2002:664).

We can no longer perform tests on a single operation carried out separately but as part of the class. Here is the illustration, a superclass that have derived X operating on a number of subclasses. Then any subclasses will lose X operation. Due to the operation of X were used by several classes, then the test unit in operation should be performed on the X subclasses. 2.10 System Testing System testing is a series of tests aimed to test the system as a whole. Although each test has different goals, but all done with an integrated phase (Pressman, 2002:525). Here is a series of tests that are included in the testing system. 2.11 Interface Design Interface on a web-based application is the first impression. Regardless of content, service satisfaction, and overall benefits of the application, which is not good design will make users leave the web (Pressman, 2005:813). Pressman said there are several factors that should be considered in designing the website: a. Menu navigation should be consistent and should be available on every page that can be accessed by users. b. The navigation menu should be clearly visible to users. Users do not need to find a link to go to the page they want. The beauty should not replace the functionality. For example, a simple button better than the button with a picture or icon that means it is not clear.

2.12 Rapid Applications Development (RAD) The RAD Model is a system development method that uses minimal planning and prioritizing speed. The planning phase in RAD is in the phase of writing software code itself. Reducing the portion of the general plan to make writing code more quickly, and easily adapt to change (Pressman, 2005:82). 3. RESEARCH METHODOLOGY 3.1 Data Collection Method 3.1.1 Interviews The author uses the direct interview technique, that is by asking questions directly to the Head of Data Engineering Informatics Faculty of Science and Technology (PUSDATIN FST) in terms of the need for applications that writers make. 3.1.2 Literature Study a) Read and study the books or documents. Document or book that includes books, articles and journals that relate to and mlearning. The document - the document can be hardcopy ataupu softcopy sourced from the internet. Can be seen in the bibliography. b) Documents which have been collected are then selected and compiled based on the purpose and focus of research. Can be seen in the bibliography. c) The documents that have been selected and gather then sorted according to chronological order, strength, and suitability. Can be seen in the bibliography.

d) Analysis to gain an understanding of the concept of designing a web application to accommodate the m-learning. Can be seen in the bibliography.

3.1.3 Related Studies In this case, the authors read and understand the scientific literature that is similar to the author. 3.2 Tools and Materials The equipment used was divided in two, namely: 1. Hardware a. CPU (Central Processing Unit) CPU is the central processing and control center of a computer system that conducts each other. Specification that I use are as follows: 1) Processor Intel core I3 2.13 Ghz. 2) Hard Drive 320 GB 3) 1.7 GB DDR RAM 4) VGA on board Intel Graphics media accelerator b. Keyboard The keyboard is an input device that is usually accompanied by the display device (display) on a monitor that displays what is pressed on the keyboard. c. Mouse Mouse is the computer input devices used by any software application GUI (Graphical User Interface) with instructions displayed on the monitor position.

2. Software a) Operating System The operating system that the authors suggest, is Microsoft Windows XP SP2. b) The application program Is a software that will be used in making program is the server Apache Tomcat 5.5.17, J2SE 1.5, NetBeans IDE 6.7.1, MySql 5.

3.3 Systems Development Method a. Communication At this stage, the authors analyzed to determine the problems that occur, so that can know the information that must be accommodated by the application to be made. b. Planning At this stage, the authors do plan is to create a timeline. c. Modelling Which writers do at this stage are as follows 1. Creating Use Case Diagrams 2. Creating Entity Relational Diagram 3. Creating a data dictionary. 4. Designing an application interface. d. Construction Known also as a stage of manufacture or construction. In this stage: a. Implementation of the interface. b. Unit Testing. c. System testing.

4. DISCUSSION 4.1 Communication At this stage, the authors analyzed to determine the problems that occur, so that can know the information that must be accommodated by the application to be made. In detail, the authors do on stage is a needs analysis: 1. User Needs Analysis. 2. Equipment and Materials. 4.2 Planning At this stage, the authors do plan is to create a timeline to facilitate and lead author in conducting the manufacture of the system. 4.3 Modelling At this stage, the author of information modeling, an interface that will be used, and the data required for application usage. In detail, the authors do at this stage are as follows 1. Creating Use Case Diagrams 2. Creating Entity Relational Diagram 3. Creating a data dictionary. 4. Designing an application interface. 4.4 Construction Known also as a stage of manufacture or construction. In this stage: a. Implementation of the interface. b. Unit Testing. Unit Testing is the process of execution of the program that aims to find errors. Unit Testing is done on this thesis by using JUnit. c. System testing. a. Recovery Testing At this stage the author makes some circumstances that force the

application fails to operate. This is done to ensure the recovery process goes well. b. Security Testing The authors perform Security Testing using HP Scrawler 1.0. This software do the crawl on the application that the author developed and simultaneously analyzed for a possible attack SQLInjection on every page. c. Stress Testing At this stage I use WAPT 6.0. Writer charged with 500 loop applications at one time the same to test the ability of the system when they are getting a heavy load. d. Performance Testing At this stage the author uses the software WAPT. The authors do the same testing with stress testing phase, but this time the author uses 20 loops on 20 User to view the performance of applications under normal circumstances. 5. CONCLUSION 5.1.Conclusion After testing of applications that have been made and completed the study. It can be deduced as follows: 1. By developing a web-based learning mobile applications, users do not need a special application to use this application. 2. Based on testing performed by the user, given the facilities to update the content, the application has dynamic content because the content can be filled in accordance with the needs of teachers.

3. Based on testing performed by the author, mobile learning applications can be run in accordance with the objectives, analysis, and design that have been designed, so this application can help learners in learning activities. 5.2. Suggestion Here are some suggestions that may be useful to use as material considerations that would like to do research or similar application, 1. It is suggested the existence of a media player for multimedia files that can be opened with the way streaming. 2. This application has not been able to save the results obtained after the students do the problems. It is recommended the storage of value for students who have been working on the questions. Bibliography Ally, Mohamed. 2009. Mobile Learning is Transforming the Delivery of Education and Training. Edmonton: AU Press. Bauer, Christian And King, Gavin. 2005. Java Persistence with Hibernate. New York: Manning Basaeed, Essa and Berri, Jawad.2007. Learner-Centric Context-Aware Mobile Learning. Jogiyanto, H.M. 2008. Research Methods in Information Systems. Yogyakarta: Andi

Offset. Kineo and UFI. 2009. Mobile Learning reviewed. UK Low, Leonard.2007. M-learning standards report. Canberra MySQL Reference Manual. 2001. MySQL AB Naik, Kshirasagar And Tripathy, Priyadarshi. 2008. Software Testing And Quality Assurance Theory and Practice. New Jersey: A johnwiley & sons, inc., Publication. Naughton, Patrick and Schildt, Herbert. 2001. Java 2: The Complete Reference. California: Osborne / McGraw-Hill Niazi, Razieh and Qusay H. Mahmoud. 2008. Design and Development of a Device-Independent System for Mobile Learning. IEEE Education Society Students Activities Committee Pressman, Roger S. 2001. Software Engineering: A Practitioner's Approach. New York: McGraw-Hill. 2005. Software Engineering: A Practitioner's Approach. New York: Mc-Graw Hill. Rachdian, Adhi. 2005 Mastering the CMS with Mambo / Joomla. Jakarta: PT. Elex Media Komputindo. Stieglitz, Stefan and Fuchß, Christoph.2007. Learning by Using Mobile Messaging Ad Hoc Network.