-
23
BAB III
PEMBAHASAN
3.1. Tinjauan Perusahaan
Tinjauan terhadap perusahaan secara umum untuk mendukung jalannya suatu
sistem organisasi agar sistem dapat berjalan dengan lebih terencana, terarah, dan
sesuai dengan peraturan yang harus dipenuhi oleh sistem itu sendiri. Sedangkan
secara khusus untuk menjalankan tugasnya dengan lebih terarah sesuai dengan
peraturan yang telah ada.
3.1.1. Sejarah Perusahaan
Berawal dari sekelompok pemain bola voli “Soliamitra” di Kelurahan Limo
Kecamatan Limo Kota Depok merupakan cikal bakal dari KUD Soliamitra. Dari
kelompok voli tersebut dirintis kegiatan yang menjurus ke pelaku ekonomi yang
diawali dengan mendidik remaja Soliamitra untuk membuat sabun cuci “Bintang
Limo” dan memberikan fasilitas kredit bahan baku pengrajin tersebut.
Pada Oktober 1991, dengan semangat yang tinggi, pantang menyerah serta
selalu optimis. Dimulai oleh 6 orang karyawan, Soliamitra mencoba
mengembangkan usaha baru yang bergerak dalam Simpan Pinjam dan jasa kolektif
listrik, kemudian merubah KOPINKRA menjadi KUD dengan badan hukum :
6118A/BH/KWK-10/5-11/1991. Kemudian pada tahun 1996 badan hukum KUD
Soliamitra mengalami perubahan dengan badan hukum : 6118/BH/PAD/KWK-
10/1996 (Akta Perubahan). Adapun sampai dengan akhir tahun 2017 total anggota
-
24
sebanyak 3.531 orang yang terdiri dari seluruh masyarakat umum yang tanpa
paksaan berkeinginan menjadi anggota KUD Soliamitra.
Dalam memenuhi kebutuhan sebagai lembaga koperasi, KUD Soliamitra saat
ini menjalankan beberapa unit usaha yang bergerak dalam bidang jasa dan
perdagangan salah satunya yaitu Unit Simpanan Pembiayaan Syari’ah, dimana pada
USP Syari’ah ini menyediakan proses simpan pinjam untuk para anggotanya.
Berikut nomor izin usaha:
1. Badan Hukum
a. Nomor: 6118A/BH/KWK-10/5-11/1991 (Tanggal 5 Nopember 1991)
b. Akta Perubahan, Nomor: 6118/BH/PAD/KWK-10/IV/1996 (Tanggal 26 April
1996)
2. Surat Izin Usaha Simpan Pinjam, Nomor: 518/15/DKUP/XII/2015.
Visi dan Misi Perusahaan
Visi KUD Soliamitra:
Menjadi Koperasi yang profesional dan mandiri memiliki komitmen terciptanya
usaha bersama menuju kesejahteraan anggota dan masyarakat pada umumnya.
Misi KUD Soliamitra:
1. Memberikan pelayanan yang terbaik disetiap bidang usaha
2. Menjalin hubungan yang harmonis dengan anggota dan mitra kerja
3. Menciptakan peluang usaha bersama dengan memberdayakan potensi Sumber
Daya Manusia yang tersedia dalam masyarakat sekitar.
-
25
3.1.2. Struktur Organisasi dan Fungsi
Sumber: Company Profile KUD Soliamitra
Gambar III.1.
Struktur Organisasi KUD Soliamitra
-
26
Fungsi dan Tugas:
1. Rapat anggota tahunan (RAT):
Rapat anggota tahunan (RAT) adalah rapat yang diadakan oleh pengurus dan
dihadiri para anggota sebagai bentuk pertanggung jawaban pengurus kepada
anggota setiap akhir periode, RAT memiliki fungsi sebagai berikut:
a. Menetapkan anggaran dasar/ART,
b. Menetapkan kebijaksanaan umum di bidang organisasi, manajemen dan usaha
koperasi,
c. Menyelenggarakan pemilihan, pengangkatan, pemberhentian, pengurus dan
atau pengawas,
d. Menetapkan rencana kerja, rencana anggaran pendapatan dan belanja koperasi
serta pengesahan laporan keuangan,
e. Mengesahkan laporan pertanggung-jawaban pengurus dan pengawas dalam
melaksanakan tugasnya,
f. Menentukan pembagian sisa hasil usaha, dan
g. Menetapkan keputusan penggabungan, peleburan, dana pembubaran koperasi.
2. Penasehat:
a. Bertugas memberikan arah kebijakan, masukan, nasehat dan pertimbangan-
pertimbangan dalam suatu ide dan program dalam pengembangan organisasi
sesuai dengan AD/ART dan Visi Misi organisasi,
b. Sebagai penampung aspirasi didalam usaha-usaha pengembangan organisasi
sesuai dengan AD/ART dan Visi Misi organisasi.
-
27
3. Pengawas:
a. Bertugas melakukan pengawasan dan pemeriksaan sekurang-kurangnya tiga
bulan sekali atas tata kehidupan koperasi yang meliputi organisasi,
manajemen, usaha, keuangan, pembukuan dan kebijaksanaan pengurus,
b. Pengawas berfungsi sebagai pengawas dan pemeriksa,
c. Berwenang melakukan pemeriksaan tentang catatan dan atau harta kekayaan
koperasi,
d. Bertanggungjawab kepada rapat anggota,
e. Membuat laporan tertulis tentang hasil pengawasannya.
4. Ketua:
a. Menyusun sasaran, rencana jangka pendek dan jangka panjang,
b. Mencapai target yang telah ditetapkan secara keseluruhan,
c. Menilai prestasi kinerja pegawai,
d. Menjalin kerjasama dengan pihak lain dalam rangka memenuhi kebutuhan
lembaga,
e. Menjaga koperasi agar dalam aktivitasnya senantiasa tidak lari dari visi dan
misinya.
5. Sekretaris:
a. Membantu ketua dalam melaksanakan kerja,
b. Menyelenggarakan kegiatan surat menyurat dan ketatausahaan koperasi,
c. Mencatat tentang kemajuan dan kelemahan yang terjadi pada koperasi,
d. Membuat pendataan koperasi,
-
28
e. Berwenang menentukan kebijaksanaan dan melakukan segala perbuatan yang
berhubungan dengan bidangnya sesuai keputusan rapat pengurus, serta
menandatangani surat bersama unsur Ketua.
6. Bendahara:
a. Bertanggung jawab untuk koperasi masalah keuangan,
b. Mengatur catatan akuntansi,
c. Mempersiapkan anggaran setiap bulan,
d. Mengawasi penerimaan dan pengeluaran uang,
e. Mempersiapkan laporan keuangan,
f. Mengontrol anggaran,
g. Memelihara semua harta kekayaan koperasi,
h. Merencanakan anggaran belanja dan pendapatan koperasi.
7. Manajer:
a. Tugas manajer adalah mengkoordinasikan seluruh kegiatan usaha,
administrasi, organisasi dan ketatalaksanaan serta memberikan pelayanan
administratif kepada Pengurus dan Pengawas,
b. Untuk melaksanakan tugas tersebut, manajer berfungsi :
1) Sebagai pemimpin tingkat pengelola,
2) Merencanakan kegiatan usaha, kepegawaian dan keuangan,
3) Mengkoordinasikan kegiatan kepala-kepala unit usaha, kepala sekretariat
dan kepala keuangan dalam upaya mengatur, membina baik yang bersifat
teknis maupun administrative,
c. Berwenang mengambil langkah tindak lanjut atas kebijaksanaan yang telah
ditetapkan oleh Pengurus,
-
29
d. Bertanggungjawab kepada Pengurus melalui Ketua.
8. Bagian Keuangan:
a. Juru Buku:
1) Bertanggung jawab dalam pencatatan penerimaan dan pengeluaran kas,
2) Bertanggung jawab atas pembuatan laporan keuangan, neraca, laporan rugi
laba, arus kas, dan lain-lain,
3) Bertanggung jawab atas Rekonsiliasi Bank.
b. Kasir:
1) Membuat bukti keluar masuknya uang yang ada di koperasi,
2) Bertanggung jawab atas dana kas kecil,
3) Bertanggung jawab atas keluar masuknya uang,
4) Bertanggung jawab membuat laporan harian.
9. Kepala USP Syari’ah:
a. Bertanggung jawab atas seluruh kegiatan usaha pada unit simpan pinjam,
b. Berwenang mengambil langkah tindak lanjut mengenai seluruh kegiatan usaha
pada unit simpan pinjam.
10. Anggota:
a. Mengkontribusi modal koperasi,
b. Merekrut banyak orang untuk menjadi anggota koperasi,
c. Meningkatkan kesejahteraan anggota.
-
30
3.2. Tinjauan Kasus
Sistem simpanan pada KUD Soliamitra sudah menggunakan sistem, sedangkan
untuk peminjaman uangnya sendiri masih menggunakan sistem manual atau belum
terkomputerisasi sehingga dengan sistem yang berbeda ini proses bisnis menjadi
tidak efisien.
3.2.1. Proses Bisnis Sistem Berjalan
Proses bisnis sistem yang sedang berjalan bertujuan untuk mengetahui lebih
jelas bagaimana kerja suatu sistem dan mengetahui masalah yang dihadapi sistem.
Adapun analisis prosedur sistem yang sedang berjalan pada KUD Soliamitra sebagai
berikut:
1. Proses simpanan koperasi
Bagi setiap anggota baru yang ingin mendaftar menjadi anggota KUD Soliamitra
diwajibkan menyerahkan fotokopi KTP atau identitas lainnya, mengisi dan
menandatangani formulir pendaftaran menjadi anggota dan membawa setoran
awal yang sesuai persyaratan yaitu simpanan pokok (yang dibayar hanya 1 kali
pembayaran, pada saat awal pendaftaran), simpanan wajib (yang dibayar setiap
bulan), dan simpanan sukarela (dengan nominal yang tidak terbatas). Kasir
menerima setoran awal dan memeriksa kelengkapan data. Kemudian kasir
melakukan login dan menginput data calon anggota ke sistem dan membuatkan
buku tabungan, lalu menyimpan setoran awal anggota dan menginputnya ke
sistem kemudian pilih menu cetak buku. Setelah itu kasir menyerahkan buku
tabungan yang telah dicetak kepada anggota sebagai bukti telah menyetorkan
setoran awal. Anggota membayar simpanan wajib dan simpanan sukarela setiap
bulannya ke bagian kasir, dengan membawa uang sejumlah nominal yang ingin
-
31
dibayarkan dan membawa buku tabungan. Kasir menerima buku tabungan dan
sejumlah uang, lalu mencari data anggota pada sistem berdasarkan nomor anggota
dan nama anggota, kemudian menginput nominal simpanan dan menginput
keterangan (kode jenis transaksi), lalu pilih cetak buku. Setelah buku tabungan
dicetak, kasir memberikan buku tabungan kepada anggota.
2. Proses pengajuan pinjaman
Pada proses transaksi peminjaman terdapat persyaratan yang harus dipenuhi oleh
anggota salah satunya sudah menjadi anggota aktif selama 3 bulan dan memiliki
usaha atau pekerjaan yang produktif serta mencantumkan jumlah pengajuan
pinjaman yang diminta. Kasir menyediakan formulir permohonan pinjaman bagi
anggota yang akan mengajukan pinjaman, kemudian anggota mengisi formulir
tersebut. Setelah mengisi formulir, anggota akan menyerahkan formulir tersebut
kepada kasir untuk meminta tanda tangan dan persetujuan kepala USP, sebelum
menandatangani formulir kepala USP akan memeriksa terlebih dahulu formulir
pengajuan pinjaman dan data berupa slip gaji peminjam (apakah anggota memiliki
gaji yang mencukupi untuk pembayaran pinjaman) jika tidak maka formulir akan
ditolak karena tidak memenuhi syarat, tetapi jika iya maka kepala USP akan
menyetujui dan menandatangani formulir tersebut, lalu menyerahkan ke bagian
kasir. Setelah itu, kasir memberikan informasi kepada anggota bahwa pinjaman
akan cair paling cepat 2 sampai 3 hari dan paling lambat 1 minggu.
3. Proses pencairan dana pinjaman
Kasir memberi informasi kepada anggota bahwa dana sudah bisa dicairkan,
kemudian membuat kwitansi sesuai dengan pinjaman. Anggota menerima
informasi dari kasir untuk mengambil uang pinjaman. Kasir memberikan uang
-
32
pinjaman sesuai dengan jumlah yang diajukan di koperasi, beserta dengan
memberikan fotokopi kwitansi sebagai bukti tanda terima pengambilan pinjaman.
Setelah itu kasir akan memberi informasi terkait jumlah cicilan tiap bulannya
beserta jangka waktunya. Kasir akan mencatatnya kembali kedalam kartu
angsuran dan hutang anggota.
4. Proses pembayaran angsuran pinjaman
Anggota membayar tagihan angsuran pinjaman kepada kasir setiap bulannya
dengan membawa sejumlah uang tagihan dan kartu angsuran, kemudian kasir
menerima uang dan kartu angsuran, lalu mencatat pembayaran angsuran pada
kartu angsuran dan membuat kwitansi sebagai bukti pembayaran angsuran.
Setelah dicatat dan dibuatkan kwitansi, kasir mengembalikan kartu angsuran
beserta memberikan kwitansi kepada anggota yang melakukan pembayaran
angsuran.
5. Proses pembuatan laporan
Dalam pembuatan laporan, juru buku membuat rekap data anggota, data
simpanan, data pinjaman dan data angsuran untuk disesuaikan dengan jumlah
uang yang diterima. Jika sudah sesuai maka laporan dan uangnya diserahkan ke
bendahara, dan bendahara menyerahkan seluruh laporan ke ketua koperasi.
-
33
3.2.2. Use Case Diagram
Berikut gambaran sistem berjalan khususnya untuk proses simpanan yang
sudah terkomputerisasi, yang akan digambarkan dengan use case diagram dibawah
ini:
Gambar III.2.
Use Case Diagram sistem berjalan simpanan koperasi
-
34
3.2.3. Activity Diagram
Berikut proses sistem berjalan simpanan pada koperasi yang akan dijelaskan
dengan gambar activity diagram dibawah ini:
Gambar III.3.
Activity Diagram sistem berjalan simpanan koperasi
-
35
Berikut sistem berjalan yang ada pada KUD Soliamitra dalam proses
peminjaman sampai dengan pembuatan laporan yang masih menggunakan manual:
1. Proses pengajuan pinjaman
Gambar III.4.
Activity Diagram proses pengajuan pinjaman
-
36
2. Proses pencairan dana pinjaman
Gambar III.5.
Activity Diagram proses pencairan dana pinjaman
3. Proses pembayaran angsuran pinjaman
Gambar III.6.
Activity Diagram proses pembayaran angsuran pinjaman
-
37
4. Proses pembuatan laporan
Gambar III.7.
Activity Diagram proses pembuatan laporan
3.2.4. Dokumen Masukan
Spesifikasi Dokumen Masukan
1. Spesifikasi Dokumen Masukan
Nama Dokumen : Fotokopi KTP
Fungsi : Digunakan untuk melengkapi persyaratan sebagai anggota
Sumber : Anggota
Tujuan : Kasir
-
38
Media : Kertas
Jumlah : 1
Frekuensi : setiap mendaftar sebagai anggota koperasi
Bentuk : Lampiran A1
2. Spesifikasi Dokumen Masukan
Nama Dokumen : Formulir pendaftaran anggota
Fungsi : Digunakan untuk pendaftaran anggota koperasi
Sumber : Kasir
Tujuan : Anggota
Media : Kertas
Jumlah : 1
Frekuensi : setiap anggota mendaftar sebagai anggota koperasi
Bentuk : Lampiran A2
3. Spesifikasi Dokumen Masukan
Nama Dokumen : Formulir permohonan pengajuan pinjaman
Fungsi : Digunakan untuk mengajukan pinjaman
Sumber : Kasir
Tujuan : Anggota
Media : Kertas
Jumlah : 1
Frekuensi : setiap anggota yang ingin melakukan pinjaman
Bentuk : Lampiran A3
-
39
3.2.5. Dokumen Keluaran
Spesifikasi Dokumen Keluaran
1. Spesifikasi Dokumen Keluaran
Nama Dokumen : Buku tabungan
Fungsi : Digunakan sebagai bukti setoran simpanan
Sumber : Kasir
Tujuan : Anggota
Media : Kertas
Jumlah : 1 Rangkap
Frekuensi : setiap anggota melakukan simpanan
Bentuk : Lampiran B1
2. Spesifikasi Dokumen Keluaran
Nama Dokumen : Kartu angsuran
Fungsi : Digunakan sebagai bukti transaksi angsuran
Sumber : Kasir
Tujuan : Anggota
Media : Kertas
Jumlah : 1
Frekuensi : setiap anggota melakukan pembayaran angsuran
Bentuk : Lampiran B2
3. Spesifikasi Dokumen Keluaran
Nama Dokumen : Laporan angsuran pembiayaan
Fungsi : Digunakan untuk merekap rincian angsuran anggota
Sumber : Juru buku
-
40
Tujuan : Ketua koperasi
Media : Kertas
Jumlah : 1
Frekuensi : setiap juru buku merekap untuk setiap bulannya
Bentuk : Lampiran B3
4. Spesifikasi Dokumen Keluaran
Nama Dokumen : Laporan simpanan
Fungsi : Digunakan untuk merekap rincian setoran simpanan
Sumber : Juru buku
Tujuan : Ketua koperasi
Media : Kertas
Jumlah : 1
Frekuensi : setiap juru buku merekap untuk setiap bulannya
Bentuk : Lampiran B4
5. Spesifikasi Dokumen Keluaran
Nama Dokumen : Laporan pinjaman
Fungsi : Digunakan untuk merekap rincian setoran pinjaman
Sumber : Juru buku
Tujuan : Ketua koperasi
Media : Kertas
Jumlah : 1
Frekuensi : setiap juru buku merekap untuk setiap bulannya
Bentuk : Lampiran B5
-
41
3.2.6. Permasalahan Pokok
Dari hasil penelitian serta uraian yang telah penulis paparkan diatas, dapat
diambil kesimpulan bahwa dalam sistem simpan pinjam khususnya sistem
peminjaman pada KUD Soliamitra masih menggunakan sistem manual. Walaupun
pada sistem simpanannya sendiri sudah terkomputerisasi, namun apabila sistem
peminjamannya masih manual terdapat kelemahan pada sistem yang berjalan,
diantaranya:
1. Kurang efektif, dikarenakan sistem keduanya saling berkaitan, dan nantinya
akan membutuhkan waktu yang cukup lama dalam proses pembuatan laporan
sehingga berpengaruh dalam pengambilan keputusan,
2. Kesulitan dalam mengelola data dan proses data pinjaman, dikarenakan masih
harus mencatat pada buku dan menggunakan Microsoft excel,
3. Pada saat anggota melakukan pembayaran angsuran, juru buku harus
menghitung dan menjumlahkan dengan menggunakan kalkulator, dimana juru
buku harus menulis dan hanya mengisi ke Microsoft excel tanpa menggunakan
rumus perhitungan yang harus dibayar oleh anggota ketika melakukan
transaksi,
4. Data yang dihasilkan kurang akurat seperti sering terjadi kesalahan dalam
pencatatan laporan keuangan maupun transaksi simpan pinjam anggota.
Dari penjabaran permasalahan pokok yang ada di KUD Soliamitra dapat
disimpulkan bahwa pengolahan data simpan pinjam sering terjadi kesalahan dan
keterlambatan khususnya untung peminjaman sehingga dapat menghambat kinerja
para pengurus koperasi.
-
42
3.2.7. Pemecahan Masalah
Berdasarkan atas permasalahan yang ada dan hasil analisa, maka diperlukan
solusi pemecahan masalah terhadap permasalahan tersebut, untuk memecahkan
masalah yang ada di KUD Soliamitra, khususnya pada sistem simpan pinjam, yaitu:
1. Sistem yang diperlukan mampu mempermudah dalam mengelola data sehingga
tidak perlu mengisi data menggunakan buku dan Microsoft excel,
2. Diperlukannya sistem yang dapat membantu pegawai koperasi dalam
mempercepat pembuatan laporan, sehingga tidak mengalami keterlambatan,
3. Memerlukan sistem yang dapat membantu pegawai koperasi dalam melakukan
perhitungan simpan pinjam,
4. Sistem yang diperlukan mampu memberikan informasi yang akurat tentang
laporan keuangan dan transaksi simpan pinjam.
Dengan begitu hendaknya perusahaan tersebut menggunakan sistem yang telah
terkomputerisasi baik untuk sistem simpanan maupun sistem pinjaman sehingga
permasalahan yang sering terjadi dapat teratasi dengan baik, dan juga dengan
menggunakan sistem komputerisasi maka juga dapat mempermudah dalam
penggunaannya serta mengefisiensikan proses kerja agar lebih baik serta cepat.
Sistem informasi simpan pinjam pada KUD (Koperasi Unit Desa) Soliamitra yang
akan dibangun dapat mengkoordinir semua proses kegiatan yang ada di KUD
Soliamitra, dimulai dari pendaftaran anggota, simpanan dana, pinjaman dana,
pembayaran angsuran pinjaman, dan pembuatan laporan.
-
43
3.3. Analisis Kebutuhan Software
Analisis kebutuhan software adalah langkah awal untuk menentukan perangkat
lunak yang dihasilkan. Perangkat lunak yang baik dan sesuai dengan kebutuhan
pengguna sangat tergantung kepada keberhasilan dalam melakukan analisa
kebutuhan.
3.3.1. Analisis Kebutuhan
Berdasarkan dari analisa sistem yang diamati pada KUD Soliamitra yang
merupakan badan usaha yang bergerak dibidang jasa dalam memberikan layanan
untuk masyarakat luas khususnya wilayah limo dan sekitarnya dalam kegiatan
simpan pinjam. Untuk saat ini kegiatan simpan pinjam pada KUD Soliamitra sudah
menggunakan sistem terkomputerisasi, khususnya untuk sistem simpanan.
Sedangkan untuk sistem peminjamannya sendiri masih menggunakan manual dimana
setiap terjadi pembayaran angsuran hanya mencatat dibuku laporan dan
menggunakan Microsoft excel. Dengan sistem simpanan yang sudah ada, penulis
membuatkan beberapa kebutuhan untuk sistem peminjaman agar saling berhubungan
dengan sistem simpanan dalam pengolahan data anggota, transaksi simpanan,
transaksi pinjaman dana, pembayaran angsuran dan menghasilkan sebuah laporan.
Analisa kebutuhan user akan Sistem Informasi Simpan Pinjam pada KUD Soliamitra
akan diuraikan sebagai berikut:
1. Hak Akses Admin
A.1. Admin melakukan login
A.2. Admin mengelola menu master data
A2.1. Admin mengelola data submenu akun
A2.2. Admin mengelola data submenu anggota
-
44
A.3. Admin mengelola data menu transaksi
A3.1. Admin mengelola data submenu simpanan
A3.2. Admin mengelola data submenu penarikan
A3.3. Admin mengelola data submenu pinjaman
A3.4. Admin mengelola data submenu angsuran
A3.5. Admin mengelola data submenu form jurnal
A.4. Admin mengelola data menu laporan
A4.1. Admin mengakses submenu jurnal umum
2. Hak Akses Kepala Unit Simpan Pinjam
B.1. KA USP melakukan login
B.2. KA USP mengakses menu laporan
B2.1. KA USP mengakses submenu jurnal umum
B2.2. KA USP mengakses submenu buku besar
B2.3. KA USP mengakses submenu laporan simpanan
B2.4. KA USP mengakses submenu laporan pinjaman
-
45
3.3.2. Use Case Diagram
Gambar III.8.
Use Case Diagram sistem informasi simpan pinjam
-
46
Tabel III.1.
Deskripsi Use Case Sistem Informasi Simpan Pinjam
Use Case Sistem Informasi Simpan Pinjam
Tujuan Aktor dapat melihat data yang ada di dalam halaman sistem
Deskripsi Sistem ini memungkinkan aktor untuk masuk ke halaman menu
utama sistem simpan pinjam
Skenario Utama
Aktor Admin dan Kepala USP
Kondisi Awal Aktor membuka aplikasi halaman sistem
Aksi Aktor Reaksi Sistem
1. Admin memilih submenu akun
2. Admin memilih submenu anggota
3. Admin memilih submenu simpanan
4. Admin memilih submenu penarikan
5. Admin memilih submenu pinjaman
6. Admin memilih submenu angsuran
7. Admin memilih submenu laporan
8. Kepala USP memilih submenu laporan
Sistem akan menampilkan pilihan untuk menambah data akun yang
baru, mengubah data akun yang sudah ada, menghapus data akun dan
melihat data akun yang sudah ada.
Sistem akan menampilkan pilihan untuk menambah data anggota
yang baru, mengubah data anggota yang sudah ada, menghapus data
anggota dan melihat data anggota yang sudah ada.
Sistem akan menampilkan pilihan untuk menambah data simpanan
anggota yang baru, memasukkan jumlah simpanan peranggota,
menarik uang simpanan dan menghapus data simpanan.
Sistem akan menampilkan pilihan untuk menambah data penarikan
dan menarik uang simpanan.
Sistem akan menampilkan pilihan untuk memasukkan data pinjaman
anggota yang baru, memasukkan angsuran pinjaman, dan menghapus
data pinjaman.
Sistem akan menampilkan pilihan untuk menambah data angsuran
yang baru dan mengisi pembayaran angsuran peranggota.
Sistem akan menampilkan pilihan untuk mengisi form jurnal dan
mengakses laporan jurnal umum.
Sistem akan menampilkan data laporan.
Kondisi Akhir Jika perintah sesuai maka sistem akan menampilkan seperti yang
diinginkan oleh si Aktor.
-
47
3.3.3. Activity Diagram
1. Hak akses Admin
a. Admin melakukan login
Gambar III.9.
Activity diagram admin melakukan login
-
48
b. Admin mengelola data submenu akun
Gambar III.10.
Activity diagram admin mengelola data submenu akun
-
49
c. Admin mengelola data submenu anggota
Gambar III.11.
Activity diagram admin mengelola data submenu anggota
-
50
d. Admin mengelola data submenu simpanan
Gambar III.12.
Activity diagram admin mengelola data submenu simpanan
-
51
e. Admin mengelola data submenu simpanan per anggota
Gambar III.13.
Activity diagram admin mengelola data submenu simpanan per anggota
-
52
f. Admin mengelola data submenu penarikan
Gambar III.14.
Activity diagram admin mengelola data submenu penarikan
-
53
g. Admin mengelola data submenu pinjaman
Gambar III.15.
Activity diagram admin mengelola data submenu pinjaman
-
54
h. Admin mengelola data submenu angsuran
Gambar III.16.
Activity diagram admin mengelola data submenu angsuran
-
55
i. Admin mengelola data submenu form jurnal
Gambar III.17.
Activity diagram admin mengelola data submenu form jurnal
-
56
2. Hak akses KA USP
a. KA USP melakukan login
Gambar III.18.
Activity diagram KA USP melakukan login
-
57
b. KA USP mengakses menu laporan
Gambar III.19.
Activity diagram KA USP mengakses menu laporan
-
58
3.4. Desain
Desain merupakan perencanaan dalam pembuatan sebuah objek sistem
komponen dan struktur yang mana titik beratnya dilakukan dengan melihat segala
sesuatu persoalan tidak secara terpisah atau tersendiri, namun sebagai suatu kesatuan
dimana satu masalah dengan lainnya saling terkait.
3.4.1. Entity Relationship Diagram (ERD)
Didalam Entity Relationship Diagram (ERD) ini mencakup seluruh kegiatan
aktivitas yang diusulkan untuk KUD Soliamitra pada Unit Simpan Pinjam.
Gambar III.20.
Entity Relationship Diagram (ERD)
-
59
3.4.2. Logical Record Structure (LRS)
Didalam Logical Record Structure (LRS) ini mencakup seluruh kegiatan
aktivitas yang diusulkan untuk KUD Soliamitra pada Unit Simpan Pinjam.
Gambar III.21.
Logical Record Structure (LRS)
3.4.3. Spesifikasi file
1. Spesifikasi File Admin
Nama Database : peminjaman
Nama File : admin
Fungsi : Digunakan untuk mengelola data admin
-
60
Type File : Master Data
Akses File : Random
Panjang Record : 90 byte
Field Key : user_name
Tabel III.2.
Spesifikasi file tabel Admin
No Elemen Data Akronim Tipe Panjang Keterangan
1 Kode User user_name varchar 10 Primary key
(Auto increment)
2 Nama User nama_lengkap varchar 25
3 Password password varchar 50
4 Hak Akses hak_akses char 5
2. Spesifikasi File Master Akun
Nama Database : peminjaman
Nama File : master_akun
Fungsi : Digunakan untuk mengelola data master akun
Type File : Master Data
Akses File : Random
Panjang Record : 80 byte
Field Key : kode_akun
Tabel III.3.
Spesifikasi file tabel Master Akun
No Elemen Data Akronim Tipe Panjang Keterangan
1 Kode Akun kode-akun varchar 10 Primary key
(Auto increment)
2 Nama Akun nama_akun varchar 30
3 Jenis Akun jenis_akun varchar 30
4 Saldo Normal saldo_normal varchar 10
3. Spesifikasi File Anggota
Nama Database : peminjaman
Nama File : anggota
-
61
Fungsi : Digunakan untuk mengelola data anggota
Type File : Master Data
Akses File : Random
Panjang Record : 147 byte
Field Key : no_anggota
Tabel III.4.
Spesifikasi file tabel Anggota
No Elemen Data Akronim Tipe Panjang Keterangan
1 Nomor
Anggota
no_anggota varchar 10 Primary key
(Auto increment)
2 Nama Lengkap nama_lengkap char 20
3 Jenis Kelamin jenis_kelamin enum -
4 Tanggal Lahir tgl_lahir date -
5 Nomor KTP no_ktp int 16
6 Alamat alamat varchar 30
7 Nomor
Telepon
no_telp int 12
8 Status Rumah status_rumah enum -
9 Status Kawin status_kawin enum -
10 Pekerjaan pekerjaan char 10
11 Perusahaan perusahaan char 20
12 Telepon
Perusahaan
tlp_perusahaan int 12
13 Penghasilan penghasilan int 11
14 Pokok pokok int 6
4. Spesifikasi File Angsuran
Nama Database : peminjaman
Nama File : angsuran1
Fungsi : Digunakan untuk mengelola data angsuran
Type File : Transaksi
Akses File : Random
Panjang Record : 93 byte
Field Key : no_angsuran
-
62
Tabel III.5.
Spesifikasi file tabel Angsuran
No Elemen Data Akronim Tipe Panjang Keterangan
1 Nomor
Angsuran
no_angsuran varchar 10 Primary key
(Auto increment)
2 Nomor
Pinjaman
no_pinjam varchar 10 Foreign Key
3 Nomor
Anggota
no_anggota varchar 10 Foreign Key
4 Nama Lengkap nama_lengkap char 20
5 Jumlah
Pinjaman
jumlah_pinjam int 11
6 Jangka Waktu jangka_waktu int 5
7 Perbulan perbulan int 11
8 Angsuran Ke angsuran_ke int 5
9 Sisa Angsuran sisa_angsuran int 11
10 Tanggal Bayar tgl_bayar date -
5. Spesifikasi File Penarikan
Nama Database : peminjaman
Nama File : penarikan
Fungsi : Digunakan untuk mengelola data penarikan simpanan
Type File : Transaksi
Akses File : Random
Panjang Record : 83 byte
Field Key : no_penarikan
Tabel III.6.
Spesifikasi file tabel Penarikan
No Elemen Data Akronim Tipe Panjang Keterangan
1 Nomor
Penarikan
no_penarikan varchar 10 Primary key
(Auto increment)
2 Tanggal Tarik tgl_tarik date -
3 Nomor
Simpanan
no_simpanan varchar 10 Foreign key
4 Nomor
Anggota
no_anggota varchar 10 Foreign key
5 Nama Lengkap nama_lengkap char 20
6 Total total int 11
7 Jumlah Tarik jumlah_tarik int 11
8 Sisa Simpanan sisa_simpanan int 11
-
63
6. Spesifikasi File Pinjaman
Nama Database : peminjaman
Nama File : pinjaman
Fungsi : Digunakan untuk mengelola data pinjaman
Type File : Transaksi
Akses File : Random
Panjang Record : 50 byte
Field Key : no_pinjam
Tabel III.7.
Spesifikasi file tabel Pinjaman
No Elemen Data Akronim Tipe Panjang Keterangan
1 Nomor
Pinjaman
no_pinjam varchar 10 Primary key
(Auto increment)
2 Tanggal Pinjam tgl_pinjam date -
3 Nomor Anggota no_anggota varchar 10 Foreign key
4 Jumlah
Pinjaman
jumlah_pinjam int 15
5 Jangka Waktu jangka_waktu int 5
6 Perbulan perbulan int 10
7. Spesifikasi File Simpanan
Nama Database : peminjaman
Nama File : simpanan
Fungsi : Digunakan untuk mengelola data simpanan
Type File : Transaksi
Akses File : Random
Panjang Record : 43 byte
Field Key : no_pinjam
-
64
Tabel III.8.
Spesifikasi file tabel Simpanan
No Elemen Data Akronim Tipe Panjang Keterangan
1 Nomor
Simpanan
no_simpanan varchar 10 Primary key
(Auto increment)
2 Tanggal
Simpanan
tgl_simpanan date -
3 Nomor Anggota no_anggota varchar 10 Foreign key
4 Wajib wajib int 6
5 Sukarela sukarela int 7
6 Total total int 10
8. Spesifikasi File Jurnal
Nama Database : peminjaman
Nama File : jurnal
Fungsi : Digunakan untuk mengelola data jurnal
Type File : Transaksi
Akses File : Random
Panjang Record : 70 byte
Field Key : no_referensi
Tabel III.9.
Spesifikasi file tabel Jurnal
No Elemen Data Akronim Tipe Panjang Keterangan
1 Nomor Referensi no_referensi varchar 10 Primary key
(Auto increment)
2 Tanggal
Transaksi tgl_trans date -
3 Nomor Bukti
Transaksi
no_bukti_trans varchar 10
4 Keterangan keterangan varchar 50
9. Spesifikasi File Jurnal Detail
Nama Database : peminjaman
Nama File : jurnal_detail
Fungsi : Digunakan untuk mengelola data jurnal detail
-
65
Type File : Transaksi
Akses File : Random
Panjang Record : 42 byte
Field Key : no_referensi
Tabel III.10.
Spesifikasi file tabel Jurnal Detail
No Elemen Data Akronim Tipe Panjang Keterangan
1 Nomor Referensi no_referensi varchar 10 Foreign key
2 Kode Akun kode_akun varchar 10 Foreign key
3 Debet debet int 11
4 Kredit kredit int 11
-
66
3.4.4. Sequence Diagram
1. Sequence diagram submenu simpanan
Gambar III.22.
Sequence diagram submenu simpanan
-
67
2. Sequence diagram submenu penarikan
Gambar III.23.
Sequence diagram submenu penarikan
-
68
3. Sequence diagram submenu pinjaman
Gambar III.24.
Sequence diagram submenu pinjaman
-
69
4. Sequence diagram submenu angsuran
Gambar III.25.
Sequence diagram submenu angsuran
-
70
3.4.5. Deployment Diagram
Gambar III.26.
Deployment Diagram
3.4.6. User Interface
1. Tampilan halaman Admin
a. Form Login
Gambar III.27.
Tampilan form login admin
-
71
b. Halaman utama Admin
Gambar III.28.
Tampilan halaman utama admin
c. Halaman submenu data akun
1) Tampil data akun
Gambar III.29.
Tampilan data akun
-
72
2) Tambah data akun
Gambar III.30.
Tampilan tambah data akun
d. Halaman submenu data anggota
1) Tampil data anggota
Gambar III.31.
Tampilan data anggota
-
73
2) Tambah data anggota
Gambar III.32.
Tampilan tambah data anggota
e. Halaman submenu simpanan
1) Tampilan data simpanan
Gambar III.33.
Tampilan data simpanan
-
74
2) Tampilan tambah data simpanan
Gambar III.34.
Tampilan tambah data simpanan
3) Tambah data simpanan per anggota
Gambar III.35.
Tampilan tambah data simpanan per anggota
-
75
f. Halaman submenu penarikan
1) Tampilan data penarikan
Gambar III.36.
Tampilan data penarikan
2) Tambah data penarikan
Gambar III.37.
Tampilan tambah data penarikan
-
76
g. Halaman submenu pinjaman
1) Tampil data pinjaman
Gambar III.38.
Tampilan data pinjaman
2) Tambah data pinjaman
Gambar III.39.
Tampilan tambah data pinjaman
-
77
h. Halaman submenu angsuran
1) Tampil data angsuran
Gambar III.40.
Tampilan data angsuran
2) Tambah data angsuran
Gambar III.41.
Tampilan tambah data angsuran
-
78
3) Tambah data angsuran per anggota
Gambar III.42.
Tampilan tambah data angsuran per anggota
i. Tampilan submenu form jurnal
Gambar III.43.
Tampilan submenu form jurnal
-
79
2. Tampilan halaman KA USP
a. Form Login
Gambar III.44.
Tampilan form login KA USP
b. Halaman utama KA USP
Gambar III.45.
Tampilan halaman utama KA USP
-
80
c. Submenu yang ada pada menu Laporan
1) Laporan Simpanan
Gambar III.46.
Tampilan laporan simpanan
2) Laporan Pinjaman
-
81
Gambar III.47.
Tampilan laporan pinjaman
-
82
3) Laporan Jurnal Umum
Gambar III.48.
Tampilan laporan jurnal umum
-
83
4) Laporan Buku Besar
Gambar III.49.
Tampilan laporan buku besar
-
84
3.5. Implementasi
3.5.1. Code Generation
1. Servlet Simpanan (Simpanan_Servlet.java) /*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package control;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.Simpanan;
/**
*
* @author Ruang Kelas
*/
public class Simpanan_Servlet extends MySia {
/**
* Processes requests for both HTTP GET and
POST
* methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
String no_simpanan = request.getParameter("no_simpanan");
String tgl_simpanan = request.getParameter("tgl_simpanan");
String no_anggota = request.getParameter("no_anggota");
String wajib = request.getParameter("wajib");
String sukarela = request.getParameter("sukarela");
String total = request.getParameter("total");
-
85
Simpanan simpanan = new
Simpanan(no_simpanan,tgl_simpanan,no_anggota,wajib,sukarela,total);
//setting jenis aksi: aksi1=insert, aksi2=update, aksi3=delete
String aksi1 = request.getParameter("aksi1");
String aksi2 = request.getParameter("aksi2");
String aksi3 = request.getParameter("aksi3");
//halaman yang dibuka setelah aksi
String URL = "tampil_simpanan.jsp";
/*
if(kode == null){
out.print("alert('data tidak boleh kosong');"
+ "window.location.href='"+URL+"'"
+ "");
}*/
if(aksi1 != null){
out.print(super.insert(simpanan.toInsert(), URL));
} else if(aksi2 != null){
out.print(super.update(simpanan.toUpdate(), URL));
} else if(aksi3 != null){
out.print(super.delete(simpanan.toDelete(no_simpanan), URL));
}
} catch (ClassNotFoundException | SQLException ex) {
Logger.getLogger(Simpanan_Servlet.class.getName()).log(Level.SEVERE,
null, ex);
}
}
//
/**
* Handles the HTTP GET method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP POST method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
-
86
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}//
}
2. Servlet Penarikan (Penarikan_Servlet.java) /*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package control;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.Penarikan;
/**
*
* @author Ruang Kelas
*/
public class Penarikan_Servlet extends MySia {
/**
* Processes requests for both HTTP GET and
POST
* methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
-
87
*/
@Override
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
String no_penarikan = request.getParameter("no_penarikan");
String tgl_tarik = request.getParameter("tgl_tarik");
String no_simpanan = request.getParameter("no_simpanan");
String no_anggota = request.getParameter("no_anggota");
String nama_lengkap = request.getParameter("nama_lengkap");
int total;
int jumlah_tarik;
int sisa_simpanan;
total = Integer.parseInt(request.getParameter("total"));
jumlah_tarik = Integer.parseInt(request.getParameter("jumlah_tarik"));
sisa_simpanan =
Integer.parseInt(request.getParameter("sisa_simpanan"));
/* data int
int umur = 0;
String um = request.getParameter("umur");
if(um != null){
umur = Integer.parseInt(um);
}
*/
/*data double
double umur = 0;
String um = request.getParameter("umur");
if(um != null){
umur = Double.parseDouble(um);
}
*/
Penarikan penarikan = new
Penarikan(no_penarikan,tgl_tarik,no_simpanan,no_anggota,nama_lengkap,total,
jumlah_tarik,sisa_simpanan);
//setting jenis aksi: aksi1=insert, aksi2=update, aksi3=delete
String aksi1 = request.getParameter("aksi1");
String aksi2 = request.getParameter("aksi2");
String aksi3 = request.getParameter("aksi3");
//halaman yang dibuka setelah aksi
String URL = "tampil_penarikan.jsp";
/*
if(kode == null){
out.print("alert('data tidak boleh kosong');"
+ "window.location.href='"+URL+"'"
+ "");
}*/
if(aksi1 != null){
-
88
out.print(super.insert(penarikan.toInsert(), URL));
} else if(aksi2 != null){
out.print(super.update(penarikan.toUpdate(), URL));
} else if(aksi3 != null){
out.print(super.delete(penarikan.toDelete(no_penarikan), URL));
}
} catch (ClassNotFoundException | SQLException ex) {
Logger.getLogger(Penarikan_Servlet.class.getName()).log(Level.SEVERE,
null, ex);
}
}
//
/**
* Handles the HTTP GET method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP POST method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
-
89
}//
}
3. Servlet Pinjaman (Pinjaman_Servlet.java) /*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package control;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.Pinjaman;
/**
*
* @author Ruang Kelas
*/
public class Pinjaman_Servlet extends MySia {
/**
* Processes requests for both HTTP GET and
POST
* methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
String no_pinjam = request.getParameter("no_pinjam");
String tgl_pinjam = request.getParameter("tgl_pinjam");
String no_anggota = request.getParameter("no_anggota");
String jumlah_pinjam = request.getParameter("jumlah_pinjam");
String jangka_waktu = request.getParameter("jangka_waktu");
String perbulan = request.getParameter("perbulan");
-
90
Pinjaman pinjaman = new
Pinjaman(no_pinjam,tgl_pinjam,no_anggota,jumlah_pinjam,jangka_waktu,perb
ulan);
//setting jenis aksi: aksi1=insert, aksi2=update, aksi3=delete
String aksi1 = request.getParameter("aksi1");
String aksi2 = request.getParameter("aksi2");
String aksi3 = request.getParameter("aksi3");
//halaman yang dibuka setelah aksi
String URL = "tampil_pinjaman.jsp";
/*
if(kode == null){
out.print("alert('data tidak boleh kosong');"
+ "window.location.href='"+URL+"'"
+ "");
}*/
if(aksi1 != null){
out.print(super.insert(pinjaman.toInsert(), URL));
} else if(aksi2 != null){
out.print(super.update(pinjaman.toUpdate(), URL));
} else if(aksi3 != null){
out.print(super.delete(pinjaman.toDelete(no_pinjam), URL));
}
} catch (ClassNotFoundException | SQLException ex) {
Logger.getLogger(Pinjaman_Servlet.class.getName()).log(Level.SEVERE,
null, ex);
}
}
//
/**
* Handles the HTTP GET method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP POST method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
-
91
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}//
}
4. Servlet Angsuran (AngsuranServlet.java) /*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package control;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.Angsuran1;
/**
*
* @author Ruang Kelas
*/
public class AngsuranServlet extends MySia {
/**
* Processes requests for both HTTP GET and
POST
* methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
-
92
* @throws IOException if an I/O error occurs
*/
@Override
protected void processRequest(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
String no_angsuran = request.getParameter("no_angsuran");
String tgl_bayar = request.getParameter("tgl_bayar");
String no_pinjam = request.getParameter("no_pinjam");
String no_anggota = request.getParameter("no_anggota");
String nama_lengkap = request.getParameter("nama_lengkap");
int jumlah_pinjam;
int jangka_waktu;
int perbulan;
int angsuran_ke;
int sisa_angsuran;
jumlah_pinjam =
Integer.parseInt(request.getParameter("jumlah_pinjam"));
jangka_waktu = Integer.parseInt(request.getParameter("jangka_waktu"));
perbulan = Integer.parseInt(request.getParameter("perbulan"));
angsuran_ke = Integer.parseInt(request.getParameter("angsuran_ke"));
sisa_angsuran = Integer.parseInt(request.getParameter("sisa_angsuran"));
/* data int
int umur = 0;
String um = request.getParameter("umur");
if(um != null){
umur = Integer.parseInt(um);
}
*/
/*data double
double umur = 0;
String um = request.getParameter("umur");
if(um != null){
umur = Double.parseDouble(um);
}
*/
Angsuran1 angsuran1 = new
Angsuran1(no_angsuran,tgl_bayar,no_pinjam,no_anggota,nama_lengkap,jumlah
_pinjam,jangka_waktu,perbulan,angsuran_ke,sisa_angsuran);
//setting jenis aksi: aksi1=insert, aksi2=update, aksi3=delete
String aksi1 = request.getParameter("aksi1");
String aksi2 = request.getParameter("aksi2");
String aksi3 = request.getParameter("aksi3");
//halaman yang dibuka setelah aksi
String URL = "tampil_pinjaman.jsp";
/*
if(kode == null){
-
93
out.print("alert('data tidak boleh kosong');"
+ "window.location.href='"+URL+"'"
+ "");
}*/
if(aksi1 != null){
out.print(super.insert(angsuran1.toInsert(), URL));
} else if(aksi2 != null){
out.print(super.update(angsuran1.toUpdate(), URL));
} else if(aksi3 != null){
out.print(super.delete(angsuran1.toDelete(no_angsuran), URL));
}
} catch (ClassNotFoundException | SQLException ex) {
Logger.getLogger(AngsuranServlet.class.getName()).log(Level.SEVERE,
null, ex);
}
}
//
/**
* Handles the HTTP GET method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP POST method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
-
94
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}//
}
3.5.2. Blackbox Testing
1. Form Login Admin
Tabel III.11.
Hasil Pengujian Blackbox Testing Form Login Admin
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Nama user
dan Password
tidak diisi
kemudian
klik tombol
login
Nama user:
(kosong)
Password:
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan “Login
Gagal”
Sesuai
harapan
Valid
2. Mengetikkan
Nama user
dan Password
tidak diisi
atau kosong
kemudian
klik tombol
login
Nama user:
nurmala
Password :
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan “Login
Gagal”
Sesuai
harapan
Valid
3. Nama user
tidak di isi
(kosong) dan
Password
diisi
kemudian
klik tombol
login
Nama user:
(kosong)
Password:
admin
Sistem akan
menolak
Akses dan
menampilkan
pesan
“Login Gagal”
Sesuai
harapan
Valid
-
95
4. Mengetikkan
salah satu
kondisi salah
pada Nama
user atau
Password
kemudian
klik tombol
login
Nama user:
nurmala
(benar)
Password:
12345
(salah)
Sistem akan
menolak
akses akan
kembali
diarahkan ke
halaman login
dan
menampilkan
pesan “ Login
Gagal”
Sesuai
harapan
Valid
5. Mengetikkan
Nama user
dan Password
dengan data
yang benar
kemudian
klik tombol
login
Nama user :
nurmala
(benar)
Password:
*****
(benar)
Sistem akan
menerima akses
login dan akan
menampilkan
pesan “Login
Berhasil!”.
Sesuai
harapan
Valid
2. Form Login Kepala USP
Tabel III.12.
Hasil Pengujian Blackbox Testing Form Login Kepala USP
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Nama user
dan Password
tidak diisi
kemudian
klik tombol
login
Nama user:
(kosong)
Password:
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan “Login
Gagal”
Sesuai
harapan
Valid
2. Mengetikkan
Nama user
dan Password
tidak diisi
atau kosong
kemudian
klik tombol
login
Nama user:
ahmadarif
Password :
(kosong)
Sistem akan
menolak akses
dan
menampilkan
pesan “Login
Gagal”
Sesuai
harapan
Valid
-
96
3. Nama user
tidak di isi
(kosong) dan
Password
diisi
kemudian
klik tombol
login
Nama user:
(kosong)
Password:
kepala
Sistem akan
menolak
Akses dan
menampilkan
pesan
“Login Gagal”
Sesuai
harapan
Valid
4. Mengetikkan
salah satu
kondisi salah
pada Nama
user atau
Password
kemudian
klik tombol
login
Nama user:
Kepala
(benar)
Password:
12345
(salah)
Sistem akan
menolak
akses akan
kembali
diarahkan ke
halaman login
dan
menampilkan
pesan “ Login
Gagal”
Sesuai
harapan
Valid
5. Mengetikkan
Nama user
dan Password
dengan data
yang benar
kemudian
klik tombol
login
Nama user :
ahmadarif (benar)
Password:
****
(benar)
Sistem akan
menerima
akses login dan
akan
menampilkan
pesan “Login
Berhasil!”.
Sesuai
harapan
Valid
3. Data Akun
Tabel III.13.
Hasil Pengujian Blackbox Testing Data Akun
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Mengosongk
an semua
data akun
lalu langsung
mengklik
tombol insert
Kode Akun :
(kosong) Nama
Akun : (kosong)
Jenis Akun :
(kosong) Saldo
Normal :
(kosong)
Sistem akan
menolak akses
tambah data
akun
Sesuai
harapan
Valid
2. Menginput
data akun
dengan benar
kemudian
klik tombol
insert
Kode Akun :
1101 Nama
Akun :
Kas
Jenis Akun :
Assets Saldo
Sistem akan
menerima
akses tambah
data akun
Sesuai
harapan
Valid
-
97
Normal :
Debe
3. Mengubah
data akun
lalu
menginput
akun baru
dengan
mengklik
tombol
update
Kode Akun :
1101 Nama
Akun : Kas
Kecil Jenis
Akun : Assets
Saldo Normal :
Debet
Sistem akan
menerima
akses ubah
data akun
Sesuai
harapan
Valid
4. Data Anggota
Tabel III.14.
Hasil Pengujian Blackbox Testing Data Anggota
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Mengosongk
an semua
data anggota
lalu langsung
mengklik
tombol insert
No Anggota :
(kosong) Nama
Lengkap :
(kosong) Jenis
Kelamin :
(kosong)
Tanggal Lahir :
(kosong)
No KTP :
(kosong) Alamat :
(kosong) No Tlp :
(kosong) Status
Tempat Tinggal :
(kosong) : Status
Perkawinan :
(kosong)
Pekerjaan :
(kosong)
Perusahaan/Kanto
r : (kosong)
Telepon
Perusahaan:
(kosong)
Penghasilan :
(kosong)
Simpanan Pokok :
(kosong)
Sistem akan
menolak
akses tambah
data anggota
Sesuai
harapan
Valid
2. Menginput
data anggota
dengan benar
No Anggota :
AG-0000001
Nama Lengkap :
Sistem akan
menerima
akses tambah
Sesuai
harapan
Valid
-
98
kemudian
klik tombol
insert
Ismail Jenis
Kelamin : Laki-
Laki Tanggal
Lahir : 1972-05-
02
No KTP :
2435678 Alamat :
Depok No Tlp :
856432 Status
Tempat Tinggal :
Hak Milik :
Status
Perkawinan :
Kawin Pekerjaan
: Karyawan
Perusahaan/Kanto
r : PT.Giant
Telepon
Perusahaan:
21376555
Penghasilan :
2000000
Simpanan Pokok :
50000
data anggota
3. Mengubah
data anggota
dengan
mengklik
tombol
update
No Anggota :
AG-0000001
Nama Lengkap :
Ismail Jenis
Kelamin : Laki-
Laki Tanggal
Lahir : 1972-05-
02
No KTP :
2435678 Alamat :
Depok No Tlp :
856432 Status
Tempat Tinggal :
Hak Milik :
Status
Perkawinan :
Kawin Pekerjaan
: Karyawan
Perusahaan/Kanto
r : PT.Giant
Telepon
Perusahaan:
21376555
Penghasilan :
2000000
Sistem akan
menerima
akses ubah
data anggota
Sesuai
harapan
Valid
-
99
Simpanan Pokok :
50000
5. Data Simpanan
Tabel III.15.
Hasil Pengujian Blackbox Testing Data Simpanan
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Mengosongk
an semua
data
simpanan lalu
langsung
mengklik
tombol insert
No Simpanan :
(kosong)
Tanggal Simpan
: (kosong) No
Anggota :
(kosong)
Simpanan Wajib
: (kosong)
Simpanan
Sukarela :
(kosong) Total
Simpanan :
(kosong)
Sistem akan
menolak akses
tambah data
simpanan
Sesuai
harapan
Valid
2. Menginput
data
simpanan
dengan benar
kemudian
klik tombol
insert
No Simpanan :
SPN-0000001
Tanggal Simpan
: 2018-07-02 No
Anggota : AG-
0000001
Simpanan Wajib
: 10000
Simpanan
Sukarela :
500000 Total
Simpanan :
510000
Sistem akan
menerima
akses tambah
data simpanan
Sesuai
harapan
Valid
-
100
3. Menambah
data
simpanan per
anggota
dengan
mengklik
tombol
update
No Simpanan :
SPN-0000001
Tanggal Simpan
: 2018-07-02 No
Anggota : AG-
0000001 Nama
Anggota : Ismail
Jumlah
Simpanan :
510000
Simpanan Wajib
: 10000
Simpanan
Sukarela :
200000 Total
Simpanan :
720000
Sistem akan
menerima
akses
perubahan data
simpanan
anggota
Sesuai
harapan
Valid
6. Data Penarikan
Tabel III.16.
Hasil Pengujian Blackbox Testing Data Penarikan
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Mengosongk
an semua
data
penarikan
lalu langsung
mengklik
tombol insert
No Penarikan :
(kosong)
Tanggal Tarik :
(kosong) No
Simpanan :
(kosong) No
Anggota :
(kosong)
Nama Anggota :
(kosong) Jumlah
Simpanan :
(kosong)
Jumlah
Penarikan :
(kosong) Total
Simpanan :
(kosong)
Sistem akan
menolak akses
tambah data
penarikan
Sesuai
harapan
Valid
2. Menginput
data
penarikan
dengan benar
kemudian
klik tombol
No Penarikan :
PKN-000001
Tanggal Tarik :
2018-10-10 No
Simpanan :
SPN-000001 No
Sistem akan
menerima
akses tambah
data penarikan
Sesuai
harapan
Valid
-
101
insert Anggota : AG-
000001
Nama Anggota :
Ismail Jumlah
Simpanan
:510000
Jumlah
Penarikan :
200000 Total
Simpanan
:310000
7. Data Pinjaman
Tabel III.17.
Hasil Pengujian Blackbox Testing Data Pinjaman
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Mengosongk
an semua
data
pinjaman lalu
langsung
mengklik
tombol insert
No Pinjaman :
(kosong)
Tanggal Pinjam
: (kosong) No
Anggota :
(kosong) Jumlah
Pinjam :
(kosong)
Jangka Waktu :
(kosong)
Perbulan :
(kosong)
Sistem akan
menolak akses
tambah data
pinjaman
Sesuai
harapan
Valid
2. Menginput
data
pinjaman
dengan benar
kemudian
klik tombol
insert
No Pinjaman :
PJ-0000001
Tanggal Pinjam
: 2018-09-03 No
Anggota : AG-
0000001 Jumlah
Pinjam :
3000000
Jangka Waktu :
3 Perbulan :
1000000
Sistem akan
menerima
akses tambah
data pinjaman
Sesuai
harapan
Valid
-
102
8. Data Angsuran
Tabel III.18.
Hasil Pengujian Blackbox Testing Data Angsuran
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Mengosongk
an semua
data angsuran
lalu langsung
mengklik
tombol insert
No Angsuran :
(kosong)
Tanggal Bayar :
(kosong) No
Anggota :
(kosong) Nama
Anggota :
(kosong)
Jumlah Pinjam :
(kosong)
Jangka Waktu :
(kosong)
Perbulan :
(kosong)
Angsuran Ke- :
(kosong) Sisa
Angsuran :
(kosong)
Sistem akan
menolak akses
tambah data
angsuran
Sesuai
harapan
Valid
2. Menginput
data angsuran
dengan benar
kemudian
klik tombol
insert
No Angsuran :
ASN-000001
Tanggal Bayar :
2018-10-01 No
Anggota : AG-
0000001 Nama
Anggota : Ismail
Jumlah Pinjam :
30000000
Jangka Waktu :
3 Perbulan :
10000000
Angsuran Ke- :
1 Sisa Angsuran
: 2000000
Sistem akan
menerima
akses tambah
data angsuran
Sesuai
harapan
Valid
3. Menambah
data angsuran
per anggota
dengan
mengklik
tombol
update
No Angsuran :
ASN-000001
Tanggal Bayar :
2018-10-01 No
Anggota : AG-
0000001 Nama
Anggota : Ismail
Jumlah Pinjam :
Sistem akan
menerima
akses
perubahan data
angsuran
anggota
Sesuai
harapan
Valid
-
103
30000000
Jangka Waktu :
3 Perbulan :
10000000
Angsuran Ke- :
2 Sisa Angsuran
: 1000000
9. Laporan Simpanan
Tabel III.19.
Hasil Pengujian Blackbox Testing Laporan Simpanan
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Melihat
laporan
simpanan
dengan
mengklik
laporan
simpanan
No Simpanan :
SPN-0000001
Tanggal Simpan
: 2018-07-02 No
Anggota : AG-
0000001
Simpanan Wajib
: 10000
Simpanan
Sukarela :
500000 Total
Simpanan :
510000
Sistem akan
menampilkan
laporan
simpanan
Sesuai
harapan
Valid
10. Laporan Pinjaman
Tabel III.20.
Hasil Pengujian Blackbox Testing Laporan Pinjaman
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Melihat
laporan
pinjaman
dengan
mengklik
laporan
pinjaman
No Pinjaman :
PJ-0000001
Tanggal Pinjam
: 2018-09-03 No
Anggota : AG-
0000001 Jumlah
Pinjam :
3000000
Jangka Waktu :
3 Perbulan :
1000000
Sistem akan
menampilkan
laporan
pinjaman
Sesuai
harapan
Valid
-
104
11. Laporan Jurnal
Tabel III.21.
Hasil Pengujian Blackbox Testing Laporan Jurnal
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Melihat
laporan jurnal
dengan
mengklik
laporan jurnal
No Referensi :
JU-00001
Tanggal : 2018-
07-02 Nama
Akun : Kas
Debet : 100.000
Kredit : 0
Sistem akan
menampilkan
laporan jurnal
Sesuai
harapan
Valid
12. Laporan Buku Besar
Tabel III.22.
Hasil Pengujian Blackbox Testing Laporan Buku Besar
No. Skenario
pengujian Test case
Hasil yang
diharapkan
Hasil
pengujian Kesimpulan
1. Melihat
laporan buku
besar dengan
mengklik
laporan buku
besar
Tanggal : 2018-
07-02 No
Referensi : JU-
00001 Debet :
100.000 Kredit :
0
Sistem akan
menampilkan
laporan buku
besar
Sesuai
harapan
Valid
-
105
3.5.3. Pengujian dengan Acunetix Web Vulnerability Scanner
Berikut hasil pengujian menggunakan aplikasi Acunetix Web Vulnerability
Scanner:
1. Menunjukkan tingkat level pada hasil pengujian
Gambar III.50.
Hasil pengujian menggambarkan tingkat level
2. Menunjukkan lama waktu pada saat scanning
Gambar III.51.
Hasil pengujian menggambarkan durasi waktu
-
106
Dari hasil pengujian diatas tertulis bahwa pada sistem simpan pinjam berbasis
web yang kami buat masih menunjukkan tingkat “Acunetix Threat Level 3 : High”
yang berarti kerentanan dikategorikan sebagai yang paling berbahaya yang
menempatkan target scan pada resiko maksimum untuk hacking dan pencurian data.
3.5.4. Spesifikasi Hardware dan Software
Spesifikasi perangkat keras dan perangkat lunak yang diusulkan penulis
sebagai berikut:
Tabel III.23.
Tabel Spesifikasi Hardware dan Software
Kebutuhan Keterangan
Sistem Operasi Microsoft Windows 10
Processor Intel Core i3 – 4030U
RAM 2 GB
Harddisk 500 GB
Monitor 14” WXGA
Keyboard UK 104 keyboard
Printer Laser Jet
Mouse Standard
Software
Bahasa Pemrograman : VB.Net
Aplikasi Pendukung : NetBeans IDE 8.1
DBMS : My SQL
Anti Virus : AVG 2018