bab IV.docx
Transcript of bab IV.docx
BAB IV
PENGUJIAN SISTEM
5.1 Teknik Pengujian White Box
Untuk menguji sistem yang telah dibuat, penulis menggunakan metode
pengujian white box testing dan test case. Metode ini bertujuan untuk
mendapatkan ukuran kekompleksan logikal dari perancangan prosedural program.
Untuk menghitung tingkat kompleksitas logika program maka digunakan metode
Cyclomatic Complexity (CC).
Untuk menguji suatu sistem maka bagan alir program (flowchart) yang
didesain sebelumnya dipetakan ke dalam bentuk bagan alir control (flowgraph)
yang nantinya memudahkan untuk penentuan jumlah region, Cyclomatic
Complexity (CC) dan Independent Path, jika jumlah region, Cyclomatic
Complexity (CC) dan Independent Path sama besar maka sistem dinyatakan benar,
tetapi jika sebaliknya maka sistem masih memiliki kesalahan, mungkin dari segi logika
maupun dari sisi lainnya.
Cyclomatic Complelexity (CC) dapat dihitung dengan menggunakan rumus :
Dimana:
E = jumlah edge pada flowgraph
N = Jumlah node pada flowgraph
Adapun istilah-istilah penting yang perlu diperhatikan pada saat
pembuatan flowgraph yaitu:
1. Node
Yaitu lingkaran pada flowgraph yang menggambarkan satu atau lebih perintah
prosedural. Urutan proses dan keputusan dapat dipetakan dalam satu node.
2. Edge
Yaitu tanda panah yang menggambarkan aliran kontrol. Setiap node harus
mempunyai tujuan node.
3. Region
V(G) = E – N + 2
51
Yaitu daerah yang dibatasi oleh node dan edge. Untuk menghitung region
daerah diluar flowgraph juga harus dihitung.
4. Predicate Node
Yaitu kondisi yang terdapat pada node dan mempunyai karakteristik dua atau
lebih edge darinya.
5. Cyclomatic Complexcity
Yaitu metric perangkat lunak yang menyajikan ukuran kuantitatif dari
kekompleksan logikal suatu program. Cyclomatic Complexcity digunakan
untuk mencari jumlah path dalam suatu flowgraph.
6. Independent Path
Yaitu jalur yang melintasi atau melalui dalam program dimana sekurang-
kurangnya terdapat proses perintah yang baru atau kondisi yang baru. Dalam
istilah flowgraph, independent path harus bergerak sekurang-kurangnya pada
satu edge, dimana edge yang akan dilewati tidak dapat dilewati edge sebelum
jalur tersebut didefinisikan.
Adapun manfaat yang dapat diperoleh dengan mengunakan teknik pengujian
white box adalah antara lain sebagai berikut:
1. Dapat menjamin seluruh independent path di dalam modul yang dikerjakan
sekurang-kurangnya satu kali.
2. Dapat mengerjakan seluruh keputusan logikal.
3. Dapat mengerjakan seluruh perulangan yang sesuai dengan batasannya.
4. Dapat mengerjakan seluruh struktur data internal yang menjamin validilitas.
5.2 Hasil Pengujian Sistem
Pengujian sistem yang dilakukan dengan menggunakan metode pengujian
langsung berdasarkan teknik uji white box dapat dihasilkan sistem dan proses
perulangan pada flowchart yang membuat sistem berjalan dengan optimal.
Menguji hipotesis menggunakan teknik uji coba white box pada alur
program atau kendali program, struktur logika program dan prosedur programnya
dengan cara pemetaan flowchart kedalam flowgraph kemudian menghitung
52
besarnya jumlah edge dan node dimana jumlah edge dan node ini akan
menentukan besarnya cyclomatic complexity jika :
1. V(G) = E – N + 2 hasilnya sama dengan V(G) = P + 1
2. Flowgraph mempunyai region yang sama dengan jumlah V(G)
Maka sistem dikatakan sudah terbukti efektif dan efisien. Rumusan
pemetaan flowchart ke dalam flowgraph dan proses perhitungan V(G) tersebut
dapat dilihat pada penjelasan berikut.
5.3 Pengujian Modul-Modul
Gambar 5.1 Flowgraph Menu Utama
Keterangan :
Node 1 : Menu Utama
Node 2 : Menu Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan = “Y” ke Node 4, jika =”T” ke Node 5
Node 4 : Menu form Anggota
Node 5 : Kondisi “IF” jika hasil pilihan = “Y” ke Node 6, jika =”T” ke Node 7
Node 6 : Menu form Buku
Node 7 : Kondisi “IF” jika hasil pilihan = “Y” ke Node 8, jika =”T” ke Node 9
Node 8 : Menu form Staf
Node 9 : Kondisi “IF” jika hasil pilihan = “Y” keNode 10, jika=”T” keNode11
53
Node 10 : Menu form Peminjaman
Node 11 : Kondisi “IF” jika hasil pilihan = “Y” keNode 12, jika=”T” keNode13
Node 12 : Menu form Pengembalisn
Node 13 : Kondisi “IF” jika hasil pilihan = “Y” keNode 14, jika=”T” keNode15
Node 14 : Menu form Cetak
Node 15 : Selesai
Diketahui :N = 15
E = 20
CC = E – N +2
= 20 – 15 + 2
= 7
R = 7
Independent Path = 7, yaitu:
Path 1 = 1 – 2 – 3 – 4 – 2
Path 2 = 1 – 2 – 3 – 5 – 6 – 2
Path 3 = 1 – 2 – 3 – 5 – 7 – 8 – 2
Path 4 = 1 – 2 – 3 – 5 – 7 – 9 – 10 – 2
Path 5 = 1 – 2 – 3 – 5 – 7 – 9 – 11 – 12 – 2
Path 6 = 1 – 2 – 3 – 5 – 7 – 9 – 11 – 13 – 14 – 2
Path 7 = 1 – 2 – 3 – 5 – 7 – 9 – 11– 13 – 15
Gambar 5.2 Flowgraph Menu Input Anggota
54
Keterangan :
Node 1 : Menu Input Anggota
Node 2 : Menu Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 4, jika = “T” ke Node 5
Node 4 : Input Data Anggota
Node 5 : Simpan Data Anggota
Node 6 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 7, jika = “T” ke Node 13
Node 7 : Input Data Anggota
Node 8 : Proses Cari Anggota
Node 9 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 10, jika = “T” ke Node 2
Node10 : Input Menu Pilih
Node11 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 13, jika =“T” ke Node 12
Node12 : Proses Hapus Data
Node13 :Update Data
Node14 : Proses Update Data
Node15 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 2, jika =“T” ke Node 16
Node16 : Selesai
Diketahui : N = 16
E = 20
CC = E – N + 2
= 20 – 16+ 2
= 6
R = 6
Independent Path = 6, yaitu:
Path 1 = 1 – 2 – 3 – 4 – 5 – 2
Path 2 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 2
Path 3 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 12 – 2
Path 4 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 13 – 14 – 2
Path 5 = 1 – 2 – 3 – 6 – 15 – 2
Path 6 = 1 – 2 – 3 – 6 – 15 – 16
55
Gambar 5.2 Flowgraph Menu Input Buku
Keterangan :
Node 1 : Menu Input Buku
Node 2 : Menu Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 4, jika = “T” ke Node 5
Node 4 : Input Data Buku
Node 5 : Simpan Data Buku
Node 6 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 7, jika = “T” ke Node 13
Node 7 : Input Data Buku
Node 8 : Proses Cari Buku
Node 9 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 10, jika = “T” ke Node 2
Node10 : Input Menu Pilih
Node11 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 13, jika =“T” ke Node 12
Node12 : Proses Hapus Data
Node13 :Update Data
Node14 : Proses Update Data
Node15 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 2, jika =“T” ke Node 16
Node16 : Selesai
Diketahui : N = 16
E = 20
CC = E – N + 2
56
= 20 – 16+ 2
= 6
R = 6
Independent Path = 6, yaitu:
Path 1 = 1 – 2 – 3 – 4 – 5 – 2
Path 2 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 2
Path 3 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 12 – 2
Path 4 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 13 – 14 – 2
Path 5 = 1 – 2 – 3 – 6 – 15 – 2
Path 6 = 1 – 2 – 3 – 6 – 15 – 16
Gambar 5.2 Flowgraph Menu Input Staf
Keterangan :
Node 1 : Menu Input Buku
Node 2 : Menu Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 4, jika = “T” ke Node 5
Node 4 : Input Data Staf
Node 5 : Simpan Data Staf
Node 6 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 7, jika = “T” ke Node 13
Node 7 : Input Data Staf
Node 8 : Proses Cari Staf
Node 9 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 10, jika = “T” ke Node 2
57
Node10 : Input Menu Pilih
Node11 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 13, jika =“T” ke Node 12
Node12 : Proses Hapus Data
Node13 :Update Data
Node14 : Proses Update Data
Node15 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 2, jika =“T” ke Node 16
Node16 : Selesai
Diketahui : N = 16
E = 20
CC = E – N + 2
= 20 – 16+ 2
= 6
R = 6
Independent Path = 6, yaitu:
Path 1 = 1 – 2 – 3 – 4 – 5 – 2
Path 2 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 2
Path 3 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 12 – 2
Path 4 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 13 – 14 – 2
Path 5 = 1 – 2 – 3 – 6 – 15 – 2
Path 6 = 1 – 2 – 3 – 6 – 15 – 16
Gambar 5.2 Flowgraph Menu Input Peminjaman
58
Keterangan :
Node 1 : Menu Input Peminjaman
Node 2 : Menu Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 4, jika = “T” ke Node 5
Node 4 : Input Data Peminjaman
Node 5 : Simpan Data Peminjaman
Node 6 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 7, jika = “T” ke Node 13
Node 7 : Input Data Peminjaman
Node 8 : Proses Cari Peminjaman
Node 9 : Kondisi “IF” jika hasil pilihan = “Y” Ke Node 10, jika = “T” ke Node 2
Node10 : Input Menu Pilih
Node11 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 13, jika =“T” ke Node 12
Node12 : Proses Hapus Data
Node13 :Update Data
Node14 : Proses Update Data
Node15 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 2, jika =“T” ke Node 16
Node16 : Selesai
Diketahui : N = 16
E = 20
CC = E – N + 2
= 20 – 16+ 2
= 6
R = 6
Independent Path = 6, yaitu:
Path 1 = 1 – 2 – 3 – 4 – 5 – 2
Path 2 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 2
Path 3 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 12 – 2
Path 4 = 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 13 – 14 – 2
Path 5 = 1 – 2 – 3 – 6 – 15 – 2
Path 6 = 1 – 2 – 3 – 6 – 15 – 16
59
Gambar 5.3 Flowgraph Form Pengembalian
Keterangan :
Node 1 : Menu Input Pengembalian
Node 2 : Menu Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 4, jika =“T” keNode 8
Node 4 : input Data
Node 5 : Cari Data
Node 6 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 7, jika =“T” keNode 2
Node 7 : input pengembalian
Node 8 : proses update pengembalian
Node9 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 2, jika = “T” ke Node 9
Node 10 : menu Utama
Diketahui : N = 10
E = 11
CC = E – N + 2
= 12 – 10+ 2
= 4
60
R = 4
Independent Path = 4, yaitu:
Path 1 = 1 – 2 – 3 – 9 – 10
Path 2 = 1 – 2 – 3 – 5 – 6 – 2
Path 3 = 1 – 2 – 3 – 5 – 6 – 7 – 8 – 2
Path 4 = 1 – 2 – 3 – 9 – 2
Gambar 5.3 Flowgraph Form Cetak
Keterangan :
Node 1 : Menu Input Cetak
Node 2 : Menu Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 4, jika =“T” keNode 5
Node 4 : menu Cetak Anggota
Node 5 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 6, jika =“T” keNode 7
Node 6 : menu Cetak buku
Node7 : Kondisi “IF” jika hasil pilihan =“Y” Ke Node 8, jika = “T” ke Node 9
Node 8 : menu Cetak Staf
Node9 : Kondisi “IF” jika hasil pilihan=”Y”Ke Node 10, jika= “T” keNode 11
Node 10 : menu Cetak Transaksi
Node 11 : menu Utama
Diketahui : N = 11
E = 14
61
CC = E – N + 2
= 14 – 11+ 2
= 5
R = 5
Independent Path =5, yaitu:
Path 1 = 1 – 2 – 3 – 5 – 7 – 9 – 11
Path 2 = 1 – 2 – 3 – 4 – 2
Path 3 = 1 – 2 – 3 – 5 – 6 – 2
Path 4 = 1 – 2 – 3 – 5 – 7 – 8 – 2
Path 5 = 1 – 2 – 3 – 5 – 7 – 9 – 10 – 2
Gambar 5.4 Flowgraph Cetak Anggota
Keterangan :
Node 1 : Form Cetak Anggota
Node 2 : Input Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 4, jika = “T”ke Node 5
Node 4 : Input kode Anggota
Node 5 : Proses Cetak data Anggota
Node 6 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 7, jika = “T”ke Node 8
Node 7 : Proses Cetak Semua Data Anggota
Node 8 : Menu Utama
62
Diketahui : N = 8
E = 9
CC = E – N + 2
= 9 – 8 + 2
= 3
R = 3
Independent Path = 8, yaitu :
Path 1 = 1 – 2 – 3 – 6 – 8
Path 2 = 1 – 2 – 3 – 4 – 5 – 2
Path 3 = 1 – 2 – 3 – 6 – 7 – 2
Gambar 5.4 Flowgraph Cetak Buku
Keterangan :
Node 1 : Form Cetak Buku
Node 2 : Input Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 4, jika = “T”ke Node 5
Node 4 : Input kode Buku
Node 5 : Proses Cetak data Buku
Node 6 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 7, jika = “T”ke Node 8
Node 7 : Proses Cetak Semua Data Buku
63
Node 8 : Menu Utama
Diketahui : N = 8
E = 9
CC = E – N + 2
= 9 – 8 + 2
= 3
R = 3
Independent Path = 8, yaitu :
Path 1 = 1 – 2 – 3 – 6 – 8
Path 2 = 1 – 2 – 3 – 4 – 5 – 2
Path 3 = 1 – 2 – 3 – 6 – 7 – 2
Gambar 5.4 Flowgraph Cetak Data Staf
Keterangan :
Node 1 : Form Cetak Staf
Node 2 : Input Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 4, jika = “T”ke Node 5
Node 4 : Input kode Staf
Node 5 : Proses Cetak data Staf
Node 6 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 7, jika = “T”ke Node 8
64
Node 7 : Proses Cetak Semua Data Staf
Node 8 : Menu Utama
Diketahui : N = 8
E = 9
CC = E – N + 2
= 9 – 8 + 2
= 3
R = 3
Independent Path = 8, yaitu :
Path 1 = 1 – 2 – 3 – 6 – 8
Path 2 = 1 – 2 – 3 – 4 – 5 – 2
Path 3 = 1 – 2 – 3 – 6 – 7 – 2
Gambar 5.4 Flowgraph Cetak Data Transaksi
65
Keterangan :
Node 1 : Form Cetak transaksi
Node 2 : Input Pilihan
Node 3 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 4, jika =“T”ke Node 16
Node 4 : Input pilih
Node5 : Kondisi “IF” jika hasil pilihan =“Y” ke Node 6, jika = “T”ke Node 8
Node 6 : input Kode buku
Node 7 : proses Cetak Transaksi
Node 8 : Kondisi “IF” jika hasil pilihan=“Y” ke Node 10, jika=“T”ke Node 12
Node 9 : input Tanggal
Node 10 : proses Cetak Transaksi
Node11 : Kondisi “IF” jika hasil pilihan=“Y” ke Node 12, jika=“T”ke Node 15
Node 12 : input Bulan
Node 13 : proses Cetak Transaksi
Node14 : input tahun
Node 15 : proses Cetak Transaksi
Node16 : Kondisi “IF” jika hasil pilihan=“Y” ke Node 17, jika=“T”ke Node 18
Node 17 : proses Cetak Transaksi
Node 18 : Menu Cetak
Diketahui : N =18
E = 22
CC = E – N + 2
= 22 – 18 + 2
= 6
R = 6
Independent Path = 6, yaitu :
Path 1 = 1 – 2 – 3 –16 – 18
Path 2 = 1 – 2 – 3 – 4 – 5 – 6 – 8 – 11 – 14 – 15 – 2
Path 3 = 1 – 2 – 3 – 4 – 5 – 6 – 7 – 2
Path 4 = 1 – 2 – 3 – 4 – 5 – 8 – 9 – 10 – 2
66
Path 5 = 1 – 2 – 3 – 4 – 5 – 8 – 11 – 12 – 13 – 2
Path 6 = 1 – 2 – 3 – 16 – 17 – 2
5.4 Analisa Hasil Pengujian Sistem
Hasil pengujian Perancangan Sistem Informasi Pengolahan Data Anggota
dan Data Sirkulasi Pada Perpustakaan Umum Kota Palopo. dapat dilihat pada
tabel dibawah ini:
Tabel 5.1 Hasil Pengujian Program
No. Nama Bagan Alir ProgramJumlah
CC
Independent
Path
Jumlah
Region
1. Form Menu Utama 7 7 7
2. Form Input Anggota 6 6 6
3. Form Input Buku 5 5 5
4. Form Input Staf 5 5 5
5. Form Input Peminjaman 5 5 5
6. Form Input Pengembalian 5 5 5
7. Form Cetak 5 5 5
8. Form Cetak Anggota 3 3 3
9 Form Cetak Buku 3 3 3
10 Form Cetak Staf 3 3 3
11 Form Cetak Transaksi 6 6 6
Total 53 53 53
67
Berdasarkan tabel hasil pengujian program diatas, ternyata jumlah Region,
Cyclomatic Complexity (CC) dan Independent Path adalah sama besar sehingga
dapat ditarik kesimpulan bahwa sistem tersebut sudah benar. Dengan kata lain
bahwa Sistem Informasi Pengolahan Data Anggota dan Data Sirkulasi Pada
Perpustakaan Umum Kota Palopo yang dibuat telah layak digunakan untuk
menggantikan proses pelayanan yang sedang berjalan pada Perpustakaan Umum
kota Palopo
68