MAKALAH SKRIPSI
Perancangan dan Pembuatan Aplikasi
M-Commerce
Berbasis WAP dan J2ME
Studi Kasus pada Workshop Kerajinan dan Souvenir
"Dani Craft"
Oleh:
RIZA ZAKARIYA
03/164920/TK/28365
JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK
UNIVERSITAS GADJAH MADA
YOGYAKARTA
HALAMAN PENGESAHAN
MAKALAH SKRIPSI
Perancangan dan Pembuatan Aplikasi
M-Commerce
Berbasis WAP dan J2ME
Studi Kasus pada Workshop Kerajinan dan Souvenir
"Dani Craft"
Diajukan Sebagai Salah Satu Syarat Untuk Memperoleh
Gelar Sarjana Teknik Program S-1
Pada Jurusan Teknik Elektro Fakultas Teknik
Universitas Gadjah Mada
Oleh:
RIZA ZAKARIYA
03/164920/TK/28365
Yogyakarta, 2 Juli 2008
Telah diperiksa dan disetujui oleh:
Dosen Pembimbing I
Dosen Pembimbing II
Ir. Lukito Edi Nugroho, M.Sc., Ph.D.
NIP: 131 963 570
Perancangan dan Pembuatan Aplikasi
M-commerce
Berbasis WAP dan J2ME
Studi Kasus pada Workshop Kerajinan dan Souvenir "Dani Craft"
Riza Zakariya
1, Lukito Edi Nugroho
2, Rudy Hartanto
21
Mahasiswa Jurusan Teknik Elektro, FT UGM 2Dosen Jurusan Teknik Elektro, FT UGM
Abstrak
Perkembangan teknologi informasi dan komunikasi yang sangat pesat satu dekade ini telah mendorong percepatan transformasi budaya dalam dunia ekonomi dan bisnis dengan munculnya tren m-commerce yang memungkinkan berbagai transaksi bisnis dan kegiatan komersial dilakukan melalui mobile handled device. M-commerce menawarkan keunggulan yang tidak dimiliki e-commerce yaitu dapat digunakan dimana saja (ubiquity) dan kenyamanan (convenience) karena piranti mobile memiliki sifat sangat ringan, tidak membutuhkan tempat (space) yang khusus, dan fasilitas yang disediakan hampir sama dengan para pengguna PC. Terdorong oleh keinginan untuk mengembangkan pasarnya, Workshop kerajinan dan Souvenir Dani Craft tertarik untuk mengimplementasikan aplikasi mobile berbasis WAP/WML dan J2ME karena sifatnya yang multiplatform dan memiliki skalabilitas pengembangan yang tinggi. Aplikasi mobile yang akan dikembangkan selanjutnya disebut m-DaniCraft dan digunakan untuk menangani business process pemesanan souvenir oleh reseller Dani Craft.
Kata kunci:m-commerce, multiplatform, WAP,J2ME.
1. Pendahuluan
Perkembangan teknologi informasi dan komunikasi yang sangat pesat satu dekade ini telah mendorong percepatan transformasi budaya dalam dunia ekonomi dan bisnis dengan munculnya tren
electronic commerce (e-commerce). Dalam perjalanannya, sebagai pengembangan lanjut dari e-commerce, munculah terminologi baru yaitu mobile commerce (m-commerce) yang memungkinkan transaksi bisnis dan kegiatan komersial e-commerce
dilakukan melalui mobile handled device. Tren pengembangan m-commerce adalah mewujudkan transaksi bisnis yang semakin cepat, mobile, dan merasuk kedalam kehidupan manusia (pervasive).
Menurut Lee, dkk., (2003), m-commerce adalah pertukaran atau pembelian dan penjualan komoditas-komoditas, jasa, atau informasi pada internet dengan menggunakan mobile handled device[1]. Menurut Muhammad Safri Lubis, beberapa keuntungan telah membuat m-commerce menjadi sebuah alternatif perdagangan dewasa ini dan diprediksikan akan sangat berkembang dan diminati dimasa-masa mendatang adalah ubiquity dan convenience karena sangat ringan dan tidak membutuhkan space yang khusus, sedangkan fasilitas yang disediakan hampir sama dengan para pengguna PC atau laptop[2].
Dani Craft memandang perkembangan m-commerce sebagai peluang untuk mengembangkan pasarnya. Aplikasi m-commerce akan digunakan untuk menjembatani transaksi bisnis dengan reseller -nya kapan saja dan di mana saja dengan lebih mudah, intensif, efektif, serta dan efisien tanpa dibatasi lagi oleh gerak, ruang, dan waktu.
Hingga saat ini telah berkembang berbagai standar dalam teknologi pengembangan aplikasi
mobile yang memiliki sifat device independent,
multi-platform, dan memiliki skalabilitas pengembangan lebih lanjut. Dua diantara standar teknologi tersebut adalah Wireless Application Protocol / Wireless Markup Language (WAP/WML) dan Java 2 Mobile Edition (J2ME).
WAP (Wireless Aplication Protocol) adalah suatu protokol aplikasi yang memungkinkan internet dapat diakses oleh ponsel dan perangkat wireless lainnya 3. Navigasi dan hubungan antar card.
4. Parameterisasi string dan manajemen status, sehingga seluruh deck WML bisa di parameterisasi.
Ada tiga bagian utama dalam arsitektur WAP yaitu perangkat mobile wireless yang mendukung WAP, WAP gateway sebagai perantara, dan server sebagai sumber dokumen. Fungsi WAP gateway
adalah meneruskan HTTP request dan HTTP respons dari dan ke perangkat mobilewireless.
J2ME menspesifikasikan konfigurasi (configuration), profil (profile), dan paket opsi (optional package) untuk mencapai kinerja optimal pada suatu piranti dan meningkatkan portabilitas. Configuration adalah
virtual machine yang menyediakan beberapa pustaka kelas dasar dan didefinisikan dalam CLDC (Connected Limited Device Configuration) untuk perangkat mobile kecil seperti ponsel, dan dalam CDC (Connected Device Configuration) untuk perangkat mobile yang lebih besar seperti PDA.
Profile adalah pustaka yang menyediakan lingkungan pengembangan GUI, game, media, koneksi jaringan, suara, dan keamanan data dan dispesifikasikan dalam MIDP (Mobile Information Device Profile). Sedangkan optional package menyediakan fungsi-fungsi opsional yang lebih spesifik lagi bagi piranti mobile semisal piranti yang memiliki akses Bluetooth dapat menggunakan paket opsi API Bluetooth.
m-DaniCraft dibangun dengan arsitektur multi
-tier dengan MySQL sebagai elemen database tier (back-end storage), PHP sebagai middle tier (server side business logic), dan WAP dan J2ME sebagai
client tier (client side presentation).
WAP dan J2ME yang bertindak sebagai client tier bertugas mengatur bagaimana aplikasi mobile
berinteraksi dengan user, bagaimana data ditampilkan, dan bagaimana fungsi dan fitur aplikasi ditampilkan. Menurut bentuk dan batasan layanan server serta komputasinya, client tier terbagi atas tiga model: thin client, fat client, dan medium client.
Pada model thin client, client hanya menangani antarmuka sedangkan seluruh pemrosesan logika dan data dikerjakan di sisi server. Sebaliknya pada model
fatclient, seluruh proses komputasi diletakkan di sisi
client sehingga server tidak dibebani tugas-tugas komputasi. Adapun model medium client
menggabungkan keuntungan peletakan sebagian komputasi di sisi server dan pemanfaatan komputasi lokal di sisi client. Client tidak bertindak sebagai penampil data saja tetapi dapat didayagunakan lebih seperti melakukan validasi data, menjadi data cache, dan sebagainya. Komunikasi antara client dan server tidak seintensif pada thin client sehingga biaya komunikasi dapat ditekan, namun server tidak terlalu dibebani dengan komputasi yang sebenarnya dapat dilakukan secara lokal di sisi client.
2. Metodologi Penelitian
Metode penelitian yang digunakan dalam penyusunan tugas akhir ini adalah sebagai berikut:
1.Melakukan studi pustaka dengan mempelajari berbagai macam literatur baik berupa buku ataupun artikel elektronik dari internet dalam bentuk buku, majalah, makalah, maupun jurnal.
2.Mengumpulkan informasi tentang kebutuhan pengguna dari sisi penyedia layanan dan pelanggan pada aplikasi e-commerce Dani Craft.
3.Merancang alur, model, dan logika kerja aplikasi m-commerce dengan studi kasus pada Workshop Kerajinan dan Souvenir Dani Craft. 4.Merancang dan membuat modul database dan
modul administrator.
5.Merancang dan membuat modul client dengan konsep thin client (WAP/WML) dan medium client (J2ME).
6.Melakukan pengujian dan perbandingan kinerja aplikasi yang berbasis WAP/WML dan J2ME pada komputer localhost dengan emulator.
7.Melakukan pengujian dan perbandingan kinerja aplikasi yang berbasis WAP/WML dan J2ME pada remote host dengan sampel piranti
mobile berbasis WAP dan J2ME.
Pengembangan dan pengujian aplikasi akan dilakukan dan disimulasikan di komputer lokal (localhost). Sementara pengujian dalam keadaan yang sesungguhnya dilakukan dengan server web.ugm.ac.id dan tiga tipe piranti mobile sampel yang mendukung standar WAP 2.0 dan MIDP 2.0. Pengujian dengan banyak variasi tipe dan merek tidak dilakukan dalam skripsi ini dikarenakan keterbatasan sumberdaya dan waktu yang tersedia.
Spesifikasi perangkat keras yang digunakan dalam pengujian localhost yaitu:
1. Prosesor Intel Celeron 434 MHz 2. Memori SRAM 256 MB 3. Hard disk 80 GB.
Adapun spesifikasi perangkat lunak pendukung pada antara lain:
1. Sistem operasi Windows XP SP2.
2. XAMPP for Windows Version 1.5.1 dengan Web Server Apache/2.2.0, PHP/4.4.1-pl1,
Database MySQL 5.0.18, phpMyAdmin 2.7.0-pl1, dan Mail Server Mercury/32. 3. Browser Mozilla Firefox 1.7 untuk
Windows dengan Mozilla Mail & Newsgroups sebagai mail-client.
4. Emulator WAP M3Gate versi 0.6 dan WinWap versi 3.0 PRO untuk debugging
WAP.
5. NetBeans IDE 5.5 dan NetBeans Mobility Pack 5.5 for Windows untuk penulisan kode program J2ME, compiling, debugging, beserta simulasinya dengan Java Development Kit versi 1.5.0.08.
Sementara itu, pengujian pada remote host
dilakukan pada server web.ugm.ac.id dengan pada domain http://rizaz.web.ugm.ac.id. Spesifikasi perangkat lunak yang digunakan adalah sebagai berikut:
1.Operating System FreeBSD. 2.Apache Web Server 1.3.29 (Unix).
3.PHP 4.3.4 mod_ssl/2.8.16 OpenSSL/0.9.7.c. 4.MySQL 4.0.27.
6.PHPMyAdmin 2.11.5.1. 7.cPanel X. v.2.6.0
1.Nokia 6630 dengan sistem operasi Symbian 0S v8.0, Series 60 v.2.0 UI.
2.Nokia 6600 dengan sistem operasi Symbian 0S v7.0s, Series 60 v.2.0 UI.
3.Sony Ericsson K700i.
Ketiga sampel piranti mobile ini merupakan piranti yang telah mendukung WAP dan MIDP 2.0.
3. Hasil dan Pembahasan
Sistem m-DaniCraft dirancang terdiri dari empat modul utama yaitu modul database, modul administrator, modul WAP client, dan modul J2ME
client. Arsitektur modul m-DaniCraft diperlihatkan dalam gambar.1
Gbr. 1 – Modul m-DaniCraft
Aliran data sistem m-DaniCraft diperlihatkan dalam gambar 2.
Gbr. 2 – DFD Modul m-DaniCraft
Seorang administrator memiliki kewenangan untuk mengedit katalog souvenir yang berisi informasi detail souvenir berupa nama, kode, dan harga. Selain itu, administrator bertugas untuk mengaktivasi dan mengedit informasi produksi souvenir setelah reseller memesan dan membayar harga souvenir.
Di lain pihak, seorang reseller memiliki kewenangan untuk mengakses katalog produk secara
online, memesan salah satu atau beberapa diantara produk, melakukan pembayaran, dan menerima informasi perkembangan produksi souvenir pesanannya. Setiap melakukan transaksi reseller
akan menerima nota digital dan sebuah invoice yang
akan dikirim ke emailnya. Reseller juga dapat mengakses informasi tambahan yang tidak berhubungan langsung dengan transaksi misalnya profil Dani Craft, jawaban atas pertanyaan yang sering ditanyakan, bantuan pengguna, dan sebagainya.
3.1 Implementasi Modul Database
Modul database m-DaniCrat diimplementasikan dengan hubungan antar entitas data seperti diperlihatkan dalam gambar 3
Gbr. 3 – ER diagram m-DaniCraft
3.2 Implementasi Modul Administrator
Implementasi modul administrator m-DaniCraft
diperlihatkan dalam gambar 4 berikut:
Gbr. 4 – Implementasi modul administrator
Kode-kode PHP (sebagai server script) disisipkan dalam kode-kode HTML (yang mengatur presentasi teks dan layout). HTML menyediakan tampilan untuk berinteraksi dengan user seperti form masukan,
hyperlink, button, dan sebagainya. Sedangkan PHP berperan mengolah masukan user di sisi server, mengeksekusi application logic, serta menghubungkannya dengan back-end storage
(database).
Gbr. 5 –Tampilan antarmuka modul administrator(1)
Gbr. 6 –Tampilan antarmuka modul administrator(2)
3.3 Implementasi Modul WAP Client
Browser WAP di piranti mobile yang bertindak sebagai client akan menangkap respon server yang berwujud cookie dan echo kode WML. Kode-kode WML tersebut kemudian di-parsing menjadi teks,
form, atau image lengkap dengan layout-nya. Tidak ada komputasi lokal yang dilakukan di sisi client, karena seluruh komputasi dibebankan kepada
application logic yang berada di sisi server. Semua data di-echo-kan dari server. Client hanya bertugas mem-parsing kode XML kiriman server dan menyimpan nilai cookie. Implementasi WAP client
yang mengadopsi model thin client diperlihatkan oleh gambar 7.
Gbr. 7 – Implementasi WAP sebagai thin client
Sedangkan contoh tampilan antarmuka WAP client
diperlihatkan dalam gambar 8.
Gbr. 8 –Tampilan antarmuka WAP client
3.4 Implementasi Modul J2ME Client
Dalam kasus m-DaniCraft ini, J2ME client
mengadopsi konsep medium client sehingga client
tidak bertindak sebagai user interface saja tetapi dapat didayagunakan untuk melakukan sebagian komputasi seperti validasi data masukan sebelum dikirim ke server. Implementasi J2ME client yang mengadopsi model medium client diperlihatkan dalam gambar 9.
Gbr. 9 – Implementasi J2ME sebagai medium client
Mekanisme koneksi HTTP pada MIDlet di atas dilakukan dalam tiga tahap status yaitu setup, connected dan closed. Pada saat status setup, MIDlet akan mengatur parameter request ke server. Pada saat status connected, MIDlet akan menerima responnya. Setelah semua respon diterima, MIDlet akan menutup koneksi sehingga koneksi masuk pada status closed.
Dalam penanganan cookie, J2ME client m-DaniCraft memanfaatkan kelas SessionConnector
dari Sun Microsystem. Mekanisme pengiriman
cookie dengan kelas SessionConnector merupakan pengembangan dari koneksi dengan kelas
HTTPConnection. Untuk setiap koneksi dengan server, akan ada satu form yang akan menangkap isi
echo server. Proses koneksi diciptakan dalam thread
yang terpisah dari thread local processing
(penampilan form, alert, dan sebagainya) untuk menghindari deadlock. Pada waktu pembukaan koneksi ke server, MIDlet secara otomatis akan menciptakan form yang mengkonfirmasi penggunaan
airtime. Akibatnya ada dua commandAction yang menggunakan commandListener yang sama sehingga menyebabkan deadlock. Deadlock terjadi karena ada dua operasi (commandAction) yang menggunakan satu rutin fungsi yang sama. Oleh karena itu, untuk menghindari deadlock semua hubungan ke server perlu dibuatkan thread sendiri. Pembuatan thread
akan ditangani oleh obyek kelas ParsingPHP yang diturunkan dari kelas Thread.
Contoh tampilan antarmuka J2ME client
diperlihatkan dalam gambar 10 dan gambar 11.
Gbr.11 –Tampilan antarmuka J2ME client (2)
3.5 Implementasi pada Piranti Sesungguhnya
Pengujian pada piranti sesungguhnya dimaksudkan untuk mengamati tingkat device independence dan portabilitas dari WAP dan J2ME serta nilai transfer data dari hubungan client ke server. Sampel piranti mobile yang digunakan dalam pengujian ini adalah Nokia 6630, Nokia 6600, dan Sony Ericsson K700i.
Dari hasil pengamatan diketahui bahwa semua fitur WAP yang bekerja dengan baik pada emulator dapat pula bekerja dengan baik pada semua sampel piranti. Namun tidak semua fitur J2ME bekerja dengan sempurna seperti WAP. Fitur yang tidak tertampil sempurna adalah penampilan ticker pada Nokia 6600 serta penampilan alert Nokia 6600 dan Nokia 6630. Sementara itu pada Sony Ericsson K700i semua fitur J2ME berjalan dengan baik.
Pengamatan lebih lanjut dengan fitur Connection Manager Nokia 6630 memperlihatkan hasil bahwa WAP client membutuhkan data terima sebesar 36,56 kB dan data kirim sebesar 31,14 kB untuk melakukan suatu kasus prosedur transaksi pemesanan souvenir. Sedangkan J2ME client membutuhkan data terima sebesar 5.53 kB dan data kirim sebesar 2.72 kB untuk melakukan prosedur transaksi yang sama. Prosedur kasus yang transaksi digunakan adalah sebagai berikut:
1.User login ke sistem.
2.User melakukan browsing souvenir.
3.User melihat info nama, kode, dan harga souvenir.
4.User memesan souvenir sejumlah 200 buah. 5.User melakukan konfirmasi setelah
pemesanan dinyatakan sukses. 6.User melakukan konfirmasi transfer.
Tarif GPRS yang ditawarkan provider saat ini berkisar antara Rp.1/kB – Rp. 10/kB sehingga
dengan tarif tersebut transaksi lewat m-DaniCraft
dapat dilakukan dengan biaya yang sangat murah. Sistem m-DaniCraft dikembangkan dengan paradigma multi-tier architecture yang memisahkan sitem dalam arsitektur berlapis. Arsitektur multi-tier
yang diadopsi m-DaniCraft tersebut dapat meningkatkan fleksibilitas pengembangan karena memiliki keunggulan sebagai berikut:
1. Independensi logic terhadap presentation
dan logic terhadap content. 2. Independensi database. 3. Independensi server.
4. Kesimpulan
Kesimpulan dari penelitian ini sebagai berikut : 1.Aplikasi m-commerce "m-DaniCraft" dapat
menjadi solusi mobile business untuk proses pemesanan souvenir Dani Craft selain penggunaan aplikasi e-commerce yang telah ada.
2.Arsitektur multi-tier yang diadopsi dalam pengembangan m-DaniCraft dapat meningkatkan fleksibilitas pengembangan. 3.Aplikasi m-commerce memiliki keunggulan
dalam mobilitas, karena dapat mengakses pemesanan souvenir dimana saja dan kapan saja dengan airtime yang sangat murah. 4.Kelebihan WAP client pada m-DaniCraft
diantaranya pengguna tidak direpotkan dengan proses instalasi, tingkat device independent yang tinggi, dan kemudahan navigasi dengan sistem link.
5.Kelebihan J2ME client pada m-DaniCraft
diantaranya keleluasaan dalam pengembangan GUI, keberadaan applicationlogic di sisi klien yang mendukung local processing, penggunaan airtime yang hemat, dan kesempatan pengembangan yang fleksibel. 6.Kekurangan WAP client pada m-DaniCraft
diantaranya tidak adanya dukungan terhadap
localprocessing sehingga semua proses harus dikerjakan di server.
7.Kekurangan J2ME client pada m-DaniCraft
diantaranya perlunya instalasi awal, perlunya penyesuaian dalam deployment untuk spesifikasi hardware tertentu, dan keterbatasan kemampuan dalam menangani
cookie.
5. Referensi
[1] Lee, Chung-wei.., Hu, Wen-Chen.., dan Yeh, Jyh-haw, "A System Model for Mobile
Commerce ", Procedings of the 23rd International Conference on Distributed Computing System Workshop (ICDSW '03)