BAB IV
PERANCANGAN SISTEM
4.1 Perancangan Database
4.1.1 ERD Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad
ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis
data berdasrkan objek-objek dasar basis data yang mempunyai hubungan antar relasi.Untuk lebih jelasnya mengenai perancang relasi pada Aplikasi Koperasi simpan Pinjam sekolah Al-Ittihad dapat dilihat pada gambar 4.1 berikut ini:
Anggota No_Anggota Nama
Alamat Tmp_lahir
Pekerjaan Tgl_Lahir
Telp
Status
TglDaftar JK
N 1
Simpanan No_Simpanan Tgl_Simpanan
R1 N
1
Pinjaman No_Pinjaman
Bunga Lama
Memiliki
Bsr_Pinjaman
N Memiliki
Pengambilan No_Pengambilan
Tgl_Pengambilan
Angsuran No_Angsuran
Tgl_Angsuran Denda Tgl_Pinjaman
Bsr_Angsuran
Sisa_Angsuran
Memiliki 1
N 1 Bsr_Simpanan
Jenis_
Simpanan
ID_JnsSImpanan Nominal
Memiliki
1 N
R5 Nm_Simpanan
Bsr_Pengambilan
Keterangan Tgl_JTempo
Keterangan Total_Angsuran 1
N
Gambar 4.1 ERD Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad
67
4.1.2 Skema Relasi Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad
Anggota (No_Anggota*, Nama, Tmp_Lhr,Tgl_Lhr, Jk, Tgl_Daftar, Status, Pekerjaan, Telp, Alamat )
Simpanan (No_Simpanan*, No_Anggota**, Id_JnsSimpanan, Tgl_Simpanan, Bsr_Simpanan,)
Jenis_Simpanan ( Id_JnsSimpanan*, Nama_Simpanan, Nominal )
Pinjaman (No_Pinjaman*, No_Anggota**, Tgl_Pinjaman, Bsr_Pinjaman, Lama_Pinjaman, Bunga, Tgl_JTempo, Bsr_Angsuran, Keterangan )
Angsuran (No_Angsuran*, No_Pinjaman**, Tgl_Angsuran, TglJTempo, denda, Sisa_Angsuran, Keterangan )
Pengambilan (No_Pengambilan**, No_Anggota**, Id_JnsSimpanan**, Tgl_Pengambilan, Bsr_Pengambilan )
4.1.3 Diagram Skema Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad
Untuk lebih jelasnya mengenai Skema Relasi Pada Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad dapat dilihat pada gambar 4.2 berikut ini:
Jenis_Simpanan Id_JnsSimpanan Jns_Simpanan Nominal Anggota
PK NoAnggota Nama Tmp_Lhir Tgl_Lhir JK Tlp Pekerjaan Status TglDaftar Alamat
Trans_Pinjaman PK No_Pinjaman No_Anggota Tgl_Pinjaman Bsr_Pinjaman Lama_Pinjaman Bunga
Tgl_JTempo Bsr_Angsuran Keterangan
Trans_Angsuran PK NoAngsuran No_Pinjaman Tgl_Angsuran Tgl_JTempo Denda Sisa_Angsuran Keterangan Trans_Pengambilan
PK No_Pengambilan No_Anggota Id_JnsSimpanan Tgl_Pengambilan Jumlah_Pengambilan
Trans_Simpanan PK No_Simpanan
Id_JnsSimpanan No_Anggota Tgl_Simpanan Bsr_Simpanan
Gambar 4.2 Diagram Skema Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad
4.1.4 Struktur Tabel
Sistem basis data tidak terlepas daripada file yang terkait, kita harus mengetahui file-file apa saja yang digunakan dalam perancangan untuk sistem basis data pada Aplikasi koperasi simpan pinjam ini, dengan demikian dihasilkan alur informasi yang jelas.
Adapun struktur desain file yang dirancang yaitu:
1. Tabel 4.1 Tabel Anggota
Fungsi : Untuk Menyimpan Data Anggota Primary key : No_Anggota
Foreign key : -
Untuk Struktur Tabel Anggota dapat dilihat pada tabel 4.1 berikut ini:
Tabel 4.1 Tabel Anggota
2. Tabel 4.2 Tabel trans_simpanan
Fungsi : Untuk Menyimpan Data Simpanan Primary key : No_Simpanan
Foreign key : No_Anggota
No Nama Field Data Type Field Size Keterangan
1 NoAnggota Varchar 6 Primary key
2 Nama Varchar 25
3 TmpLahir Varchar 15
4 TglLahir Date time
5 Jk char 1
6 TglDaftar Date time 10
7 Pekerjaan Varchar 20
8 Status Varchar 10
9 Telp Integer 15
10 Alamat Varchar 50
Untuk Struktur Tabel trans_simpanan dapat dilihat pada tabel 4.2 berikut ini:
Tabel 4.2 Tabel Trans Simpanan
3. Tabel 4.3 Tabel trans_pinjaman
Fungsi : Untuk Menyimpan Transaksi Pinjaman Primary key : No_Pinjaman
Foreign key : No_Anggota
Untuk Struktur Tabel trans_pinjaman dapat dilihat pada tabel 4.3 berikut ini:
Tabel 4.3 Tabel Trans Pinjaman
4. Tabel 4.4 Tabel trans_pengambilan
Fungsi : Untuk Menyimpan data transaksi Pengambilan Primary key : No_Pengambilan
Foreign key : No_Anggota
No Nama Field Data Type Field Size Keterangan
1 No_Simpanan Varchar 6 Primary key
2 No_Anggota Varchar 15 Foreign key
3 Nama Varchar 25
4 Tgl_Simpanan Datetime 5 Jenis_Simpanan char 2 6 Bsr_Simpanan Float
No Nama Field Data Type Field Size Keterangan
1 No_Pinjaman Varchar 12 Primary key
2 No_Anggota Varchar 6 Foriegn Key
3 Tgl_Pinjaman Datetime
4 Bsr_Pinjaman Integer 12 5 Lama_pinjaman Integer 2
6 Bunga Integer 2
7 Tgl_JTempo Datetime
8 Bsr_Angsuran Float 12
9 Keterangan Varchar 15
Untuk Struktur Tabel trans_pengambilan dapat dilihat pada tabel 4.4 berikut ini:
Tabel 4.4 Tabel Trans Pengambilan
5. Tabel 4.5 Tabel trans_angsuran
Fungsi : Untuk Menyimpan Data Transaksi Angsuran Primary key : No_Angsuran
Foreign key : No_Pinjaman
Untuk Struktur Tabel trans_angsuran dapat dilihat pada tabel 4.5 berikut ini:
Tabel 4.5 Tabel Trans Angsuran
6. Tabel 4.9 Tabel jns_simpanan
Fungsi : Untuk Menyimpan Data Jenis Simpanan Primary key : id_JnsSimpanan
Foreign key :-
No Nama Field Data Type Field Size Keterangan
1 No_Pengambilan Varchar 12 Primary key
2 No_Anggota Varchar 6 Foreign key
4 Tgl_Pengambilan Datetime 5 Bsr_Pengambilan float
No Nama Field Data Type Field
Size Keterangan 1 No_Angsuran Varchar 3 Primary key 2 No_Pinjaman Varchar 10 Foreign key 3 Tgl_Angsuran Datetime
5 Tgl_JTempo Date
6 Denda Float 12
6 Sisa_Angsuran Float
7 Keterangan Varchar 10
Untuk Struktur Tabel jns_simpanan dapat dilihat pada tabel 4.9 berikut ini:
Tabel 4.9 Tabel Jenis Simpanan
7. Tabel 4.10 Tabel user
Fungsi : Mengklasifikasi Hak Akses User Primary key : id_User
Untuk Struktur Tabel user dapat dilihat pada tabel 4.10 berikut ini:
Tabel 4.10 Tabel User
4.2 Struktur Menu Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad
Perancangan struktur menu pada aplikasi koperasi Simpan Pinjam Sekolah Al-Ittihad dapat dilihat pada gambar 4.3 dibawah ini :
SIMKOP Sekolah Al-Ittihad
Keanggotaan
Login
Setting Pengguna
Registrasi Anggota
Logout
Transaksi
Simpanan Tambah User
Transaksi Pinjaman
Transaksi Angsuran
Transaksi Pengambilan
Laporan
Ganti Password
Transaksi Bulanan
Transaksi Tahunan
Cek Data Menu Transaksi
Keanggotaan
Transaksi Simpanan
Transaksi Pinjaman
Transaksi Angsuran
Transaksi Pengambilan
Gambar 4.3 Struktur Menu Aplikasi Koperasi Simpan Pinjam Sekolah Al-Ittihad No Nama Field Data Type Field Size Keterangan
1 Id_JnsSimpanan Varchar 2 Primary key 2 Nama_Simpanan Varchar 20
3 Nominal Float
No Nama Field Data Type Field Size Keterangan
1 Nama Varchar 5 Primary key
2 Password Varchar 3
3 Level Varchar 6
4.3 Perancangan antarmuka pengguna 4.3.1 Antarmuka Untuk Login
A. Form Form login adalah sebuah form yang berfungsi untuk menentukan hak akses setiap user yang akan menggunakan aplikasi Simkop ini. Untuk lebih jelasnya dapat dilihat pada gambar 4.4 dibawah ini:
Password Nama User
Login
Login Batal
Level
Gambar 4.4 Form Login B. Algoritma Form Login
Login
(Algoritma untuk melakukan login)
Kondidi Awal :Input username dan Password Kondisi Akhir :Tampil form menu utama Kamus
Username,Password :Varchar Deskripsi
Output (‘Login’)
Output (‘Username’);input (‘Username’);
Output (‘Password’ );input (‘Password’);
Output (‘Level’);input (Level);
If (Username=Username) and (Password=Password) and Output (Level=Level) then
Output (frmMenuAplikasi.frm) else
Output (Messagebox ’Login Gagal’) Exit
End if End sub End.
4.3.2 Antarmuka Untuk Menu Aplikasi
A. Form menu utama adalah sebuah form menu aplikasi yang berisi form input data registarsi anggota, transaksi simpan pinjam, laporan transaksi, setting pengguna, cek data anggota, cek data transaksi simpan pinjam dan informasi tentang aplikasi. Untuk lebih jelasnya dapat dilihat pada gambar 4.5 dibawah ini:
Logo
Keanggotaan Anggota
Simpanan Pinjaman Angsuran Pengambilan Info Data Anggota Input Data Simpan Pinjam
Jenis Simpanan Tambah User Ganti PAssword Setting Pengguna
Laporan Simpanpinjam Laporan Anggotan
Informasi Sofware Cetak Laporan
Input Jenis Simpanan Info Software Info Data Simpanan
Info Data Pinjaman Info Data Angsuran Info Data Pengambilan Info Data Simpan Pinjam
Tentang Pembuat
Logout Keluar Aplikasi
Gambar 4.5 Form Menu Aplikasi B. Algoritma Form Menu Aplikasi
Menu_Utama
(Algoritma untuk Menu Utama) Kondidi Awal :Pilih sembarang menu Kondisi Akhir :Tampil menu yang dipilih Deskripsi
Output (‘Simkop Sekolah Al-Ittihad’) If keanggotaan then
Output(Registrasi Anggota) Else
If transaksi then
Output (transaksi simpanan) or (transaksi pinjaman) or (transaksi angsuran) or (transaksi pengambilan) Else
If Cek Data then
Output (Data keanggotaan) or (Data transaksi simpanan) or (Data transaksi pinjaman) or (Data transaksi
angsuran) or (Data transaksi pengambilan) Else
If Hitung SHU then Output (Hitung SHU)
4.3.3 Antarmuka Untuk Registrasi Anggota
A. Form Registarsi Anggota adalah sebuah form yang berfungsi untuk menginputkan dan menyimpan data anggota pada sebuah proses pendaftaran anggota baru. Selain itu juga , dalam form ini terdapat fungsi untuk mengedit, menghapus, mencetak serta membatalkan sebuah proses data anggota. Untuk lebih jelasnya dapat dilihat pada gambar 4.6 dibawah ini:
Gambar 4.6 Form Registarsi Anggota
Else
If Laporan then
Output (Laporan transaksi) or (Laporan Keanggotaan) or (Laporan SHU)
Else
If Informasi then
Output (Info Aplikasi) or Output (Tentang Pembuat) End if
End if End if End if End if End if End Exit End if End sub End.
No.Pokok Anggota Nama
Tempat Lahir
Tanggal Lahir Alamat
Telp/HP
Jenis Kelamin
Status Tanggal daftar Input Data Anggota
Pekerjaan
Tambah Simpan Edit Batal
Tutup
B. Algoritma form Registrasi Anggota
4.3.4 Antarmuka Untuk Transaksi Simpanan
A. Form Transaksi Simpanan adalah sebuah form transaksi yang berfungsi untuk menginputkan dan menyimpan data transaksi simpanan anggota, baik itu simpanan pokok, simpanan wajib, maupun simpanan sukarela. Untuk lebih jelasnya dapat dilihat pada gambar 4.7 dibawah ini:
FrmAnggota
(Algoritma untuk Form Anggota) Kondisi Awal : Pilih text edit
Kondisi Akhir :Data tersimpan di database
Deskripsi
Output (‘NoAnggota’) Output (‘Nama’) Output (‘JenisKelamin’) Output (‘TempatLahir’) Output (‘TanggalLahir’) Output (‘Telp’) Output (‘Status’)
Output (‘Pekerjaan’) Output (‘Tgldaftar’) Output (‘Alamat’)
If simpan then
Output (‘Anggota.save’) Else
If edit then
Output (‘Anggota.edit) Else
If batal then
Output (‘Anggota.cancel’) Else
If hapus
Ouput (‘Anggota.delete’) Else
If cetak then
Output (‘Anggota.print’) Else
If keluar then
Output (‘Anggota.exit’) End if
End if End if End if End if End if End.
Gambar 4.7 Form Transaksi Simpanan B. Algoritma Form Transaksi Simpanan
FrmSimpanan
(Algoritma untuk Form Simpanan)
Kondisi Awal : Pilih text edit Kondisi Akhir :Data tersimpan di database
Deskripsi
Output (‘NoSimpanan’) Output (‘NoAnggota’) Output (‘Nama’) Output (‘TanggalSimpanan’) Output (‘JenisSimpanan’) Output (‘BesarSimpanan’)
Output (‘Total’)
If simpan then
Output (‘Simpanan.save’) Else
If edit then
Output (‘Simpanan.edit) Else
If batal then
Output (‘Simpanan.cancel’) Else
If hapus
Ouput (‘Simpanan.delete’) Else
If cetak then
Output (‘Simpanan.print’) Else
If keluar then
Output (‘Simpanan.exit’) End if
End if End if End if End if End if End.
No.Simpanan No.Anggota
Tanggal Simpanan
Jenis Simpanan Besar Simpanan Input Transaksi Simpanan
Tambah Simpan Edit
Nama Saldo
Batal
Cetak Tutup
4.3.5 Antarmuka Untuk Transaksi Pinjaman
A. Form Transaksi Pinjaman adalah sebuah form transaksi yang berfungsi untuk menginputkan data transaksi pinjaman anggota, membatalkan proses transaksi pinjaman anggota, dan dapat mencetak bukti transaksi pinjaman anggota saat anggota melakukan transaksi pinjaman. Untuk lebih jelasnya dapat dilihat pada gambar 4.8 dibawah ini:
Gambar 4.8 Form Transaksi Pinjaman B. Algoritma Form Pinjaman
FrmPinjaman
(Algoritma untuk Form Pinjaman) Kondisi Awal : Pilih text edit
Kondisi Akhir :Data tersimpan di database
Deskripsi
Output (‘NoPinjaman’)
Output (‘NoAnggota’) Output (‘Nama’)
Output (‘TanggalPinjaman’) Output (‘Pinjamanke’)
Output (‘BesarPinjaman’) Output (‘LamaPinjaman’) Output (‘Bunga’) Output (‘TanggalJthTempo’) Output (‘BesarAngsuran’)
Output (‘Keterangan’) If simpan then
Output (‘Pinjaman.save’) Else
If edit then
No.Pinjaman No.Anggota
Tanggal Pinjaman
Pinjaman ke- Bunga
Besar Pinjaman
Lama Pinjaman Tgl Jth Tempo Input DataTransaksi Pinjaman
Tambah Simpan Edit Batal
Tutup Jml angsuran
Nama
4.3.6 Antarmuka Untuk Transaksi Angsuran
A. Form Transaksi Angsuran adalah sebuah form input data yang berfungsi untuk mencacat atau menyimpan data transaksi angsuran anggota, membatalkan proses transaksi pinjaman anggota, dan mencetak bukti transaksi angsuran anggota saat anggota melakukan transaksi angsuran. Untuk lebih jelasnya dapat dilihat pada gambar 4.9 dibawah ini:
No.Pinjaman
No.Angsuran Tgl Angsuran Angsuran Ke Besar Angsuran
Input Transaksi Angsuran
Denda
Tambah Simpan Batal
Tutup
. Gambar 4.9 Form Transaksi Angsuran
Output (‘Pinjaman.edit) Else
If batal then
Output (‘Pinjaman.cancel’) Else
If hapus
Ouput (‘Pinjaman.delete’) Else
If cetak then
Output (‘Pinjaman.print’) Else
If keluar then
Output (‘Pinjaman.exit’) End if
End if End if End if End if End if End.
B. Algoritma Form Transaksi Angsuran
4.3.7 Antarmuka Untuk Transaksi Pengambilan
A. Form Transaksi Pengambilan adalah sebuah form input data yang berfungsi untuk mencacat atau menyimpan data transaksi pengambilan simpanan anggota, membatalkan proses transaksi pengambilan anggota, dan mencetak bukti transaksi pengambilan simpanan anggota saat anggota melakukan transaksi pengambilan. Untuk lebih jelasnya dapat dilihat pada gambar 4.10 dibawah ini:
FrmAngsuran
(Algoritma untuk Form Angsuran) Kondisi Awal : Pilih text edit
Kondisi Akhir :Data tersimpan di database
Deskripsi
Output (‘NoAngsuran’) Output (‘NoPinjaman’) Output (‘Nama’)
Output (‘TanggalAngsuran’) Output (‘Angsuranke’) Output (‘BesarAngsuran’) Output (‘Denda’) Output (‘SisaAngsuran’) Output (‘Keterangan’) If simpan then
Output (‘Angsuran.save’) Else
If edit then
Output (‘Angsuran.edit) Else
If batal then
Output (‘Angsuran.cancel’) Else
If hapus
Ouput (‘Angsuran.delete’) Else
If cetak then
Output (‘Angsuran.print’) Else
If keluar then
Output (‘Angsuran.exit’) End if
End if End if End if End if End if End.
No. Anggota No.Pengambilan
Tanggal Pengambilan Jenis Pengambilan
Besar Pengambilan
Input Data Pengambilan
Nama
Sisa Saldo
Tambah Simpan Edit Batal
Tutup
Gambar 4.10 Form Transaksi Pengambilan B. Algoritma Form Transaksi pengambilan
FrmPengambilan
(Algoritma untuk Form Pengambilan) Kondisi Awal : Pilih text edit
Kondisi Akhir :Data tersimpan di database
Deskripsi
Output (‘NoPengambilan’) Output (‘NoAnggota’) Output (‘Nama’) Output (‘TanggalPengambilan’) Output (‘JenisPengambilan’)
Output (‘BesarPengambilan’) If simpan then
Output (‘Pengambilan.save’) Else
If edit then
Output (‘Pengambilan.edit) Else
If batal then
Output (‘Pengambilan.cancel’) Else
If hapus
Ouput (‘Pengambilan.delete’) Else
If cetak then
Output (‘Pengambilan.print’) Else
If keluar then
Output (‘Pengambilan.exit’) End if
End if End if End if End if End if End.
Form Cek Data
Cari Data
Keluar
Lap.Transaksi
Cetak Laporan
Cetak Bulan
Preview Tahun
4.3.8 Form Input Data User
Form input user adalah sebuah form yang berfungsi untuk menginputkan data akses pengguna terhap pada aplikasi. Untuk lebih jelasnya dapat dilihat pada gambar 4.11 dibawah ini:
Nama Password
Input Data User
Tambah Simpan Keluar
Level