11
loadDetailBarangAfterScan sebagai input parameter ke web service sebagai request untuk menampilkan detail produk.
Kode Program 2, Proses Decoding Pola Barcode.
1. try { 2. this.setmCallBacknew IResultCallback {
3. Override 4. public void resultResult lastResult {
5. BarcodeReaderFragment.loadDetailBarangAfterScanlastResult.toString; 6. }};
7. } catch Exception e { 8. }
Proses pengiriman data ke server melalui web service client, berupa SoapObject yang didalamnya terdapat kode unik hasil decoding, namespace web
service dan method yang dituju Kode Program 3 baris 4. Proses pencarian data dilakukan oleh aplikasi server dengan memanggil jenis produk berdasarkan kode
uniknya di database. Hasil pencarian tersebut memberikan nilai kembalian ke client berupa response server agar ditampilkan ke perangkat mobile.
Kode Program 3, Proses Pengiriman Message ke Server untuk Mendapatkan Detail Produk.
1. Override 2. protected Barang doInBackgroundString... params {
3. try { 4. barang =
WebService.invokeFindBarangByKodeBarangparams[0],findBarangByKodeBarang;
5. } catch Exception e {} 6. return barang;}}
Secara lengkap proses pemindaian barcodeQR Code sampai pemesanan barang ditampilkan pada Gambar 8. Proses pemesanan barang dapat dilakukan
setelah proses scanning barcode dilakukan oleh member dan aplikasi berhasil menampilkan detail produk yang didapat dari response server.
Gambar 8,
Alur Proses Pemesanan Barang dengan Cara Scanning Barcode.
12
Pemesanan barang dimulai dengan memasukan barang-barang yang dipesan melalui pemindaian barcode ke keranjang belanja yang terdapat pada aplikasi.
Proses Ambil Barang untuk dimasukan ke keranjang belanja disetujui oleh sistem apabila jumlah pemesanan tidak melebihi jumlah stok yang tersedia. Memasukan
barang pesanan ke keranjang memungkinkan member dapat melakukan perubahan pada jumlah item yang dipesan atau membatalkan pesanan, sebelum member
melakukan checkout.
Proses checkout diawali dengan memasukan alamat pemesan terlebih dahulu. Alamat yang diinput berguna untuk proses pengiriman barang ke member. Proses
checkout selanjutnya dilakukan dengan mengirim request ke server berupa id member berupa email dan data barang yang telah dipilih pada menu keranjang
belanja Kode Program 4 baris 4 s.d 7.
Kode Program 4,
Proses Checkout.
1. Override
2. protectedString doInBackgroundString... params {
3. try{ WebService.invokeTambahkanKeDaftarPesanan
4. MainActivity
5. .getUser
6. .get
7. SessionManager.KEY_EMAIL,selectedItems;
8. } catch Exception e {}
9. return null;
10. }
Setelah proses checkout dilakukan, member boleh melihat status pemesanan pada menu Lihat Daftar Pesanan. Terdapat beberapa pilihan yang boleh dipilih
oleh member untuk melihat daftar pesanan berdasarkan status pesanan. Status pesanan yang disediakan dalam aplikasi yaitu : pilihan status Menunggu
Konfirmasi yang menampilkan daftar barang yang telah dipesan namun belum dikonfirmasi oleh admin, pilihan status Dalam Proses Pengiriman yang
menampilkan barang yang sedang dikirim ke member yang bersangkutan, dan pilihan status Telah Diterima menampilkan barang yang telah diterima oleh
member. Gambar 9, menampilkan tampilan menu Lihat Daftar Pesanan.
Gambar 9, Tampilan Menu Lihat Daftar Pesanan.
13
Checkout barang oleh member, disimpan dalam database di web server. Pada aplikasi Admin, dapat dilihat daftar pesanan member pada form utama aplikasi
desktop. Form Utama dari aplikasi desktop yang dibuat, menampilkan Daftar Pesanan Member yang berisi email, nama lengkap serta jumlah pesanan dari
member yang melakukan pemesanan yang dikelompokan berdasarkan tanggal pemesanan. Gambar 10, menunjukan tampilan menu utama dari aplikasi admin
yang menampilkan daftar pesanan dari member.
Gambar 10, Tampilan Menu Utama Aplikasi Admin
Pada aplikasi admin, untuk melakukan proses konfirmasi pengiriman barang, admin terlebih dahulu melakukan login ke sistem. Pada menu utama, terdapat
daftar member yang melakukan pemesanan. Proses konfirmasi pengiriman barang, dilakukan oleh admin dengan memilih daftar member. Daftar pesanan akan
ditampilkan berdasarkan tanggal pemesanan yang dapat dikonfirmasi.
Proses yang terjadi saat admin melakukan konfirmasi pesanan yaitu : data pemesanan dikirim ke web server melalui web service berupa request yang berisi
message berupa data kode unik setiap produk dan email member. Kemudian pemesanan data member yang tersimpan dalam database diupdate sesuai
permintaan dari admin.
Kode Program 5, Method Web Service untuk Update Pesanan.
1. WebMethodoperationName = invokeUpdateListPesanan 2. public
String invokeUpdateListPesananWebParamname
= listpesanan
ListPesanBarangModel listPesanKonfirm { 3. PesanBarangController controller = new PesanBarangController;
4. return controller.invokeUpdateListPesananlistPesanKonfirm; 5. }
Pengolahan data barang oleh admin dapat dilakukan pada Menu master barang. Pada menu master barang, disediakan fitur-fitur yang dapat melakukan
pengolahan data barang seperti menambah, menghapus, mengubah dan melakukan update stok barang pada database. Proses penambahan data dilakukan
14
dengan mengisi form input yang tersedia seperti kode barang, nama barang, harga, stok dan lain-lain secara lengkap.
Pada Form Master Barang, terdapat fitur untuk proses encoding kode unik menjadi QR Code maupun Barcode. Gambar 11 memperlihatkan QR Code hasil
encode dari kode barang yang diinput oleh admin, hasil dari encoding oleh pustaka Zxing. Hasil encode ini berupa file gambar yang kemudian disimpan
sebagai atribut barang dalam database agar dapat digunakan untuk memindai barcode barang tersebut oleh member.
Gambar 11,
Tampilan Menu Daftar Pesanan.
Pembuatan QR Code dari sebuah inputan String menjadi pola bar, dilakukan dengan cara memanggil method encode yang terdapat pada pustaka Zxing dan
menjadikan string kode barang sebagai input parameternya. Output yang dihasilkan disesuaikan dengan kebutuhan, apakah menghasilkan QR Code,
EAN13 Barcode, CODE128 Barcode dan lain-lain. Kode Program 6, menunjukan proses pembuatan barcode EAN13 yang dibentuk dari inputan String menjadi
BitMatrix. Setelah proses konversi string ke BitMatrix selesai dilakukan, tahap terakhir dari proses pembuatan barcode adalah mengubah BitMatrix tersebut
menjadi Image Barcode agar dapat disimpan dalam database atau dapat langsung digunakan pada media promosi.
Kode Program 6, Proses Pembuatan QR Code dari BitMatrix menjadi Image.
1. int matrixWidth = byteMatrix.getWidth; 2. BufferedImage img = new BufferedImage matrixWidth,matrixWidth,
3. BufferedImage.TYPE_INT_RGB; 4. img.createGraphics;
5. Graphics2D graphics = Graphics2D img.getGraphics; 6. graphics.setColorColor.WHITE;
7. graphics.fillRect0, 0, matrixWidth, matrixWidth; 8. buat gambar menggunakan ByteMatrix
9. graphics.setColorColor.BLACK; 10. for int i = 0; i matrixWidth; i++ {
11. for int j = 0; j matrixWidth; j++ { 12. ifbyteMatrix.geti,j {
13. graphics.fillRecti, j, 1, 1;}} 14. }
15. ImageIO.writeimg, formatFile, file; 16. }
15
Proses pengolahan data barang dan transaksi, dilayani sepenuhnya oleh aplikasi web server melalui web service yang terdapat didalamnya. Pada server,
terdapat database yang menyimpan data barang, data member, data admin, dan transaksi.
Webservice yang dibangun menggunakan SOAP Webservice. Untuk semua proses yang terjadi pada sistem ditangani sepenuhnya oleh web service tersebut.
Agar service yang dibuat dapat diakses oleh client, maka dibuat konfigurasi endpoint network. Konfigurasi file tersebut memungkinkan client dapat
mengakses web service yang telah dibuat dengan alamat tertentu sesuai dengan isi. Kode Program 7 menunjukan konfigurasi endpoint network.
Kode Program 7, Konfigurasi End Point Webservice.
1. ?xml version=1.0 encoding=UTF-8? 2. endpoints version=2.0
3. xmlns=http:java.sun.comxmlnsjax-wsriruntime 4. endpoint
5. implementation = service.Service 6. name = servicevmmarket
7. url-pattern = servicevmmarket 8.
9. endpoints
Konfigurasi tersebut kemudian dipanggil pada aplikasi client. Kode Program 8 menunjukan proses pengaksesan WSDL oleh client. Variabel-variabel yang
harus menentukan dalam akses ke web service tersebut yaitu NameSpace yang mengarah pada package yang merupakan tempat service disimpan disimpan pada
server dan URL WSDL yang berupa alamat dari service.
Kode Program 8, Proses pemanggilan Web Service.
1. public class WebServiceManager {
2. public static String NAMESPACE = http:service;
3. public static String URL=
4. http:marcelovirtualmarket-serviceevan.rhcloud.comservicevmmarket?wsdl;
5. public static String SOAP_ACTION = http:service;
6. }
Selain kedua variabel tersebut pengaksesan method service disesuaikan dengan webmethodoperationName dan webparamparamName
yang terdapat pada setiap method service pada server agar memudahkan proses pemanggilan yang terdapat pada server. Kode Program 9 menunjukan salah satu
proses request ke server.
Kode Program 9, Request menampilkan rincian barang.
1. Barang barang = new Barang;
2. SoapObject request = new SoapObjectNAMESPACE,
3. webMethodName;
4. PropertyInfo pi = new PropertyInfo;
5. pi.setNamekodeBarang;pi.setValuekodeBarang;
6. pi.setTypeString.class;
7. request.addPropertypi;
8. SoapSerializationEnvelope envelope = new
1. SoapSerializationEnvelopeSoapEnvelope.VER11;
16
9. envelope.setOutputSoapObjectrequest;
10. envelope.addMappingNAMESPACE, Barang, new Barang.getClass; 11. AndroidHttpTransport androidHttpTransport = newAndroidHttpTransportURL;
12. androidHttpTransport.callSOAP_ACTION + webMethodName, envelope; 13. SoapObject response = SoapObject envelope.getResponse;
Request seperti pada Kode Program 9, diterima oleh server sebagai sebuah pesan, yaitu berupa web method dan parameter melalui pengaksesan endpoint
network oleh client. Requestclient diidentifikasi berdasarkan nama dari web method. Method yang diakses kemudian menjalankan controller dan
mengembalikan output sesuai dengan request yang diminta Kode Program 10 baris 3 sampai 5.
Kode Program 10, Pemrosesan request pada Server.
1. WebMethodoperationName = invokeTambahkanKeDaftarPesanan
2. public void invokeTambahkanKeDaftarPesanan
3. WebParamname = email String email,
4. WebParamname=arrItemSelectedString arrItemSelected {
5. PesanBarangController c = new PesanBarangController;
6. c.invokeTambahkanKeDaftarPesananemail, arrItemSelected;
7. }
Setelah proses implementasi selesai dilakukan, untuk mengetahui apakah sistem sudah berjalan dengan baik atau belum maka dilakukan pengujian terhadap
sistem yang telah dibuat. Metode yang digunakan untuk pengujian sistem menggunakan metode black box testing. Black box testing adalah sebuah metode
pengujian perangkat lunak yang menguji fungsionalitas sebuah aplikasi tanpa melihat alur eksekusi program, namun cukup memperhatikan apakah setiap fungsi
menghasilkan output sesuai dengan yang diinginkan. Tabel 1 menunjukan hal-hal yang diuji dan hasil pengujian sistem.
Tabel 1, Hasil Pengujian Blackbox Testing prototipe sistem
No Fungsi
Pengujian Hasil yang
diharapkan Hasil yang muncul
Kesimpulan
1 Pembuatan QR
Code maupun Barcode pada
aplikasi Admin
Menginput kode unik kemudian
untuk menghasilkan
barcode. Aplikasi dapat
membuat gambar
barcode.
Barcode berhasil dibuat
Berhasil
2 Pengolahan data
barang.
Melakukan insert, update, delete
pada data barang. Aplikasi dapat
melakukan pengolahan
data barang.
Pengolahan data berhasil dilakukan.
Berhasil
3 Konfirmasi
pesanan member oleh admin pada
aplikasi desktop.
Melakukan konfirmasi dengan
cara memberi checklist pada
pesanan member dan menekan
tombol konfirmasi. Proses
konfirmasi pesanan dapat
dilakukan oleh admin.
Konfirmasi berhasil Berhasil
4 Pembacaan QR
Code maupun Barcode pada
perangkat Andoid
Pengiriman kode unik barang yang
terdapat di keranjang ke
Sistem dapat menampilkan
rincian produk saat proses scan
Rincian produk tampil pada saat
member melakukan scan
dengan aplikasi Berhasil
17
server untuk checkout.
barcode.
android.
5 Pengambilan
Barang oleh member Scaning
Proses pengiriman kode unik hasil
decoding barcode ke server agar
disimpan pada tabel
pemesanankeranj ang
Sistem dapat melakukan
pemesanan barang sesuai
input member.
Keranjang belanja member
bertambah. Berhasil
6 Checkout
Pengiriman kode unik barang yang
terdapat di keranjang ke
server untuk checkout.
Sistem dapat mengirim ke
data ke server untuk proses
checkout.
Terjadi perubahan staus pesanan
pada keranjang belanja
Berhasil
7 Periksa Histori
Pemesanan
Mengirim request ke server untuk
mendapatkan data pesanan yang
telah dipesan Sistem dapat
menampilkan daftar pesanan
member.
Daftar pesanan tampil pada layar
android. Berhasil
Pengujian aplikasi dilakukan dengan metode beta testing. Uji beta testing dilakukan dengan mengumpulkan user untuk menggunakan aplikasi yang telah
dibuat kemudian mengisi kuisioner yang diajukan oleh peneliti. User sebagai sampel user berjumlah 30 responden. Setelah dilakukan pengambilan pendapat
menggunakan kuisioner beta testing diperoleh hasil sebagai berikut :
Tabel 2, Rekap Hasil Beta Testing.
No Pertanyaan
Jumlah Tanggapan Ya
Ragu-ragu Tidak
1 Apakah menurut anda aplikasi ini mudah
digunakan? 22
8 2
Apakah tampilan desain aplikasi menarik? 10
15 5
3 Apakah aplikasi penggabungan pemasaran
konvensional dan online dengan memanfaatkan QR Code dan barcode untuk pembelian dengan
cara pemindaian barang membantu anda memesan produk yang dipasarkan secara
konvensional ? 21
9 4
Apakah aplikasi sudah memenuhi kebutuhan anda ?
20 10
5 Apakah pembelian barang dengan cara ini
sangat membantu? 26
4 TOTAL
99 40
5
18
Gambar 12, Persentase Kuisioner dari Lima Pertanyaan.
Dari hasil uji coba berdasarkan tabel 2 maka persentase responden yang menyatakan setuju tentang pembuatan prototype pada penelitian ini berjumlah 99
144 100 = 68.8 , yang menyatakan ragu-ragu berjumlah 40144100 = 27.8 dan yang menyatakan tidak setuju berjumlah 5144100 = 3.5 . Dari hasil
tersebut maka dapat disimpulkan bahwa prototype sistem ini dapat diterapkan untuk meningkatkan aksesibilitas produk pada promosi dan penjualan
konvensional.
7. Simpulan