Pengembangan Sistem Peminjaman Barang
Menggunakan Teknologi
Google Cloud Messaging(GCM)
(Studi Kasus: Sarana dan Prasarana Fakultas Teknologi
Informasi Universitas Kristen Satya Wacana)
Artikel Ilmiah
Diajukan kepada Fakultas Teknologi Informasi
untuk Memperoleh Gelar Sarjana Komputer
Peneliti :
Albertus Wahyu Wibowo (672011030) Yos Richard Beeh, ST., M.Cs.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Pengembangan Sistem Peminjaman Barang
Menggunakan Teknologi
Google Cloud Messaging(GCM)
(Studi Kasus: Sarana dan Prasarana Fakultas Teknologi
Informasi Universitas Kristen Satya Wacana)
1) Albertus Wahyu Wibowo, 2) Yos Richard Beeh
Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia
Email: 1)672011030@student.uksw.edu, 2)yos.fti.uksw@gmail.com
Abstract
The lending system that applies in FTI UKSW that currently done with the records in the lending book is less effective in helping the process of lending. Incomplete borrowers data, as well as the vagueness on the duration of the lending goods, making borrowing queue can not be done, and also the notification and provision of return is still done manually by searching through contacts in lending book . The methodology that used in this research is research and development method. The application development in this research utilizing the Apache Cordova API, so application codes are written in HTML ,Javascript and CSS. The provision of notification to the borrowers is using google cloud messaging ( GCM ) features . The result of this research is an application in android platform used by borrowers to perform the request of lending goods and changes in lending data. The application users are automatically notified by GCM when the loan is approved. The web application is built to be used by users who are not using Android and officers for the management of borrowing. By using the features of GCM, borrowers can receive notifications automatically when the lending will expire and the borrower can find out the borrowing schedule only through their smartphone. Supervision the use of goods also more easily done by officers and can be done through a website page
Keywords : lending systems, Research and Development, Apache Cordova, Google Cloud Messaging(GCM)
Abstrak
Sistem peminjaman yang berlaku di FTI UKSW saat ini dengan pencatatan di dalam buku peminjaman, masih kurang efektif dalam membantu proses peminjaman. Tidak lengkapnya data peminjam, serta kurang jelasnya durasi peminjaman barang, membuat antrian peminjaman tidak dapat dilakukan, serta pemberian notifikasi pengembalian masih dilakukan dengan cara manual melalui pencarian kontak di buku peminjaman. Metode penelitian yang digunakan dalam penelitian ini adalah metode Research and Development. Pembagunan aplikasi dalam penelitian ini memanfaatkan API Apache Cordova, sehingga kode aplikasi ditulis dalam HTML, Javascript dan CSS. Pemberian notifikasi peminjaman kepada peminjam memanfaatkan fitur Google Cloud Messaging (GCM). Penelitian ini menghasilkan aplikasi dalam platform Android yang digunakan oleh peminjam untuk melakukan permintaan peminjaman barang dan perubahan data peminjaman. Pengguna Aplikasi ini secara otomatis menerima notifikasi melalui GCM ketika peminjaman disetujui. Aplikasi web dibangun untuk digunakan oleh pengguna yang tidak menggunakan Android dan oleh petugas untuk pengelolaan peminjaman. Dengan memanfaatkan fitur GCM, peminjam mendapatkan notifikasi secara otomatis ketika peminjaman akan berakhir dan peminjam dapat mengetahui jadwal peminjaman hanya melalui smartphone miliknya. Pengawasan penggunaan barang juga lebih mudah dilakukan oleh petugas dan dapat dilakukan melalui halaman web yang dibangun.
Kata Kunci : sistem peminjaman, Research and Development, Apache Cordova, Google Cloud Messaging(GCM)
1) Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya
Wacana, Salatiga.
1. Pendahuluan
Fakultas Teknologi Informasi Universitas Kristen Satya Wacana (FTI UKSW) merupakan sebuah fakultas yang berada dalam lingkungan Universitas Kristen Satya Wacana (UKSW) yang terletak di Jalan Diponegoro no. 52-50, Salatiga, Jawa Tengah. FTI UKSW berdiri pada tahun 2003 dan pada saat ini telah menjadi salah satu fakultas besar di UKSW memiliki sepuluh program studi yang meliputi dua program studi diploma, tujuh program studi sarjana dan satu program studi pascasarjana. Menjadi sebuah fakultas yang cukup besar tentunya membutuhkan banyak fasilitas yang diharapkan dapat menunjang kegiatan yang ada di FTI UKSW. Banyaknya fasilitas yang ada tentunya juga membutuhkan pengelolaan yang baik agar fasilitas yang ada lebih tertata dan dapat digunakan sebagai mana mestinya.
Sarana dan Prasarana (sarpras) FTI UKSW merupakan sebuah unit di Fakultas yang melaksanakan tugas, fungsi serta memiliki kewenangan tertentu, terkait dengan penyediaan serta perawatan sarana dan prasarana yang dibutuhkan oleh Fakultas. Sarana dan Prasarana melaksanakan tugas yang menyangkut penyediaan dan perawatan sarana dan prasarana yang dimiliki dan dibutuhkan oleh Fakultas dalam penyelenggaraan kegiatan akademik. Sarana dan Prasarana FTI UKSW menjalankan fungsinya dengan menyediakan kebutuhan sarana dan prasarana yang dibutuhkan oleh fakultas, melakukan monitoring dan evaluasi yang menyangkut teknologi informasi yang digunakan oleh fakultas, serta melakukan koordinasi dengan unit diluar FTI yang berkaitan dengan kebutuhan sarana dan prasarana yang dibutuhkan oleh fakultas [1].
Lebih lanjut, salah satu hal yang dilakukan dalam menyediakan kebutuhan sarana dan prasarana adalah pegelolaan peminjaman sarana dan prasarana (barang inventaris) yang dimiliki oleh FTI yang berguna menunjang kegiatan yang ada di FTI UKSW. Sistem pencatatan peminjaman barang inventaris di sarpras FTI UKSW pada saat ini masih menggunakan cara yang manual dengan pencatatan di dalam buku peminjaman yang data peminjaman tersebut dituliskan oleh laboran pada saat peminjaman barang, selain itu untuk mengetahui ketersediaan barang yang akan dipinjam, para calon peminjam datang ke kantor sarpras untuk menanyakan terlebih dahulu ketersediaan barang. Sistem peminjaman seperti ini dinilai kurang efisien karena terkadang petugas tidak secara jelas menuliskan identitas peminjam secara detil dan juga lama barang tersebut dipinjam. Hal ini dapat berakibat ketika ada antrian peminjaman karena tidak ada informasi kapan barang tersebut akan kembali. Masalah juga muncul ketika peminjam terlambat mengembalikan barang yang dipinjam, petugas sarpras harus mencari secara manual data peminjaman barang tersebut dan kemudian mencari kontak dari peminjam untuk kemudian dihubungi, hal ini diungkapkan seorang petugas peminjaman ketika dilakukan wawancara.
Salah satu cara yang dapat digunakan untuk mengatasi permasalahan tersebut adalah dengan membangun sebuah sistem peminjaman barang inventaris yang dapat digunakan pada platform web dan mobile. Pembangunan sitem peminjaman barang di Sarana dan Prasarana FTI UKSW ini diharapkan dapat mengatasi permasalahan yang ada dalam proses peminjaman barang inventaris yaitu membuat proses peminjaman barang menjadi lebih efisien dan pencatatan peminjaman yang tidak menggunakan buku menjadi lebih rapi.
inventaris untuk mengatasi permasalahan peminjaman di Sarana dan Prasarana FTI UKSW. Penelitian ini bertujuan untuk menghasilkan aplikasi yang digunakan untuk membantu proses peminjaman barang inventaris di FTI UKSW. Aplikasi ini dibangun untuk menggantikan pencatatan peminjaman yang saat ini masih menggunakan buku serta untuk mempermudah petugas peminjaman dalam memberikan pesan kepada peminjam seperti pesan ketika peminjaman disetujui dan pesan ketika peminjam harus mengembalikan barang yang dipinjam.
2. Kajian Pustaka
Pada penelitian sebelumnya yang berjudul Sistem Informasi Iventory dan Peminjaman Barang pada Laboratorium Program Studi Sistem Komputer
membahas pembangunan sistem informasi pada laboratorium program studi sistem komputer Universitas Diponegoro bermanfaat untuk memantau informasi dan data-data yang berupa data-data barang baru dan data-data barang yang dipinjam. Sistem ini di bangun untuk menggantikan administrasi data inventaris yang sebelumya masih menggunakan cara semi-manual seperti dengan menggunakan Excel menjadi sebuah sistem informasi berbasis web. Dengan cara ini kesalahan pendataan antara barang baru, barang dipinjam, maupun barang yang rusak dapat diminimalisasi. Sistem Informasi Sistem Informasi Laboratorium Sistem Komputer bermanfaat untuk memantau informasi dan data-data yang dimiliki oleh Program Studi Sistem Komputer berupa data barang yang masuk (baru) ataupun data barang yang keluar (ada atau dipinjam) [2].
Pada penelitian yang berjudul Analisis dan Perancangan Sistem
Pengelolaan Inventaris pada Organisasi Mayapala diungkapkan bahwa sistem
yang dibangun membuat petugas lebih mudah dalam melakukan transaksi peminjaman, pengembalian, maupun transaksi pembukuan semua peralatan yang ada, karena sistem ini sudah dirancang dengan database yang menyimpan semua data transaksi. Sehingga mempermudah kinerja para dewan pengurus dalam hal pengarsipan . Selain itu, diungkapkan pula bahwa Dengan menerapkan sistem terkomputerisasi beban petugas menjadi lebih ringan sehingga kinerja para dewan pengurus menjadi lebih meningkat untuk kedepannya[3].
Pada penelitian yang membahas tentang aplikasi peminjaman pada Unit Pelayanan dan Pemeliharaan Kampus (UPPK) di Universitas Kristen Petra dinyatakan sistem web yang dibangun untuk menggantikan sistem manual yang ada telah dapat memenuhi kebutuhan dan memecahkan permasalahan menangani penjadwalan dan peminjaman. Dalam pengujiannya, aplikasi yang dibangun ini juga dapat mempermudah peminjam untuk mengetahui jadwal penggunaan serta melakukan peminjaman barang tanpa harus bertatap muka ataupun melalui telepon[4]. Pada penelitian yang berjudul Implementasi Push Notification Pada
Informasi Perkuliahan dan Kegiatan Mahasiswa Berbasis Android yang dilakukan
di universitas Krida Wacana, peneliti menyimpulkan bahwa fitur push notification yang diterapkan dalam aplikasi yang dibangun dapat membantu mahasiswa untuk mendapatkan informasi secara real time, seperti pemberitahuan penggantian jadwal kuliah dan juga pmendapatkan informasi seperti jadwal kelas dan jadwal ujian. Aplikasi ini dapat membantu mahasiswa melihat jadwal secara online tanpa melihat di majalah dinding[5].
notification. Aplikasi yang akan dibangun ini secara garis besar terdiri dari dua aplikasi yaitu aplikasi yang berbasis web yang digunakan dalam proses administrasi oleh petugas dan admin serta peminjam yang tidak memiliki aplikasi perangkat Android, dan aplikasi berbasis mobile pada platform Android yang digunakan oleh peminjam barang inventaris.
Push notification adalah sebuah metode komunikasi dimana client yang
terhubung diinformasikan tentang sebuah event di dalam sebuah sistem melalui notifikasi dari sistem tersebut. Hal ini berlawanan dengan pull notification yang membutuhkan request dari client untuk mendapatkan notifikasi. Push notification
dipicu dan dikirimkan oleh sistem tersebut tanpa client perlu meminta update dari sebuah status sistem. Android mendukung push notification melalui Google Coud
Messaging (GCM) library. Google Cloud Messaging (GCM) adalah layanan yang
memungkinkan Anda untuk mengirim data dari aplikasi engine atau backends lain ke perangkat Android kita. Ini bisa dikatakan menjadi push notification ringan pada aplikasi Android yang akan diambil dari server, atau bisa juga pesan langsung yang berisi hingga 4KB data payload dan benar-benar bebas tidak peduli seberapa besar kebutuhan pesan kita, serta tidak ada kuota [6]. GCM dalam aplikasi ini digunakan untuk memberi notifikasi kepada pengguna aplikasi Android.
3. Metode Penelitian
Metode penelitian yang digunakan kali ini adalah “Metode Penelitian dan Pengembangan” atau disebut juga “Research and Development”. Metode ini digunakan untuk menghasilkan produk tertentu dari penelitian yang telah dilakukan, sehingga metode ini cocok digunakan dalam penelitian ini karena penelitian menghasilkan produk berupa aplikasi yang akan digunakan di sarana prasarana FTI UKSW. Tahapan-tahapan dalam metode penelitian ini dapat dilihat dalam Gambar 2.
Gambar 1 Tahapan Penelitian Research and Development [7]
Tahapan dalam metode Research and Development dalam penelitian ini dilakukan sampai pada uji coba produk.Tahapan penelitian pada Gambar 1 yang digunakan
dalam penelitian ini dapat diuraikan seperti berikut ini: 1) Potensi dan masalah : Pada
ke dalam buku. Kemudian masalah yang ada dan masalah yang mungkin timbul akibat sistem manual saat ini diidentifikasi agar proses bisnis sistem baru yang digunakan untuk mengganti sistem yang baru ini dapat mengatasi permasalahan yang ada dan yang mungkin timbul. Selanjutnya dilakukan pengumpulan informasi dan penentuan fitur yang dimasukkan dalam sistem peminjaman barang agar dapat benar-benar membantu sarana dan prasarana FTI UKSW. 2) Tahap kedua: Pengumpulan Informasi/Data, pada tahap ini dilakukan penentuan kebutuhan-kebutuhan sesuai identifikasi masalah yaitu degan menentukan kriteria-kriteria dan fitur-fitur apa saja yang akan dimasukkan di dalam aplikasi sehingga mempermudah pengguna smartphone dalam menjalankan aplikasi. Pengumpulan data dilakukan dengan melakukan wawancara secara langsung terhadap petugas Sarana dan Prasarana FTI UKSW. 3) Tahapan Desain Produk : Pada tahapan ini dilakukan perancangan produk/sistem yang akan dibuat. Pada awalnya desain sistem dibuat menggunakan Unified Model Language (UML) diagram. Desain sistem yang dibuat berupa use case diagram dan activity diagram. Pada tahapan ini desain sistem di sisi aplikasi dilakukan setelah UML selesai dibuat, meliputi perancangan database serta pembangunan interface aplikasi itu sendiri. 4) Validasi desain : Tahapan validasi desain disini merupakan persetujuan pengguna(user) tentang aplikasi/sistem peminjaman barang inventaris yang telah dirancang . Selanjutnya jika ada revisi dari pengguna maka aplikasi akan disesuaikan kembali sesuai kebutuhan dan kenyamanan pengguna. 5) Tahap implementasi produk : pada tahapan ini funsi-fungsi dalam aplikasi diterapkan agar aplikasi dapat berjalan sesuai kebutuhan.
Dalam sistem peminjaman barang inventaris ini terdapat 2 macam aplikasi yaitu aplikasi berbasis web dan aplikasi berbasis mobile. Aplikasi ini dibangun menggunakan netbeans IDE. Pada aplikasi mobile memanfaatkan fitur
Push-Notifications pada Android melaui Google Cloud Messaging (GCM), sedangkan
pada aplikasi web menggunakan JSP dan Servlet. 6) Tahap ujicoba produk : pada tahap ini dilakukan pengujian software yang dibuat atau biasa disebut software
testing. Software testing merupakan proses menganalisa bagian-bagian dari
software untuk mendeteksi adanya perbedaan antara kondisi yang ada dan kondisi yang diperlukan (ada tidaknya bug) dan untuk mengevaluasi fitur-fitur dari
software.
Pengujian diawali dengan blackbox testing. Blackbox testing disebut juga
functional testing. Functional testing merupakan metode yang pengujiannya
berdasarkan informasi dari spesifikasi program atau sistem yang dibuat. Dengan
blackboxtesting, tester atau penguji software tidak seharusnya (atau tidak) memiliki
akses ke kode internal aplikasi atau sistem itu. Pengujian ini hanya berfokus pada luaran yang dihasilkan dalam menanggapi input yang dipilih dan kondisi eksekusi, pengujian ini tidak memperhatikan mekanisme internal yang terjadi dalam sistem.
Kode internal sistem dianggap sebagai “kotak hitam besar” untuk penguji software
dilakukan penarikan kesimpulan yang di ambil dari hasil analisis hasil ujicoba. Dalam identifikasi masalah dilakukan analisa proses sistem yang berjalan pada saat ini melalui wawancara dan observasi terhadap petugas peminjaman barang inventaris di sarpras FTI UKSW. Kemudian diketahui proses pencatatan peminjaman barang inventaris pada saat ini yang ada di sarpras FTI UKSW masih dilakukan dengan cara pencatatan ke dalam buku setiap terjadi peminjaman dan pengembalian barang. Belum terdapat sistem yang terintegrasi untuk membantu proses tersebut.
Dari observasi yang dilakukan, didapatkan alur kerja sistem peminjaman yang saat berjalan seperti pada Gambar 2 .
Gambar 2 Alur Peminjaman Barang
peminjaman. Petugas mengecek kelengkapan barang saat dilakukan peminjaman dan kemudian menyerahkan barang kepada peminjam. Proses dalam pengembalian barang juga masih belum menggunakan sistem yang terintegrasi, alur proses dalam pengembalian barang ditunjukkan pada Gambar 3.
Gambar 3 Alur Pengembalian Barang
Proses pengembalian barang yang ada dalam Gambar 3 diawali dengan peminjam datang ke kantor sarpras FTI untuk mengembalikan barang yang sudah selesai dipinjam. Peminjam menyerahkan barang yang dipinjam kepada petugas sarpras yang pada saat itu berada di ruang sarpras. Petugas akan melakukan pengecekan kondisi dan kelengkapan barang, jika barang lengkap maka petugas akan memberi tanda barang sudah dikembalikan pada buku peminjaman dan peminjaman telah selesai. Jika barang tidak lengkap maka petugas meminta peminjam untuk melengkapi kelangkapan barang dan mengembalikan ke sarpras.
sudah terlambat. Rancangan proses peminjaman yang diusulkan adalah seperti pada Gambar 4.
Gambar 4 RancanganAlur Peminjaman Barang
Dalam rancangan alur peminjaman pada Gambar 4 pengguna yang akan melakukan peminjaman barang melakukan pengecekan jadwal penggunaan barang melalui aplikasi Android maupun melalui website, jika barang yang diinginkan tersedia, maka pengguna dapat melakukan request peminjaman barang, setiap kali pengguna melakukan request, data peminjaman secara otomatis akan diperbaharui di
database. Ketika pengguna melakukan request maka secara otomatis pula petugas
operator peminjaman barang mendapatkan notifikasi melalui sms sesuai dengan operator yang aktif saat itu. Setelah operator menerima notifikasi request
peminjaman barang maka operator akan membuka halaman website yang berisi data request untuk melakukan validasi peminjaman. Jika peminjaman disetujui maka peminjaman akan terjadwalkan dan pengguna akan mendapatkan notifikasi melaui GCM (untuk pengguna aplikasi Android) ataupun sms (untuk pengguna web). Begitu pula jika peminjaman ditolak, pengguna juga akan menerima notifikasi.
Pengguna yang permintaan peminjamannya diterima mengambil barang yang dipinjam ke kantor sarpras FTI UKSW. Petugas akan melakukan pengecekan kesesuaian data peminjaman dan melakukan update data peminjaman melalui
website yang tersedia. Setelah data ter-update kemudian petugas menyerahkan
barang kepada peminjam. Ketika waktu peminjaman akan berakhir dan pengguna belum mengembalikan barang tersebut maka aplikasi secara otomatis akan memberitahu pengguna bahwa peminjaman akan berakhir. Notifikasi ini akan dikirim melalui GCM untuk pengguna Android atau melalui sms untuk selain pengguna Android.Setelah peminjaman selesai, pengguna yang akan mengembalikan barang yang dipinjam datang ke kantor sarpras FTI dan memberikan barang kepada petugas. Petugas kemudian melakukan pengecekan barang dan kesesuaian data, jika data sesuai petugas akan menerima barang dan melakukan update data peminjaman.
proses kerja dari aplikasi yang sedang dibangun. Diagram UML yang digunakan antara lain Use Case Diagram dan Activity Diagram. Use case diagram mendeskripsikan interaksi antara para pengguna sistem dengan sistem itu sendiri, dengan memberi sebuah penjelasan tentang bagaimana sistem tersebut digunakan [9]. Dalam aplikasi ini Use case untuk aplikasi mobile memiliki 1 aktor yaitu peminjam barang yang dapat dilihat pada Gambar 5. Peminjam barang yang dimaksud dalam aplikasi ini adalah dosen ataupun pegawai yang melakukan peminjaman barang di sarpras FTI UKSW.
Gambar 5 Use Case Aplikasi Mobile
Pada Gambar ditunjukkan bahwa pengguna pada aplikasi mobile peminjaman barang dapat melihat data profil, melalukan request peminjaman barang, merubah peminjaman barang, melihat jadwal barang dan melihat riwayat peminjaman barang.
Activity diagram adalah teknik untuk menggambarkan logika prosedural,
proses bisnis, dan jalur kerja [9]. Activity diagram pada aplikasi mobile yang digunakan oleh pengguna pada saat melakukan request peminjaman dilihat pada Gambar 8. Gambar 8 menggambarkan aktivitas pengguna pada saat melakukan
request peminjaman barang. Pada tampilan awal yaitu tampilan halaman masuk
aplikasi, pengguna akan memasukkan nama pengguna dan kata sandi yang kemudian sistem akan melakukan pengecekan nama pengguna dan kata sandi pada
database. Apabila nama pengguna dan kata sandi sesuai yang terdapat pada
database maka sistem akan menampilkan halaman menu utama. Pada pilihan menu
selesai maka sistem akan memasukkan data peminjaman ke database server dan pengguna akan mendapatkan notifikasi permintaan telah ditambahkan.
Memasukkan Username dan
Gambar 8 Activity Diagram Request Peminjaman
menjadi perantara antara aplikasi mobile dan database aplikasi, bahasa pertukaran data yang digunakan dalam format JSON. Arsitektur dari sistem peminjaman barang yang dibangun dapat dilihat pada Gambar 9.
Gambar 9 Arsitektur Sistem Peminjaman Barang
Pada Gambar 10 terdapat 2 aplikasi dalam arsitektur ini yaitu 1 aplikasi mobile dan 1 aplikasi web. Aplikasi mobile merupakan aplikasi yang berjalan dalam
smartphone Android dan digunakan oleh peminjam barang dalam sistem ini.
Aplikasi web digunakan oleh admin ataupun operator dalam sistem ini serta oleh peminjam yang tidak menggunakan Android. Untuk dapat menjalankan kedua aplikasi ini, semua perangkat harus terhubung dengan koneksi internet. Dengan adanya internet, aplikasi mobile (pengguna peminjam) dapat mengirimkan dan menerima data ke dan atau dari database server melalui servlet yang berada di web
server dengan menggunakan JSON .
4. Hasil dan Pembahasan
Penelitian ini menghasilkan dua aplikasi yaitu aplikasi mobile dan web. Pada aplikasi mobile diimplementasikan pada android, sedangkan pada aplikasi web
Gambar 10 Halaman utama pada apliksi mobile
Pada saat pengguna login ke dalam aplikasi, selain mengirimkan username
dan password untuk dicek, aplikasi akan mengirimkan device id dari smartphone
Android pengguna ke server aplikasi dan disimpan dalam database. Device id
inilah yang berguna sebagai pengenal untuk penerimaan pesan GCM. Pengiriman
device id pada saat login dimaksudkan agar ketika user berganti device Android
lain, device id di dalam database dapat diperbaharui secara otomatis.
Kode Program 1 Perintah untuk mengambil device id smartphone
Kode program 1 merupakan fungsi pada aplikasi mobile peminjaman barang ini yang berfungsi untuk mendapatkan device id dari perangkat Android yang berguna untuk menerima GCM. Agar fungsi pada kode program 1 dapat berjalan, dibutuhkan file PushNotification.js yang berfunsi untuk menangani penggunaan GCM pada aplikasi Android yang dibangun menggunakan HTML5. Sender id pada baris 5 merupakan id unik sebagai identitas pengirim yang didapatkan dari server
Google. Setelah device id didapatkan, maka device id perlu kita simpan dalam
database sebagai alamat tujuan ketika kita mengirimkan pesan GCM kepada
pengguna. Perintah untuk mengirim device id yang kita dapatkan dapat dilihat dalam Kode Program 2.
1 function initgcm() {
2 window.plugins.pushNotification.register(
3 successHandler,errorHandler,
4 {
5 "senderID": "281663640402",
6 "ecb": "onNotificationGCM"
Kode Program 2 Perintah untuk mengirim device id smartphone ke server
getCode pada baris 5 Kode Program 2 merupakan servlet yang terdapat pada web
server yang digunakan seabagai penghubung antara aplikasi Android dan database.
Device id dikirimkan melalui sebuah parameter regId dan dikirim menggunakan Ajax request mulai pada baris 6 sampai pada baris 12.
Pilihan halaman riwayat peminjaman menunjukkan riwayat peminjaman dari pengguna tersebut, pengguna dapat melakukan perubahan terhadap peminjaman selama peminjaman belum di verifikasi oleh operator, pengguna hanya perlu memilih peminjaman mana yang akan diubah dan mengubah seperlunya. Pembatalan juga dapat dilakukan pengguna melalui pilihan ini. Pengguna hanya perlu menekan tombol batalkan yang tersedia untuk mebatalkan peminjaman. Pembatalan peminjaman ini hanya diizinkan ketika permintaan belum disetujui dan ketika peminjaman sudah disetujui namun pengambilan barang belum dilakukan oleh pengguna. Permintaan yang telah dibatalkan tidak dapat dijadwalkan ulang kembali oleh pengguna maupun oleh operator.
Peminjaman barang dapat dilakukan dengan memilih menu peminjaman barang, setelah pengguna memilih menu ini maka aplikasi akan menampilkan list dari barang yang dapat dipinjam oleh pengguna, setelah pengguna memilih barang yang akan dipinjam maka pengguna diminta untuk melengkapi data peminjaman melalui form yang dapat dilihat pada Gambar 10. Form ini wajib diisi seluruhnya oleh pengguna, aplikasi akan melakukan pengecekan terhadap kolom-kolom yang ada dan memberi pesan kepada pengguna ketika ada kolom yang tidak terisi. Pengisian pada kolom tanggal dan waktu dilakukan dengan cara menyentuh kolom yang akan diisi, maka aplikasi akan memunculkan pop-up untuk memilih waktu yang diingikan.
1 function sendRequest(regID){
2 $.mobile.loading("show");
3 jQuery.support.cors = true;
4 $.mobile.allowCrossDomainPages = true;
5 var urljson = host + "getCode?regID=" + regID;
6 var ajaxRequest = $.ajax({
7 type: "GET",
8 url: urljson,
9 dataType: "json",
10 cache: false,
11 success: function (data){
12 alert(data.alert);
13 }
14 });
15 ajaxRequest.done(function () {
16 $.mobile.loading("hide");
17 });
Gambar 10 Tampilan form peminjaman barang
Setelah pengguna mengisi form pada Gambar 10 dan menekan tombol request
maka aplikasi akan melakukan pengecekan form tersebut, setelah dilakukan pengecekan maka aplikasi akan mengirimnak permintaan peminjamnan melalui perintah seperti pada Kode Program 3.
Kode Program 3 Perintah untuk mengirim permintaan peminjaman
1 function requestInventori() {
2 $.mobile.loading("show");
3 jQuery.support.cors = true;
4 $.mobile.allowCrossDomainPages = true;
5 var urljson = host +"request?kategori=inventori"
6 + editstr+ "&id_inventori=" +
7 $('#requestInventoriInventori').val()
8 + "&tanggal=" + $('#requestInventoriDate').val()
9 + "&waktuMulai="
10 +$('#requestInventoriStartTime').val() +
11 "&tanggalSelesai="
12 + $('#requestInventoriEndDate').val() +
13 "&waktuSelesai="
14 + $('#requestInventoriEndTime').val() + "&ext="
15 + $('#requestInventoriExt').val();
16 var ajaxRequest = $.ajax({
17 type: "GET",
18 url: urljson,
19 dataType: "json",
20 cache: false,
21 success: function (data) {
22 alert(data.alert);
23 }});
Proses pengiriman permintaan peminjaman dilakukandengan memanggil servlet
request pada web server dengan menambahkan parameter-parameter berisi nilai dari kolom-kolom form peminjaman barang seperti dapat dilihat pada Kode Program 3 baris 5 sampai 16. Kemudian servlet akan melakukan pengecekan kembali apakah terdapat tabrakan jadwal atau tidak, servlet akan mengirimkan respon kepada aplikasi mobile untuk menginformasikan permintaan peminjaman berhasil ditambahkan atau tidak. Respon ini ditampilkan pada pengguna melalui alert.
Pada menu utama juga terdapat pilihan lihat pemakaian, pilihan ini berfungsi ketika pengguna ingin melihat jadwal penggunaan dari barang inventaris. Jadwal yang ditampilkan disini hanyalah jadwal yang sudah di verifikasi oleh operator. sebelum jadwal ditampilkan, pengguna diminta untuk memilih barang inventaris yang akan ditampilkan jadwalnya, setelah pengguna memilih maka akan ditampilkan kalender yang berisi jadwal peminjaman barang yang dipilih. Secara
default kalender yang akan ditampilkan adalah kalender dalam bulan berjalan
seperti dapat dilihat pada Gambar 10. Untuk berpindah ke bulan lainnya, pengguna perlu menekan ikon panah kanan atau kiri yang ada di samping kanan dan kiri nama bulan yang ditampilkan. Tanggal dimana terdapat jadwal penggunaan barang ditandai dengan warna biru, warna abu-abu menunjukkan tanggal tersebut adalah tanggal di bulan sebelum atau sesudah bulan ang ditampilkan, sedangkan warna putih menunjukkan tidak ada pemakaian pada tanggal tersebut. Detil dari jadwal dapat dilihat dengan cara memilih tanggal dalam kalender, maka aplikasi menampilkan detil dari jadwal penggunaan barang di hari tersebut.
g gggggg p ] kk
Gambar 10 Halaman kalender pemakaian barang pada aplikasi mobile
Aplikasi mobile yang dibangun merupakan aplikasi client, administrasi dari sistem ini dilakukan dengan menggunakan aplikasi web yang juga telah dibuat, aplikasi web ini dibangun dengan memanfaatkan java dan berjalan di web server
pengguna secara otomatis akan menerima pemberitahuan melalui GCM seperti pada Gambar 12a dan Gambar 12b untuk pengguna Android dan sms untuk pengguna non-Android.
Gambar 12a Tampilan Notifikasi GCM di luar aplikasi
Gambar 12b Tampilan Notifikasi GCM di dalam aplikasi
Proses penerimaan pesan GCM dalam aplikasi dapat dilihat pada Kode Program 3. Pesan GCM yang dikirimkan dari server akan diterima perangkat sesuai dengan
device Id perangkat tersebut. Pesan GCM yang diterima akan dimunculkan kepada
pengguna melalui alert seperti pada baris 7 Kode Program 2 dan memberikan notifikasi berupa nada.
Kode Program 3 Penerima Pesan GCM
1 function onNotificationGCM(e) {
2 switch (e.event) {
3 case 'registered':
4 sendRequest(e.regid);
5 break;
6 case 'message':
7 alert(e.payload.message);
8 var sound = new Media("assets/www/ding.ogg");
9 sound.play();
10 break;
11 default:
12 alert("unknown event");
13 }
Sistem peminjaman barang yang saat ini berjalan memiliki beberapa kelemahan salah satunya yaitu untuk mengingatkan peminjam ketika waktu peminjaman hampir selesai. Dalam aplikasi ini terdapat thread yang berjalan menjadi backgroud service dari sistem peminjaman ini. Thread ini bekerja dalam selang waktu tertentu untuk melakukan pengecekan data peminjaman dalam
database yang sudah mendekati waktu pengembalian. Sistem untuk memberi
notifikasi ini memiliki 2 cara untuk memberi notifikasi kepada pengguna untuk mengembalikan barang, yaitu melalui GCM dengan syarat pengguna menggunakan aplikasi mobile Android atau melaui sms dengan memanfaatkan SMS gateway dari GAMMU untuk memberi notifikasi pengunna yang tidak menggunakan aplikasi
mobile. Thread untuk notifikasi otomatis dibuat dengan cara mendefinisikan context
listener dalam file web.xml seperti dalam Kode Program 4 berikut.
Kode Program 4 Definisi Context Listener di web.xml
Pengujian aplikasi dilakukan dengan menguji fungsi-fungsi dari aplikasi yang telah dibuat untuk mencari kesalahan/bug pada sistem agar sistem berjalan sesuai dengan yang diharapkan dan dapat memenuhi kebutuhan pengguna. Pengujian aplikasi presensi pegawai ini menggunakan dua teknik pengujian yaitu pengujian alpha dan pengujian beta.
Pengujian alpha adalah pengujian aplikasi yang dilakukan pembuat aplikasi dan orang-orang yang masih terlibat dalam pembuatan aplikasi tersebut. Pengujian
alpha menggunakan metode blackbox yaitu pengujian fungsi-fungsi aplikasi secara
langsung tanpa memperhatikan alur eksekusi program. Pengujian ini dilakukan dan sesuai yang diharapkan. Berikut adalah hasil pengujian dari aplikasi mobile dan aplikasi web.
Tabel 1 Hasil Pengujian Aplikasi Mobile Fungsi yang diuji Kondisi Output yang
4 timertask.MyServletContextListener
5 </listener-class>
6 </listener>
Melihat riwayat
Berdasarkan pengujian yang dilakukan pada aplikasi mobile dapat dilihat status pengujian dari setiap fungsi valid, maka disimpulkan bahwa aplikasi ini berjalan dengan baik dan sesuai yang diharapkan.
Pengujian beta adalah pengujian yang dilakukan oleh orang yang tidak ikut dalam pembuatan aplikasi. Pengujian beta dilakukan dengan wawancara langsung terhadap 3 sample user yaitu 1 orang Kepala Sarana dan Prasarana(kasarpras), 4 orang dosen dan pegawai yang berpotensi melakukan peminjaman sebagai sampel peminjam, dan 2 petugas sarpras yang telah melakukan uji coba aplikasi. Berdasarkan pengujian yang dilakukan maka diperoleh hasil bahwa aplikasi dapat menjawab permasalahan dalam peminjaman yang sistemnya belum tertata secara baik mempermudah pengguna ketika akan melakukan peminjaman barang. Peminjam dapat melakukan pengecekan jadwal hanya melalui smartphone
miliknya. Hal ini dirasakan lebih praktis dan lebih cepat dibandingkan dengan pengecekan barang dengan mendatangi ruang sarpras secara lansung ataupun melalui telepon. Aplikasi ini juga dinilai mudah untuk digunakan oleh pengguna, fitur notifikasi juga dinilai sangat membantu pengguna untuk mengingatkan waktu pengembalian dari barang yang dipinjam dan juga untuk mengetahui ketika peminjaman telah di verifikasi. Pengguna juga menyatakan bahwa aplikasi yang dibuat dengan memanfaatkan gadget membuat aplikasi semakin berguna karena
gadget selalu dibawa oleh pengguna. Melaui aplikasi ini pula, data mengenai
peminjaman barang serta riwayat-riwayat peminjaman menjadi tersimpan oleh baik oleh sistem. Aplikasi ini membuat pencatatan peminjaman yang sebelumnya melalui buku sekarang menjadi lebih rapi. Monitoring penggunaan barang oleh petugas sarpras juga menjadi lebih mudah dilakukan karena tidak perlu lagi mencari di dalam buku peminjaman.
5. Simpulan
Dengan menerapkan push notification menggunakan Google Cloud
Messaging(GCM) dalam aplikasi peminjaman barang di Sarana dan Parasarana FTI
peminjam tidak perlu lagi mendatangi ruang sarana dan prasarana untuk menanyakan ketersediaan barang yang akan dipinjam dan melakukan permintaan peminjaman. Sistem pencatatan peminjaman secara digital dalam sistem ini membuat informasi tentang peminjaman dapat ditampilkan secara lengkap melalui halaman web sehingga petugas peminjaman barang tidak perlu lagi melakukan pencarian data dan penyortiran data-data peminjaman dari dalam buku peminjaman. Informasi mengenai waktu peminjaman, waktu pengembalian, peminjam dan keperluan penggunaan barang selalu tercatat dalam sistem dan dapat di akses kapan saja oleh petugas.
6. Pustaka
[1] Fakultas Teknologi Informasi Universitas Kristen Satya Wacana. 2013. Mekanisme Kerja dan Struktur Organisasi Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga 2013. Salatiga: FTI UKSW.
[2] Rajendra, Rifky., Satoto, Kodrat I., Lukmana, Rinta K., Sistem Informasi
Iventory dan Peminjaman Barang pada Laboratorium Program Studi Sistem
Komputer, Univeritas Diponegoro, 2013.
[3] Kurniawan, Muhammad M., Analisis dan Perancangan Sistem Pengelolaan Inventaris pada Organisasi Mayapala, Sekolah Tinggi Manajemen Informatika dan Komputer Amikom Yogyakarta, 2011.
[4] Handojo, Andreas., Intan, Rolly., Aplikasi Peminjaman Ruangan, Kendaraan, Peralatan dan Penyampaian Keluhan Serta Analisis Ketersediaan Barang dan Kinerja Pelayanan pada UPPK Universitas Kristen Petra, Jurnal Informatika Vol. 6, No. 2, November 2005.
[5] Setiawan, Jefferson., Kristianto, Edy., Fredicia., Implementasi Push Notification Pada Informasi Perkuliahan dan Kegiatan Mahasiswa Berbasis Android, Jurnal Teknik dan Ilmu Komputer Vol. 04, No. 14, April - Juni 2015.
[6] Cloud Messaging Support, September 2014, Google Cloud Messaging for
Android, https://cloud.google.com/mobile/messaging.
[7] Prof. Dr. Sugiyono., Metode Penelitian Kuantitatif, Kualitatif, dan R&D, 2012, halaman 298.
[8] Nidhra, Srinivas., Dondheti, Jagruthi., Black Box And White Box Testing
Techniques – A Literature Review, International Journal of Embedded
Systems and Applications (IJESA) Vol.2, No.2, Juni 2012.