BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan...
Transcript of BAB III PEMBAHASAN - repository.bsi.ac.id · apoteker akan memberikan obat kembali dan menjelaskan...
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.
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.
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.
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.
3.2.2. Activity Diagram
Activity Diagram Proses Penjualan Obat
Gambar III.2
Activity Diagram Penjualan Obat
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
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
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.
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.
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
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.
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.
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.
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.
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.
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.
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.
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
2. Activity Diagram User mengelola Data Obat
Gambar III.5.
Activity Diagram User Mengelola Data Obat
3.Activity Diagram User Mengelola Data Penjualan
Gambar III.6.
Activity Diagram User Mengelola Data Penjualan
4. Activity Diagram User Mengelola Transaksi Penjualan
Gambar III.8.
Activity Diagram User Mengelola Transaksi Penjualan
5.Activity Diagram User Mengelola Laporan penjualan
Gambar III.9.
Activity Diagram User Mengelola Laporan Penjualan
5. Activity Diagram User Mengelola Jurnal
Gambar III.10.
Activity Diagram User Mengelola Jurnal
6. Activity Diagram User Mengganti Password
Gambar III.11.
Activity Diagram User Mengganti Password
7.Activity Diagram Admin Mengelola Data Pengguna
Gambar III.12.
Activity Diagram Admin Mengelola Data Pengguna
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
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
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 -
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 : -
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
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
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
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
3.4.6. User Interface
1. Form Login
Gambar III.16.
Form Login
2. Form Data Obat
Gambar III.17.
Form Data Obat
3. Form Data Penjualan
Gambar III.18.
Form Data Penjualan
4. Form Transaksi Penjulan
Gambar III.19.
Form Transaksi Penjualan
5. Form Laporan Penjualan
Gambar III.20.
Form Laporan Penjualan
6. Form Jurnal
Gambar III.21.
Form Jurnal
7. Form Pengguna
Gambar III.22.
Form Pengguna
8. Form Ganti Password
Gambar III.23.
Form Ganti Password
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;
}
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);
}
}
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"));
}
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";
}
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
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
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
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
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