rancang bangun sistem informasi penjualan menggunakan...

18
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, form filter jual dan form filter piutang. Selanjutnya untuk report yang dibutuhkan terdiri dari, daftar karyawan, daftar pelanggan, daftar pemasok, laporan pembelian, laporan penjualan, laporan piutang, laporan rekap persediaan dan laporan rekap kas [1].

Upload: vananh

Post on 15-Mar-2019

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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,

form filter jual dan form filter piutang. Selanjutnya untuk report yang dibutuhkan

terdiri dari, daftar karyawan, daftar pelanggan, daftar pemasok, laporan pembelian,

laporan penjualan, laporan piutang, laporan rekap persediaan dan laporan rekap kas

[1].

Page 2: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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

transaction management saat session berlangsung [5].

Pola desain yang dikembangkan untuk mengatasi dan memecahkan masalah

yang dihadapi dalam perkembangan perangkat lunak salah satu di antaranya adalah

MVC (Model View Controller). Pola ini digambarkan dalam arsitektur yang

sederhana yang disertai ilustrasi langkah-langkah saat dimana client atau pengguna

mengakses aplikasi [6].

Page 3: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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

Penulisan Laporan Hasil Penelitian

Page 4: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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.

Perancangan proses pada penelitian ini dilakukan menggunakan UML (Unified

Modeling Language) dengan beberapa proses, dijelaskan sebagai berikut. Use case

diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem, yang

menjelaskan keseluruhan kerja sistem secara garis besar dengan merepresentasikan

interaksi antara aktor dengan sistem yang dibuat, serta memberikan gambaran fungsi-

fungsi yang diberikan sistem kepada user.

Page 5: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

11

Tambah Menu Ganti Menu

Hapus Menu

Lihat Menu

Manajemen Menu

Manager Karaoke

Manajemen Data Lagu

Manager Cafe

Manajemen Bahan Baku

Lihat Bahan BakuTambah Bahan Baku

Hapus Bahan BakuGanti Bahan Baku

Manajemen Data User

KasirProses Transaksi

Lihat User

Tambah UserHapus User Ganti User

Lihat Lagu

Tambah LaguHapus 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

usermanajemen

bahan baku

manajemen

data lagu

manajemen

menu

log out

melihat

pendapatan

login berhasil

Sistem Informasi Cafe dan KaraokePemilik Cafe

Gambar 4 Activity Diagram Pemilik Cafe

Gambar 4 menggambarkan activity diagram pemilik cafe, di mana

menunjukkan aktivitas apa saja yang dapat dilakukan oleh pemilik cafe. Aktivitas

dimulai dengan melakukan login ke aplikasi, jika login berhasil maka pemilik toko

Page 6: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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 KaraokeKasir

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 log out dari aplikasi.

: Pemilik CafeForm

Pendapatan

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

Gambar 6 menggambarkan sequence diagram pemilik toko dalam melihat

pendapatan cafe. Untuk melihat pendapatan café, pemilik toko harus memasukkan

tanggal awal dan tanggal akhir periode yang akan dilihat pendapatannya. Setelah itu

aplikasi akan memproses dengan mengambil data tersebut dari tabel pendapatan.

Page 7: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

13

: Manager CafeForm Menu Menu Controller tbmenu

1: input menu(kode_menu,

jenis, nama, satuan, harga,

keterangan)2: kirim

data(kode_menu,

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

Gambar 8 merupakan sequence diagram dalam melakukan transaksi

pembayaran. Kasir memasukkan data transaksi pembayaran melalui form transaksi

dan data ini akan disimpan ke dalam tabel transaksi dalam basis data.

Page 8: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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.

Gambar 10 Halaman Login

Page 9: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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("");

txPassword.setText("");

}

Page 10: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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);

7. }

Page 11: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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("");

22. }

Page 12: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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

User pemilik cafe memasukkan tanggal awal dan tanggal akhir untuk

menampilkan pendapatan pada tanggal tersebut. Hasilnya akan ditampilkan pada

Page 13: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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);

7 }

Page 14: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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;

16. }

Page 15: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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 method save.

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);

7. }

Page 16: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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

Ada beberapa field Gagal valid

Page 17: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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

Framework Hibernate mempermudah programmer dalam pembuatan tabel yang

digunakan secara otomatis karena pembuatan tabel, kolom dan relasi antar tabel

sudah dibuat langsung dari penggunaan model atau entitas pada aplikasi. Saran

pengembangan yang dapat dilakukan adalah dengan mengembangkan aplikasi

hingga dapat terkoneksi dengan sistem karaoke yang sudah ada sebelumnya dan

terdapat fitur pembuatan laporan keuangan dengan lengkap.

Page 18: Rancang Bangun Sistem Informasi Penjualan Menggunakan ...repository.uksw.edu/bitstream/123456789/8555/3/T1_672006032_Full...terbukti dengan hadirnya berbagai macam tempat hiburan baik

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.

[8] Pressman, Roger, 2002, Rekayasa Perangkat Lunak: Pendekatan Praktisi

(Buku Satu), Yogyakarta: Penerbit ANDI dan McGraw-Hill Book Co.