4. Implementasi dan Analisa Hasil
Arsitektur MVC yang telah dibuat dapat dilihat pada Gambar 7.
Gambar 7
Arsitektur MVC
Gambar 7 merupakan arsitektur MVC yang terdiri dari 3 tiga folder utama yaitu controllers, models, dan views yang terletak di dalam folder
application .
Implementasi Aplikasi
Dalam aplikasi Bursa Komoditi, digunakan sistem login dengan pemilihan tiga user akses yaitu Penjual, Pembeli dan Administrator. Untuk melakukan login
diperlukan username dan password. Untuk username yang digunakan adalah email user dan untuk password akan dikirimkan ke email user, setelah melakukan
pendaftaran. Proses login dilakukan pada halaman masuk seperti terlihat pada Gambar 8.
Gambar 8 Halaman Masuk Login
Menu Komoditi Penjual
Dalam menu komoditi penjual dapat melihat semua komoditi yang dimiliki. Halaman komoditi terlihat pada Gambar 9.
Gambar 9 Halaman Komoditi Penjual
Dalam Gambar 9 terlihat daftar komoditi yang dimiliki oleh seorang penjual. Untuk melihat detail tiap komoditi dapat dilihat dengan memilih link
Detail. Dalam halaman ini penjual dapat melakukan edit dan hapus data komoditi. Hanya beberapa data komoditi yang dapat diubah oleh penjual, seperti lokasi
gudang penyerahan komoditi, kuantitas, harga dasar, harga jual, dan tanggal komoditi tersedia.
Menu Penawaran Komoditi Pembeli
Gambar 10 merupakan halaman pada hak akses Pembeli yang menunjukkan menu Tawar.
Gambar 10
Halaman Penawaran Komoditi Pembeli
Dalam Gambar 10 terlihat form penawaran komoditi, dimana setiap pembeli dapat menawar komoditi yang disesuaikan dengan jumlah deposit yang
dimiliki. Setiap melakukan penawaran maka deposit secara otomatis akan berkurang sementara, dan deposit akan kembali ketika ada penawar lain yang
menawar dengan harga yang lebih tinggi. Perintah untuk melakukan penawaran pada controller ditunjukkan pada Kode Program 1.
Kode Program 1
Kode Program Menu Tawar Komoditi Controller
Kode Program 1 merupakan perintah untuk melakukan penawaran komoditi yang ada pada bagian Controller. Perintah pada baris 1 merupakan nama
fungsi penawaran
yang menggunakan
parameter CommodityDetailId,
PricePerQuantity, SessionId, dan Quantity. Perintah pada baris 3-4 merupakan fungsi untuk menambah harga dan kuantitas tawar terhadap komoditi berdasarkan
[1] function buyer_biddingCommodityDetailId, PricePerQuantity, SessionId, Quantity [2]
{ [3]
return_result = this-auction_model- [4]
InsertBuyerBidCommodityDetailId, Quantity, PricePerQuantity, SessionId, [5]
this- userinfo[UserId], this-userinfo[UserLogin]; [6]
}
sesi lelang pada saat melakukan penawaran. Perintah pada baris 5 merupakan fungsi untuk menyimpan data user yang sedang login.
Kode Program 2 Kode Program Menu Tawar Komoditi Model
Kode Program 3 merupakan perintah untuk menambah harga dan kuantitas
tawar. Perintah pada baris 3-8 merupakan fungsi untuk menambah harga dan kuantitas tawar yang akan memanggil fungsi stored procedure untuk mengisi
tawaran dalam database. Perintah dalam stored procedure ditunjukkan pada Kode Program 3.
Kode Program 3
Kode Program Menu Tawar Komoditi Stored Procedure
Kode Program 3 merupakan penggalan kode program dalam stored procedure uspInsBidding
yang berfungsi untuk menyimpan harga tawar, kuantitas tawar, penawar, dan waktu melakukan penawaran komoditi.
Untuk melihat transaksi penawaran dan pembelian komoditi dapat dilihat pada Gambar 11.
[1] function InsertBuyerBidCommodityDetailId, Quantity, PricePerQuantity,
[2] SessionId, UserId, UserLogin
[3] { [4] bid = this-db-queryCALL uspInsBidding
[5] .CommodityDetailId.,.Quantity.,.PricePerQuantity.,.SessionId
[6] .,.userId.,.UserLogin.-result_array;
[7] return bid; [8] }
[1] INSERT INTO transaction_biddingdetail [2] BiddingHeaderId,
[3] BidderId, [4] BiddingTime,
[5] BiddingStatus, [6] BiddingQuantity,
[7] BiddingPrice, [8] CreatedDate,
[9] CreatedBy [10] SELECT
[11] _BiddingHeaderId, [12] UserId,
[13] NOW, [14] W,
[15] Quantity, [16] PricePerQuantity,
[17] NOW, [18] UserLogin
[19] ;
Gambar 11 Halaman Riwayat Transaksi Pembeli
Dalam Gambar 11 terlihat daftar transaksi penawaran komoditi yang pernah dan sementara ditawar. Jika waktu dalam satu sesi lelang belum berakhir
maka penawaran terhadap suatu komoditi dapat dibatalkan. Selain itu juga terlihat daftar transaksi pembelian komoditi yang pernah dilakukan.
Pengujian Aplikasi
Berikut ini akan dilakukan pengujian pada aplikasi yang dibuat. Pengujian dilakukan dengan metode black box untuk mengetahui apakah ada kesalahan yang
terjadi pada fungsionalitas aplikasi. Pengujian black box memungkinkan perekayasa perangkat lunak mendapat serangkaian kondisi input yang sepenuhnya
menggunakan semua persyaratan fungsional untuk suatu program. Pengujian black box
bukan merupakan alternatif dari teknik white box, tetapi merupakan pendekatan komplementer yang kemungkinan besar mampu mengungkap kelas
kesalahan daripada metode white box [10]. Pengujian aplikasi pada fungsi penawaran komoditi dapat dilihat pada Tabel 1.
Tabel 1
Pengujian Fungsi Penawaran pada Sistem
Poin Pengujian
Validasi Input
Data Input Hasil
Status
Tambah Penawaran
kuantitas tawar
dikosongkan bukan angka
lebih dari yang tersedia
gagal disimpan gagal disimpan
gagal disimpan berhasil
berhasil berhasil
harga tawar dikosongkan
bukan angka lebih dari deposit
kurang dari harga awal
kurang dari harga tawaran sebelumnya
gagal disimpan gagal disimpan
gagal disimpan gagal disimpan
gagal disimpan berhasil
berhasil berhasil
berhasil
berhasil
Berdasarkan data pengujian pada Tabel 1 menunjukkan fungsi penawaran pada sistem berhasil melewati uji validitas. Hal tersebut berarti masukan dan
keluaran sistem telah sesuai dengan yang diharapkan.
5. Simpulan