Skripsi
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik
Program Studi Informatika
Disusun Oleh: Sarah Puji Rahayu
035314025
TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA
ii
(A Study At Case Saving and Credit Cooperation “Bintang Jaya”)
A Thesis
Presented as Partial Fulfillment of the Requirements To Obtain the Engineering Bachelor Degree
In Informatics Engineering
By :
Sarah Puji Rahayu
035314025
DEPARTMENT OF INFORMATICS ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY YOGYAKARTA
viii pemrograman Java dan MySQL.
Sistem ini digunakan untuk mengolah data transaksi koperasi yang disimpan dalam database server koperasi dan dapat diakses oleh user melalui aplikasi client. Aplikasi client ini akan membantu user untuk mengakses dan mengelola transaksi koperasi seperti tambah data, ubah data, pencarian data, dan pencetakan slip transaksi.
Hasil yang dapat diperoleh dengan menggunakan teknologi client/sever database untuk Sistem Informasi Koperasi adalah pelayanan dan pengelolaan transaksi para anggota koperasi menjadi lebih cepat tanpa saling mencampuri, karena
ix
using Java as Programming language and MYSQL.
This system is used for processing saved cooperation transaction at cooperation server database, it can be accessed by user throught client application. This client application will help user to access and manage transaction such as : adding data, updating data, searching data, and printing the 'slip' transaction.
x
melimpahkan Rahmat-Nya sehingga penulis dapat menyelesaikan tugas akhir ini
Dalam proses penulisan tugas akhir ini ada begitu banyak pihak yang telah
memberikan perhatian dan bantuan dengan caranya masing-masing sehingga tugas
akhir ini dapat selesai. Oleh karena itu saya ingin mengucapkan terima kasih antara
lain kepada :
1. Bapak Ir. Greg Heliarko, S.J., S.S.,B.S.T.,M.A,M.Sc., Selaku Dekan Fakultas
Teknik Universitas Sanata Dharma.
2. Ibu Ridowati Gunawan, S.Kom., M.T., selaku Dosen Pembimbing Tugas Akhir
dan Dosen Pembimbing Akademik, yang telah banyak memberikan bimbingan,
dukungan, motivasi dan fasilitas yang mendukung terselesaikannya tugas akhir
ini.
3. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik
Informatika Universitas Sanata Dharma.
4. Bapak JB. Budi Darmawan, S.T.,M.Sc. dan Bapak St. Wisnu Sanjaya, S.T., M.T.
selaku panitia penguji yang telah memberikan banyak kritik dan saran untuk tugas
akhir penulis.
5. Seluruh staff dosen Teknik Informatika Universitas Sanata Dharma yang telah
xi
perhatian dan cintanya sehingga penulis dapat menyelesaikan tugas akhir ini
dengan lancar. Maaf pak...telat....ora pa pa kan...
8. Mas Toro dan Ira (akierun). Terima kasih atas doa dan semangatnya selama ini.
Mas....Run.... aku wis rampung....kesuwun banget ya...
9. Tri Susanto (Ex Yayanxku) yang telah memberikan cinta, sayang dan dorongan
nya. Yanx...aku bisa selesai kan...
10.Rachel yang telah memberi masukan dan dorongan serta ide-idenya... thanx
untuk semua yang telah kita lalui bareng...dari enak sampe pl g enak...bahkan
‘???’....thanx udah mw tidur kosku ....thanx..untuk smuanya ya jenk....
11.Gepeng, Acid, dan Dian yang telah memberikan masukan dan ide pada saat
pengerjaan tugas akhir ini. Thanx banget ya jenk.... Makasih juga untuk
persahabatannya selama ini....kalau ga ada kalian mungkin aku bisa stress sendiri
he he he...
12.Devi, Merry, Dea, dan Ina yang telah menjadi sahabat penulis selama menempuh
studi di kampus, walopun kadang banyak terjadi ketidakcocokan tapi...terima
kasih banyak untuk kehangatan persahabatan ini...thanx.... Pie...Mer...cepet
slesein ngerjain TAnya yah....biar bisa bebas....hehehehhehe....
13.Untuk semua teman-teman seperjuangan di TI03, Abe, Ones, Yansen, Danang,
xii
teman-teman teknik lainnya.... thanks buat masa-masa indah kita, KKL, makrab,
dll. Kita akan merindukan moment indah yang pernah kita lalui bersama
14.Keluarga Bapak Suraji, Bu Wakingah, de’ Lisna, de’ Amri dan de’ Arif.
15.Semua anak-anak kos dari mb Lisa, mb Ana, mb Nelvi, mb Nina, Retno, Litha,
Ellis dan Shinta yang selalu menemani dan menjadi keluarga baru bagi penulis.
16.Pak Dar....makasih untuk canda dan tawanya saat penulis sedang mengerjakan TA
di lab.
17.Semua pihak yang tidak bisa disebutkan satu persatu.
Dengan rendah hati saya menyadari bahwa tugas akhir ini masih jauh dari
sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir ini
sangat saya harapkan. Akhir kata, semoga tugas akhir ini bermanfaat bagi semua
pihak. Terima kasih.
Yogyakarta, Juni 2008
Penulis
xiii
DAFTAR ISI
HALAMAN JUDUL ………... i
HALAMAN PERSETUJUAN ……… iii
HALAMAN PENGESAHAN ………. iv
PERNYATAAN KEASLIAN KARYA ……….. v
HALAMAN MOTTO ……….. vi
HALAMAN PERSEMBAHAN ………... vii
ABSTRAK ………... viii
ABSTRACT ………. ix
KATA PENGANTAR ……….. x
DAFTAR ISI ……….... xiii
DAFTAR GAMBAR ………. xxiii
DAFTAR TABEL ... xxviii
BAB I PENDAHULUAN 1.1 Latar Belakang Masalah ... 1
1.2 Rumusan Masalah ... 2
1.3 Batasan Masalah ... 2
1.4 Tujuan dan Manfaat Penelitian ... 2
xiv
1.6 Sistematika Penulisan ... 4
BAB II LANDASAN TEORI 2.1 Sistem Informasi ... 6
2.2 Client/server ………... 6
2.2.1 Komponen Client Server ………... 7
2.2.2 Karakteristik Client/Server ……… 8
2.2.3 Arsitektur Client/Server ………. 10
2.3 MySQL ……….. 12
2.4 Transaksi dan Concurency Control 2.4.1 Transaksi ……… 14
2.4.2 Concurency Control ……….. 15
2.4.3 Serializability ………. 16
2.4.4 Teknik Concurency Control ……….. 18
2.4.5 Locking ……….. 19
BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1. Analisis Sistem 3.1.1. Gambaran Umum Sistem Lama ... 20
3.1.2. Analisis Masalah ... 20
3.1.3. Gambaran Umum Sistem Baru ... 21
3.1.4. Orang Yang Terlibat Dalam Sistem ... 22
xv 3.1.5.2 Sistem Manager Koperasi
3.1.5.2.1 Use Case Data ……….. 111
3.1.5.2.2 Use Case Penyetujuan Pinjaman ……….. 25
3.1.5.2.3 Use Case Ganti Password ………. 25
3.1.5.2.4 Use Case Log Request ……….. 25
3.1.5.3 Sistem Petugas Koperasi 3.1.5.3.1 Sistem Transaksi 3.1.5.3.1.1 Use Case Keanggotaan ………… 26
3.1.5.3.1.2 Use Case Tabungan Wajib ……... 27
3.1.5.3.1.3 Use Case Tabungan Sukarela …… 27
3.1.5.3.1.4 Use Case Penarikan Tabungan ….. 28
3.1.5.3.1.5 Use Case Pinjaman ……… 28
3.1.5.3.1.6 Use Case Angsuran ……… 29
3.1.5.3.2 Sistem Laporan ……….. 29
3.1.5.3.3 Sistem Berkas ……… 30
3.1.5.3.4 Use Case Ganti Password ………. 30
3.1.5.3.5 Use Case Log Request ……….. 30
3.1.6 Class Diagram ………. 31
3.2 Design Sistem 3.2.1 Sequence Diagram 3.2.1.1 Sistem Admin ……….. 35
xvi
3.2.1.2.1 Sistem Data ………. 36
3.2.1.2.2 Sistem Penyetujuan Pinjaman ………. 38
3.2.1.2.3 Proses Merubah Password ……….. 40
3.2.1.2.4 Proses Menampilkan Log Request ………. 40
3.2.1.3 Sistem Petugas Koperasi 3.2.1.3.1 Sistem Transaksi 3.2.1.3.1.1 Sistem Keanggotaan ……….. 42
3.2.1.3.1.2 Sistem Tabungan Wajib …………. 44
3.2.1.3.1.3 Sistem Tabungan Sukarela ... 46
3.2.1.3.1.4 Sistem Penarikan Tabungan ... 48
3.2.1.3.1.5 Sistem Pinjaman ... 50
3.2.1.3.1.6 Sistem Angsuran ... 52
3.2.1.3.2 Sistem Berkas ... 54
3.2.1.3.3 Sistem Laporan ... 56
3.2.1.3.4 Proses Mengubah Password ... 60
3.2.1.3.5 Proses Menampilkan Log Request ... 60
3.2.2 Desain Database 3.2.2.1 Conceptual Design (ER Diagram)……….. 61
3.2.2.2 Logical Design ……….. 64
3.2.2.3 Physical Design 3.2.2.3.1 Tabel Akun ... 68
xvii
3.2.2.3.3 Tabel Anggota ... 68
3.2.2.3.4 Tabel Angsuran ... 69
3.2.2.3.5 Tabel Berkas Berita Acara Pengembalian Barang ... 69
3.2.2.3.6 Tabel Berkas Berita Serah Terima Jaminan ... 70
3.2.2.3.7 Tabel Berkas Hasil Peninjauan ... 71
3.2.2.3.8 Tabel Berkas Permohonan Kredit ... 72
3.2.2.3.9 Tabel Berkas Surat Alokasi Dana ... 73
3.2.2.3.10 Tabel Berkas Surat Kuasa Kendaraan ... 74
3.2.2.3.11 Tabel Berkas Surat Kuasa Tanah ... 74
3.2.2.3.12 Tabel Berkas Surat Perjanjian ... 75
3.2.2.3.13 Tabel Data Koperasi ... 76
3.2.2.3.14 Tabel Instansi ... 76
3.2.2.3.15 Tabel Jaminan Kendaraan ... 76
3.2.2.3.16 Tabel Jaminan Tanah ... 77
3.2.2.3.15 Tabel Jurnal Transaksi ... 77
3.2.2.3.16 Tabel Log Login ... 78
3.2.2.3.17 Tabel Log Request ... 78
3.2.2.3.18 Tabel Pinjaman ... 79
3.2.2.3.19 Tabel Tabungan Pokok ... 79
3.2.2.3.20 Tabel Tabungan Sukarela ... 80
xviii
3.2.2.3.22 Tabel User Koperasi ... 81
3.2.3 Design User Interface 3.2.3.1 Form Setting IP ... 82
3.2.3.2 Form Login ... 82
3.2.3.3 Sistem Admin 3.2.3.3.1 Form User Sistem ... 82
3.2.3.3.2 Form User Sistem Cari ... 83
3.2.3.4 Sistem Manager 3.2.3.4.1 Form Data Koperasi ... 84
3.2.3.4.2 Form Instansi ... 84
3.2.3.4.3 Form Instansi Cari ... 85
3.2.3.4.4 Form Penyetujuan Pinjaman ... 85
3.2.3.4.5 Form Pinjaman ... 86
3.2.3.4.6. Form List Pinjaman ... 86
3.2.3.5 Sistem Petugas 3.2.3.5.1 Transaksi 3.2.3.5.1.1 Form Anggota ... 87
3.2.3.5.1.2 Form Tabungan Wajib ... 87
3.2.3.5.1.3 Form Tabungan Sukarela ... 88
3.2.3.5.1.4 Form Penarikan Tabungan ... 88
3.2.3.5.1.5 Form Pinjaman Cari ... 89
xix 3.2.3.5.2 Berkas
3.2.3.5.2.1 Form Berkas Permohonan Kredit ... 90
3.2.3.5.2.2 Form Berkas Hasil Peninjauan ... 91
3.2.3.5.2.3 Form Berkas Surat Perjanjian Kredit ... 91
3.2.3.5.2.4 Form Berkas Serah Terima Jaminan ... 92
3.2.3.5.2.5 Form Berkas Surat Kuasa Kendaraan ... 92
3.2.3.5.2.6 Form Berkas Surat Kuasa Tanah ... 93
3.2.3.5.2.7 Form Berkas Surat Kuasa Alokasi Dana . 93 3.2.3.5.2.8 Form Berkas Berita Pengembalian Barang ... 94
3.2.3.5.3 Laporan 3.2.3.5.3.1 Form Laporan Peranggota ... 94
3.2.3.5.3.2 Form Laporan Tabungan ... 95
3.2.3.5.3.3 Form Laporan Pinjaman ... 95
3.2.3.5.3.4 Form Laporan Angsuran ... 96
3.2.3.5.3.5 Form Laporan Harian ... 96
3.2.3.5.3.5 Form Laporan Neraca ... 97
3.2.3.5.3.6 Form Laporan Rugi Laba ... 97
3.2.4 Desain Input 3.2.4.1. Kode Anggota ... 98
3.2.4.2 Kode Tabungan Pokok ... 98
xx
3.2.4.4 Kode Tabungan Sukarela ... 99
3.2.4.5 Kode Pinjaman ... 99
3.2.4.6 Kode Angsuran ... 99
3.2.4.7 Kode Berkas Permohonan Kredit ... 100
3.2.4.8 Kode Berkas Hasil Peninjauan ... 100
3.2.4.9 Kode Berkas Surat Perjanjian ... 100
3.2.4.10 Kode Berkas Surat Kuasa Alokasi Dana ... 101
3.2.4.11 Kode Berkas Surat Kuasa Kendaraan ... 101
3.2.4.12 Kode Berkas Surat Kuasa Tanah ... 101
3.2.4.13 Kode Berkas Berita Serah Terima Jaminan ... 102
3.2.4.14 Kode Berkas Berita Pengembalian Barang ... 102
3.2.5 Desain Output 3.2.5.1 Slip Pembayaran Tabungan Pokok ... 103
3.2.5.2 Slip Pembayaran Tabungan Wajib... 103
3.2.5.4 Slip Penarikan Tabungan ... 104
3.2.5.3 Slip Pembayaran Tabungan Sukarela ... 104
3.2.5.5 Slip Penerimaan Uang ... 105
3.2.5.6 Slip Penerimaan Bersih ... 105
3.2.5.7 Slip Alokasi Dana ... 106
3.2.5.8 Slip Angsuran ... 106
3.2.5.9 Slip Angsuran yang Menggunakan Alokasi Dana ... 107
xxi
3.2.5.11 Berkas Hasil Peninjauan... 109 3.2.5.12 Berkas Surat Perjanjian Kredit ... 111 3.2.5.13 Berkas Surat Kuasa Tanah ... 114 3.2.5.14 Berkas Surat Kuasa Kendaraan ... 115 3.2.5.15 Berkas Surat Kuasa Alokasi Dana ... 116 3.2.5.16 Berkas Berita Serah Terima Jaminan ... 117 3.2.5.17 Berkas Berita Acara Pengembalian Barang ... 118 3.2.5.18 Laporan Harian ... 119 3.2.5.19 Laporan Tabungan ... 120 3.2.5.20 Laporan Pinjaman ... 120 3.2.5.21 Laporan Angsuran ... 120 3.2.5.22 Laporan Perseorangan ... 121 3.2.5.23 Laporan Rugi Laba ……… 121 3.2.5.24 Laporan Neraca ………. 122 BAB IV IMPLEMENTASI SISTEM
4.1. Spesifikasi software dan hardware yang digunakan ………... 123 4.2. Pembuatan Database ………... 123 4.3. Seting UserDatabase ... 125 4.4. Koneksi Java dan MySQL ... 126 4.5. Pembuatan Antar Muka (User Interface) ... 127
xxii
4.6.2. Skenario Tabungan Wajib ... 162 4.6.3. Skenario Tabungan Sukarela ... 164
4.6.4. Skenario Penarikan Tabungan ... 164 4.6.5. Skenario Pinjaman ... 165 4.6.6. Skenario Angsuran ... 165 4.6.7. Skenario Berkas ... 166 4.6.8. Skenario Laporan ... 166 BAB V ANALISIS HASIL
5.1 Pengujian Aplikasi ... 167
5.2 Analisis Transaksi (Locking) ... 170
5.3 Kelebihan dan Kekurangan Sistem
5.3.1 Kelebihan Sistem ………. 177
5.3.2 Kekurangan Sistem ………. 177
BAB VI PENUTUP
6.1 Kesimpulan ………. 178
6.2 Saran ………... 178
xxiii
2.2 Gambar Siklus Transaksi 14
3.1 Gambar Use Case Diagram Secara Umum. 23
3.2 Gambar Use Case Diagram Sistem Admin. 24
3.3 Gambar Use Case Diagram Data 24
3.4 Gambar Use Case Diagram Penyetujuan Pinjaman 25
3.5 Gambar Use Case Diagram Ganti Password 25
3.6 Gambar Use Case Diagram Log Request 25
3.7 Gambar Use Case List Pinjaman 26
3.8 Gambar Use Case Diagram Keanggotaan 26
3.9 Gambar Use Case Diagram Tabungan Wajib 27
3.10 Gambar Use Case Diagram Tabungan Sukarela 27
3.11 Gambar Use Case Diagram Penarikan Tabungan 28
3.12 Gambar Use Case Diagram Pinjaman 28
3.13 Gambar Use Case Diagram Angsuran. 29
3.14 Gambar Use Case Diagram Pembuatan Laporan 29
3.15 Gambar Use Case Diagram Pembuatan Berkas 30
3.16 Gambar Use Case Diagram Ganti Password. 30
3.17 Gambar Use Case Diagram Log Request Petugas 30
3.18 Gambar Class Diagram I 31
3.19 Gambar Class Diagram 2 32
3.20 Gambar Class Diagram 3 33
3.21 Gambar Class Diagram 4 34
3.22 Gambar Sequence Diagram Proses Menambah Data User 35
3.23 Gambar Sequence Diagram Proses Mencari Data User 35
3.24 Gambar Sequence Diagram Proses Menghapus Data User 36
3.25 Gambar Sequence Diagram Proses Mengupdate Data Koperasi
36
3.26 Gambar Sequence Diagram Proses Menambah Data Instansi 37
3.27 Gambar Sequence Diagram Proses MencariData Instansi 37
3.28 Gambar Sequence Diagram Proses MengubahData Instansi 38
3.29 Gambar Sequence Diagram Proses Mencari Data Berkas Hasil Peninjauan
38
3.30 Gambar Sequence Diagram Proses MenampilkanData Berkas Hasil Peninjauan
39
3.31 Gambar Sequence Diagram Proses Menambah Data Pinjaman 39
xxiv
3.37 Gambar Sequence Diagram Proses MencariData Anggota 42
3.38 Gambar Sequence Diagram Proses MengubahData Anggota 43
3.39 Gambar Sequence Diagram Proses MenghapusData Anggota 43
3.40 Gambar Sequence Diagram Proses Mencetak SlipTabungan Pokok
44
3.41 Gambar Sequence Diagram Proses Menambah Data Tabungan Wajib
44
3.42 Gambar Sequence Diagram Proses MencariData Tabungan Wajib
45
3.43 Gambar Sequence Diagram Proses MengubahData Tabungan Wajib
45
3.44 Gambar Sequence Diagram Proses Mencetak SlipTabungan Wajib 46 3.45 Gambar Sequence Diagram Proses Menambah Data
Tabungan Sukarela
46
3.46 Gambar Sequence Diagram Proses MencariData Tabungan Sukarela
47
3.47 Gambar Sequence Diagram Proses MengubahData Tabungan Sukarela
47
3.48 Gambar Sequence Diagram Proses Mencetak SlipTabungan Sukarela
48
3.49 Gambar Sequence Diagram Proses Menambah Data Penarikan Tabungan
48
3.50 Gambar Sequence Diagram Proses MencariData Penarikan Tabungan
49
3.51 Gambar Sequence Diagram Proses MengubahData Penarikan Tabungan
49
3.52 Gambar Sequence Diagram Proses Mencetak Slip Penarikan Tabungan
50
3.53 Gambar Sequence Diagram Proses Mencetak Slip Penerimaan Bersih
50
3.54 Gambar Sequence Diagram Proses Mencetak Slip Penerimaan Uang
51
3.55 Gambar Sequence Diagram Proses Mencari Data Pinjaman 51
3.56 Gambar Sequence Diagram Proses Menambah Data Angsuran
52
3.57 Gambar Sequence Diagram Proses Menambah Data Alokasi Dana
xxv
3.62 Gambar Sequence Diagram Proses Mencari Data Berkas 55
3.63 Gambar Sequence Diagram Proses Mengubah Data Berkas 55
3.64 Gambar Sequence Diagram Proses MencetakData Berkas 56
3.65 Gambar Sequence Diagram Proses Membuat Laporan Tabungan
56
3.66 Gambar Sequence Diagram Proses Membuat Laporan Harian 57
3.67 Gambar Sequence Diagram Proses Membuat Laporan Pinjaman
57
3.68 Gambar Sequence Diagram Proses Membuat Laporan Angsuran
58
3.69 Gambar Sequence Diagram Proses Membuat Laporan Rugi Laba
58
3.70 Gambar Sequence Diagram Proses Membuat Laporan Neraca 59
3.71 Gambar Sequence Diagram Proses Membuat Laporan Perseorangan
59
3.72 Gambar Sequence Diagram Proses Mengubah Password 60
3.73 Gambar Sequence Diagram Proses Menampilkan Log Request 60
3.74 Gambar ER Diagram 1 61
3.86 Gambar Form Data Koperasi 84
3.87 Gambar Form Instansi 84
3.88 Gambar Form Instansi Cari 85
3.89 Gambar Form Penyetujuan Pinjaman 85
3.90 Gambar Form Pinjaman 86
3.91 Gambar Form List Pinjaman 86
xxvi
3.98 Gambar Form Berkas Permohonan Kredit 90
3.99 Gambar Form Berkas Hasil Peninjauan 91
3.100 Gambar Form Surat Perjanjian Kredit 91
3.101 Gambar Form Berkas Serah Terima Jaminan 92
3.102 Gambar Form Berkas Surat Kuasa Kendaraan 92
3.103 Gambar Form Berkas Surat Kuasa Kendaraan 93
3.104 Gambar Form Berkas Surat Kuasa Alokasi Dana 93
3.105 Gambar Form Berkas BeritaPpengembalian Barang 94
3.106 Gambar Form Laporan Peranggota 94
3.107 Gambar Form Laporan Tabungan 95
3.108 Gambar Form Laporan Pinjaman 96
3.109 Gambar Form Laporan Angsuran 97
3.110 Gambar Form Laporan Harian 98
3.111 Gambar Form Laporan Neraca 99
3.112 Gambar Form Laporan Rugi Laba 100
3.113 Gambar Desain Slip PembayaranTabungan Pokok 103
3.114 Gambar Desain Slip PembayaranTabungan Wajib 103
3.115 Gambar Desain Slip PembayaranTabungan Sukarela 104
3.116 Gambar Desain Slip Penarikan Tabungan 104
3.117 Gambar Desain Slip Penerimaan Uang 105
3.118 Gambar Desain Slip Penerimaan Bersih 105
3.119 Gambar Desain Slip Alokasi Dana 106
3.120 Gambar Desain Slip Angsuran 106
3.121 Gambar Desain Slip Angsuran yang Menggunakan Alokasi Dana 107
3.122 Gambar Desain Berkas Permohonan Kredit 108
3.123 Gambar Desain Berkas Hasil Peninjauan 109
3.124 Gambar Desain Berkas Surat Perjanjian Kredit 111
3.125 Gambar Desain Berkas Surat Kuasa Tanah 114
3.126 Gambar Desain Berkas Surat Kuasa Kendaraan 115
3.127 Gambar Desain Berkas Surat Kuasa Alokasi Dana 116
3.128 Gambar Desain Berkas Berita Acara Serah Terima Jaminan 117
3.129 Gambar Desain Berkas Berita Acara Pengembalian Barang 118
3.130 Gambar Desain Laporan Keuangan 119
3.131 Gambar Desain Laporan Tabungan 120
3.132 Gambar Desain Laporan Pinjaman 120
xxvii
4.2 Gambar Form Login 128
4.3 Gambar Form Menu Utama Admin 129
4.4 Gambar Form Menu Utama Manager dan Petugas 130
4.5 Gambar Form Keanggotaan 131
4.6 Gambar Form Tabungan Wajib 132
4.7 Gambar Form Tabungan Sukarela 140
4.8 Gambar Form Penarikan Tabungan 145
4.9 Gambar Form Angsuran 149
4.10 Gambar Form Berkas Permohonan Kredit 155
4.11 Gambar Form Laporan Neraca 160
5.1 Contoh Hasil Menampilkan Data Sebanyak 10.000 record 168
5.2 Form Tabungan Wajib Client A 171
5.3 Form Tabungan Wajib Client B 172
5.4 Gambar Form Tabungan Wajib Cleint A (Berhasil) 173
xxviii
3.1 Struktur Tabel akun 68
3.2 Struktur Tabel Alokasi_dana 68
3.3 Struktur Tabel Anggota 68
3.4 Struktur Tabel Angsuran 69
3.5 Struktur Tabel Berkas_berita_acara_pengembalian_barang 70
3.6 Struktur Tabel berkas_berita_serah_terima_jaminan 70
3.7 Struktur Tabel Berkas_hasil_peninjauan 71
3.8 Struktur Tabel Berkas_permohonan_kredit 72
3.9 Struktur Tabel Berkas_surat_alokasi_dana 73
3.10 Struktur Tabel Berkas_surat_kuasa_kendaraan 74
3.11 Struktur Tabel Berkas_surat_kuasa_tanah 74
3.12 Struktur Tabel Berkas_surat_perjanjian 75
3.13 Struktur Tabel Data_koperasi 76
3.14 Struktur Tabel Instansi 76
3.15 Struktur Tabel Jaminan Kendaraan 76
3.16 Struktur Tabel Jaminan Tanah 77
3.17 Struktur Tabel Jurnal_transaksi 77
3.18 Struktur Tabel Log_login 78
3.19 Struktur Tabel Log_request 78
3.20 Struktur Tabel Pinjaman 79
3.21 Struktur Tabel Tabungan_pokok 79
3.22 Struktur Tabel Tabungan_sukarela 80
3.23 Struktur Tabel Tabungan_wajib 80
3.24 Struktur Tabel User_koperasi 81
3.25 Tabel Desain Input Kode Anggota 98
3.26 Tabel Desain Input Kode Tabungan Pokok 98
3.27 Tabel Desain Input Kode Tabungan Wajib 98
3.28 Tabel Desain Input Kode Tabungan Sukarela 99
3.29 Tabel Desain Input Kode Pinjaman 99
3.30 Tabel Desain Input Kode Angsuran 99
3.31 Tabel Desain Input Kode Berkas Permohonan Kredit 100
3.32 Tabel Desain Input Kode Berkas Hasil Peninjauan 100
3.33 Tabel Desain Input Kode Berkas Surat Perjanjian 100
3.34 Tabel Desain Input Kode Berkas Surat Kuasa Alokasi Dana 101
3.35 Tabel Desain Input Kode Berkas Surat Kuasa Kendaraan 101
xxix
5.2 Tabel Hasil Percobaan Menggunakan Aplikasi yang Menggunakan Locking dan yang Tidak di Server
BAB I
PENDAHULUAN
1.1Latar Belakang Masalah
Perkembangan teknologi yang pesat telah menyebabkan perubahan besar
dalam operasi suatu organisasi termasuk di dalamnya adalah koperasi. Salah satu
teknologi yang paling diminati saat ini adalah teknologi client/server database.
Dengan menggunakan teknologi tersebut, beberapa client dapat mengakses database
secara bersamaan, sehingga mempercepat proses transaksi.
Koperasi Simpan Pinjam Bintang Jaya merupakan salah satu koperasi yang
telah memanfaatkan teknologi informasi untuk menunjang semua kegiatan yang ada.
Pada koperasi ini terdapat empat buah transaksi utama yang bisa dilakukan oleh
anggota koperasi yaitu pendaftaran anggota, tabungan, pinjaman dan pembayaran
angsuran. Pencatatan ke empat transaksi tersebut dilakukan hanya dengan
menggunakan satu komputer. Oleh karena itu, jika ada beberapa anggota koperasi
yang ingin melakukan beberapa transaksi sekaligus, keadaan tersebut akan menjadi
masalah karena proses pelayanan terhadap anggota koperasi akan lama (tidak efisien).
Untuk mengatasi masalah tersebut, akan dibangun suatu sistem informasi
koperasi simpan pinjam yang menggunakan teknologi client/serverdatabase. Sistem
ini terdiri dari satu buah komputer server untuk menyimpan data dan beberapa
komputer client, sehingga diharapkan dapat memperbaki proses pelayanan terhadap
anggota koperasi.
1.2Rumusan Masalah
Dari latar belakang yang telah dikemukakan dapat diperoleh rumusan
masalah, yaitu bagaimana membuat program aplikasi yang menggunakan teknologi
client server database untuk Koperasi Simpan Pinjam Bintang Jaya.
1.3Batasan Masalah
Adapun batasan masalah dalam penulisan skripsi ini adalah:
1. Hanya membatasi proses transaksi pendaftaran anggota, tabungan,
pinjaman, angsuran, pembuatan laporan dan pembuatan berkas-berkas.
2. Sistem ini hanya boleh digunakan oleh petugas koperasi, manager dan
admin.
3. Teknologi yang digunakan adalah Java dan MySQL 5.
1.4Tujuan dan Manfaat Penelitian
Tujuan dari penelitian ini adalah membangun suatu sistem informasi
koperasi simpan pinjam yang berbasis client/server database pada Koperasi Simpan
Pinjam Bintang Jaya. Adapun manfaat dari penelitian ini adalah dapat membantu
1.5Metodologi Pengembangan Sistem
Adapun metodologi yang digunakan adalah sebagai berikut:
a. Studi literatur
1. Mempelajari dan memahami konsep client/server database, Java dan
MySQL
2. Mempelajari cara kerja dari sistem lama.
b. Melakukan tahapan-tahapan pengembangan sistem berorientasi objek yaitu
dengan :
1. Menganalisa permasalahan dan kebutuhan dari sistem lama dengan
menggunakan teknik wawancara dan sampling document
2. Merancang sistem baru, membuat usecase diagram, membuat
sequence diagram, membuat class diagram, merancang database,
merancang user interface. merancang input dan output.
3. Membuat program sesuai dengan rancangan.
1.6Sistematika Penulisan
Penelitian ini disusun dalam bentuk laporan, dengan sistematika penulisan
yang terdiri dari :
BAB I PENDAHULUAN
Berisi latar belakang masalah, rumusan masalah, batasan masalah, tujuan
penelitian, metodologi penelitian dan sistematika penulisan.
BAB II LANDASAN TEORI
Berisi landasan teori yang dipakai sebagai dasar pembuatan analisis,
perancangan dan implementasi program. Dalam bab ini berisi sedikit
penjelasan mengenai sistem informasi, client/server, transaksi dan
concurency control, metodologi pengembangan sistem berorientasi objek,
pemrograman berorientasi object menggunakan java, JDBC, dan MySQL.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Berisi analisa dari sistem lama dan sistem baru, membuat use case diagram,
class diagram, sequence diagram, merancang database, merancang user
interface, merancang input dan output.
BAB IV IMPLEMENTASI SISTEM
Berisi penjelasan mengenai proses implementasi perangkat lunak sesuai
dengan analisis dan rancangan yang dikembangkan.
BAB V ANALISIS HASIL
Berisi analisis hasil implementasi dari sistem baru serta apa saja kelebihan
BAB VI PENUTUP
Berisi jawaban berupa kesimpulan singkat tentang rumusan masalah yang
telah dikemukakan pada BAB I dan berisi saran-saran yang nantinya dapat
BAB II
LANDASAN TEORI
2.1 Sistem Informasi
Menurut Whitten (2004), Sistem Informasi adalah pengaturan orang, data,
proses serta teknologi informasi yang berinteraksi unutk mengumpulkan, memproses,
menyimpan dan menyediakan suatu informasi yang diperlukan untuk mendukung
organisasi. Sistem informasi banyak digunakan dalam organisasi untuk meningkatkan
kemampuan memperoleh manfaat ataupun competitive advantage.
2.2 Client/server
Menurut Budi (2006), Client Server merupakan model konektivitas pada
jaringan yang membedakan fungsi komputer apakah sebagai client atau server. Client
Server ini menempatkan sebuah komputer sebagai server yang bertugas memberikan
layanan pada terminal-terminal lain (client) yang terhubung dalam sistem jaringan itu.
Server dapat bertugas untuk memberikan layanan share file (file server), printer
(printer server), jalur komunikasi (server komunikasi). Client/server memungkinkan
suatu aplikasi dapat diakses secara bersamaan dan dalam waktu yang bersamaan.
Pada arsitektur jaringan ini, client tidak dapat berfungsi sebagai server, tetapi
server dapat berfungsi sebagai client (server non-dedicated). Namun hal ini dihindari
agar arsitektur jaringan Client Server tidak berubah menjadi arsitektur jaringan Peer
to Peer (P2P).
Middleware
Dalam jaringan client/server, terjadi pembagian tugas antara komputer client dan
komputer server. Komputer client digunakan untuk melakukan permintaan,
sedangkan komputer server berfungsi untuk mengolah permintaan dari client dan
mengembalikan hasilnya pada client yang meminta. Prinsip kerja jaringan ini sebagai
berikut, dimana server menunggu permintaan dari client, memproses dan
memberikan hasilnya pada client, sedangkan client akan mengirimkan permintaan ke
server, menunggu proses dan melihat visualisasi hasil prosesnya. Sistem Client
Server ini tidak hanya diperuntukan bagi pembangunan sistem jaringan komputer
lokal, melainkan juga pembangunan jaringan komputer skala luas Sistem ini
menggunakan protokol utama Transmission Control Protokol/Internet
Protokol(TCP/IP).
2.2.1 Komponen Client Server
Pada dasarnya, Client Server dibentuk oleh tiga komponen dasar, yaitu client,
middleware,dan server seperti yang terlihat pada Gambar 2.1.
Client Server
Permintaaan
Layanan
1. Client
Client merupakan terminal yang digunakan oleh operator untuk meminta
layanan tertentu yang dibutuhkan. Terminal client dapat berupa PC, ponsel,
komunikator, robot, televisi dan peralatan lain yang membutuhkan informasi .
2. Middleware
Middleware merupakan komponen perantara yang memungkinkan client dan
server untuk saling terhubung dan berkomunikasi satu sama yang lain.
Middleware memiliki peran yang strategis karena dengan adanya middleware
maka client dapat mengirimkan pesan atau permintaan kepada server,
menterjemahkan pesan dari client agar dapat dimengerti oleh server,
menterjemahkan hasil proses dari server agar dapat dipahami oleh client dan
mengirimkan hasil proses yang telah diterjemahkan kembali ke client
3. Server
Server merupakan pihak yang menyediakan layanan. Secara umum, server
berperan menerima pesan permintaan layanan dari client, memproses
permintaan tersebut dan mengirimkan hasil permintaan kepada client.
2.2.2 Karakteristik Client/Server
1. Berbasis Layanan
Server memberikan sejumlah layanan yang dibutuhkan dan diminta oleh
client, antara lain: berbagi pakai berkas, data, peralatan pendukung, dan
2. Sumber daya yang digunakan bersama
Server mengelola sejumlah sumber daya yang dimilikinya agar dapat diakses
dan digunakan secara bersama-sama oleh terminal-terminal client yang
terhubung pada server.
3. Hubungan dan interaksi client/server
Hubungan yang terjadi antara server dan client adalah one to many yang
berarti satu server melayani banyak client. Dimana client meminta layanan
sedangkan server menanti permintaan layanan secara pasif.
4. Client tidak perlu mengetahui lokasi fisik server.
Server dapat terletak di berbagai lokasi yang belum tentu diketahui oleh
client. Walaupun demikian, client tetap dapat mengakses server untuk
mendapatkan layanan sesuai kebutuhannya.
5. Pertukaran berbasis pesan
Mekanisme dari Client Server berdasar pada pertukaran pesan. Pesan yang
dipertukarkan ialah permintaan layanan dan umpan balik dari permintaan
layanan tersebut.
6. Enkapsulasi layanan
Client tidak perlu mengetahui proses pengolahan permintaan yang terjadi
dalam server sehingga client tidak dapat mengontrol proses pengolahan
7. Skalabilitas
Skalabilitas ialah kemampuan untuk diperbesar dan diperkecil. Ukuran sistem
Client Server dapat diubah secara horizontal maupun vertikal berarti
berpindah ke server yang lebih besar atau lebih cepat atau mendistribusikan
tugas melayani client ke beberapa server . pengubahan horizontal berarti
menambah atau mengurangi jumlah client.
8. Konsistensi data
Data hanya dikelola pada server pusat sehingga konsistensi dan data lebih
terjamin dan biaya pemeliharaan pun menjadi lebih murah.
2.2.3 Arsitektur Client/Server
Arsitektur client/server memiliki beberapa model yang dapat digunakan, diantaranya
yaitu :
1. Model two-tier
Model ini terdiri dari dua tingkat, yaitu presentation layer dan database layer.
Berjalan pada mesin client, presentation layer berfungsi sebagai antarmuka
sistem dengan pengguna dan juga berfungsi sebagai tempat pengolahan informasi
(aplikasi). Tingkat yang kedua adalah database layer. Database adalah pusat
penyimpanan data. Berjalan di mesin server, database diatur dan diorganisasikan
oleh Database Management Sistem (DBMS). Database layer memberikan
layanan data kepada presentation layer yang terdapat pada mesin
Model arsitektur ini dapat dikelompokan menjadi dua macam, yaitu Thin
a. Thin Client-Thick Server
Pada arsitektur ini, client menjalankan satu fungsi, yaitu sebagai penyaji dari
tampilan aplikasi dan data yang diakses dari server. Hal ini berarti beban
server lebih tinggi dan server menjadi titik kritis dari sistem jaringan tersebut,
dimana server harus memberikan layanan penggunaan bersama
aplikasi-aplikasi(Aplication Server) dan data (Data atau File Server) kepada semua
client yang terhubung kepadanya.
b. Thick Client –Thin Server
Arsitektur ini sedikitnya memberi dua peran bagi client, dimana client tidak
hanya berperan sebagai penyaji interface saja, melainkan juga berfungsi
mengoperasikan aplikasi. Sementara itu, server hanya bertugas untuk
mengelola data saja sehingga beban client bertambah.
2. Model Three-tier
Three Tier merupakan arsitektur Client Server yang memisahkan antara data
(Data Management Tier), aplikasi (Middle Tier) dan penyajian (Presentation
Layer). Three Tier juga berfungsi untuk mengoptimalkan penggunaan sistem
jaringan internet, yang memungkinkan untuk menyediakan layanan transaksi
selama 24 jam dengan sekala yang luas hingga mancanegara
3. Model n-tier
Dalam perkembangan berikutnya, muncul istilah n-Tier dimana sebuah aplikasi
client server dibagi-bagi menjadi beberapa layer atau lapisan. Istilah n-Tier
terdiri dari beberapa komponen utama, yaitu lapisan Presentation(Presentation
Layer), lapisan Application(Application Layer) atau logika bisnis(Bussiness Logic
Layer) dan lapisan data(data layer).
2.3 MySQL
MySQL (My Strukture Query Language) adalah sebuah program pembuat
database yang bersifat open source dan merupakan program pengakses database yang
bersifat jaringan sehingga dapat digunakan untuk aplikasi multiuser (banyak
pengguna). Kelebihan lain dari MySQL adalah menggunakan bahasa Query standar
yang dimiliki oleh SQL (Stucture Query Language). SQL adalah suatu bahasa
permintaan yang terstruktur, yang telah distandarkan untuk semua program pengakses
database seperti Oracle, Posgres SQL, SQL Server, dan lain-lain. SQL dibagi menjadi
dua bentuk perintah, yaitu :
1. DDL (Data Manipulation Language)
DDL (Data Manipulation Language) adalah suatu bentuk bahasa yang
digunakan untuk melakukan pendefinisian data, adapun perintah yang
digunakan adalah:
a. CREATE
Perintah ini digunakan untuk membuat tabel dan database.
b. DROP :
c. ALTER :
Perintah ini digunakan untuk mengubah struktur tabel yang telah
dibuat, baik menambah field (add), mengganti nama field (change)
ataupun menamakan kembali (rename), serta menghapus field (drop).
2. DML (Data Manipulation Language)
DML (Data Manipulation Language) adalah suatu bahasa yang digunakan
untuk memanipulasi data, adapun query yang digunakan adalah:
a. SELECT
Perintah ini digunakan untuk melihat data dalam tabel.
b. INSERT
Perintah ini digunakan untuk menambah data ke suatu tabel.
c. UPDATE
Perintah ini digunakan untuk mengubah suatu data dalam suatu tabel.
d. DELETE
2.4 Transaksi dan Concurency Control 2.4.1 Transaksi
Menurut Connoly (2002), transaksi dalam database adalah aktifitas atau
serangkaian aktifitas yang dilakukan oleh seorang user atau program aplikasi untuk
membaca atau merubah isi database. Transaksi dapat berupa bagian program,
keseluruhan program atau perintah tunggal seperti INSERT, dan UPDATE.
Sebuah transaksi atau lebih pasti membawa perubahan pada database. Dari
proses yang berlangsung, transaksi dikatakan berhasil jika seluruh rutin perintah
dalam transaksi selesai dilakukan tanpa ada gangguan (commit). Sebaliknya, jika dari
rutin program ada dalam sebuah transaksi tidak dapat dilakukan, maka transaksi akan
dibatalkan dengan mengembalikan kondisi database ke kondisi awal sebelum
transaksi dilakukan (roll back). Siklus transaksi dalam database dapat dilihat pada
Gambar 2.2.
Bagan tersebut menunjukkan diagram status transaksi sebuah transaksi. Untuk
mengetahui status yang jelas dari ACTIVE, COMMITTED, dan ABORTED, terdapat
dua buah keadaan yaitu:
1. PARTIALLY COMMITTED
Terjadi setelah statement terakhir dieksekusi, yang mungkin ditemukan bahwa
transaksi telah dilanggar berkali-kali dan transaksi harus dibatalkan, atau sistem
akan mengagalkan transaksi dan mungkin data yang diupdate belum tersimpan
pada penyimpanan sekunder
2. FAILED
Terjadi jika transaksi tidak dapat dilakukan, atau transaksi dibatalkan pada saat
keadaan ACTIVE, hal tersebut bisa disebabkan oleh user yang dengan sengaja
membatalkan transaksi atau dengan penyetujuan protokol untuk membatalkan
transaksi.
2.4.2 Concurency Control
Concurency control merupakan proses untuk mengatur operasi-operasi yang
terjadi secara simultan (bersama-sama) dalam database, tanpa membuat
operasi-operasi tersebut saling mencampuri satu sama lain. Salah satu tujuan utama
mengembangkan database adalah agar banyak user dapat mengakses data yang
dishare secara bersama-sama dalam waktu yang bersamaan. Akses yang bersamaan
ini relatif lebih mudah jika semua user melakukan pembacaan data, sehingga user
Beberapa masalah yang disebabkan oleh concurency, yaitu :
1. The Lost Update Problem
Lost update problem adalah bahwa suatu operasi update yang lengkap dan
sukses dilakukan oleh seorang user, dapat ditimpa (overriden) oleh user yang
lain.
2. The Uncommitted Dependency Problem
Uncommitted Dependency (or dirty read) Problem adalah bahwa ketika
terjadi suatu transaksi diperbolehkan untuk melihat transaksi lain sebelum
transaksi tersebut mencapai commit.
3. The Inconsistent Analysis Problem
Inconsistent Analysis Problem adalah masalah yang terjadi ketika suatu
transaksi membaca nilai dari database tetapi transaksi kedua meng-update
beberapa dari nilai tersebut selama eksekusi yang pertama berjalan.
2.4.3 Serializability
Dari ketiga potensi masalah tersebut, penyebab utamanya adalah terjadi akses
terhadap data di dalam database pada saat yang bersamaan dimana terjadi perbedaan
operasi pada masing-masing transaksi.
Sebagai pemecahan, pengaturan yang dilakukan concurency control adalah
membuat schedule transaksi sehingga eksekusi satu transaksi diperbolehkan hanya
jika tidak ada transaksi lain yang sedang berjalan, atau secara keseluruhan transaksi
sebelumnya benar-benar dinyatakan selesai (committed). Dengan catatan bahwa
database. Dengan kata lain, concurency control tetap mendukung eksekusi transaksi
secara paralel jika transaksi yang satu dengan yang lain tidak saling bersinggungan
(mengeksekusi bagian data yang terpisah atau berbeda).
Ada dua macam schedule, yaitu :
1. Serial Schedule
Sebuah schedule dimana operasi-operasi dari tiap transaksi dieksekusi secara
berurutan tanpa harus meninggalkan operasi dari transaksi lain (tidak
tumpang tindih).
2. Non-Serial Schedule
Sebuah schedule dimana operasi-operasi dari kumpulan transaksi bersama
saling tumpang tindih tetapi urutannya tetap terjaga.
Pada non-serial schedule, urutan baca tulis (read & write) diperhatikan :
1. Jika dua transaksi atau lebih hanya membaca data yang sama tanpa
menimbulkan konflik, maka ururtan tidaklah penting.
2. Jika dua transaksi atau lebih membaca dan atau menulis data yang berbeda
merika tidak menimbulkan konflik, maka urutan tidaklah penting.
3. Jika transaksi menulis dan transaksi lain membaca ataupun menulis pada data
Tabel 2.1 Tabel Non-Serial Schedule
Operasi User 1 User 2 Objek data konflik Urutan
Baca Ya Ya Sama Tidak Tidak penting
Baca/Tulis Ya Ya Beda Tidak Tidak penting
Baca/Tulis Ya Ya Sama Tidak Penting
2.4.4 Teknik Concurency Control
Pedoman yang tetap dipegang dalam pembahasan concurency control adalah
DBMS dapat mendukung operasi multiuser secara paralel tanpa menimbulkan
permasalahan (yang paling utama adalah konsistensi database). Oleh karena itu,
penjadwalan transaksi oleh concurency control lebih terarah pada konsep
pen-serial-an trpen-serial-ansaksi (serializable).
Pendekatan yang digunakan untuk mencapai serializability yaitu:
1. Pendekatan optimistik
Pendekatan ini mendasarkan pada pandangan bahwa konflik antar transaksi
yang menimbulkan inkonsistensi data sangat jarang terjadi, sehingga tidak
perlu melakukan penjadwalan operasi ataupun transaksi. Pengecekan transaksi
2. Pendekatan pesimistik
Pendekatan ini memandang bahwa tetap ada kemungkinan konflik terjadi
antar transaksi. Pendekatan pesimistik dapat menggunakan metode locking
dan timestamp.
2.4.5 Locking
Locking adalah prosedur pengendalian akses bersama pada sebuah data dalam
database dengan mengijinkan hanya satu transaksi beroperasi terhadap sebuah data.
Sehingga saat sebuah transaksi sedang mengakses data, data akan ditutup dari akses
transaksi lain. Namun demikian, akses belum tentu secara penuh ditutup, tergantung
operasi yang dilakukan oleh masing-masing transaksi. Jelasnya, locking memberikan
batasan sifat operasi transaksi.
Terdapat dua macam metode locking, yaitu:
1. Shared lock
Data X hanya dapat dibaca tanpa dapat diubah (read only). Kondisi ini
memungkinkan beberapa operasi transaksi melakukan locking secara
serempak terhadap item data.
2. Exclusive Lock
Data X dapat dibaca dan diubah (read & write) hanya oleh satu transaksi.
Kondisi ini tidak memungkin item data tersebut diakses lebih dari satu operasi
transaksi (baik untuk membaca atau merubah).
Akan tetapi, menurut (Jason, 2008), perintah lock table tidak dapat digunakan
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
3.1.1. Gambaran Umum Sistem Lama
Sistem Informasi Koperasi Simpan Pinjam yang digunakan dalam Koperasi
Simpan Pinjam Bintang Jaya merupakan suatu sistem yang digunakan untuk
menangani proses transaksi koperasi seperti pendaftaran anggota, tabungan (wajib
dan sukarela), pinjaman dan angsuran. Semua proses pencatatan transaksi tersebut
dilakukan hanya dengan menggunakan satu komputer saja. Sistem yang digunakan
pun masih menggunakan metode batch file dan menggunakan program Visual Fox
Pro. Sistem tersebut juga tidak dapat menangani pembuatan laporan dan berkas
secara langsung (terkomputerisasi) sehingga pembuatan laporan dan berkas masih
dilakukan secara manual.
3.1.2. Analisis Masalah
Permasalahan yang timbul dari penggunaan sistem yang lama antara lain
adalah sebagai berikut:
1. Jika ada beberapa anggota koperasi yang ingin melakukan beberapa proses
transaksi secara sekaligus menyebabkan proses pelayanan menjadi lama
(tidak efisien).
2. Sistem yang sudah ada tidak dapat menangani pembuatan laporan dan berkas
secara langsung.
3.1.3. Gambaran Umum Sistem Baru
Untuk menangani permasalahan di atas, maka akan dibuat sebuah sistem baru
yang menerapkan teknologi client/sever database dengan menggunakan arsitektur
two tier. Sistem ini terdiri dari satu buah komputer server yang digunakan untuk
menyimpan data (database) dan beberapa komputer client.
Dalam sistem yang baru ini, jika ada user (petugas, manager dan admin) yang
akan menggunakan sistem, user harus login terlebih dahulu, kemudian sistem akan
mengecek apakah user tersebut memang berhak atau tidak. Sistem informasi koperasi
simpan pinjam ini dibagi menjadi tiga yaitu sistem admin, sistem manager dan sistem
petugas koperasi. Sistem untuk petugas koperasi selanjutnya dibagi lagi menjadi tiga
yaitu sistem transaksi, sistem berkas, dan sistem laporan. Sistem manager dibagi
menjadi dua subsistem yaitu sistem data dan sistem penyetujuan pinjaman. Pada
setiap sistem, user hanya mengisikan data yang sesuai dengan form yang ada dalam
sistem, setelah itu sistem akan memprosesnya secara otomatis dan semua data akan
3.1.1. Orang Yang Terlibat Dalam Sistem
Dalam sistem informasi koperasi simpan pinjam hanya melibatkan dua
orang aktor, yaitu:
1. Admin
Orang yang bertanggung jawab untuk mengatur sistem dan memberikan
akses masuk sistem (login) kepada petugas kopeasi.
2. Manager Koperasi
Orang yang secara langsung berhubungan dengan subsistem data dan
penyetujuan pinjaman.
3. Petugas Koperasi
Orang yang secara langsung berhubungan dengan subsistem transaksi,
3.1.2. Use Case Diagram
Use case diagram secara umum dapat dilhat pada Gambar 3.1.
! "
! "
##" " $$
##" " $$
%
%
3.1.5.1 Sistem Admin
menambah data us er
mencari data user admin
menghapus data user
Gambar 3.2 Gambar Use case diagram untuk sistem admin.
3.1.5.2 Sistem Manager Koperasi 3.1.5.2.1 Use Case Data
menam bah data instans i mengupdate data koperasi
mencari data instansi manager
mengubah data instans i
3.1.5.2.2 Use Case Penyetujuan Pinjaman
menampilkan data berkas hasil peninjauan mencari data berkas hasil
peninjauan
manager
menambah data pinjaman
Gambar 3.4 Gambar Use Case Diagram Penyetujuan Pinjaman
3.1.5.2.3 Use Case Ganti Password
manager
(from Use Case View)
mengubah password
Gambar 3.5 Gambar Use Case Diagram Ganti Password
3.1.5.2.4 Use Case Log Request
menam pi lkan l og request
(f rom Use Case View)
Manager
(f rom Use Case View)
Gambar 3.8 Gambar Use Case Diagram Keanggotaan 3.1.5.2.5 Use Case List Pinjaman
Cari List Pinjaman
Manager
Cetak List Pinjaman
Gambar 3.7 Gambar Use Case List Pinjaman
3.1.5.3 Sistem Petugas Koperasi 3.1.5.3.1 Sistem Transaksi 3.1.5.3.1.1Use Case Keanggotaan
Menambah data anggota
mencari data anggota
mengubah data anggota
pengecekan data pinjaman pengecekan tabungan sukarela
pengecekan tabungan wajib pengecekan sim panan pokok
menghapus data anggota
<<include>> <<include>>
<<include>> <<include>> Petugas
menambah data sim panan wajib
mencari data sim panan wajib
mengubah data sim panan wajib
mencetak s lip pembayaran simpanan wajib petugas
3.1.5.3.1.2Use Case Tabungan Wajib
Gambar 3.9 Gambar Use Case Diagram Tabungan Wajib
3.1.5.3.1.3Use Case Tabungan Sukarela
mencari data sim panan sukarela menambah data simpanan
sukarela
mencetak slip pembayaran simpanan sukarela mengedit data simpanan
sukarela petugas
3.1.5.3.1.4Use Case Penarikan Tabungan
mengedit data penarikan simpanan sukarela
pengecekan saldo tabungan
mencari data penarikan simpanan sukarela mencetak slip penarikan
simpanan sukarela menambah data penarikan
simpanan sukarela
<<include>>
petugas
Gambar 3.11 Gambar Use Case Diagram Penarikan Tabungan
3.1.5.3.1.5Use Case Pinjaman
mencetak slip penerimaan bersih
mencetak slip tanda penerimaan uang
mencari data pinjaman petugas
membuat laporan angs uran membuat laporan tabungan
membuat laporan pinjaman
membuat laporan rugi laba membuat laporan harian
membuat laporan neraca petugas
menambah data alokasi dana
mencetak slip angsuran mencari data angs uran menambah data angsuran
petugas
mencetak slip alokasi dana
3.1.5.3.1.6Use Case Angsuran
Gambar 3.13 Gambar Use Case Diagram Angsuran.
3.1.5.3.2 Sistem Laporan
3.1.5.3.3 Sistem Berkas
mencari data berkas menambah data berkas
mengedit data berkas
mencetak berkas petugas
Gambar 3.15 Gambar Use Case Diagram Pembuatan Berkas
3.1.5.3.4 Use Case Ganti Password
merubah password petugas
Gambar 3.16 Gambar Use Case Diagram Ganti Password.
3.1.5.3.5 Use Case Log Request
menam pi lkan l og request
(f rom Use Case View)
Petugas
(f rom Use Case View)
3.1.3. Class Diagram total _tab_wajib : Doubl e bnyk_bulan : Integer tgl _tab_sukarela : Stri ng besar_tab_sukarel a : Double jml_penarikan : Double sal do_tab_sukarel a : Double keterangan : Stri ng tgl _daftar : Stri ng instansi : Stri ng
pinjaman
b_pengembalian_barang
user_koperasi
kode_pegawai : Stri ng nama : Stri ng tab_waj ib : Doubl e provisi : Doubl e biaya_adm : Double bunga_pi njaman : Double biaya_notari s : Doubl e biaya_kartu_anggota : Double
: l ayar user
: admin : user kontrol : user_koperasi
mem asukkan kata kunci
cari user
tampil_user()
select data
informasi semua data user yang dicari 3.2. Design Sistem
3.2.1. Sequence Diagram 3.2.1.1.Sistem Admin
Proses Menambah Data User
: admin : l ayar user : user kontrol : user_koperasi
mem asukkan data user
tambah user
addUs er()
insert data
Gambar 3.22 Gambar Sequence Diagram untuk Proses Menambah Data User
Proses Mencari Data User
Proses Menghapus Data User
: admin : l ayar user : user kontrol : user_koperasi
memasukkan kode user
hapus user
delUser()
delete data
Gambar 3.24 Gambar Sequence Diagram untuk Proses Menghapus Data User
3.2.1.2.Sistem Manager 3.2.1.2.1 Sistem Data
Proses Mengupdate Data Koperasi
: manager : l ayar data koperasi : data_koperasi kontrol : data_koperasi memasukkan data koperasi baru
ubah data_koperasi
updateData()
update data
Proses Menambah Data Instansi
memasukkan data i nstansi
: manager : l ayar instansi : i nstansi kontrol : instansi
tambah instansi
addInstansi()
insert data
Gambar 3.26 Gambar Sequence Diagram untuk Proses Menambah Data Instansi
Proses Mencari Data Instansi
: manager : layar i nstansi : instansi kontrol : i nstansi
mem asukkan kata kunci
cari instansi
tampil_instansi()
select data
informasi semua data instansi yang dicari
Proses Mengubah Data Instansi
ubah instansi
: manager : l ayar i nstansi : instansi kontrol : i nstansi memasukkan data instansi baru
updateInstansi()
update data
Gambar 3.28 Gambar Sequence Diagram untuk Proses MengubahData Instansi
3.2.1.2.2 Sistem Penyetujuan Pinjaman
Proses Mencari Data Berkas Hasil Peninjauan
: manager : layar penyetuj uan pinjam an : berkas_hasil_peninjauan control
:
berkas_hasil_peni nj auan
memasukkan kata kunci
cari berkas
tampil_berkas()
select data
informasi semua data berkas yang dicari
Gambar 3.29 Gambar Sequence Diagram untuk Proses Mencari Data Berkas Hasil
Proses Menampilkan Data Berkas Hasil Peninjauan
: layar penyetujuan pinj aman
: manager : berkas_hasil_peni njauan control
:
berkas_hasil_peni nj auan memasukkan kode berkas
s elect data
s elect data
informasi semua data berkas hasil peninjauan
Gambar 3.30 Gambar Sequence Diagram untuk Proses MenampilkanData Berkas
Hasil Peninjauan
Proses Menambah Data Pinjaman
: manager : l ayar pi nj aman : pinjaman control : pinjaman memasukkan data pinj aman
tam bah pinjaman
addPinjam an()
insert data
3.2.1.2.3 Proses Mengubah Password
: manager : l ayar ganti password : user_koperasi control : user koperasi
memasukkan password baru
ganti password
update_password()
update data
Gambar 3.32 Gambar Sequence Diagram untuk Proses Mengubah Password
3.2.1.2.4 Proses Menampilkan Log Request
: Manager : l ayar l og request : l oq request control : l og request
tam pil log request
tampil()
select data informasi semua data log request
Gambar 3.33 Gambar Sequence Diagram untuk Proses Menampilkan Log Request
3.2.1.2.3 Sistem List Pinjaman Proses Mencari List Pinjaman
informasi data pinjaman yang dicari
: petugas : l ayar l ist pi nj aman : pinjaman kontrol : pinjaman memasukkan periode pinjaman
cari pinjaman
tampil_pinjaman()
select data
Gambar 3.34 Gambar Sequence Diagram untuk Proses Mencari List Pinjaman
Proses Mencetak List Pinjaman
: petugas : l ayar l ist pi nj aman : pinjaman kontrol : Pinj am an
cetak
cetak_list()
select data laporan List Pinjaman
: anggota
: Petugas : l ayar anggota - : anggota kontrol : tabungan_pokok
memasukkan data anggota
tam bah anggota
addAnggota()
insert data
insert data 3.2.1.3.Sistem Petugas Koperasi
3.2.1.3.1 Sistem Transaksi 3.2.1.3.1.1 Sistem Keanggotaan Proses Menambah Data Anggota
Proses Mencari Data Anggota
: Petugas : l ayar anggota : anggota kontrol : anggota memasukkan kata kunci
cari anggota
tampil_anggota()
select data
informasi semua data anggota yang dicari
Gambar 3.36 Gambar Sequence Diagram untuk Proses Menambah Data
Proses Mengubah Data Anggota
: Petugas : l ayar anggota : anggota kontrol : anggota memasukkan data anggota baru
ubah anggota
editAnggota()
update data
Gambar 3.38 Gambar Sequence Diagram untuk Proses MengubahData Anggota
Proses Menghapus Data Anggota
: Petugas : l ayar anggota : anggota kontrol : anggota
memasukkan kode anggota
hapus anggota
delAnggota()
delete data
Proses Mencetak Slip Tabungan Pokok
: petugas : l ayar simpanan pokok : simpanan pokok kontrol
: cetak_tab_waj ib
cetak data
cetak()
select data
slip pembayaran simpanan pokok
Gambar 3.40 Gambar Sequence Diagram untuk Proses Mencetak SlipTabungan
Pokok
3.2.1.3.1.2 Sistem Tabungan Wajib
Proses Menambah Data Tabungan Wajib
addWajib()
: petugas : l ayar tabungan waj ib : tabungan waji b kontrol : tabungan wajib
insert data
memasukkan data tabungan waji b
tambah tabungan waji b
Gambar 3.41 Gambar Sequence Diagram untuk Proses Menambah Data Tabungan
Proses Mencari Data Tabungan Wajib
: petugas : l ayar tabungan waj ib : tabungan waji b kontrol : tabungan waji b
cari tabungan wajib
tampil_wajib memasukkan kata kunci
select data
informasi data yang dicari
Proses Mengubah Data Tabungan Wajib
: petugas : l ayar sim panan wajib : simpanan waj ib kontrol : simpanan waj ib memasukkan data baru
ubah sim panan
updateWajib()
update data
Gambar 3.43 Gambar Sequence Diagram untuk Proses MengubahData Tabungan
Wajib
Gambar 3.42 Gambar Sequence Diagram untuk Proses MencariData
Proses Mencetak Slip Tabungan Wajib
: petugas : l ayar simpanan waj ib : simpanan waji b kontrol : cetak_tab_waj ib
cetak data
cetak()
select data
slip pembayaran sim panan wajib
Gambar 3.44 Gambar Sequence Diagram untuk Proses Mencetak SlipTabungan Wajib
3.2.1.3.1.3 Sistem Tabungan Sukarela
Proses Menambah Data Tabungan Sukarela
: petugas : l ayar sim panan sukarela : simpanan sukarel a kontrol
: simpanan sukarel a
memasukkan data simpanan sukarel a
tambah tabungan sukarela
addSukarela()
insert data
konfirmasi data telah ditambah
Gambar 3.45 Gambar Sequence Diagram untuk Proses Menambah Data Tabungan
Proses Mencari Data Tabungan Sukarela
: petugas : layar simpanan sukarela : simpanan sukarela
kontrol
: simpanan sukarela
memasukkan kata kunci
cari simpanan sukarela
cari_sukarela()
select data
informasi data tabungan sukarela yang dicari
Proses Mengubah Data Tabungan Sukarela
: simpanan sukarela kontrol
: petugas : l ayar simpanan sukarel a : simpanan sukarela memasukkan data baru
ubah simpanan
updateSukarela()
update data
Gambar 3.47 Gambar Sequence Diagram untuk Proses MengubahData Tabungan
Sukarela
Gambar 3.46 Gambar Sequence Diagram untuk Proses MencariData
Proses Mencetak Slip Tabungan Sukarela
slip pembayaran simpanan sukarela
: petugas : layar simpanan sukarela : simpanan sukarel a kontrol
: cetak_tab_sukarela
cetak data
cetak()
select data
Gambar 3.48 Gambar Sequence Diagram untuk Proses Mencetak SlipTabungan
Sukarela
3.2.1.3.1.4 Sistem Penarikan Tabungan
Proses Menambah Data Penarikan Tabungan
: petugas
: l ayar penarikan si mpanan : simpanan suakrel a kontrol
: simpanan sukarel a
memasukkan data penarikan
penarikan simpanan
addPenarikan()
insert data
Gambar 3.49 Gambar Sequence Diagram untuk Proses Menambah Data Penarikan
Proses Mencari Data Penarikan Tabungan
: l ayar penarikan sim panan
: petugas : simpanan suakrela kontrol
: simpanan sukarela memasukkan kata kunci
cari data penarikan
tampil_penarikan()
select data
informasi data penarikan yang dicari
Gambar 3.50 Gambar Sequence Diagram untuk Proses MencariData Penarikan
Tabungan
Proses Mengubah Data Penarikan Tabungan
: l ayar penarikan simpanan
: petugas : simpanan suakrel a kontrol
: simpanan sukarel a memasukkan data baru
ubah penarikan
updatePenarikan()
update data
Gambar 3.51 Gambar Sequence Diagram untuk Proses MengubahData Penarikan
Proses Mencetak Slip Penarikan Tabungan
: petugas : l ayar penarikan si mpanan : simpanan suakrel a kontrol
: cetak_penarikan
cetak
cetak()
select data
slip penarikan simpanan
Gambar 3.52 Gambar Sequence Diagram untuk Proses Mencetak Slip Penarikan
Tabungan
3.2.1.3.1.5 Sistem Pinjaman
Proses Mencetak Slip Penerimaan Bersih
: petugas : layar pinj aman : pinjaman kontrol :
cetak_peneri maan_bersih
cetak
cetak_peneri maan_bersih()
select data slip penerimaan bersih
Gambar 3.53 Gambar Sequence Diagram untuk Proses Mencetak Slip Penerimaan
Proses Mencetak Slip Penerimaan Uang
: l ayar pi nj aman
: petugas : pinjaman kontrol :
cetak_peneri maan_uang
cetak
cetak_peneri maan_uang()
select data slip penerimaan uang
Gambar 3.54 Gambar Sequence Diagram untuk Proses Mencetak Slip Penerimaan
Uang
Proses Mencari Data Pinjaman
: petugas : l ayar pi nj aman : pinjaman kontrol : pinjaman memasukkan kata kunci
cari pinjaman
tam pil_pinjaman()
select data
informasi data pinjaman yang dicari
3.2.1.3.1.6 Sistem Angsuran
Proses Menambah Data Angsuran
memasukkan data angsuran
: petugas : l ayar angsuran : angsuran kontrol angsuran : angsuran
tam bah angsuran()
addAngsuran()
insert data
Gambar 3.56 Gambar Sequence Diagram untuk Proses Menambah Data Angsuran
Proses Menambah Data Alokasi Dana
memasukkan data alokasi dana
: petugas : l ayar angsuran : alokasi dana control : alokasi_dana
addAlokasi_dana()
insert data
Gambar 3.57 Gambar Sequence Diagram untuk Proses Menambah Data Alokasi
Proses Mencetak Slip Angsuran
: petugas : l ayar angsuran : angsuran kontrol : cetak_angsuran
cetak
cetak()
select data slip angsuran
Gambar 3.58 Gambar Sequence Diagram untuk Proses Mencetak Slip Angsuran
Proses Mencetak Slip Alokasi Dana
: petugas : l ayar angsuran : angsuran kontrol : cetak_alokasi_dana
cetak
cetak()
select data slip alokasi dana
Proses Mencari Data Angsuran
: petugas : l ayar angsuran : angsuran kontrol - : angsuran memasukkan kata kunci
cari angsuran
tampil_angsuran()
select data
informasi data angsuran yang dicari
Gambar 3.60 Gambar Sequence Diagram untuk Proses Mencari Data Angsuran
3.2.1.3.2 Sistem Berkas
Proses Menambah Data Berkas
: berkas kontrol
: petugas : layar berkas : berkas memasukkan data berkas
tambah berkas
addBerkas()
insert data