PERANCANGAN DAN PEMBUATAN MOBILE LEARNING INTERAKTIF  BERBASIS ANDROID DENGAN METODE PERSONAL EXTREME PROGRAMMING
Hidayat Rizal 1 , Satriyo Adhy 2 , Panji Wisnu Wirawan 3
Jurusan Ilmu Komputer/ Informatika Universitas Diponegoro Email : rivaldayat@gmail.com 1 , satriyo@undip.ac.id 2 , maspanji@undip.ac.id 3

## ABSTRACT
Mobile Learning ( M - Learning ) is the learning by using mobile devices, regardless of time and place. M-Learning  has  the  constraint  that  M-Learning  users  must  connect  to  the  internet  to  be  able  to  get  the learning content . With the Android device, that could be implanted a native application inside, allowing the M - Learning content stored on the device . This study examines how the native application can be developed  with  Personal  Extreme  Programming  method.  In  addition  ,  this  study  reinforces  previous research that E-Learning can be expanded ability to be M-Learning. As an outcome of this study is a M- Learning application that utilizes E-Learning that has existed , in which M - Learning applications that have some capability of E - Learning that capture and store content on mobile devices , so that the content is not required to access the internet connection .
Keywords : M-Learning, Android, Personal Extreme Programming
1. PENDAHULUAN
Teknologi  perangkat  bergerak  yang  sudah sedemikian  cepat  perkembangannya  dapat dimanfaatkan dalam berbagai bidang kehidupan, salah  satu  contohnya  adalah  pada  bidang pendidikan.  Penggunaan  perangkat  bergerak dalam aktivitas pembelajaran disebut dengan M- Learning. M-Learning dianggap sebagai suplemen  untuk  E-Learning  tradisional  dimana mobilitas  adalah  nilai  tambah  bagi  para  peserta didik.  Data  kursus  atau  perkuliahan  dapat dimanfaatkan  sehingga  tidak  perlu  membuat sistem M-Learning terpisah dari E-Learning[8].
Berdasar latar belakang tersebut, permasalahan yang timbul adalah kebutuhan apa saja  yang  sesuai  untuk  diterapkan  pada pengembangan M-Learning serta bagaimana data pada  E-Learning    dapat  terintegrasi  dengan  baik sesuai  dengan request dari client M-Learning. Penelitian  ini  bertujuan  untuk  merancang  dan membuat  aplikasi client M-Learning  berbasis Android  dengan  metode  Personal  Extreme Programming. Aplikasi client diimplementasikan dengan native  application berbasis  Android karena  Android  menjadi platform dengan pengguna  terbanyak  dari  2009  hingga  2012[3]. Selain itu adanya kemampuan penyimpanan data serta  fitur  yang  interaktif  menjadi  nilai  tambah pengembangan aplikasi.
Aplikasi  yang  dihasilkan  diharapkan  dapat memberi  manfaat  bagi  pengguna  khususnya mahasiswa dalam mengolah data serta memperoleh informasi tentang perkuliahan yang lebih cepat dan fleksibel menggunakan perangkat bergerak berbasis Android.

## 2. TINJAUAN PUSTAKA
M-Learning
Teknologi  perangkat  genggam  nirkabel  yang menggunakan  jaringan  telepon  dan  internet dalam  memfasilitasi,  mendukung,  meningkatkan serta  memperluas  jangkauan  belajar  mengajar dinamakan M- Learning[7].

## Interaktif
Media interaktif adalah integrasi media digital termasuk  kombinasi  teks  elektronik,  grafis, gambar  bergerak,  dan  suara  menjadi  terstruktur dalam  lingkungan  komputerisasi  digital  yang memungkinkan  orang  untuk  berinteraksi  dengan data  untuk  tujuan  tertentu.  Lingkungan  digital dapat  mencakup  internet,  telekomunikasi  dan televisi digital interaktif[5].

## Personal Extreme Programming
Practices XP  dapat  diterapkan  untuk menangani situasi proses pengembangan
perangkat  lunak  dengan  pemrogram  tunggal, yang  kemudian  dinamakan  dengan  metodologi Personal Extreme Programming [1]. Practice  PXP  meliputi The  Planning  Game, Test Driven Development, Small Release, Simple Design,  Refactoring,  Continues  Integration,  On- Site  Customer,  Coding  Standard. Fase  proses PXP ditunjukkan pada gambar 1.

## Gambar 1. Fase Proses PXP
Fase  proses  tersebut  mengacu  pada penelitian  Dzhurov (2009)  yang  berjudul “Personal  Extreme  Programming-An  Agile Process  for  Autonomous  Developers”. Tahap Requirements mendifinisikan  segala  kebutuhan sistem yang dikembangkan. Menentukan estimasi stories ,  prioritas  dan  iterasi  yang dibutuhkan dalam pengembangan sistem dilaksanakan  pada  tahap planning .  Proses implementasi  dilakukan  dengan  metode  Test Driven Development (TDD)[4].
User Story dan Story Card Penulisan  stories  dapat  dituliskan  dengan susunan “As  a  [role]  I  can  [function]  so  that [rationale] .”  Penulisan  story  yang  baik  bersifat independent, negotiable, valuable user customer, estimatable, small dan testable[2].
Stories ditulis tidak untuk menyatakan sebuah kontrak  atau  kesepakatan  terhadap  kebutuhan perangkat  lunak  yang  harus  diimplementasikan. Story  Cards mendiskripsikan  fungsionalitas singkat dari percakapan antara pelanggan dan tim
pengembangan. Story cards menjadi media untuk menuliskan story dan acceptance  criteria dari tiap  fungsional  sistem  yang  diinginkan  oleh pengguna.
Android
Menurut  Meier  (2009),  Android  adalah sebuah software stack bersifat open source yang mencakup  sistem  operasi, middleware ,  dan key application s  beserta  sekumpulan Application
Programming  Interface (API)  untuk  merancang sebuah  aplikasi mobile dengan  menggunakan bahasa  pemrograman  Java.  Aplikasi  berbasis android  dapat  diciptakan,  dikembangkan  secara bebas  serta  dapat  dengan  mudah  diunduh  dan digunakan sesuai kebutuhan pengguna.

## 3. REQUIREMENT DAN RELEASE PLAN
Bagian  ini  akan  membahas  fase  awal  dari proses  PXP,  yaitu  requirement  dan  planning. Pada  awal  requirement,  akan  diidentifikasi pengguna sistem, dilanjutkan dengan pembentukan  arsitektur  sistem  dan  diakhiri dengan  pembentukan  fungsionalitas  sistem secara keseluruhan.
Arsitektur  pembelajaran  M-Learning  dapat ditunjukkan  pada  Gambar  2.    Pengguna  pada sistem M-Learning terdiri dari Dosen, Mahasiswa,  dan  Administrator.  Dosen  dan Mahasiswa  dapat  mengakses  sumber  daya pembelajaran  melalui PC atau  perangkat bergerak.  Sistem  yang  dikembangkan  pada penelitan ini bernama Mobile Learning Interaktif (MLI).  Sistem  terbagi  menjadi  dua  buah  sub- sistem yaitu :
1) MLI-s erver . 2) MLI-c lient .
MLI- server menggunakan  aplikasi database E-Learning  Moodle  berbasis  web  yang  dapat diakses oleh Admin, Dosen, maupun Mahasiswa melalui  browser.  MLI- server memiliki  layer  M- Learning  service  yang  fungsinya  untuk menerima  request  dan  memberikan  reponse kepada client sehingga data pada MLI-server dan MLI-client dapat terintegrasi dengan baik.
MLI  client  akan  dirancang  dengan  mengacu pada  pedagogy  M-Learning  yaitu Course Location,  Class  Experience,  Class  Materials, dan Assignments .  Fungsionalitas  sistem  utama pada MLI- client ditunjukkan pada tabel 1.
Tabel 1. Fungsionalitas Sistem MLI- client
Pedagogy MLI- client Course Location M-Learning diimplementasikan pada sebuah native application pada perangkat bergerak Class Materials Menampilkan daftar kuliah dan materi yang sesui Class Experience Memberikan pesan cepat atau notifikasi jika ada tugas baru dari Dosen. Assignments Menyediakan fasilitas penugasan pada tiap kuliah
Tabel  2  menunjukkan    Daftar Release  Planning sistem Mobile  Learning Interaktif  berbasis  Android yang terdiri dari 4 iterasi.
Tabel 2. Daftar Release Planning No. Kode Story Deskripsi Estimasi (dalam hari) Iteration – 1
1. US-01 Melakukan Login sistem. 2 2. US-02 Menampilkan daftar mata kuliah yang diambil. 2 No. Kode Story Deskripsi Estimasi (dalam hari) 3. US-03 Menampilkan daftar  materi  tiap mata  kuliah  yang diambil. 2 4. US-05 Menampilkan daftar unduh materi  tiap  mata kuliah yang diambil. 2 Velocity 8 Iteration – 2 1. US-07 Menampilkan daftar tugas kuliah kuliah. 2 2. US-04 Melihat detail materi kuliah. 1 3. US-06 Melihat detail unduh materi kuliah 1 4. US-08 Melihat detail tugas kuliah. 1 5. US-09 Mengirim jawaban tugas kuliah. 1 6. US-10 Mengubah jawaban tugas kuliah. 1 7. US-11 Melihat nilai tugas kuliah. 1 Velocity 8 Iteration – 3 1. US-12 Melihat daftar forum. 1
Gambar 2. Arsitektur M-Learning yang Dibangun
No. Kode Story Deskripsi Estimasi (dalam hari) 2. US-13 Melihat  diskusi forum 1 3. US-14 Menambah diskusi forum 1 4. US-15 Melihat komentar diskusi forum 1 6. US-17 Mendapatkan pesan cepat 2 7. US-18 Mengubah Password akun 2 Velocity 8 Iteration – 4 1. US-16 Menambah komentar  diskusi forum 1 Velocity 1

## 4. PEMBAHASAN
Pada bagian pembahasan, akan dideskripsikan bagian  inti  dari  PXP.  Diawali  dari  iterasi  awal ( initial  iteration )  sampai  dengan  pengujian. Untuk  meringkas  penulisan,  hanya  akan disajikan  bagaimana  mengimplementasikan user story US-01.
Initial Iteration Konfigurasi  dan  pembuatan  M-Learning service dapat selesai dalam waktu 8 hari. Sesuai dengan perencanaan pada release planning yang telah  disusun  sebelumnya,  apabila velocity bernilai  8  maka  untuk  menyelesaikan  s tory points dengan jumlah 25 dibutuhkan 4 kali iterasi
Implementasi Siklus  implementasi  pada  PXP  adalah digunakannya  TDD Acceptance  Test yang diimplementasikan  dengan  Acceptance  Test Story  (Tabel  3),  Unit  Test  Story  (Tabel  4)  dan implementasinya  (Tabel  5).  Siklus  tersebut diawali  dari  pembentukan story beserta acceptance  test -nya,  kemudian  dilanjutkan dengan pengujian unit ( unit testing ), implementasi  kode  dan refactoring (jika diperlukan).
Tabel 3 . Acceptance Test Story US-01 Acceptance Test Story US-01
1) Memeriksa  validasi  data username dan password pada server database
2) Menyimpan  data  pengguna  pada  SQLite database
3) Proses  Login  tidak  dilakukan  apabila  data username dan id seorang  Mahasiswa  telah tersimpan dalam aplikasi
Tabel 4. Unit Test Story US-01
Kutipan Kode Unit Test Story US-01
public void testGetCekUser() { json = loginparser .getCekPengguna(username, password); . . . . . . . assertNotNull (json); }
Tabel 5. Implementasi Test Story US-01
Kutipan  Implementasi Kode Test Story US-01
public class LoginParser { . . . .  . . . public JSONObject getCekPengguna(String username, String password){ JSONObject json; List<NameValuePair> params = new ArrayList<NameValuePair>(); params.add( new BasicNameValuePair( "username" , username)); params.add( new BasicNameValuePair( "password" , password)); json = jsonParser .makeHttpRequest( loginURL , "POST" , params);
return json; } . . . . .  . . } Keterangan : Kutipan diatas merupakan implementasi kode test pada fungsi “getCekPengguna”, dengan parameter “ username” dan “ password” .
Ketika  implementasi  kode  telah  memenuhi acceptance  criteria ,  tahapan  berikutnya  adalah dokumentasi  desain  yang  dibentuk  dari  hasil implementasi.  Berbeda  dengan  pengembangan perangkat lunak menggunakan metode waterfall,
pengembangan  perangkat  lunak  metode  PXP menyusun  desain  ketika  implementasi  telah teruji, berdasarkan pengujian unit.
Desain Sistem untuk Story US-01 ditunjukkan pada  tabel  6.  Desain  sistem  terdiri  dari class diagram,  sequence  diagram, dan  desain antarmuka sistem.
Tabel 6. Desain Sistem Story US-01 Desain Sistem Class Diagram
Sequence Diagram Desain Antarmuka
Implementasi antarmuka pada Story Login System yang ditunjukkan pada gambar 3.
(i) (ii)
Gambar 3. Antarmuka Login System 4.1. Iteration Burdown Chart Progress implementasi story pada
keseluruhan  iterasi.  Gambar  4  (i)  menunjukkan burdown  chart pada iteration  planning yang diususun.  Gambar  4  (ii)  menunjukkan  bahwa terjadi  perubahan  iterasi  pada  perancangan  dan pembuatan M-Learning Interaktif yang seharusnya terdapat 4 iterasi untuk menyelesaikan  25 story  points .  Iterasi  ke  –  3 terjadi  perubahan velocity karena terdapat penambahan story points yang berasal dari story pada  iterasi  ke  -  4.  M-Learning  dapat diselesaikan  lebih  cepat  dari  rencana  yang disusun dengan iterasi yang lebih pendek yaitu 3 iterasi dalam waktu 6 minggu.

## 5. KESIMPULAN
Kesimpulan  yang  dapat  diambil  dalam penelitian  ini  adalah  dihasilkan  sebuah  aplikasi Mobile  Learning (M  -  Learning)  Interaktif berbasis  Android  yang  dikembangkan  dengan metode Personal Extreme Programming . Layanan  penghubung  M-Learning Service
dibangun  untuk  mengintegrasikan  sumber  daya pada aplikasi client dengan server E-Learning. Aplikasi client M-Learning  memiliki  fitur untuk  menampilkan  informasi  mata  kuliah  yang diambil,  informasi  materi  tiap  kuliah,  informasi materi  unduh file ,  informasi  penugasan,  dan informasi  forum  serta  menambah  diskusi  forum.
Penerapan metode PXP memberikan kemudahan dalam memperkirakan kemampuan pengembangan perangkat lunak yang
dikembangkan.  Hal  tersebut  ditunjukkan  dengan burndown chart yang dihasilkan.
Iteration Plan 0 5 10 15 20 25 30 Iterasi ke-­‐1 Iterasi ke-­‐2 Iterasi ke   -­‐3 Iterasi ke   -­‐   4 (i) Actual Iteration 0 5 10 15 20 25 30 Iterasi ke-­‐1 Iterasi ke-­‐2 Iterasi ke   -­‐3 Iterasi ke   -­‐   4 (ii)
Gambar 4. Iteration Burdown Chart

## 6. DAFTAR PUSTAKA
[1] Agarwal  R.  dan  Umphress  D.,  2008,
“Extreme Programming for a Single Person Team”, Computer  Science  &  Software Engineering  107  Dunstan  Hall  Auburn University.
[2] Cohn M., 2004, ”User Stories Applied : For Agile  Software  Development” ,  Adison Wesley.
[3] Develop Economic, 2013, “Android Rises to Smartphone  Domination  :  Smartphone  OS Sales ( 2009 – 2012 )
[4] Dzhurov  Y.,2009,  “ Personal  Extreme
Programming  –  An  Agile  Process  for Autonomous  Developers”, Proceedings  of International  Conference  on  SOFTWARE,
SERVICES & SEMANTIC
TECHNOLOGIES,  Sofia,  Bulgaria,  ISBN
978-954-9526-62-2.
[5] England  E.  dan  Finney  A.,  2011, “Interactive  Media-What’s  that  ?  Who’s involved ”,  ATSF  White  Paper-Interactive Media UK-2002/2011 ATSF,( http:// www.atsf.co.uk/atsf/interactive_media.pdf ).
[6] Meier  R.,  2009,  “ Professional  Android Application  Development”, Indianapolis,
Indiana,  United  States  of  America:  Wiley Publishing, Inc.
[7] Schofield  C.P.,  West  T.,  dan  Taylor  E., 2011, “Going  Mobile  In  Executive Education”, Ashridge, Berkhamsted.
[8] Wirawan,  Panji  W.,  2012, “Pengembangan Kemampuan  E-Learning  Berbasis  Web  Ke Dalam  M-Learning” , Jurnal  Masyarakat Informatika,  Volume  2 (  Nomor  4,  ISSN 2086-4930), Hlm. 21-26.