Anda di halaman 1dari 48

BAB IV

PEMBAHASAN
4.1 Perancangan Sistem
Perancangan sistem merupakan tahapan yang bertujuan untuk memberikan
ketentuan bentuk dan proses pada perangkat lunak yang dibuat agar pembuatan
program tidak menyimpang dari aturan dan hasil analisis yang telah ditetapkan
pada perancangan program. Adapun perancangan sistem yang diusulkan antara
lain :
4.1.1 Perancangan Proses
4.1.1.1 Bagan Alir Sistem ( Flowchart )
Bagan alir sistem ( Flowchart ) merupakan bagan yang menunjukkan
aliran kerja sistem secara keseluruhan dan menunjukkan apa yang dikerjakan
didalam sistem. Adapun simbol-simbol yang sering digunakan dalam block chart
dapat dilihat pada tabel berikut ini.
Simbol

Arti
Menandakan dokumen, bisa dalam bentuk surat,
formulir, buku/bendel/berkas atau cetakan
Multi dokumen
Proses manual
Proses yang dilakukan oleh komputer
Menandakan dokumen yang diarsipkan (arsip manual)

32

33

Data penyimpanan (data storage)


Proses apa saja yang tidak terdefenisi termasuk
aktifitas fisik
Terminasi yang mewakili simbol tertentu untuk
digunakan pada aliran lain pada halaman yang lain
Terminasi yang mewakili simbol tertentu untuk
digunakan pada aliran lain pada halaman yang sama
Terminasi yang menandakan awal dan akhir suatu
aliran
Pengambilan keputusan (decision)
Layar peraga (monitor)
Masukan data secara manual
Tabel 4.1 Simbol Bagan Alir

34

Gambar 4.1 Bagan Alir Sistem ( Flowchart )

35

4.1.1.2 Data Flow Diagram (DFD)


Data flow diagram merupakan gambaran sistem secara logical yang tidak
tergantung pada perangkat keras, perangkat lunak, struktur maupun organisasi file.
Data flow diagram berfungsi untuk memudahkan user yang kurang mengerti
komputer untuk mengerti sistem yang diusulkan. Berikut ini gambar data flow
diagram yang diusulkan.
a. Konteks Diagram
Konteks diagram menggambarkan proses kerja sistem sempit adalah
sebagai berikut :

Gambar 4.2 Diagram Konteks

b. Data Flow Diagram ( DFD ) Level 1


Data flow diagram Merupakan detail dari konteks diagram. Adapun
data flow diagram ( DFD ) Level 1 yang diusulkan sebagai berikut :

36

Gambar 4.3 Data Flow Diagram ( DFD ) Level 1

37

4.1.2 Perancangan Basis Data


4.1.2.1 Normalisasi
Normalisasi merupakan proses pengelompokkan elemen data menjadi
tabel tabel yang menunjukkan entity dan relasinya. Tujuan utama dari
normalisasi database adalah mencegah terjadinya insertion anomayi ( kesalahan
penambahan data kedalam database ), delection anomaly ( kesalahan dalam
menghapus data yang ada didalam database ), dan update anomaly ( kesalahan
dalam mengubah data, baik dalam penambahan data atau pengurangan data ).
4.1.2.1.1

Bentuk Tidak Normal


Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada
keharusan mengikuti format tertentu, dapat saja tidak lengkap dan
terduplikasi. Data yang dikumpulkan apa adanya sesuai keadaannya.
TABEL 4.2 Tabel Pembelian

NOTA

TANGGAL

PEMASOK

NAMA BARANG

SATUAN

HARGA

OK839

4/10/2012

INDOFOOD

MIE GORENG

1 DOS

45.000

JE921

9/10/2012

AQUA

AQUA GELAS

2 DOS

25.000

PO980

15/10/2012

ALFA

PEPSODENT

2 PACK

35.000

HU231

21/10/2012

CITRA

HAND BODY

1 PACK

25.000

PK384

5/11/2012

SLAMET

SHAMPO DAVE

2 DOS

45.000

Tabel 4.3 Tabel Barang


Nota

Tanggal

Nama Barang

Jumlah

Harga Beli

Harga Jual

KS8721

20/10/2012

Mie Goreng

24

1.000

1.500

Bungkus

38

OP891

27/10/2012

ShampoDAVE

20 Botol

15.000

17.500

Tabel 4.4 Penjualam


Nota

Tanggal

Nama Barang

Jumlah

Harga

Total

YU294

15/10/2012

Mie Goreng

2 Bungkus

1.500

3.000

GH671

17/10/2012

Aqua Gelas

2 Gelas

1000

2.000

4.1.2.1.2

Bentuk Normalisasi Pertama( 1NF / First Normal Form )


Normalisasi Pertama mempunyai ciri yaitu setiap data dibentuk flat
file ( file teks yang ada pada sistem operasi ). Nilai dari file berupa
atomic value ( tidak dapat dipecah lagi ). Tidak ada baris data yang
terulang dalam tabel, setiap sel bernilai tunggal. Data dalam kolom
( atribut dan field ) memiliki tipe data yang sejenis.
Tabel 4.5 Pembelian Barang

Nota

Tanggal

Kd_pemasok

Kd_baran

Satuan

Harga

g
OK839

4/10/2012

PK001

B976

1 Dos

45.000

JE921

9/10/2012

PK002

B753

2 Dos

25.000

PO980

15/10/2012

PK003

B492

2 PACK

35.000

HU231

21/10/2012

PK004

B572

1 PACK

25.000

PK384

5/11/2012

PK005

B923

2 DOS

45.000

Harga Beli

Harga Jual

Tabel 4.6 Barang


Nota

Tanggal

Kd_Barang

Jumlah

39

KS872

20/10/2012

B976

24 Bungkus

1.000

1.500

27/10/2012

B923

20 Botol

15.000

17.500

1
OP891

Tabel 4.7 Penjualan


Nota

Tanggal

Kd_Barang

Jumlah

Harga

Total

YU294

15/10/2012

B976

2 Bungkus

1.500

3.000

GH671

17/10/2012

B492

2 Gelas

1000

2.000

4.1.2.1.3

Bentuk Normalisasi Kedua ( 2NF / Second Normal Form )


Syarat dari bentuk normal kedua adalah bentuk data telah memiliki
kriteria bentuk normal kesatu. Atribut bukan kunci haruslah
bergantung secara fungsi pada primary key, untuk membentuk normal
kedua kunci kunci field harus sudah ditentukan.
Barang

Pengguna

Penjualan

IdBarang *

IdPengguna *

NoPenjualan *

NmBarang

Username

TglPenjualan

Satuan

Password

HrgJual

HrgJual

Status

JmlJual

Stok
Karyawan

TotJual
Pemasok

Pembelian

IdKaryawan *

IdPemasok *

NoPembelian *

NmKaryawan

NmPemasok

TglPembelian

TempatLhr

Telepon

HrgBeli

TglLhr

Alamat

JmlBeli

JeKel
Agama
Telepon

TotBeli
Retur
NoRetur *

JnsBarang

40

Alamat

TglRetur

IdJnsBarang *

JmlRetur

JnsBarang

Tabel 4.8 Bentuk Normalisasi Kedua

4.1.2.1.4

Bentuk Normalisasi Ketiga ( 3NF / Third Normal Form )


Untuk menjadi normal ketiga maka relasi harus dalam bentuk normal
kedua, artinya sebuah field dapat menjadi atribut biasa pada suatu
relasi tetapi menjadi kunci pada relasi lain. Setiap atribut bukan kunci
hanya bergantung pada Primary Key.

Barang

Karyawan

Penjualan

IdBarang *

IdKaryawan *

NoPenjualan *

IdJnsBarang **

NmKaryawan

TglPenjualan

IdPemasok **

TempatLhr

IdKaryawan**

NmBarang

TglLhr

Satuan

JeKel

HrgJual

Agama

NoPenjualan **

Stok

Telepon

IdBarang **

Alamat

HrgJual

DetPenjualan

JmlJual
JnsBarang
IdJnsBarang*
JnsBarang

TotJual
Pengguna
IdPengguna *

DetPembelian

IdKaryawan **

NoPembelian **

Username

IdBarang **

IdPemasok *

Password

IdPemasok **

NmPemasok

Status

HrgBeli

Pemasok

Telepon

JmlBeli

41

Alamat

DetRetur

TotBeli

NoRetur **
Retur

NoPembelian **

Pembelian

NoRetur *

IdBarang **

NoPembelian *

TglRetur

IdPemasok **

TglPembelian

IdKaryawan **

JmlRetur

IdKaryawan **

Tabel 4.9 Bentuk Normalisasi Ketiga


4.1.2.2 Relasi Antar Tabel
Database didefinisikan sebagai suatu kumpulan tabel yang saling
berelasi dan mempunyai hubungan keterkaitan antara satu tabel dengan tabel yang
lainnya sehingga membentuk suatu bangunan data. Relasi antar tabel / field
merupakan perancangan lanjutan yang mempunyai tujuan tujuan agar perancang
program dapat memahami arah dan hubungan dari masing masing tabelnya.
Dengan adanya hubungan antar tabel maka masing masing tabel akan terkait
dan saling berhubungan antara satu dengan yang lainnya. Berikut adalah
perancangan relasi antar tabel dalam sistem ini :

42

Gambar 4.4 Relasi Antar Tabel

4.1.2.3 Rancangan Tabel


Nama Field
IdBarang
IdJnsBarang

Tipe Field
Char
Char

Ukuran/ Format
10
4

Key
Primary
Foreign

Keterangan
Not null
Not null

43

IdPemasok
NmBarang
Satuan
HrgJual
Stok

Char
Varchar
Varbinary
Money
Varchar

4
50
50
8
6

Foreign

Not null
Not null
Not null
Not null
Not null

Tabel 4.11 Rancangan Tabel Barang


Nama Field
IdJnsBarang
JnsBarang

Tipe Field
Char
Varchar

Ukuran/ Format
4
50

Key
Primary

Keterangan
Not null
Not null

Tabel 4.12 Rancangan Tabel Jenis Barang


Nama Field
IdKaryawan
NmKaryawa
n
TempatLhr
TglLhr
JeKel
Agama
Telp
Alamat

Tipe Field
Char
Varchar

Ukuran/Format
4
100

Varchar
DateTime
Varchar
Varchar
Varchar
Varchar

50
8
10
10
20
200

Key
Primary

Keterangan
Not null
Not null
Null
Null
Null
Null
Null
Null

Tabel 4.13 Rancangan Tabel Karyawan


Nama Field
IdPemasok
NmPemasok
Telp
Alamat

Tipe Field
Char
Varchar
Varchar
Varchar

Ukuran/ Format
4
100
20
200

Key
Primary

Keterangan
Not null
Not null
Null
Null

Tabel 4.14 Rancangan Tabel Pemasok

Nama Field
IdPengguna
IdKaryawan

Tipe Field
Char
Char

Ukuran/Format
4
4

Key
Primary
Foreign

Keterangan
Not null
Not null

44

Username
Password
Status

Varchar
Varchar
Varchar

50
50
50

Not null
Not null
Not null

Tabel 4.15Rancangan Tabel Pengguna


Nama Field
NoPembelian
TglPembelian
IdKaryawan

Tipe Field
Char
DateTime
Char

Ukuran/Format
12
8
4

Key
Primary
Foreign

Keterangan
Not null
Not null
Not null

Tabel 4.16 Rancangan Tabel Pembelian


Nama Field
NoPenjualan
TglPenjualan
IdKaryawan

Tipe Field
Char
DateTime
Char

Ukuran/Format
12
8
4

Key
Primary
Foreign

Keterangan
Not null
Not null
Not null

Tabel 4.17 Rancangan Tabel Penjualan

Nama Field
NoRetur
TglRetur
IdKaryawan

Tipe Field
Char
DateTime
Char

Ukuran/Format
12
8
4

Key
Primary
Foreign

Keterangan
Not null
Not null
Not null

Tabel 4.18 Rancangan Tabel Retur Pembelian

4.1.3

Perancangan Antarmuka / Interface


Antarmuka pengguna merupakan tampilan dimana pengguna berinteraksi

dengan sistem. Tujuan dari antarmuka pengguna adalah untuk memungkinka


pengguna menjalankan setiap tugas dalam kebutuhan pengguna (user interface).

1. Perancangan Halaman Login

45

Halaman ini adalah halaman pertama kali muncul dimana pengguna harus
memasukkan username dan password untuk dapat mengakses sistem
aplikasi.

Username
Password
Gambar 4.5 Rancangan Halaman Login
2. Perancangan Menu Utama
Jendela menu utama akan muncul apabila pengguna berhasil memasukkan
OK
Batal
username dan password dengan benar. Menu utama akan aktif sesuai hak
akses. Hak akses ada 2 macam, yaitu pemilik dan karyawan. Untuk
pemilik semua menu akan aktif, untuk karyawan dapat mengakses semua
menu selain menu karyawan.

LOGO
FAMILY Mini Market

Gambar 4.6 Rancangan Menu Utama


MENU ICON

MENU ICON MENU ICON

3. Rancangan Input Data Pengguna

MENU ICON MENU ICON

Id Pengguna
Id Karyawan
Username
Password
Status

Baru

Simpan

Keluar

46

Gambar 4.7 Rancangan Input Data Pengguna

4. Rancangan Input Data Pemasok


Id Pemasok
Nama Pemasok
Telepon

Baru

Simpan

Keluar

Alamat
Gambar 4.8 Rancangan Input Data Pemasok
5. Rancangan Input Data Barang
Id Barang
Id Jenis Barang
Id Pemasok
Nama Barang
Satuan

Gambar 4.9 Rancangan Input Data Barang


6. Rancangan Input Data Jenis Barang
Baru
Simpan
Keluar
Id Jenis Barang
Jenis Barang

Baru

Simpan

Keluar
Gambar 4.10 Rancangan Input Data Jenis Barang
7. Rancangan Form Transaksi Penjualan
No Penjualan
Tanggal
Id Barang
Nama barang

Harga Total
Rp. 0 ,Stok

Harga Jual (Rp)

Jml

Total

[F1]-Transaksi Baru | [F2]-Batal | [F3]-Bayar | [F4]-Simpan


[Esc]-Keluar | [F5]-Daftar Barang | [F6]-Lihat Nota | [F7]-Kalkulator

47

Gambar 4.11 Rancangan Form Transaksi Penjualan


8. Rancangan Form Transaksi Pembelian
No Pembelian
Tanggal
Id Barang
Id Pemasok
Nama barang

Harga Total
Rp. 0 ,-

Stok

Harga Beli (Rp)

Harga Jual (Rp)

Jml

[F1]-Transaksi Baru | [F2]-Batal | [F4]-Simpan


[Esc]-Keluar | [F5]-Daftar Barang | [F6]-Daftar Pemasok | [F7]-Kalkulator

Gambar 4.12 Rancangan Form Transaksi Pembelian

9. Rancangan Form Transaksi Retur Pembelian

Total

48

No. Retur
Tanggal

Id Barang
Id Pemasok

Nama barang

Stok

Jumlah

Total

[F1]-Transaksi Baru | [F2]-Batal | [F4]-Simpan


[Esc]-Keluar | [F5]-Daftar Barang | [F7]-Kalkulator

--

Gambar 4.13 Rancangan Form Transaksi Retur Pembelian


10. Rancangan Laporan Data Barang

LAPORAN DATA BARANG


FAMILY MINIMARKET
Salamsari RT 01/RW 06 Desa Genegsari Kecamatan
Kemusu Kabupaten Boyolali Jawa Tengah

LOGO
Dicetak oleh : xxxxxxxx
Id Barang
Jenis Barang

Tanggal,

Nama Barang

xx-xx-xxxx

Satuan

Harga Jual

Stok

Halaman x

Dari x

Gambar 4.14 Rancangan Laporan Data Barang

11. Rancangan Laporan Data Pemasok

LAPORAN DATA PEMASOK

LOGO

FAMILY MINIMARKET
Salamsari RT 01/RW 06 Desa Genegsari Kecamatan
Kemusu Kabupaten Boyolali Jawa Tengah

49

Dicetak oleh : xxxxxxxx


Kd Pemasok Nama
pemasok

Tanggal,

Telepon

Alamat

xx-xx-xxxx

Halaman x

Dari x

Gambar 4.15 Rancangan Laporan Data Pemasok


12. Rancangan Laporan Data Pembelian

LAPORAN DATA PEMBELIAN


FAMILY MINIMARKET
Salamsari RT 01/RW 06 Desa Genegsari Kecamatan Kemusu
Kabupaten Boyolali Jawa Tengah

LOGO
Dicetak oleh : xxxxxxxx
NoPembelian

Tanggal

Tanggal,

xx-xx-xxxx

Nama Barang

IdPemasok

Harga Beli

Jml

Total Beli

Halaman x

Dari x

Gambar 4.16 Rancangan Laporan Data Pembelian

13. Rancangan Laporan Data Penjualan

LAPORAN DATA PENJUALAN

LOGO
Dicetak oleh : xxxxxxxx
NoPenjualan Tanggal

FAMILY MINIMARKET
Salamsari RT 01/RW 06 Desa Genegsari Kecamatan
Kemusu Kabupaten Boyolali Jawa Tengah
Nama Barang

Harga Jual

Jml

Total jual

50

Tanggal,

xx-xx-xxxx

Halaman x

Dari x

Gambar 4.17 Rancangan Laporan Data Penjualan


14. Rancangan Laporan Data Retur Pembelian

LAPORAN DATA RETUR PEMBELIAN


FAMILY MINIMARKET
Salamsari RT 01/RW 06 Desa Genegsari Kecamatan
Kemusu Kabupaten Boyolali Jawa Tengah

LOGO
Dicetak oleh : xxxxxxxx
No.Retur
Tanggal

Tanggal,

Jenis Barang

Nama Barang

Id Pemasok

xx-xx-xxxx

Halaman x

Gambar 4.18 Rancangan Laporan Data Retur Pembelian

15. Rancangan Nota Penjualan


FAMILY MINIMARKET
Salamsari RT 01/RW 06 Desa Genegsari Kecamatan
Kemusu Kabupaten Boyolali Jawa Tengah
K01A23450001
1. 1002012233
Pcs 2
x
2. 1002012275
Pcs 7
x
3. 0202048202
Pcs 2
x
Total
Bayar
Kembali
Jumlah Item

26-06-2012
NING
ANTANGIN JRG 15ML
1.750
=
Rp
3.500
ANTANGIN GINGER MOCHA SCH
1.500
=
Rp
10.500
DJARUM SUPER 12
10.800
=
Rp
21.600
= Rp
= Rp
= Rp

35.600
40.000
4.400

= 3
Jml Qty = 11
Maaf, barang yang dibeli tidak dapat
ditukar atau dikembalikan
Terimakasih Atas Kunjungan Anda

Gambar 4.19 Rancangan Nota Penjualan

Jml

Dari x

51

4.2 Implementasi Program


Implementasi program merupakan tahap meletakkan sistem yang
baru dikembangkan agar nantinya sistem terebut siap untuk dioperasikan sesuai
dengan yang diharapkan. Tujuan tahap implementasi adalah menyiapkan semua
kegiatan penerapan sistem sesuai dengan rancangan yang telah ditentukan.
Pada aplikasi sistem informasi penjualan Family Mini Market ini,
diimplementasikan dengan menggunakan pemrograman Visual Basic 6.0 sebagai
interface, sedangkan untuk penyimpanan database menggunakan Microsoft SQL
Server 2000.

4.2.1 Pemograman

Pemograman adalah tahap implementasi dimana dilakukan pengkodean


berdasarkan hasil perancangan perangkat lunak yang telah dibuat, sehingga
berbentuk sistem baru yang sedemikian rupa seperti yang telah direncanakan.
4.2.2 Membuat Data Base

Pembuatan database meliputi penentuan tipe data pada masing-masing


field sekaligus pembuatanya. Dalam membangun aplikasi ini, penyusun
menguanakan Microsoft SQL Server 2000 dalam pembuatan database.
Langkah-langkah dalam pembuatan database aplikasi sistem informasi
penjualan Family Mini Market adalah sebagai berikut.

52

Masuk ke Query Analyzer dari Start Menu Programs Microsoft


SQL Server Query Analyzer.

Gambar 4.20 Pembuatan Database Pada SQL Server


Untuk koneksi ke SQL Server masukkan titik (dot) dan pilih windows
autentication.

53

Gambar 4.21 Menentukan Koneksi Query Analyzer


Mengetikkan kode untuk membuat database penjualan pada jendela
kode editor.

Gambar 4.22 Pembuatan Database Pada Query Analyzer


Tekan tombol F5 untuk mengeksekusi kode yang telah selesai
dimasukkan pada jendela kode editor.
Adapun table-tabel yang di buat dalam database penjualan untuk mendukung
aplikasi sistem informasi penjualan Family Mini Market ini adalah:
a. Tabel Pengguna
Tabel ini berfungsi untuk menyimpan data pengguna.

54

Gambar 4.23 Pembuatan Tabel Pengguna

Gambar 4.24 Kode/Script Tabel Pengguna

b. Tabel Karyawan
Tabel ini berfungsi untuk menyimpan data karyawan.

55

Gambar 4.25 Pembuatan Tabel Karyawan

Gambar 4.26 Kode/Script Tabel Karyawan

c. Tabel Pemasok
Tabel ini berfungsi untuk menyimpan data pemasok.

56

Gambar 4.27 Pembuatan Tabel Pemasok

Gambar 4.28 Kode/Script Tabel Pemasok

d. Tabel Barang
Tabel ini berfungsi untuk menyimpan data barang.

57

Gambar 4.29 Pembuatan Tabel Barang

Gambar 4.30 Kode/Script Tabel Barang

e. Tabel Jenis Barang


Tabel ini berfungsi untuk menyimpan data jenis barang.

58

Gambar 4.31 Pembuatan Tabel Jenis Barang

Gambar 4.32 Kode/Script Tabel Jenis Barang

f. Tabel Pembelian

59

Tabel ini berfungsi untuk menyimpan data pembelian.

Gambar 4.33 Pembuatan Tabel Pembelian

Gambar 4.34 Kode/Script Tabel Pembelian

g. Tabel Penjualan
Tabel ini berfungsi untuk menyimpan data penjualan.

60

Gambar 4.35 Pembuatan Tabel Jenis Penjualan

Gambar 4.36 Kode/Script Tabel Penjualan

h. Tabel Retur Pembelian


Tabel ini berfungsi untuk menyimpan data retur pembelian.

61

Gambar 4.37 Pembuatan Tabel Retur Pembelian

Gambar 4.38 Kode/Script Tabel Retur Pembelian

4.2.3 Membuat Form

62

Form bisa juga disebut halaman interface, digunakan untuk meletakan


komponen komponen yang dibutuhkan dalam mendesain tampilan progam
aplikasi sistem informasi penjualan Family MiniMarket
Penulis mengggunakan Microsoft Visual Basic 6.0 untuk membuat
desain tampilan. Untuk membuat form yaitu dengan cara membuka Microsoft
Visual Basic 6.0 pada start menu komputer, pilih standard exe dan klik open.

Gambar 4.39 Pembuatan Form Pada Microsoft Visual Basic 6.0


Beberapa form yang telah dibuat dalam Microsoft Visual Basic 6.0 untuk
mendesain aplikasi sistem informasi penjualan Family MiniMarket ini adalah:

a. Form Login

63

Halaman ini digunakan untuk memasukan username dan password


pengguna.

Gambar 4.40 Tampilan Form Login


b. Form Halaman Utama
Halaman utama atau Form Main merupakan jendela utama dimana user
akan memulai proses pemililhan menu tertentu untuk mengolah data.

Gambar 4.41 Tampilan Form Main


Masih banyak Form lain yang telah dibuat untuk mendukung project
aplikasi sistem informasi penjualan Family MiniMarket.

64

Gambar 4.42 Forms Project Penjualan_family


4.3 Uji System
Pemograman adalah tahap implementasi dimana dilakukan pengkodean
berdasarkan hasil perancangan perangkat lunak yang telah dibuat, sehingga
berbentuk sistem baru yang sedemikian rupa seperti yang telah direncanakan.
Sebelum program diterapkan, program tersebut harus terbebas dari kesalahan
kesalahan. Oleh karena itu program harus diuji untuk menemukan kesalahan yang
mungkin dapat terjadi. Kesalahan program yang mungkin terjadi diklasifikasikan
menjadi 3, yaitu:

Kesalahan Penulisan (Sintax Error)

65

Syntax error merupakan jenis kesalahan yang terjadi apabila salah dalam
mengetikkan bahasa pemrograman atau tidak sesuai dengan kaidah bahasa
compiler yang digunakan.
Contoh dalam program adalah sebagai berikut:

Gambar 4.43 Peringatan Kesalahan Penulisan

Gambar 4.44 Pemberitahuan Baris Kode Kesalahan Penulisan

66

Kode Program yang mengalami kesalah adalah sebagai berikut :


Sub Simpan()
If lblNo.Caption = "No. Pembelian" Then
MsgBox "Buat transaksi dahulu!!", vbInformation
Else
'simpan ke tabel pembelian
con.Execute "INSERT INTO Pembelian
(NoPembelian,TglPembelian,IdKaryawan) values ('" & lblNo.Caption & "','"
& Format(lblTgl.Caption, "YYYY-MM-DD") & "','" & FrmMain.Sb.Panels(4) &
"')"
rsPembelian.Requery
Dim i As Integer
For i = 1 To lvPembelian.ListItems.Count
'simpan ke tabel detpembelian
con.Execute "INSERT INTO DetPembelian
(NoPembelian,IdBarang,IdPemasok,HrgBeli,JmlBeli,TotBeli) values ('" &
lblNo.Caption & "','" lvPembelian.ListItems(i).SubItems(1) & "','" &
lvPembelian.ListItems(i).SubItems(7) & "',CAST('" &
lvPembelian.ListItems(i).SubItems(3) & "' AS MONEY),'" &
lvPembelian.ListItems(i).SubItems(5) & "',CAST('" &
lvPembelian.ListItems(i).SubItems(6) & "' AS MONEY))"
barang

'simpan ke tabel barang set harga beli, jual dan menambah stok

con.Execute "UPDATE Barang SET HrgBeli=CAST('" &


lvPembelian.ListItems(i).SubItems(3) & "' AS MONEY),HrgJual=CAST('" &
lvPembelian.ListItems(i).SubItems(4) & "' AS MONEY),Stok=Stok + " &
Val(lvPembelian.ListItems(i).SubItems(5)) & "" & " WHERE IdBarang='" &
lvPembelian.ListItems(i).SubItems(1) & "'"
Next i
lblGrandTotal.Caption = "0"
MsgBox "Data Tersimpan", vbInformation
Batal
End If
End Sub

Kesalahan terjadi pada bagian kode yang berwana merah, kekurangan tanda
(&) pada kode program diatas membuat program tidak bisa berjalan.

Kesalahan Sewaktu Proses (Run-Time Error)


Kesalahan ini terjadi pada saat executable program dijalankan. Kesalahan

ini menyebabkan proses program berhenti sebelum selesai pada waktunya,


karena kompiler menemukan kondisi-kondisi yang belum terpenuhi yang tidak

67

bisa dikerjakan. Kesalahan ini juga relatif mudah ditemukan, karena juga
ditunjukkan letak sebab kesalahannya. Untuk penanganan Kesalahan Sewaktu
Proses (Run Time Error) sama dengan penanganan pada Kesalahan Penulisan
(Sintax Error) dapat dilakukan dengan perbaikan pada listing program.

Gambar 4.45 Peringatan Kesalahan Sewaktu Proses

Gambar 4.46 Pemberitahuan Baris Kesalahan Sewaktu Proses


Kode Program yang mengalamai kesalahan adalah sebagai berikut :
Private Sub Form_Load()
Set rsPemasok = con.Execute("SELECT * FROM Pmasok")

68

FrmPemasok.Width = 9600
FrmPemasok.Height = 4440
TabCtrl.Width = 9255
TabCtrl.Height = 3735
txt(0).MaxLength = 100
txt(1).MaxLength = 20
txt(2).MaxLength = 100
txt(2).Enabled = False
txt(0).Enabled = False
txt(1).Enabled = False
cmd(1).Enabled = False
listview
cmbKat.AddItem "Id Pemasok"
cmbKat.AddItem "Nama Pemasok"
End Sub

Kesalahan pada baris kode yang berwarna merah, nama tabel yang ditulis salah
sehingga program mendeteksi kesalahan waktu program sedang berjalan

Kesalahan Logika (Logical Error)


Kesalahan yang terjadi karena logika tidak sesuai dengan yang diharapkan.

Kesalahan ini sulit ditemukan karena tidak ada pemberitahuan mengenai


kesalahanya dan tetap akan diperoleh hasil dari program tetapi hasilnya tidak
tepat.
Contoh kesalahan logika adalah sebagai berikut:
Dim lv As MSComctlLib.ListItem
If txt(0).Text = "" Then
MsgBox "Id Barang masih kosong! ", vbOKOnly + vbCritical
txt(0).SetFocus
ElseIf Val(lblStok.Caption) < Val(txt(1).Text) Then
MsgBox "Stok tidak mencukupi! ", vbOKOnly + vbCritical
txt(1).SelStart = 0
txt(1).SelLength = Len(txt(1).Text)
txt(1).SetFocus
ElseIf txt(1).Text = "0" Or txt(1).Text = "" Then
MsgBox "Jumlah Barang masih kosong! ", vbOKOnly + vbCritical
txt(1).SetFocus
Else
Set lv = lvPenjualan.FindItem(txt(0).Text, 1, , 1)
If lv Is Nothing Then
Set lv = lvPenjualan.ListItems.Add(, , "==>")
lv.SubItems(1) = UCase(txt(0).Text)
lv.SubItems(2) = lblNmBarang.Caption

69

lv.SubItems(3) = Format(lblHrgJual.Caption, "#,###")


lv.SubItems(4) = txt(1).Text
lv.SubItems(5) = Format(lblTot.Caption, "#,###")
lblGrandTotal.Caption = Val(lblGrandTotal.Caption) Val(lblTot.Caption)
lblGrandTotal.Caption = Format(lblGrandTotal.Caption, "#,###")
Else
If MsgBox("Item sudah ada. Apakah ingin diperbarui?", vbQuestion
+ vbYesNo) = vbYes Then
lblGrandTotal.Caption = Val(Format(lblGrandTotal.Caption, "")) Val(Format(lvPenjualan.ListItems(lvPenjualan.SelectedItem.Index).SubItem
s(5), "")) + Val(Format(lblTot.Caption, ""))
lblGrandTotal.Caption = Format(lblGrandTotal.Caption,
"#,###")
lv.SubItems(3) = Format(lblHrgJual.Caption, "#,###")
lv.SubItems(4) = txt(1).Text
lv.SubItems(5) = Format(lblTot.Caption, "#,###")
Else
BersihBarang
txt(0).Text = ""
txt(0).SelStart = 0
txt(0).SelLength = Len(txt(0).Text)
txt(0).SetFocus
End If
End If
BersihBarang
txt(0).Text = ""
txt(0).SelStart = 0
txt(0).SelLength = Len(txt(0).Text)
txt(0).SetFocus
End If

Kesalahan yang terjadi pada program di atas terletak pada tanda minus (-)
seharusnya

menggunakan

tanda

plus

(+)

seperti

kode

berikut

lblGrandTotal.Caption = Val(lblGrandTotal.Caption) + Val(lblTot.Caption).

4.4 Pengetesan System


Pada pengetesan sistem informasi penjualan Family MiniMarket ini
penulis menggunakan metode white box testing guna melihat kedalam modul
untuk meneliti kode-kode program dan menganalisis ada kesalahan atau
tidak. Langkah-langkah yang dapat dilakukan untuk pengetesan program
yang telah dibuat adalah sebagai berikut:

70

1. Pengetesan

sistem

informasi

Family

Minimarket

dengan

cara

menjalakankan aplikasi apakah sudah bekerja dengan baik dan benar.


2. Pengetesan input data, simpan data dan pembuatan laporan, Jika semua
sudah berjalan dengan baik maka aplikasi layak diterapkan.
3. Interaksi tampilan dengan pengguna, untuk mengetahui apakah program
aplikasi dan langkah-langkah pengoperasian mudah dipahami

oleh

pengguna atau tidak. Jika masih terdapat kesulitan atau kendala dalam
menjalankan program aplikasi maka perlu ditinjau lagi atau pengguna
perlu dilatih kembali dalam menjalankan sistem.

No
1

Deskripsi

Data Uji yang

Hasil yang

Pengujian
Menguji

Digunakan
Melakukan login

Diharapkan
Pengguna dapat

Hasil Nyata

Status

Muncul peringatan

Ok

sistem login

kedalam sistem

masuk kedalam

kesalahan

menggunakan username

halaman utama

memasukkan

yang tidak terdaftar

sistem setelah

username dan

dalam sistem dan

berhasil melakukan

password karena

menggunakan username

login.

tidak sesuai dengan

yang telah terdaftar

yang terdaftar dalam

dalam sistem namun

sistem.

dengan password yang


2

Menguji

salah.
Input data karyawan,

Data karyawan

Muncul popup yang

penginputan

mengubah data

tersimpan didalam

menerangkan bahwa

data

karyawan, dan

database dan dapat

data karyawan telah

karyawan

menghapus data

diubah maupun

tersimpan didalam

karyawan.

dihapus

database, data dapat

Menguji

Menginputkan data

Data dan status

diubah dan dihapus.


Muncul popup yang

penginputan

pengguna beserta

pengguna dapat

menerangkan bahwa

data

statusnya, kemudian

tersimpan didalam

data pengguna telah

Ok

Ok

71

pengguna

mengubah dan

database dan dapat

tersimpan didalam

menghapusnya.

diubah maupun

database, data dapat

Menguji

Menginput data

dihapus.
Data pemasok

diubah dan dihapus.


Muncul popup yang

penginputan

pemasok, mengubah

tersimpan didalam

menerangkan bahwa

data

data pemasok, dan

database dan dapat

data pemasok telah

pemasok

menghapus data

diubah maupun

tersimpan didalam

Menguji

pemasok.
Menginputkan data jenis

dihapus
Data jenis barang

database.
Data jenis barang

penginputan

barang, mengubah dan

dan data barang

dan data barang telah

data jenis

menghapusnya.

dapat tersimpan

tersimpan di

barang dan

Kemudian

didalam database dan

database.

data barang

menginputkan data

dapat diubah maupun

Data tersebut juga

barang, mengubah dan

dihapus.

dapat diubah maupun

Menguji

menghapusnya.
Menginputkan transaksi

Semua data transaksi

dihapus.
Data transaksi

penginputan

pembelian dengan

pembelian (data

pembelian telah

transaksi

mengisikan harga beli

barang dan jumlah

tersimpan di

pembelian

dan harga jual beserta

barang yang dibeli,

database.

jumlah barang yang

harga beli dan harga

Harga beli dan Harga

dibeli.

jual yang ditetapkan)

jual tidak dapat


bernialai minus(-)
dan nol (0).
Jumlah barang tidak

Mencoba untuk

menginputkan harga
beli dan harga jual
dengan nilai minus (-)
atau nol (0).
Mencoba untuk

dapat tersimpan di
database.

Menguji

Semua data transaksi

Data transaksi

penginputan

penjualan dengan

penjualan (data

penjualan telah

transaksi

mengisikan jumlah

barang dan jumlah

tersimpan di

penjualan

barang yang dijual.

barang yang dijual)

database.

Mencoba untuk
menginputkan jumlah

Ok

Ok

bisa berisi minus (-),


dan tidak boleh
bernilai nol (0),
muncul peringatan
jumlah barang
masih kosong.

menginputkan jumlah
barang dengan angka
nol (0) atau minus (-)
Menginputkan transaksi

Ok

dapat tersimpan di
database.

Jumlah barang tidak


bisa berisi minus (-),

Ok

72

barang dengan angka

dan tidak boleh

nol (0) atau minus (-).


Mencoba menginputkan

bernilai nol (0),

jumlah barang

jumlah barang

muncul peringatan

melampaui jumlah stok

barang yang tersedia.


8

masih kosong.
Muncul informasi

Menguji

Menginputkan transaksi

Semua data transaksi

stok tidak tersedia.


Data transaksi retur

penginputan

retur pembelian dengan

retur pembelian (data

pembelian telah

transaksi

mengisikan jumlah

barang dan jumlah

tersimpan di

retur

barang yang akan

barang yang akan

database.

pembelian

diretur.

diretur) dan data

Jumlah barang tidak

Mencoba untuk

pengguna yang

bisa berisi minus (-),

menginputkan jumlah

melakukan retur

dan tidak boleh

barang dengan angka

(pemilik/kasir) dapat

bernilai nol (0),

nol (0) atau minus (-).


Mencoba menginputkan

tersimpan di

muncul peringatan

database.

jumlah barang

jumlah barang
melampaui jumlah

masih kosong.
Muncul informasi

barang yang telah

jumlah barang

dibeli.

melebihi jumlah
beli.

Tabel 4.19 Hasil Pengujian


4.5 Manual Program
Aplikasi ini dibuat dengan menggunakan aplikasi Microsoft Visual Basic 6.0
sebagai rancangan antarmuka ( Interface ), untuk tempat penyimpanan data
( Database ) menggunakan Microsoft SQL Server 2000. Dibawah ini tampilan
halaman utama.

Ok

73

Gambar 4.46 Tampilan Halaman Utama

4.5.1

Form Login
Sebelum masuk menu utama, pengguna diwajibkan untuk login
kedalam sistem terlebih dahulu. Hal ini dimaksudkan untuk
mengetahui hak akses pengguna.

Gambar 4.47 Form Login


Gagal login terjadi jika salah memasukan username atau password.
Sistem akan member informasi jika terjadi kesalahan login.
Gambar dibawah ini merupakan tampilan form login ketika salah
memasukan username.

74

Gambar 4.48 Tampilan Informasi Salah Username


Gambar dibawah ini merupakan tampilan form login ketika salah
memasukan password.

Gambar 4.49 Tampilan Informasi Salah Password


4.5.2

Form Pengguna
Agar pengguna dapat melakukan login kedalam sistem, maka perlu
membuat data pengguna didalam sistem. Untuk membuatnya, buka
terlebih dahulu form pengguna dengan cara buka menu pengguna
yang berada di sub menu sistem pada menu utama. Setelah form
pengguna terbuka, klik tombol baru untuk menambahkan pengguna
baru. Masukan semua data yang diperlukan beserta status
pengguna.

75

Gambar 4.50 Tampilan Pengentrian Data Pengguna


Setelah semua data pengguna dimasukkan, klik tombol Simpan.
Jika terdapat data yang belum terisi maka akan muncul informasi
seperti gambar dibawah ini bahwa data masih kosong. Klik tombol
OK untuk melanjutkan pengentrian data.

Gambar 4.51 Tampilan Informasi Data belum terisi


Jika data pengguna berhasil disimpan maka muncul informasi
seperti gambar dibawah ini.

76

Gambar 4.52 Tampilan Informasi Data Berhasil Disimpan


4.5.3

Form data barang


Form ini digunakan untuk mengisi daftar data barang yang
nantinya akan digunakan pada pengisian data penjualan. Untuk
melakukan pengentrian data barang dapat dilakukan dengan cara
sebagai berikut :

Gambar 4.53 Form Data Barang


4.5.4

Form Transaksi Pembelian


Form ini merupakan form yang memuat daftar pembelian barang
dari pemasok yang dilakukan oleh FAMILY Minimarket. Untuk
melakukan pengentrian data pembelian dapat dilakukan dengan
cara sebagai berikut :

77

Gambar 4.54 Form Transaksi Pembelian


4.5.5

Form Transaksi Penjualan


Form ini merupakan form yang digunakan untuk melakukan
pengentrian data penjualan barang.

Gambar 4.55 Form Transaksi Penjualan


4.5.6

Form Transaksi Retur Pembelian


Form ini merupakan form yang memuat daftar retur yang diakukan
oleh FAMILY Minimarket. Untuk melakukan pengentrian data
penjualan barang dapat dilakukan dengan cara sebagai berikut:

78

Gambar 4.56 Form Transaksi Retur Pembelian


4.6 Pemeliharaan Sistem
Pemeliharaan sistem dilakukan setelah tahap implementasi. Sistem baru yang
berjalan digunakan sesuai dengan organisasi. Selama hidupnya sistem secara
periodik akan ditinjau. Perubahan dilakukan jika muncul masalah atau jika
ternyata ada kebutuhan baru. Langkah langkah pemeliharaan sistem terdiri atas :
4.6.1 Penggunaan sistem
Yaitu menggunakan sistem sesuai dengan fungsi tugasnya masing
4.6.2

masing untuk operasi rutin atau sehari hari.


Audit sistem
Yaitu melakukan penggunaan dan penelitian formal untuk
menentukan seberapa baik sistem baru dapat memenuhi kriteria
kinerjahal semacam ini dapat dilakukan oleh seorang auditor

4.6.3

internal.
Penjagaan sistem
Yaitu melakukan pemantauan untuk pemeriksaan rutin sehingga
sistem dapat beroperasi dengan baik. Selain itu juga untuk menjaga
kemutakhiran sistem jika sewaktu waktu terjadi perubahan

4.6.4

lingkungan sistem atau modifikasi rancangan software.


Perbaikan sistem

79

Yaitu melakukan perbaikan jika dalam operasi terjadi kesalahan


dalam program atau kelemahan rancangan yang terdeteksi saat
tahap pengujian sistem.