1 70 BAB IV PENGUJIAN DAN IMPLEMENTASI Pada bab ini akan dijelaskan tentang pengimplementasian aplikasi yang kaya fitur yang dibangun dengan menggunak...
BAB IV PENGUJIAN DAN IMPLEMENTASI Pada bab ini akan dijelaskan tentang pengimplementasian aplikasi yang kaya fitur yang dibangun dengan menggunakan openlaszlo,selain itu akan dilakukan pengujian terhadap aplikasi ini sehingga dapat diketahui perhitungan untuk pemanfaatan aplikasi berbasis web dengan teknologi openlaszlo yang lebih efisien. 8. Implementasi Pada tahap implementasi ini terbagi dalam tiga cakupan yaitu implementasi aplikasi pada sisi server backend, implementasi basis data, dan implementasi aplikasi di sisi frontend. 4.1.1 Implementasi Server Aplikasi Toko Online Implementasi yang dilakukan pada sisi server ini menggunakan sistem operasi linux ubuntu 9.10 karmic koala, dengan beberapa konfigurasi paket paket lain nya: 23. Java Development Kit Instalasi JDK(java development kit) pada sistem operasi Linux dapat dilakukan dalam dua cara yaitu melalui terminal dan melalui sypnatic paket manager, dalam hal ini penulis memilih menggunakan terminal untuk melakukan penginstalan java development kit penulis menggunakan JDK 6.0. Berikut penjelasan penginstalan dan konfigurasi: budy@budy-laptop:~$ sudo apt-get install jdk 6.0 pass : “masukan password”
70
71
do you want to continue [Y / n] ? 'ketik Y'........................................... ............................................................................................................................. ........................................................................................... instalation pakcet is done
kemudian jalankan jdk tersebut dengan mengetikan perintah root@budy-laptop: /home/budy# JAVA_HOME=/usr/lib/jvm/java-6-sun. Lalu untuk mengecek apakah jdk telah berjalan dengan cara mengetikan perintah : root@budy-laptop: /home/budy# echo $JAVA_HOME klik enter lalu akan muncul /usr/lib/jvm/java-6-sun. Jika muncul pesan tersebut maka penginstalan JDK telah berhasil.
15 Openlaszlo Openlaszlo
dapat
diperoleh
dengan
mengunduhnya
di
www.openlaszlo.org/download pilih file yang akan diunduh sesuai dengan kebutuhan. Disini penulis menggunakan openlaszlo-4.6.1-unix.tar.gz setelah itu konfigurasi lakukan adalah : Ekstrak file yang telah diunduh tadi root@budy-laptop: /home/budy# gunzip -d -c openlaszlo-4.6.1| tar xvf setelah selesai pindahkan file :
unix.tar.gz
72
root@budy-laptop: /home/budy# mv lps-4.6.1 /usr/local/ setelah selesai memindahkan file kedalam folder local, lalu buka file setclasspath.sh yang terdapat di /usr/local/lps-4.6.1/Server/tomcat-5.0.24/bin Lalu definisikan JAVA_HOME=/usr/lib/jvm/java-6-sun pada baris paling atas file setclasspath.sh, hal ini bertujuan untuk mendefinisikan penggunaan java pada openlaszlo. Setelah selesai jalankan server tomcat /home/budy#
root@budy-laptop:
/usr/local/lps-4.6.1/Server/tomcat-
5.0.24/bin/startup.sh
Jika konfigurasi berhasil maka akan tampil pesan seperti ini : Using
CATALINA_BASE:
/usr/local/lps-4.6.1/Server/tomcat-5.0.24
Using
CATALINA_HOME:
/usr/local/lps-4.6.1/Server/tomcat-5.0.24
Using
CATALINA_TMPDIR:
/usr/local/lps-4.6.1/Server/tomcat-5.0.24/temp
JAVA_HOME: /usr/lib/jvm/java-6-sun.
Karena konfigurasi diatas harus dilakuakn setiap kali komputer server restar maka untuk menghindari hal tersebut penulis melakukan konfigurasi pada file rc.local berikut konfigurasi nya : masuk ke terminal : budy@budy-laptop:~$ sudo su [sudo] password for budy:”masukan password” root@budy-laptop:/home/budy# gedit /etc/init.d/rc.local
lalu akan muncul file rc.local ketikan konfigurasi berikut : #test nambah sript utk jalanin Tomcat JAVA_HOME=/usr/lib/jvm/java-6-sun /usr/local/lps-4.6.1/Server/tomcat-5.0.24/bin/startup.sh
lalu simpan, maka setiap kali komputer restart secara otomatis server tomcat telah dijalankan. Setelah proses pengkonfigurasian diatas berhasil. Server apache tomcat dapat diakses melalui web browser dengan alamat http://localhost:8080 berikut tamplian gambar apache tomcat:
Gambar 4.1 Tampilan Apachet Tomcat
74
Setelah apache tomcat telah berhasil dijalankan, maka untuk menjalankan server openlaszlo
dapat
diakses
dengan
alamat
http://localhost:8080/lps-
4.6.1/demos/amazon/amazon.lzx.
Gambar 4.2 Tampilan Aplikasi Toko Online Dengan Openlaszlo
4.2 Implementasi Basis Data Pembuatan basis data pada aplikasi toko online openlaszlo ini dibuat menggunakan basis data mysql. Basis data ini dikususkan untuk menyimpan informasi data data pembelian. Berikut instalasi basis data mysql : budy@budy-laptop:~$ sudo apt-get install phpmyadmin pass : “masukan password” do you want to continue [Y / n] ? 'ketik Y'........................................... ............................................................................................................instalaltion packet is down.
75
Biasanya di tengah-tengah penginstalasian pengguna diminta untuk memasukan password untuk digunakan pada saat akan mengakses basis data. Setelah selesai melakukan penginstalan, untuk mengecek apakah basis data dapat berjalan baik atau tidak dapat mengaksesnya dengan alamat
http://localhost/phpmyadmin/
tampilan gambar basis data mysql.
Gambar 4.3 Tampilan Awal Dari Basis Data Mysql
berikut
76
Untuk dapat masuk kedalam basis data pengguna diminta untuk mengisikan username dan password yang sesuai dengan pertama kali penginstalasian. Berikut tampilan penuh basis data mysql.
Gambar 4.4 Tampilan Penuh Basis Data Mysql Pada implementasi ini penulis menggunakan 3 tabel, yaitu tabel user, tabel cash dan tabel admin pada basis data laszlo. Adapaun cara pembuatan masing masing tabel sebagai berikut : -- Table structure for table `user`
77
CREATE TABLE `user` (`fullname` varchar(20) NOT NULL, `address` varchar(30) NOT NULL, `city` varchar(20) NOT NULL, `state` varchar(20) NOT NULL, `zip` int(10) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; Gambar 4.5 Struktur Tabel User
-- Table structure for table `admin` CREATE TABLE IF NOT EXISTS `admin` ( `username` varchar(20) NOT NULL, `password` varchar(20) NOT NULL) ENGINE=MyISAM DEFAULT CHARSET=latin1; Gambar 4.6 Struktur Tabel Admin
78
-- Table structure for table `cash` CREATE TABLE IF NOT EXISTS `cash` ( `number` int(20) NOT NULL, `type` varchar(20) NOT NULL, `holder` varchar(20) NOT NULL, `expiration` varchar(20) NOT NULL) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Gambar 4.7 Struktur Tabel Cash
79
Gambar 4.8 Link Basis data produk online ke server openlaszlo Selain menggunakan basis data pada lokal untuk aplikasi openlaszlo ini juga menggunakan basis data online yang mengarah ke basis data pada server openlaszlo. Pada gambar diatas pada gambar yang dibatasi oleh kedua garis tersebut merupakan tautan dimana aplikasi ini mengakses basis data pada server openlaszlo secara online.
80
4.3 Pengujian Pada proses pengujian yang dilakukan di Lab Komputer C-121 Universitas Mercu Buana. Penulis menggunakan tiga buah komputer dan sebuah switch, berikut spesifikasinya: 15.1
Komputer Server
Perangkat keras(hardware) yang dipakai dengan spesifikasi berikut : 8. Prosesor Intel centrino duo cpu T6400 2.00GHz 2.00GHz 9. Ram 4096 Mb Perangkat lunak yang dipakai dengan spesifikasi berikut : 14. Ubuntu linux Carmic koala 9.10 15. Mozila firefox versi 3.6.3 16. Apache Tomcat 17. PHPMYADMIN 18. Java Development Kit (JDK) 19. Sun JVM (Java Virtual Machine) 20. Sun JRE (Java Runtime Enviropment) 21. Macromedia Flash player
81
15.2
Komputer klien 1
Perangkat keras (hardware) yang dipakai dengan spesifikasi berikut : •
Prosesor intel core 2 duo cpu E7600 3.06GHz 3.06GHz
•
Ram 2048 Mb
Perangkat lunak yang dipakai dengan spesifikasi berikut 15.3
Windows 7 ultimate
15.4
Mozila firefox versi 3.6.3
15.5
Macromedia Flash Player
15.6
Firebug
16 Komputer klien 2 •
Intel(R) Pentium(R) 4 CPU 2.66GHz
•
Ram 1024Mb
•
Vga NVIDIA GeForce4 MX 4000
Perangkat lunak yang dipakai dengan spesifikasi sebagai berikut 16.1
Mozila firefox versi 3.6.3
16.2
Macromedia Flash Player
16.3
firebug
82
Gambar 4.9 Skema Pengujian. 1. Pada komputer server menggunakan operating sistem linux ubuntu 9.10 carmic koala dengan menggunakan konfigurasi: IP
: 10.124.1.20
Subnet mask
: 255.255.255.0
Gateway
: 10.124.1.1
2. Pada komputer klient1 menggunakan sistem operasi Windows7 ultimate dengan menggunakan konfigurasi: IP
: 10.124.1.14
Subnet mask
: 255.255.255.0
Gateway
: 10.124.1.1
3. Pada komputer klient2 menggunakan sistem operasi Windows XP Profesional dengan menggunakan konfigurasi: IP
: 10.124.1.32
83
Subnet mask
: 255.255.255.0
Gateway
: 10.124.1.1
Setelah ketiga komputer terhubung, maka akan dilakukan pengujian sebagai berikut : 4.3.1 Pengujian Frontend Dan Backend Pada Komputer Server 1. Front-End aplikasi toko online dengan openlaszlo Pada
menjalankan aplikasi pada sisi frontend pada server agar nantinya aplikasi tersebut dapat diakses melalui komputer pengguna.
84
Gambar 4.10 Halaman utama aplikasi toko online dengan openlaszlo Setelah aplikasi berjalan dengan baik pada server maka nantinya pengguna dapat melakukan aktifitas belanja dari aplikasi tersebut. Pada aplikasi ini terdapat beberapa bagian yaitu: 6. Shopping Cart (keranjang belanja)
Gambar 4.11 Tampilan Form Shopping Cart Pada saat pengguna mengklik tombol cart maka informasi tentang barang yang dipilih akan masuk secara otomatis kedalam shopping cart (keranjang belanja) dan total harga yang dipilih pun akan secara otomatis terbaharui.
85
Gambar 4.12 Tampilan Form Shopping Cart (2) 7. Wish List (Daftar Keinginan) Proses yang terjadi pada saat pengguna mengklik tombol List sama seperti yang terjadi pada proses pengguna mengklik tombol cart. Hanya saja jika pengguna mengklik tombok List sistem tidak secara otomatis memperbaharui jumlah harga pada form Check Out.
86
Gambar 4.13 Tampilan Form Wish List 8. Check Out (Pembayaran) Jika pengguna memasukan produk barang kedalam shopping cart (keranjang belanja) maka secara otomatis pula jumlah total belanja akan juga diperbaharui pada menu check out (pembayaran). Pada menu check out terdapat beberapa sub menu seperti menu shipping address menu shipping method dan juga payment method untuk lebih jelas nya lihat gambar dibawah ini:
Gambar 4.14 Form Check Out dan shipping address (pembayaran) Pada gambar diatas adalah gambar menu shipping address dan juga jumlah akhir yang harus dibayarkan, total jumlah harga adalah harga jumlah barang yang dipilih ditambah dengan harga jasa pengiriman barang. Pemilihan jenis jasa
87
pengiriman barang ditentukan oleh pengguna pada form Shipping Method (Jenis Pengiriman). 9. Shipping Method ( Cara Pengiriman ) Pengguna yang telah selesai memilih barang, bisa menentukan jasa pengiriman barang yang ingin dipakai untuk mengirimkan barang ke alamat yang telah dimasukan pada Form Shipping Address.
Gambar 4.15 Halaman Shipping Method (Cara Pengiriman Barang)
10. Payment Method (Cara Pembayaran) Untuk pembayaran pengguna diminta untuk memasukan nomor bukti pembayaran, nama bank dan nama pengguna.
88
Gambar 4.16 Payment Method (Cara Pembayaran) 2. Back-end toko online dengan openlaszlo Untuk menjalankan aplikasi pada sisi backend ketikan alamat ini pada url browser http://localhost/Backend-openlaszlo. Setelah itu maka halaman aplikasi browser akan tampil seperti dibawah ini :
89
Gambar 4.17 Halaman Login Admin Untuk dapat mengakses halaman backend admin. Admin harus terlebih dahulu memasukan username dan password yang sesuai. Setelah proses pengecekan berhasil kemudian pilih tautan Openlaszlo Backend untuk dapat mengelola data pada aplikasi toko online dengan openlaszlo berikut adalah tampilan Backend nya.
Gambar 4.18 Tampilan Awal Backend Openlaslo Menu User Pada menu user, admin juga dapat melakukan perubahan data diri pengguna jika memang dibutuhkan. Pada gambar selanjutnya akan dijelaskan mengenai perubahan data yang dilakukan oleh administrator.
90
11. Penambahan data baru Untuk melakukan penambahan data baru sebelum melakukan penambahan data penulis akan menampilkan printscreen dari tampilan basis data pada menu user.
Gambar 4.19 Tampilan isi tabel user sebelum ditambahkan data Kemudian Penulis mencoba untuk menambahkan sebuah data baru pada menu user.
91
Gambar 4.20 Tampilan menambah data pada menu user Untuk menguji apakah proses panambahan data akan tersimpan pada basis data mysql maka penulis mencoba memasukan data baru seperti ganbar diatas. Dan untuk dapat melihat hasil penambahan data baru bisa dilihat pada gambar berikut :
Gambar 4.21 Hasil penambahan data pada menu user Gambar diatas adalah tampilan menu user ketika admin telah melakukan penambahan data.
92
Gambar 4.22 Tampilan basis data setelah penambahan data Gambar di atas adalah tampilan basis data mysql setelah admin melakukan penambahan data pada menu user. Berikut potongan code program untuk backend menu user :
user.lzx
Laszlo.php # untuk menampilkan isi database mysql kedalam bentuk xml
// menyalin hasil dari kolom basis data ke variabel php dibawah ini mysqli_stmt_bind_result($stmt, $fullname, $address, $city, $state, $zip); // Membuat dokumen xml baru di memori $xy = new xmlWriter(); $xy->openMemory(); $xy->startDocument('1.0','UTF-8'); // melakukan penduplikasian dari batabase mysql $xy->startElement('addresslist'); while (mysqli_stmt_fetch($stmt)) { $xy->startElement('address'); // Write out the data as attributes $xy->writeAttribute('fullname', $fullname); $xy->writeAttribute('address', $address);
95
$xy->writeAttribute('city', $city); $xy->writeAttribute('state', $state); $xy->writeAttribute('zip', $zip); $xy->endElement(); } $xy->endElement(); $xy->endDocument(); // Hasil keluaran yang dihasilkan akan berupa file XML header('Content-Type: text/xml'); print $xy->outputMemory(true); // menutup semua perinta basis data mysqli_stmt_close($stmt); // menutup koneksi ke basis data mysqli_close($link); ?>
Update.php # fungsi untuk memperbaharui isi basisdata mysql apabila ada perubahan data
break; case 'delete': $sql = "DELETE FROM user WHERE fullname = '$pk'"; break; default: exit(); } // membuat koneksi ke basis data global $link; $link = mysqli_connect("localhost", "root", "budy", "laszlo");
96
// mempersiapkan queri basis data $stmt = mysqli_prepare($link, $sql); // menjalankan perintah queri basis data mysqli_stmt_execute($stmt); // menutup perintah basis data mysqli_stmt_close($stmt); // menutup koneksi basis data apabila proses telah selesai mysqli_close($link); ?>
Ketiga potongan program diatas adalah potongan program dari backend menu user. Kode program user.lzx adalah kode utama dari menu backend menu user dan sedangkan kedua kode program laszlo.php dan update.php adalah kode program yang berfungsi sebagai laszlo.php berfungsi menampilkan isi basis data mysql menjadi xml yang nanti nya akan digunakan dalam openlaszlo. Sedangkan update.php berfungsi untuk jembatan yang akan mengirimkan perubahan data dari openlaszlo ke mysql 4.3.2 Pembatasan Pengujian •
Aplikasi yang dikembangkan berbasis web namun tidak di
implementasikan secara on-line melalui pada jaringan lokal / LAN namun tetap terhubung ke internet •
Perhitungan waktu muat aplikasi yang dihitung yaitu
yang
berhubungan dengan aplikasi itu sendiri. Hal yang berhubungan dengan jaringan dan keamanan tidak di bahas.
4.3.3 Skenario Pengujian Black box Pengujian aplikasi ini meliputi :
97
9. Menggunakan Aplikasi •
Pengguna aplikasi memilih menu yang tersedia
Aplikasi akan diuji apakah pengguna dapat melihat aplikasi web untuk kemudian menggunakan halaman menu aplikasi yang tersedia. Tabel 4.1 Hasil Pengujian Black Box Skenario
Memilih Manu yang tersedia
Kelas Skenario
Tindakan Pengujian
Hasil Pengujian
Cart
Pilih produk barang yang diinginkan Lalu klik Cart
List
Pilih produk barang yang diinginkan Lalu klik List
Shopping Cart
Klik Link Shopping Cart
Wish List
Klik Link Wish List
Hasil Yang Diharapkan Item yang dipilih masuk kedalam Shopping Cart (keranjang belanja). Item yang dipilih masuk kedalam Wish List (Daftar Keinginan). Menampilkan isi dari barang belanjaan beserta total harga Menampilkan isi dari barang belanjaan dan total harga
Klik Link Check Out
Menampilkan item barang dan total harga keseluruhan
OK
Klik Link Shipping Address
Menampilkan form untuk pengisian alamat tujuan
OK
Klik Link Shipping Method
Menampilkan form untuk pemilihan jasa pengiriman
OK
Klik Link Payment Method
Menampilkan form untuk pembayaran
OK
Check Out
Shipping Address
Shipping Method Payment Method
OK
OK
OK
OK
Setelah tahap pengujian black box diatas maka dapat dianalisa bahwa: Skenario membuka aplikasi, proses memilih link menu pada halaman aplikasi berjalan dengan baik.
98
4.3.4 Skenario Pengujian Waktu Muat Pada analisa ini dilakukan analisa pengujian waktu muat pengguna ke server. Dimana pengguna ke1 dan pengguna ke2 membuka halaman aplikasi dari tempat dan komputer yang berbeda. Pengujian dilakuan pada
LAB teknik informatika
Universitas Mercu Buana C-121 dan pengujian membuka halaman aplikasi ini dilakukan sebanyak 5 kali dari setiap pengguna dengan kondisi server sedang diakses oleh semua pengguna. Tujuan pengujian ini untuk membandingkan dan membuktikan bahwa aplikasi yang dibangun dengan menggunakan openlaszlo lebih efektif dan efisien jika dibandingkan dengan pengujian terhadap aplikasi lain yang serupa yang telah penulis sampaikan pada bab sebelumnya. Pengujian waktu muat diuji menggunakan Firebug yang merupakan plugin perangkat lunak dari FireFox. 4.3.4.1 Hasil Pengujian Waktu Muat Pengguna Ke-1 Tabel 4.2 Rata – rata waktu muat yang dibutuhkan pengguna ke-1 Rata – rata waktu muat Skenario
Waktu muat (detik)
Waktu muat ke-1 pengguna ke 1
4,15 detik
Waktu muat ke-2 pengguna ke 1
18,46 detik
Waktu muat ke-3 pengguna ke 1
14,02 detik
Tabel 4.2 Rata – rata waktu muat yang dibutuhkan pengguna ke-1(Lanjutan)
99
Skenario
Waktu muat (detik)
Waktu muat ke-4 pengguna ke 1
29,05 detik
Waktu muat ke-5 pengguna ke 1
6,17 detik
Total
71,85 detik
Rata – rata =
71,85 detik = 14,37 detik 5 Hasil rata – rata yang didapat untuk membuka halaman aplikasi oleh pengguna ke-1 adalah 14,37 detik
Gambar 4.23 Waktu muat pertama pengguna ke-1
Gambar 4.24 Waktu muat kedua pengguna ke-1
100
Gambar 4.25 Waktu muat ketiga pengguna ke-1
Gambar 4.26 Waktu muat keempat pengguna ke-1
Gambar 4.27 Waktu muat kelima pengguna ke-1
101
4.3.4.2 Hasil Pengujian Waktu Muat Pengguna Ke-2 Tabel 4.3 Rata – rata waktu muat yang dibutuhkan pengguna ke-2 Rata – rata waktu muat Skenario Waktu muatan (detik) Waktu muat ke-1 pengguna ke 2 10,3 detik Waktu muat ke-2 pengguna ke 2 18,66 detik Waktu muat ke-3 pengguna ke 2 5,5 detik Waktu muat ke-4 pengguna ke 2 13,45 detik Waktu muat ke-5 pengguna ke 2 6,31 detik Total 54,22 detik Rata – rata = 54,22 detik = 10,84 detik 5 Hasil rata – rata yang didapat untuk membuka halaman aplikasi oleh pengguna ke-2 adalah 10,84 detik
Gambar 4.28 Waktu muat pertama pengguna ke-2
102
Gambar 4.29 Waktu muat kedua pengguna ke-2
Gambar 4.30 Waktu muat ketiga pengguna ke-2
103
Gambar 4.31 Waktu muat keempat pengguna ke-2
Gambar 4.32 Waktu muat kelima pengguna ke-2
104
4.4 Analisis Hasil Dari hasil pengujian di atas didapat rata – rata waktu muat yang dibutuhkan sebuah aplikasi toko online yang dibangun dengan openlaszlo memiliki waktu muat sebagai berikut : •
Pengguna pertama mendapatkan rata-rata waktu muat yang dibutuhkan untuk memuat halaman utama selama 14,37 detik, dan tidak membutuhkan pindah halaman untuk setiap prosesnya.
•
Pengguna kedua mendapatkan rata-rata waktu muat yang dibutuhkan untuk memuat halaman utama selama 10,48 detik, dan tidak membutuhkan pindah halaman untuk setiap prosesnya.
Atau dapat disimpulkan untuk kedua pengujian tersebut didapat rata-rata waktu muat halaman utama aplikasi toko online dengan openlaszlo yaitu (14,37 + 10,48) / 2 = 12,425 detik.