rancang bangun sistem informasi penjualan menggunakan ... › bitstream › 123456789...pemilik cafe...

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: others

Post on 06-Feb-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

  • 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].

  • 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].

  • 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

  • 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.

  • 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

  • 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.

  • 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.

  • 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

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

    }

  • 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. }

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

    18. txtCash.setEditable(false); 19. txtCash.setText(""); 20. txtTotal.setText(""); 21. txtKembalian.setText(""); 22. }

  • 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

  • 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 }

  • 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. }

  • 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. }

  • 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

  • 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.

  • 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.