68
BAB VI
IMPLEMENTASI DAN TESTING
6.1 Implementasi
Implementasi yang merupakan tahap pembuatan perangkat lunak berdasarkan
desain yang telah dibuat sebelumnya dilaksanakan dengan menggunakan bahasa
pemrograman Visual Basic .Net dengan database Access.
6.1.1 Form Password
Gambar 6.1 Form Password
Form ini berfungsi untuk memproteksi perangkat lunak dari penggunaan yang tidak
sah, dengan mencocokkan kode yang dimasukkan dengan kode yang ada pada database
setelah tombol “Ok” ditekan. Dengan listing sebagai berikut:
Dim caridata As New OleDbCommand("Select * from Pengguna where Kode='Pass'", Conn) Dim hasilcari As OleDbDataReader = caridata.ExecuteReader() Try hasilcari.Read() hasil = CStr(hasilcari.Item("Pasword")) If hasil = TxtKode.Text Then Me.Close() Else MessageBox.Show("Password Salah....!", "Wrong", MessageBoxButtons.OK) End If
69
6.1.2 Form Menu Utama
Gambar 5.2 Menu Utama
Form yang merupakan induk dari form yang lain. Form ini terdiri dari
beberapa bagian yaitu:
1. Tab menu home
Berisikan fungsi utama untuk proses penginputan data jumlah sektor. Diantara
fungsi itu adalah sebagai berikut:
70
- Buka, untuk membuka form pemilihan data sektoral yang ingin diinput.
Baru.ShowDialog()
- Tutup, untuk menutup semua form data sektoral yang terbuka dan
mematikan fungsi penginputan.
For Each f As Form In Me.MdiChildren f.Dispose() Next With Me .NavBarControl1.Enabled = False .Rpilihan.Visible = False .RibbonPageLaporan.Visible = False .RibbonPagetampilan.Visible = False End With
- Simpan, untuk mengeksekusi fungsi simpan data inputan dari form sektor
yang aktif.
actfrm.AcceptButton.PerformClick()
- Simpan Semua, untuk mengeksekusi fungsi simpan data inputan dari
semua form sektor yang terbuka.
For Each f As Form In Me.MdiChildren f.AcceptButton.PerformClick() Next
- Segarkan, untuk mengeksekusi fungsi mengembalikan nilai awal yang
sesuai dengan database dari form sektor yang aktif.
If ToolStripMenuItemChild.Text = "Segarkan" Then ToolStripMenuItemChild.PerformClick() End If RecurseItems(actfrm.ContextMenuStrip.Items)
- Segarkan Semua, untuk mengeksekusi fungsi mengembalikan nilai awal
yang sesuai dengan database dari semua form sektor yang terbuka.
If ToolStripMenuItemChild.Text = "Segarkan" Then ToolStripMenuItemChild.PerformClick() End If For Each f As Form In Me.MdiChildren
71
RecurseItems(f.ContextMenuStrip.Items) Next
2. Tab menu tampilan
Berisikan fungsi untuk mengatur tampilan dari aplikasi. Fungsi-fungsi yang terdapat
pada tab menu tampilan adalah:
- Tutup semua, untuk menutup semua form data sektoral yang terbuka.
For Each f As Form In Me.MdiChildren f.Close() Next
- Form Aktif, untuk menampilkan daftar form yang terbuka dan
mengaktifkan form yang dipilih. Ini merupakan fungsi bawaan dari Visual
Studio.Net.
- Horisontal, untuk menyusun semua form sektor yang terbuka secara
horisontal.
Me.LayoutMdi(MdiLayout.TileHorizontal)
- Vertikal, untuk menyusun semua form sektor yang terbuka secara vertikal.
Me.LayoutMdi(MdiLayout.TileVertical)
- Tema, untuk memilih tema tampilan yang tersedia.
InitSkins() InitializeComponent() Me.InitSkinGallery()
72
3. Tab menu laporan
Berisikan fungsi menampilkan laporan hasil pengolahan, yaitu rekapitulasi dan
perkembangan. Listing untuk menampilkan kedua laporan itu adalah:
<Nama Form>.ShowDialog()
4. Menu data
Berfungsi untuk menampilkan form-form data dasar yang nantinya digunakan saat
menginput data jumlah sektor. Adapun fungsi untuk menampilkan form data dasar adalah
sama dengan menampilkan form laporan. Sedangkan untuk fungsi “Keluar” adalah:
Me.Close()
73
5. Daftar sektor
Berfungsi untuk menampilkan form masing-masing sektor yang akan diinput
jumlahnya. Listing untuk menampilkan form sektor sama dengan listing menampilkan form
yang lainnya.
6.1.3 Form Wilayah, Sektor dan Keterangan
Gambar 6.3 Form wilayah, sektor dan keterangan
Form ini berfungsi untuk memasukkan data dasar pada database. Tabel
datagrid yang digunakan adalah datagrid yang terkoneksi pada database melalui
dataset. fungsi untuk mengeksekusi data seperti fungsi simpan, hapus dan tambah
baris menggunakan BindingNavigator yang merupakan fungsi bawaan untuk eksekusi
datagrid yang berasal dari dataset.
74
6.1.4 Form Ubah Password
Gambar 6.4 Form ubah password
Form ini berfungsi untuk mengubah kode kunci aplikasi. Pertama-tama kode
kunci yang dimasukkan dicocokkan dengan yang terdapat pada database, kemudian
mencocokkan kode baru yang dimasukkan. Listingnya adalah sebagai berikut:
Dim caridata As New OleDbCommand("Select * from Pengguna where Kode='Pass'", Conn) Dim hasilcari As OleDbDataReader = caridata.ExecuteReader() Try hasilcari.Read() hasil = CStr(hasilcari.Item("Pasword")) If hasil = TxtKode.Text Then If TxtBaru1.Text = TxtBaru2.Text Then Dim editdata As New OleDbCommand("update Pengguna set Pasword='" & TxtBaru1.Text & "' where Kode= 'Pass'", Conn) editdata.ExecuteNonQuery() editdata.Dispose() MessageBox.Show("Kode Kunci Telah Berubah", "Berhasil", MessageBoxButtons.OK) Else MessageBox.Show("Kode Kunci Tidak Sama", "Wrong", MessageBoxButtons.OK) End If Else MessageBox.Show("Kode Kunci Salah", "Wrong", MessageBoxButtons.OK) End If Catch ex As Exception MessageBox.Show("Kesalahan pada sistem, silahkan coba kembali atau hubungi programmer", "Error", MessageBoxButtons.OK)
End Try
75
6.1.5 Form Pilih Data Sektoral
Gambar 6.5 Form pemilihan wilayah dan tahun
Form ini tampil setelah tombol buka pada menu utama ditekan. Form ini berfungsi
untuk memilih wilayah dan tahun data sektoral yang ingin dibuka, dengan listing saat tombol
buka ditekan sebagai berikut:
Try Dim caridata As New OleDbCommand("select * from Wilayah where desa='" & LstDesa.Text & "'", Conn) Dim hasilcari As OleDbDataReader = caridata.ExecuteReader() hasilcari.Read() kode = CStr(hasilcari.Item("Kode")) Catch ex As Exception MessageBox.Show("Pilih Wilayah", "Kesalahan", MessageBoxButtons.OK) Exit Sub End Try If LstThn.Enabled = False Then MessageBox.Show("Pilih Tahun", "Kesalahan", MessageBoxButtons.OK) Exit Sub End If Form1.BsiDesa.Caption = LstDesa.Text Form1.SiThn.Caption = LstThn.Text Form1.siKec.Caption = LstKecamatan.Text Form1.BsiKode.Caption = kode
76
6.1.6 Form Sektor
Gambar 6.6 Form sektor
Merupakan form untuk menginputkan data jumlah sektor. Terdapat beberapa
fungsi pada form ini yang dapat dieksekusi melalui menu klik kanan, menu form
utama, atau menggunakan kombinasi tombol keyboard. Fungsi tersebut adalah:
- Simpan, untuk menyimpan data yang ada pada form ke dalam data base
sekaligus menerjemahkan cell yang tidak diisi sebagai “0” untuk diisikan
ke dalam database. Listing yang digunakan adalah:
For baris As Integer = 0 To GridView1.RowCount - 1 Dim j1, j2, j3 As Integer Try j1 = CStr(GridView1.GetRowCellValue(baris, "J1")) Catch ex As Exception j1 = 0 End Try Try j2 = CStr(GridView1.GetRowCellValue(baris, "J2")) Catch ex As Exception j2 = 0 End Try Try j3 = CStr(GridView1.GetRowCellValue(baris, "J3")) Catch ex As Exception j3 = 0 End Try Dim perbaharui As String = "update Jumlah set J1= " & j1 _ & ", J2= " & j2 _
77
& ", J3= " & j3 _ & " where kode=" & GridView1.GetRowCellValue(baris, "Kode") & "" cmd = New OleDbCommand(perbaharui, Conn) cmd.ExecuteNonQuery() Next baris
- Segarkan, untuk mengembalikan nilai awal yang sesuai pada database.
Dan secara langsung mengisikan nilai “0” pada cell kosong untuk form
sektor yang datanya pernah disimpan, dan membersihkan form dari nilai
jumlah untuk form sektor yang datanya belum pernah disimpan. Listing
untuk fungsi ini adalah:
da = New OleDbDataAdapter("Select * from JumlahQr where kodwil='" & Form1.BsiKode.Caption & "' and Tahun = " & Val(Form1.SiThn.Caption) & " and Kodsek like 'H%'", Conn) ds = New DataSet ds.Clear() da.Fill(ds, "JumlahQr") GridControl1.DataSource = (ds.Tables("JumlahQr"))
6.1.7 Laporan
Laporan yang dihasilkan adalah laporan perkembangan dan laporan
rekapitulasi yang diproses menggunakan fungsi summary pada query access. Fungsi
yang ada pada form laporan merupakan fungsi dasar yang sudah disediakan oleh
visual studio dalam bentuk tool printingsystem. Listing untuk menampilkan data
laporan pada form adalah:
Dim da As New OleDbDataAdapter("Select * From KabupatenQr where tahun = " & Form1.SiThn.Caption & "", Conn) Dim ds As New DataSet da.Fill(ds, "KabupatenQr") Dim rpt As New XRRekap Dim ops As New System.Drawing.Printing.PrinterSettings rpt.DataSource = ds.Tables("KabupatenQr") rpt.DataMember = rpt.DataMember rpt.PrinterName = ops.PrinterName rpt.CreateDocument(True) PrintControl1.PrintingSystem = rpt.PrintingSystem
78
Gambar 6.7 Laporan Rekapitulasi
Gambar 6.8 Laporan Perkembangan
79
Gambar 6.9 Aplikasi saat dijalankan
80
6.2 Pengujian
Pengujian perangkat lunak dengan metode black-box untuk setiap operasi
yang dijalankan dengan memasukkan nilai tertentu pada form.
6.2.1 Masuk Aplikasi
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Mengisi Form dengan nilai
yang salah atau kosong
kemudian menekan tombol
“OK”
Kode =
A542
(salah)
Sistem menolak dan
muncul pesan
“Password Salah”
Sesuai
2. Mengisi form dengan nilai
yang benar kemudian
menekan tombol “OK”
Kode =
123B
Sistem Menerima dan
aplikasi dapat digunakan
Sesuai
3. Menekan Tombol “Keluar” Kode = % Aplikasi tertutup Sesuai
Tabel 6.1. Pengujian Proses Masuk Aplikasi
6.2.2 Mengedit Data Wilayah
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Menekan tombol tambah
baris
- Baris penyimpanan
bertambah satu
Sesuai
2. Mengisi form kemudian
menekan tombol “Simpan”
Kode =
0110B,
Kecamatan
= Kolaka,
Desa = Sea
Sistem Menerima dan
data tersimpan ke
database
Sesuai
3. Mengosongkan isian
Kolom Kode kemudian
menekan tombol “Simpan”
Kode = - Sistem Menolak dan
muncul pesan error
Sesuai
4. Menyorot Salah satu baris
kemudian menekan tombol
hapus
- Data menghilang dari
tampilan dan terhapus
pada database
Sesuai
Tabel 6.2. Pengujian Proses Mengedit Data Wilayah
81
6.2.3 Mengedit Data Sektor
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Menekan tombol tambah
baris
- Baris penyimpanan
bertambah satu
Sesuai
2. Mengisi form kemudian
menekan tombol “Simpan”
Kode =
Z01,
Sektor =
Tambang,
Sub = Pasir
Sistem Menerima dan
data tersimpan ke
database
Sesuai
3. Mengosongkan isian
Kolom Kode kemudian
menekan tombol “Simpan”
Kode = - Sistem Menolak dan
muncul pesan error
Sesuai
4. Menyorot Salah satu baris
kemudian menekan tombol
hapus
- Data menghilang dari
tampilan dan terhapus
pada database
Sesuai
Tabel 6.3. Pengujian Proses Mengedit Data Sektor
6.2.4 Mengedit Data Keterangan
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Menekan tombol tambah
baris
- Baris penyimpanan
bertambah satu
Sesuai
2. Mengisi form kemudian
menekan tombol “Simpan”
Sektor =
Tambang,
J1 = Jumlah
J2 = Tenaga
J3 = Hasil
Sistem Menerima dan
data tersimpan ke
database
Sesuai
3. Mengosongkan isian
Kolom Sektor kemudian
menekan tombol “Simpan”
Sektor = - Sistem Menolak dan
muncul pesan error
Sesuai
4. Menyorot Salah satu baris
kemudian menekan tombol
hapus
- Data menghilang dari
tampilan dan terhapus
pada database
Sesuai
Tabel 6.4. Tabel Pengujian Proses Edit Data Keterangan
82
6.2.5 Mengubah Kode Kunci
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Mengisikan Kode Kunci
salah kemudian menekan
tombol “OK”
Kode =
A542
Sistem menolak dan
tampil pesan “Kode
Kunci salah”
Sesuai
2. Mengisikan kode kunci
benar, namun Kode Baru
tidak bersesuaian
kemudian menekan tombol
“OK”
Kode =
123B,
Baru =
321A
Ulang =
321D
Sistem menolak dan
tampil pesan “Kode
Kunci tidak sama”
Sesuai
3. Mengisikan kode kunci
benar, dan Kode Baru yang
bersesuaian kemudian
menekan tombol “OK”
Kode =
123B,
Baru =
321A
Ulang =
321A
Sistem Menerima,
muncul pesan “Kode
Kunci telah berubah”
dan kode kunci berubah
Sesuai
4. Menekan tombol keluar - Form ganti kode kunci
tertutup
Sesuai
Tabel 6.5. Pengujian Proses Mengubah Kode Kunci
6.2.6 Membuka Data Sektoral
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Hanya memilih kecamatan
kemudian menekan tombol
“Buka”
Kecamatan =
Kolaka
Desa = -
Sistem menolak dan
tampil pesan “Pilih
wilayah”
Sesuai
2. Memilih kecamatan dan
desa namun tidak memilih
tahun kemudian menekan
tombol “Buka”
Kecamatan =
Kolaka
Desa = Sea
Tahun= -
Sistem menolak dan
tampil pesan “Pilih
tahun”
Sesuai
3. Memilih kecamatan dan
desa namun serta tahun
kemudian menekan tombol
“Buka”
Kecamatan =
Kolaka
Desa = Sea
Tahun= 2000
Sistem Menerima,
Semua fungsi untuk
menginput data jumlah
sektor aktif
Sesuai
Tabel 6.6. Pengujian Proses Membuka Data Sektoral
83
6.2.7 Mengisi Jumlah Sektor
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Memasukkan Jumlah
selain angka dan menekan
tombol “simpan” atau
pindah ke cell lain
Jumlah = A Sistem menolak dan
tampil tanda silang pada
nilai yang salah. Tidak
bisa pindah cell.
Sesuai
2. Memasukkan Jumlah
berupa angka dan menekan
tombol “simpan”
Jumlah = 1 Sistem menerima, data
tersimpan ke database
Sesuai
3. Memasukkan Jumlah pada
beberapa sektor dan
menekan tombol “simpan
semua”
Sektor Air
Jumlah = 1,
Sektor
Listrik
Jumlah = 2
Sistem menerima, data
dari setiap form sektor
tersimpan ke database
Sesuai
4. Mengisi beberapa cell, dan
membiarkan kosong
bagian lainnya kemudian
menekan tombol
“Segarkan” pada sektor
yang belum pernah diisi
Jumlah = 1
Tenaga
kerja = -
Semua cell yang terisi
dan cell yang kosong
menjadi terisi angka 0
Sesuai
5. Mengganti isi cell,
kemudian menekan tombol
“Segarkan” pada sektor
yang pernah diisi
Jumlah=3 Cell yang diganti
nilainya kembali ke
nilai sebelumnya
Sesuai
6. Mengganti isi cell
beberapa sektor, kemudian
menekan tombol
“Segarkan Semua”
Sektor Air
Jumlah = 4,
Sektor
Listrik
Jumlah = 5
Cell pada semua form
sektor yang diganti
nilainya kembali ke
nilai sebelumnya. Cell
yang belum pernah
terisi, menjadi terisi
nilai 0
Sesuai
7 Menekan tombol tutup - Semua fungsi untuk
menginput data jumlah
sektor menjadi tidak
aktif
Sesuai
Tabel 6.7. Pengujian Proses Mengisi Jumlah Sektoral
84
6.2.8 Mengatur Tampilan
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Membuka beberapa sektor
kemudian menekan tombol
“Tutup”
- Semua form sektor
ditutup
Sesuai
2. Membuka beberapa sektor
kemudian menekan tombol
“Form Aktif”
- daftar semua sektor
terbuka tampil.
Sesuai
3. Membuka beberapa sektor
kemudian menekan tombol
“Horisontal”
- Semua form sektor
terbuka tersusun secara
Horisontal
Sesuai
4. Membuka beberapa sektor
kemudian menekan tombol
“Horisontal”
- Semua form sektor
terbuka tersusun secara
Vertikal
Sesuai
5. Memilih salah satu tema - Tema Aplikasi berubah Sesuai
Tabel 6.8. Pengujian Proses Mengatur Tampilan
6.2.9 Laporan
No Langkah
Pengujian
Test
Case
Hasil Yang
Diharapkan
Hasil
Uji
1. Menekan tombol
“Rekapitulasi”
- Form Laporan tampil
berisi data rekapitulasi
semua data sektoral
pada tahun terpilih
Sesuai
2. Menekan tombol
“Perkembangan”
- Form Laporan tampil
berisi Grafik
perkembangan pertahun
masing-masing sektor
Sesuai
Tabel 6.9. Pengujian Proses Buka Laporan
85
6.3 Pengujian keberhasilan Sistem
Pengujian Menggunakan Analisis deskriptif persentase dengan jumlah
responden sebanyak 5 orang yang merupakan staf dan pegawai BPS Kabupaten
Kolaka yang memiliki pemahaman cukup tentang kebutuhan laporan hasil tabulasi
data sektoral, khususnya laporan grafik perkembangan.
1 2 3 4 5 6 7 8 9
1 4 4 3 4 3 5 4 4 5
2 3 3 3 3 3 3 2 3 3
3 4 3 4 4 4 4 4 3 4
4 4 4 5 4 4 5 4 4 5
5 4 3 4 4 4 4 4 4 4
Jumlah 19 17 19 19 18 21 18 18 21
Persentase 76 68 76 76 72 84 72 72 84
Jumlah Skor 170
Skor Max 225
Persentase Keberhasilan
RespondenItem Soal
75,56%
Tabel 6.10. Pengujian Keberhasilan Sistem