Post on 19-Apr-2019
SAMPUL APLIKASI PMI BERBASIS ANDROID DENGAN SINKRONISASI
MENGGUNAKAN XML-RPC WEB SERVICE DI PMI DIY
NASKAH PUBLIKASI
diajukan oleh
Rakhmad Ikhsanudin
10.11.3550
kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM YOGYAKARTA YOGYAKARTA
2013
NASKAH PU BLIKASI
RSETUJUAN
NASKAH PUBLIKASI
APLIKASI PMI BERBASIS ANDROID DENGAN SINKRONISASI MENGGUNAKAN XML-RPC WEB SERVICE DI PMI DIY
disusun oleh
Rakhmad Ikhsanudin
10.11.3550
Dosen Pembimbing
Kusrini, Dr., M.Kom
NIK. 190302106
Tanggal, 4 Desember 2013
Ketua Jurusan Teknik Informatika
Sudarmawan, M.T NIK. 190302035
ANDROID APPLICATION FOR PMI WITH SYNCHRONIZATION USING XML-RPC WEB SERVICE AT PMI DIY
APLIKASI PMI BERBASIS ANDROID DENGAN SINKRONISASI MENGGUNAKAN
XML-RPC WEB SERVICE DI PMI DIY
Rakhmad Ikhsanudin Kusrini
Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA
ABSTRACT All people need information. Information will be more valuable when have accuracy
and a high level of truth. The Value of benefits will increase when can be obtained on time. PMI is a humanitarian organization. They provide blood supply for those in need. It will be very helpful when PMI can also provide information about the blood supply they have quickly and accurately.
We need a method to make the information about PMI can be accessed easily. The method is to create a web service in the form of XML. It will make the information will be easily accessible by many media. Information will be packaged into a simple form. This simplicity is what will be the advantages of this method. Almost all online media information are able to access XML web service form. The application to be developed is the Android-based applications. Android is open source and has been widely circulated in the community.
This application will be able to display information about the PMI. We will be able to get information about the blood supply, important news, the location of blood transfusion and other information about the PMI.
Keywords : Web Service, Android, XML-RPC, Programming
LEM BAR PENGESAHAN
Pendahuluan
PMI DIY sebagai badan sosial yang bergerak pada penanganan stok darah di daerah
Provinsi Yogyakarta. Memiliki peran penting untuk menginformasikan jumlah stok darah yang
ada di provinsi DIY agar dapat diketahui oleh orang yang membutuhkan darah. Disamping itu
teknologi semakin berkembang. Cara penyajian informasi juga harus disesuaikan dengan
teknologi yang sedang banyak digunakan.
Aplikasi PMI Mobile adalah aplikasi berbasis android yang menyajikan informasi PMI.
Dengan aplikasi ini, pengguna android dapat memperoleh informasi PMI secara mudah dan
cepat. Dengan device Android yang mereka miliki.
Landasan Teori
Konsep Dasar Aplikasi Mobile
2.1.1 Definisi Aplikasi
Aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan
kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna.
Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai
kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk
mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak
aplikasi adalah pengolah kata, lembar kerja, dan pemutar media.1
2.1.2 Definisi Aplikasi Mobile
Mobile dapat diartikan sebagai perpindahan yang mudah dari satu tempat ke tempat
yang lain, misalnya telepon mobile berarti bahwa terminal telepon yang dapat berpindah
dengan mudah dari satu tempat ke tempat lain tanpa terjadi pemutusan atau terputusnya
komunikasi.
Aplikasi mobile merupakan aplikasi yang dapat digunakan walaupun pengguna
berpindah dengan mudah dari satu tempat ketempat lain lain tanpa terjadi pemutusan atau
terputusnya komunikasi. Aplikasi ini dapat diakses melalui perangkat nirkabel seperti pager,
seperti telepon seluler, PDA, serta Smartphone .
Adapun karakteristik perangkat mobile yaitu :
a. Ukuran yang kecil : Perangkat mobile memiliki ukuran yang kecil. Konsumen
menginginkan perangkat yang terkecil untuk kenyamanan dan mobilitas mereka.
1 Verdy Yasin,S.Kom.,M.Kom, Rekayasa Perangkat Lunak Berorientasi Objek, Hal 259
b. Memory yang terbatas : Perangkat mobile juga memiliki memory yang kecil, yaitu
primary (RAM) dan secondary (disk).
c. Daya proses yang terbatas : Sistem mobile tidaklah setangguh rekan mereka yaitu
desktop.
d. Mengkonsumsi daya yang rendah : Perangkat mobile menghabiskan sedikit daya
dibandingkan dengan mesin desktop.
e. Kuat dan dapat diandalkan : Karena perangkat mobile selalu dibawa kemana saja,
mereka harus cukup kuat untuk menghadapi benturan-benturan, gerakan, dan
sesekali tetesan-tetesan air.
f. Konektivitas yang terbatas : Perangkat mobile memiliki bandwith rendah,
beberapa dari mereka bahkan tidak tersambung.2
Konsep Dasar Aplikasi Android
Aplikasi Android ditulis dalam bahasa permrograman java3. Kode java dikompilasi
bersama dengan data file yang dibutuhkan menjadi bentuk package oleh apt tools sehingga
menghasilkan file berekstensi apk4. File apk itu adalah file aplikasi android yang bisa di install
di perangkat mobile dengan sistem operasi Android5.
Aplikasi android sendiri memiliki beberapa komponen sebagai berikut 6:
a. Activities
Suatu activity akan menyajikan user interface (UI) kepada pengguna,
sehingga pengguna dapat melakukan interaksi. Secara hirarki sebuah windows
activity dinyatakan dengan method Activity.setContentView(). ContentView adalah
objek yang berada pada root hirarki.
b. Service
Service tidak memiliki Graphic User Interface (GUI), tetapi sevice berjalan
secara background, sehingga aplikasi bisa tetap berjalan walau kita menjalankan
aplikasi lain. Service dijalankan pada thread utama dari proses aplikasi.
c. Broadcast Receiver
2 ibid 3 Nazruddin Safaat H, Android Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android, hal 9 4 Ibid, hal 9 5 Ibid, hal 9 6 Ibid, hal 9-10
Broadcast Receiver berfungsi menerima dan bereaksi untuk
menyampaikan notifikasi. Broadcast Receiver tidak memiliki user interface (UI),
tetapi memiliki sebuah activity untuk merespon informasi yang mereka terima atau
mungkin menggunakan Notification Manager untuk memberitahu kepada
pengguna.
d. Content Provider
Content Provider membuat kumpulan aplikasi data secara spesifikasi
sehigga bisa digunakan oleh aplikasi lain. Data disimpan dalam file sistem seperti
database SQLite. Content Provider menyediakan cara untuk mengakses data
yang dibutuhkan oleh suatu activity7.
Konsep Dasar Web Service
Menurut Kreger web service diartikan sebagai sebuah antar muka (inteface) yang
menggambarkan sekumpulan operasi-operasi yangdapatdiakses melalui jaringan, misalnya
internet, dalam bentuk pesan XML. Sedangkan menurut Manes(2001), web service diartikan
sebagai sepotong atau sebagian informasi atau proses yang dapat diakses oleh siapa saja,
tidak terikat dengan sistem operasi atau bahasa pemrograman yang digunakan.8
Web service merupakan middleware dalam suatu jaringan internet yang
memungkinkan suatu sistem dapat saling berkomunikasi pada platform yang berbeda.
Webservice menggunakan antarmuka berupa XML, yang dapat digunakanuntuk membawa
operasi-operasi dan data untuk berkomunikasi antar sistem.9
2.3.1 XML-RPC
XML-RPC adalah salah satu model web service yang bekerja pada protokol RPC
dalam suatu jaringan internet. Sebuah message XML-RPC adalah HTTP-POST request
berbasis HTTP 1.0 dan HTTP 1.1.10
XML-RPC menggunakan XML sebagai standarisasi pesan yang dikirim Dengan
menggunalan format tersebut, maka platform client dan server tidak dibatasi lagi oleh suatu
bahasa pemrograman tertentu.11
7 Ibid, hal 9-10 8 Arif Dwi Laksito, “Sinkronisasi Jadwal Perkuliahan pada Aplikasi android
menggunakanTeknologi XML-RPC”, 15 Juni 2013 :2 9 Ibid 10 Ibid 11 Ibid
Tujuan utama penggunaan XML-RPC adalah kemudahan dalam implementasi dan
adaptasi di lingkungan pemrogramanyang berbeda atau sistem operasi yangerbeda,
XML-RPC digunakan untuk mencari cara yang efektif dan simple dalam hal
permintaan dan penerimaan informasi.
2.3.2 XML
Menurut Walsh, XML merupakan sebuah Markup Language untuk dokumentasi
terstruktur. Dokumen-dokumen terstruktur adalah dokumen-dokumen yang mempunyai
isi/content (kata,gambar) serta indikasi yang menyatakan makna dari content tersebut.12
Sebuah objek data dapat dikatakan sebagai dokumen XML jika memenuhi kriteria well-
performed, Adapun kriteria well-performed adalah sebagai berikut:
a. Satu dan hanya ada satu root element yang ada dalam suatu dokumen.
b. Setiap elemen harus memiliki start-tag dan end-tag.
c. Setiap elemen harus properly nested.
d. Karakter pertama dari nama atribut harus berupa huruf alfabet atau underscore.
e. Suatu nama atribut hanya boleh munculsatu kali pada start-tag yang sama.13
12 Ibid 13 Ibid
Gambar 2-1. Konsep Dasar XML-RPC
Analisis dan Perancangan Sistem
Analisis Sistem
Menganalisa sistem bertujuan untuk menguraikan konsep kerja sistem yang akan
dibuat dan manfaatnya. Pengembangan sistem informasi berbasis komputer menjadi tugas
yang membutuhkan sumber daya untuk menyelesaikannya. Siklus hidup suatu sistem (system
life cycle) suatu metode pengembangan sistem yang dapat memecahkan permasalahan,
hambatan yang timbul, sehingga terjadi peningkatan kinerja seluruh elemen organisasi.
Tahapan dalam siklus hidup suatu sistem (system life cycle) terdiri dari perencanaan sistem
(system planning), analisis sistem (system anal ysis), desain sistem (system design), seleksi
sistem (system selection), implementasi sistem (system implementation) dan perawatan
sistem (system maintenance)
3.1.1 Analisis SWOT
Analisis SWOT merupakan metode perencanaan strategis yang digunakan untuk
melakukan pendekatan bisnis dengan lebih mudah dalam suatu proyek. Analisis tersebut
dapat dilakukan dengan cara mengevaluasi kekuatan (strength), kelemahan (weakness),
kesempatan (oportunity), dan ancaman (threats) dari system yang sedang berjalan.
Kekuatan (Strength)
Kekuatan yang dimiliki system yang sebelumnya adalah:
a. Informasi yang didapat oleh seseorang yang membutuhkan darah adalah akurat.
Karena dilakukan dengan menghubungi PMI untuk mengetahui stok darah yang
ada.
b. Meminimalisir oknum – oknum jahat yang sering mencari darah gratis untuk dijual
kepada orang yang membutuhkan darah.
Kelemahan (Weakness)
Sistem yang lama juga memiliki kelemahan. Sistem lama tidak praktis. Sebab harus
menghubungi PMI untuk mengetahui jumlah stok darah.
Kesempatan (Opportunity)
Dari kelemahan tersebut, dapat dibuat sebuah aplikasi yang memudahkan seorang
yang membutuhkan darah untuk mendapatkan darah yang sesuai dengan yang dia butuhkan.
Ancaman (Threats)
Masalah akan muncul ketika seorang yang membutuhkan darah ingin mengetahui stok
darah di PMI namun stok kosong. Maka orang tersebut perlu mencari pendonor.
3.1.2 Analisis Kebutuhan Sistem
Dalam perancangan sistem peneliti mendefinisikan kebutuhan sistem dan proses apa
saja yang akan dilakukan oleh sistem. Kebutuhan sistem sendiri terbagi menjadi dua yaitu
kebutuhan functional dan kebutuhan nonfunctional14.
Perancangan Sistem
Perancangan sistem merupakan bagian yang penting dalam membuat suatu sistem
ataupun aplikasi, perancangan sistem ini dimaksudkan untuk memberikan gambaran umum
tentang aplikasi yang akan dibuat.
3.2.1 Perancangan UML
Untuk lebih memperjelas tentang gambaran sistem maka penulis membuat UML
(Unified Modeling Language ) dengan beberapa tipe yaitu Use case diagram, Activity diagram,
Sequence diagram, dan Class diagram.
Usecase Diagram
Use Case Diagram (UCD) menjelaskan apa yang akan dilakukan oleh sistem yang
akan dibangun dan siapa yang berinteraksi dengan sistem. Sekumpulan use case
menggambarkan sebuah sistem dalam syarat-syarat pada apa yang dilakukan user pada
sistem. Komponen utama Use Case Modelling ini adalah Actor dan Use Case itu sendiri.
Activity Diagram
Activity diagram menggambarkan rangkaian aliran dari atifitas, digunakan untuk
mendeskripsikan aktivitas yang dibentuk dalam suatu operasi sehingga dapat juga digunakan
untuk aktifitas lainnya seperti use case atau interaksi15.
14 Hanif Al Fatta , Analisis dan Perancangan Sistem Informasi untuk Keunggulan Bersaing
Perusahaan dan Organisasi Modern, hal 62 15 Verdi Yasin, REKAYASA PERANGKAT LUNAK BERORIENTASI OBJEK Pemodelan, Arsitektur
dan Perancangan (Modeling, Architecture and Design), hal 270
Sequence Diagram
Sequence Diagram menggambarkan kolaborasi dinamis antara sejumlah objek dan
untuk menunjukan rangkaian pesan yang dikirim antar objek juga interaksi antar objek, sesuatu
yang terjadi pada titik tertentu dalam eksekusi sistem . Sequence diagram menjelaskan
interaksi objek yang disusun berdasarkan urutan waktu .
Class Diagram
Class diagram menggambarkan struktur dan deskripsi class, package, dan objek
berserta hubungan satu sama lain seperti containment, pewarisan, asosiasi dan lain-lain16.
Class diagram berfungsi untuk menjelaskan tipe dari objek sistem dan hubungannya dengan
objek lain17. Objek adalah nilai tertentu dari setiap atribut kelas entity18.
Implementasi dan Pembahasan
Implementasi
Tahap implementasi sistem adalah tahap meletakkan sistem supaya siap dioperasikan.
Tahap ini dilakukan setelah melakukan perancangan sistem yaitu pembuatan program.
Pengujian
Pengujian dilakukan untuk mengetahui langkah dan alur aplikasi sudah berjalan
dengan baik sesuai dengan rancangan yang diharapkan. Maksud dari pengujian adalah untuk
mengetahui masih adakah kesalahan sehingga sistem tidak dapat berjalan sesuai dengan
keinginan.
Terdapat 3 jenis kesalahan dalam tes program, yaitu :
a. Kesalahan Penulisan Syntax
b. Kesalahan Sewaktu Proses (run time error)
c. Kesalahan Logika
4.2.1 Pengujian Sistem
Pengujian sistem ini bertujuan untuk menguji apakah sistem dapat berjalan sesuai
dengan fungsinya atau tidak. Berikut adalah tabel hasil pengujian sistem yang telah dilakukan :
16 Ibid, hal 273 17 Ibid, hal 273 18 Ibid, hal 273
Table 4-1. Tes Login
No Skenario Hasil Status
1 Memasukkan username
dan password dengan
benar
Masuk dalam aplikasi Sukses
2 Memasukkan password
atau password salah
Muncul Pemberitahuan bahwa
username atau password yang
dimasukkan salah.
Sukses
4 Menekan proses sebelum
semua input terisi
Muncul Pemberitahuan bahwa
input harus di isi.
Sukses
5 Melakukan login tanpa
koneksi internet.
Muncul pemberitahuan bahwa
tidak terkoneksi dengan internet.
Sukses
Table 4-2. Test Register
No Skenario Hasil Status
1 Tidak semua field terisi Konfirmasi field harus diisi semua Sukses
2 Memasukkan username
yang sudah terdaftar.
Username tidak tersed Sukses
3 Melakukan proses login
tanpa koneksi internet.
Muncul pemberitahuan bahwa
tidak terkoneksi dengan internet.
Sukses
Table 4-3. Test Sinkronisasi Stok Darah
No Skenario Hasil Status
1 Terkoneksi dengan
internet
Keluar konfirmasi sinkronisasi
berhasil.
Sukses
2 Tidak terkoneksi dengan
internet
Keluar konfirmasi gagal
membaharui data stok darah.
Sukses
Table 4-4. Tes Sinkronisasi Broadcast
No Skenario Hasil Status
1 Terkoneksi dengan
internet
Keluar konfirmasi sinkronisasi
berhasil.
Sukses
2 Tidak terkoneksi dengan
internet
Keluar konfirmasi gagal sinkron. Sukses
Table 4-5. Tes Kirim Broadcast
No Skenario Hasil Status
1 Terkoneksi dengan
internet
Keluar konfirmasi kirim broadcast
berhasil.
Sukses
2 Tidak terkoneksi dengan
internet
Keluar konfirmasi error network. Sukses
3 Tidak memiliki session
login
Akan diarahkan ke activity login Sukses
Table 4-6. Test SInkronisasi Berita
No Skenario Hasil Status
1 Terkoneksi dengan
internet
Keluar konfirmasi sinkronisasi
berhasil.
Sukses
2 Tidak terkoneksi dengan
internet
Keluar konfirmasi gagal sinkron. Sukses
Table 4-7. Test Sinkronisasi UDD
No Skenario Hasil Status
1 Terkoneksi dengan
internet
Keluar konfirmasi sinkronisasi
berhasil.
Sukses
2 Tidak terkoneksi dengan
internet
Keluar konfirmasi gagal sinkron. Sukses
Table 4-8. Tes Load Map dan Direction tiap UDD
No Skenario Hasil Status
1 Terkoneksi dengan
internet
Tampil map dan direction dari
posisi kita sekarang ke UDD.
Sukses
2 Tidak terkoneksi dengan
internet
Keluar konfirmasi gagal load
direction.
Sukses
Table 4-9. Test Ubah Photo Profile
No Skenario Hasil Status
1 Terkoneksi dengan
internet
Photo profile terbaru diupload ke
server.
Sukses
2 Tidak terkoneksi dengan
internet
Keluar konfirmasi gagal ganti
photo profile.
Sukses
Pembahasan Aplikasi
Pada Aplikasi ini terdapat main class yang merupakan class utama pada aplikasi ini
dan service class yang merupakan background proses dari main class.
4.3.1 Menu Utama
Saat pertama user membuka PMI Mobile, maka akan tampil Main Activity. Main
Activity membuat fitur – fitur yang ada di PMI mobile saling terhubung dan menjadi satu aplikasi.
Di menu utama terdapat 4 tab:
1. Tab stok darah
2. Tab broadcast
3. Tab berita
4. Tab udd
Gambar 4-1. Main Activity
4.3.2 Login
Activity ini digunakan oleh user yang telah terdaftar sebagai member. Agar dapat
menggunakan fiur kirim broadcast di aplikasi PMI Mobile.
Gambar 4-2. Login Activity
4.3.3 Register
Digunakan untuk user yang belum terdaftar sebagai member untuk mendaftarkan diri
sebagai member PMI Mobile. User yang melakukan pendaftaran wajib mengisi semua field
yang ada di Activity Register.
4.3.4 Stok Darah
PMI Mobile memiliki fitur untuk melihat stok darah di UDD yang ada di tiap kabupaten
di DIY.
4.3.5 Broadcast
Disini user bias melihat broadcast pesan dari user lain yang terdaftar di aplikasi PMI
Mobile. Fitur ini berfungsi untuk membroadcast kebutuhan darah user. Sehingga akan dapat
dilihat oleh user lain yang menggunakan aplikasi PMI Mobile. User yang telah melakukan login
di aplikasi PMI Mobile bisa melakukan kirim broadcast.
Gambar 4-5. Tab Stok Darah Gambar 4-4. Detail Stok Darah
Gambar 4-6. Tab Broadcast
Penutup
Kesimpulan
Berdasarkan uraian-uraian yang telah penulis jelaskan dalam bab-bab sebelumnya
dan pembuatan aplikasi, maka dapat diambil kesimpuan sebagai berikut :
1. Dengan mengemasnya ke dalam versi mobile, informasi PMI semakin mudah
digunakan. Karena dapat diakses dari mana saja.
2. Dengan fotur broadcast, PMI mobile dapat membantu orang untuk menemukan
pendonor.
3. PMI Mobile melakukan pengecekan ke twitter PMI DIY apakah informasi yang
dimiliki adalah informasi terbaru. Jika tidak, server dari PMI Mobile akan
melakukan parsing ke twitter PMI DIY?
Saran
Pada penulisan Skripsi ini tentu masih banyak kekurangan , dan mungkin dapat
disempurnakan oleh penelitian-penelitian berikutnya. Untuk lebih menyempurnakan program
ini penulis memberikan beberapa saran diantaranya :
1. Pengunaan service pada aplikasi ini akan membuat aplikasi ini berjalan terus
sehingga akan memakan daya dan bandwidth walau pun oleh penulis sudah
dibuat seminimal mungkin namun dapat di perbaiki oleh pengembang berikutnya
dengan menggunakan push notification sehingga dari server yang akan
memberikan pesan ke ponsel.
2. Sistem ini mengambil informasi stok darah dari twitter. Sebab belum ada sistem
yang mencatat stok darah di PMI seluruh DIY maupun seluruh Indonesia. Hal ini
bisa dijadikan sebagai objek untuk penelitian.
3. Penyusun menyadari dalam pembuatan sistem informasi ini, masih banyak
kekurangan, dari segi penulisan, pembuatan sistem, dan desain yang dibuat,oleh
karena itu diharapkan kritik dan saran.
DAFTAR PUSTAKA
Fatta, H. A. 2007. Analisis dan Perancangan Sistem Informasi untuk Keunggulan Bersaing
Perusahaan dan Organisasi Modern. Yogyakarta: Andi.
Hermawan, B. 2007. Menguasai JAVA 2 & Object Oriented Programming. Yogyakarta: Andi.
Kusrini. (2006). Strategi Perancangan dan Pengelolaan Basis Data. Yogyakarta: Andi.
Owens, M. 2006. The Definitive Guide to SQLite . United States of America: Apress.
Raharjo, B. 2011. Belajar Otodidak Membuat Database Menggunakan MySQL. Bandung:
Informatika.
Safaat, N. 2012. Android Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis
Android. Bandung: Informatika.
Sakur, S. B. 2011. Pemrograman Berorientasi Objek-Konsep & Implementasi. Yogyakarta:
Andi.
Setiaji, B. 2012. Pemanfaatan Bahasa Alami Sebagai Antar Muka Aplikasi NL-Faraid. Jurnal
Teknologi Informasi Respati Volume VII Bulan NoVEMBER 2012, Universitas
Respati Yogyakarta.
Shalahuddin, M. , A.S. Rosa. 2006. Pemrograman J2ME Belajar Cepat Pemrograman
Perangkat Telekomunikasi Mobile. Bandung: Informatika.
Sunardi, Hari Murti, Hersatoto Listiyono. 2009. Aplikasi SMS Gateway. Jurnal Teknologi
Informasi DINAMIK Volume XIV, No.1, Januari 2009 :, 30-34.
Wiharto, Y. 2011. Sistem Informasi Akademik Berbasis SMS Gateway. JURNAL
TEKNOLOGI DAN INFORMATIKA (TEKNOMATIKA) VOL.1 NO.1.
Yasin, V. 2012. REKAYASA PERANGKAT LUNAK BERORIENTASI OBJEK Pemodelan,
Arsitektur dan Perancangan (Modeling, Architecture and Design) tahun. Jakarta:
Mitra Wasana Media.