7
1. Pendahuluan
Perkembangan dunia hiburan di Indonesia dapat dikatakan pesat. Hal ini terbukti dengan hadirnya berbagai macam tempat hiburan baik di kota besar maupun di kota yang sedang berkembang. Salah satu tempat hiburan yang cukup populer adalah cafe dan tempat karaoke. Hampir di setiap kota menyediakan tempat hiburan ini, salah satunya adalah di kota Wonosobo di mana terdapat Apple Cafe.
Apple Cafe merupakan salah satu tempat hiburan yang menyediakan cafe sekaligus tempat karaoke bagi para pengunjung. Cafe ini belum lama dibuka, namun memiliki kualitas yang baik, hal ini terbukti dengan ramainya tempat ini dikunjungi para pengunjung. Hampir setiap hari tempat hiburan ini tidak pernah sepi dari para pengunjung, di mana dalam satu hari bisa terjadi hampir 100 transaksi.
Namun, karena tempat hiburan ini belum lama dibuka, tentunya pemanfaatan teknologi informasi belum terlihat. Hal ini dapat dilihat dari proses pencatatan transaksi yang dilakukan oleh kasir. Kasir masih melakukan pencatatan transaksi menggunakan kertas dan melakukan rekap penjualan juga dilakukan dengan kertas dengan bantuan kalkulator. Hal ini sering menimbulkan kesalahan terutama kesalahan perhitungan. Rekap transaksi setiap hari dilakukan secara manual, sehingga memakan waktu dan hasilnya bisa saja tidak valid.
Berdasarkan permasalahan tersebut, dibutuhkan pemanfaatan Teknologi Informasi di Apple Cafe dalam bentuk Sistem Informasi Penjualan untuk melakukan manajemen data di cafe tersebut. Pada penelitian ini dibuat Sistem Informasi Penjualan menggunakan teknologi Hibernate.
Teknologi Hibernate dipilih karena menawarkan cara pemrosesan data dalam basis data dengan baik dibandingkan dengan penggunaan query SQL. Hibernate juga menyediakan Model View Controller di mana aplikasi ini dapat dibagi menjadi 3 (tiga) bagian dalam pengembangannya, yaitu bagian Model untuk penanganan tabel dalam basis data, bagian View untuk penanganan bagian tampilan aplikasi dan bagian
Controller untuk penanganan akes data dalam basis data. MVC digunakan untuk mempermudah dalam membuat aplikasi ini dan pengembangannya di masa yang akan datang. Karena setiap bagian programming ditempatkan berbeda, maka setiap kemungkinan kesalahan yang terjadi dapat ditelusuri dan diselesaikan dengan mudah.
2. Tinjauan Pustaka
Pada penelitian yang berjudul Perancangan Database Sistem Pembelian dan Penjualan pada Konveksi Ira Ratna di Tingkir Salatiga, dibuat basis data dan aplikasi untuk mendukung transaksi pembelian dan penjualan di Konveksi Ira Ratna. Aplikasi ini dibangun berbasis dekstop dan digunakan query SQL untuk melakukan manipulasi data dalam basis data. hasil dari penelitian ini adalah sebuah aplikasi yang terdiri dari form karyawan, form pelanggan, form pemasok, form persediaan,
form pembelian, form penjualan, form piutang, form perhitungan, form filter beli,
8
Pada penelitian dengan judul Implementasi Konsep Object Relational Mapping
dan Model View Controller pada Manajemen Pembelian, Penjualan dan Inventory ( Studi Kasus : TOP Distributor Salatiga ) dilakukan pembuatan Sistem Informasi Manajemen Penjualan dengan memanfaatkan Teknologi Object Relational Mapping
dan MVC [2]. Pada penelitian ini dikembangkan Sistem Informasi Manajemen di Apple Cafe menggunakan teknologi Hibernate dan MVC.
Sistem informasi adalah sekumpulan komponen pembentuk sistem yang mempunyai keterkaitan antara satu komponen dengan komponen lainnya yang bertujuan menghasilkan suatu informasi dalam suatu bidang tertentu yang berfungsi untuk membantu perencanaan, pengendalian, dan pengambilan keputusan dengan menyediakan rangkuman rutin dan laporan tertentu. Sistem informasi mencakup prinsip-prinsip sebagai berikut : mengumpulkan informasi-informasi yang bernilai pada suatu periode tertentu untuk digunakan semaksimal mungkin (berkali-kali), penyimpanan dan pendistribusian data yang dilakukan secara elektronika dan otomatis serta dapat memberikan nilai tambah untuk peningkatan mutu pengambilan keputusan [3].
Sistem Informasi Penjualan adalah suatu sistem informasi yang mengorganisasikan serangkaian prosedur dan metode yang dirancang untuk menghasilkan, menganalisa, menyebarkan dan memperoleh informasi guna mendukung pengambilan keputusan mengenai penjualan. Sistem Informasi Manajemen Penjualan menyediakan laporan ringkas mengenai kegiatan penjualan, memberikan penjelasan secara keseluruhan daripada analisis yang terperinci, sehingga Sistem Informasi Penjualan bertujuan untuk memberikan informasi yang menguntungkan bagi pemakai dengan menyediakan akses yang mudah untuk memperoleh data penjualan yang sangat dibutuhkan untuk merencanakan program penjualan untuk saat ini dan untuk strategi pemasaran di kemudian hari [4].
Hibernate merupakan sebuah tool yang dikembangkan oleh Gavin King sejak tahun 2001. Sekarang framework Hibernate sudah menjadi bagian dari JBoss
Project. Hibernate merupakan sebuah teknologi yang menjadi solusi untuk mengatasi masalah pengaturan data persistent dalam Java. Hibernate menjadi pengatur interaksi antara aplikasi dengan database, sehingga programmer dapat berkonsentrasi dalam mengembangkan logika bisnis aplikasi. Penggunaan hibernate untuk perancangan perangkat lunak sebagai perangkat ORM yang sudah memiliki fitur-fitur terdepan untuk pengaplikasiannya, yaitu Hibernate support berbagai macam database yang sering dipakai dan popular di kalangan pengembang dan perancang perangkat lunak, dengan proses mapping objek Java menjadi struktur tabel database, maka secara otomatis akan mengkonversi tipe data dari Java menjadi tipe data database server/engine yang digunakan. Untuk berkomunikasi dengan database server/engine
tersebut maka Hibernate menyediakan fasilitas connection pooling serta penggunaan
transactionmanagement saat session berlangsung [5].
9
3. Metode dan Perancangan Sistem
Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang terbagi dalam lima tahapan, yaitu: (1) Analisis kebutuhan dan pengumpulan data, (2) Perancangan sistem, (3) Perancangan aplikasi/program, (4) Implementasi dan pengujian sistem, serta analisis hasil pengujian, (5) Penulisan laporan hasil penelitian.
Gambar 1 Metode Penelitian [7]
Tahapan penelitian pada Gambar 1, dapat dijelaskan sebagai berikut. Tahap pertama: analisis kebutuhan dan pengumpulan data, pada tahap ini dilakukan wawancara dengan pemilik dan kasir Apple Cafe.
Tahap kedua: perancangan sistem yang meliputi perancangan proses menggunakan diagram Unified Modelling Language (UML) misalnya perancangan
use case diagram, activity diagram, dan sequence diagram. Perancangan user interface yang dibuat untuk memberikan gambaran dari tampilan aplikasi yang digunakan oleh user aplikasi; Tahap ketiga, perancangan aplikasi/program yaitu merancang aplikasi/program sesuai kebutuhan sistem berdasarkan perancangan sistem yang telah dilakukan. Misalnya bagaimana aplikasi/program berjalan saat penyimpanan data, pengiriman dan pengambilan data transaksi penjualan; Tahap keempat: implementasi dan pengujian sistem, serta analisis hasil pengujian, yaitu mengimplementasikan aplikasi yang sudah dibuat kemudian dilakukan pengujian, selanjutnya melakukan analisis untuk melihat apakah aplikasi yang telah dibuat sudah sesuai dengan yang diharapkan atau tidak ada error, jika belum sesuai maka akan dilakukan perbaikan; dan tahap kelima, penulisan laporan hasil penelitian, yaitu mendokumentasikan proses penelitian yang sudah dilakukan dari tahap awal hingga akhir ke dalam tulisan, yang nantinya akan menjadi laporan hasil penelitian.
Metode Pengembangan Sistem yang digunakan pada penelitian ini adalah metode Prototype. Metode Prototype digunakan untuk membantu pengembangan perangkat lunak dalam membentuk model dari perangkat lunak yang harus dibuat. Metode ini dilakukan secara bertahap, yaitu dengan mengembangkan suatu prototype
yang sederhana terlebih dahulu baru kemudian dikembangkan dari waktu ke waktu sampai perangkat lunak selesai dikembangkan. Prototype merupakan bentuk dasar
Perancangan Sistem meliputi Perancangan Proses (UML), Perancangan Arsitektur, Perancangan Database, Perancangan
Antarmuka
Analisis Kebutuhan dan Pengumpulan Data
Perancangan Aplikasi/Program
Implementasi dan Pengujian Sistem, serta Analisis Hasil Pengujian
10
atau model awal dari suatu sistem atau subsistem [8]. Secara garis besar ada tiga tahap dalam metode prototyping ini, seperti terlihat pada Gambar 2.
Gambar 2 Metode Prototyping[8]
Tahap awal dari metode ini adalah analisis permasalahan dan kebutuhan, yaitu mengumpulkan kebutuhan dari sistem yang akan dibuat, dengan perencanaan yang cepat akan dibentuk konstruksi dari prototype-nya. Prototype ini akan dievaluasi lagi dan hasilnya digunakan untuk mengelola kembali kebutuhan dari perangkat lunak yang dikembangkan. Pada tahap ini yang dilakukan adalah merancang kebutuhan yang nantinya akan berguna untuk membangun aplikasi.
Berdasarkan analisis kebutuhan yang dilakukan melalui wawancara awal kepada pada pemilik cafe dan kasir, dirancanglah kebutuhan user sebagai berikut: 1) Pemilik Cafe dapat melakukan menajemen data bahan baku cafe, 2) Pemilik cafe dapat melakukan manajemen data menu makanan dan minuman, 3) Pemilik cafe dapat melakukan manajemen data lagu, 4) Pemilik cafe dapat melihat pandapatan cafe, dan 5) Kasir dapat mencatat transaksi pembelian. Berdasarkan analisis kebutuhan ini, kemudian dilakukan perancangan aplikasi.
Hardware dan software yang akan digunakan dalam membangun sistem ini memiliki spesifikasi: 1) CPU Intel Core i3-2350M, 2.3Ghz, memory RAM 2 GB; 2)
Software Netbeans 7.1 digunakan sebagai editor pemrograman aplikasi; dan 3) Basis data MySQL 5 digunakan untuk menyimpan data.
11
Tambah Menu Ganti Menu
Hapus Menu Lihat Menu
Manajemen Menu
Manager Karaoke
Manajemen Data Lagu Manager Cafe
Manajemen Bahan Baku Lihat Bahan Baku Tambah Bahan Baku
Hapus Bahan Baku Ganti Bahan Baku
Manajemen Data User
Kasir Proses Transaksi Lihat User
Tambah User
Hapus User Ganti User
Lihat Lagu
Tambah Lagu Hapus Lagu Ganti Lagu
Pemilik Cafe lihat laporan pendapatan
Gambar 3 Use Case Diagram Sistem Informasi Karaoke
Gambar 3 menggambarkan use case diagram pada sistem yang dibangun, di mana terdapat 4 (empat) aktor yang terlibat, yaitu pemilik cafe, manager cafe, manager karaoke dan kasir. Setiap aktor memiliki use case-nya masing-masing sesuai dengan peranannya dalam proses bisnis yang ada di Apple Cafe. Aktor pemilik café mempunyai hak yang paling tinggi sehingga dapat menjalankan seluruh fitur pada aplikasi kecuali fitur transaksi karena hanya dapat dilakukan oleh kasir.
mulai
selesai
login
login gagal
manajemen user
manajemen bahan baku
manajemen data lagu
manajemen menu
log out melihat pendapatan
login berhasil Sistem Informasi Cafe dan Karaoke Pemilik Cafe
Gambar 4 Activity Diagram Pemilik Cafe
12
dapat melakukan berbagai aktivitas yang disediakan oleh aplikasi melalui fitur-fiturnya. Aktivitas yang dapat dilakukan adalah melakukan manajemen user, manajemen bahan baku, manajemen data lagu, manajemen menu makanan dan melihat laporan pendapatan cafe. Aktivitas ini berakhir setelah pemilik toko melakukan log out dari aplikasi.
mulai
selesai
login
memproses transaksi
log out
login gagal
login berhasil
Sistem Informasi Cafe dan Karaoke Kasir
Gambar 5 Activity Diagram Kasir
Gambar 5 menggambarkan activity diagram kasir, di mana menunjukkan aktivitas apa saja yang dapat dilakukan oleh kasir. Aktivitas ini dimulai dengan melakukan login ke dalam aplikasi. Jika login berhasil, maka kasir dapat melakukan aktivitasnya, yaitu memproses transaksi pembayaran dari para pengunjung cafe. Aktivitas berakhir setelah kasir melakukan logout dari aplikasi.
: Pemilik Cafe PendapatanForm Pendapatan Controller tbtransaksi
1: input tanggal
2: kirim tanggal
3: meminta data transaksi
4: mengembalikan data transaksi
5: menampilkan data transaksi
Gambar 6 Sequence Diagram Lihat Pendapatan Cafe
13
: Manager Cafe Form Menu Menu Controller tbmenu
1: input menu(kode_menu, jenis, nama, satuan, harga,
keterangan) data(kode_menu, 2: kirim jenis, nama,
satuan, har... 3: simpan data (kode_menu, jenis, nama, satuan, harga,
keterangan)
4: kirim konfirmasi
5: menampilkan konfirmasi
Gambar 7 Sequence Diagram Tambah Menu
Gambar 7 adalah sequence diagram manager cafe dalam melakukan tambah daftar menu pada aplikasi. Data menu yang akan ditambahkan dimasukkan melalui
form tambah dan akan disimpan ke dalam tabel menu dalam basis data.
: Kasir Form Transaksi Transaksi Controller
tbtransaksi
1: input transaksi(kode, tanggal, kode_menu, jumlah, total)
2: kirim data(kode, tanggal, kode_menu, jumlah, total)
3: simpan data(kode, tanggal, kode_menu, jumlah, total)
4: kirim konfirmasi
5: menampilkan konfirmasi
Gambar 8 Sequence Diagram Transaksi Pembayaran
14
Gambar 9 Class Diagram Aplikasi
Class diagram pada Gambar 12 menggambarkan class-class yang digunakan dalam aplikasi, di mana terbagi menjadi 3 (tiga) bagian utama yaitu model, controller
(DAO) dan form (user interface).
4. Hasil dan Pembahasan
Pada bagian ini akan dibahas tentang hasil aplikasi berdasarkan perancangan pada bab sebelumnya beserta dengan pembahasannya. Pada bagian ini juga dijelaskan tentang hasil pengujian sistem yang telah dilakukan. Tampilan awal aplikasi saat dijalankan adalah tampilan halaman untuk login. Ada 4 (empat) hak akses pada aplikasi ini, yaitu sebagai pemilik cafe, manager cafe, manager karaoke dan kasir. Halaman login terlihat pada Gambar 10.
15
Untuk masuk ke dalam aplikasi, user harus melakukan login dengan memasukkan username dan password sesuai dengan hak aksesnya. Kode program untuk memeriksa login dapat dilihat pada Kode Program 1.
Kode Program 1 Perintah Pengecekkan Login
Baris 1 pada Kode Program 1 berfungsi untuk memanggil controller
cekLogin(), pada fungsi ini akan diperiksa apakah username dan password yang dimasukkan user valid atau tidak. Jika valid, maka user akan dapat masuk ke dalam aplikasi sesuai dengan hak aksesnya.
Menu manajemen menu makanan dan minuman dapat diakses oleh user
manager cafe dan pemilik cafe. Menu ini berfungsi untuk melakukan pengelolaan terhadap menu makanan dan minuman yang disediakan oleh Apple Cafe. Daftar menu ini akan digunakan oleh user kasir dalam melakukan proses pembayaran oleh pengunjung cafe. Tampilan utama menu ini dapat dilihat pada Gambar 11.
Gambar 11 Menu Manajemen Menu Makanan dan Minuman
Menu manajemen menu makanan dan minuman pada Gambar 11 dapat digunakan untuk melihat, menambah, mengubah dan menghapus daftar menu makanan dan minuman yang disajikan oleh Apple Cafe. Gambar 15 merupakan form untuk menambah menu.
1. boolean ada = cekLogin(txUsername.getText(),
txPassword.getText());
2. if (ada) {
3. mf.loogedIn(current_user);
4. this.dispose();
5. } else {
6. JOptionPane.showMessageDialog(this, "Login Gagal!!",
"Konfirmasi", JOptionPane.ERROR_MESSAGE); txUsername.setText("");
16
Gambar 12 Form untuk Tambah Menu
Untuk melakukan tambah menu dan menyimpannya ke dalam basis data, digunakan perintah Kode Program 2.
Kode Program 2 Perintah Menampilkan Daftar Menu
Kode Program 2 merupakan perintah pada bagian DAO aplikasi yang digunakan untuk melakukan perintah insert data ke dalam basis data. Perintah insert
data tersebut dilakukan dengan memanfaatkan perintah insert pada Hibernate yaitu seperti terlihat pada baris 4. Dengan cara ini, programmer tidak perlu menuliskan
query SQL untuk melakukan insert data ke dalam basis data.
Menu manajemen transaksi pembayaran digunakan oleh user kasir cafe untuk memproses pembayaran oleh pengunjung cafe. Tampilan utama menu ini diperlihatkan oleh Gambar 13.
Gambar 13 Menu Transaksi
1. public String insertMenu(Menu menu) {
2. boolean isSuccess = false;
3. session.getTransaction().begin();
4. session.save(menu);
5. session.getTransaction().commit();
6. return sendNotif(isSuccess);
17
Menu transaksi pembayaran pada Gambar 13 digunakan untuk memproses pembayaran oleh pengunjung cafe. Untuk memproses pembayaran, kasir memasukkan menu yang dibeli oleh pengunjung melalui combo box yang menyajikan daftar menu yang disajikan. Setelah itu kasir akan memasukkan nominal uang yang dibayarkan oleh pengunjung dan terakhir kasir menekan tombol Bayar, data pembayaran akan disimpan dalam tabel transaksi dalam basis data. Kode Program 3 digunakan untuk menyimpan data pembayaran ini.
Kode Program 3 Perintah Menyimpan Data Pembayaran
Kode Program 3 dipanggil saat kasir menekan tombol bayar untuk memproses transaksi pembayaran oleh pembeli. Selanjutnya sistem akan menampilkan Gambar 14.
1. double byr = Double.parseDouble(txtCash.getText());
2. double kembali = byr - total;
3. txtKembalian.setText(df.format(kembali) + "");
4. t.setKode_transaksi(txtNoNota.getText());
5. t.setTanggal(jDateChooserTransk.getDate());
6. t.setTotal(total);
7. t.setKasir(kasirnya);
8. for (DetailTransaksi dt : list_detail_transaksi) {
9. dt.setKode_transaksi(t);
10. }
11. t.setDetail_transaksi(list_detail_transaksi);
12. String status = new
TransaksiDAO().insertTransaksi(t);
13. if (status.equalsIgnoreCase("BERHASIL")) {
JOptionPane.showMessageDialog(this, "Transaksi Berhasil Disimpan\n"
+ ":: Total Harga: Rp. " + df.format(total) + "\n:: Total Bayar: Rp. " + df.format(byr)
+ "\n:: Kembali: Rp. " +
df.format(kembali), "Konfirmasi", JOptionPane.INFORMATION_MESSAGE);
14. setNota();
15. hapusTabel();
16. list_detail_transaksi.clear();
17. list_detail_transaksi = new
ArrayList<DetailTransaksi>();
18. txtCash.setEditable(false);
19. txtCash.setText(""); 20. txtTotal.setText(""); 21. txtKembalian.setText("");
18
Gambar 17 Rincian Transaksi
Sistem akan menampilkan rincian transaksi yang meliputi informasi total harga, total bayar dan uang kembali. Setelah itu, data akan disimpan dalam basis data sebagai data transaksi pembelian dari pengunjung.
User pemilik cafe dapat menggunakan menu ini untuk menampilkan pendapatan cafe. Tampilan utama menu ini terlihat pada Gambar 18.
Gambar 14 Laporan Pendapatan Cafe
19
tabel pada Gambar 14. Kode Program 4 digunakan untuk menampilkan data pendapatan antara tanggal awal dan tanggal akhir.
User dapat melakukan cetak laporan pendapatan dengan menekan tombol cetak dan akan muncuk laporan pendapatan pada Gambar 15 yang kemudian dapat disimpan dalam format .PDF.
Gambar 15 Laporan Pendapatan Cafe
Penerapan Hibernate sebagai salah satu framework dengan pendekatan Object Relational Mapping ini berfungsi untuk memudahkan programmer dalam memetakan tabel-tabel yang digunakan dalam aplikasi pada database relasional. Penelitian yang dibangun menggunakan konsep Hibernate bukan proses pengolah basis data yang konvensional yang menggunakan JDBC API, dimana seluruh query
akan dibentuk dan dikirimkan dari script. Terdapat beberapa perbandingan yang dilakukan antara penggunaan ORM Hibernate dengan JDBC API sehingga nantinya akan didapatkan sebuah kesimpulan mengenai performa dari Hibernate sendiri.
Tahap pengkodean yang dilakukan dengan ORM Hibernate membuktikan bahwa penerapannya mereduksi banyak baris program dibandingkan dengan penggunaan script pada JDBC. Salah satu alasannya adalah dikarenakan pada Hibernate menggunakan parameter dalam bentuk object yang merujuk ke setiap fungsi model yang terdapat pada aplikasi. Sehingga penggunaan satu untuk semua dapat diimplementasi pada ORM Hibernate, dibanding JDBC harus memecah isi
model untuk dimasukan menjadi parameter pada prepare statement. Sebagai salah satu contoh perbandingan antara Hibernate dan JDBC dalam hal penambahan data pada script Kode Program 4 dan Kode Program 5.
Kode Program 4 Perintah Simpan Data dengan Hibernate
1 public String insertMenu(Menu menu) {
2 boolean isSuccess = false;
3 session.getTransaction().begin();
4 session.save(menu);
5 session.getTransaction().commit();
6 return sendNotif(isSuccess);
20
Kode Program 5 Perintah Simpan Data dengan JDBC
Tahap perancangan tabel pada database sudah secara langsung dipetakan pada langkah pengkodean setiap kelas model atau entitas menggunakan fungsi annotations
sedangkan JDBC membuat desain tabel data serta pemetaannya melalui database application. Dengan keunggulan yang dimiliki Hibernate, proses development
aplikasi akan lebih singkat dan mudah dibandingkan dengan menggunakan konsep JDBC.
Gambar 16 Implementasi MVC
Gambar 16 merupakan implementasi MVC pada aplikasi yang dibuat. Aplikasi dibuat dengan menerapkan arsitektur Model View Controller. Pada Gambar 20 terlihat implementasi MVC pada aplikasi. Aplikasi dibagi menjadi beberapa bagian, yaitu bagian Model, View dan Controller. Berikut ini akan diberikan contoh implementasi MVC dalam aplikasi, yaitu pada proses tambah menu baru. Pertama kali, akan dilakukan pemanggilan bagian view untuk mengisi menu yang akan ditambahkan. View tambah menu ditunjukkan pada Gambar 17.
1. public String insertMenu(Menu m) {
2. String status = "Gagal";
3. try {
4. PreparedStatement stm =
connection.prepareStatement("INSERT INTO tb_menu VALUE(?,?,?,?,?)");
5. stm.setString(1, m.getKode_menu());
6. stm.setString(2, m.getJenis_menu());
7. stm.setString(3, m.getNama_menu());
8. stm.setInt(4, m.getHarga_menu());
9. stm.setString(5, m.getKeterangan());
10. stm.executeUpdate();
11. status = "Menu Baru Berhasil Disimpan";
12. } catch (Exception ex) {
13.
Logger.getLogger(MenuDAO.class.getName()).log(Level.SEVERE, null, ex);
14. }
15. return status;
21
Gambar 17 View Tambah Menu
Pengguna akan mengetikkan menu yang akan ditambah pada Gambar 17 dan menekan tombol Simpan. Pada tombol simpan terdapat perintah untuk melakukan simpan data ke dalam tabel menu dalam basis data. Perintah ini ditunjukkan oleh Kode Program 6.
Kode Program 6 Perintah Pada Tombol Simpan
Pada baris 1 pada Kode Program 6, dilakukan pembuatan obyek baru dari kelas
model Menu yang di dalam kelas model Menu terdapat atribut-atribut yang mewakili nama field dalam tabel menu pada basis data. pada baris 7 dilakukan memanggilan method insertMenu yang terdapat pada bagian kelas controller MenuDAO.java. Method insertMenu terlihat pada Kode Program 7.
Kode Program 7 Perintah Method insertMenu
Kode Program 7 merupakan perintah pada method insertMenu pada bagian
controller MenuDAO.java. pada method ini dilakukan proses insert data menu ke dalam tabel menu dalam basis data. proses insert dilakukan pada baris 4, yaitu dengan memanggil methodsave.
Pengujian sistem dilakukan dengan 2 (dua) cara, yaitu pengujian blackbox
untuk menguji fungsionalitas aplikasi dan pengujian manfaat untuk mengetahui manfaat aplikasi kepada para pengguna aplikasi. Hasil pengujian blackbox
ditunjukkan pada Tabel 1.
1. Menu br = new Menu();
2. br.setKode_menu(txtKodeMenu.getText());
3. br.setJenis_menu(cmbJenisMenu.getSelectedItem().toString());
4. br.setNama_menu(txtNamaMenu.getText());
5. br.setKeterangan(jTextAreaKeterangan.getText());
6. br.setHarga_menu(Double.parseDouble(txtHargaMenu.getText()));
7. String status = mDAO.insertMenu(br);
1. public String insertMenu(Menu menu) {
2. boolean isSuccess = false;
3. session.getTransaction().begin();
4. session.save(menu);
5. session.getTransaction().commit();
6. return sendNotif(isSuccess);
22
Tabel 1 Hasil Pengujian Blackbox Testing
No. Poin Pengujian Data Input / Kondisi Hasil Uji Status
1 Proses Login
Username: benar
Password: benar
Berhasil login valid
Username: benar
Password: salah
Login gagal valid
Username: salah
Password: salah
Login gagal valid
2 Proses Tambah
Transaksi
Semua field diisi
dengan lengkap
Berhasil
disimpan
dalam basis
data
valid
Ada beberapa field
yang tidak diisi dengan
lengkap
Gagal
Disimpan
dalam basis
data
valid
3 Proses Tambah
Menu
Semua field diisi
dengan lengkap
Berhasil
disimpan
dalam basis
data
valid
Ada beberapa field
yang tidak diisi dengan
lengkap
Gagal
Disimpan
dalam tabel
dalam basis
data valid 4 Proses Lihat Laporan Pendapatan
Tidak Memasukkan
tanggal awal dan akhir
Laporan
pendapatan
tidak bisa
muncul
valid
Memasukkan tanggal
awal dan akhir
Laporan
pendapatan
muncul
valid
5 Tambah Data
Bahan Baku
Semua field diisi
dengan lengkap
Berhasil
disimpan
dalam basis
data
valid
23
yang tidak diisi dengan
lengkap
Disimpan
dalam basis
data
6 Tambah Data
User
Semua field diisi
dengan lengkap
Berhasil
disimpan
dalam basis
data
valid
Ada beberapa field
yang tidak diisi dengan
lengkap
Gagal
Disimpan
dalam basis
data
valid
Berdasarkan hasil pengujian blackbox pada Tabel 1, maka dapat disimpulkan bahwa aplikasi sudah berjalan sesuai dengan yang dirancang dan bisa dilanjutkan ke pengujian manfaat. Pengujian manfaat dilakukan dengan mendemokan aplikasi kepada pengguna aplikasi, yaitu kepada pemilik cafe dan kasir. Berdasarkan demo aplikasi dan tanya jawab didapatkan bahwa aplikasi ini sesuai yang diharapkan oleh pemilik cafe dan kasir. Aplikasi membantu pemilik cafe dalam melakukan manajemen data cafe, selain itu kasir merasa terbantu dalam hal pencatatan transaksi pembayaran dari pengunjung.
5. Simpulan
Berdasarkan penelitian yang telah dilakukan, dapat disimpulkan bahwa Sistem Informasi Penjualan pada Apple Cafe dapat membantu kasir dalam melakukan pencatatan transaksi yang terjadi. Transaksi disimpan dalam basis data sehingga dapat dilakukan rekap transaksi dengan baik. Pemilik cafe juga dapat melihat dan mencetak hasil pendapatan cafe melalui aplikasi ini.
Penerapan arsitektur MVC memudahkan programmer dalam maintenance
aplikasi secara keseluruhan karena adanya pemisahan object-object ke dalam
package model, view dan controller pada aplikasi. Serta konsentrasi penanganan grafis terfokus tanpa melihat lebih detail bagian yang lainnya dan pengembangan logika bisnis aplikasi dapat terfokus di bagian controller aplikasi. Sedangkan peran
24
6. Pustaka
[1] Sari, Retno Purnomo, 2012, Perancangan Database Sistem Pembelian dan Penjualan pada Konveksi Ira Ratna di Tingkir Salatiga, Salatiga: Program Studi Akuntansi FEB Universitas Kristen Satya Wacana.
[2] Djunanto, Randy, 2011, Implementasi Konsep Object Relational Mapping dan
Model View Controller pada Manajemen Pembelian, Penjualan dan Inventory ( Studi Kasus : TOP Distributor Salatiga ), Salatiga: FTI UKSW.
[3] Jogiyanto, Ph.D, 2003, Sistem Teknologi Informasi. Yogyakarta.
[4] Mulyadi, 2001, Sistem Akuntansi, Edisi Ketiga, Yogyakarta : Salemba Empat.
[5] Minter, Dave., & Linwood, Jeff., 2006, Beginning Hibernate:From Novice to Professional, USA : Apress Inc.
[6] Elliott, James; O'Brien, Tim (April 22, 2008), Harnessing Hibernate (First ed.), O'Reilly Media, pp. 380, ISBN 0596517726.
[7] Hasibuan, Zainal, A., 2007, “Metodologi Penelitian Pada Bidang Ilmu Komputer Dan Teknologi Informasi : Konsep, Teknik, dan Aplikasi”, Jakarta :
Ilmu Komputer Universitas Indonesia.