bab iii pembahasan - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan...

46
BAB III PEMBAHASAN 3.1. Tinjauan Perusahaan Apotek Balonggandu Karawang merupakan sebuah usaha yang bergerak dibidang kesehatan. yang menjual obat-obatan yang baik, terjamin dan jelas suppliernya. Pencatatan akuntansi yang dilakukan oleh Apotek Balonggandu Karawang ini masih terbilang manual, karna pembuatan laporan hanya menggunakan pencatatan di buku saja yang akan menimbulkan banyak kesalahan-kesalahan. Karena itu diperlukannya sistem informasi yang baru untuk membantu dan memberi solusi terhadap masalah-masalah yang ada dalam penjualan di Apotek tersebut. Dengan menyarankan adanya pembuatan Sistem Informasi Penjualan Apotek dengan menggunakan sistem komputerisasi pemrograman berbasis Dekstop. 3.1.1. Sejarah Perusahaan Apotek Balonggandu merupakan usaha yang bergerak dalam bidang pelayanan masyarakat, menjual obat-obatan yang kualitasnya terjamin. Apotek Balonggandu Karawang selain melayani masyarakat umum, Apotek ini juga menjadi pemasok obat untuk tenaga bidan dan klinik. Apotek ini berdiri pada tanggal 26 April 2011 yang dimiliki oleh Bapak Ence Syarif Hidayat. Apotek Balonggandu Karawang ini beralamat di Jalan Perumahan Bumi Cikampek Baru, Jatisari, Karawang. Pada saat ini Apotek Balonggandu Karawang mempunyai 4 orang karyawan dan mempunyai seorang apoteker sebagai penanggung jawab apotek tersebut. Apotek ini pernah membuka cabang di Perumahan Ekamas tetapi tidak berlangsung lama dikarenakan tempat nya yang kurang strategis.

Upload: others

Post on 07-Nov-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

BAB III

PEMBAHASAN

3.1. Tinjauan Perusahaan

Apotek Balonggandu Karawang merupakan sebuah usaha yang bergerak

dibidang kesehatan. yang menjual obat-obatan yang baik, terjamin dan jelas

suppliernya. Pencatatan akuntansi yang dilakukan oleh Apotek Balonggandu

Karawang ini masih terbilang manual, karna pembuatan laporan hanya menggunakan

pencatatan di buku saja yang akan menimbulkan banyak kesalahan-kesalahan.

Karena itu diperlukannya sistem informasi yang baru untuk membantu dan memberi

solusi terhadap masalah-masalah yang ada dalam penjualan di Apotek tersebut.

Dengan menyarankan adanya pembuatan Sistem Informasi Penjualan Apotek dengan

menggunakan sistem komputerisasi pemrograman berbasis Dekstop.

3.1.1. Sejarah Perusahaan

Apotek Balonggandu merupakan usaha yang bergerak dalam bidang

pelayanan masyarakat, menjual obat-obatan yang kualitasnya terjamin. Apotek

Balonggandu Karawang selain melayani masyarakat umum, Apotek ini juga menjadi

pemasok obat untuk tenaga bidan dan klinik. Apotek ini berdiri pada tanggal 26

April 2011 yang dimiliki oleh Bapak Ence Syarif Hidayat. Apotek Balonggandu

Karawang ini beralamat di Jalan Perumahan Bumi Cikampek Baru, Jatisari,

Karawang. Pada saat ini Apotek Balonggandu Karawang mempunyai 4 orang

karyawan dan mempunyai seorang apoteker sebagai penanggung jawab apotek

tersebut. Apotek ini pernah membuka cabang di Perumahan Ekamas tetapi tidak

berlangsung lama dikarenakan tempat nya yang kurang strategis.

Page 2: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Apotek Balonggandu Karawang telah memiliki SIPA (Surat Izin Praktek

Apoteker) dengan nomor 503/PPI/108.SIPA/X/2013, dan SIA (Surat Izin Apotek)

bernomor 445.9/2179/Apt/Diskes/2013 sesuai dengan keputusan MenKes RI No.

503/11374/IPA.B/73/BPMPT/2013.

3.1.2. Struktur Organisasi dan Fungsi

Apoteker

Asisten ApotekerKasir

Pemilik Sarana Apotik

(PSA)

Sumber: Apotek Balonggandu Karawang (2019)

Gambar III.1

Struktur Organisasi

Tugas dan Wewenang :

1. Pemilik Sarana Apotek (PSA)

a. Sebagai pemilik dari Apotek.

b. Menanggung semua modal pendirian Apotek.

c. Mengawasi kegiatan Apotek secara keseluruhan.

d. Mengontrol keuangan Apotek.

Page 3: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

2. Apoteker

a. Sebagai penaggung jawab kegiatan harian di apotek.

b. Menata Apotek sedemikian rupa sehingga berkesan bahwa Apotek

menyediakan berbagai obat dan perbekalan kesehatan lain secara lengkap.

c. Memimpin seluruh kegiatan apotek, baik kegiatan teknis maupun non teknis

kefarmasian sesuai dengan ketentuan maupun perundangan yang berlaku.

d. Mengatur, melaksanakan dan mengawasi administrasi.

e. Mengusahakan agar apotek yang dipimpinnya dapat memberikan hasil yang

optimal sesuai dengan rencana kerja dengan cara meningkatkan omset,

mengadakan pembelian yang sah dan penekanan biaya serendah mungkin.

f. Melakukan pengembangan usaha apotek.

g. Meracik Obat

3. Kasir

a. Sebagai customer service dan mengelola proses pembayaran.

b. Bertanggung jawab atas transaksi penjualan obat

4. Asisten Apoteker

a. Bertugas dalam mengecek persediaan obat.

b. Memberikan informasi pemakaian obat.

3.2. Tinjauan Kasus

Permasalahan yang dihadapi Apotek Balonggandu Karawang ini adalah

masalah pengolahan informasi penjualan obat yang masih menggunakan sistem

manual, belum dilakukan sistem komputerisasi. Penulis membatasi hanya pada

penjualan tunai yang mencakup mulai dari penerimaan resep, pencarian atau

pengecekan obat, pembayaran, dan juga pembuatan laporan penjualan.

Page 4: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.2.1. Proses Bisnis Sistem Berjalan

Prosedur Sistem Informasi Penjualan Obat Pada Apotek Balonggandu

adalah seperti berikut:

Konsumen datang ke apotek lalu memberikan resep kepada asisten

apoteker. asisten apoteker menerima resep lalu mengecek ketersediaan obat dalam

daftar obat, apabila obat yang diminta tidak tersedia, maka resep obat tesebut akan

dikembalikan lagi kepada konsumen. Apabila obat yang diminta tersedia asisten

apoteker segera meyediakan obat sesuai dengan data permintaan obat dari konsumen.

Kemudian jika konsumen tidak membawa resep obat, konsumen hanya menyebutkan

permintaan obat tersebut kepada asisten apoteker lalu obat akan dicek terlebih

dahulu. Asisten apoteker menyediakan obat yang akan diracik oleh apoteker lalu obat

dikemas. Kemudian apoteker memberikan obat kepada asisten apoteker, asisten

apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada

kasir.

Lalu, Bagian kasir akan menghitung harga obat dengan melihat daftar

harga obat terlebih dahulu kemudian dihitung secara manual menggunakan

kalkulator dan membuatkan nota dua rangkap. Kemudian kasir akan menjelaskan

aturan pakai obat kepada konsumen lalu konsumen akan membayar obat tersebut dan

diberi nota. Nota rangkap akan disimpan sebagai laporan penjualan. Setiap akhir jam

kerja kasir akan merekap nota penjualan obat dibuku laporan penjualan dan arsip

akan disimpan. Lalu pemilik akan melihat buku laporan transaksi penjualan disetiap

akhir jam kerja untuk mengetahui transaksi penjualan obat dan ketersediaan obat di

Apotek Balonggandu ini.

Page 5: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.2.2. Activity Diagram

Activity Diagram Proses Penjualan Obat

Gambar III.2

Activity Diagram Penjualan Obat

Page 6: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.2.3. Dokumen Masukan

1. Resep Obat

Fungsi : Sebagai surat pemesanan obat

Sumber : Konsumen

Tujuan : Asisten Apoteker

Media : Kertas

Jumlah : Satu Lembar

Frekuensi : Setiap membeli obat

Lampiran : A1

2. Daftar Harga Obat

Fungsi : Sebagai daftar harga obat

Sumber : Pemilik

Tujuan : Kasir

Media : Kertas

Jumlah : Satu Buku

Frekuensi : Setiap melakukan perubahan harga obat

Lampiran : A2

3. Buku Catatan Penjualan

Fungsi : Sebagai Catatan Transaksi Penjualan

Sumber : Kasir

Tujuan : Arsip

Media : Kertas

Jumlah : Satu Buku

Frekuensi : Setiap melakukan pencatatan penjualan

Lampiran : A3

Page 7: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.2.4. Dokumen Keluaran

1. Nota Pembelian

Fungsi : Sebagai surat penjualan obat

Sumber : Kasir

Tujuan : Konsumen

Media : Kertas

Jumlah : Satu Lembar

Frekuensi : Setiap Pembelian Obat

Lampiran : B1

2. Buku Catatan Penjualan

Fungsi : Sebagai Catatan Transaksi Penjualan

Sumber : Kasir

Tujuan : Pemilik

Media : Kertas

Jumlah : Satu Buku

Frekuensi : Setiap melakukan pencatatan penjualan

Lampiran : B2

3.2.5. Permasalahan Pokok

Berdasarkan analisa yang dilakukan terhadap sistem yang berjalan pada

Apotek Balonggandu saat ini, maka didapatkan beberapa permasalahan diantaranya

sebagai berikut:

1. Bagian Apoteker masih harus melihat persediaan obat secara manual dan dalam

pencarian obat masih dilakukan dengan mencari satu persatu obat yang tersedia di

Page 8: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

catatan daftar obat karena belum ada daftar obat yang cukup baik. Jadi akan

memakan waktu yang cukup lama.

2. Perhitungan harga obat masih dilakukan secara manual yaitu menggunakan

kalkulator dimana prosesnya harus menjumlahkan satu persatu harga obat yang

harus dibayarkan oleh konsumen.

3. Belum memiliki laporan yang cukup baik karena pemilik hanya melihat dari buku

catatan saja, padahal itu bisa terjadi kesalahan dan ketidaksesuaian dengan harga

obat.

3.2.6. Pemecahan Masalah

Dengan melihat permasalahan yang ada pada system berjalan, maka untuk

mengatasi permasalahan tersebut kami memberikan alternatif pemecahan masalah

yaitu:

1. Membuat sebuah rancangan program berbasis desktop agar dapat memudahkan

dalam proses penjualan di Apotek Balonggandu Karawang ini.

2. Dalam penjualannya akan lebih cepat dan perhitungannya lebih akurat sehingga

mengahasilkan suatu informasi yang benar.

3. Penyimpanan data dan dalam laporan penjualannya akan lebih baik sehingga

tidak akan ada manipulasi data.

3.3. Analisis Kebutuhan Software

Kebutuhan perangkat lunak adalah kondisi, kriteria syarat atau kemampuan

yang harus dimiliki oleh perangkat lunak untuk memenuhi apa yang disyaratkan atau

yang diinginkan pemakai.

Page 9: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.3.1. Analisis Kebutuhan

Berdasarkan penjelasan dari bab sebelumnya serta mempelajari sistem yang

sudah ada di Apotek Balonggandu Karawang, maka dengan ini penulis bermaksud

memberikan sistem usulan guna meningkatkan efisiensi kinerja di Apotek

Balonggandu Karawang. Adapun analisa kebutuhan untuk program penjualan tunai

pada Apotek Balonggandu Karawang diantaranya adalah:

A. Halaman Bagian User

A.1. User dapat melakukan login pada form login.

A.2. User dapat mengelola data obat.

A.3. User dapat mengelola data penjualan.

A.4. User dapat mengelola transaksi penjualan.

A.5. User dapat melihat laporan penjualan

A.6. User dapat melihat jurnal.

A.7. User dapat mengganti password.

B. Halaman Bagian Admin

B.1. Admin dapat melakukan login pada form login.

B.2. Admin dapat melihat laporan penjualan

B.3. Admin dapat melihat jurnal.

B.4. Admin dapat mengelola data pengguna.

B.5. Admin dapat mengganti password.

Page 10: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.3.2. Use Case Diagram

Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor

dengan sistem informasi yang akan dibuat. Berikut ini adalah Use Case Diagram dari

penjualan tunai:

Use Case Diagram Penjualan Obat

Gambar III.3.

Use Case Diagram Penjualan Obat

Page 11: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Tabel III.1.

Deskripsi Use Case Halaman Login

Use Case Narative Halaman User

Tujuan User dapat melihat data yang ada dalam

sistem halaman user.

Deskripsi sistem ini memungkinkan aktor untuk masuk

ke halaman user yang didalamnya terdapat

data obat, data penjualan,data supplier,

transaksi penjualan, laporan penjualan, jurnal,

data pengguna, dan ganti password.

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi halaman user

Aksi Aktor Reaksi Sistem

1. Aktor memilih data obat

2. Aktor memilih data

penjualan

3. Aktor memilih data

supplier

4. Aktor memilih transaksi

penjualan

5. Aktor memilih laporan

penjualan

6. Aktor memilih jurnal

7. Aktor memilih data

pengguna

8. Aktor memilih ganti

password

Sistem ini akan menampilkan informasi data

obat.

Sistem ini akan menampilkan informasi data

penjualan.

Sistem ini akan menampilkan informasi data

supplier

Sistem ini akan menampilkan inputan

transaksi penjualan

Sistem ini akan menampilkan informasi

laporan penjualan

Sistem ini akan menampilkan informasi jurnal

Sistem ini akan menampilkan informasi data

pengguna

Sistem ini akan menampilkan informasi

mengganti password

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Page 12: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Tabel III.2.

Deskripsi Use Case Diagram Mengelola Data Obat

Use Case Narative Data Obat

Tujuan User dapat masuk ke form data obat dan

menambahkan data obat.

Deskripsi sistem ini memungkinkan aktor untuk

mengakses sistem yang ada pada form data

obat.

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi penjualan

Aksi Aktor Reaksi Sistem

1. Aktor memilih tombol

tambah

2. Aktor memilih tombol

simpan

3. Aktor memilih tombol

hapus

4. Aktor memilih tombol

refresh

5. Aktor memilih tombol

batal

Sistem ini akan menampilkan textbox untuk

mengisi kode obat, nama obat, dan harga.

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Page 13: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Tabel III.3.

Deskripsi Use Case Diagram Mengelola Data Penjualan

Use Case Narative Data Penjualan

Tujuan User dapat masuk ke form data penjualan dan

menambahkan data penjualan.

Deskripsi sistem ini memungkinkan aktor untuk

mengakses sistem yang ada pada form data

penjualan.

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi penjualan

Aksi Aktor Reaksi Sistem

1. Aktor memilih tombol

tambah

2. Aktor memilih tombol

simpan

3. Aktor memilih tombol

hapus

4. Aktor memilih tombol

refresh

5. Aktor memilih tombol

batal

Sistem ini akan menampilkan textbox untuk

menginput data penjualan dengan mencari

kode obat, nama obat, dan harga, qty dan total

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Page 14: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Tabel III.4.

Deskripsi Use Case Diagram Mengelola Transaksi Penjualan

Use Case Narative Transaksi Penjualan

Tujuan User dapat masuk ke form data transaksi

penjualan dan menambahkan transaksi.

Deskripsi sistem ini memungkinkan aktor untuk

mengakses sistem yang ada pada form

transaksi penjualan.

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi penjualan

Aksi Aktor Reaksi Sistem

1. Aktor memilih tombol

tambah

2. Aktor memilih tombol

cari

3. Aktor memilih tombol

simpan

4. Aktor memilih tombol

batal semua

Sistem ini akan menampilkan textbox untuk

menginput data penjualan dengan mencari

kode obat, nama obat, dan harga, qty dan total

setelah itu, no jual, tanggal, subtotal akan

otomatis ada. lalu menginput jumlah bayar

dan akan otomatis kembalian.

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Tabel III.5.

Deskripsi Use Case Diagram Mengelola Laporan Penjualan

Use Case Narative Laporan Penjualan

Tujuan User dapat masuk ke form laporan penjualan

dan dapat melihat laporan penjualan.

Deskripsi sistem ini memungkinkan aktor untuk

mengakses sistem yang ada pada form

laporan penjualan.

Page 15: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi penjualan

Aksi Aktor Reaksi Sistem

1. Aktor memilih tombol

cetak

2. Aktor memilih tombol

cetak

3. Aktor memilih tombol

batal

Sistem ini akan menampilkan textbox untuk

menginput tanggal awal dan tanggal akhir

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Tabel III.6.

Deskripsi Use Case Diagram Mengelola Data Jurnal

Use Case Narative Data Jurnal

Tujuan User dapat masuk ke form data jurnal dan

dapat melihat jurnal.

Deskripsi sistem ini memungkinkan aktor untuk

mengakses sistem yang ada pada form data

jurnal.

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi penjualan

Aksi Aktor Reaksi Sistem

1. Aktor memilih tombol

tambah

2. Aktor memilih tombol

cetak

3. Aktor memilih tombol

batal

Sistem ini akan menampilkan textbox untuk

menginput tanggal awal dan tanggal akhir.

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Page 16: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Tabel III.7.

Deskripsi Use Case Diagram Mengelola Pengguna

Use Case Narative Data Pengguna

Tujuan User dapat masuk ke form data pengguna dan

menambahkan data pengguna.

Deskripsi sistem ini memungkinkan aktor untuk

mengakses sistem yang ada pada form data

pengguna.

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi penjualan

Aksi Aktor Reaksi Sistem

1. Aktor memilih tombol

tambah

2. Aktor memilih tombol

simpan

3. Aktor memilih tombol

hapus

Sistem ini akan menampilkan textbox untuk

menginput data pengguna yaitu nama,

username, password, ulangi password, dan hak

akses.

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Page 17: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Tabel III.8.

Deskripsi Use Case Diagram Mengelola Ganti Password

Use Case Narative Ganti Password

Tujuan User dapat masuk ke form ganti password

Deskripsi sistem ini memungkinkan aktor untuk

mengakses sistem yang ada pada form ganti

password.

Skenario Utama

Aktor User

Kondisi Awal Aktor membuka aplikasi penjualan

Aksi Aktor Reaksi Sistem

1. Aktor memilih tombol

tambah

2. Aktor memilih tombol

simpan

3. Aktor memilih tombol

edit

4. Aktor memilih tombol

hapus

5. Aktor memilih tombol

batal

Sistem ini akan menampilkan textbox untuk

mengganti password, yaitu menginput

password lama, password baru, ulangi

password.

Kondisi Akhir Jika perintah sesuai maka sistem akan

menampilkan apa yang diinginkan.

Page 18: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.4.3. Activity Diagram

Activity Diagram menggambarkan aktivitas sistem bukan apa yang

dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem.

1. Activity Diagram User melakukan Login

Gambar III.4.

Activity Diagram User melakukan Login

Page 19: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

2. Activity Diagram User mengelola Data Obat

Gambar III.5.

Activity Diagram User Mengelola Data Obat

Page 20: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.Activity Diagram User Mengelola Data Penjualan

Gambar III.6.

Activity Diagram User Mengelola Data Penjualan

Page 21: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

4. Activity Diagram User Mengelola Transaksi Penjualan

Gambar III.8.

Activity Diagram User Mengelola Transaksi Penjualan

Page 22: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

5.Activity Diagram User Mengelola Laporan penjualan

Gambar III.9.

Activity Diagram User Mengelola Laporan Penjualan

Page 23: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

5. Activity Diagram User Mengelola Jurnal

Gambar III.10.

Activity Diagram User Mengelola Jurnal

Page 24: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

6. Activity Diagram User Mengganti Password

Gambar III.11.

Activity Diagram User Mengganti Password

Page 25: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

7.Activity Diagram Admin Mengelola Data Pengguna

Gambar III.12.

Activity Diagram Admin Mengelola Data Pengguna

Page 26: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.5. Desain

Desain merupakan tahap proses yang diperlukan oleh sistem dengan tujuan

memenuhi kebutuhan user dengan meggunakan use case diagram dan activity

diagram.

3.4.1. Entity Relationship Diagram (ERD)

Entity Relationship Diagram (ERD) adalah model teknik pendekatan yang

menyatakan atau menggambarkan hubungan suatu model.

Penjualan Dtl_Penjualan ObatMasuk

Masuk

Masuk

Masuk

PenggunaArus_Kas

Tanggal

No_jual

Subtotal

Kd_obat

Id

Nm_obat Harga

Qty

Kd_pengguna

stok

No_jual

Tanggal

SubtotalId

Kd_obat

Nm_obat

Harga

Tgl_exp

Nm_suplier

Id

Nm_pengguna

Kd_pengguna

Hak_akses

password

Id

No_jurnal

Id_transaksi

Kd_akun

tanggal

Nm_akun

debit

kredit

1 M

M

1 1

M 1

1

Gambar III.13.

Entity Relationship Diagram (ERD) Penjualan Tunai

Page 27: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.5.3. Logical Record Structure (LRS)

Logical Record Strutured (LRS) adalah tabel yang menyusun program

aplikasi berelasi (hubungan) antara suatu tabel dengan tabel lainnya.

Id*

No_jual

Tgl

Kd_obat

Nm_obat

Harga

Qty

Total

Kd_pengguna

Id*

Kd_obat

Nm_obat

Stok

Harga

Tgl_exp

Nm_suplier

Obat

Penjualan

Dtl_penjualan

No_jual*

Tanggal

subtotal

Penjualan

Id*

No_jual

Id_transaksi

Kd_akun

Tanggal

Nm_akun

Debit

kredit

Arus_kas

Id*

Kd_pengguna

Nm_pengguna

Password

Hak_akses

Pengguna

1

M

1 M 1

1

1

M

Gambar III.14.

Logical Record Structure (LRS) Penjualan Tunai

Page 28: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.4.3. Spesifikasi File

Spesifikasi file yang ada pada sistem usulan penjulan tunai merupakan

kumpulan dari dokumen data masukan yang ada. Berikut spesifikasi file yang

digunakan:

a. Spesifikasi File Arus_Kas

Nama Database : apotek

Nama File : Jurnal

Tipe File : Transaksi

Akses File : Random

Panjang Record : 87 Karakter

Field Key : id

Tabel III.9.

Spesifikasi File Arus_Kas

No Elemen Data Akronim Tipe Panjang Keterangan

1 Id Id Int 11 Primary Key(*)

2 Nomor Jurnal No_jurnal Varchar 15

3 Id transaksi Id_transaksi Varchar 15

4 Kode akun Kd_akun Int 11

5 Tanggal Tanggal Date -

6 Nama akun Nm_akun Varchar 35

7 Debit Debit Double -

8 Kredit Kredit Double -

Page 29: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

b. Spesifikasi File Detail Penjualan

Nama Database : apotek

Nama File : dtl_penjualan

Tipe File : Transaksi

Akses File : Random

Panjang Record : 70 Karakter

Field Key : id

Tabel III.10.

Spesifikasi File dtl_penjualan

No Elemen Data Akronim Tipe panjang Keterangan

1 Id Id Int 5 Primary Key(*)

2 No jual No_jual Varchar 15

3 Tanggal Tgl Date -

4 Kode obat kd_obat Varchar 10 Foreign Key

5 Nama obat nm_obat Varchar 25

6 Harga Harga Double -

7 Qty Qty Int 5

8 Total Total Double -

9 Kode pengguna Kd_pengguna Varchar 10 Foreign Key

c. Spesifikasi File Penjualan

Nama Database : apotek

Nama File : penjualan

Tipe File : Transaksi

Akses File : Random

Panjang Record : 15 Karakter

Field Key : -

Page 30: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Tabel III.11.

Spesifikasi File Penjualan

No Elemen Data Nama Field Tipe panjang Keterangan

1 No jual No_jual Varchar 15 Primary Key(*)

2 Tanggal Tgl Date -

3 Subtotal Subtotal Double -

d. Spesifikasi File Obat

Nama Database : apotek

Nama File : obat

Tipe File : File master

Akses File : Random

Panjang Record : 65 Karakter

Field Key : id

Tabel III.12.

Spesifikasi File Obat

No Elemen Data Nama Field Tipe Panjang Keterangan

1 Id Id Int 5 Primary Key(*)

2 Kode obat kd_obat Varchar 10 Foreign Key

3 Nama obat nm_obat Varchar 20

4 Stok obat Stok Int 5

5 Harga jual Harga_jual Double -

6 Tanggal exp Tgl_exp Date -

7 Nama

supplier

Nm_suplier Varchar 25

Page 31: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

e. Spesifikasi File Pengguna

Nama Database : apotek

Nama File : pengguna

Tipe File : file master

Akses File : Random

Panjang Record : 100 Karakter

Field Key : id

Tabel III.13.

Spesifikasi File Pengguna

No Elemen Data Nama Field Tipe Panjang Keterangan

1 Id Id Int 5 Primary Key(*)

2 Kode

pengguna

kd_pengguna Varchar 10 Foreign Key

3 Nama

pengguna

nm_pengguna Varchar 30

4 Password Password Varchar 50

5 Hak akses Hak_akses Varchar 5

Page 32: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.4.4. Sequence Diagram

Sequence Diagram yaitu menggambarkan kelakuan objek pada use case

dengan mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima

antar objek.

1. Sequence Diagram Form Transaksi Penjualan

Gambar III.14.

Sequence Diagram Form Transaksi Penjualan

Page 33: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.4.5. Deployment Diagram

Deployment Diagram memperlihatkan konfigurasi saat aplikasi

dijalankan. Diagram ini memuat simpul-simpul beserta komponen-komponen yang

ada didalamnya.

Gambar III.15.

Deployment Diagram Penjualan Obat

Page 34: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.4.6. User Interface

1. Form Login

Gambar III.16.

Form Login

2. Form Data Obat

Gambar III.17.

Form Data Obat

Page 35: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3. Form Data Penjualan

Gambar III.18.

Form Data Penjualan

4. Form Transaksi Penjulan

Gambar III.19.

Form Transaksi Penjualan

Page 36: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

5. Form Laporan Penjualan

Gambar III.20.

Form Laporan Penjualan

6. Form Jurnal

Gambar III.21.

Form Jurnal

Page 37: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

7. Form Pengguna

Gambar III.22.

Form Pengguna

8. Form Ganti Password

Gambar III.23.

Form Ganti Password

Page 38: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

3.5. Implementasi

3.5.1. Code Generation

A. Form Penjualan

public class penjualan extends javax.swing.JFrame {

private DefaultTableModel model;

Connection con;

Connection conn=null;

ResultSet rs=null;

PreparedStatement pst=null;

String tglsekarang="";

/**

* Creates new form penjualan

*/

public penjualan() {

initComponents();

//setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

this.getContentPane().setBackground(Color.white);

DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

Calendar cal = Calendar.getInstance();

tglsekarang = (dateFormat.format(cal.getTime()));

tabelobat();

}

public String kodeobat;

public String namaobat;

public String harga;

public String getkodeobat(){

return kodeobat;

}

public String getnamaobat(){

return harga;

Page 39: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

}

public String getharga(){

return harga;

}

private void tabelobat(){

model = new DefaultTableModel ();

model.addColumn("Kode Obat");

model.addColumn("Nama Obat");

model.addColumn("Qty");

model.addColumn("Total");

try{

Connection con=koneksi.getKoneksi();

Statement st=con.createStatement();

String sql = "Select *from dtl_penjualan where no_jual='0' order

by nm_obat asc";

ResultSet rs = st.executeQuery(sql);

while (rs.next()) {

model.addRow(new Object[]{

rs.getString(4),

rs.getString(5),

rs.getString(7),

rs.getString(8),

});

}

tbobat.setModel(model);

jumlah();

}catch (Exception e){

JOptionPane.showMessageDialog(null, e);

}

}

Page 40: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

private void jumlah(){

int ttl =0;

int row=tbobat.getRowCount();

for(int a=0;a<tbobat.getRowCount();a++){

{

int sub= Integer.parseInt((String)tbobat.getValueAt(a, 3));

ttl+= sub;

}

txtsubtotal.setText(Integer.toString(ttl));

*/

public simpanpenjualan(java.awt.Frame parent, boolean modal) {

super(parent, modal);

initComponents();

this.getContentPane().setBackground(Color.white);

nofak();

ceksaldo();

}

String saldoawal="";

private void ceksaldo(){

try{

Connection con=koneksi.getKoneksi();

String sql = "SELECT * FROM arus_kas order by id desc

limit 1";

Statement st=con.createStatement();

ResultSet res = st.executeQuery(sql);

if (res.next()) {

saldoawal=(res.getString("saldo"));

}

Page 41: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

res.last();

int jumlahdata = res.getRow();

res.first();

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, e);

}

}

public String nofak(){

String urutan=null;

java.util.Date skrg = new java.util.Date();

java.text.SimpleDateFormat kal=new

java.text.SimpleDateFormat("ddMMyy");

String tgl=(kal.format(skrg));

try{

Connection con = koneksi.getKoneksi();

Statement st=con.createStatement();

java.sql.ResultSet sql = st.executeQuery("SELECT (right

(no_jual,3)+1) as nomor FROM penjualan where no_jual like

'%"+tgl+"%' order by no_jual desc");

if(sql.next())

{

urutan=sql.getString(1);

while (urutan.length()<3)

urutan="0"+urutan;

urutan="J"+tgl+urutan;

}else

{

urutan="J"+tgl+"001";

}

Page 42: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

txtnojual.setText(urutan);

}

catch(Exception e){

// JOptionPane.showMessageDialog(null,e);

}

return urutan;

3.5.2. Blackbox Testing

Blackbox testing adalah pengujian perangkat lunak untuk mengetahui

apakah fungsi-fungsi, masukan dan keluaran dari perangkat lunak sesuai dengan

spesifikasi yang dibutuhkan, sangat penting untuk dilakukan agar tidak terjadi

kesalahan alur program yang telah dibuat.

1. Pengujian Terhadap Form Login

Tabel III.14.

Hasil Blackbox Testing Form Login

No Skenario Pengujian Text case Hasil yang

Diharapkan

Hasil

Pengujian

Kesimpulan

1. Username dan

password tidak

diisi. Kemudian

Klik tombol login

Username

dan

Password

[kosong]

Sistem akan

menolak

akses dan

menampilkan

pesan

“username

atau

password

belum

terdaftar”

Sesuai

harapan

Valid

2. Username kosong,

password terisi.

Klik tombol Login

Username

[kosong],

Password:

User

Sistem akan

menolak

akses dan

menampilkan

pesan

“username

atau

password

belum

Sesuai

harapan

Valid

Page 43: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

terdaftar”

3. Username dan

password kosong.

Klik tombol Login

Username

dan

Password

[Kosong]

Sistem akan

menolak

akses dan

menampilkan

pesan

“username

atau

password

belum

terdaftar”

Sesuai

harapan

Valid

4. Username, dan

password terisi.

Klik tombol Login

Username,

Password

terisi

Sistem

menerima

akses

kemudian

masuk

sebagai user.

Sesuai

Harapan

Valid

2. Pengujian Terhadap Form Data Obat

Tabel III.15.

Hasil Blackbox Testing Form Data Obat

No Skenario Pengujian Text case Hasil yang

Diharapkan

Hasil

Pengujian

Kesimpulan

1. Semua data terisi

kecuali harga.

Kemudian Enter

Semua

data terisi

kecuali

harga

(tidak

terisi)

Sistem akan

menolak

akses,

kemudian

akan

menampilkan

pesan

“terdapat

kode yang

sama atau

data yang

kosong”.

Sesuai

harapan

Valid

Page 44: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

2. Semua data terisi

tetapi, jika harga

(diisi huruf).

kemudian Enter

Semua

data terisi

tetapi, jika

harga diisi

huruf

Sistem akan

menolak

akses,

kemudian

akan

menampilkan

pesan

“terdapat

kode yang

sama atau

data yang

kosong”.

Sesuai

harapan

Valid

3. Semua data terisi.

Kemudian klik

simpan

Semua

data terisi

Sistem

menerima

akses

kemudian

menampilkan

pesan “data

berhasil

disimpan”.

Sesuai

Harapan

Valid

3.Pengujian Terhadap Form Transaksi Penjualan

Tabel III.16.

Hasil Blackbox Testing Form Transaksi Penjualan

No Skenario

Pengujian

Text case Hasil yang

Diharapkan

Hasil

Pengujian

Kesimpulan

1. Semua data terisi

kecuali bayar.

Klik tombol

tambah

Semua

data terisi

kecuali

bayar

(tidak

terisi)

Sistem akan

menolak

akses dan

menampilkan

pesan

“terdapat

inputan yang

kosong”

Sesuai

harapan

Valid

Page 45: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

2. Semua data terisi

tetapi, jika bayar

(diisi huruf).

kemudian Klik

tombol tambah

Semua

data terisi

tetapi, jika

bayar diisi

huruf

Sistem akan

menolak

akses dan

program

tidak jalan.

Sesuai

harapan

Valid

2. Semua data

terisi.

Klik tombol

tambah

Semua

data terisi

Sistem

menerima

akses

kemudian

menampilkan

pesan “data

berhasil

disimpan”.

Sesuai

Harapan

Valid

3.5.3. Spesifikasi Hardware dan Software

Untuk mengembangkan suatu sistem yang baik diperlukan adanya sistem

komputer yang lebih baik agar sistem informasi dapat dijalankan secara optimal.

Berikut adalah spesifikasi komputer yang diusulkan:

Tabel III.17.

Spesifikasi Hardware dan Software

Kebutuhan Keterangan

Sistem Windows 10 64-bit

Processor Intel® Celeron® @1.60 GHz

RAM 2GB

Harddisk 1GB

Monitor 1024x768 Pixels

Keyboard 102 Key

Printer Inkjek Printer

Page 46: BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan aturan pakai obat kepada kasir. Lalu, Bagian kasir akan menghitung harga obat dengan

Mouse Optomechanical

Software Kebutuhan menjalankan aplikasi secara local:

Bahasa Programming : JAVA Neatbeans 8.1

Web Server : Xampp v3.1.0 3.1.0

DBMS : MySQL

Web Browser : Google Chrome