sistem informasi lembaga keuangan mikro subsistem … · 2018. 11. 29. · was implemented using...

326
i SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM TABUNGAN PADA BANK PERKREDITAN RAKYAT ( STUDI KASUS PADA BANK PERKREDITAN RAKYAT WILAYAH DAERAH ISTIMEWA YOGYAKARTA ) Skripsi Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika Oleh: Fransiskus Paranso 055314065 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2010

Upload: others

Post on 01-May-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

i

SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM TABUNGAN PADA BANK PERKREDITAN RAKYAT

( STUDI KASUS PADA BANK PERKREDITAN RAKYAT WILAYAH DAERAH ISTIMEWA YOGYAKARTA )

Skripsi

Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika

Oleh:

Fransiskus Paranso

055314065

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2010

Page 2: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

ii

THE INFORMATION SYSTEM OF MICROFINANCE INSTITUTIONS: A SAVING SUBSYSTEM AT BANK PERKREDITAN RAKYAT

( A CASE STUDY AT BANK PERKREDITAN RAKYAT DAERAH ISTIMEWA YOGYAKARTA)

A Thesis

Presented as Partial of the Requirements to

Obtain the Sarjana Teknik Degree In Informatics Engineering

By:

Fransiskus Paranso

055314065

INFORMATICS ENGINEERING STUDY PROGRAM

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2010

Page 3: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

iii

HALAMAN PERSETUJUAN

SKRIPSI

SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO

SUBSISTEM TABUNGAN PADA BANK PERKREDITAN RAKYAT

(STUDI KASUS PADA BANK PERKREDITAN RAKYAT WILAYAH

DAERAH ISTIMEWA YOGYAKARTA)

Oleh :

Fransiskus Paranso

NIM : 055314065

Pembimbing

P.H. Prima Rosa, S.Si., M.Sc.

Tanggal: .....................................

Page 4: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

iv

HALAMAN PENGESAHAN

SKRIPSI

SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO

SUBSISTEM TABUNGAN PADA BANK PERKREDITAN RAKYAT

(STUDI KASUS PADA BANK PERKREDITAN RAKYAT WILAYAH

DAERAH ISTIMEWA YOGYAKARTA)

Dipersiapkan dan ditulis Oleh

Fransiskus Paranso

NIM : 055314065

Telah dipertahankan di depan Panitia Penguji

pada tanggal 14 Desember 2009

dan dinyatakan memenuhi syarat

Susunan Panitia Penguji

Ketua : P.H. Prima Rosa, S.Si., M.Sc. ................................

Sekretaris : Ridowati Gunawan, S.Kom., M.T. ................................

Anggota : Stevanus Wisnu Wijaya, S.T., M.T. ................................

Yogyakarta, ............................

Fakultas Sains dan Teknologi

Universitas Sanata Dharma

Dekan,

Yosef Agung Cahyanta, S.T., M.T.

Page 5: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

v

HALAMAN PERSEMBAHAN

Father! In your hands I place my spirit! (Luke 23:46) Kupersembahkan karyaku ini kepada Tuhan dan Sahabat Sejatiku Yesus Kristus Bunda Maria yang selalu mendoakan dan menyertaiku.......... Keluargaku tercinta Papa Herkulanus Aci & Mama Magdalena Dasmawati yang selalu mendoakan dan memberikan kepercayaan yang begitu besar kepadaku. Kedua kakakku yang cantik, yang selalu menghadapi kesusahan dan berbagi keceriaan bersama sejak kita ada di dunia ini...... Sahabat-sahabat terbaikku............. I Kadek Dendy S., Ign. Hans Veda, Linus Wedar Duanto, Stephanus Christiono, Greg. Arief S., A.G. Ari Bagoes, Catur Edi, Phalita Nari Wastu, Fenti Iskandari, Margareta Ratna, Tessa Paulin, M.G. Esti Anjar, Dya Sifa S., Florensia Dwinta, Natalia Demtha, Dila Marsella, Bernadeta Sepina, Weny Natalia, Romy Hasibuan,Bayu Pamungkas, Acep Kardana, Christ Pasaribu, Wharton Pasaribu, Firdaus Hasibuan, Stefanus Dani yang menjadi tempat berbagi, diskusi dan memberi dukungan yang tiada akhirnya... Serta teman-teman seperjuanganku di SaOS & CoP, tempat dimana aku dapat mencurahkan dan mengembangkan ide-ide liarku...

dan untuk semua orang yang tak pernah menyerah terhadap masalah

meskipun maut yang harus dihadapi......

Page 6: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

vi

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi dengan judul :

SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO

SUBSISTEM TABUNGAN PADA BANK PERKREDITAN RAKYAT

(STUDI KASUS PADA BANK PERKREDITAN RAKYAT WILAYAH

DAERAH ISTIMEWA YOGYAKARTA)

yang dibuat untuk melengkapi sebagian persyaratan menjadi Sarjana Teknik pada

Program Studi Teknik Informatika, Fakultas Sains dan Teknologi Universitas

SanataDharma Yogyakarta, sejauh yang saya ketahui bukan merupakan tiruan

atau duplikasi dari skripsi yang sudah dipublikasikan dan atau pernah dipakai

untuk mendapatkan gelar kesarjanaan di lingkungan Universitas Sanata Dharma

Yogyakarta maupun di Perguruan Tinggi atau Instansi manapun, kecuali bagian

yang sumber informasinya dicantumkan sebagaimana mestinya.

Yogyakarta, Januari 2010

Penulis

Fransiskus Paranso

NIM 055314065

Page 7: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

vii

ABSTRAKSI

Sistem informasi lembaga keuangan mikro pada Bank Perkreditan Rakyat (BPR) adalah sistem yang digunakan menangani proses bisnis perbankan sehari-hari. Sistem ini dikembangkan untuk mempermudah proses transaksi bank mulai dari customer service, tabungan, deposito, perkreditan, teller, utilitas dan pencatatan akuntansi.

Dalam tugas akhir ini dibuat sebuah subsistem dari sistem informasi lembaga keuangan mikro (microbank) pada Bank Perkreditan Rakyat (BPR) yaitu subsistem backoffice yang menangani masalah tabungan. Subsistem ini menangani semua proses data rekening, perhitungan bunga, daftar bunga, pajak dan administrasi tabungan, pemindahbukuan hasil perhitungan bunga, penghapusan transaksi, dan pencetakan laporan. Perhitungan bunga menggunakan metode perhitungan saldo transaksi terkecil, dimana nilai terkecil saldo transaksi dalam satu bulan merupakan nilai dasar pemberian bunga dalam satu bulan.

Sistem berhasil dikembangkan menggunakan metodologi FAST dan diimplementasikan menggunakan bahasa pemrograman Java dan basis data MySQL 5.1, Netbeans 6.5.1 dan SQL Yog 5.22. Selain itu sistem yang dibuat dapat berjalan pada platform sistem operasi Windows dan Linux

Sistem ini diharapkan dapat membantu pegawai pada kantor pendukung (back office) dalam melakukan fungsi-fungsi perhitungan tabungan secara otomatis.

Page 8: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

viii

ABSTRACT

Information systems microfinance institutions at Bank Perkreditan Rakyat (BPR) is a system that is used to handle daily banking business processes. This system was developed to facilitate the process of banking transactions ranging from customer service, savings, deposits, credits, teller, utilities and accounting records.

In this thesis a subsystem of the microfinance institutions information system was made to handle backoffice saving. This subsystem handles all account data processing, calculation of interest, a list of interest, tax and administrative savings, overbooking, the elimination of transactions, and printing reports. The interest calculation using the transaction balance calculation method of the smallest balace transaction, where the smallest value of balance transaction in a month is the basis of the interest provision in a month.

The system was successfully developed using FAST methodology and was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser 5.22. The system also can run on Windows and Linux operating system platform.

This system is expected to help and support employees in the back office to perform the functions of savings calculations automatically.

Page 9: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

ix

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Fransiskus Paranso

NIM : 055314065

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan

Universitas Sanata Dharma karya ilmiah saya yang berjudul :

SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO

SUBSISTEM TABUNGAN PADA BANK PERKREDITAN RAKYAT

(STUDI KASUS PADA BANK PERKREDITAN RAKYAT WILAYAH

DAERAH ISTIMEWA YOGYAKARTA)

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan

kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan,

mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan

data, mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau

media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya

maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya

sebagai penulis.

Demikian pernyataan ini yang saya buat dengan sebenarnya.

Dibuat di Yogyakarta

Pada tanggal : 12 Januari 2010

Yang menyatakan

Fransiskus Paranso

Page 10: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus yang

telah mengaruniakan kasih-Nya kepada penulis sehingga dapat menyelesaikan

tugas akhir ini. Puji syukur kepada Bunda Maria yang selalu menyertai dan

mendoakan penulis selama proses penyelesaian tugas akhir ini.

Dalam penyelesaian tugas akhir ini ada begitu banyak pihak yang telah

memberikan bantuan dan perhatian dengan caranya masing-masing sehingga

tugas akhir ini dapat diselesaikan. Oleh karena itu saya mengucapkan terimakasih

kepada :

1. P.H. Prima Rosa, S.Si., M.Sc., selaku Dosen Pembimbing yang telah

banyak memberikan bimbingan dan masukan dalam penyelesaian

tugas akhir ini.

2. Ridowati Gunawan, S.Kom., M.T., dan Stevanus Wisnu Wijaya,

S.T., M.T., selaku dosen penguji yang telah memberikan banyak

masukan untuk menyempurnakan tugas akhir ini.

3. Keluargaku tercinta, Bapak Herkulanus Aci dan Ibu Magdalena

Dasmawati, Kak Riasa Barata Nian, dan Kak Rita Nian Jubata Mare’

yang tak pernah berhentinya memberikan kasihnya, dukungannya

dan kepercayaannya kepada penulis selama proses penyelesaian

tugas akhir ini

4. Nurma Evy Hendrayani, M.Kom., selaku pembimbing lapangan

yang memberikan banyak bantuan terhadap data-data yang

Page 11: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xi

dibutuhkan penulis.

5. I Kadek Dendy S., sebagai rekan satu tim dengan penulis dalam

menyelesaikan tugas akhir ini.

6. Seluruh staff dosen dan laboran Teknik Informatika Universitas

Sanata Dharma yang telah memberikan bekal ilmu, arahan dan

pengalaman selama penulis menempuh studi.

7. Semua pihak yang telah membantu penulisan baik secara langsung

maupun tidak langsung, yang tidak dapat penulis sebutkan satu-

persatu.

Penulis amat sadar bahwa tugas akhir ini masih jauh dari sempurna.

Oleh karena itu, berbagai masukan yang bermanfaat dalam perbaikan dan

pengembangan tugas akhir ini sangat penulis harapkan.

Akhir kata semoga tugas akhir ini dapat berguna bagi semua pihak yang

membutuhkan.

Yogyakarta, Januari 2010

Penulis

Page 12: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xii

DAFTAR ISI

SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO ________________ i

HALAMAN PENGESAHAN ______________________________________ iv

HALAMAN PERSEMBAHAN _____________________________________ v

PERNYATAAN KEASLIAN KARYA _______________________________ vi

ABSTRAKSI __________________________________________________ vii

ABSTRACT __________________________________________________ viii

LEMBAR PERNYATAAN PERSETUJUAN __________________________ ix

KATA PENGANTAR ____________________________________________ x

DAFTAR ISI __________________________________________________ xii

DAFTAR GAMBAR ____________________________________________ xvi

DAFTAR TABEL ______________________________________________ xx

DAFTAR LAMPIRAN __________________________________________ xxi

BAB I PENDAHULUAN _________________________________________ 1

1.1. Latar Belakang Masalah ___________________________________ 1

1.2. Rumusan Masalah _______________________________________ 2

1.3. Batasan Masalah _________________________________________ 2

1.4. Tujuan dan Manfaat Penelitian ______________________________ 3

1.5. Metode Penelitian ________________________________________ 4

1.6. Sistematika Penulisan _____________________________________ 5

BAB II LANDASAN TEORI ______________________________________ 8

2.1. Sistem Informasi ________________________________________ 8

2.1.1. Konsep Dasar Sistem ___________________________________ 8

2.1.2. Konsep Dasar Informasi ________________________________ 11

Page 13: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xiii

2.2. Konsep Dasar Sistem Informasi ____________________________ 11

2.3. Analisis dan Desain Berbasis Objek _________________________ 13

2.3.1. Object Oriented Analysis (OOA) _________________________ 13

2.3.2. Object Oriented Design (OOD) __________________________ 14

2.3.3. UML (Unified Modelling Languange) _____________________ 15

2.4. Diagram Relasi Entitas ___________________________________ 21

2.5. Sistem Pemrosesan Transaksi ______________________________ 25

2.6. Lembaga Keuangan Mikro (LKM) __________________________ 26

2.7. Bank Perkreditan Rakyat _________________________________ 27

2.8. Metode Perhitungan Bunga Tabungan Berdasarkan Saldo Transaksi

Terkecil ______________________________________________ 28

2.9. Java _________________________________________________ 29

2.10. JDBC ________________________________________________ 32

2.11. MySQL ______________________________________________ 33

2.11.1. Structure Query Languange ___________________________ 34

2.11.2. Stored Procedure ___________________________________ 35

BAB III ANALISIS DAN PERANCANGAN SISTEM __________________ 40

3.1. Analisis Sistem _________________________________________ 40

3.1.1. Deskripsi Sistem Saat Ini _______________________________ 40

3.1.2. Fase Definisi Ruang Lingkup (Scope Definition Phase) ________ 42

3.1.2.1. Perumusan Masalah _______________________________ 42

3.1.2.2. Pernyataan Masalah _______________________________ 43

3.1.3. Fase Analisis Masalah (Problem Analysis Phase) _____________ 44

3.1.3.1. Analisis Sebab-Akibat (Cause-Effect Analysis) ___________ 44

3.1.4. Fase Analisis Kebutuhan (Requirement Analysis Phase) ________ 45

3.1.4.1. Gambaran Sistem yang Baru _________________________ 45

3.1.4.2. Pihak-Pihak yang Terlibat dalam Sistem ________________ 46

3.1.4.3. Diagram Use Case ________________________________ 47

Page 14: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xiv

3.1.4.4. Narasi Use Case __________________________________ 60

3.2. Perancangan Sistem ____________________________________ 104

3.2.1. Fase Desain Logis (Logical Design Phase) _________________ 104

3.2.2.1. Diagram Aktifitas (Activity Diagram) _________________ 104

3.2.2.2. Diagram Relasi Entitas (ER Diagram)_________________ 120

3.2.2. Fase Desain Fisik (Physical Design Phase) _________________ 121

3.2.2.1. Diagram Sekuensial ______________________________ 121

3.2.1.3. Diagram Kelas Lengkap ___________________________ 131

3.2.1.4. Desain Tabel ____________________________________ 131

3.2.1.5. Rancangan Antarmuka ____________________________ 136

BAB IV IMPLEMENTASI DAN HASIL ___________________________ 151

4.1. Fase Konstruksi dan Percobaan ___________________________ 151

4.1.1. Karakteristik Sistem __________________________________ 151

4.1.2. Kebutuhan Sistem ____________________________________ 152

4.1.2.1. Kebutuhan Perangkat Keras ________________________ 152

4.1.2.2. Kebutuhan Perangkat Lunak ________________________ 153

4.2. Implementasi Sistem ___________________________________ 153

4.2.1. Pembuatan Basis Data ________________________________ 153

4.2.2. Pembangunan Sistem _________________________________ 158

4.2.2.1. Arsitektur Pembangunan Sistem _____________________ 158

4.2.2.2. Koneksi Sistem ke Basis Data _______________________ 162

4.2.2.3. Penanganan Verifikasi Direksi dan Manajer ____________ 164

4.2.2.4. Pengelolaan Produk Tabungan ______________________ 169

4.2.2.5. Pengelolaan Grup Tabungan ________________________ 188

4.2.2.6. Pengelolaan Kode Referensi Transaksi Tabungan ________ 203

4.2.2.7. Pengelolaan Data Rekening Tabungan ________________ 216

4.2.2.8. Perhitungan Bunga dan Pajak Tabungan _______________ 235

4.2.2.9. Daftar Bunga, Pajak dan Administrasi Tabungan ________ 246

4.2.2.10. Pemindahbukuan _________________________________ 248

4.2.2.11. Penghapusan Transaksi Tabungan ____________________ 252

Page 15: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xv

4.2.2.12. Pencetakan Laporan Nominatif ______________________ 255

4.2.2.13. Pencetakan Laporan Bunga, Pajak dan Administrasi Tabungan _

______________________________________________ 256

4.2.2.14. Pencetakan Laporan Transaksi Tabungan ______________ 257

4.2.2.15. Pencetakan Laporan Mutasi Tabungan ________________ 257

BAB V ANALISIS HASIL ______________________________________ 259

5.1. Analisis Hasil Implementasi ______________________________ 259

5.1.1. Analisis Unjuk Kerja Multiplatform Subsistem yang Baru _____ 259

5.1.2. Analisis Unjuk Kerja Teknologi Basis Data Subsistem yang Baru 260

5.2. Kelebihan dan Kekurangan Subsistem ______________________ 265

BAB VI PENUTUP ____________________________________________ 267

6.1. Kesimpulan _____________________________________________ 267

6.2. Saran __________________________________________________ 267

DAFTAR PUSTAKA __________________________________________ 269

LAMPIRAN _________________________________________________ 271

Page 16: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xvi

DAFTAR GAMBAR

Gambar 2.1. Karakteristik Sebuah Sistem ___________________________ 11

Gambar 2.2. Blok sistem informasi yang terintegrasi __________________ 13

Gambar 2.3. Diagram Relasi Entitas _______________________________ 21

Gambar 2.4. Entitas ___________________________________________ 21

Gambar 2.5. Atribut ___________________________________________ 22

Gambar 2.6. Identifier atau kunci _________________________________ 23

Gambar 2.7. Relasi Antar Entitas _________________________________ 23

Gambar 2.8. Transaksi lalu lintas query ____________________________ 37

Gambar 3.1. Diagram Konteks Sistem yang Lama ____________________ 40

Gambar 3.2. Diagram Use case direksi _____________________________ 48

Gambar 3.3. Use case Paket Pengelolaan Produk Tabungan _____________ 49

Gambar 3.4. Use case Paket Tabel Pendukung _______________________ 49

Gambar 3.5. Use case Paket Pengelolaan Kode Grup Tabungan __________ 50

Gambar 3.6. Use case Paket Pengelolaan Konfigurasi Tabel Pendukung ____ 51

Gambar 3.7. Diagram Use case Manajer ____________________________ 54

Gambar 3.8. Use case Paket Pengelolaan Data Rekening _______________ 55

Gambar 3.9. Use case Paket Pengelolaan Bunga dan Pajak Tabungan ______ 56

Gambar 3.10. Use Case Paket Pengelolaan Transaksi Tabungan ___________ 56

Gambar 3.11. Use case Paket Pencetakan Laporan _____________________ 57

Gambar 3.12. Diagram Aktifitas Login _____________________________ 104

Gambar 3.13. Diagram Aktifitas Logout ____________________________ 105

Gambar 3.14. Diagram Aktifitas Penambahan Produk Tabungan _________ 105

Gambar 3.15. Diagram Aktifitas Pengubahan Produk Tabungan __________ 106

Gambar 3.16. Diagram Aktifitas Penghapusan Produk Tabungan _________ 106

Gambar 3.17. Diagram Aktifitas Pencarian Produk Tabungan ____________ 107

Gambar 3.18. Diagram Aktifitas Penambahan Kode Grup Tabungan ______ 107

Gambar 3.19. Diagram Aktifitas Pengubahan Kode Grup Tabungan _______ 108

Gambar 3.20. Diagram Aktifitas Penghapusan Kode Grup Tabungan ______ 108

Gambar 3.21. Diagram Aktifitas Pencarian Kode Grup Tabungan _________ 109

Page 17: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xvii

Gambar 3.22. Diagram Aktifitas Penambahan Kode Referensi ___________ 109

Gambar 3.23. Diagram Aktifitas Pengubahan Kode Referensi____________ 110

Gambar 3.24. Diagram Aktifitas Penghapusan Kode Referensi ___________ 110

Gambar 3.25. Diagram Aktifitas Pencarian Kode Referensi _____________ 111

Gambar 3.26. Diagram Aktifitas Penambahan Data Rekening ____________ 111

Gambar 3.27. Diagram Aktifitas Pengubahan Data Rekening ____________ 112

Gambar 3.28. Diagram Aktifitas Penghapusan Data Rekening ___________ 113

Gambar 3.29. Diagram Aktifitas Pencarian Data Rekening ______________ 114

Gambar 3.30. Diagram Aktifitas Perhitungan Bunga dan Pajak ___________ 114

Gambar 3.31. Diagram Aktifitas Pemindahbukuan ____________________ 115

Gambar 3.32. Diagram Aktifitas Penghapusan Transaksi _______________ 116

Gambar 3.33. Diagram Aktifitas Pencarian Bunga, Pajak dan Administrasi

Tabungan ________________________________________ 117

Gambar 3.34. Diagram Aktifitas Pengubahan Bunga, Pajak, dan Administrasi

Tabungan ________________________________________ 117

Gambar 3.35. Diagram Aktifitas Pencetakan Laporan Nominatif Tabungan _ 118

Gambar 3.36. Diagram Aktifitas Laporan Transaksi Tabungan ___________ 118

Gambar 3.37. Diagram Aktifitas Laporan Daftar Mutasi Tabungan ________ 119

Gambar 3.38. Diagram Aktifitas Laporan Bunga, Pajak, dan Administrasi __ 119

Gambar 3.39. Diagram Relasi Entitas (ER Diagram) ___________________ 120

Gambar 3.40. Rancangan Antarmuka Login _________________________ 136

Gambar 3.41. Rancangan Antarmuka menu utama direksi_______________ 137

Gambar 3.42. Rancangan Antarmuka menu utama manajer ______________ 138

Gambar 3.43. Rancangan Antarmuka Produk Tabungan ________________ 139

Gambar 3.44. Rancangan Antarmuka Pencarian Produk Tabungan ________ 140

Gambar 3.45. Rancangan Antarmuka Menu Utama Tabel Pendukung ______ 140

Gambar 3.46. Rancangan Antarmuka Grup Tabungan __________________ 141

Gambar 3.47. Rancangan Antarmuka Pencarian Grup Tabungan _________ 141

Gambar 3.48. Rancangan Antarmuka Kode Referensi Transaksi Tabungan__ 142

Gambar 3.49. Rancangan Antarmuka Pencarian Kode Referensi Transaksi

Tabungan ________________________________________ 142

Page 18: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xviii

Gambar 3.50. Rancangan Antarmuka Pengelolaan Data Rekening ________ 143

Gambar 3.51. Rancangan Antarmuka Pencarian Nasabah _______________ 144

Gambar 3.52. Rancangan Antarmuka Pencarian Rekening ______________ 145

Gambar 3.53. Rancangan Antarmuka Perhitungan Bunga _______________ 145

Gambar 3.54. Rancangan Antarmuka Pemindahbukuan ________________ 146

Gambar 3.55. Rancangan Antarmuka Daftar Bunga dan Pajak Tabungan ___ 147

Gambar 3.56. Rancangan Antarmuka Penghapusan Transaksi Tabungan ___ 148

Gambar 3.57. Rancangan Antarmuka Periode Laporan Bunga, Pajak, dan

Administrasi Tabungan ______________________________ 148

Gambar 3.58. Rancangan Antarmuka Periode Laporan Mutasi Tabungan ___ 149

Gambar 3.59. Rancangan Antarmuka Periode Laporan Nominatif Tabungan 149

Gambar 3.60. Rancangan Antarmuka Periode Laporan Transaksi Tabungan _ 150

Gambar 4.1. Tampilan Login ___________________________________ 165

Gambar 4.2. Tampilan Utama Direksi _____________________________ 168

Gambar 4.3. Tampilan Utama Manajer ____________________________ 169

Gambar 4.4. Tampilan Utama Pengelolaan Produk Tabungan ___________ 170

Gambar 4.5. Tampilan Pencarian Produk Tabungan __________________ 185

Gambar 4.6. Tampilan Pengelolaan Grup Tabungan __________________ 189

Gambar 4.7. Tampilan Pencarian Grup Tabungan ____________________ 200

Gambar 4.8. Tampilan Pengelolaan Kode Referensi Transaksi Tabungan __ 203

Gambar 4.9. Tampilan Pencarian Kode Referensi Transaksi Tabungan ____ 214

Gambar 4.10. Tampilan Pengelolaan Data Rekening Tabungan __________ 217

Gambar 4.11. Tampilan Pencarian Data Nasabah _____________________ 218

Gambar 4.12. Pencarian Data Rekening Tabungan ____________________ 232

Gambar 4.13. Tampilan Perhitungan Bunga dan Pajak Tabungan _________ 236

Gambar 4.14. Tampilan Kesalahan Belum Melakukan Perhitungan Bunga Pada

Bulan Sebelumnya _________________________________ 236

Gambar 4.15. Tampilan Peringatan Sudah Melakukan Perhitungan Bunga dan

Pajak pada Bulan Ini ________________________________ 237

Gambar 4.16. Tampilan Pencarian dan Daftar Bunga, Pajak dan Administrasi

Tabungan ________________________________________ 247

Page 19: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xix

Gambar 4.17. Tampilan Pemindahbukuan ___________________________ 248

Gambar 4.18. Tampilan Penghapusan Data Transaksi __________________ 253

Gambar 4.19. Tampilan Pencetakan Laporan Nominatif Tabungan ________ 256

Gambar 4.20. Tampilan Pencetakan Laporan Bunga, Pajak dan Administrasi

Tabungan ________________________________________ 256

Gambar 4.21. Tampilan Pencetakan Laporan Transaksi Tabungan ________ 257

Gambar 4.22. Tampilan Pencetakan Laporan Mutasi Tabungan __________ 257

Page 20: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xx

DAFTAR TABEL Tabel 2.1. Tabel Komponen Use Case ______________________________ 18

Tabel 2.2. Tabel Notasi Relasi ____________________________________ 24

Tabel 3.1. Pernyataan Masalah ___________________________________ 43

Tabel 3.2. Analisis Sebab Akibat __________________________________ 44

Tabel 3.3. Aktor Use Case _______________________________________ 47

Tabel 3.4. Ringkasan Use Case Direksi _____________________________ 52

Tabel 3.5. Ringkasan Use Case Manajer ____________________________ 57

Tabel 3.6. Tabel groupdef ______________________________________ 131

Tabel 3.7. Tabel kode_periode_administrasi ________________________ 131

Tabel 3.8. Tabel kodegroup1tabung ______________________________ 131

Tabel 3.9. Tabel kodestatustabungan ______________________________ 131

Tabel 3.10. Tabel mutasi ________________________________________ 132

Tabel 3.11. Tabel pengguna _____________________________________ 132

Tabel 3.12. Tabel nasabah _______________________________________ 132

Tabel 3.13. Tabel tabungan ______________________________________ 133

Tabel 3.14. Tabel produk_tabungan _______________________________ 133

Tabel 3.15. Tabel statushitungbungablnini __________________________ 134

Tabel 3.16. Tabel tabtrans _______________________________________ 134

Tabel 3.17. Tabel temp_tabung ___________________________________ 135

Tabel 3.18. Tabel kodetranstabungan ______________________________ 135

Tabel 5.1. Perbandingan server MySQL ___________________________ 260

Page 21: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xxi

DAFTAR LAMPIRAN

Lampiran 1. Kelas Diagram Lengkap Login ________________________ 272

Lampiran 2. Kelas Diagram Lengkap Pengelolaan Produk Tabungan _____ 273

Lampiran 3. Kelas Diagram Lengkap Pengelolaan Grup Tabungan _______ 274

Lampiran 4. Kelas Diagram Lengkap Pengelolaan Kode Pemilik Tabungan 275

Lampiran 5. Kelas Diagram Lengkap Pengelolaan Kode Referensi _______ 276

Lampiran 6. Kelas Diagram Lengkap Pengelolaan Data Rekening _______ 277

Lampiran 7. Kelas Diagram Lengkap Perhitungan Bunga dan Pajak Tabungan _

________________________________________________ 278

Lampiran 8. Kelas Diagram Lengkap Pengelolaan Daftar Bunga, Pajak dan ___

Administrasi Tabungan _____________________________ 279

Lampiran 9. Kelas Diagram Lengkap Pemindahbukuan _______________ 280

Lampiran 10. Kelas Diagram Lengkap Pengelolaan Transaksi Tabungan ___ 281

Lampiran 11. Kelas Diagram Lengkap Pengelolaan Pencetakan Laporan ___ 282

Lampiran 12. Diagram Sekuensial Login ___________________________ 283

Lampiran 13. Diagram Sekuensial Logout Direksi ____________________ 284

Lampiran 14. Diagram Sekuensial Logout Manajer ___________________ 285

Lampiran 15. Diagram Sekuensial Penambahan Produk Tabungan ________ 285

Lampiran 16. Diagram Sekuensial Pengubahan Produk Tabungan ________ 286

Lampiran 17. Diagram Sekuensial Penghapusan Produk Tabungan _______ 286

Lampiran 18. Diagram Sekuensial Pencarian Produk Tabungan __________ 287

Lampiran 19. Diagram Sekuensial Penambahan Grup Tabungan _________ 288

Lampiran 20. Diagram Sekuensial Pengubahan Grup Tabungan __________ 289

Lampiran 21. Diagram Sekuensial Penghapusan Grup Tabungan _________ 290

Lampiran 22. Diagram Sekuensial Pencarian Grup Tabungan ____________ 291

Lampiran 23. Diagram Sekuensial Penambahan Data Rekening __________ 292

Lampiran 24. Diagram Sekuensial Pengubahan Data Rekening __________ 293

Lampiran 25. Diagram Sekuensial Penghapusan Data Rekening __________ 294

Lampiran 26. Diagram Sekuensial Pencarian Data Rekening ____________ 295

Lampiran 27. Diagram Sekuensial Perhitungan Bunga dan Pajak Tabungan _ 296

Page 22: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

xxii

Lampiran 28. Diagram Sekuensial Pencarian Daftar Bunga, Pajak dan

Administrasi Tabungan ______________________________ 297

Lampiran 29. Diagram Sekuensial Pengubahan Daftar Bunga, Pajak dan

Administrasi Tabungan ______________________________ 298

Lampiran 30. Diagram Sekuensial Pemindahbukuan __________________ 299

Lampiran 31. Diagram Sekuensial Penghapusan Transaksi ______________ 300

Lampiran 32. Diagram Sekuensial Pencetakan Laporan Nominatif ________ 301

Lampiran 33. Diagram Sekuensial Pencetakan Laporan Bunga, Pajak dan

Administratif Tabungan _____________________________ 301

Lampiran 34. Diagram Sekuensial Pencetakan Laporan Transaksi Tabungan 302

Lampiran 35. Diagram Sekuensial Pencetakan Laporan Mutasi Tabungan __ 302

Lampiran 36. Daftar Nama Metode yang Menggunakan Konsep Transaksi _ 303

Page 23: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

1

BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah

Subsistem tabungan pada sistem informasi lembaga keuangan mikro

Bank Perkreditan Rakyat adalah sebuah subsistem yang menangani berbagai

proses transaksi tabungan pada bagian kantor pendukung (back office). Transaksi-

transaksi tabungan yang ditangani pada subsistem ini meliputi pembuatan

rekening tabungan, perhitungan bunga dan pajak tabungan, pemindahbukuan,

penghapusan transaksi tabungan, dan pencetakan berbagai laporan.

Subsistem tabungan yang digunakan oleh Bank Perkreditan Rakyat di

wilayah Daerah Istimewa Yogyakarta, saat ini masih memiliki beberapa masalah

yaitu hanya mampu berjalan pada sistem operasi Windows dan basis data yang

tidak mendukung konsep transaksi. Kemampuan subsistem informasi tabungan

yang hanya dapat berjalan pada Windows mengakibatkan Bank Perkreditan

Rakyat harus mengeluarkan biaya tambahan untuk membeli sistem operasi

Windows yang asli. Sedangkan tidak didukungnya konsep transaksi oleh basis

data subsistem tabungan yang digunakan oleh Bank Perkreditan Rakyat di

wilayah Daerah Istimewa Yogyakarta mengakibatkan jika terjadi kegagalan

sistem maka proses transaksi yang harus diulang dari awal. Kegagalan sistem juga

Page 24: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

2

berakibat pada data transaksi tabungan yang tidak seimbang pada laporan

keuangan di setiap akhir bulan dalam subsistem akuntasi.

Dari beberapa masalah di atas, maka diperlukan untuk membuat suatu

aplikasi lembaga keuangan mikro yang menangani masalah tabungan. Sistem baru

dari subsistem tabungan akan dapat menangani berbagai data transaksi tabungan

secara konsisten dan dapat berjalan di berbagai platform sistem operasi khususnya

Windows dan Linux.

1.2. Rumusan Masalah

Berdasarkan latar belakang di atas dapat dirumuskan beberapa

permasalahan yaitu bagaimana cara mengembangkan sistem informasi lembaga

keuangan mikro dengan spesifikasi:

a. menggunakan bahasa pemrograman yang dapat berjalan di berbagai

plaform sistem operasi?

b. menggunakan basis data yang mendukung konsep transaksi dalam

basis data?

1.3. Batasan Masalah

Batasan-batasan dari masalah di atas adalah:

a. Sistem tidak menangani perhitungan akuntansi yang meliputi

pembukuan pada neraca dan buku besar.

Page 25: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

3

b. Sistem ditampilkan dalam ruang lingkup window application.

c. Sistem dapat digunakan oleh banyak pengguna (multiuser).

d. Sistem dapat berjalan di sistem operasi Windows dan Linux yang

sudah memiliki JRE (Java Runtime Environment).

e. Sistem dikembangkan hanya untuk tingkat jaringan komputer lokal

(Local Area Network).

1.4. Tujuan dan Manfaat Penelitian

Tujuan dari penelitian adalah membuat suatu subsistem tabungan dari

sistem informasi lembaga keuangan mikro Bank Perkreditan Rakyat dengan

spesifikasi:

a. dapat menampung data transaksi tabungan dalam ukuran besar, dan

dapat berjalan di berbagai platform sistem operasi.

b. dapat menghitung saldo dari rekening tabungan, bunga tabungan,

pajak, dan biaya administrasi rekening,

Manfaat dari penelitian adalah membantu pegawai pada kantor

pendukung (back office) dalam melakukan fungsi-fungsi perhitungan tabungan

secara otomatis.

Page 26: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

4

1.5. Metode Penelitian

Metodologi penelitian yang dilaksanakan dan cara-cara yang digunakan

untuk mengembangkan sistem informasi lembaga keuangan mikro Bank

Perkreditan Rakyat ini menggunakan metode FAST (Framework for the

Application of System Thinking) . Tahap-tahap yang dikerjakan berdasarkan FAST

adalah :

a. Tahap definisi ruang lingkup (scope definition) merupakan tahap

penentuan kelayakan dan batasan-batasan dari sistem yang akan

dibangun. Hasil dari tahap ini adalah pernyataan masalah yang

dihadapi.

b. Tahap analisis masalah (problem analysis) merupakan tahap

analisis terhadap masalah-masalah utama yang dihadapi dan akan

diselesaikan oleh sistem informasi. Pada tahap ini akan dilakukan

studi terhadap referensi yang dimiliki oleh sistem yang lama serta

menganalisis permasalahan dari sistem yang lama. Dalam tahap ini

akan menghasilkan analisis sebab-akibat (cause-effect analysis).

c. Tahap analisis kebutuhan (requirement analysis) merupakan tahap

pengumpulan data akan kebutuhan sistem yang baru dan

menganalisisnya. Metode dalam pengumpulan data ini

menggunakan cara observasi dan studi literatur. Hasil dari tahap ini

direpresentasikan dengan use-case diagram.

d. Tahap desain logis (logical design) merupakan tahap pembuatan

rancangan sistem informasi secara logis dan fisik, baik

Page 27: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

5

perancangan diagram aktifitas, diagram relasi entitas dan diagram.

e. Tahap desain fisik dan integrasi (physical design and integration)

merupakan tahap perancangan sistem secara fisik dan

mengintegrasikannya. Dalam tahap ini dibuat diagram sekuensial,

diagram kelas lengkap, rancangan tabel dan rancangan antarmuka

sistem.

f. Tahap konstruksi dan pengujian merupakan tahap pembuatan

sistem dan melakukan pengujian meliputi unjuk kerja, uji masukan

dan keluaran dari sistem.

1.6. Sistematika Penulisan

Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB I. PENDAHULUAN

Bab ini memberikan gambaran singkat mengenai sistem informasi

lembaga keuangan mikro subsistem tabungan pada Bank Perkreditan

Rakyat yang meliputi latar belakang, rumusan masalah, batasan masalah,

tujuan dan manfaat penelitian, metodologi penelitian, dan sistematika

penulisan.

Page 28: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

6

BAB II. LANDASAN TEORI

Bab ini mengemukakan teori-teori yang menjadi acuan dalam

perancangan dan pembuatan sistem informasi lembaga keuangan mikro

subsistem tabungan pada Bank Perkreditan Rakyat.

BAB III. ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi uraian mengenai pernyataan masalah, analisis

masalah menggunakan PIECES, gambaran sistem saat ini, cause-effect

analysis, gambaran sistem baru, orang-orang yang terlibat dalam sistem,

diagram konteks, diagram use case, ringkasan use case, diagram aktifitas,

diagram sekuensial, diagram kelas, dan perancangan tampilan untuk

pembuatan sistem informasi lembaga keuangan mikro subsistem

tabungan pada Bank Perkreditan Rakyat.

BAB IV. IMPLEMENTASI DAN HASIL

Bab ini akan menguraikan proses pembuatan sistem secara fisik

menggunakan rancangan sistem yang sudah ditulis di bab III.

BAB V. ANALISIS HASIL

Bab ini berisi tentang uraian mengenai analisis dari sistem

informasi lembaga keuangan mikro pada Bank Perkreditan Rakyat

antara lain tentang unjuk kerja basis data, unjuk kerja multiplatform dan

kelebihan serta kekurangan sistem.

Page 29: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

7

BAB VI. PENUTUP

Bab ini menguraikan kesimpulan dan saran-saran dari sistem

informasi lembaga keuangan mikro subsistem tabungan.

Page 30: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

8

BAB II

LANDASAN TEORI

2.1. Sistem Informasi

2.1.1. Konsep Dasar Sistem Sistem dapat didefinisikan dengan menggunakan dua pendekatan,

yaitu pertama menekankan pada prosedur dan yang kedua menekankan

pada komponen. Pada pendekatan pertama, sistem didefinisikan sebagai

suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan,

berkumpul bersama-sama untuk melakukan suatu kegiatan atau

menyelesaikan suatu sasaran tertentu. Sedangkan pada pendekatan kedua,

sistem didefinisikan sebagai kumpulan dari elemen-elemen yang

berinteraksi untuk mencapai tujuan tertentu (Jerry Fitz Gerald, 1981).

Sistem memiliki karakteristik atau sifat-sifat sebagai berikut

(Jogiyanto, 2001):

1. Komponen Sistem

Komponen-komponen yang dimiliki suatu sistem saling berinteraksi

dan bekerjasama untuk membentuk satu kesatuan. Setiap komponen

memiliki sifat-sifat dari sistem untuk menjalankan suatu fungsi tertentu

dan mempengaruhi proses suatu sistem secara keseluruhan. Komponen

dari sistem ini dapat juga berupa sub sistem atau bagian dari suatu

sistem.

Page 31: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

9

2. Batasan Sistem

Diantara suatu sistem dengan sistem yang lain terdapat suatu daerah

yang disebut sebagai batasan sistem. Batasan sistem ini

memungkinkan bagi suatu sistem untuk dipandang sebagai suatu

kesatuan. Batasan sistem ini juga menunjukkan ruang lingkup dari

sistem tersebut.

3. Lingkungan Luar Sistem

Lingkungan luar sistem merupakan segala sesuatu yang berada di luar

batasan sistem, yang mempengaruhi operasi sistem. Lingkungan luar

ini dapat bersifat menguntungkan sistem, namun dapat juga

merugikan.

4. Penghubung Sistem

Penghubung sistem merupakan media penghubung antar subsistem.

Media ini memungkinkan sumber-sumber daya mengalir dari suatu

subsistem ke subsistem yang lainnya, dan juga untuk mengintegrasikan

subsistem-subsistem tersebut sehingga membentuk satu kesatuan.

5. Masukan Sistem

Masukan sistem adalah energi yang diberikan kepada sistem. Masukan

dapat berupa masukan perawatan dan masukan sinyal. Masukan

perawatan dimasukkan supaya sistem tersebut dapat beroperasi.

Sedangkan masukan sinyal dimasukkan ke dalam sistem untuk

diproses agar dapat diperoleh keluaran.

Page 32: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

10

6. Keluaran Sistem

Keluaran sistem merupakan hasil dari energi yang diolah dan

diklasifikasikan menjadi keluaran yang berguna. Keluaran ini dapat

menjadi masukan untuk subsistem yang lainnya.

7. Pengolahan Sistem

Pengolahan pada suatu sistem menjadi bagian yang akan mengubah

masukan menjadi keluaran.

8. Sasaran Sistem

Sasaran sistem merupakan tujuan yang hendak dicapai oleh suatu

sistem. Jika suatu sistem tidak memiliki sasaran, maka operasi pada

sistem tidak akan ada gunanya. Sasaran ini akan sangat menentukan

masukan yang dibutuhkan sistem dan keluaran yang harus dihasilkan.

Suatu sistem dikatakan berhasil jika sasaran atau tujuan telah tercapai.

Page 33: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

11

Dari karakteristik atau sifat-sifat sistem tersebut, maka suatu sistem

dapat digambarkan sebagai berikut (Jogiyanto, 2001):

Gambar 2.1. Karakteristik Sebuah Sistem

2.1.2. Konsep Dasar Informasi

2.2. Konsep Dasar Sistem Informasi

Sistem Informasi adalah susunan dari orang, data, proses,

komunikasi, dan teknologi informasi yang berinteraksi untuk mendukung

dan memperbaiki operasi dalam satu bisnis hari demi hari, dan juga

mendukung penyelesaian masalah dan membuat keputusan yang

dibutuhkan oleh manajemen dan pengguna (Whitten, 2004).

Blok-blok dalam sistem informasi adalah (Jogiyanto, 2001):

1. Blok Masukan (input block)

Blok masukan mewakili data yang masuk ke dalam sistem informasi.

Blok ini termasuk di dalamnya metode-metode dan media-media untuk

Page 34: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

12

menangkap data yang akan dimasukkan yang dapat berupa dokumen

dasar.

2. Blok Model (model block)

Blok ini terdiri dari kombinasi prosedur, logika dan model matematis,

yang akan memanipulasi data masukan dan data yang tersimpan di

basisdata dengan cara yang sudah tertentu, untuk menghasilkan

keluaran yang diinginkan.

3. Blok Keluaran (output block)

Produk dari sistem informasi adalah keluaran yang merupakan

informasi yang berkualitas dan dokumentasi yang berguna untuk

semua tingkatan manajemen serta semua pemakai sistem.

4. Blok Teknologi (technology block)

Blok teknologi merupakan kotak alat (tool box) dalam sistem

informasi, yang digunakan untuk menerima masukan, menjalankan

model, menyimpan dan mengakses data, menghasilkan dan

mengirimkan keluaran, dan membantu pengendalian dari sistem secara

keseluruhan. Blok ini terdiri atas tiga bagian penting, yaitu teknisi

(brainware), perangkat lunak (software) dan perangkat keras

(hardware).

5. Blok Basisdata (database block)

Basisdata merupakan kumpulan dari data yang saling berhubungan

satu sama lain, tesimpan di media penyimpanan (perangkat keras)

komputer dan dibutuhkan perangkat lunak untuk memanipulasinya.

Page 35: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

13

6. Blok Kendali (control block)

Blok kendali dirancang dan diterapkan untuk meyakinkan bahwa hal-

hal yang dapat merusak sistem dapat dicegah atau jika terlanjur terjadi,

dapat langsung diatasi. Hal-hal yang dapat merusak sistem ini, seperti

bencana alam, api, temperatur atau suhu, air, debu, kecurangan-

kecurangan, kegagalan sistem itu sendiri, ketidakefisienan, sabotas dan

lain sebagainya.

Dari keenam blok tersebut di atas, maka dapat digambarkan sebagai

berikut :

Gambar 2.2. Blok sistem informasi yang terintegrasi

2.3. Analisis dan Desain Berbasis Objek

2.3.1. Object Oriented Analysis (OOA)

Object Oriented Analysis merupakan pendekatan yang

digunakan untuk mengidentifikasikan fungsionalitas dari kebutuhan

sistem dari perspektif user dan mengidentifikasikan objek, atribut,

Page 36: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

14

behaviour, dan relasi yang mendukung kebutuhan fungsional sistem

(Whitten, 2004).

2.3.2. Object Oriented Design (OOD)

Object Oriented Design merupakan pendekatan yang digunakan

untuk menspesifikasikan solusi perangkat lunak dalam bentuk

kolaborasi objek, atribut, dan fungsinya. Tahap ini merupakan

kelanjutan dari proses object oriented analysis. Dalam tahap ini

terdapat tiga jenis objek, yaitu (Whitten, 2004):

1. Entitas Object, merupakan sebuah objek yang berisi informasi yang

berhubungan dengan bisnis dan secara khusus bersifat persisten dan

disimpan dalam database.

2. Interface Object, merupakan sebuah objek yang disediakan untuk

menggambarkan bagaimana sebuah aktor akan berkomunikasi dengan

sistem. Contoh : sebuah window, dialog box. Interface object

mempunyai dua tanggung jawab, yaitu :

a. Menterjemahkan masukan user ke dalam informasi yang dapat

dimengerti oleh sistem dan sistem dapat menggunakannya

untuk memproses kejadian bisnis.

b. Membawa data yang berhubungan ke dalam suatu kejadian

bisnis dan menterjemahkan data untuk dipresentasikan secara

tepat kepada user.

Page 37: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

15

3. Control Object, merupakan sebuah objek yang berisi aplikasi logik

yang bukan merupakan tanggung jawab entitas object. Control object

akan mengkoordinasikan message antar interface object dan entitas

object dan mengurutkan message yang terjadi.

2.3.3. UML (Unified Modelling Languange)

UML merupakan konfensi pemodelan yang digunakan untuk

menentukan atau menggambarkan sebuah sistem software yang terkait

dengan objek. UML tidak menentukan sebuah metode untuk

mengembangkan sistem tetapi hanya berupa notasi (Whitten, 2004).

UML memberikan sembilan diagram yang dikelompokan ke

dalam lima kelompok dengan sudut pandang yang berbeda terhadap

sebuah model sistem. Berikut adalah kelompok-kelompok tersebut:

1. USE-CASE MODEL DIAGRAM

Use case diagram adalah sekumpulan diagram yang menggambarkan

interaksi antara sistem dan eksternal sistem dan user. Use case secara

behavioral berhubungan dengan urutan langkah-langkah, baik

secaraotomatis maupun manual dengan tujuan untuk melengkapi bisnis

tunggal, misalnya login ke sistem, manambah data barang, menghapus

data barang, dan sebagainya. Actor adalah segala sesuatu yang

dibutuhkan untuk berinteraksi dengan sistem untuk mengubah

informasi.

Page 38: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

16

Use Case Diagram terdiri atas beberapa komponen,

yaitu :

1. Use Case

Use case adalah urutan langkah-langkah yang

secara tindakan saling terkait, baik terotomatisasi maupun

secara manual, untuk tujuan melengkapi satu tugas bisnis

tunggal ( Whitten, 2004 ).

2. Pelaku

Pelaku adalah segala sesuatu yang perlu

berinteraksi dengan sistem untuk pertukaran informasi

(Whitten, 2004 ). Adapun terdapat empat tipe pelaku, yaitu :

2.1. Primary business actor ( pelaku bisnis utama )

Stakeholder yg mendapat keuntungan utama dari

proses mengeksekusi use case.

2.2. Primary system actor ( pelaku sistem utama )

Stakeholder yg secara langsung berinteraksi dg sistem

utk menginisiasi atau memicu kejadian bisnis atau

sistem.

2.3. External server actor ( pelaku pelayan luar )

Stakeholder yg merespon terhadap permintaan dari use

case.

2.4. External receiver actor ( pelaku penerima luar )

Stakeholder yg bukan merupakan pelaku utama tetapi

Page 39: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

17

menerima sesuatu yg berharga dari use case.

3. Relationship ( Hubungan )

Relationship adalah hubungan antar use case

dengan pelaku maupun antar use case (Whitten, 2004).

Adapun terdapat lima tipe relationship yaitu :

Association

Suatu relasi antara seorang aktor dan sebuah use case

dimana terjadi interaksi yg terjadi diantara mereka.

Extends

Sebuah use case berisi langkah-langkah yang

dringkas dari sebuah use case yang lebih kompleks

agar menjadi use case yang lebih sederhana namun

secara fungsi lebih meluas.

Abstract

Suatu use case yg mengurangi redudansi antara dua

atau lebih use case dg cara mengkombinasikan

langkah - langkah yg umum yg ditemui dalam use

case tersebut.

Depends on

Sebuah relasi use case yang menentukan bahwa use

case yang lain harus dibuat sebelum current use case.

Inheritance

Suatu relasi use case dimana tindakan yg sama dari

Page 40: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

18

dua aktor menginisiasi use case yg sama

diekstrapolasi dan dibentuk menjadi aktor baru secara

abstrak untuk mengurangi redundancy.

Adapun komponen yang digunakan dalam pembuatan

use-case diagram, digambarkan ,dengan simbol sebagai berikut :

Tabel 2.1. Tabel Komponen Use Case

Simbol Keterangan

Simbol dari pelaku atau aktor

use case.

Simbol dari use case atau

fungsi sistem.

Simbol relasi association.

Simbol relasi extends.

Simbol relasi abstract.

Simbol relasi depends on.

Simbol relasi inheritance.

Page 41: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

19

2. STATIC STRUCTURE DIAGRAM

Ada 2 diagram yang tergolong dalam kelompok ini yaitu:

a. Class diagram menggambarkan struktur dari objek sistem. Class

diagram memperlihatkan class dalam sistem beserta relasi antara

class.

b. Object diagram sama dengan class diagram, tetapi lebih dari pada

menggambarkan class, object diagram memodelkan object instance

secara aktual, memperlihatkan nilai tertentu dari atribut instance.

Diagram ini tidak sering digunakan seperti class diagram tetapi

digunakan untuk membantu developer memahami struktur dari sistem.

3. INTERACTION DIGARAM

Interaction diagram memodelkan sebuah interaksi, yang berisi

sekumpulan objek dan relasinya, dan juga message yang dikirim antara

objek dan relasinya. Diagram ini memodelkan dinamic behaviour dari

sistem. Ada dua diagram yaitu:

a. Sequence diagram menjelaskan interaksi objek yang disusun dalam

suatu urutan waktu. Diagram ini secara khusus berasosiasi dengan use

case. Sequence diagram memperlihatkan tahap demi tahap apa yang

seharusnya terjadi untuk menghasilkan sesuatu didalam use case.

b. Collaboration diagram sama dengan sequence diagram tetapi tidak

berfokus pada timing atau ‘sequence’ dari message. Menggambarkan

Page 42: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

20

interkasi (collaboration) antar objek dalam format network. Antara

sequence diagram dan collaboration diagram bersifat isomorphic,

yang berarti dapat melakukan transformasi satu bentuk ke bentuk yang

lainnya.

4. STATE DIAGRAM

State diagram terdiri dari dua diagram yaitu:

a. Statechart diagram digunakan untuk model dinamic behaviour dari

particular object.

b. Activity diagram digunakan untuk menggambarkan aliran sequen dari

aktifitas dari proses bisnis atau sebuah use case.

5. IMPLEMENTATION DIAGRAM

Implementation diagram terdiri dari dua diagram:

a. Component diagram digunakan untuk menggambarkan organisasi dan

ketergantungan dari komponen sistem software. Component diagram

dapat digunakan utnuk memperlihatkan bagaimana kode program

dibagi ke dalam modul-modul (atau komponen).

b. Deployment diagram menggambarkan arsitektur secara fisik dalam

bentuk ‘node’ untuk hardware dan software dalam sistem.

Menggambarkan konfigurasi dari run-time software component,

processor, dan peralatan lain yang membentuk arsitektur sistem.

Page 43: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

21

2.4. Diagram Relasi Entitas

Diagram relasi entitas (Entity relationship diagram) merupakan

sebuah model data yang menggunakan beberapa notasi untuk

menggambarkan data ke dalam bentuk entitas dan relasinya.

Gambar 2.3. Diagram Relasi Entitas

Entitas adalah sebuah kumpulan dari orang, tempat, objek,

kejadian atau konsep yang diperlukan untuk menyimpan data. Nama

entitas berupa kata benda tunggal ( singular noun ).

Gambar 2.4. Entitas

Page 44: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

22

Atribut merupakan sebuah properti yang deskriptif atau

karakteristik dari sebuah entitas. Sinonimnya adalah elemen, properti, dan

field.

Gambar 2.5. Atribut

Key merupakan sebuah atribut atau kelompok atribut yang

diasumsikan memiliki nilai yang unik untuk setiap instance. Sering juga

disebut dengan pengenal (identifier).

1. Concatenated key merupakan sekelompok atribut yang memiliki

identitas instance dari sebuah entitas yang unik Sinonimnya composite

key dan compound key.

2. Candidate key merupakan satu dari nilai key yang akan berfungsi

sebagai primary key dari sebuah entitas. Sinonimnya adalah candidate

identifier

Page 45: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

23

3. Primary key merupakan sebuah candidate key yang paling umum

digunakan untuk mengidentifikasikan secara unik instance dari entitas

yang tunggal.

4. Alternate key merupakan sebuah candidate key yang tidak dapat dipilih

untuk menjadi primary key. Sinonimnya adalah secondary key.

Gambar 2.6. Identifier atau kunci

Relasi adalah sebuah asosiasi bisnis normal yang ada antara satu

atau lebih entitas. Relasi mungkin juga mewakili suatu kejadian yang

menghubungkan antara entitas atau logika gabungan antara entitas.

Gambar 2.7. Relasi Antar Entitas

Kardinalitas merupakan minimum dan maksimum kejadian dari

sebuah entitas yang dihubungkan dengan kejadian tunggal dari entitas

Student CurriculumIs being studied by is enrolled in

Page 46: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

24

yang lain. Karena seluruh relasi adalah bidirectional maka kardinalitas

harus didefinisikan pada kedua arah untuk setiap relasi.

Tabel 2.2. Tabel Notasi Relasi

INTERPRETASI

KARDINALITAS

CONTOH

MINIMUM

CONTOH

MAKSIMUM

NOTASI

GRAFIS

Tepat satu (satu

dan hanya satu)

1 1

atau

Nol atau satu 0 1

Satu atau lebih 1 Banyak ( > 1 )

Nol, satu atau lebih 0 Banyak ( > 1 )

Lebih dari satu >1 >1

Page 47: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

25

Foreign key adalah sebuah primary key dari sebuah entitas yang

digunakan oleh entitas yang lain untuk mengidentifikasikan instance dari

sebuah relasi.

Relasi yang tidak khusus (nonspecific relationship) merupakan

relasi dimana banyak instance dari sebuah entitas berasosiasi dengan

banyak instance dari entitas yang lainnya. Disebut juga dengan relasi

many-to-many relationship. Nonspecific relationship harus diselesaikan.

Kebanyakan dari nonspecific relationship diselesaikan dengan sebuah

entitas asosiatif.

Key-base data model bertujuan untuk menghilangkan nonspecific

relationship jika ada, menambah asosiatif entitas termasuk primary dan

alternate key, dan kardinalitas yang tepat.

Fully attributed data model bertujuan untuk memasukkan seluruh

atribut.

2.5. Sistem Pemrosesan Transaksi

Sistem pemrosesan transaksi adalah sebuah sistem yang mengatur

akses kepada DBMS. Sistem pemrosesan transaksi umumnya terdiri dari

pemantau pemprosesan transaksi, satu atau lebih DBMS, dan sekelompok

aplikasi yang berisi transaksi (M. Lewis, 2002).

Transaksi memiliki komponen yang membedakannya dengan sistem

yang biasa. Komponen untuk membuat sebuah transaksi dikenal dengan

Page 48: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

26

istilah ACID yaitu (M. Lewis, 2002):

a. Atomicity, merujuk pada sistem harus memastikan bahwa transaksi

dapat berjalan. Jika transaksi tidak berjalan, maka tidak memiliki

akibat apapun.

b. Consistent, merujuk pada kondisi dimana perancang basis data

dapat mengasumsikan ketika menjalankan transaksi, basis data

memenuhi aturan integritas data yang memuaskan. Perancang basis

data memiliki tanggung jawab untuk memastikan ketika eksekusi

transaksi telah selesai, maka basis data tetap memenuhi aturan

integritas.

c. Isolation, merujuk pada walaupun transaksi dijalankan bersama-

sama, memiliki hasil yang sama dengan transaksi yang dijalankan

secara serial.

d. Durable, merujuk pada sistem harus memastikan bahwa ketika

transaksi berhasil maka tersimpan dalam basis data baik di

komputer atau media dimana basis data disimpan.

2.6. Lembaga Keuangan Mikro (LKM)

Lembaga keuangan yang terlibat dalam penyaluran kredit mikro

umumnya disebut Lembaga Keuangan Mikro (LKM). Menurut Asian

Development Bank (ADB), lembaga keuangan mikro (microfinance)

adalah lembaga yang menyediakan jasa penyimpanan (deposits), kredit

(loans), pembayaran berbagai transaksi jasa (payment services) serta

Page 49: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

27

money transfers yang ditujukan bagi masyarakat miskin dan pengusaha

kecil (insurance to poor and low-income households and their

microenterprises) (Wijono,2005).

LKM di Indonesia menurut Bank Indonesia dibagi menjadi dua

kategori yaitu LKM yang berwujud bank serta non bank. LKM yang

berwujud bank adalah BRI Unit Desa, BPR dan BKD (Badan Kredit

Desa). Sedangkan yang bersifat non bank adalah koperasi simpan pinjam

(KSP), unit simpan pinjam (USP), lembaga dana kredit pedesaan (LDKP),

baitul mal wattanwil (BMT), lembaga swadaya masyarakat (LSM), arisan,

pola pembiayaan Grameen, pola pembiayaan ASA, kelompok swadaya

masyarakat (KSM), dan credit union (Wijono, 2005).

2.7. Bank Perkreditan Rakyat

Bank Perkreditan Rakyat atau BPR adalah salah satu jenis bank

resmi yang melayani golongan pengusaha mikro, kecil dan menengah

dengan lokasi yang pada umumnya dekat dengan tempat masyarakat yang

membutuhkan. BPR sudah ada sejak jaman sebelum kemerdekaan yang

dikenal dengan sebutan Lumbung Desa, Bank Desa, Bank Tani dan Bank

Dagang Desa atau Bank Pasar (Undang-Undang No. 7 tahun 1992 tentang

Perbankan dan sebagaimana telah diubah dengan Undang-Undang No. 10

tahun 1998).

Page 50: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

28

Fungsi BPR tidak hanya sekedar menyalurkan kredit kepada para

pengusaha mikro, kecil dan menengah, tetapi juga menerima simpanan dari

masyarakat. Dalam penyaluran kredit kepada masyarakat menggunakan

prinsip 3T, yaitu Tepat Waktu, Tepat, Jumlah, Tepat Sasaran, karena

proses kreditnya yang relatif cepat, persyaratan lebih sederhana, dan sangat

mengerti akan kebutuhan Nasabah.

Jenis layanan yang diberikan BPR adalah :

Menghimpun dana masyarakat dalam bentuk deposito berjangka,

tabungan dan atau bentuk lain yang dipersamakan dengan itu.

Memberikan kredit dalam bentuk Kredit Modal Kerja, Kredit

Investasi, maupun Kredit Konsumsi.

2.8. Metode Perhitungan Bunga Tabungan Berdasarkan Saldo

Transaksi Terkecil

Metode saldo transaksi terkecil bunga dalam satu bulan dihitung

berdasarkan saldo terkecil dalam bulan tersebut. Bunga dihitung dengan

rumus sebagai berikut (DPNP dan Biro Hubungan Masyarakat Bank

Indonesia, 2008):

...................................................(2.1)

Page 51: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

29

Keterangan:

ST = saldo terkecil

i= suku bunga tabungan pertahun,

t = jumlah hari dalam 1 bulan,

365 = jumlah hari dalam 1 tahun.

2.9. Java

Java merupakan pemrograman yang dikembangkan oleh Sun

Microsystem dan dirancang sedemikian rupa agar program yang dibuat

menggunakan Java dapat berjalan pada semua platform. Java merupakan

pemrograman berorientasi objek (OOP), dengan kata lain rancangan

Java merupakan suatu teknik yang memusatkan rancangan pada data

(objek) dan antarmuka(Didik D.P, 2004).

Dibandingkan dengan bahasa pemrograman yang lain,

pemrograman Java memiliki banyak keunggulan, diantaranya

(http://scqolbu.com/pemrograman/94.html):

a. Sederhana

Bahasa pemrograman Java menggunakan sintaks mirip dengan

C++ namun sintaks pada Java telah banyak diperbaiki terutama

menghilangkan penggunaan pointer yang rumit dan multiple

inheritance. Java juga menggunakan automatic memory allocation

Page 52: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

30

dan memory garbage collection.

b. Berorientasi objek (Object Oriented)

Java menggunakan pemrograman berorientasi objek yang membuat

program dapat dibuat secara modular dan dapat dipergunakan

kembali. Pemrograman berorientasi objek memodelkan dunia

nyata kedalam objek dan melakukan interaksi anatara objek-objek

tersebut.

c. Dapat didistribusikan dengan mudah

Java dibuat untuk membuat aplikasi terdistribusi secara mudah

dengan adanya libraries networking yang terintegrasi pada java.

d. Interpreter

Program Java dijalankan menggunakan interpreter yaitu Java

Virtual Machine (JVM). Hal ini menyebabkan kode java yang telah

dikompilasi menjadi java bytecodes dapat dijalankan pada platform

yang berbeda-beda.

e. Tangguh

Java mempunyai reliabilitas yang tinggi. Compiler pada java

mempunyai kemampuan mendeteksi kesalahan secara lebih teliti

dibandingkan bahasa pemrograman lain. Java mempunyai runtime

Page 53: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

31

exception handling untuk membantu mengatasi kesalahan pada

pemrograman.

f. Aman

Sebagai bahasa pemrograman untuk aplikasi internet dan

terdistribusi, java memiliki beberapa mekanisme keamanan untuk

menjaga aplikasi tidak digunakan untuk merusak sistem komputer

yang menjalankan aplikasi tersebut.

g. Architecture Neutral

Program java merupakan platform independen . Program cukup

mempunyai satu buah versi yang dapat dijalankan pada platform

yang berbeda dengan Java Virtual Machine.

h. Portabel

Kode maupun program java dapat dengan mudah dibawa ke

platform yang berbeda-beda tanpa harus dikompilasi ulang.

i. Multithreading

Java mempunyai kemampuan untuk membuat suatu program yang

dapat melakukan beberapa pekerjaan secara sekaligus dan

simultan.

Page 54: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

32

j. Dinamis

Java didesain untuk dapat dijalankan pada lingkungan yang

dinamis. Perubahan pada suatu kelas dengan menambahkan

properti ataupun metode dapat dilakukan tanpa mengganggu

program yang menggunakan kelas tersebut.

2.10. JDBC

JDBC merupakan API Java Database Connectivity dan merupakan

bagian dari Java Enterprise APIs dari JavaSoft. Class JDBC terdapat di

dalam paket java.sql, dan semua program Java menggunakan method serta

objek dari paket tersebut untuk membaca serta menulis data source (Didik

D.P., 2004).

Pada prinsipnya JDBC memiliki Driver Manager yang berfungsi

untuk mengatur driver serta menampilkan daftar driver aktif pada program

aplikasi. JDBC memungkinkan kita untuk membuat aplikasi dengan Java

dalam mengakses database server, baik itu secara lokal (stand-alone)

maupun secara remote. JDBC API memudahkan untuk mengirimkan

perintah SQL ke sistem basis data relasional dan mendukung beragam

perintah SQL.

Dengan JDBC dapat dibuat program dengan portabilitas tinggi dan

cukup mudah karena secara umum pemrograman JDBC tidak memiliki

perbedaan kode yang berarti untuk pemrograman pada basis data tertentu

Page 55: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

33

dengan basis data lain. Perbedaan utama pada kode hanyalah kode yang

mendefinisikan driver dari server basis data serta perintah SQL tertentu

yang mungkin memiliki perbedaan sintak atau perintah SQL khusus yang

hanya terdapat pada database tertentu. Pemrograman JDBC memiliki

struktur seperti melakukan koneksi, membuat object statement,

mengeksekusi perintah SQL, mendapatkan hasil query, serta menangani

kesalaahan.

2.11. MySQL

MySQL (My Structure Query Language) merupakan sebuah aplikasi

database open source. MySQL dikembangkan dengan tujuan untuk

menyediakan basis data dengan koneksi yang aman dan cepat, memiliki

keamanan yang tinggi, mudah digunakan dan dapat dipakai oleh semua

orang. MySQL sendiri sebenarnya merupakan pengembangan dari mSQL

dengan optimasi konektifitas, peningkatan unjuk kerja dan perbedaan

antarmuka SQL.

Tingkat kecepatan dan keamanan yang tinggi membuat MySQL

sangat cocok digunakan dan sangat populer sebagai aplikasi untuk

mengakses basis data di internet.

Beberapa kemampuan MySQL antara lain :

1. MySQL bisa diakses dan dimanipulasi dari beberapa bahasa

pemrograman, diantaranya adalah C, C++, Java, Perl, Python, Java

dan lain-lain.

Page 56: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

34

2. MySQL mendukung tipe data yang umum digunakan, seperti float,

double, char, varchar, text, blob, date, integer dan lain-lain.

3. MySQL mendukung subset fungsi query dan pengelompokkan lanjut,

termasuk diantaranya group by dan order by.

4. MySQL memungkinkan alokasi password tiap server. Password yang

melalui MySQL telah terenkripsi.

5. MySQL bisa diperoleh secara gratis untuk penggunaan pribadi,

termasuk aplikasi-aplikasi lain yang diperlukan dalam memakai

MySQL.

2.11.1. Structure Query Languange SQL merupakan bahasa standar yang digunakan untuk mengakses

dan memanipulasi basis data. Perintah-perintah dasar SQL antara lain :

1. Perintah untuk membuat basis data.

CREATE DATABASE nama_basis data;

2. Perintah untuk membuat tabel.

CREATE TABLE nama_tabel (nama_field1 tipe_data1, nama_field2 tipe_data2, …)

3. Perintah untuk membaca data yang tersimpan di dalam tabel.

SELECT * FROM nama_tabel;

SELECT nama_field1, nama_field2, … FROM nama_tabel;

4. Perintah untuk menambahkan data ke dalam tabel.

Page 57: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

35

INSERT INTO nama_tabel (nama_field1, nama_field2, …) values (data_field1, data_field2, …);

5. Perintah untuk mengubah data yang tersimpan di dalam tabel.

UPDATE nama_tabel SET nama_field1 = nilai_baru1, nama_field2 = nilai_baru2, … WHERE kriteria;

6. Perintah untuk menghapus data yang tersimpan di dalam tabel.

DELETE FROM nama_tabel WHERE kriteria;

7. Perintah untuk mengurutkan data.

SELECT nama_field1, nama_field2, … FROM nama_tabel ORDER BY nama_field ASC || DESC;

2.11.2. Stored Procedure

Di dalam MySQL seri 5, memiliki kemampuan tambahan yang

dinamakan stored procedure. Stored procedure adalah prosedur-prosedur

operasi yang ditempatkan di dalam server basis data. Umumnya, stored

procedure ditulis dalam SQL. Stored procedure ini sangat penting dalam

sistem basis data client-server karena menempatkan prosedur di dalam

server berarti prosedur itu dapat tersedia untuk semua client. Ketika

prosedur tersebut diubah, semua client akan mendapatkan versi terbarunya

secara otomatis (tanpa perlu diadakan update aplikasi client). Stored

procedure selain bersifat terintegrasi dengan server juga sudah

terkompilasi, sehingga pemrosesan kode yang terjadi di dalam stored

Page 58: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

36

procedure akan berlangsung lebih cepat dibandingkan dengan

mengeksekusi beberapa statement SQL secara sekuensial.

Pendefinisian stored procedure pada DBMS Engine masih termasuk

tahap pendefinisian DDL (Data Definition Language). Ciri utama query

SQL termasuk ke dalam DDL adalah dengan penggunaan keyword

CREATE, ALTER atau DROP. Kedudukan CREATE PROCEDURE,

CREATE FUNCTION, maupun CREATE TRIGGER setara dengan proses

pendefinisian DDL yang paling umum dipergunakan, CREATE TABLE,

yang mana dalam konteks pembahasan pengembangan sistem pada

umumnya, fase pendefinisian DDL ini termasuk dalam siklus desain

sistem dalam System Development Lifecycle (SDLC).

Gambar di bawah ini adalah ilustrasi sederhana dari lalu-lintas

transaksi query yang berada pada sisi server dengan transaksi query pada

sisi client melalui antarmuka pemrograman.

Page 59: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

37

Gambar 2.8. Transaksi lalu lintas query

Seperti terlihat pada gambar di atas, pemrosesan query pada sistem

yang menerapkan stored procedure sangat menghemat lalu-lintas

pengiriman query dari program aplikasi di sisi client kepada DBMS

Engine. Jumlah query yang dikirimkan hanya satu, yaitu pengeksekusian

procedure. Berbeda jauh dengan pemrosesan query yang dilakukan tanpa

stored procedure, melainkan mengandalkan programming pada sisi client,

dimana jumlah query yang dikirimkan sangatlah banyak bergantung pada

kontrol perulangan (loop) yang dijalankan.

Selain stored procedure masih terdapat stored function dan trigger

dalam MySQL seri 5. Stored function adalah sebuah blok PL/SQL yang

memiliki nama yang mengembailkan nilai balik. Trigger adalah sebuah

Page 60: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

38

blok PL/SQL atau procedur PL/SQL yang berhubungan dengan table,

view, schema atau basis data yang akan dieksekusi secara implicit pada

saat kejadian tertentu terjadi.

Berikut perintah untuk membuat stored procedure :

1. Membuat procedure. Perintah :

CREATE PROCEDURE nama_procedure ([parameter_proc[,…]])

[characteristic ..] routine_body

2. Membuat function. Perintah :

CREATE FUNCTION nama_function ([parameter_proc[,…]])

RETURN type [characteristic ..] routine_body

3. Membuat trigger. Perintah :

CREATE [DEFINER = { user | current_user } ] TRIGGER

trigger_name trigger_time trigger_event ON table_name

FOR EACH ROW trigger_statement

4. Pemanggilan procedure. Perintah :

CALL nama_proc(parameter_proc);

5. Pemanggilan function. Perintah :

SELECT nama_function(parameter_function);

6. Melihat procedure dan function yang ada. Perintah :

SHOW PROCEDURE STATUS;

SHOW FUNCTION STATUS;

7. Melihat isi procedure dan function. Perintah :

SHOW CREATE PROCEDURE nama_procedure;

SHOW CREATE FUNCTION nama_function;

8. Menghapus procedure dan function. Perintah :

Page 61: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

39

DROP PROCEDURE nama_procedure;

DROP FUNCTION nama_function;

Page 62: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

40

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1. Analisis Sistem

3.1.1. Deskripsi Sistem Saat Ini

Gambar dibawah menunjukan secara kontekstual proses dari sistem lama

yang ada di Bank Perkreditan Rakyat Wilayah Daerah Istimewa Yogyakarta.

Gambar 3.1. Diagram Konteks Sistem yang Lama

Proses transaksi perbankan di Bank Perkreditan Rakyat dimulai dari

penerimaan nasabah baru yang dilakukan di subsistem customer service. Dalam

Page 63: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

41

subsistem ini informasi pribadi dari seorang nasabah dapat diperoleh.

Setelah pencatatan di subsistem customer service selesai, maka proses

pencatatan transaksi dilanjutkan di subsistem teller. Subsistem ini menangani

pencatatan transaksi tabungan, deposito, dan kredit. Hasil dari subsistem teller

akan digunakan oleh berbagai subsistem seperti customer service, tabungan,

kredit, deposito dan akuntansi.

Subsistem tabungan merupakan sistem yang menggunakan data-data dari

subsistem teller dan customer service dan kemudian mengolahnya terutama yang

memiliki hubungan dengan produk tabungan, transaksi dan perhitungan bunga

tabungan. Pengguna dari sistem ini terdiri dari beberapa kelompok yaitu manajer

dan direksi. Untuk dapat menjalankan sistem ini, setiap pengguna harus login

terlebih dahulu. Dalam proses login ini, penentuan tingkat akses dari sistem

ditentukan, apakah pengguna merupakan seorang direksi atau manajer tabungan.

Manajer tabungan dapat melakukan aksi-aksi tertentu dalam subsistem

tabungan seperti pengolahan data rekening, perhitungan bunga, pajak dan

administrasinya, pemindahbukuan tabungan, pengelolan blokir tabungan, validasi

dan penghapusan transaksi tabungan, dan mencetak berbagai laporan. Pada

waktu-waktu tertentu, laporan transaksi tabungan nantinya diserahkan kepada

pihak direksi Bank Perkreditan Rakyat oleh Manajer tabungan yang dilakukan

secara berkala.

Direksi tabungan adalah pihak yang dapat membuat dan memasukkan

data-data sebuah produk tabungan beserta kebijakan-kebijakan yang digunakan

dari setiap produk tabungan.

Page 64: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

42

3.1.2. Fase Definisi Ruang Lingkup (Scope Definition Phase)

3.1.2.1. Perumusan Masalah

Subsistem tabungan yang ada saat ini masih memiliki kendala-kendala

sehingga menyebabkan kesulitan pegawai Bank Perkreditan Rakyat dalam

menangani transaksi tabungan dilihat dari:

Performance : Kemampuan server basis data yang belum mendukung konsep

stored procedure, trigger, cursor,transaction, dan memiliki integritas data yang

rendah membuat proses transaksi dalam subsistem tabungan sering mengalami

kegagalan.

Tampilan antarmuka dari sistem sering membuat pengguna kebingungan.

Penggunaan komponen tree dalam menu utama sistem sering membuat pengguna

frustasi ketika mencari sebuah menu.

Information : Informasi transaksi tabungan yang dihasilkan belum bisa diyakini

sepenuhnya. Ini disebabkan karena belum digunakannya konsep transaksi dalam

server basis data untuk menanggulagi jika terjadi kegagalan dalam proses

transaksi tabungan.

Economics : Sistem lama juga belum mampu berjalan di berbagai platform sistem

operasi. Hanya di sistem operasi Windows saja sistem yang lama dapat berjalan.

Ini membuat pihak manajemen Bank Perkreditan Rakyat harus mengeluarkan

biaya lebih untuk membeli sistem operasi Windows yang asli.

Page 65: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

43

Control : Karena server basis data yang digunakan belum mendukung konsep

transaksi, maka proses transaksi tabungan tidak aman. Kemungkinan nilai

transaksi yang salah sangat besar. Akibatnya pada akhir bulan sering muncul

perhitungan di neraca dan buku besar yang tidak seimbang.

Eficiency : Ketidakefisienan dalam sistem yang ada timbul karena seringnya

terjadi kegagalan sistem ketika mencatat proses transaksi tabungan. Kegagalan ini

membuat proses transaksi harus diulang.

Services : -

3.1.2.2. Pernyataan Masalah Tabel 3.1. Pernyataan Masalah

Pernyataan masalah dan kesempatan Solusi

1. Kemampuan dari basis data yang lama masih belum mampu mendukung konsep transaksi.

Membuat sistem baru menggunakan server basis data yang mendukung konsep transaksi dan memiliki integritas data yang tinggi.

2. Sistem yang lama tidak mampu berjalan di berbagai platform sistem operasi.

Membuat sistem baru yang yang dapat berjalan di berbagai platform sistem operasi menggunakan bahasa pemrograman yang mendukung berbagai platform sistem operasi.

3. Tampilan antarmuka yang tidak baik. Ini membuat pengguna sistem sering kebingungan.

Membuat sistem baru yang memiliki tampilan antarmuka yang lebih baik sehingga mudah dipelajari dan digunakan.

Page 66: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

44

3.1.3. Fase Analisis Masalah (Problem Analysis Phase)

3.1.3.1. Analisis Sebab-Akibat (Cause-Effect Analysis)

Tabel 3.2. Analisis Sebab Akibat

ANALISIS PENYEBAB DAN AKIBAT TUJUAN MEMPERBAIKI SISTEM

MASALAH PENYEBAB DAN

AKIBAT TUJUAN SISTEM BATASAN SISTEM

Basis data pada

sistem saat ini tidak

mendukung konsep

transaksi

Penggunaan

server basis data

MySQL 3 yang

belum

mendukung

konsep transaksi.

Akibatnya, unjuk

kerja dari sistem

menurun dan

konsistensi data

tidak terjamin.

Mengurangi

tingkat kesalahan

sistem yang

sering terjadi

ketika

menjalankan

transaksi

tabungan.

Penggunaan server

basis data yang

mendukung konsep

transaksi dalam

basis data.

Ketidakmampuan

sistem berjalan

pada berbagai

platform sistem

operasi. Sistem

hanya berjalan

pada sistem

operasi Windows

saja

Perlunya biaya

tambahan untuk

pembelian sistem

operasi Windows

yang asli.

Akibatnya Bank

Perkreditan

Rakyat harus

mengeluarkan

biaya lebih untuk

pembelian sistem

operasi Windows

Mengurangi

pengeluaran biaya

lebih untuk

pembelian sistem

operasi Windows

yang asli.

Sistem dapat

berjalan pada

sistem operasi yang

bersifat cuma-

cuma.

Page 67: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

45

pada setiap unit

komputer.

3.1.4. Fase Analisis Kebutuhan (Requirement Analysis Phase)

3.1.4.1. Gambaran Sistem yang Baru

Secara kontekstual tidak ada perbedaan antara sistem yang lama dengan

sistem yang baru.

Untuk menjalankan sistem, semua pengguna harus login terlebih dahulu

yang akan menentukan tingkat akses dari sistem informasi perbankan mikro Bank

Perkreditan Rakyat. Setelah proses login selesai maka pengguna dapat

menggunakan sistem untuk mencatat dan mengolah data tabungan.

Pengguna sistem memasukkan data-data tabungan di dalam forms yang

kemudian data ini diolah dan disimpan ke dalam basis data dari sistem. Dari data

ini seorang manajer tabungan dapat melakukan aksi-aksi tertentu terhadap

transaksi tabungan seperti pengolahan data rekening, perhitungan bunga, pajak

dan administrasinya, pemindahbukuan tabungan, pengelolan blokir tabungan,

validasi dan penghapusan transaksi.

Setelah semua proses pengolahan data selesai dan disimpan dalam basis

data, manajer juga dapat mencetak berbagai laporan dari subsistem tabungan yang

kemudian dilaporkan kepada pihak direksi Bank Perkreditan Rakyat.

Page 68: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

46

Pembuatan produk tabungan dan kebijakannya masih menjadi hak dari

Direksi tabungan yang harus disetujui oleh pihak direksi Bank Perkreditan

Rakyat.

3.1.4.2. Pihak-Pihak yang Terlibat dalam Sistem

a. Direksi

Pihak yang menggunakan menu direksi yang fungsi utamanya adalah

membuat dan mengatur kebijakan dari sebuah produk tabungan dan

pengelolaan berbagai kode-kode dalam transaksi tabungan.

b. Manajer

Pihak yang menggunakan menu kantor pendukung (back office)

yang fungsinya melakukan pengelolaan data terhadap rekening

tabungan nasabah.

c. Subsistem teller

Subsistem yang menerima dan memasukan data rekening tabungan

ke dalam Sistem Informasi Lembaga Keuangan Mikro Bank

Perkreditan Rakyat

d. Subsistem customer service

Subsistem yang menerima dan memasukan data pribadi nasabah ke

dalam Sistem Informasi Lembaga Keuangan Mikro Bank

Perkreditan Rakyat.

Page 69: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

47

3.1.4.3. Diagram Use Case

3.1.4.3.1. Tabel Aktor Use Case Aktor use case merupakan aktor yang terlibat dan memiliki kepentingan

utama di subsistem tabungan. Setiap aktor memiliki hak tertentu untuk

menjalankan subsistem tabungan yang ditentukan oleh proses login.

Terdapat beberapa aktor dalam subsistem tabungan yaitu Direksi dan

Manajer.

Tabel 3.3. Aktor Use Case

Aktor Keterangan

Orang / kelompok yang mempunyai hak akses /

kewenangan khusus untuk melakukan penambahan,

perubahan, penghapusan data tabungan dan membuat

produk-produk tabungan beserta kebijakannya serta

mengelola berbagai kode-kode yang dibutuhkan dalam

transaksi tabungan.

Orang / kelompok yang mempunyai hak akses /

kewenangan khusus untuk melakukan penambahan,

koreksi, penghapusan data transaksi tabungan, dan

mencetak laporan.

Page 70: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

48

3.1.4.3.2. Diagram Use Case Direksi

Gambar 3.2. Diagram Use case direksi

Page 71: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

49

A. Diagram Use Case Paket Produk Tabungan

Gambar 3.3. Use case Paket Pengelolaan Produk Tabungan

B. Diagram Use Case Paket Tabel Pendukung

Gambar 3.4. Use case Paket Tabel Pendukung

Page 72: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

50

B.1. Diagram Use Case Paket Pengelolaan Grup Tabungan

Gambar 3.5. Use case Paket Pengelolaan Kode Grup Tabungan

Page 73: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

51

B.2. Diagram Use Case Paket Pengelolaan Kode Referensi Transaksi

Tabungan

Gambar 3.6. Use case Paket Pengelolaan Konfigurasi Tabel Pendukung

Page 74: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

52

3.1.4.3.3. Ringkasan Use Case Direksi

Tabel 3.4. Ringkasan Use Case Direksi

Nama Use-Case Deskripsi Use-Case Pelaku yang

berpartisipasi

Login Use case ini menggambarkan proses

masuk ke sistem.

Direksi

Pembuatan Produk

Tabungan

Use case ini menggambarkan proses

pembuatan produk tabungan

Direksi

Pengubahan

Produk Tabungan

Use case ini menggambarkan proses

pengubahan produk tabungan

Direksi

Penghapusan

Produk Tabungan

Use case ini menggambarkan proses

menghapus produk tabungan

Direksi

Pencarian Produk

Tabungan

Use case ini menggambarkan proses

mencari produk tabungan

Direksi

Penambahan Grup

Tabungan

Use case ini menggambarkan proses

penambahan grup petugas

administratif (Administrative

Officer) baru.

Direksi

Pengubahan Grup

Tabungan

Use case ini menggambarkan proses

pengubahan grup petugas

administratif (Administrative

Officer) baru.

Direksi

Penghapusan Grup

Tabungan

Use case ini menggambarkan proses

penghapusan grup petugas

administratif (Administrative

Officer) baru.

Direksi

Pencarian Grup Use case ini menggambarkan proses Direksi

Page 75: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

53

Tabungan pencarian grup petugas administratif

(Administrative Officer).

Penambahan Kode

Referensi

Use case ini menggambarkan proses

menambah kode-kode yang

digunakan dalam transaksi tabungan

Direksi

Pengubahan Kode

Referensi

Use case ini menggambarkan proses

pengubahan kode-kode yang

digunakan dalam transaksi tabungan

Direksi

Penghapusan Kode

Referensi

Use case ini menggambarkan proses

menghapus kode-kode yang

digunakan dalam transaksi tabungan

Direksi

Pencarian Kode

Referensi

Use case ini menggambarkan proses

pencarian kode-kode yang

digunakan dalam transaksi tabungan

Direksi

Logout Use case ini menggambarkan proses

keluar dari sistem

Direksi

Page 76: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

54

3.1.4.3.4. Diagram Use Case Manajer

Gambar 3.7. Diagram Use case Manajer

Page 77: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

55

A. Diagram Use Case Paket Data Rekening

Gambar 3.8. Use case Paket Pengelolaan Data Rekening

Page 78: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

56

B. Diagram Use Case Paket Bunga dan Pajak Tabungan

Pengelolaan Bunga dan Pajak Tabungan

Manajer

<<depends on>>

Perhitungan Bunga,Pajak,Administrasi Tabungan

Pemindahbukuan PerhitunganBunga,Pajak, Administrasi

Tabungan

PengubahanBunga,Pajak, Administrasi Tabungan

Pencarian Bunga,Pajak, Administrasi Tabungan

<<depends on>>

Gambar 3.9. Use case Paket Pengelolaan Bunga dan Pajak Tabungan

C. Diagram Use Case Paket Transaksi Tabungan

Gambar 3.10. Use Case Paket Pengelolaan Transaksi Tabungan

Page 79: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

57

D. Diagram Use Case Paket Pencetakan Laporan

Gambar 3.11. Use case Paket Pencetakan Laporan

3.1.4.3.5. Ringkasan Use Case Manajer

Tabel 3.5. Ringkasan Use Case Manajer

Nama Use-Case Deskripsi Use-Case Pelaku yang

berpartisipasi

Login Use case ini menggambarkan proses

masuk ke sistem.

Manajer

Penambahan Data

Rekening

Use case ini menggambarkan proses

penambahan data pada rekening

nasabah.

Manajer

Pengubahan Data

Rekening

Use case ini menggambarkan proses

Pengubahan data rekening nasabah.

Manajer

Page 80: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

58

Penghapusan Data

Rekening

Use Case ini menggambarkan proses

penghapusan data dari rekening

Manajer

Pencarian Data

Rekening

Use Case ini menggambarkan proses

pencarian data rekening nasabah

Manajer

Penghitungan Bunga,

Pajak, Administrasi

Tabungan

Use case ini menggambarkan proses

menghitung bunga dan pajak tabungan

untuk setiap rekening.

Manajer

Pemindahbukuan Use case ini menggambarkan proses

pemindahbukuan dari hasil perhitungan

bunga dan pajak tabungan ke dalam

rekening tabungan.

Manajer

Pencarian Bunga dan

Pajak Tabungan

Use case ini menggambarkan proses

pencarian bunga dan pajak tabungan

suatu rekening

Manajer

Pengubahan Bunga

dan Pajak Tabungan

Use case ini menggambarkan proses

pengubahan nilai bunga dan pajak

tabungan pada rekening tabungan.

Manajer

Penghapusan

Transaksi

Use case ini menggambarkan proses

penghapusan transaksi yang sudah

tercatat. Penghapusan dapat dilakukan

apabila ada transaksi yang belum

mengalami proses kesalahan dalam

memasukkan data transaksi tabungan.

Manajer

Pencetakan Laporan

Nominatif Tabungan

Use case ini menggambarkan proses

pencetakan laporan yang menampilkan

Manajer

Page 81: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

59

saldo akhir nasabah, saldo rata-rata

nasabah, saldo bagi hasil/bagi hasil dan

pajak masing-masing nasabah.

Pencetakan Laporan

Transaksi Tabungan

Use case ini menggambarkan proses

pencetakan laporan yang menampilkan

transaksi setoran dan penarikan dalam

selang waktu tertentu

Manajer

Pencetakan Laporan

Daftar Mutasi

Tabungan

Use case ini menggambarkan proses

pencetakan laporan yang menampilkan

jumlah mutasi saldo simpanan dalam

selang waktu tertentu.

Manajer

Pencetakan Laporan

Bunga, Pajak dan

Administrasi

Use case ini menggambarkan proses

pencetakan laporan yang menampilkan

jumlah bunga, pajak dan administrasi

untuk setiap rekening dalam selang

waktu tertentu

Manajer

Logout Use case ini menggambarkan proses

keluar dari sistem.

Manajer

Page 82: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

60

3.1.4.4. Narasi Use Case 1. Narasi Login

Penulis : Fransiskus Paranso Tanggal: 19 November 2008 Versi : 1.0

Nama Use-case: Login Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-001 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi, Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses untuk masuk ke sistem. Use case ini berguna untuk menjaga hak khusus yang juga menentukan level akses penggunaan sistem.

Kondisi Awal: Direksi dan Manajer telah memiliki username dan password Pemicu: Use case ini digunakan apabila Direksi atau Manajer ingin

masuk ke dalam sistem. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Direksi atau Manajer menjalankan Sistem Informasi Lembaga Keuangan Mikro Subsistem Tabungan Langkah 3: Direksi atau Manajer memasukkan username dan password, tanggal aplikasi serta konfirmasi tanggal aplikasi. Langkah 4: Direksi atau Manajer menekan tombol ”MASUK”

Langkah 2: Sistem meminta memasukkan username dan password Langkah 5: Sistem memeriksa validitas dari username dan password di basis data serta kesesuaian dari tanggal aplikasi dan konfirmasinya.

Page 83: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

61

Langkah 6: Sistem masuk ke menu utama

Aktifitas Alternatif:

Langkah Alternatif 4: Direksi atau Manajer menekan tombol “BATAL” sehingga sistem tidak jadi masuk ke menu utama dan kembali ke menu utama. Langkah Alternatif 5: Jika username dan password yang dimasukkan tidak sesuai atau tanggal aplikasi dengan konfirmasi tanggal aplikasi tidak sama, maka sistem akan memberikan peringatan.

Kesimpulan: Pengguna dapat masuk ke dalam sistem dengan level akses tertentu.

Kondisi Akhir: Direksi atau Manajer berhasil login dan masuk ke menu utama

Direksi atau Manajer tidak jadi masuk ke sistem Prosedur Bisnis: Direksi atau Manajer harus memasukan username dan

password dengan benar Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password.

2. Narasi Logout

Penulis : Fransiskus Paranso Tanggal: 19 November 2008 Versi : 1.0

Nama Use-case: Logout Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-002 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi, Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses untuk keluar dari sistem.

Kondisi Awal: Direksi dan Manajer telah berhasil masuk ke dalam sistem Pemicu: Use case ini digunakan apabila Direksi atau Manajer ingin

keluar dari sistem. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Direksi atau Manajer memilih menu

Page 84: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

62

keluar Langkah 3: Direksi atau Manajer memilih tombol “YA”

Langkah 2: Sistem melakukan konfirmasi apakah pengguna ingin keluar dari sistem. Langkah 4: Pengguna keluar dari sistem dan sistem berhenti.

Aktifitas Alternatif:

Langkah Alternatif 3: Direksi atau Manajer tidak menekan tombol “KELUAR” sehingga pengguna tidak jadi keluar dari sistem. Langkah Alternatif 4 : Kembali ke tampilan utama sistem

Kesimpulan: Pengguna dapat keluar dari sistem. Kondisi Akhir: Direksi atau Manajer berhasil keluar sistem

Direksi atau Manajer tidak berhasil keluar dari sistem Prosedur Bisnis: Direksi atau Manajer harus berhasil login kedalam sistem

utama. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password.

3. Narasi Penambahan Produk Tabungan

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Menambah Produk Tabungan Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-003 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses penambahan produk tabungan

Kondisi Awal: Direksi telah login Pemicu: Use case ini digunakan apabila Direksi ingin menambah

produk tabungan baru. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Page 85: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

63

Langkah 1: Direksi memilih menu produk tabungan Langkah 3: Direksi memasukkan data baru untuk membuat produk tabungan pada form produk tabungan. Langkah 4 : Direksi menekan tombol “SIMPAN”.

Langkah 2: Sistem menampilkan antarmuka produk tabungan. Langkah 5: Sistem menyimpan data-data produk tabungan ke dalam basis data. Langkah 6: Sistem menampilkan pesan bahwa data produk tabungan yang baru berhasil disimpan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi memilih menu yang lain . Langkah Alternatif 2: Sistem menampilkan antarmuka sesuai dengan masukan dari Direksi. Langkah Alternatif 4: Direksi menekan tombol “KELUAR”. Langkah Alternatif 4 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 4 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 5 : Sistem menampilkan antarmuka menu utama Direksi. Langkah Alternatif 5 : Sistem akan menanyakan untuk membersihkan antarmuka Produk Tabungan atau tidak. Langkah Alternatif 5 : Sistem akan memunculkan pesan kesalahan karena tidak ada data yang dapat dihapus. Langkah Alternatif 6: Jika penyimpanan data gagal maka sistem memunculkan pesan kegagalan.

Kesimpulan: Sistem dapat menyimpan produk tabungan yang baru sesuai dengan masukan dari aktor.

Kondisi Akhir: Data produk tabungan tersimpan dalam basis data. Data produk tabungan tidak tersimpan dalam basis

data. Prosedur Bisnis: Direksi harus memasukkan data yang sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi

4. Narasi Pengubahan Produk Tabungan

Penulis : Fransiskus Paranso Tanggal: 21 November 2008

Page 86: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

64

Versi : 1.0 Nama Use-case: Pengubahan Produk

Tabungan Jenis Use-Case

Kebutuhan Bisnis: ID Use-case: SILKMST-004 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pengubahan produk tabungan

Kondisi Awal: Direksi telah login Direksi sudah memilih menu produk tabungan Direksi sudah melakukan proses pencarian terhadap

produk tabungan yang ingin diubah. Pemicu: Use case ini digunakan apabila Direksi ingin mengubah

produk tabungan yang sudah ada. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Direksi memasukkan data perubahan untuk produk tabungan dari hasil pencarian. Langkah 2: Direksi menekan tombol “SIMPAN”.

Langkah 3: Sistem menyimpan data pengubahan produk tabungan. Langkah 4: Sistem menampilkan pesan pengubahan produk tabungan berhasil.

Aktifitas Alternatif:

Langkah Alternatif 2 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 2 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 2 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 3 : Sistem menampilkan antarmuka menu utama Direksi. Langkah Alternatif 3 : Sistem akan menanyakan untuk membersihkan antarmuka Produk Tabungan atau tidak. Langkah Alternatif 3 : Sistem akan memunculkan pesan kesalahan karena tidak ada data yang dapat dihapus.

Page 87: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

65

Langkah Alternatif 4 : Jika pengubahan data gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat mengubah produk tabungan sesuai dengan masukan dari aktor.

Kondisi Akhir: Data perubahan produk tabungan tersimpan dalam basis data.

Data perubahan produk tabungan tidak tersimpan dalam basis data.

Prosedur Bisnis: Direksi harus memasukkan data yang sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi

5. Narasi Penghapusan Produk Tabungan

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Penghapusan Produk Tabungan

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-005 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses penghapusan produk tabungan yang sudah dibuat.

Kondisi Awal: Direksi telah login Direksi sudah memilih menu produk tabungan Direksi sudah melakukan proses pencarian terhadap

produk tabungan yang ingin dihapus. Pemicu: Use case ini digunakan apabila Direksi ingin menghapus

produk tabungan yang sudah ada. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Direksi menekan tombol “HAPUS” untuk menghapus produk tabungan.

Langkah 2: Sistem memunculkan antarmuka konfirmasi untuk menanyakan penghapusan data.

Page 88: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

66

Langkah 3 : Direksi menekan tombol “YES”.

Langkah 4 : Sistem menghapus produk tabungan berdasarkan masukan Direksi dari dalam basis data. Langkah 5: Sistem menampilkan pesan proses penghapusan berhasil.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 1 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 1 : Direksi menekan tombol “SIMPAN”. Langkah Alternatif 2 : Sistem menampilkan antarmuka menu utama Direksi. Langkah Alternatif 2 : Sistem akan menanyakan untuk membersihkan antarmuka Produk Tabungan atau tidak. Langkah Alternatif 2 : Sistem akan mengubah data produk tabungan sesuai dengan data-data yang ada di antarmuka Produk Tabungan. Langkah Alternatif 3 : Direksi menekan tombol “NO”. Langkah Alternatif 4 : Sistem kembali ke antarmuka Produk Tabungan. Langkah Alternatif 5: Jika penghapusan data gagal maka sistem memunculkan pesan kesalahan

Kesimpulan: Sistem dapat menghapus produk tabungan sesuai dengan masukan dari aktor.

Kondisi Akhir: Data produk tabungan terhapus dari basis data. Data produk tabungan tidak terhapus dari basis

data. Prosedur Bisnis: Direksi harus memasukkan data yang sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi

6. Narasi Pencarian Produk Tabungan

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Pencarian Produk Tabungan Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-006 Prioritas: Tinggi Sumber: -

Page 89: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

67

Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pencarian produk tabungan yang sudah dibuat.

Kondisi Awal: Direksi telah login. Direksi sudah memilih menu produk tabungan.

Pemicu: Use case ini digunakan apabila Direksi ingin mencari produk tabungan.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi menekan tombol “LIHAT TABEL”. Langkah 3: Direksi memasukkan kriteria pencarian pada panel “Kriteria Filter Informasi”. Kemudian Direksi menekan tombol “PROSES”. Langkah 5 : Direksi memilih salah satu baris sebagai hasil pencarian. Kemudian Direksi menekan tombol “PILIH”.

Langkah 2 : Sistem menampilkan halaman pencarian produk tabungan. Langkah 4: Sistem melakukan pencarian di basis data sesuai dengan kriteria yang dimasukkan Direksi. Hasil pencarian dimunculkan di panel “Data Produk Tabungan Tercatat”. Langkah 6: Sistem menampilkan halaman Produk Tabungan dengan data dari hasil pilihan di halaman pencarian Produk Tabungan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 1 : Direksi menekan tombol “SIMPAN”.

Page 90: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

68

Langkah Alternatif 1 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 1 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 2 : Sistem kembali ke tampilan utama menu tabel pendukung. Langkah Alternatif 2 : Jika data pada fields di Produk Tabungan kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Produk Tabungan tidak kosong maka sistem menyimpan data dari halaman Produk Tabungan sebagai data perubahan. Langkah Alternatif 2 : Sistem akan menanyakan untuk membersihkan form. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman Produk Tabungan. Jika “NO”, maka sistem akan kembali ke halaman Produk Tabungan Langkah Alternatif 2 : Sistem menampilkan pesan kesalahan data tidak dapat dihapus. Langkah Alternatif 3 : Admistrator langsung memilih data yang sudah ada pada panel hasil pencarian Produk Tabungan, dan menekan tombol “PILIH”. Langkah Alternatif 3 : Direksi menekan tombol “REFRESH”. Langkah Alternatif 4 : Sistem menampilkan halaman Produk Tabungan dengan data dari hasil pilihan di halaman pencarian Produk Tabungan. Langkah Alternatif 4 : Sistem menampilkan kondisi awal tabel hasil pencarian kode grup tabungan . Langkah Alternatif 6 : Jika data pencarian tidak ditemukan, maka akan memunculkan pesan bahwa data tidak ditemukan.

Kesimpulan: Sistem dapat mencari produk tabungan sesuai dengan masukan dari Direksi.

Kondisi Akhir: Sistem menemukan hasil pencarian dan menampilkannya di antarmuka produk tabungan

Sistem tidak menemukan data pencarian produk tabungan.

Prosedur Bisnis: Direksi harus berhasil login kedalam sistem utama dan memilih menu produk tabungan.

Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat. Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi.

7. Narasi Penambahan Grup Tabungan

Penulis : Fransiskus Paranso Tanggal: 5 September 2009 Versi : 1.0

Page 91: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

69

Nama Use-case: Penambahan Grup Tabungan Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-07 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses penambahan Grup Tabungan.

Kondisi Awal: Direksi telah login Direksi sudah memilih sub menu Grup di menu

Tabel Pendukung. Pemicu: Use case ini digunakan apabila Direksi ingin menambahkan

Grup Tabungan yang baru. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi memasukkan data-data untuk grup tabungan yang baru Langkah 2 : Direksi menekan tombol “SIMPAN”

Langkah 3: Sistem menyimpan grup tabungan yang baru kedalam basis data. Langkah 4: Sistem menampilkan pesan penyimpanan grup tabungan yang baru berhasil.

Aktifitas Alternatif:

Langkah Alternatif 2 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 2 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 2 : Direksi menekan tombol “BERSIHKAN” Langkah Alternatif 3 : Sistem kembali ke tampilan utama menu tabel pendukung. Langkah Alternatif 3 : Sistem menampilkan pesan kesalahan data tidak dapat dihapus. Langkah Alternatif 3 : Sistem akan menanyakan untuk membersihkan form. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman grup tabungan. Jika “NO”, maka sistem akan kembali ke

Page 92: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

70

halaman grup tabungan. Langkah Alternatif 4 : Jika ada kesalahan masukan atau proses penyimpanan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menyimpan data-data grup tabungan yang baru sesuai dengan masukan aktor.

Kondisi Akhir: Sistem menyimpan grup tabungan yang baru. Sistem tidak menyimpan data-data grup tabungan

yang baru. Prosedur Bisnis: Direksi harus memasukkan data yang sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi

8. Narasi Pengubahan Grup Tabungan

Penulis : Fransiskus Paranso Tanggal: 5 September 2009 Versi : 1.0

Nama Use-case: Pengubahan Grup Tabungan Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-008 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pengubahan grup tabungan.

Kondisi Awal: Direksi telah login Direksi sudah memilih sub menu Grup di menu Tabel

Pendukung. Direksi sudah melakukan pencarian grup tabungan

yang akan diubah dari dalam basis data. Pemicu: Use case ini digunakan apabila Direksi ingin mengubah grup

tabungan. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi memasukkan data-data perubahan untuk grup tabungan sesuai dengan hasil

Page 93: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

71

pencarian. Langkah 2 : Direksi menekan tombol “SIMPAN”

Langkah 3: Sistem mengubah grup tabungan dan menyimpan data-data grup tabungan baru kedalam basis data. Langkah 4: Sistem menampilkan pesan perubahan data grup tabungan berhasil.

Aktifitas Alternatif:

Langkah Alternatif 2 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 2 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 2 : Direksi menekan tombol “BERSIHKAN” Langkah Alternatif 3 : Sistem kembali ke tampilan utama menu tabel pendukung. Langkah Alternatif 3 : Sistem menampilkan pesan kesalahan data tidak dapat dihapus. Langkah Alternatif 3 : Sistem akan menanyakan untuk membersihkan form. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman grup tabungan. Jika “NO”, maka sistem akan kembali ke halaman grup tabungan. Langkah Alternatif 4 : Jika ada kesalahan masukan atau proses penyimpanan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menyimpan data-data perubahan grup tabungan yang baru sesuai dengan masukan aktor.

Kondisi Akhir: Sistem menyimpan grup tabungan yang baru. Sistem tidak menyimpan data-data grup tabungan

yang baru. Prosedur Bisnis: Direksi harus memasukkan data yang sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi

9. Narasi Penghapusan Grup Tabungan

Penulis : Fransiskus Paranso Tanggal: 5 September 2009 Versi : 1.0

Page 94: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

72

Nama Use-case: Penghapusan Grup Tabungan

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-009 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses penghapusan grup tabungan.

Kondisi Awal: Direksi telah login Direksi sudah memilih sub menu Grup di menu Tabel

Pendukung. Direksi sudah melakukan pencarian grup tabungan

yang akan dihapus dari dalam basis data. Pemicu: Use case ini digunakan apabila Direksi menghapus grup

tabungan. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi menekan tombol “HAPUS”. Langkah 3: Direksi menekan tombol “YES”.

Langkah 2: Sistem akan menanyakan apakah akan menghapus data. Langkah 4 : Sistem menghapus data grup tabungan dari basis data. Langkah 5: Sistem menampilkan pesan penghapusan data grup tabungan berhasil.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 1 : Direksi menekan tombol “SIMPAN”. Langkah Alternatif 2 : Direksi menekan tombol “BERSIHKAN” Langkah Alternatif 3 : Sistem kembali ke tampilan utama menu tabel pendukung. Langkah Alternatif 3 : Sistem menyimpan data dari halaman grup tabungan sebagai data perubahan. Langkah Alternatif 3 : Sistem akan menanyakan untuk membersihkan form. Jika jawaban “YES” maka sistem akan

Page 95: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

73

membersihkan semua masukan yang ditulis di atas halaman grup tabungan. Jika “NO”, maka sistem akan kembali ke halaman grup tabungan. Langkah Alternatif 3 : Direksi menekan tombol “NO”. Langkah Alternatif 4 : Sistem kembali ke halaman grup tabungan. Langkah Alternatif : Jika ada kesalahan masukan atau proses penghapusan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menghapus data grup tabungan sesuai dengan masukan dari aktor

Kondisi Akhir: Sistem menghapus data grup tabungan. Sistem tidak menghapus data grup tabungan.

Prosedur Bisnis: Direksi harus memasukkan data yang sesuai dengan kebutuhan sistem

Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi.

10. Narasi Pencarian Grup Tabungan

Penulis : Fransiskus Paranso Tanggal: 5 September 2009 Versi : 1.0

Nama Use-case: Pencarian Grup Tabungan Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-010 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pencarian grup tabungan.

Kondisi Awal: Direksi telah login Direksi sudah memilih sub menu Grup Tabungan di

menu Tabel Pendukung. Pemicu: Use case ini digunakan apabila Direksi ingin mencari grup

Page 96: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

74

tabungan tertentu. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi menekan tombol “LIHAT TABEL” pada panel grup tabungan. Langkah 3: Direksi memasukkan kriteria pencarian pada panel “Kriteria Filter Informasi”. Kemudian Direksi menekan tombol “PROSES”. Langkah 5 : Direksi memilih salah satu baris sebagai hasil pencarian. Kemudian Direksi menekan tombol “PILIH”.

Langkah 2 : Sistem menampilkan halaman pencarian grup tabungan. Langkah 4: Sistem melakukan pencarian di basis data sesuai dengan kriteria yang dimasukkan Direksi. Hasil pencarian dimunculkan di panel “Data Grup Tercatat”. Langkah 6: Sistem menampilkan halaman Grup Tabungan dengan data dari hasil pilihan di halaman pencarian grup tabungan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 1 : Direksi menekan tombol “SIMPAN”. Langkah Alternatif 1 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 1 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 1 : Direksi menekan tombol “LIHAT TABEL” di panel data rekening. Langkah Alternatif 2 : Sistem kembali ke tampilan utama menu tabel pendukung. Langkah Alternatif 2 : Jika data pada fields di Grup Tabungan kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Grup Tabungan tidak kosong maka sistem menyimpan data dari halaman Referensi Transaksi Tabungan sebagai data perubahan.

Page 97: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

75

Langkah Alternatif 2 : Sistem akan menanyakan untuk membersihkan form. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman grup tabungan. Jika “NO”, maka sistem akan kembali ke halaman grup tabungan. Langkah Alternatif 2 : Sistem menampilkan pesan kesalahan data tidak dapat dihapus. Langkah Alternatif 2 : Sistem menampilkan halaman pencarian data rekening tabungan. Langkah Alternatif 3 : Admistrator langsung memilih data yang sudah ada pada panel hasil pencarian grup tabungan, dan menekan tombol “PILIH”. Langkah Alternatif 3 : Direksi menekan tombol “REFRESH”. Langkah Alternatif 4 : Sistem menampilkan halaman Grup Tabungan dengan data dari hasil pilihan di halaman pencarian grup tabungan. Langkah Alternatif 4 : Sistem menampilkan kondisi awal tabel hasil pencarian grup tabungan . Langkah Alternatif 6 : Jika data pencarian tidak ditemukan, maka akan memunculkan pesan bahwa data tidak ditemukan.

Kesimpulan: Sistem dapat mencari data grup tabungan sesuai dengan masukan dari Direksi.

Kondisi Akhir: Sistem menemukan hasil pencarian sesuai dengan masukan dari Direksi.

Sistem tidak menemukan hasil pencarian sesuai dengan masukan dari Direksi.

Prosedur Bisnis: Direksi harus memasukkan data yang sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat. Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi.

11. Narasi Penambahan Kode Referensi Transaksi Tabungan

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Penambahan Kode Referensi Transaksi Tabungan

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-016 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Page 98: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

76

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses penambahan kode referensi transaksi tabungan.

Kondisi Awal: Direksi telah login. Direksi sudah memilih menu tabel pendukung Direksi sudah memilih sub menu Kode Referensi

Transaksi Tabungan

Pemicu: Use case ini digunakan apabila Direksi ingin menambahkan kode referensi yang baru.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi memasukkan data-data untuk kode referensi transaksi tabungan yang baru. Langkah 2 : Direksi menekan tombol “SIMPAN”.

Langkah 3: Sistem menyimpan kode transaksi yang baru ke dalam basis data. Langkah 4: Sistem menampilkan penyimpanan kode transaksi tabungan yang baru berhasil.

Aktifitas Alternatif:

Langkah Alternatif 1 Direksi tidak memasukkan data-data untuk kode referensi tabungan yang baru. Langkah Alternatif 2 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 2 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 2 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 3 : Sistem kembali ke antarmuka menu Tabel Pendukung. Langkah Alternatif 3 : Sistem memuculkan pesan kesalahan karena tidak ada data kode referensi tabungan yang dapat dihapus. Langkah Alternatif 3 : Sistem menanyakan untuk membersihkan antarmuka Kode Referensi Transaksi Tabungan. Langkah Alternatif 4 : Jika ada kesalahan masukan atau proses penyimpanan gagal maka sistem memunculkan pesan

Page 99: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

77

kesalahan. Kesimpulan: Sistem dapat menyimpan data-data kode referensi transaksi

yang baru sesuai dengan masukan dari aktor. Kondisi Akhir: Sistem menyimpan data-data untuk kode referensi

transaksi tabungan yang baru. Sistem tidak menyimpan data-data untuk kode

referensi transaksi tabungan yang baru.

Prosedur Bisnis: Direksi harus memasukkan data kode referensi transaksi tabungan yang sesuai ke dalam sistem.

Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat. Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi.

12. Narasi Pengubahan Kode Referensi

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Pengubahan Kode Referensi

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-017 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses mengubah kode referensi transaksi tabungan.

Kondisi Awal: Direksi telah login. Direksi telah memilih menu tabel pendukung. Direksi telah memilih sub menu Kode Referensi

Transaksi Tabungan Direksi telah mencari data kode referensi transaksi

tabungan yang ingin diubah Pemicu: Use case ini digunakan apabila Direksi ingin mengubah

kode referensi transaksi tabungan yang sudah ada. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi memasukkan data-data untuk kode referensi

Page 100: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

78

transaksi tabungan yang ingin diubah berdasarkan hasil pencarian. Langkah 2 : Direksi menekan tombol “SIMPAN”.

Langkah 3: Sistem menyimpan kode transaksi yang baru diubah ke dalam basis data. Langkah 4: Sistem menampilkan pesan pengubahan kode transaksi tabungan yang baru berhasil.

Aktifitas Alternatif:

Langkah Alternatif 2 : Direksi menekan tombol “KELUAR”. Langkah Alternatif 2 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 2 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 3 : Sistem kembali ke antarmuka menu tabel pendukung. Langkah Alternatif 3 : Sistem menghapus data dari basis data. Langkah Alternatif 3 : Sistem menanyakan untuk membersihkan antarmuka Kode Referensi Transaksi Tabungan. Langkah Alternatif 4 : Jika ada kesalahan masukan atau proses penyimpanan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat mengubah dan menyimpan data-data kode referensi transaksi yang baru sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menyimpan perubahan data-data untuk kode referensi transaksi tabungan yang baru.

Sistem tidak menyimpan perubahan data-data untuk kode referensi transaksi tabungan yang baru.

Prosedur Bisnis: Direksi harus memasukkan data sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat. Dapat diakses hanya oleh pengguna yang memiliki

username password Direksi.

Page 101: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

79

13. Narasi Penghapusan Kode Referensi

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Penghapusan Kode Referensi Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-018 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses menghapus kode referensi transaksi tabungan yang sudah ada.

Kondisi Awal: Direksi telah login. Direksi telah memilih menu tabel pendukung Direksi telah memilih sub menu Kode Referensi

Transaksi Tabungan Direksi sudah melakukan pencarian terhadap data

yang mau dihapus. Pemicu: Use case ini digunakan apabila Direksi ingin menghapus kode

referensi transaksi tabungan. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi menghapus kode referensi transaksi tabungan berdasarkan hasil pencarian dengan menekan tombol “HAPUS”.

Langkah 2: Sistem melakukan konfirmasi, jika ya, maka sistem menghapus produk tabungan berdasarkan masukan Direksi di dalam basis data, jika tidak maka sistem kembali ke antar muka tabel pendukung. Langkah 3 : Sistem menampilkan pesan penghapusan kode referensi transaksi tabungan berhasil.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi menekan tombol “KELUAR” Langkah Alternatif 1 : Direksi menekan tombol “SIMPAN”.

Page 102: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

80

Langkah Alternatif 1 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 2 : Sistem kembali ke antarmuka menu tabel pendukung. Langkah Alternatif 2 : Sistem mengubah data di basis data sesuai dengan data yang ada di antarmuka Kode Referensi Transaksi Tabungan. Langkah Alternatif 2 : Sistem menanyakan untuk membersihkan antarmuka Kode Referensi Transaksi Tabungan. Langkah Alternatif 3 : Jika ada kesalahan masukan atau proses penghapusan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menghapus data-data kode referensi transaksi tabungan sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menghapus kode referensi transaksi tabungan yang dipilih direksi.

Sistem tidak menghapus kode referensi transaksi tabungan yang dipilih direksi .

Prosedur Bisnis: Direksi harus memasukkan data sesuai dengan sistem untuk dapat dihapus.

Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat. Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi.

14. Narasi Pencarian Kode Referensi

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Pencarian Kode Referensi Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-019 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pencarian kode referensi transaksi tabungan yang sudah ada.

Kondisi Awal: Direksi telah login. Direksi sudah memilih submenu Kode Referensi

Page 103: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

81

Transaksi dari menu tabel pendukung.

Pemicu: Use case ini digunakan apabila Direksi ingin mencari kode referensi transaksi tabungan.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Direksi menekan tombol “LIHAT TABEL” . Langkah 3: Direksi memasukkan kriteria pencarian pada panel “Kriteria Filter Informasi”. Kemudian Direksi menekan tombol “PROSES”. Langkah 5 : Direksi memilih salah satu baris sebagai hasil pencarian. Kemudian Direksi menekan tombol “PILIH”.

Langkah 2 : Sistem menampilkan halaman pencarian Kode Referensi Transaksi Tabungan. Langkah 4: Sistem melakukan pencarian di basis data sesuai dengan kriteria yang dimasukkan Direksi. Hasil pencarian dimunculkan di panel “Data Kode Referensi Transaksi Tercatat”. Langkah 6: Sistem menampilkan halaman Kode Referensi Transaksi Tabungan dengan data dari hasil pilihan di halaman pencarian Kode Referensi Transaksi Tabungan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi menekan tombol “KEMBALI”. Langkah Alternatif 1 : Direksi menekan tombol “SIMPAN”. Langkah Alternatif 1 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 1 : Direksi menekan tombol “HAPUS”. Langkah Alternatif 2 : Sistem kembali ke tampilan utama menu tabel pendukung.

Page 104: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

82

Langkah Alternatif 2 : Jika data pada fields di Kode Referensi Transaksi Tabungan kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Kode Referensi Transaksi Tabungan tidak kosong maka sistem menyimpan data dari halaman Kode Referensi Transaksi Tabungan sebagai data perubahan. Langkah Alternatif 2 : Sistem akan menanyakan untuk membersihkan form. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman Kode Referensi Transaksi Tabungan. Jika “NO”, maka sistem akan kembali ke halaman Kode Referensi Transaksi Tabungan tanpa melakukan perubahan. Langkah Alternatif 2 : Sistem menampilkan pesan kesalahan data tidak dapat dihapus. Langkah Alternatif 2 : Sistem menampilkan halaman pencarian data Kode Referensi Transaksi Tabungan. Langkah Alternatif 3 : Admistrator langsung memilih data yang sudah ada pada panel hasil pencarian Kode Referensi Transaksi Tabungan, dan menekan tombol “PILIH”. Langkah Alternatif 3 : Direksi menekan tombol “REFRESH”. Langkah Alternatif 4 : Sistem menampilkan halaman Kode Referensi Transaksi Tabungan dengan data dari hasil pilihan di halaman Kode Referensi Transaksi Tabungan. Langkah Alternatif 4 : Sistem menampilkan kondisi awal tabel hasil pencarian Kode Referensi Transaksi Tabungan. Langkah Alternatif 6 : Jika data pencarian tidak ditemukan, maka akan memunculkan pesan bahwa data tidak ditemukan.

Kesimpulan: Sistem dapat mencari data-data kode referensi transaksi yang sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menemukan kode referensi transaksi tabungan yang dipilih direksi.

Sistem tidak menemukan kode referensi transaksi tabungan yang dipilih direksi

Prosedur Bisnis: Direksi harus memasukkan kata kunci yang sesuai untuk melakukan pencarian.

Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Direksi

15. Narasi Penambahan Data Rekening

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Penambahan Data Rekening Jenis Use-Case

Page 105: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

83

Kebutuhan Bisnis: ID Use-case: SILKMST-021 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses penambahan data rekening tabungan.

Kondisi Awal: Manajer telah login. Manajer telah memilih menu data rekening Manjer telah memilih nasabah pemilik rekening baru

yang akan ditambahkan. Pemicu: Use case ini digunakan apabila Manajer ingin menambah

data rekening tabungan. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer memasukkan data baru rekening tabungan. Langkah 2 : Manajer menekan tombol “SIMPAN”.

Langkah 3 : Sistem menyimpan data rekening tabungan yang baru. Langkah 4 : Sistem menampilkan pesan penyimpanan data rekening berhasil.

Aktifitas Alternatif:

Langkah Alternatif 2 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 2 : Manajer menekan tombol “BERSIHKAN”. Langkah Alternatif 2 : Manajer menekan tombol “HAPUS”. Langkah Alternatif 3 : Sistem kembali ke tampilan utama. Langkah Alternatif 3 : Sistem akan menanyakan untuk membersihkan halaman. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman Data Rekening. Jika “NO”, maka sistem akan kembali ke halaman Data Rekening. Langkah Alternatif 3 : Jika data pada fields Data Rekening

Page 106: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

84

kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Data Rekening tidak kosong maka sistem menyimpan data dari halaman Data Rekening sebagai data perubahan. Langkah Alternatif 4 : Jika ada kesalahan masukan atau proses penyimpanan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menyimpan data rekening yang baru sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menyimpan data rekening yang baru. Sistem tidak menyimpan data rekening yang baru.

Prosedur Bisnis: Manajer harus memasukkan data yang sesuai dengan sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat. Dapat diakses hanya oleh pengguna yang memiliki

username dan password Manajer.

16. Narasi Pengubahan Data Rekening

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Pengubahan Data Rekening

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-022 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pengubahan data rekening tabungan.

Kondisi Awal: Manajer telah login. Manajer telah memilih menu data rekening. Manajer telah memilih data rekening yang ingin

diubah. Pemicu: Use case ini digunakan apabila Manajer ingin mengubah

data rekening tabungan. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer memasukkan data baru rekening tabungan sesuai

Page 107: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

85

dengan hasil pencarian. Langkah 2 : Manajer menekan tombol “SIMPAN”.

Langkah 3 : Sistem menyimpan data rekening tabungan yang baru diubah ke dalam basis data. Langkah 4 : Sistem menampilkan pesan pengubahan data rekening berhasil.

Aktifitas Alternatif:

Langkah Alternatif 2 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 2 : Manajer menekan tombol “BERSIHKAN”. Langkah Alternatif 2 : Manajer menekan tombol “HAPUS”. Langkah Alternatif 3 : Sistem kembali ke tampilan utama. Langkah Alternatif 3 : Sistem akan menanyakan untuk membersihkan halaman. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman Data Rekening. Jika “NO”, maka sistem akan kembali ke halaman Data Rekening. Langkah Alternatif 3 : Jika data pada fields Data Rekening kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Data Rekening tidak kosong maka sistem menyimpan data dari halaman Data Rekening sebagai data perubahan. Langkah Alternatif 4 : Jika ada kesalahan masukan atau proses pengubahan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menyimpan data rekening yang baru diubah sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menyimpan data rekening yang baru diubah. Sistem tidak menyimpan data rekening yang baru

diubah. Prosedur Bisnis: Manajer harus memasukkan data yang sesuai dengan

sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Manajer

Page 108: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

86

17. Narasi Penghapusan Data Rekening

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Penghapusan Data Rekening

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-017 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses penghapusan data rekening tabungan.

Kondisi Awal: Manajer telah login Manajer telah memilih menu data rekening. Manajer telah memilih data rekening yang ingin

dihapus. Pemicu: Use case ini digunakan apabila Manajer ingin menghapus

data rekening tabungan. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer menghapus rekening tabungan sesuai dengan hasil pencarian dengan menekan tombol “HAPUS”.

Langkah 2 : Sistem melakukan konfirmasi, jika ya, maka sistem menghapus produk tabungan berdasarkan masukan Direksi di dalam basis data, jika tidak maka sistem kembali ke antar muka data rekening. Langkah 3 : Sistem menampilkan hasil proses penghapusan data rekening.

Aktifitas Alternatif:

Langkah Alternatif 1 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 1 : Manajer menekan tombol

Page 109: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

87

“BERSIHKAN”. Langkah Alternatif 1 : Manajer menekan tombol “SIMPAN”. Langkah Alternatif 2 : Sistem kembali ke tampilan utama. Langkah Alternatif 2 : Sistem akan menanyakan untuk membersihkan halaman. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas halaman Data Rekening. Jika “NO”, maka sistem akan kembali ke halaman Data Rekening. Langkah Alternatif 2 : Jika data pada fields Data Rekening kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Data Rekening tidak kosong maka sistem menyimpan data dari halaman Data Rekening sebagai data perubahan.. Langkah Alternatif 3 : Jika ada kesalahan masukan atau proses penyimpanan gagal maka sistem memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menghapus data rekening sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menghapus data rekening sesuai dengan masukan dari aktor.

Sistem tidak menghapus data rekening sesuai dengan masukan dari aktor.

Prosedur Bisnis: Manajer harus berhasil login kedalam sistem utama dan memilih menu data rekening.

Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Manajer

18. Narasi Pencarian Data Rekening

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Pencarian Data Rekening Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-024 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Page 110: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

88

Deskripsi: Use case ini menggambarkan proses pencarian data rekening tabungan.

Kondisi Awal: Manajer telah login. Manajer telah memilih menu data rekening

Pemicu: Use case ini digunakan apabila Manajer ingin mencari data rekening tabungan.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Manajer memilih tab “Data Rekening Nasabah Tercatat. Langkah 3 : Manajer memasukkan kriteria pencarian pada panel “Kriteria Filter Informasi”. Kemudian Direksi menekan tombol “PROSES”. Langkah 5 : Manajer memilih salah satu baris sebagai hasil pencarian. Kemudian Direksi menekan tombol “PILIH”.

Langkah 2 : Sistem menampilkan antarmuka tab Data Rekening Nasabah Tercatat. Langkah 4 Sistem melakukan pencarian di basis data sesuai dengan kriteria yang dimasukkan Manajer Hasil pencarian dimunculkan di panel “Data Rekening Nasabah”. Langkah 6: Sistem menampilkan Form Data Nasabah dengan data dari hasil pilihan di halaman pencarian Form Data Nasabah.

Aktifitas Alternatif:

Langkah Alternatif 1 : Direksi menekan tombol “KEMBALI”. Langkah Alternatif 1 : Direksi menekan tombol “SIMPAN”. Langkah Alternatif 1 : Direksi menekan tombol “BERSIHKAN”. Langkah Alternatif 1 : Direksi menekan tombol “HAPUS”.

Page 111: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

89

Langkah Alternatif 2 : Sistem kembali ke tab Form Data Nasabah. Langkah Alternatif 2 : Jika data pada fields di Form Data Nasabah kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Form Data Nasabah tidak kosong maka sistem menyimpan data dari halaman Form Data Nasabah sebagai data perubahan. Langkah Alternatif 2 : Sistem akan menanyakan untuk membersihkan form. Jika jawaban “YES” maka sistem akan membersihkan semua masukan yang ditulis di atas Form Data Nasabah. Jika “NO”, maka sistem akan kembali ke Form Data Nasabah tanpa melakukan perubahan. Langkah Alternatif 2 : Jika data pada fields di Form Data Nasabah kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields Form Data Nasabah tidak kosong maka sistem akan menanyakan untuk menghapus data apa tidak. (Lihat narasi use case Penghapusan Data Rekening). Langkah Alternatif 3 : Manajer langsung memilih data yang sudah ada pada panel hasil pencarian Kode Referensi Transaksi Tabungan, dan menekan tombol “PILIH”. Langkah Alternatif 3 : Manajer menekan tombol “REFRESH”. Langkah Alternatif 4 : Sistem menampilkan Form Data Nasabah dengan data dari hasil pilihan di pencarian Data Rekening Nasabah Tercatat. Langkah Alternatif 4 : Sistem menampilkan kondisi awal tabel hasil pencarian Data Rekening Nasabah Tercatat. Langkah Alternatif 6 : Jika data pencarian tidak ditemukan, maka akan memunculkan pesan bahwa data tidak ditemukan.

Kesimpulan: Sistem dapat mencari data rekening sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menampilkan hasil pencarian data rekening. Sistem tidak menampilkan hasil pencarian data

rekening. Prosedur Bisnis: Manajer harus memasukkan kata kunci yang sesuai dengan

sistem. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat. Dapat diakses hanya oleh pengguna yang memiliki

username dan password Manajer.

Page 112: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

90

19. Narasi Perhitungan Bunga dan Pajak Tabungan

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Perhitungan Bunga dan Pajak Tabungan

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-025 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

Waktu

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses perhitungan bunga dan pajak tabungan setiap periode 1 bulan.

Kondisi Awal: Manajer telah login. Pemicu: Use case ini digunakan apabila Manajer ingin menghitung

bunga dan pajak tabungan jika transaksi sudah mencapai periode 1 bulan.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Manajer memilih menu perhitungan bunga dan pajak Langkah 3: Manajer memasukkan tanggal awal perhitungan dan tanggal akhir perhitungan bunga, pajak, dan administrasi tabungan. Manajer juga memilih check box koreksi perhitungan. Langkah 4: Manajer menekan tombol “HITUNG”

Langkah 2: Sistem menampilkan antarmuka perhitungan bunga dan pajak tabungan Langkah 5: Sistem melakukan perhitungan bunga dan pajak tabungan untuk semua rekening tabungan sesuai dengan tanggal periode yang sudah

Page 113: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

91

ditentukan direksi. Langkah 6: Sistem memunculkan pesan perhitungan bunga dan pajak tabungan berhasil dilakukan.

Aktifitas Alternatif:

Langkah Alternatif 1: Manajer tidak memilih menu bunga dan pajak tabungan. Langkah Alternatif 2 : Sistem memunculkan tampilan sesuai dengan menu yang dipilih pada Langkah Alternatif 3. Langkah Alternatif 4: Manajer menekan tombol “KELUAR”. Langkah Alternatif 5 : Sistem kembali ke menu utama Manajer Tabungan. Langkah Alternatif 6: Sistem tidak melakukan perhitungan bunga dan memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat melakukan perhitungan bunga dan pajak tabungan untuk setiap periode 1 bulan.

Kondisi Akhir: Sistem menghitung bunga dan pajak tabungan untuk semua rekening sesuai dengan masukan tanggal periode dari Manajer.

Sistem tidak menghitung bunga dan pajak tabungan untuk semua rekening sesuai dengan masukan tanggal periode dari Manajer

Prosedur Bisnis: Manajer harus berhasil login kedalam sistem utama dan memilih menu perhitung bunga dan pajak

Batasan Implementasi dan Spesifikasi

4.1.2.1. Harus dapat diakses setiap saat 4.1.2.2. Dapat diakses hanya oleh pengguna yang

memiliki username dan password Manajer.

20. Narasi Pemindahbukuan Perhitungan Bunga,Pajak dan

Administrasi Tabungan

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Pemindahbukuan Perhitungan Bunga,Pajak dan Administrasi Tabungan

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-026 Prioritas: Tinggi Sumber: - Pelaku Bisnis Manajer

Page 114: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

92

Utama: Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

Subsistem Akuntasi

Deskripsi: Use case ini menggambarkan proses pemindahbukuan tabungan.

Kondisi Awal: Manajer telah login. Pemicu: Use case ini digunakan apabila Manajer ingin

memindahbukukan hasil perhitungan bunga dan pajak ke dalam rekening tabungan.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Manajer memilih menu pemindahbukuan Langkah 3: Manajer memasukkan tanggal pemindahbukuan tabungan. Langkah 4: Manajer menekan tombol “PINDAH BUKU”

Langkah 2: Sistem menampilkan antarmuka pemindahbukuan Langkah 5: Sistem melakukan proses pemindahbukuan hasil perhitungan bunga ke rekening tabungan. Langkah 6 : Sistem memberitahukan proses pemindahbukuan selesai.

Aktifitas Alternatif:

Langkah Alternatif 1: Manajer memilih menu yang lain dan tidak masuk ke menu pemindahbukuan. Langkah Alternatif 2 : Sistem menampilkan tampilan sesuai dengan menu yang dipilih Langkah Alternatif 1. Langkah Alternatif 3 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 4 : Sistem kembali ke tampilan utama. Langkah Alternatif 6 : Jika proses pemindahbukuan gagal maka akan memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat melakukan pemindahbukuan tabungan untuk

Page 115: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

93

setiap periode 1 bulan. Kondisi Akhir: Sistem memindahbukukan hasil perhitungan bunga

ke rekening tabungan Sistem tidak memindahbukukan hasil perhitungan

bunga ke rekening tabungan. Prosedur Bisnis: Manajer harus memasukkan masukan yang sesuai dengan

sistem. Batasan Implementasi dan Spesifikasi

4.1.2.3. Harus dapat diakses setiap saat 4.1.2.4. Dapat diakses hanya oleh pengguna yang

memiliki username dan password Manajer.

21. Narasi Hapus Transaksi

Penulis : Fransiskus Paranso Tanggal: 21 November 2008 Versi : 1.0

Nama Use-case: Penghapusan Transaksi Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-027 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

Subsistem teller

Deskripsi: Use case ini menggambarkan proses penghapusan transaksi tabungan secara manual.

Kondisi Awal: Manajer telah login. Pemicu: Use case ini digunakan apabila Manajer menghapus

transaksi tabungan yang tidak benar dari teller secara manual.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1: Manajer memilih menu hapus transaksi Langkah 3: Manajer memilih daftar transaksi yang tidak valid. Langkah 4 : Manajer menekan tombol “HAPUS”.

Langkah 2: Sistem menampilkan antarmuka hapus transaksi Langkah 5 : Sistem

Page 116: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

94

menghapus transaksi yang tidak valid dari basis data. Langkah 6 : Sistem memunculkan pesan proses transaksi yang tidak valid sudah dihapus.

Aktifitas Alternatif:

Langkah Alternatif 1: Manajer memilih menu yang lain dan tidak masuk ke menu validasi transaksi. Langkah Alternatif 2 : Sistem menampilkan menu yang dipilih sesuai dengan Langkah Alternatif 1. Langkah Alternatif 4 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 5 : Sistem kembali ke tampilan awal. Langkah Alternatif 6 : Jika proses penghapusan gagal maka akan memunculkan pesan kesalahan.

Kesimpulan: Sistem dapat menghapus transaksi yang tidak valid. Kondisi Akhir: Daftar transaksi yang tidak valid dihapus dari

sistem Daftar transaksi yang tidak valid tidak terhapus dari

sistem.

Prosedur Bisnis: Manajer harus memasukkan masukan yang sesuai dengan sistem.

Sudah melakukan proses transaksi tabungan yang memiliki tanggal yang sama dengan tanggal aplikasi ketika login.

Batasan Implementasi dan Spesifikasi

4.1.2.5. Harus dapat diakses setiap saat. 4.1.2.6. Dapat diakses hanya oleh pengguna yang

memiliki username dan password Manajer.

22. Narasi Pencarian Bunga dan Pajak Tabungan Penulis : Fransiskus Paranso Tanggal: 21 November 2008

Versi : 1.0 Nama Use-case: Pencarian Bunga dan Pajak

Tabungan Jenis Use-Case

Kebutuhan Bisnis: ID Use-case: SILKMST-028 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang -

Page 117: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

95

Berkepentingan Deskripsi: Use case ini menggambarkan proses pencarian bunga dan

pajak tabungan setelah proses perhitungan bunga dilakukan. Kondisi Awal: Manajer telah login.

Manajer telah memilih check box koreksi perhitungan. Pemicu: Use case ini digunakan apabila Manajer ingin mencari bunga

dan pajak rekening tertentu pada periode tertentu. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer memilih menu Daftar Bunga Tabungan dan Pajak. Langkah 3: Manajer memasukkan kriteria pencarian pada panel “Kriteria Filter Informasi”. Kemudian Manajer menekan tombol “PROSES”.

Langkah 2 : Sistem menampilkan halaman Daftar Bunga Tabungan dan Pajak. Langkah 4: Sistem melakukan pencarian di basis data sesuai dengan kriteria yang dimasukkan Manajer. Langkah 5 : Hasil pencarian dimunculkan di tabel hasil pencarian

Aktifitas Alternatif:

Langkah Alternatif 3 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 3 : Manajer menekan tombol “SIMPAN”. Langkah Alternatif 3: Manajer menekan tombol “REFRESH”. Langkah Alternatif 4: Sistem kembali ke tampilan utama menu Manajer Tabungan Langkah Alternatif 4 : Jika data pada fields di data rekening nasabah kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields data rekening nasabah maka sistem menyimpan data dari halaman Kode Referensi Transaksi Tabungan sebagai data perubahan. Langkah Alternatif 4: Sistem menampilkan kondisi awal tabel hasil pencarian data rekening nasabah tabungan. Langkah Alternatif 5 : Jika data pencarian tidak ditemukan,

Page 118: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

96

maka akan memunculkan pesan bahwa data tidak ditemukan. Kesimpulan: Sistem dapat mencari data-data rekening nasabah yang sesuai

dengan masukan dari aktor. Kondisi Akhir: Sistem menemukan data rekening nasabah yang

dicari Manajer Sistem tidak menemukan data rekening nasabah yang

dicari Manajer Prosedur Bisnis: Manajer harus memasukkan kata kunci yang sesuai untuk

melakukan pencarian. Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Manajer

23. Narasi Pengubahan Bunga dan Pajak Tabungan Penulis : Fransiskus Paranso Tanggal: 21 November 2008

Versi : 1.0 Nama Use-case: Pengubahan Bunga dan Pajak

Tabungan Jenis Use-Case

Kebutuhan Bisnis: ID Use-case: SILKMST-029 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Direksi

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pengubahan bunga dan pajak tabungan setelah proses perhitungan bunga dilakukan.

Kondisi Awal: Manajer telah login. Manajer telah memilih check box koreksi perhitungan. Manajer telah memilih menu Daftar Bunga Tabungan

dan Pajak. Manajer telah melakukan proses pencarian data

rekening nasabah pada periode tertentu Pemicu: Use case ini digunakan apabila Manajer ingin mengubah

bunga dan pajak rekening tertentu pada periode tertentu. Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer memilih salah satu baris sebagai hasil pencarian, kemudian mengubah data hasil perhitungan bunga dan

Page 119: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

97

pajak tabungan. Langkah 2 : Manajer menekan tombol “SIMPAN”.

Langkah 3 : Sistem menyimpan hasil perubahan perhitungan bunga dan pajak tabungan ke dalam basis data. Langkah 4 : Sistem memberitahukan bahwa proses pengubahan hasil perhitungan bunga dan pajak tabungan berhasil.

Aktifitas Alternatif:

Langkah Alternatif 2 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 2: Manajer menekan tombol “SIMPAN”. Langkah Alternatif 2: Manajer menekan tombol “REFRESH”. Langkah Alternatif 3: Sistem kembali ke tampilan utama menu Manajer Tabungan Langkah Alternatif 3 : Jika data pada fields di data rekening nasabah kosong maka sistem akan memunculkan pesan kesalahan. Jika data pada fields data rekening nasabah maka sistem menyimpan data dari halaman Kode Referensi Transaksi Tabungan sebagai data perubahan. Langkah Alternatif 3: Sistem menampilkan kondisi awal tabel hasil pencarian data rekening nasabah tabungan. Langkah Alternatif 4 : Jika data pencarian tidak ditemukan, maka akan memunculkan pesan bahwa data tidak ditemukan.

Kesimpulan: Sistem dapat mencari data-data rekening nasabah yang sesuai dengan masukan dari aktor.

Kondisi Akhir: Sistem menemukan data rekening nasabah yang dicari Manajer

Sistem tidak menemukan data rekening nasabah yang dicari Manajer

Prosedur Bisnis: Manajer harus memasukkan kata kunci yang sesuai untuk melakukan pencarian.

Batasan Implementasi dan Spesifikasi

Harus dapat diakses setiap saat Dapat diakses hanya oleh pengguna yang memiliki

username dan password Manajer

24. Narasi Pencetakan Laporan Nominatif Tabungan Penulis : Fransiskus Paranso Tanggal: 21 November 2008

Versi : 1.0 Nama Use-case: Pencetakan Laporan Jenis Use-Case

Page 120: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

98

Nominatif Tabungan Kebutuhan Bisnis: ID Use-case: SILKMST-030 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pencetakan laporan nominatif tabungan.

Kondisi Awal: Manajer telah login Pemicu: Use case ini digunakan apabila Manajer mau mencetak

laporan saldo akhir nasabah, saldo rata-rata nasabah, saldo bunga dan pajak masing-masing nasabah.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer memilih menu laporan nominatif tabungan. Langkah 3 : Manajer memasukkan tanggal nominatif yang ingin dicetak. Langkah 4 : Manajer menekan tombol “CETAK”.

Langkah 2: Sistem menampilkan antarmukan menu pencetakan laporan nominatif tabungan. Langkah 5 : Sistem mencetak laporan nominatif tabungan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Manajer memilih submenu yang lain dan tidak masuk ke menu pencetak laporan nominatif tabungan. Langkah Alternatif 2 : Sistem menampilkan antarmuka yang sesuai dengan menu yang dipilih pada Langkah Alternatif 1. Langkah Alternatif 4 : Manajer menekan tombol “BATAL”. Langkah Alternatif 5 : Sistem kembali ke tampilan awal.

Kesimpulan: Sistem dapat mencetak laporan nominatif tabungan berdasarkan periode tertentu.

Kondisi Akhir: Sistem mencetak laporan nominatif tabungan.

Page 121: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

99

Sistem tidak mencetak laporan nominatif tabungan. Prosedur Bisnis: Manajer harus memasukkan tanggal nominatif yang ingin

dicetak secara tepat. Batasan Implementasi dan Spesifikasi

4.1.2.7. Harus dapat diakses setiap saat. 4.1.2.8. Dapat diakses hanya oleh pengguna yang

memiliki username dan password Manajer.

25. Narasi Pencetakan Laporan Transaksi Tabungan Penulis : Fransiskus Paranso Tanggal: 21 November 2008

Versi : 1.0 Nama Use-case: Pencetakan Laporan

Transaksi Tabungan Jenis Use-Case

Kebutuhan Bisnis: ID Use-case: SILKMST-031 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pencetakan laporan transaksi tabungan.

Kondisi Awal: Manajer telah login Pemicu: Use case ini digunakan apabila Manajer mau mencetak

laporan transaksi setoran dan penarikan dalam selang waktu tertentu.

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer memilih menu laporan transaksi tabungan. Langkah 3 : Manajer memasukkan tanggal selang waktu transaksi tabungan yang ingin dicetak. Langkah 4 : Manajer menekan tombol “CETAK”.

Langkah 2: Sistem menampilkan antarmukan menu pencetakan laporan transaksi tabungan. Langkah 5 : Sistem

Page 122: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

100

mencetak laporan transaksi tabungan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Manajer memilih submenu yang lain dan tidak masuk ke menu pencetak laporan transaksi tabungan. Langkah Alternatif 2 : Sistem menampilkan antarmuka yang sesuai dengan menu yang dipilih pada Langkah Alternatif 1. Langkah Alternatif 4 : Manajer menekan tombol “BATAL”. Langkah Alternatif 5 : Sistem kembali ke tampilan awal.

Kesimpulan: Sistem dapat mencetak laporan transaksi tabungan berdasarkan periode tertentu.

Kondisi Akhir: Sistem mencetak laporan transaksi tabungan. Sistem tidak mencetak laporan transaksi tabungan.

Prosedur Bisnis: Manajer harus memasukkan selang waktu laporan transaksi yang ingin dicetak secara tepat.

Batasan Implementasi dan Spesifikasi

4.1.2.9. Harus dapat diakses setiap saat. 4.1.2.10. Dapat diakses hanya oleh pengguna yang

memiliki username dan password Manajer.

26. Narasi Pencetakan Laporan Daftar Mutasi Tabungan Penulis : Fransiskus Paranso Tanggal: 21 November 2008

Versi : 1.0 Nama Use-case: Pencetakan Laporan Daftar

Mutasi Tabungan Jenis Use-Case

Kebutuhan Bisnis: ID Use-case: SILKMST-032 Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pencetakan laporan daftar mutasi tabungan.

Kondisi Awal: Manajer telah login Pemicu: Use case ini digunakan apabila Manajer mau mencetak

laporan yang menampilkan jumlah mutasi saldo simpanan dalam periode waktu tertentu

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer

Page 123: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

101

memilih menu laporan daftar mutasi tabungan. Langkah 3 : Manajer memasukkan tanggal selang waktu mutasi tabungan yang ingin dicetak. Langkah 4 : Manajer menekan tombol “CETAK”.

Langkah 2: Sistem menampilkan antarmukan menu pencetakan laporan daftar mutasi tabungan. Langkah 5 : Sistem mencetak laporan daftar mutasi tabungan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Manajer memilih submenu yang lain dan tidak masuk ke menu pencetak laporan daftar mutasi tabungan. Langkah Alternatif 2 : Sistem menampilkan antarmuka yang sesuai dengan menu yang dipilih pada Langkah Alternatif 1. Langkah Alternatif 4 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 5 : Sistem kembali ke tampilan awal.

Kesimpulan: Sistem dapat mencetak laporan daftar mutasi tabungan berdasarkan periode tertentu.

Kondisi Akhir: Sistem mencetak laporan daftar mutasi tabungan. Sistem tidak mencetak laporan daftar mutasi

tabungan. Prosedur Bisnis: Manajer harus memasukkan selang waktu laporan daftar

mutasi yang ingin dicetak secara tepat. Batasan Implementasi dan Spesifikasi

4.1.2.11. Harus dapat diakses setiap saat. 4.1.2.12. Dapat diakses hanya oleh pengguna yang

memiliki username dan password Manajer.

27. Narasi Pencetakan Laporan Bunga, Pajak dan Administrasi Penulis : Fransiskus Paranso Tanggal: 21 November 2008

Versi : 1.0 Nama Use-case: Pencetakan Laporan

Bunga, Pajak dan Administrasi

Jenis Use-Case Kebutuhan Bisnis:

ID Use-case: SILKMST-033

Page 124: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

102

Prioritas: Tinggi Sumber: - Pelaku Bisnis Utama:

Manajer

Pelaku Lain yang Terlibat

-

Pihak Lain yang Berkepentingan

-

Deskripsi: Use case ini menggambarkan proses pencetakan laporan bunga, pajak dan administrasi tabungan.

Kondisi Awal: Manajer telah login Pemicu: Use case ini digunakan apabila Manajer mau mencetak

laporan yang menampilkan jumlah bunga, pajak dan administrasi pada waktu tertentu

Urutan Aktifitas Normal :

Aksi Aktor Respon Sistem

Langkah 1 : Manajer memilih menu laporan bunga, pajak dan administrasi tabungan. Langkah 3 : Manajer memasukkan tanggal transaksi bunga, pajak dan administrasi tabungan yang ingin dicetak. Langkah 4 : Manajer menekan tombol “CETAK”.

Langkah 2: Sistem menampilkan antarmukan menu pencetakan laporan bunga, pajak dan administrasi tabungan. Langkah 5 : Sistem mencetak laporan bunga, pajak dan administrasi tabungan.

Aktifitas Alternatif:

Langkah Alternatif 1 : Manajer memilih submenu yang lain dan tidak masuk ke menu pencetak laporan bunga, pajak dan administrasi tabungan. Langkah Alternatif 2 : Sistem menampilkan antarmuka yang sesuai dengan menu yang dipilih pada Langkah Alternatif 1. Langkah Alternatif 4 : Manajer menekan tombol “KELUAR”. Langkah Alternatif 5 : Sistem kembali ke tampilan awal.

Kesimpulan: Sistem dapat mencetak laporan bunga, pajak dan

Page 125: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

103

administrasi tabungan berdasarkan periode tertentu. Kondisi Akhir: Sistem mencetak laporan bunga, pajak dan

administrasi tabungan. Sistem tidak mencetak laporan bunga, pajak dan

administrasi tabungan. Prosedur Bisnis: Manajer harus memasukkan selang waktu laporan bunga,

pajak dan administrasi yang ingin dicetak secara tepat. Batasan Implementasi dan Spesifikasi

4.1.2.13. Harus dapat diakses setiap saat. 4.1.2.14. Dapat diakses hanya oleh pengguna yang

memiliki username dan password Manajer.

Page 126: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

104

3.2. Perancangan Sistem

3.2.1. Fase Desain Logis (Logical Design Phase)

3.2.2.1. Diagram Aktifitas (Activity Diagram)

1. Login

Gambar 3.12. Diagram Aktifitas Login

Page 127: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

105

2. Logout Subsistem TabunganAdministrator / Manajer Tabungan

Administrator / Manajer Tabungan memilih menu Keluar Sistem menanyakan konfirmasi kepada pengguna untuk keluar

Admininstrator dan Manajer melakukan konfirmasi

Sistem keluar dan berhenti

[ya]

Sistem kembali ke tampilan utama

[tidak]

Gambar 3.13. Diagram Aktifitas Logout

3. Penambahan Produk Tabungan Subsistem TabunganAdministrator Tabungan

Administrator memilih produk tabungan Sistem menampilkan antarmuka produk tabungan

Administrator memasukkan data produk tabungan baru

Sistem menyimpan data produk tabungan baru

Sistem memunculkan pesan proses penyimpanan berhasil

[simpan]

[kembali ke menu utama]

[penyimpanan data berhasil]

[penyimpanan data gagal]

Gambar 3.14. Diagram Aktifitas Penambahan Produk Tabungan

Page 128: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

106

4. Pengubahan Produk Tabungan

Gambar 3.15. Diagram Aktifitas Pengubahan Produk Tabungan

5. Penghapusan Produk Tabungan

Gambar 3.16. Diagram Aktifitas Penghapusan Produk Tabungan

Page 129: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

107

6. Pencarian Produk Tabungan

Gambar 3.17. Diagram Aktifitas Pencarian Produk Tabungan

7. Penambahan Kode Grup Tabungan Administrator Tabungan Subsistem Tabungan

Administrator memilih submenu Kode Grup Sistem menampilkan antarmuka Kode Grup

Administrator memasukkan data kode grup tabungan yang baru

Sistem menyimpan kode grup tabungan yang baru

Sistem memunculkan proses penyimpanan berhasil

[simpan]

[penyimpanan data gagal]

[penyimpanan data berhasil]

[kembali ke menu tabel pendukung]

Gambar 3.18. Diagram Aktifitas Penambahan Kode Grup Tabungan

Page 130: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

108

8. Pengubahan Kode Grup Tabungan Subsistem TabunganAdministrator Tabungan

Administrator memasukkan data perubahan kode grup tabungan

Sistem mengubah kode grup tabungan

Sistem memunculkan proses penyimpanan berhasil

[simpan]

[pengubahan data gagal]

[pengubahan data berhasil]

[kembali ke menu tabel pendukung]

Gambar 3.19. Diagram Aktifitas Pengubahan Kode Grup Tabungan

9. Penghapusan Kode Grup Tabungan

Gambar 3.20. Diagram Aktifitas Penghapusan Kode Grup Tabungan

Page 131: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

109

10. Pencarian Kode Grup

Gambar 3.21. Diagram Aktifitas Pencarian Kode Grup Tabungan

11. Penambahan Kode Referensi

Gambar 3.22. Diagram Aktifitas Penambahan Kode Referensi

Page 132: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

110

12. Pengubahan Kode Referensi

Gambar 3.23. Diagram Aktifitas Pengubahan Kode Referensi

13. Penghapusan Kode Referensi

Gambar 3.24. Diagram Aktifitas Penghapusan Kode Referensi

Page 133: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

111

14. Pencarian Kode Referensi Subsistem TabunganAdministrator Tabungan

Administrator memilih menu kode referensi transaksi Sistem menampilkan antarmuka kode referensi transaksi

Administrator memasukkan kata kunci pencarian untuk kode referensi transaksi tabungan

Sistem mencari kode referensi pada basis data[cari]

[data ditemukan]

Sistem memunculkan hasil pencarian kode referensi

[data tidak ditemukan][tidak]

Gambar 3.25. Diagram Aktifitas Pencarian Kode Referensi

15. Penambahan Data Rekening

Gambar 3.26. Diagram Aktifitas Penambahan Data Rekening

Page 134: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

112

16. Pengubahan Data Rekening

Gambar 3.27. Diagram Aktifitas Pengubahan Data Rekening

Page 135: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

113

17. Penghapusan Data Rekening

Gambar 3.28. Diagram Aktifitas Penghapusan Data Rekening

Page 136: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

114

18. Pencarian Data Rekening

Gambar 3.29. Diagram Aktifitas Pencarian Data Rekening

19. Perhitungan Bunga dan Pajak

Gambar 3.30. Diagram Aktifitas Perhitungan Bunga dan Pajak

Page 137: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

115

20. Pemindahbukuan Manajer Tabungan Subsistem Tabungan

Manajer memilih menu pemindahbukuan Sistem menampilkan antarmuka pemindahbukuan

Manajer melakukan pemindahbukuan

Sistem melakukan pemindahbukuan ke rekening tabungan[ya]

[pemindahbukuan berhasil]

Sistem memunculkan pesan pemindahbukuan berhasil

[pemindahbukuan gagal][tidak]

Manajer memasukkan tanggal perhitungan bunga

Gambar 3.31. Diagram Aktifitas Pemindahbukuan

Page 138: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

116

21. Penghapusan Transaksi Manajer Tabungan Subsistem Tabungan

Manajer memilih menu hapus transaksi Sistem menampilkan antarmuka hapus transaksi

Manajer menghapus transaksi yang tidak valid

Sistem menghapus transaksi yang tidak valida dari basis data[hapus]

[penghapusan berhasil]

Sistem memunculkan pesan proses penghapusan berhasil

[penghapusan gagal]

klik keluar

[kembali ke menu utama]

Gambar 3.32. Diagram Aktifitas Penghapusan Transaksi

Page 139: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

117

22. Pencarian Bunga, Pajak dan Administrasi Tabungan

Gambar 3.33. Diagram Aktifitas Pencarian Bunga, Pajak dan Administrasi

Tabungan

23. Pengubahan Bunga, Pajak, dan Administrasi Tabungan Administrator Tabungan Subsistem Tabungan

Administrator memasukkan data perubahan bunga,pajak, administrasi tabungan

Sistem mengubah bunga,pajak, administrasi tabungan

Sistem memunculkan proses pengubahan bunga,pajak, administrasi tabungan berhasil

[simpan]

[pengubahan data gagal]

[pengubahan data berhasil]

[tidak]

Gambar 3.34. Diagram Aktifitas Pengubahan Bunga, Pajak, dan Administrasi

Tabungan

Page 140: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

118

24. Pencetakan Laporan Nominatif Tabungan Subsistem TabunganManajer Tabungan

Manajer memilih menu laporan nominatif tabungan Sistem menampilkan antarmuka laporan nominatif tabungan

Manajer memasukkan tanggal nominatif tabungan

Sistem mencetak laporan nominatif tabungan[cetak]

[keluar]

Gambar 3.35. Diagram Aktifitas Pencetakan Laporan Nominatif Tabungan

25. Pencetakan Laporan Transaksi Tabungan

Gambar 3.36. Diagram Aktifitas Laporan Transaksi Tabungan

Page 141: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

119

26. Pencetakan Laporan Daftar Mutasi Tabungan Subsistem TabunganManajer Tabungan

Manajer memilih menu laporan daftar mutasi tabungan Sistem menampilkan antarmuka laporan daftar mutasi tabungan

Manajer memasukkan tanggal daftar mutasi tabungan

Sistem mencetak laporan daftar mutasi tabungan[cetak]

[tidak]

Gambar 3.37. Diagram Aktifitas Laporan Daftar Mutasi Tabungan

27. Pencetakan Laporan Bunga, Pajak, dan Administrasi

Gambar 3.38. Diagram Aktifitas Laporan Bunga, Pajak, dan Administrasi

Page 142: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

120

3.2.2.2. Diagram Relasi Entitas (ER Diagram)

Gambar 3.39. Diagram Relasi Entitas (ER Diagram)

Page 143: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

121

3.2.2. Fase Desain Fisik (Physical Design Phase)

3.2.2.1. Diagram Sekuensial

(Gambar diagram sekuensial terlampir pada lampiran 12 sampai lampiran 35)

Mengidentifikasi kelas dalam desain use case :

1. Use Case Login

Kelas Antarmuka, Pengendali, dan Entitas dari Use-CaseLogin

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0001-Form Login Login Handler

LoginDatabase

Pengguna

2. Use Case Logout

Kelas Antarmuka, Pengendali, dan Entitas dari Use-Case Logout

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002-Form

FrameUtamaDireksi

Login Handler

LoginDatabase

Pengguna

3. Use Case Penambahan Produk Tabungan

Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pembuatan Produk Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

ControllerProdukTabungan

Pengguna

ProdukTabungan

Page 144: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

122

W0003- Form

FrameProdukTabungan

4. Use Case Pengubahan Produk Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pengubahan Produk Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0003- Form

FrameProdukTabungan

ControllerProdukTabungan

Pengguna

ProdukTabungan

5. Use Case Penghapusan Produk Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penghapusan Produk Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0003- Form

FrameProdukTabungan

ControllerProdukTabungan

Pengguna

ProdukTabungan

6. Use Case Pencarian Produk Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pencarian Produk Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0003- Form Produk

Tabungan

W00031- Form

ControllerProdukTabungan

Pengguna

ProdukTabungan

Page 145: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

123

DialogCariProduk

Tabungan

7. Use Case Penambahan Grup Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penambahan Grup Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0004- Form

DialogKodeGrupTabungan

ControllerKodeGrupTabungan

Pengguna

ProdukTabungan

8. Use Case Pengubahan Grup Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pengubahan Grup Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0004- Form

DialogKodeGrupTabungan

ControllerKodeGrupTabungan

Pengguna

ProdukTabungan

9. Use Case Penghapusan Grup Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penghapusan Grup Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0004- Form

DialogKodeGrupTabungan

ControllerKodeGrupTabungan

Pengguna

ProdukTabungan

Page 146: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

124

10. Use Case Pencarian Grup Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pencarian Grup Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireks

i

W0004- Form

DialogKodeGrup

Tabungan

W00041-Form

DialogCariKodeGr

upTabungan

ControllerKodeGrupTabungan

Pengguna

KodeGrupTabungan

11. Use Case Penambahan Kode Referensi Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penambahan Kode Referensi Transaksi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0006- Form

DialogKodeRefTrans

aksi

ControllerKodeReferensiTransaksiTab

ungan Pengguna

EntitasKodeTrans

Tabungan

12. Use Case Pengubahan Kode Referensi Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pengubahan Kode Referensi Transaksi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0006- Form

DialogKodeRefTrans

ControllerKodeReferensiTransaksiTab

ungan Pengguna

EntitasKodeTrans

Tabungan

Page 147: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

125

aksi

13. Use Case Penghapusan Kode Referensi Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penghapusan Kode Referensi Transaksi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0006- Form

DialogKodeRefTrans

aksi

ControllerKodeReferensiTransaksiTab

ungan Pengguna

EntitasKodeTrans

Tabungan

14. Use Case Pencarian Kode Referensi Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penambahan Kode Referensi Transaksi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W0002- Form

FrameUtamaDireksi

W0006- Form

DialogKodeRefTrans

aksi

W00061- Form

DialogCariKodeRefe

rensi

ControllerKodeReferensiTransaksiTab

ungan Pengguna

EntitasKodeTrans

Tabungan

15. Use Case Penambahan Data Rekening Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penambahan Data Rekening

Kelas Antarmuka Kelas Pengendali Kelas Entitas

Page 148: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

126

W002- Form

FrameUtamaManajer

W015- Form

DialogDataRekeningNasabah

W0151- Form

DialogCariNasabah

ControllerDataRekeningNasabah

Pengguna

EntitasTabungan

16. Use Case Pengubahan Data Rekening Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pengubahan Data Rekening

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W015- Form

DialogDataRekeningNasabah

ControllerDataRekeningNasabah

Pengguna

EntitasTabungan

17. Use Case Penghapusan Data Rekening Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penghapusan Data Rekening

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W015- Form

DialogDataRekeningNasabah

ControllerDataRekeningNasabah

Pengguna

EntitasTabungan

18. Use Case Pencarian Data Rekening Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penghapusan Data Rekening

Kelas Antarmuka Kelas Pengendali Kelas Entitas

Page 149: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

127

W002- Form

FrameUtamaManajer

W015- Form

DialogDataRekeningNasabah

ControllerDataRekeningNasabah

Pengguna

EntitasTabungan

19. Use Case Perhitungan Bunga dan Pajak Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Perhitungan Bunga dan Pajak Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W016- Form

DialogOpsiHitungBunga

PerhitunganBunga

Pengguna

TempTabung

20. Use Case Pengubahan Daftar Bunga, Pajak, dan Administrasi

Tabungan

Kelas Antarmuka, Pengendali, dan Entitas dari Use-Case Pengubahan

Daftar Bunga, Pajak, dan Administrasi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W030- Form

DialogBungadanPajakTabungan

TempTabung

Pengguna

TempTabung

21. Use Case Pencarian Bunga, Pajak dan Administrasi Tabungan Kelas Antarmuka, Pengendali, dan Entitas dari Use-Case Pencarian

Bunga, Pajak dan Administrasi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

Page 150: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

128

W002- Form

FrameUtamaManajer

W030- Form

DialogBungadanPajakTabungan

TempTabung

Pengguna

TempTabung

22. Use Case Pemindahbukuan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pemindahbukuan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W017- Form

DialogOverbooking

Overbooking

Pengguna

EntitasTabungan

EntitasTransaksiTabungan

23. Use Case Penghapusan Transaksi Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Penghapusan Transaksi

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W019- Form

Penghapusan

transaksi

ControllerTransaksiTabungan

Pengguna

EntitasTransaksiTabungan

24. Use Case Pencetakan Laporan Nominatif Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pencetakan Laporan Nominatif Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

ReportController

Pengguna

EntitasTabungan

Page 151: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

129

W022- Form Pencetakan

Laporan Nominatif

Tabungan

EntitasNasabah

25. Use Case Pencetakan Laporan Transaksi Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pencetakan Laporan Transaksi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W023- Form Pencetakan

Laporan Transaksi

Tabungan

ReportController

Pengguna

EntitasTabungan

EntitasNasabah

26. Use Case Pencetakan Laporan Daftar Mutasi Tabungan Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pencetakan Laporan Daftar Mutasi Tabungan

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W024- Form Pencetakan

Laporan Daftar Mutasi

Tabungan

ReportController

Pengguna

EntitasTabungan

EntitasNasabah

Nasabah

Page 152: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

130

27. Use Case Pencetakan Laporan Bunga, Pajak dan Administrasi Tabungan

Kelas Antarmuka, Pengendali, dan Entitas

dari Use-Case Pencetakan Laporan Bunga, Pajak dan Administrasi

Kelas Antarmuka Kelas Pengendali Kelas Entitas

W002- Form

FrameUtamaManajer

W025- Form Pencetakan

Laporan Daftar Mutasi

Tabungan

ReportController

Pengguna

Tabungan

ProdukTabungan

Nasabah

Page 153: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

131

3.2.1.3. Diagram Kelas Lengkap

(Diagram kelas lengkap dapat dilihat pada lampiran 1 sampai dengan

lampiran 11).

3.2.1.4. Desain Tabel

Tabel 3.6. Tabel groupdef

Nama Kolom Tipe Data Keterangan Grup_id Int (3) Kunci Utama

GROUPNAME Char(20)

Tabel 3.7. Tabel kode_periode_administrasi

Nama Kolom Tipe Data Keterangan kode_periode_admin Int(3) Kunci Utama

deskripsi_periode_admin Varchar (20)

Tabel 3.8. Tabel kodegroup1tabung

Nama Kolom Tipe Data Keterangan KODE_GROUP1_ID Int (3) Kunci Utama

SINGKATAN Char(3)

DESKRIPSI char (30)

Tabel 3.9. Tabel kodestatustabungan

Nama Kolom Tipe Data Keterangan kode_status_tabungan Int (3) Kunci Utama

Deskripsi_status Varchar(10)

Page 154: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

132

Tabel 3.10. Tabel mutasi

Nama Kolom Tipe Data Keterangan mutasi_id Int (11) Kunci Utama

no_rekening Varchar(20) Kunci Lainnya 1

saldo_awal Decimal(15,2)

mutasi_debet Decimal(15,2)

mutasi_kredit Decimal(15,2)

saldo_akhir Decimal(15,2)

tgl_mutasi Date

produk_tabungan_id Varchar(3)

Tabel 3.11. Tabel pengguna

Nama Kolom Tipe Data Keterangan user_id Int (3) Kunci Utama

Username Varchar (20)

Password Varchar (50)

Last_login Datetime

grup_user_id Int(3) Kunci Lain 1

Tabel 3.12. Tabel nasabah

Nama Kolom Tipe Data Keterangan nasabah_id Varchar(20) Kunci Utama

NAMA_NASABAH Varchar (100)

alamat Varchar (100)

Page 155: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

133

Tabel 3.13. Tabel tabungan

Nama Kolom Tipe Data Keterangan

NO_REKENING Varchar (20) Kunci Utama

NO_ALTERNATIF Varchar (20)

NASABAH_ID Varchar (20) Kunci Lain 1

JENIS_TABUNGAN Char (3) Kunci Lain 2

TGL_REGISTRASI Date

SALDO_AWAL Decimal(15,2)

SALDO_SETORAN Decimal(15,2)

SALDO_PENARIKAN Decimal(15,2)

SALDO_AKHIR Decimal(15,2)

SALDO_EFEKTIF_BLN_INI Decimal(15,2)

BUNGA_BLN_INI Decimal(15,2)

PAJAK_BLN_INI Decimal(15,2)

ADM_BLN_INI Decimal(15,2)

TGL_BUNGA Date

KODE_GROUP1 Int(3) Kunci Lain 3

STATUS_AKTIF Int(1) Kunci Lain 9

PERIODE_ADM Int (1) Kunci Lain 10

LAST_TGL_ADM Date

SALDO_HITUNG_PAJAK Decimal(15,2)

PEMILIK_TABUNGAN Varchar (30)

Tabel 3.14. Tabel produk_tabungan

Nama Kolom Tipe Data Keterangan

Produk_tabungan_id Varchar (3) Kunci Utama

DESKRIPSI_JENIS_TABUNGAN Varchar (40)

SUKU_BUNGA_DEFAULT Decimal(5,2)

ADM_PER_BLN_DEFAULT Decimal(15,2)

Page 156: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

134

PERIODE_ADM_DEFAULT Tinyint(3)

SETORAN_MINIMUM_DEFAULT Decimal(15,2)

MINIMUM_DEFAULT Decimal(15,2)

PPH_DEFAULT Decimal(15,2)

TOLERANSI_TANGGAL Tinyint(1)

SALDO_MIN_BUNGA Decimal (15,3)

GRUP_TABUNGAN Char(1)

Tabel 3.15. Tabel statushitungbungablnini

Nama Kolom Tipe Data Keterangan id_status_bln Int(11) Kunci Utama

tgl_hitung_bunga Date

Tabel 3.16. Tabel tabtrans

Nama Kolom Tipe Data Keterangan TransTab_id int(11) Kunci Utama

Tgl_trans Date

No_rekening char (3) Kunci lain 1

Kode_trans Varchar (6) Kunci lain 2

Saldo_trans Decimal (15,3)

Kuitansi char (15)

NO_TELLER tinyInt(1)

USERID tinyInt(1)

POSTED tinyInt(1)

VALIDATED tinyInt(1)

SALDO_TRANS_DEBET Decimal(15,2)

SALDO_TRANS_KREDIT Decimal(15,2)

Page 157: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

135

Tabel 3.17. Tabel temp_tabung

Nama Kolom Tipe Data Keterangan no_rekening Char(20)

saldo_awal Decimal(15,2)

bunga Decimal(15,2)

pajak Decimal(15,2)

administrasi Decimal(15,2)

saldo_efektif Decimal(15,2)

saldo_pajak Decimal(15,2)

saldo_nominatif Decimal(15,2)

saldo_akhir Decimal(15,2)

tgl_bunga Date

tgl_admin_terakhir Date

Tabel 3.18. Tabel kodetranstabungan

Nama Kolom Tipe Data Keterangan Kode_transaksi_id Varchar (3) Kunci Utama

Deskripsi_trans Varchar (30)

Tipe_trans Char(1)

TOB Char(1)

Page 158: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

136

3.2.1.5. Rancangan Antarmuka

3.2.1.4.1. Login

Gambar 3.40. Rancangan Antarmuka Login

Page 159: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

137

3.2.1.4.2. Menu Utama Direksi

Gambar 3.41. Rancangan Antarmuka menu utama direksi

Page 160: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

138

3.2.1.4.3. Menu Utama Manajer

Gambar 3.42. Rancangan Antarmuka menu utama manajer

Page 161: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

139

3.2.1.4.4. Produk Tabungan

Gambar 3.43. Rancangan Antarmuka Produk Tabungan

Page 162: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

140

3.2.1.4.5. Pencarian Produk Tabungan

Gambar 3.44. Rancangan Antarmuka Pencarian Produk Tabungan

3.2.1.4.6. Menu Utama Tabel Pendukung

Gambar 3.45. Rancangan Antarmuka Menu Utama Tabel Pendukung

Page 163: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

141

3.2.1.4.7. Pengelolaan Grup Tabungan

Gambar 3.46. Rancangan Antarmuka Grup Tabungan

3.2.1.4.8. Pencarian Grup Tabungan

Gambar 3.47. Rancangan Antarmuka Pencarian Grup Tabungan

Page 164: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

142

3.2.1.4.9. Pengelolaan Kode Referensi Transaksi Tabungan

Gambar 3.48. Rancangan Antarmuka Kode Referensi Transaksi Tabungan

3.2.1.4.10. Pencarian Kode Referensi Transaksi Tabungan

Gambar 3.49. Rancangan Antarmuka Pencarian Kode Referensi Transaksi

Page 165: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

143

Tabungan

3.2.1.4.11. Pengelolaan Data Rekening

Gambar 3.50. Rancangan Antarmuka Pengelolaan Data Rekening

Page 166: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

144

3.2.1.4.12. Pencarian Data Nasabah

Gambar 3.51. Rancangan Antarmuka Pencarian Nasabah

Page 167: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

145

3.2.1.4.13. Pencarian Rekening Nasabah

Gambar 3.52. Rancangan Antarmuka Pencarian Rekening

3.2.1.4.14. Perhitungan Bunga

Gambar 3.53. Rancangan Antarmuka Perhitungan Bunga

Page 168: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

146

3.2.1.4.15. Pemindahbukuan

Gambar 3.54. Rancangan Antarmuka Pemindahbukuan

Page 169: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

147

3.2.1.4.16. Daftar Bunga dan Pajak Tabungan

Gambar 3.55. Rancangan Antarmuka Daftar Bunga dan Pajak Tabungan

Page 170: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

148

3.2.1.4.17. Penghapusan Transaksi Tabungan

Gambar 3.56. Rancangan Antarmuka Penghapusan Transaksi Tabungan

3.2.1.4.18. Periode Laporan Bunga, Pajak, dan Administrasi Tabungan

Gambar 3.57. Rancangan Antarmuka Periode Laporan Bunga, Pajak, dan

Administrasi Tabungan

Page 171: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

149

3.2.1.4.19. Periode Laporan Mutasi Tabungan

Gambar 3.58. Rancangan Antarmuka Periode Laporan Mutasi Tabungan

3.2.1.4.20. Periode Laporan Nominatif Tabungan

Gambar 3.59. Rancangan Antarmuka Periode Laporan Nominatif Tabungan

Page 172: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

150

3.2.1.4.21. Periode Laporan Transaksi Tabungan

Gambar 3.60. Rancangan Antarmuka Periode Laporan Transaksi Tabungan

Page 173: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

151

BAB IV

IMPLEMENTASI DAN HASIL

Fase Konstruksi dan Percobaan

Tahap ini adalah tahap yang menguraikan proses pembuatan

sistem secara fisik dan menganalisis hasil implementasi sistem informasi

lembaga keuangan mikro pada bank perkreditan rakyat subsistem

tabungan berdasarkan rancangan sistem yang sudah ditulis di bab III.p

4.1.1. Karakteristik Sistem Sistem informasi lembaga keuangan mikro subsistem tabungan

ini memiliki dua tampilan menu utama yang disesuaikan dengan

penggunaannya, yaitu Direksi dan Manajer. Penggunaan tampilan menu

utama sistem lembaga keuangan mikro subsistem tabungan ditentukan

pada saat pengguna login dalam sistem untuk pertama kalinya.

Pada menu Direksi berisi fitur-fitur untuk mengatur subsistem

tabungan seperti:

1. pengelolaan produk tabungan

2. pengelolaan kode grup tabungan

3. pengelolaan kode pemilik tabungan

4. pengelolan kode referensi transaksi tabungan

5. pengaturan bunga dan PPh produk tabungan

Page 174: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

152

Sedangkan pada menu Manajer berisi fitur-fitur untuk

mendukung proses transaksi sehari-hari seperti:

1. pengelolaan data rekening tabungan

2. perhitungan bunga dan pajak tabungan

3. daftar bunga dan pajak tabungan

4. pemindahbukuan tabungan

5. penghapusan transaksi

6. pencetakan laporan nominatif tabungan

7. pencetakan laporan bunga, pajak, dan administratif tabungan

8. pencetakan laporan transaksi tabungan

9. pencetakan laporan mutasi tabungan

4.1.2. Kebutuhan Sistem

4.1.2.1. Kebutuhan Perangkat Keras Server

1. Processor AMD Athlon 64 3000+

2. Memori DDR1 1,5 GB

3. Motherboard Albatron K8 SLI

4. Network card

5. Free space hard disk 500 MB

Client

1. Processor AMD Turion 64 Mobile Technology 2000 Mhz

2. Memori DDR2 1GB

Page 175: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

153

3. Motherboard Acer Aspire 5050

4. Network Adapter Realtek RTL8139/810x Family Fast

Ethernet NIC

4.1.2.2. Kebutuhan Perangkat Lunak Perangkat lunak yang digunakan untuk membangun sistem

informasi lembaga keuangan mikro ini adalah:

1. Sistem operasi Ubuntu 9.4 (Jaunty Jackalope), Linux Mint

Release 7 (Gloria) atau Windows XP Service Pack 2

2. IDE Netbeans 6.5.1

3. Java Development Kit (JDK) versi 1.6.12

4. Server basis data MySQL Server versi 5.2

5. SQL Yog Community-Edition versi 5.22a

4.2. Implementasi Sistem

4.2.1. Pembuatan Basis Data

Bagian ini mendeskripsikan tahap-tahap pembangunan basis data

baru pada MySQL yang didalamnya berisi tabel yang dibutuhkan dalam

sistem lembaga keuangan mikro. Adapun langkah-langkah yang dilakukan

untuk membuat basis data baru ini adalah sebagai berikut :

1. Membuat basis data baru dengan nama ”silkm_tabungan”

2. Membuat tabel-tabel yang dibutuhkan sistem di dalam basis

data ”silkm_tabungan”. Untuk membuat tabel tersebut,

Page 176: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

154

dapat menggunakan sintak SQL atau menggunakan

applikasi seperti SQLyog. Tabel-tabel yang dibuat pada

basis data ini adalah sebagai berikut:

1. Tabel Groupdef Nama Kolom Tipe Data Keterangan Grup_id Int (3) Kunci Utama

GROUPNAME Char(20)

2. Tabel kode_periode_administrasi Nama Kolom Tipe Data Keterangan kode_periode_admin Int(3) Kunci Utama

deskripsi_periode_admin Varchar (20)

3. Tabel kodegroup1tabung Nama Kolom Tipe Data Keterangan KODE_GROUP1_ID Int (3) Kunci Utama

SINGKATAN Char(3)

DESKRIPSI char (30)

4. Tabel kodestatustabungan Nama Kolom Tipe Data Keterangan kode_status_tabungan Int (3) Kunci Utama

Deskripsi_status Varchar(10)

5. Tabel mutasi Nama Kolom Tipe Data Keterangan mutasi_id Int (11) Kunci Utama

no_rekening Varchar(20) Kunci Lainnya 1

saldo_awal Decimal(15,2)

mutasi_debet Decimal(15,2)

Page 177: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

155

mutasi_kredit Decimal(15,2)

saldo_akhir Decimal(15,2)

tgl_mutasi Date

produk_tabungan_id Varchar(3)

6. Tabel Pengguna Nama Kolom Tipe Data Keterangan user_id Int (3) Kunci Utama

Username Varchar (20)

Password Varchar (50)

Last_login Datetime

grup_user_id Int(3) Kunci Lain 1

7. Tabel Nasabah Nama Kolom Tipe Data Keterangan nasabah_id Varchar(20) Kunci Utama

NAMA_NASABAH Varchar (100)

alamat Varchar (100)

8. Tabel Tabungan Nama Kolom Tipe Data Keterangan

NO_REKENING Varchar (20) Kunci Utama

NO_ALTERNATIF Varchar (20)

NASABAH_ID Varchar (20) Kunci Lain 1

JENIS_TABUNGAN Char (3) Kunci Lain 2

TGL_REGISTRASI Date

SALDO_AWAL Decimal(15,2)

SALDO_SETORAN Decimal(15,2)

SALDO_PENARIKAN Decimal(15,2)

SALDO_AKHIR Decimal(15,2)

Page 178: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

156

SALDO_EFEKTIF_BLN_INI Decimal(15,2)

BUNGA_BLN_INI Decimal(15,2)

PAJAK_BLN_INI Decimal(15,2)

ADM_BLN_INI Decimal(15,2)

TGL_BUNGA Date

KODE_GROUP1 Int(3) Kunci Lain 3

STATUS_AKTIF Int(1) Kunci Lain 4

LAST_TGL_ADM Date

SALDO_HITUNG_PAJAK Decimal(15,2)

PEMILIK_TABUNGAN Varchar(30)

9. Tabel Produk_Tabungan Nama Kolom Tipe Data Keterangan

Produk_tabungan_id Varchar (3) Kunci Utama

DESKRIPSI_JENIS_TABUNGAN Varchar (40)

SUKU_BUNGA_DEFAULT Decimal(5,2)

ADM_PER_BLN_DEFAULT Decimal(15,2)

PERIODE_ADM_DEFAULT Tinyint(3)

SETORAN_MINIMUM_DEFAULT Decimal(15,2)

MINIMUM_DEFAULT Decimal(15,2)

PPH_DEFAULT Decimal(15,2)

SALDO_MIN_BUNGA Decimal (15,3)

GRUP_TABUNGAN Char(1)

CREATED Date

10. Tabel statushitungbungablnini Nama Kolom Tipe Data Keterangan id_status_bln Int(11) Kunci Utama

tgl_hitung_bunga Date

Page 179: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

157

11. Tabel tabtrans Nama Kolom Tipe Data Keterangan TransTab_id int(11) Kunci Utama

Tgl_trans Date

No_rekening char (3) Kunci lain 1

Kode_trans Varchar (6) Kunci lain 2

Saldo_trans Decimal (15,3)

Kuitansi char (15)

NO_TELLER tinyInt(1)

USERID tinyInt(1)

POSTED tinyInt(1)

VALIDATED tinyInt(1)

SALDO_TRANS_DEBET Decimal(15,2)

SALDO_TRANS_KREDIT Decimal(15,2)

12. Tabel temp_tabung Nama Kolom Tipe Data Keterangan no_rekening Char(20)

saldo_awal Decimal(15,2)

bunga Decimal(15,2)

pajak Decimal(15,2)

administrasi Decimal(15,2)

saldo_efektif Decimal(15,2)

saldo_pajak Decimal(15,2)

saldo_nominatif Decimal(15,2)

saldo_akhir Decimal(15,2)

tgl_bunga Date

tgl_admin_terakhir Date

13. Tabel kodetranstabungan Nama Kolom Tipe Data Keterangan Kode_transaksi_id Varchar (3) Kunci Utama

Page 180: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

158

Deskripsi_trans Varchar (30)

Tipe_trans Char(1)

TOB Char(1)

4.2.2. Pembangunan Sistem

4.2.2.1. Arsitektur Pembangunan Sistem

Arsitektur yang digunakan untuk membangun sistem informasi

perbankan mikro ini adalah Model-View-Controller (MVC). Arsitektur

Model-View-Controller adalah sebuah pola yang terbukti membangun

proyek secara lebih efektif. Hal itu dilakukan dengan memilah komponen

antara Model, View dan Controller pada bagian – bagian dalam proyek.

Pola MVC menyediakan sebuah solosi terhadap permasalahan tersebut

dengan membagi aplikasi menjadi bagian – bagian tersendiri, Model,

View dan Controller, memisahkan antar bagian tersebut dan membuat tata

interaksi diantaranya. Diagram di atas menunjukkan 3 komponen yang

terdapat dalam pola MVC dan interaksi yang terjadi.

Page 181: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

159

Gambar 4.1. Diagram alur pola Model-View-Control

A. Model

Pola MVC memiliki layer yang disebut dengan Model yang

merepresentasikan data yang digunakan oleh aplikasi sebagaimana proses

bisnis yang diasosiasikan terhadapnya. Dengan memilahnya sebagai

bagian terpisah, seperti penampungan data, persistence, serta proses

manipulasi, terpisah dari bagian lain aplikasi.

Terdapat beberapa kelebihan dalam pendekatan ini. Pertama,

membuat detail dari data dan operasinya dapat ditempatkan pada area yang

ditentukan (Model) dibanding tersebar dalam keseluruhan lingkup

Page 182: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

160

aplikasi. Hal ini memberikan keuntungan dalam proses maintenance

aplikasi.

Kedua, dengan pemisahan total antara data dengan implementasi

interface, komponen model dapat digunakan kembali oleh aplikasi lain

yang memiliki kegunaan yang hampir sama.

B. View

Layer ini mengandung keseluruhan detail dari implementasi user

interface. Disini, komponen grafis menyediakan representasi proses

internal aplikasi dan menuntun alur interaksi user terhadap aplikasi.

Penggunaan layer View memiliki beberapa kelebihan : Pertama,

memudahkan pengabungan divisi desain dalam development team. Divisi

desain dapat berkonsentrasi pada style, look & feel, dan sebagainya, dalam

aplikasi tanpa harus memperhatikan lebih pada detail yang lain.

Dan juga, memiliki layer View yang terpisah memungkinkan

ketersediaan multiple interface dalam aplikasi. Jika inti dari aplikasi

terletak pada bagian lain (dalam Model), multiple interfaces dapat dibuat

(Swing, Web, Console), secara keseluruhan memiliki tampilan yang

berbeda namun mengeksekusi komponen Model sesuai fungsionalitas

yang diharapkan.

Page 183: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

161

C. Controller

Terakhir, arsitektur MVC memiliki layer Controller. Layer ini

menyediakan detail alur program dan transisi layer, dan juga bertanggung

jawab akan penampungan events yang dibuat oleh user dari View dan

melakukan update terhadap komponen Model menggunakan data yang

dimasukkan oleh user.

Kelebihan dalam penggunaan layer Controller secara terpisah :

Pertama, dengan menggunakan komponen terpisah untuk menampung

detail dari transisi layer, komponen view dapat didesain tanpa harus

memperhatikan bagian lain secara berlebih. Hal ini memudahkan team

pengembang multiple interface bekerja secara terpisah dari yang lain

secara simultan. Interaksi antar komponen View terabstraksi dalam

Controller.

Kedua, dengan menggunakan layer terpisah yang melakukan

update terhadap komponen Model, detail tersebut dihapus dari layer

presentasi. Layer presentasi kembali pada fungsi utamanya untuk

menampilkan data kepada user. Detail tentang bagaimana data dari user

mengubah ketetapan aplikasi disembunyikan oleh Controller. Hal ini

memisahkan dengan jelas antara presentation logic dengan business logic.

Page 184: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

162

4.2.2.2. Koneksi Sistem ke Basis Data

Untuk melakukan koneksi antara Java Dengan MySQL Server,

maka harus digunakan suatu driver / interface JDBC (Java Database

Connectivity) yang berisi kelas-kelas untuk mengakses database server.

Driver yang digunakan pada sistem ini adalah mysql-connector-java-5.0.5-

bin.jar. Berikut ini adalah langkah-langkah serta metode untuk koneksi

dari java ke basis data.

//cek driver public boolean cekLogin() { try { Class.forName("com.mysql.jdbc.Driver").newInstance(); } catch (java.lang.ClassNotFoundException cnfe) { javax.swing.JOptionPane.showMessageDialog(null, "Error loading driver:" + cnfe, "Error" + "", JOptionPane.ERROR_MESSAGE); } catch (java.lang.InstantiationException e) { javax.swing.JOptionPane.showMessageDialog(null, "Error loading driver:" + e, "Error" + "", JOptionPane.ERROR_MESSAGE); } catch (java.lang.IllegalAccessException e) { javax.swing.JOptionPane.showMessageDialog(null, "Error loading driver:" + e, "Error" + "", JOptionPane.ERROR_MESSAGE); } setConStr("jdbc:mysql://" + alamathost + ":" + port + "/" + database); try { conn = java.sql.DriverManager.getConnection(conStr, this.username, this.password); conn.setAutoCommit(true); setIsOk(true); cURLDB = getConStr(); System.out.println("Connecting to " + getConStr()); //System.out.print(conn); } catch (Exception e) { System.out.println(e); javax.swing.JOptionPane.showMessageDialog(null, "Koneksi gagal: " + e, "Error", JOptionPane.ERROR_MESSAGE); setIsOk(false); }

Page 185: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

163

// login.setLoginStatus(getIsOk()); System.out.println("getIsOk: "+getIsOk()); return getIsOk(); } /** method tutup koneksi database */ public void closeConnDB() { try { conn.close(); System.out.println("Connection to " + LoginDatabase.getConStr() + " has closed"); } catch (Exception e) { System.out.println("Oops, can't close database connection!" + e); } conn = null; } //method untuk mengetahui status koneksi data base //mengembalikan informasi tentang jenis driver yang dipakai public java.sql.Connection getConnDB() { return this.conn; } public boolean getIsOk() { return this.isOK; }

Dari kode koneksi di atas terdapat 4 metode utama yaitu

cekLogin(), closeConnDB(), getConnDB(), getIsOk().

Metode cekLogin() digunakan untuk melakukan koneksi ke

server basis data sesuai dengan nilai variabel alamathost, port, dan

database. Setelah koneksi berhasil dibangun maka proses selanjutnya

adalah melakukan verifikasi username dan password dari database yang

diakses sistem. Apabila salah satu dari proses di atas gagal, maka metode

akan membalikan nilai false dan apabila berhasil metode akan membalikan

nilai true.

Page 186: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

164

Metode closeConnDB() digunakan untuk menutup koneksi

database apabila sistem berhenti.

Metode getConnDB() digunakan untuk mendapatkan informasi

koneksi dan driver yang digunakan untuk membangun koneksi basis data

di dalam metode cekLogin().

Metode getIsOK() digunakan untuk mendapatkan status koneksi

basis data yang dibangun.

4.2.2.3. Penanganan Verifikasi Direksi dan Manajer

Sistem informasi lembaga keuangan mikro menggunakan basis

data untuk menyimpan nama pengguna dan tingkat akses aplikasi untuk

seorang Manajer dan Direksi.

Tabel pada basis data ”bukp_skripsi” yang digunakan adalah

tabel pengguna dan tabel groupdef. Tabel pengguna berfungsi untuk

menyimpan username dan pasword pengguna sistem lembaga keuangan

mikro, sedangkan tabel groupdef berfungsi untuk menyimpan definisi dari

grup dari pengguna sistem. Berikut ini adalah tampilan login sistem.

Page 187: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

165

Gambar 4.1. Tampilan Login

Metode yang digunakan untuk verifikasi pengguna Direksi dan

Manajer adalah sebagai berikut:

/**method for login*/ public boolean loginProcedure(String tglAplikasi, String tglKonfirmAplikasi, String username, String password) { login = new Login(); boolean kondisi = false; if (!tglAplikasi.equals(tglKonfirmAplikasi)) { JOptionPane.showMessageDialog(null, "Maaf, Tanggal Aplikasi Dengan Konfirmasi Tanggal Tidak Sesuai", "Kesalahan -- Tanggal Aplikasi", JOptionPane.ERROR_MESSAGE); kondisi = false; } else { //lakukan pemeriksaan ke database java.util.Vector data = new java.util.Vector(); data.addElement(username); data.addElement(password); if (cekLogin(data)) { login.loginAsUser(entitasPengguna.getUsername(), getGroupName());

Page 188: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

166

if (getUserId().equals("1")) { FrameUtamaDireksi frmUtamaAdmin = new FrameUtamaDireksi(false, new LoginHandler().getLastLogin(entitasPengguna.getUsername(), entitasPengguna.getPassword())); frmUtamaAdmin.setVisible(true); System.out.println(" \nmembuka frame utama admin"); } else if (getUserId().equals("12")) { FrameUtamaManajer frmManajer = new FrameUtamaManajer("tabungan", false, new LoginHandler().getLastLogin(entitasPengguna.getUsername(), entitasPengguna.getPassword())); frmManajer.setVisible(true); System.out.println(" \nmembuka frame utama manajer"); } else { JOptionPane.showMessageDialog(null, "No Frames to Show", "Error", JOptionPane.ERROR_MESSAGE); System.exit(0); } } else if (!cekLogin(data)) { javax.swing.JOptionPane.showMessageDialog(null, "Username dan password yang dimasukkan tidak sesuai!", "Pesan...", javax.swing.JOptionPane.ERROR_MESSAGE); } kondisi = true; } return kondisi; }

Dari kode verifikasi pengguna di atas, proses pertama yang

dilakukan adalah memeriksa tanggal aplikasi dengan konfirmasi tanggal

aplikasi yang dimasukkan pengguna. Tanggal aplikasi menjadi sangat

penting untuk dikonfirmasi karena nantinya akan menjadi semua tanggal

transaksi tabungan secara default. Jika tanggal aplikasi sama maka proses

akan dilanjutkan dengan memeriksa username dan password yang

dimasukkan pengguna dengan data yang ada di dalam basis data, jika tidak

Page 189: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

167

maka akan memunculkan pesan bahwa tanggal aplikasi tidak sama.

Proses verifikasi pengguna dilakukan pada metode

cekLogin(java.util.Vector data). Jika metode cekLogin(data)

mengembalikan nilai true maka metode

login.loginAsUser(entitasPengguna.getUsername(),

getGroupName()) akan dipanggil untuk memberitahukan pengguna,

bahwa mereka masuk ke dalam sistem sebagai Direksi atau Manajer.

Selanjutnya sistem akan memanggil tampilan utama sesuai dengan akses

dari pengguna. Jika userId pengguna sama dengan 1 maka pengguna akan

masuk ke dalam sistem sebagai Direksi tabungan. Jika pengguna memiliki

idUser sama dengan 12 maka pengguna akan masuk ke dalam sistem

sebagai Manajer tabungan. Jika metode cekLogin(data)mengembalikan

nilai false, maka akan memunculkan pesan kesalahan bahwa username

dengan password yang dimasukkan pengguna tidak seusuai dengan data

pengguna yang ada dalam basis data sistem informasi lembaga keuangan

mikro subsistem tabungan.

Page 190: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

168

Gambar 4.2. Tampilan Utama Direksi

Page 191: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

169

Gambar 4.3. Tampilan Utama Manajer

4.2.2.4. Pengelolaan Produk Tabungan

Dalam pengelolaan produk tabungan memiliki dua buah tampilan

yaitu tampilan utama produk tabungan dan tampilan pencarian produk

tabungan. Pada tampilan utama produk tabungan digunakan untuk proses

penambahan, pengubahan dan penghapusan produk tabungan. Tampilan

pencarian produk tabungan digunakan untuk mencari produk tabungan

tertentu. Pencarian produk tabungan juga digunakan untuk memulai proses

pengubahan dan penghapusan produk tabungan.

Page 192: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

170

4.2.2.1. Penambahan Produk Tabungan

Fitur penambahan produk tabungan digunakan untuk membuat

suatu produk tabungan yang nantinya akan ditawarkan kepada nasabah.

Gambar 4.4. Tampilan Utama Pengelolaan Produk Tabungan

Kode untuk menangkap kejadian yang dilakukan Direksi ketika

menekan tombol simpan dapat dilihat di bawah ini.

private void btnHapusProdTabActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

String namaProdTab = jTextFieldNamaProdTab.getText();

java.util.Vector data = new Vector();

String kodeProdTab = jTextFieldKodeProdTab.getText();

Page 193: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

171

if (controllerProdukTabungan.deleteData(kodeProdTab)) {

this.setData(controllerProdukTabungan.searchingPreviousId());

} else {

System.out.println("gagal menghapus produk tabungan");

}

}

private void btnSimpanProdTabActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Vector dataCollector = new java.util.Vector();

dataCollector.addElement(jTextFieldKodeProdTab.getText());//0 inPRODUK_TABUNGAN_ID

dataCollector.addElement(jTextFieldNamaProdTab.getText());//1 inDESKRIPSI_JENIS_TABUNGAN

dataCollector.addElement(numericTextFieldPersenBunga.getText());//2 inSUKU_BUNGA_DEFAULT

dataCollector.addElement(numericTextFieldBesarnyaAdmin.getText());//3 inADM_PER_BLN_DEFAULT

if (jComboBoxBulanBiayaAdmin.getSelectedIndex() == 0) {

dataCollector.addElement("1");// 4 inPERIODE_ADM_DEFAULT

} else {

dataCollector.addElement("2"); //4 inPERIODE_ADM_DEFAULT

Page 194: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

172

}

dataCollector.addElement(numericTextFieldSetoranMinimum.getText());//5 inSETORAN_MINIMUM_DEFAULT

dataCollector.addElement(numericTextFieldSaldoMinumum.getText());//6 inMINIMUM_DEFAULT

dataCollector.addElement(numericTextFieldPph.getText());//7 inPPH_DEFAULT

dataCollector.addElement(jTextFieldAwalSetorProdTab.getText()); //8 inTOLERANSI_TANGGAL

dataCollector.addElement(jTextFieldAwalSetorProdTab.getText());//9 inSETORAN_PER_BLN_DEFAULT

dataCollector.addElement(numericTextFieldSaldoEfektifMinTerhitungBunga.getText());//10 inSALDO_MIN_BUNGA

if (jComboBoxGrupProdTab.getSelectedIndex() == 0) {

dataCollector.addElement("1");//11 inGRUP_TABUNGAN

} else if (jComboBoxGrupProdTab.getSelectedIndex() == 1) {

dataCollector.addElement("2");//11inGRUP_TABUNGAN

} else {

dataCollector.addElement("3");//11 inGRUP_TABUNGAN

}

if (controllerProdukTabungan.InsertUpdateCheck(dataCollector)) {

this.setData(controllerProdukTabungan.searchingPreviousId());

Page 195: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

173

} else {

System.out.println("gagal memasukkan data dalam basis data");

}

}

Dari baris perintah di atas semua masukan dari Direksi akan

ditampung dalam sebuah vector data yang bernama dataCollector. Setelah

data masukan dari Direksi dikumpulkan maka akan dipanggil sebuah

metode pengendali dari kelas ControllerProdukTabungan yaitu

InsertUpdateCheck(java.util.Vector). Baris perintah metode

pengendali InsertUpdateCheck(java.util.Vector) dapat dilihat di

bawah ini.

public boolean InsertUpdateCheck(java.util.Vector dataInput) {

boolean statusInput = false;

if (dataInput.get(1).toString().isEmpty()) { // nama produk tabungan kosong

JOptionPane.showMessageDialog(null, "Maaf, Nama Produk Tabungan Tidak Dapat Kosong",

"Kesalahan -- Kesalahan Masukan", JOptionPane.ERROR_MESSAGE);

} else {

if (dataInput.get(0).toString().isEmpty()) {

setInsertCondition(this.insertData(dataInput));

//insert data

if (isInsertCondition()) {

Page 196: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

174

JOptionPane.showMessageDialog(null, "Data Produk Tabungan " + dataInput.get(1).toString() + " Berhasil Disimpan",

"Berhasil Mengubah Data Produk Tabungan", JOptionPane.INFORMATION_MESSAGE);

} else {

JOptionPane.showMessageDialog(null, "Data Produk Tabungan " + dataInput.get(1).toString() + " Gagal Disimpan",

"Gagal Mengubah Data Produk Tabungan", JOptionPane.ERROR_MESSAGE);

}

statusInput = isInsertCondition();

//update data

} else {

..................

..................

..................

}

}

System.out.println("inputStatus: " + statusInput);

return statusInput;

}

Dalam metode InsertUpdateCheck dilakukan pemeriksaan

terhadap masukkan dari Direksi. Jika ada masukan yang tidak sesuai,

maka metode InsertUpdateCheck akan memunculkan pesan kesalahan.

Jika semua masukan dari Direksi sudah benar, sistem kemudian

memperhatikan nilai dari nomor identitas produk tabungan kosong atau

Page 197: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

175

tidak. Perintah untuk memeriksa kondisi nomor identitas produk tabungan

kosong atau tidak menggunakan perintah

dataInput.get(0).toString().isEmpty(). Jika nomor identitas

produk tabungan kosong maka dilakukan proses penambahan produk

tabungan. Jika tidak kosong maka dilakukan proses pengubahan produk

tabungan.

Baris perintah untuk membuat produk tabungan dapat dilihat di

bawah ini.

public boolean masukProdukTabungan(java.util.Vector data) throws SQLException {

//int lastIdxRec = getRowCount();

boolean kondisi = false;

String sql = "{ call sp_masuk_prodTab(" +

"?,?,?,?,?,?,?,?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, (String) data.get(1));

Page 198: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

176

pstmt.setString(2, (String) data.get(2));

pstmt.setString(3, (String) data.get(3));

pstmt.setString(4, (String) data.get(4));

pstmt.setString(5, (String) data.get(5));

pstmt.setString(6, (String) data.get(6));

pstmt.setString(7, (String) data.get(7));

pstmt.setString(8, (String) data.get(8));

pstmt.executeUpdate();

//kirim sql ke database server dan jalankan

pstmt.close();

kondisi = true;

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

kondisi = false;

}

return kondisi;

}

Page 199: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

177

Untuk membuat data produk tabungan pertama-tama akan

ditentukan level dari transaksi basis data yang akan dilakukan. Pada

metode ini mengunakan level transaksi serializable. Untuk menjalankan

stored procedure sp_masuk_prodTab maka menggunakan perintah

pstmt.executeUpdate(). Setelah itu, memberikan nilai true pada

boolean kondisi sebagai flag keberhasilan membuat produk tabungan.

Kemudian proses transaksi dalam basis data menggunakan mode commit

yang artinya nilai-nilai perubahan dari proses transaksi saat ini dijadikan

permanen di basis data dan melepaskan semua kunci basis data yang

digunakan oleh objek koneksi transaksi.

Metode masukProdukTabungan(java.util.Vector data)

akan mengembalikan sebuah nilai false jika produk tabungan gagal dibuat

dan disimpan dalam basis data. Metode transaksi yang dijalankan adalah

rollback.

4.2.2.2. Pengubahan Produk Tabungan

Fitur pengubahan produk tabungan digunakan apabila Direksi

tabungan ingin mengubah produk tabungan yang sudah dibuat. Untuk

mengubah sebuah produk tabungan, seorang Direksi tabungan terlebih

dahulu mencari produk tabungan yang ingin diubah.

Baris perintah pengubahan produk tabungan di antarmuka

pengelolaan produk tabungan dapat dilihat di bawah ini.

Page 200: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

178

public boolean InsertUpdateCheck(java.util.Vector dataInput) {

boolean statusInput = false;

if (dataInput.get(1).toString().isEmpty()) { // nama produk tabungan kosong

JOptionPane.showMessageDialog(null, "Maaf, Nama Produk Tabungan Tidak Dapat Kosong",

"Kesalahan -- Kesalahan Masukan", JOptionPane.ERROR_MESSAGE);

} else {

if (dataInput.get(0).toString().isEmpty()) {

//insert data

....................

......................

......................

//update data

} else {

setUpdateCondition(this.updateData(dataInput));

if (isUpdateCondition()) {

JOptionPane.showMessageDialog(null, "Data Produk Tabungan " + dataInput.get(1).toString() + " Berhasil Diubah",

"Berhasil Mengubah Data Produk Tabungan", JOptionPane.INFORMATION_MESSAGE);

} else {

JOptionPane.showMessageDialog(null, "Data Produk Tabungan " + dataInput.get(1).toString() + " Gagal Diubah",

"Gagal Mengubah Data Produk Tabungan", JOptionPane.ERROR_MESSAGE);

}

statusInput = isUpdateCondition();

Page 201: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

179

}

}

System.out.println("inputStatus: " + statusInput);

return statusInput;

}

Perbedaannya pada pengubahan produk tabungan dengan

penambahan produk tabungan berada pada metode pengendali yang

memperhatikan nilai dari nomor identitas produk tabungan di field

jTextFieldKodeProdTab kosong atau tidak. Jika tidak kosong maka akan

dilakukan proses pengubahan data sesuai dengan nilai yang ada pada field

jTextFieldKodeProdTab. Jika kosong maka akan melakukan proses

penambahan produk tabungan.

Baris perintah pengubahan produk tabungan dapat dilihat di

bawah ini

public boolean ubahProdukTabungan(java.util.Vector data) throws SQLException {

boolean kondisi = false;

String sql = "{ call sp_ubah_prodTab(?,?,?,?,?,?,?,?,?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

Page 202: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

180

pstmt.setString(1, (String) data.get(0));

pstmt.setString(2, (String) data.get(1));

pstmt.setString(3, (String) data.get(2));

pstmt.setString(4, (String) data.get(3));

pstmt.setString(5, (String) data.get(4));

pstmt.setString(6, (String) data.get(5));

pstmt.setString(7, (String) data.get(6));

pstmt.setString(8, (String) data.get(7));

pstmt.setString(9, (String) data.get(8));

pstmt. executeUpdate();

pstmt.close();

kondisi = true;

cn.commit();

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

kondisi = false;

}

return kondisi;

}

Proses pengubahan produk tabungan menggunakan level

transaksi basis data serializable. Untuk menjalankan stored procedure

Page 203: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

181

sp_ubah_prodTab maka menggunakan perintah

pstmt.executeUpdate(). Setelah itu, memberikan nilai true pada

boolean kondisi sebagai flag keberhasilan mengubah produk tabungan.

Jika terjadi kegagalan dalam proses pengubahan produk tabungan maka

mode transaksi yang dijalankan adalah rollback.

4.2.2.3. Penghapusan Produk Tabungan

Fitur penghapusan produk tabungan dijalankan apabila Direksi

tabungan ingin menghapus produk tabungan yang ada dalam basis data.

Untuk menghapus produk tabungan, maka Direksi harus mencari produk

tabungan yang ingin dihapus terlebih dahulu.

Baris perintah untuk metode pengendali penghapusan produk

dapat dilihat dibawah ini.

public boolean deleteData(String keywordDelete) {

// boolean deleteCondition = false;

if (keywordDelete.isEmpty()) {

JOptionPane.showMessageDialog(null, "Maaf, Anda Tidak Memilih Data Tabungan Untuk Dihapus ",

" KESALAHAN -- Tidak Memilih Data Untuk Dihapus", JOptionPane.ERROR_MESSAGE);

} else {

if (javax.swing.JOptionPane.showConfirmDialog(null,

"Apakah Yakin Menghapus Produk Tabungan ? ",

"Konfirmasi..",

Page 204: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

182

javax.swing.JOptionPane.YES_NO_OPTION) ==

javax.swing.JOptionPane.YES_OPTION) {

if (checkStatusProdTab(keywordDelete)) { //jika produk tabungan tidak digunakan

try {

setDeleteCondition(entitasProdukTabungan.hapusProdukTabungan(keywordDelete)); //lakukang pengahapusan

if (isDeleteCondition()) { //jika pengapusan berhasil

JOptionPane.showMessageDialog(null, "Data Produk Tabungan Berhasil Dihapus",

"Berhasil Menghapus Produk Tabungan", JOptionPane.INFORMATION_MESSAGE);

} else { //tidak berhasil menghapus

JOptionPane.showMessageDialog(null, "Data Produk Tabungan Gagal Dihapus", "Gagal Menghapus Produk Tabungan",

JOptionPane.ERROR_MESSAGE);

}

} catch (SQLException ex) {

ex.printStackTrace();

}

} else { //jika produk tabungan digunakan.

JOptionPane.showMessageDialog(null, "Maaf, produk tabungan masih digunakan.",

" Kesalahan-- Tidak dapat menghapus data", JOptionPane.ERROR_MESSAGE);

}

}

Page 205: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

183

}

return isDeleteCondition();

}

Baris perintah kelas pengendali penghapusan produk tabungan di

atas berfungsi untuk memeriksa masukan dari Direksi. Jika ada masukan

yang tidak sesuai maka sistem akan memunculkan pesan kesalahan. Jika

sudah benar maka sistem akan melakukan proses penghapusa dengan

memanggil metode hapusProdukTabungan(String) di kelas

EntitasProdukTabungan.

Baris perintah penghapusan produk tabungan di kelas

EntitasProdukTabungan dapat dilihat di bawah ini.

public boolean hapusProdukTabungan(String data) throws SQLException {

boolean kondisi = false;

String sql = "{ call sp_hapus_prodTab(?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, data);

//kirim sql ke database server dan jalankan

pstmt.executeQuery();

Page 206: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

184

pstmt.close();

//ubah kondisi untuk memberitahukan keberhasilan

//memasukkan produk tabungan

kondisi = true;

cn.commit();

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

kondisi = false;

}

return kondisi;

}

Untuk menghapus data produk tabungan pertama-tama akan

ditentukan level dari transaksi basis data yang akan dilakukan. Pada

metode ini mengunakan level transaksi serializable.

Untuk menjalankan stored procedure sp_hapus_prodTab maka

menggunakan perintah pstmt.executeUpdate(). Setelah itu,

memberikan nilai true pada boolean kondisi sebagai flag keberhasilan

menghapus produk tabungan dan proses transaksi dalam basis data

menjalankan metode commit. Jika terjadi kegagalan dalam proses

penghapusan produk tabungan maka metode transaksi yang dijalankan

adalah rollback.

Page 207: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

185

4.2.2.4. Pencarian Produk Tabungan

Fitur pencarian produk tabungan digunakan oleh Direksi jika

ingin mencari produk tabungan tertentu. Proses pencarian produk

tabungan juga diperlukan ketika Direksi ingin mengubah dan menghapus

produk tabungan tertentu. Untuk memunculkan tampilan pencarian produk

tabungan, Direksi dapat menekan tombol “Lihat Tabel” tampilan utama

pengelolaan produk tabungan.

Gambar 4.5. Tampilan Pencarian Produk Tabungan

Untuk memulai proses pencarian produk tabungan Direksi

pertama-tama memasukkan kriteria pencarian produk tabungan di panel

Page 208: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

186

Kriteria Filter Informasi. Setelah itu Direksi akan menekan tombol

“Proses” untuk memulai proses pencarian.

Kode perintah dari metode pencarian produk tabungan dapat

dilihat dibawah ini.

public void getRecDbProdTab(String query) {

String data = “”;

queryUtama = "select PRODUK_TABUNGAN_ID, DESKRIPSI_JENIS_TABUNGAN, SUKU_BUNGA_DEFAULT,ADM_PER_BLN_DEFAULT, PERIODE_ADM_DEFAULT, SETORAN_MINIMUM_DEFAULT" +

" from produk_tabungan";

if (query != null) {

queryUtama += " where " + query;

}

System.out.println("query dari getRecDbProdTab: " + queryUtama);

try {

cn.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);

cn.setAutoCommit(false);

java.sql.Statement statement = cn.createStatement();

java.sql.ResultSet resultSet = statement.executeQuery(queryUtama);

baris.removeAllElements();

while (resultSet.next()) {

Page 209: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

187

Object[] r = {

resultSet.getString(1),

resultSet.getString(2), resultSet.getString(3),

resultSet.getString(4), resultSet.getString(5),

resultSet.getString(6)

};

data = resultSet.getString(1);

baris.addElement(r);

r = null;

}

if(data.isEmpty()){// data pencarian tidak ada

setSearchStatus(false);

}else{

setSearchStatus(true);

}

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException e) {

try {

cn.rollback();

} catch (SQLException ex) {

System.out.println(ex);

}

Page 210: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

188

e.printStackTrace();

}

queryUtama = null;

}

Untuk melakukan pencarian pertama akan diatur tingkat

transaksi dalam basis data. Dalam metode ini digunakan tingkat transaksi

repeatable read. Kemudian queryUtama dijalankan dengan perintah

statement.executeQuery(queryUtama). Hasil dari perintah

executeQuery akan mengembalikan sebuah result set yang ditampung

dalam variabel resultSet. Data-data dari result set ini nantinya akan

mengisi baris dan kolom dari tabel hasil pencarian produk tabungan.

Metode setSearchStatus(boolean) digunakan untuk

memberikan nilai balik pada proses pencarian. Jika data yang dicari ada

dalam basis data maka setSearchStatus akan bernilai true dan false jika

data pencarian produk tabungan tidak ditemukan.

4.2.2.5. Pengelolaan Grup Tabungan

Dalam pengelolaan grup tabungan memiliki dua buah tampilan

yaitu tampilan utama grup tabungan dan tampilan pencarian grup

tabungan. Pada tampilan utama grup tabungan digunakan untuk proses

penambahan, pengubahan dan penghapusan grup tabungan. Tampilan

Page 211: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

189

pencarian grup tabungan digunakan untuk mencari grup tabungan tertentu.

Pencarian grup tabungan juga digunakan untuk memulai proses

pengubahan dan penghapusan grup tabungan.

Gambar 4.6. Tampilan Pengelolaan Grup Tabungan

4.2.2.1. Penambahan Grup Tabungan

Untuk menambah grup tabungan Direksi memasukkan data grup

tabungan yang dibutuhkan. Setelah itu Direksi menekan tombol “Simpan”.

Kemudian sistem akan menjalankan perintah untuk menyimpan data grup

tabungan. Baris penyimpanan grup tabungan dapat dilihat di bawah ini.

public boolean insertUpdateCheck(java.util.Vector dataInput) {

boolean statusInput = false;

if (dataInput.get(1).toString().length() > 3) {

JOptionPane.showMessageDialog(null, "Maaf, Singkatan Tabungan Tidak Dapat Lebih Dari 3 Karakter",

"Kesalahan -- Masukan Tidak Sesuai ", JOptionPane.ERROR_MESSAGE);

} else {

Page 212: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

190

if (dataInput.get(1).toString().isEmpty() || dataInput.get(2).toString().isEmpty()) { // singkatan dan deskripsi kosong

JOptionPane.showMessageDialog(null, "Data Grup Tabungan Gagal Disimpan",

"PEMBERITAHUAN -- Gagal Menyimpan ", JOptionPane.ERROR_MESSAGE);

} else {

if (dataInput.get(0).toString().isEmpty()) { //insert data

setInsertCondition(this.insertData(dataInput)); //masukkan data dalam basis data

if (isInsertCondition()) { //memasukkan data berhasil

JOptionPane.showMessageDialog(null, "Data Grup Tabungan Berhasil Disimpan",

"PEMBERITAHUAN -- Berhasil ", JOptionPane.INFORMATION_MESSAGE);

} else { // memasukkan data gagal

JOptionPane.showMessageDialog(null, "Data Grup Tabungan Gagal Disimpan",

"PEMBERITAHUAN -- Gagal Menyimpan", JOptionPane.ERROR_MESSAGE);

}

statusInput = isInsertCondition();

} else { //update data

.........................................

..........................................

..........................................

}

}

}

Page 213: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

191

return statusInput;

}

Dalam metode ini dilakukan pemeriksaan masukan dari Direksi.

Jika ada masukan yang tidak sesuai, maka sistem akan memunculkan

pesan kesalahan. Jika masukan Direksi sudah benar maka proses akan

dilanjutkan dengan memeriksa apakah nomor identitas dari grup tabungan.

Jika kosong maka proses dilanjutkan dengan penambahan data baru grup

tabungan. Jika tidak kosong maka akan proses dilanjutkan dengan

pengubahan data grup tabungan.

Baris perintah penambahan grup tabungan dapat dilihat di bawah

ini.

public boolean masukKodeGrupTabungan(Vector dataInput) throws SQLException {

boolean kondisi = false;

setSingkatan((String) dataInput.get(1));

setDeskripsiGrup((String) dataInput.get(2));

setGrup((String) dataInput.get(3));

setJenisRekening((String) dataInput.get(4));

String query = "{call sp_masuk_kodeGrupTabungan(?,?,?,?)}";

Page 214: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

192

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement callStmt = cn.prepareCall(query);

callStmt.setString(1, getSingkatan());

callStmt.setString(2, getDeskripsiGrup());

callStmt.setString(3, getJenisRekening());

callStmt.setString(4, getGrup());

callStmt.executeUpdate();

callStmt.close();

kondisi = true;

System.out.println("condition insert on masukKodeGrupTabungan: " + kondisi);

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException e) {

cn.rollback();

e.printStackTrace();

kondisi = false;

Page 215: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

193

}

return kondisi;

}

Untuk membuat grup tabungan pertama-tama akan ditentukan

level dari transaksi basis data yang akan dilakukan. Pada metode ini

mengunakan level transaksi serializable. Untuk menjalankan stored

procedure ini maka menggunakan perintah callStmt.executeUpdate().

Setelah itu, memberikan nilai true pada boolean kondisi sebagai flag

keberhasilan pembuatan grup tabungan dan metode transaksi yang

dijalankan adalah commit. Jika proses pembuatan grup tabungan gagal

maka akan mengembalikan nilai false dan metode transaksi yang

dijalankan adalah rollback.

4.2.2.2. Pengubahan Grup Tabungan

Fitur pengubahan grup tabungan digunakan apabila Direksi

tabungan ingin mengubah grup tabungan yang sudah dibuat. Untuk

mengubah sebuah grup tabungan, seorang Direksi tabungan terlebih

dahulu mencari grup tabungan yang ingin diubah.

Perbedaannya pada pengubahan grup tabungan dengan

penambahan grup tabungan adalah pada proses pengubahan grup tabungan

akan memperhatikan nilai identitas grup tabungan di field

jTextFieldKodeGrupId kosong atau tidak. Jika tidak kosong maka akan

dilakukan proses pengubahan data grup tabungan sesuai dengan nilai yang

Page 216: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

194

ada pada field jTextFieldKodeGrupId. Jika kosong maka akan melakukan

proses penambahan grup tabungan.

Baris perintah pengubahan grup tabungan di antarmuka

pengelolaan grup tabungan dapat dilihat di bawah ini.

if (jTextFieldSingkatan.getText().length() > 3) { // if singkatan character less than 3 characters

JOptionPane.showMessageDialog(null, "Maaf, Singkatan Grup Tabungan Tidak Dapat Lebih Dari 3 Karakter",

"Kesalahan -- Masukan Tidak Sesuai ", JOptionPane.ERROR_MESSAGE);

} else {

if (jTextFieldKodeGrupId.getText().isEmpty()) { // insert data

...........................

...........................

............................

} else { // update data

this.setUpdateCondition(controllerKodeGrupTabungan.updateData(dataCollector));

if (this.isUpdateCondition()) {

JOptionPane.showMessageDialog(null, "Data Kode Grup Tabungan Berhasil Disimpan",

"PEMBERITAHUAN -- Berhasil ", JOptionPane.INFORMATION_MESSAGE);

} else {

JOptionPane.showMessageDialog(null, "Data Kode Grup Tabungan Gagal Disimpan",

"PEMBERITAHUAN -- Gagal Menyimpan ", JOptionPane.ERROR_MESSAGE);

}

}

Page 217: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

195

}

Dari baris perintah di atas dapat dilihat bahwa dilakukan

pemeriksaan terlebih dahulu apakah ada nilai di komponen

jTextFieldKodeGrupId. Jika ada maka proses pengubahan grup tabungan

akan dijalankan, jika tidak ada maka proses penambahan grup tabungan

yang dijalankan.

Baris perintah pengubahan grup tabungan dapat dilihat di bawah

ini

public boolean ubahKodeGrupTabungan(java.util.Vector dataInput) throws SQLException {

boolean kondisi = false;

int ubahKodeGrupTabungan = 0;

setKodeGrupId((String) dataInput.get(0));

setSingkatan((String) dataInput.get(1));

setDeskripsiGrup((String) dataInput.get(2));

setGrup((String) dataInput.get(3));

setJenisRekening((String) dataInput.get(4));

tabungan.setNoRekening((String) dataInput.get(5));

String query = "{call sp_ubah_kode_grup_tabungan(?,?,?,?,?,?,?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement callStmt = cn.prepareCall(query);

Page 218: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

196

callStmt.setString(1, getKodeGrupId());

callStmt.setString(2, getSingkatan());

callStmt.setString(3, getDeskripsiGrup());

callStmt.setString(4, getGrup());

callStmt.setString(5, getJenisRekening());

callStmt.setString(6, tabungan.getNoRekening());

callStmt.registerOutParameter(7, java.sql.Types.INTEGER);

callStmt.executeUpdate();

ubahKodeGrupTabungan = callStmt.getInt(7);

callStmt.close();

if (ubahKodeGrupTabungan != 0) { // proses pengubahan kodeGrupTabungan Berhasil

query = "{call sp_ubah_kode_grup_tabungan_step_2(?,?,?,?)}";

callStmt = cn.prepareCall(query);

callStmt.clearParameters();

callStmt.setString(1, getKodeGrupId());

callStmt.setString(2, tabungan.getNoRekening());

callStmt.registerOutParameter(3, java.sql.Types.INTEGER);

callStmt.setString(4, getGrup());

callStmt.executeUpdate();

System.out.println("transaction on ubahKodeGrupTabungan: " + callStmt.getInt(3));

callStmt.close();

}

cn.commit();

cn.setAutoCommit(true);

Page 219: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

197

kondisi = true;

} catch (SQLException e) {

e.printStackTrace();

kondisi = false;

cn.rollback();

}

return kondisi;

}

Untuk mengubah data grup tabungan pertama-tama akan

ditentukan level dari transaksi basis data yang akan dilakukan. Pada

metode ini mengunakan level transaksi serializable. Untuk menjalankan

stored procedure sp_ubah_kode_grup_tabungan maka menggunakan

perintah pstmt.executeUpdate(). Jika berhasil mengubah grup tabungan

metode ubahKodeGrupTabungan(java.util.Vector) akan

mengembalikan nilai true dan metode transaksi yang dijalankan adalah

commit . Jika terjadi kegagalan dalam proses pengubahan grup tabungan

maka metode ubahKodeGrupTabungan(java.util.Vector) akan

mengembalikan nilai false dan mode transaksi yang dijalankan adalah

rollback.

Page 220: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

198

4.2.2.3. Penghapusan Kode Grup Tabungan

Fitur penghapusan grup tabungan dijalankan apabila Direksi

tabungan ingin menghapus grup tabungan yang ada dalam basis data.

Untuk menghapus grup tabungan, maka Direksi harus mencari grup

tabungan yang ingin dihapus terlebih dahulu.

Baris perintah untuk penghapusan grup dapat dilihat dibawah ini.

public boolean hapusKodeGrupTabungann(Vector dataCollector) throws SQLException {

boolean kondisi = false;

setKodeGrupId((String) dataCollector.get(0));

String query = "{call sp_hapus_kodeGrupTabungan(?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement callStmt = cn.prepareCall(query);

callStmt.setString(1, getKodeGrupId());

);

callStmt.executeUpdate();

cn.commit();

cn.setAutoCommit(true);

kondisi = true;

} catch (Exception e) {

kondisi = false;

e.printStackTrace();

Page 221: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

199

cn.rollback();

}

return kondisi;

}

Untuk menghapus data grup tabungan pertama-tama akan

ditentukan level dari transaksi basis data yang akan dilakukan. Pada

metode ini mengunakan level transaksi serializable.

Untuk menjalankan stored procedure sp_hapus_prodTab maka

menggunakan perintah pstmt.executeUpdate(). Jika berhasil

menghapus grup tabungan maka nilai true diberikan kepada boolean

kondisi sebagai flag keberhasilan menghapus grup tabungan dan metode

transaksi yang dijalankan adalah commit. Jika terjadi kegagalan dalam

proses penghapusan grup tabungan maka boolean kondisi sebagai nilai

balik akan bernilai falsei dan metode transaksi yang dijalankan adalah

rollback .

4.2.2.4. Pencarian Grup Tabungan

Fitur pencarian grup tabungan digunakan oleh Direksi jika ingin

mencari grup tabungan tertentu. Proses pencarian grup tabungan juga

diperlukan ketika Direksi ingin mengubah dan menghapus grup tabungan

grup. Untuk memunculkan tampilan pencarian grup tabungan, Direksi

dapat menekan tombol “Lihat Tabel” tampilan utama pengelolaan grup

tabungan.

Page 222: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

200

Gambar 4.7. Tampilan Pencarian Grup Tabungan

Untuk memulai proses pencarian grup tabungan Direksi pertama-

tama memasukkan kriteria pencarian grup tabungan di panel Kriteria Filter

Informasi. Setelah itu Direksi akan menekan tombol “Proses” untuk

memulai proses pencarian.

Kode perintah dari metode pencarian grup tabungan dapat dilihat

dibawah ini.

public void getRecDbKodeGrupTabungan(String query) {

this.queryUtama = "select " + fieldKodeGrupId + ",SINGKATAN,DESKRIPSI,JENIS_REKENING" +

" from " + kodeGrupTabungan + " ";

Page 223: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

201

if (query != null) {

this.queryUtama += " where " + query;

}

System.out.println("query di getRecDbKodeGrupTabungan " + this.queryUtama);

try {

cn.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);

cn.setAutoCommit(true);

java.sql.Statement statement = cn.createStatement();

java.sql.ResultSet resultSet = statement.executeQuery(this.queryUtama);

baris.removeAllElements();

while (resultSet.next()) {

Object[] r = {resultSet.getString(1),

resultSet.getString(2),

resultSet.getString(3),

resultSet.getString(4)

};

baris.addElement(r);

r = null;

}

if (baris.isEmpty()) {

setSearchStatus(false);

} else {

Page 224: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

202

setSearchStatus(true);

}

cn.commit();

cn.setAutoCommit(true);

} catch (java.sql.SQLException e) {

try {

cn.rollback();

} catch (SQLException ex) {

System.out.println(ex);

}

System.out.println("Error : " + e);

}

query = null;

}

Untuk melakukan pencarian pertama akan diatur tingkat

transaksi dalam basis data. Dalam metode ini digunakan tingkat transaksi

repeatable read. Kemudian queryUtama dijalankan dengan perintah

statement.executeQuery(queryUtama). Hasil dari perintah

executeQuery akan mengembalikan sebuah result set yang ditampung

dalam variabel resultSet. Data-data dari result set ini nantinya akan

mengisi baris dan kolom dari tabel hasil pencarian grup tabungan.

Page 225: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

203

Metode setSearchStatus(boolean) digunakan untuk

memberikan nilai balik pada proses pencarian. Jika data yang dicari berada

dalam basis data maka setSearchStatus akan bernilai true atau false jika

data pencarian grup tabungan tidak ditemukan.

4.2.2.6. Pengelolaan Kode Referensi Transaksi Tabungan

Fitur pengelolaan kode referensi transaksi tabungan terdiri dari

dua tampilan yaitu, tampilan utama pengelolaan kode referensi transaksi

tabungan dan tampilan pencarian kode referensi transaksi tabungan.

Dalam tampilan utama pengelolaan kode referensi transaksi tabungan

digunakan untuk penambahan, pengubahan, dan penghapusan kode

referensi transaksi tabungan. Tampilan pencarian kode referensi transaksi

tabungan digunakan untuk mencari kode referensi transaksi tabungan

tertentu.

Gambar 4.8. Tampilan Pengelolaan Kode Referensi Transaksi Tabungan

Page 226: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

204

4.2.2.6.1. Penambahan Kode Referensi Transaksi Tabungan

Fitur penambahan kode referensi transaksi tabungan digunakan

jika Direksi ingin menambahkan kode referensi transaksi tabungan yang

baru.

Untuk proses penambahan kode referensi transaksi tabungan

Direksi memasukkan data-data kode referensi yang baru dan kemudian

menekan tombol simpan.

Baris perintah untuk memasukkan kode referensi dalam basis

data dapat dilihat di bawah ini.

public boolean insertUpdateCheckKodeRefTransTab(java.util.Vector dataInput) {

boolean statusInput = false;

if (dataInput.get(1).toString().isEmpty()) {

JOptionPane.showMessageDialog(null, "Maaf, Nama Kode Referensi Transaksi Tabungan Tidak Dapat Kosong",

"Kesalahan -- Kesalahan Masukan", JOptionPane.ERROR_MESSAGE);

}

if (dataInput.get(0).toString().isEmpty()) {

setKondisiSimpan(this.insertData(dataInput));

if (isKondisiSimpan()) {

JOptionPane.showMessageDialog(null, "Data Kode Transaksi Tabungan Berhasil Ditambahkan",

Page 227: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

205

"PEMBERITAHUAN -- BERHASIL ", JOptionPane.INFORMATION_MESSAGE);

} else {

JOptionPane.showMessageDialog(null, "Data Kode Transaksi Tabungan Gagal Ditambahkan",

"PEMBERITAHUAN -- GAGAL ", JOptionPane.ERROR_MESSAGE);

}

statusInput = isKondisiSimpan();

} else {

//update data

...........................

........................

........................

}

return statusInput;

}

Dalam metode ini dilakukan pemeriksaan masukan dari Direksi.

Jika ada masukan yang tidak sesuai, maka sistem akan memunculkan

pesan kesalahan. Jika masukan Direksi sudah benar maka proses akan

dilanjutkan dengan memeriksa apakah nomor identitas dari kode referensi

tabungan. Jika kosong maka proses dilanjutkan dengan penambahan data

baru kode referensi tabungan. Jika tidak kosong maka akan proses

dilanjutkan dengan pengubahan data kode referensi tabungan.

Page 228: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

206

Baris perintah penambahan grup tabungan dapat dilihat di bawah

ini.

public boolean masukKodeReferensi() throws SQLException {

String sql = "{ call sp_masuk_transtab(?,?,?,?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, this.getDeskripsiTrans());

pstmt.setString(2, this.getTypeTrans());

pstmt.setString(3, this.getGlTrans());

pstmt.setString(4, this.getTob());

pstmt.executeUpdate();

//kirim sql ke database server dan jalankan

pstmt.close();

setInsertStatus(true);

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

setInsertStatus(false);

Page 229: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

207

}

return isInsertStatus();

}

Untuk membuat kode referensi tabungan pertama-tama akan

ditentukan level dari transaksi basis data yang akan dilakukan. Pada

metode ini mengunakan level transaksi serializable. Untuk menjalankan

stored procedure sp_masuk_transtab maka menggunakan perintah

callStmt.executeUpdate(). Setelah itu, memberikan nilai true pada

boolean kondisi sebagai flag keberhasilan pembuatan grup tabungan dan

metode transaksi yang dijalankan adalah commit. Jika proses pembuatan

grup tabungan gagal maka akan mengembalikan nilai false dan metode

transaksi yang dijalankan adalah rollback.

4.2.2.6.2. Pengubahan Kode Referensi Transaksi Tabungan

Fitur pengubahan kode referensi transaksi tabungan digunakan

apabila Direksi tabungan ingin mengubah kode referensi transaksi

tabungan yang sudah dibuat. Untuk mengubah sebuah kode referensi

transaksi tabungan, seorang Direksi tabungan terlebih dahulu mencari

kode referensi transaksi tabungan yang ingin diubah.

Perbedaannya pada pengubahan kode referensi transaksi

tabungan dengan penambahan kode referensi transaksi tabungan adalah

pada proses pengubahan kode referensi transaksi tabungan akan

Page 230: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

208

memperhatikan nilai identitas kode referensi transaksi tabungan kosong

atau tidak ketika dimasukkan oleh Direksi. Jika tidak kosong maka akan

dilakukan proses pengubahan data kode referensi transaksi tabungan. Jika

kosong maka akan melakukan proses penambahan kode referensi transaksi

tabungan.

Baris perintah pengubahan kode referensi transaksi tabungan di

antarmuka pengelolaan kode referensi transaksi tabungan dapat dilihat di

bawah ini.

public boolean insertUpdateCheckKodeRefTransTab(java.util.Vector dataInput) {

boolean statusInput = false;

if (dataInput.get(1).toString().isEmpty()) {

JOptionPane.showMessageDialog(null, "Maaf, Nama Kode Referensi Transaksi Tabungan Tidak Dapat Kosong",

"Kesalahan -- Kesalahan Masukan", JOptionPane.ERROR_MESSAGE);

}

if (dataInput.get(0).toString().isEmpty()) {

................

........................

........................

} else {

setKondisiUbah(this.updateData(dataInput));

Page 231: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

209

if (isKondisiUbah()) {

JOptionPane.showMessageDialog(null, "Data Kode Transaksi Tabungan Berhasil Diubah",

"PEMBERITAHUAN -- BERHASIL ", JOptionPane.INFORMATION_MESSAGE);

} else {

JOptionPane.showMessageDialog(null, "Data Kode Transaksi Tabungan Gagal Diubah",

"PEMBERITAHUAN -- GAGAL ", JOptionPane.ERROR_MESSAGE);

}

statusInput = isKondisiUbah();

}

return statusInput;

}

Dari baris perintah di atas dapat dilihat bahwa dilakukan

pemeriksaan terlebih dahulu terhadap masukan dari Direksi. Jika

ditemukan masukan yang tidak sesuai maka sistem akan memunculkan

pesan kesalahan. Jika masukan dari Direksi sudah sesuai maka proses

dilanjutkan dengan pengubahan data kode referensi transaksi tabungan.

Baris perintah pengubahan kode referensi transaksi tabungan

dapat dilihat di bawah ini

public boolean ubahKodeReferensi() throws SQLException {

// boolean kondisi = false;

// int lastIdxRec = getRowCount();

Page 232: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

210

String sql = "{ call sp_ubah_transtab(?,?,?,?,?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

pstmt.setString(1, this.getKodeTransaksiId());

pstmt.setString(2, this.getDeskripsiTrans());

pstmt.setString(3, this.getTypeTrans());

pstmt.setString(4, this.getGlTrans());

pstmt.setString(5, this.getTob());

pstmt.executeUpdate();

//kirim sql ke database server dan jalankan

pstmt.close();

setUpdateStatus(true);

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

setUpdateStatus(false);

}

return isUpdateStatus();

}

Page 233: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

211

Untuk mengubah data kode referensi transaksi tabungan

pertama-tama akan ditentukan level dari transaksi basis data yang akan

dilakukan. Pada metode ini mengunakan level transaksi serializable. Untuk

menjalankan stored procedure sp_ubah_ transtab maka menggunakan

perintah pstmt.executeUpdate(). Jika berhasil mengubah kode referensi

transaksi tabungan metode ubahKodeReferensi() akan mengembalikan

nilai true dan metode transaksi yang dijalankan adalah commit . Jika

terjadi kegagalan dalam proses pengubahan grup tabungan maka metode

ubahKodeReferensi() akan mengembalikan nilai false dan mode

transaksi yang dijalankan adalah rollback.

4.2.2.6.3. Penghapusan Kode Referensi Transaksi Tabungan

Fitur penghapusan kode referensi transaksi tabungan dijalankan

apabila Direksi tabungan ingin menghapus produk tabungan yang ada

dalam basis data. Untuk menghapus kode referensi transaksi tabungan,

maka Direksi harus mencari kode referensi transaksi tabungan yang ingin

dihapus terlebih dahulu.

Baris perintah untuk penghapusan kode referensi transaksi dapat

dilihat dibawah ini.

public boolean hapusKodeReferensi(String kodeTransaksiId) throws SQLException {

//boolean kondisi = false;

Page 234: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

212

this.setKodeTransaksiId(kodeTransaksiId);

String sql = "{ call sp_hapus_transtab(?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, this.getKodeTransaksiId());

//kirim sql ke database server dan jalankan

pstmt.executeQuery();

pstmt.close();

setDeleteStatus(true);

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

setDeleteStatus(false);

}

return isDeleteStatus();

}

Page 235: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

213

Untuk menghapus data kode referensi transaksi tabungan

pertama-tama akan ditentukan level dari transaksi basis data yang akan

dilakukan. Pada metode ini mengunakan level transaksi serializable.

Untuk menjalankan stored procedure sp_hapus_transtab maka

menggunakan perintah pstmt.executeUpdate(). Jika berhasil

menghapus kode referensi transaksi tabungan maka nilai true diberikan

kepada deleteStatus sebagai flag keberhasilan menghapus kode referensi

transaksi tabungan dan metode transaksi yang dijalankan adalah commit.

Jika terjadi kegagalan dalam proses penghapusan produk tabungan maka

deleteStatus sebagai nilai balik akan bernilai false dan metode transaksi

yang dijalankan adalah rollback .

4.2.2.6.4. Pencarian Kode Referensi Transaksi Tabungan

Fitur pencarian grup tabungan digunakan oleh Direksi jika ingin

mencari kode referensi transaksi tabungan tertentu. Proses pencarian kode

referensi transaksi tabungan juga diperlukan ketika Direksi ingin

mengubah dan menghapus kode referensi transaksi tabungan. Untuk

memunculkan tampilan pencarian kode referensi transaksi tabungan,

Direksi dapat menekan tombol “Lihat Tabel” tampilan utama pengelolaan

kode referensi transaksi tabungan.

Page 236: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

214

Gambar 4.9. Tampilan Pencarian Kode Referensi Transaksi Tabungan

Untuk memulai proses pencarian kode referensi transaksi

tabungan Direksi pertama-tama memasukkan kriteria pencarian kode

referensi transaksi tabungan di panel Kriteria Filter Informasi. Setelah itu

Direksi akan menekan tombol “Proses” untuk memulai proses pencarian.

Kode perintah dari metode pencarian kode referensi transaksi

tabungan dapat dilihat dibawah ini.

public void getRecDBKodeTransTab(String query) {

this.queryUtama = "select * from kodetranstabungan";

if (query != null) {

Page 237: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

215

this.queryUtama += " where " + query;

}

System.out.println("query di getRecDbKodeTransTab " + this.queryUtama);

try {

java.sql.Statement statement = cn.createStatement();

java.sql.ResultSet resultSet = statement.executeQuery(this.queryUtama);

baris.removeAllElements();

while (resultSet.next()) {

Object[] r = {resultSet.getString(1),

resultSet.getString(2),

resultSet.getString(3),

resultSet.getString(4),

resultSet.getString(5)

};

baris.addElement(r);

r = null;

}

if (baris.isEmpty()) {

setSearchResultStatus(false);

}else{

setSearchResultStatus(true);

}

} catch (java.sql.SQLException e) {

Page 238: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

216

System.out.println("Error : " + e);

}

query = null;

}

Untuk melakukan pencarian pertama akan diatur tingkat

transaksi dalam basis data. Dalam metode ini digunakan tingkat transaksi

repeatable read. Kemudian queryUtama dijalankan dengan perintah

statement.executeQuery(queryUtama). Hasil dari perintah

executeQuery akan mengembalikan sebuah result set yang ditampung

dalam variabel resultSet. Data-data dari result set ini nantinya akan

mengisi baris dan kolom dari tabel hasil pencarian kode referensi transaksi

tabungan.

Metode setSearchResultStatus(boolean) digunakan untuk

memberikan nilai balik pada proses pencarian. Jika data yang dicari berada

dalam basis data maka setSearchStatus akan bernilai true atau false jika

data pencarian kode referensi transaksi tabungan tidak ditemukan.

4.2.2.7. Pengelolaan Data Rekening Tabungan

Fitur pengelolan data rekening tabungan digunakan Manajer jika

ingin mengolah data-data dari sebuah rekening tabungan. Dalam

pengelolan data rekening tabungan memiliki tiga tampilan utama yaitu

Page 239: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

217

tampilan utama pengelolan data rekening nasabah, pencarian data

rekening tabungan, dan pencarian data nasabah. Dalam tampilan utama

pengelolaan data rekening tabungan terdapat fitur penambahan,

pengubahan, penghapusan data rekening tabungan.

Gambar 4.10. Tampilan Pengelolaan Data Rekening Tabungan

4.2.2.7.1. Pencarian Data Nasabah

Pencarian data nasabah digunakan untuk mencari data pribadi

nasabah yang nantinya akan digunakan untuk membuat rekening

tabungan baru. Untuk memunculkan tampilan pencarian data nasabah,

Page 240: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

218

Manajer dapat menekan tombol “Lihat Tabel” pada tampilan utama

pengelolaan data rekening tabungan.

Gambar 4.11. Tampilan Pencarian Data Nasabah

Untuk mencari data pribadi nasabah Manajer memasukkan

kriteria pencarian pada panel kriteria filter informasi. Setelah itu Manajer

menekan tombol proses untuk memulai pesan pencarian. Hasil pencarian

dimunculkan pada tabel data nasabah tercatat. Kemudian Manajer

memilih salah satu hasil pencarian dan menekan tombol “Pilih”, maka

hasil pemilihan data pencarian nasabah akan dimunculkan di tampilan

utama pengelolaan data rekening tabungan.

Page 241: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

219

4.2.2.7.2. Penambahan Data Rekening Tabungan

Untuk mencari data pribadi nasabah Manajer memasukkan

kriteria pencarian pada panel kriteria filter informasi. Setelah itu Manajer

menekan tombol proses untuk memulai pesan pencarian. Hasil pencarian

dimunculkan pada tabel data nasabah tercatat. Kemudian Manajer

memilih salah satu hasil pencarian dan menekan tombol “Pilih”, maka

hasil pemilihan data pencarian nasabah akan dimunculkan di tampilan

utama pengelolaan data rekening tabungan.

public boolean insertUpdateRekeningTabungan(java.util.Vector dataInput, double saldoMin) {

boolean statusInput = false;

if (dataInput.get(9).toString().isEmpty()) {

JOptionPane.showMessageDialog(null, "Saldo akhir tidak dapat kosong",

"Kesalahan", JOptionPane.ERROR_MESSAGE);

} else if (dataInput.get(3).toString().isEmpty()) {

JOptionPane.showMessageDialog(null, "Nomor Nasabah/Anggota ID tidak dapat kosong",

"Kesalahan", JOptionPane.ERROR_MESSAGE);

} else {

double numeric = Double.parseDouble(dataInput.get(9).toString());

// double saldoMin = Double.parseDouble((String) dataSetter.get(4));

Page 242: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

220

if (numeric < saldoMin) {

JOptionPane.showMessageDialog(null, "Saldo akhir harus lebih besar dari " + saldoMin + " ",

"Kesalahan", JOptionPane.ERROR_MESSAGE);

} else {

// dataCollector.addElement(numericTextFieldSaldoSaatIni.getText()); // 17 numericTextFieldSaldoSaatIni

if (dataInput.get(1).toString().isEmpty()) {

if (javax.swing.JOptionPane.showConfirmDialog(null,

"Simpan Data Rekening Tabungan Baru ?",

"KONFIRMASI",

javax.swing.JOptionPane.YES_NO_OPTION) ==

javax.swing.JOptionPane.YES_OPTION) {

setInsertStatus(this.insertData(dataInput));

if (isInsertStatus()) {

JOptionPane.showMessageDialog(null, "Data Rekening Tabungan Baru Berhasil Disimpan",

"Berhasil", JOptionPane.INFORMATION_MESSAGE);

} else {

JOptionPane.showMessageDialog(null, "Data Rekening Tabungan Baru Gagal Disimpan",

"Kesalahan", JOptionPane.ERROR_MESSAGE);

}

}

statusInput = isInsertStatus();

Page 243: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

221

} else {

// update rekening

.........................

.........................

.........................

}

}

return statusInput;

}

Masukan data rekening tabungan yang baru dari Manajer akan

disimpan dalam sebuah vector data yang kemudian akan diperiksa oleh

kelas pengendali rekening tabungan. Apabila ditemukan masukan yang

tidak sesuai maka kelas pengendali rekening tabungan maka akan

memunculkan pesan kesalahan. Jika semua masukan sudah sesuai maka

akan diperiksa nomor rekening dari vector dataInput. Jika nomor rekening

kosong maka proses dilanjutkan dengan penambahan data rekening

tabungan baru. Jika nomor rekening tidak kosong maka proses dilanjutkan

dengan proses pengubahan data rekening tabungan.

Baris perintah penambahan data rekening tabungan pada kelas

EntitasTabungan dapat dilihat di bawah ini.

Page 244: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

222

public boolean masukDataRekeningNasabah(java.util.Vector data) {

boolean kondisi = false;

String sql = "{call sp_masuk_dataRekNasabah(?,?,?,?,?,?,?,?,?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, (String) data.get(0));

pstmt.setString(2, (String) data.get(2));

pstmt.setString(3, (String) data.get(3));

pstmt.setString(4, (String) data.get(4));

pstmt.setString(5, (String) data.get(5));

pstmt.setString(6, (String) data.get(6));

pstmt.setString(7, (String) data.get(7));

pstmt.setString(8, (String) data.get(8));

pstmt.setString(9, (String) data.get(9));

pstmt.executeUpdate();

//kirim sql ke database server dan jalankan

pstmt.close();

kondisi = true;

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException ex) {

Page 245: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

223

try {

cn.rollback();

} catch (SQLException ex1) {

ex1.printStackTrace();

}

ex.printStackTrace();

kondisi = false;

}

return kondisi;

}

Tingkat transaksi basis data yang digunakan adalah serializable

yang mana akan menjalankan transaksi secara serial yang jika terjadi

kegagalan pada salah satu proses transaksi maka transaksi akan dibatalkan

dari awal. Setelah mengatur tingkat transaksi dan mengubah auto-commit

transaksi menjadi false, maka sistem mengganti setiap parameter stored

procedure dengan nilai dari vector data dari Manajer. Kemudian

sp_masuk_dataRekNasabah dijalankan. Jika berhasil maka nilai balik dari

metode masukDataRekeningNasabah(java.util.Vector) akan bernilai true dan

metode transaksi yang dijalankan adalah commit. Jika proses

penambahan gagal maka akan mengembalikan nilai false dan metode

transaksi yang dijalankan adalah rollback.

Page 246: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

224

4.2.2.7.3. Pengubahan Data Rekening Tabungan

Fitur pengubahan rekening tabungan digunakan apabila Manajer

tabungan ingin mengubah rekening tabungan yang sudah dibuat. Untuk

mengubah sebuah rekening transaksi tabungan, seorang Direksi tabungan

terlebih dahulu mencari rekening tabungan yang ingin diubah.

Baris perintah pengubahan rekening tabungan di kelas

pengendali pengelolaan rekening tabungan dapat dilihat di bawah ini.

public boolean insertUpdateRekeningTabungan(java.util.Vector dataInput, double saldoMin) {

boolean statusInput = false;

if (dataInput.get(9).toString().isEmpty()) {

JOptionPane.showMessageDialog(null, "Saldo akhir tidak dapat kosong",

"Kesalahan", JOptionPane.ERROR_MESSAGE);

} else if (dataInput.get(3).toString().isEmpty()) {

JOptionPane.showMessageDialog(null, "Nomor Nasabah/Anggota ID tidak dapat kosong",

"Kesalahan", JOptionPane.ERROR_MESSAGE);

} else {

double numeric = Double.parseDouble(dataInput.get(9).toString());

// double saldoMin = Double.parseDouble((String) dataSetter.get(4));

if (numeric < saldoMin) {

JOptionPane.showMessageDialog(null, "Saldo akhir harus lebih besar dari " + saldoMin + " ",

Page 247: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

225

"Kesalahan", JOptionPane.ERROR_MESSAGE);

} else {

// dataCollector.addElement(numericTextFieldSaldoSaatIni.getText()); // 17 numericTextFieldSaldoSaatIni

if (dataInput.get(1).toString().isEmpty()) {

// insert data

.........................................

.........................................

.........................................

} else {

if (javax.swing.JOptionPane.showConfirmDialog(null,

"Ubah Data Rekening Tabungan Baru ?",

"KONFIRMASI",

javax.swing.JOptionPane.YES_NO_OPTION) ==

javax.swing.JOptionPane.YES_OPTION) {

setUpdateStatus(this.updateData(dataInput));

if (isUpdateStatus()) {

JOptionPane.showMessageDialog(null, "Data Rekening Tabungan Berhasil Diubah",

"BERHASIL", JOptionPane.INFORMATION_MESSAGE);

// this.clearFrame();

} else {

JOptionPane.showMessageDialog(null, "Data Rekening Tabungan Gagal Diubah",

Page 248: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

226

"KESALAHAN", JOptionPane.ERROR_MESSAGE);

}

}

statusInput = isUpdateStatus();

}

}

}

return statusInput;

}

Dari baris perintah di atas dapat dilihat bahwa dilakukan

pemeriksaan terlebih dahulu terhadap masukan dari Manajer. Jika

ditemukan masukan yang tidak sesuai maka sistem akan memunculkan

pesan kesalahan. Jika masukan dari Adm Manajer telah sesuai maka

proses dilanjutkan dengan pengubahan data rekening tabungan.

Baris perintah pengubahan rekening tabungan dapat dilihat di

bawah ini.

public boolean ubahDataRekeningNasabah(java.util.Vector data) {

boolean kondisi = false;

String sql = "{ call sp_ubahDataRekNasabah(?,?,?,?,?,?,?,?,?,?)}";

try {

Page 249: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

227

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, (String) data.get(0));

pstmt.setString(2, (String) data.get(1));

pstmt.setString(3, (String) data.get(2));

pstmt.setString(4, (String) data.get(3));

pstmt.setString(5, (String) data.get(4));

pstmt.setString(6, (String) data.get(5));

pstmt.setString(7, (String) data.get(6));

pstmt.setString(8, (String) data.get(7));

pstmt.setString(9, (String) data.get(8));

pstmt.setString(10, (String) data.get(9));

//kirim sql ke database server dan jalankan

pstmt.executeUpdate();

pstmt.close();

// baris.addElement(r);

kondisi = true;

cn.commit();

cn.setAutoCommit(true);

Page 250: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

228

} catch (SQLException ex) {

try {

cn.rollback();

} catch (SQLException ex1) {

ex1.printStackTrace();

}

ex.printStackTrace();

kondisi = false;

}

return kondisi;

}

Untuk mengubah data rekening tabungan pertama-tama akan

ditentukan tingkat dari transaksi basis data yang akan dilakukan. Pada

metode ini mengunakan tingkat transaksi serializable. Untuk menjalankan

stored procedure sp_ubahDataRekNasabah maka menggunakan perintah

pstmt.executeUpdate(). Jika berhasil mengubah rekening tabungan

metode ubahDataRekeningNasabah(java.util.Vector) akan

mengembalikan nilai true dan metode transaksi yang dijalankan adalah

commit . Jika terjadi kegagalan dalam proses pengubahan rekening

tabungan maka metode ubahDataRekeningNasabah(java.util.Vector)

akan mengembalikan nilai false dan mode transaksi yang dijalankan

adalah rollback.

Page 251: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

229

4.2.2.7.4. Penghapusan Data Rekening Tabungan

Fitur penghapusan rekening tabungan dijalankan apabila Direksi

tabungan ingin menghapus produk tabungan yang ada dalam basis data.

Untuk menghapus rekening tabungan, maka Direksi harus mencari

rekening tabungan yang ingin dihapus terlebih dahulu.

Setelah menemukan data yang ingin dihapus, maka Manajer

menekan tombol “Hapus”. Kemudian sistem akan melakukan konfirmasi

apakah ingin menghapus data rekening terpilih. Jika Manajer memilih ya,

maka sistem akan menghapus data terpilih dengan memanggil metode

hapusKodeReferensi(String). Baris perintah untuk penghapusan

rekening dapat dilihat dibawah ini.

public boolean hapusKodeReferensi(String kodeTransaksiId) throws SQLException {

//boolean kondisi = false;

this.setKodeTransaksiId(kodeTransaksiId);

String sql = "{ call sp_hapus_transtab(?)}";

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

Page 252: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

230

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, this.getKodeTransaksiId());

//kirim sql ke database server dan jalankan

pstmt.executeQuery();

pstmt.close();

setDeleteStatus(true);

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

setDeleteStatus(false);

}

return isDeleteStatus();

}

Page 253: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

231

Untuk menghapus data rekening tabungan pertama-tama akan

ditentukan tingkat dari transaksi basis data yang akan dilakukan. Pada

metode ini mengunakan level transaksi serializable.

Untuk menjalankan stored procedure hapusKodeReferensi

maka menggunakan perintah pstmt.executeUpdate(). Jika berhasil

menghapus rekening tabungan maka nilai true diberikan kepada

setDeleteStatus sebagai flag keberhasilan menghapus rekening

tabungan dan metode transaksi yang dijalankan adalah commit. Jika terjadi

kegagalan dalam proses penghapusan produk tabungan maka

setDeleteStatus sebagai nilai balik akan bernilai false dan metode

transaksi yang dijalankan adalah rollback .

4.2.2.7.5. Pencarian Data Rekening Tabungan

Fitur pencarian rekening tabungan digunakan oleh Manajer jika

ingin mencari rekening tabungan tertentu. Proses pencarian rekening

tabungan juga diperlukan ketika Manajer ingin mengubah dan menghapus

rekening tabungan tertentu. Untuk memunculkan tampilan pencarian

rekening tabungan, Direksi dapat menekan memilih tab “Data Rekening

Tabungan Tercatat” pada tampilan utama pengelolaan rekening tabungan.

Page 254: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

232

Gambar 4.12. Pencarian Data Rekening Tabungan

Untuk memulai proses pencarian rekening tabungan Manajer

pertama-tama memasukkan kriteria pencarian rekening tabungan di panel

Kriteria Filter Informasi. Setelah itu Manajer akan menekan tombol

“Proses” untuk memulai proses pencarian.

Kode perintah dari metode pencarian rekening tabungan dapat

dilihat dibawah ini.

public void getRecDbDataNasabah(String query) {

this.queryUtama = "select distinct tabungan.no_rekening, nasabah.nama_nasabah, nasabah.alamat, produk_tabungan.deskripsi_jenis_tabungan, tabungan.saldo_akhir" +

" from tabungan, nasabah, produk_tabungan" +

Page 255: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

233

" where tabungan.nasabah_id=nasabah.nasabah_id " +

"and tabungan.jenis_tabungan=produk_tabungan.produk_tabungan_id ";

if (query != null) {

this.queryUtama += " and " + query;

}

System.out.println("query di getRecDbDataNasabah " + this.queryUtama);

try {

cn.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);

cn.setAutoCommit(false);

java.sql.Statement statement = cn.createStatement();

java.sql.ResultSet resultSet = statement.executeQuery(this.queryUtama);

baris.removeAllElements();

while (resultSet.next()) {

Object[] r = {resultSet.getString(1),

resultSet.getString(2),

resultSet.getString(3),

resultSet.getString(4),

resultSet.getString(5)

Page 256: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

234

};

baris.addElement(r);

r = null;

}

if (baris.isEmpty()) { //pencarian tidak menemukan data

setSearchStatus(false);

} else { // data ditemukan

setSearchStatus(true);

}

resultSet.close();

cn.commit();

cn.setAutoCommit(true);

} catch (java.sql.SQLException e) {

try {

cn.rollback();

} catch (SQLException ex) {

System.out.println(ex);

}

System.out.println("Error : " + e);

setSearchStatus(false);

}

Page 257: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

235

query = null;

}

Untuk melakukan pencarian rekening tabungan pertama-tama

akan diatur tingkat transaksi dalam basis data. Dalam metode ini

digunakan tingkat transaksi repeatable read. Kemudian queryUtama

dijalankan dengan perintah statement.executeQuery(queryUtama).

Hasil dari perintah executeQuery akan mengembalikan sebuah result set

yang ditampung dalam variabel resultSet. Data-data dari result set ini

nantinya akan mengisi baris dan kolom dari tabel hasil pencarian rekening

tabungan.

Metode setSearchStatus(boolean) digunakan untuk

memberikan nilai balik pada proses pencarian. Jika data rekening tabungan

yang dicari ada dalam basis data maka setSearchStatus akan bernilai

true dan false jika data pencarian rekening tabungan tidak ditemukan.

4.2.2.8. Perhitungan Bunga dan Pajak Tabungan

Fitur perhitungan bunga dan pajak digunakan Manajer untuk

menghitung bunga, pajak dan administrasi rekening tabungan dalam

periode satu bulanan.

Page 258: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

236

Gambar 4.13. Tampilan Perhitungan Bunga dan Pajak Tabungan

Untuk melakukan proses perhitungan bunga Manajer

memasukkan tanggal awal periode dan tanggal akhir periode perhitungan

bunga. Jika nanti hasil perhitungan bunga, pajak dan administrasi ingin

diubah, maka Manajer dapat memilih check list Koreksi perhitungan.

Setelah itu Manajer menekan tombol hitung.

Jika bulan sebelumnya belum dilakukan perhitungan maka

sistem akan memunculkan pesan bahwa bulan sebelumnya belum

dilakukan perhitungan bunga, pajak dan administrasi tabungan.

Gambar 4.14. Tampilan Kesalahan Belum Melakukan Perhitungan

Bunga Pada Bulan Sebelumnya

Jika perhitungan bulan ini sudah dilakukan, maka sistem akan

memunculkan pesan peringatan bahwa bulan ini sudah dilakukan

perhitungan.

Page 259: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

237

Gambar 4.15. Tampilan Peringatan Sudah Melakukan Perhitungan

Bunga dan Pajak pada Bulan Ini

Jika manajer memilih tombol “Yes” maka sistem akan

melanjutkan proses perhitungan bunga bulan ini.

Jika masukan tanggal perhitungan bunga, pajak dan administrasi

sudah sesuai maka sistem akan melakukan proses perhitungan bunga,

pajak dan administrasi. Baris perintah perhitungan bunga dapat dilihat di

bawah ini.

public boolean hitungbunga(String tglAwal, String tglAkhir, String query) {

boolean hitungBungaCondition = false;

System.out.println("query in jButtonHitungBungaPajakActionPerformed: " + query);

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement callStmt = cn.prepareCall(query);

//java.sql.ResultSet resultSet;

callStmt.setString(1, tglAwal);

callStmt.setString(2, tglAkhir);

Page 260: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

238

callStmt.executeUpdate();

hitungBungaCondition = true;

callStmt.close();

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException e) {

try {

cn.rollback();

} catch (SQLException ex) {

System.out.println(ex);

}

hitungBungaCondition = false;

e.printStackTrace();

}

// System.out.println("query sql: " + sql);

System.out.println("hitungBungaCondition: " + hitungBungaCondition);

return hitungBungaCondition;

}

Dari baris perintah di atas dapat dilihat bahwa dipanggil metode

perhitungan bunga yang bernama hitungbunga(String tglAwal, String tglAkhir,

String query). Dari metode ini akan melakukan perhitungan bunga di dalam

Page 261: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

239

basis data denga memanggil stored procedure

sp_data_hitung_bunga_tabungan. Jika proses perhitungan bunga berhasil

maka akan mengembalikan nilai true dan metode transaksi yang

dijalankan adalah commit. Jika proses perhitungan bunga, pajak dan

administrasi gagal akan mengembalikan nilai false dan metode transaksi

yang dijalankan adalah rollback.

Query perhitungan bunga dapat dilihat dibawah ini.

DELIMITER $$

DROP PROCEDURE IF EXISTS `bukp_skripsi`.`sp_data_hitung_bunga_tabungan`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_data_hitung_bunga_tabungan`( tgl_awal_hitung date,tgl_akhir_hitung date)

BEGIN

DECLARE done INT DEFAULT 0;

declare counter int ;

declare v_no_rekening varchar(20);

declare v_saldo_awal decimal(15,2);

declare v_SALDO_EFEKTIF_BLN_INI decimal (15,2);

declare v_saldo_nominatif decimal (15,2);

declare v_SUKU_BUNGA_DEFAULT decimal (15,2);

declare v_ADM_PER_BLN_DEFAULT decimal(15,2);

declare v_PPH_DEFAULT decimal(15,2);

Page 262: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

240

declare v_saldo_akhir decimal(15,2);

declare v_saldo_hitung_pajak decimal(15,2);

declare v_tgl_bunga date;

declare v_peride_adm_default char(1);

declare v_last_tgl_adm date;

declare bunga decimal(15,2);

declare pajak decimal(15,2);

declare administrasi decimal (15,2);

declare saldoAkhir decimal (15,2);

declare tglAdministrasiTerakhir date;

declare saldo_trans decimal(15,2);

declare cursorBunga cursor for select distinct tabungan.no_rekening,

tabungan.saldo_awal,

tabungan.SALDO_EFEKTIF_BLN_INI,

tabungan.saldo_nominatif,

produk_tabungan.SUKU_BUNGA_DEFAULT,

produk_tabungan.ADM_PER_BLN_DEFAULT,

produk_tabungan.PPH_DEFAULT,

tabungan.saldo_akhir,

tabungan.saldo_hitung_pajak,

tabungan.tgl_bunga,

produk_tabungan.periode_adm_default,

tabungan.last_tgl_adm

from tabungan, produk_tabungan

Page 263: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

241

where tabungan.JENIS_TABUNGAN=produk_tabungan.PRODUK_TABUNGAN_ID

and tabungan.status_aktif =2

and datediff(tgl_awal_hitung, tabungan.tgl_registrasi) > sf_jumlah_hari_dalam_sebulan(tabungan.tgl_registrasi) -- rekening sudah dibuka lebih dari 1 bulan

and tabungan.saldo_akhir>=produk_tabungan.minimum_default

and tabungan.saldo_akhir >=produk_tabungan.saldo_min_bunga

and tabungan.tgl_bunga between tgl_awal_hitung and tgl_akhir_hitung order by tabungan.no_rekening asc;

DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;

open cursorBunga;

REPEAT

fetch cursorBunga into

v_no_rekening,

v_saldo_awal,

v_SALDO_EFEKTIF_BLN_INI,

v_saldo_nominatif,

v_SUKU_BUNGA_DEFAULT,

v_ADM_PER_BLN_DEFAULT,

v_PPH_DEFAULT,

v_saldo_akhir,

v_saldo_hitung_pajak,

v_tgl_bunga,

v_peride_adm_default,

v_last_tgl_adm;

-- starting hitung bunga

Page 264: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

242

if not done then

set bunga=v_SALDO_EFEKTIF_BLN_INI *v_SUKU_BUNGA_DEFAULT*sf_jumlah_hari_dalam_sebulan(tgl_awal_hitung)/365;

set pajak=v_SALDO_EFEKTIF_BLN_INI* v_PPH_DEFAULT;

if(v_peride_adm_default = 2) then -- tabungan memiliki perhitungan administrasi secara tahunan

if (sf_v_peride_adm_default_tahunan(tgl_awal_hitung,v_last_tgl_adm)=1) then -- bernilai 1 jika sudah 1 thn

set administrasi=v_SALDO_EFEKTIF_BLN_INI*v_ADM_PER_BLN_DEFAULT;

set tglAdministrasiTerakhir=v_tgl_bunga;

else

set administrasi=0.00;

set tglAdministrasiTerakhir=v_last_tgl_adm;

end if;

else

set administrasi=v_SALDO_EFEKTIF_BLN_INI*v_ADM_PER_BLN_DEFAULT;-- tabungan memiliki perhitungan administrasi secara bulanan

set tglAdministrasiTerakhir=v_tgl_bunga;

end if;

set saldoAkhir=v_saldo_akhir+bunga-pajak-administrasi;

-- insert data into temp_tabung

call sp_simpan_hasil_hitung_bunga_temp(v_no_rekening,v_saldo_awal,bunga,pajak,administrasi,

Page 265: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

243

v_SALDO_EFEKTIF_BLN_INI,v_saldo_hitung_pajak,v_saldo_nominatif,saldoAkhir,v_tgl_bunga,tglAdministrasiTerakhir);

end if;

-- set counter=counter+1;

UNTIL done END REPEAT;

if(done) then

if(sf_status_hitung_bunga_tiap_bulan(tgl_awal_hitung) is null) then -- perhitungan bunga bulan ini belum dilakukan

insert into statusHitungBungaBlnIni (tgl_hitung_bunga)

value(tgl_awal_hitung);

else

update statusHitungBungaBlnIni set tgl_hitung_bunga= tgl_awal_hitung

where id_status_bln= sf_status_hitung_bunga_tiap_bulan(tgl_awal_hitung);

end if;

end if;

close cursorBunga;

END$$

DELIMITER ;

Dalam stored procedure di atas dapat dilihat bahwa dilakukan

pencarian data rekening tabungan yang masih aktif dengan ketentuan:

Page 266: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

244

1. rekening sudah dibuka lebih dari satu bulan dari tanggal awal

perhitungan bunga,

2. rekening tabungan memiliki saldo akhir yang lebih dari atau sama

dengan saldo minimum produk tabungan yang digunakan oleh

rekening tersebut,

3. rekening tabungan memiliki saldo akhir yang lebih dari atau sama

dengan saldo minumum terhitung bunga produk tabungan yang

digunakan oleh rekening tersebut.

Setelah ketentuan di atas dipenuhi, maka hasil pencarian

rekening tersebut akan disimpan dalam sebuah cursor yang bernama

cursorBunga. Dari cursor cursorBunga akan dibaca setiap baris rekening

untuk dilakukan perhitungan bunga, pajak dan administrasi.

Bunga tabungan dihitung dengan perintah:

set bunga=v_SALDO_EFEKTIF_BLN_INI *v_SUKU_BUNGA_DEFAULT*sf_jumlah_hari_dalam_sebulan(tgl_awal_hitung)/365;

Pajak tabungan dihitung dengan perintah:

set pajak=v_SALDO_EFEKTIF_BLN_INI* v_PPH_DEFAULT;

Perhitungan administrasi tabungan dilakukan dengan perintah:

if(v_peride_adm_default = 2) then

if(sf_v_peride_adm_default_tahunan(tgl_awal_hitung,v_last_tgl_adm)=1) then

Page 267: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

245

set administrasi=v_SALDO_EFEKTIF_BLN_INI*v_ADM_PER_BLN_DEFAULT;

set tglAdministrasiTerakhir=v_tgl_bunga;

else

set administrasi=0.00;

set tglAdministrasiTerakhir=v_last_tgl_adm;

end if;

else

set administrasi=v_SALDO_EFEKTIF_BLN_INI*v_ADM_PER_BLN_DEFAULT;

set tglAdministrasiTerakhir=date_add(v_last_tgl_adm,interval 1 month);

end if;

Pertama-tama akan diperiksa apakah periode administrasi

tabungan merupakan bulanan atau tahunan. Periode administrasi bulanan

memiliki kode 1 dan tahunan memiliki kode 2. Jika kode periode

administrasi tabungan adalah 2 maka tanggal administrasi tabungan

terakhir akan bernilai sama dengan tanggal periode awal perhitungan

bunga tabungan. Jika memiliki tanggal perhitungan bulanan maka tanggal

periode awal administrasi akan juga sama dengan periode awal

perhitungan bunga tabungan.

Setelah proses perhitungan bunga, pajak dan administrasi selesai

maka dilakukan perhitungan untuk saldo akhir dari rekening tabungan

dengan perintah:

Page 268: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

246

set saldoAkhir=v_saldo_akhir+bunga-pajak-administrasi;

Jika proses perhitungan bunga, pajak, administrasi dan saldo

akhir telah selesai maka dilakukan proses pemindahan hasil perhitungan

ke tabel temp_tabung. Setelah itu tanggal awal perhitungan bunga bulan

ini dimasukkan dalam tabel statusHitungBungaBlnIni. Jika sudah

pernah dilakukan perhitungan bunga, pajak dan adminstrasi bulan ini

maka proses pengubahan tanggal perhitungan di tabel

statusHitungBungaBlnIni akan dilakukan. Jika belum pernah maka

proses penambahan tanggal perhitungan bungan akan dilakukan dalam

tabel statusHitungBungaBlnIni.

4.2.2.9. Daftar Bunga, Pajak dan Administrasi Tabungan

Fitur daftar bunga, pajak dan administrasi tabungan

menampilkan data-data bunga, pajak dan administrasi hasil perhitungan

bunga dan pajak pada periode satu bulanan. Fitur ini dapat digunakan

Manajer untuk mengubah hasil peritungan bunga, pajak dan administrasi

jika ada data yang tidak sesuai. Untuk dapat mengubah hasil perhitungan

bunga, pajak dan administrasi, komponen check box “Koreksi

Perhitungan” dipilih terlebih dahulu sebelum melakukan perhitungan

bunga pada fitur perhitungan bunga dan pajak tabungan.

Page 269: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

247

Gambar 4.16. Tampilan Pencarian dan Daftar Bunga, Pajak dan

Administrasi Tabungan

Untuk mengubah hasil perhitungan bunga, pajak dan

administrasi tabungan Manajer dapat melakukan pencarian pada panel

“Filter Kriteria Informasi”. Hasil pencarian dimunculkan pada tabel daftar

bunga, pajak dan administrasi tabungan.

Setelah itu melakukan pencarian, Manajer memilih salah satu

baris data bunga, pajak dan administrasi tabungan. Rincian hasil pilihan

bunga, pajak dan administrasi oleh Manajer dimunculkan pada panel di

bagian bawah tabel daftar bunga, pajak dan administrasi tabungan. Dari

panel inilah Manajer dapat mengubah data hasil perhitungan bunga, pajak

dan administrasi sebelum di pindahbukukan ke dalam rekening tabungan.

Page 270: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

248

4.2.2.10. Pemindahbukuan

Proses pemindahbukuan digunakan Manajer untuk

memindahkan hasil perhitungan bunga, pajak, administrasi dan saldo

akhir ke dalam rekening tabungan.

Gambar 4.17. Tampilan Pemindahbukuan

Baris perintah untuk melakukan proses pemindahbukuan dapat

dilihat di bawah ini.

public boolean overbookingProcess(String tglOverbooking,String pengguna) {

boolean statusoverbookingProcess = false;

String query = "{call sp_proses_overbooking(?,?)}";

try {

cn.setTransactionIsolation(cn.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement callStmt = cn.prepareCall(query);

Page 271: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

249

callStmt.setString(1, tglOverbooking);

callStmt.setString(2, pengguna);

callStmt.executeUpdate();

callStmt.close();

cn.commit();

cn.setAutoCommit(true);

statusoverbookingProcess = true;

} catch (SQLException ex) {

try {

cn.rollback();

} catch (SQLException e) {

e.printStackTrace();

}

statusoverbookingProcess = false;

ex.printStackTrace();

}

return statusoverbookingProcess;

}

Dari perintah di atas dapat dilihat bahwa dilakukan pemanggilan

terhadap stored procedure sp_proses_overbooking yang memiliki

parameter tanggal pemindahbukuan dan identitas pengguna yang

melakukan proses pemindahbukuan. Jika proses pemindahbukuan berhasil

maka akan mengembalikan nilai true dan metode transaksi yang

Page 272: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

250

dijalankan adalah commit. Jika proses pemindahbukuan gagal akan

mengembalikan nilai false dan metode transaksi yang dijalankan adalah

rollback.

Query dalam basis data untuk melakukan pemindahbukuan dapat

dilihat dibawah ini.

DELIMITER $$

DROP PROCEDURE IF EXISTS `bukp_skripsi`.`sp_proses_overbooking`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_proses_overbooking`(tgl_overbooking date, userId int)

BEGIN

DECLARE done INT DEFAULT 0;

declare v_no_rekening varchar(20);

declare v_bunga decimal(15,2);

declare v_pajak decimal(15,2);

declare v_administrasi decimal (15,2);

declare v_saldo_akhir decimal (15,2);

declare v_tgl_bunga date;

declare v_tgl_admin_terakhir date;

declare saldoTrans decimal (15,2);

DECLARE cursorOverbooking CURSOR FOR SELECT no_rekening,bunga,pajak,administrasi,

saldo_akhir, tgl_bunga,tgl_admin_terakhir from temp_tabung where tgl_bunga=tgl_overbooking;

DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;

open cursorOverbooking;

Page 273: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

251

REPEAT

fetch cursorOverbooking into v_no_rekening,v_bunga,v_pajak, v_administrasi,v_saldo_akhir,v_tgl_bunga,v_tgl_admin_terakhir;

IF NOT done THEN

set saldoTrans=v_bunga-v_pajak-v_administrasi;

update tabungan

set

bunga_bln_ini=v_bunga,

pajak_bln_ini=v_pajak,

adm_bln_ini=v_administrasi,

tgl_bunga=date_add(v_tgl_bunga,interval 1 month),

saldo_akhir=v_saldo_akhir+v_bunga-v_pajak-v_administrasi,

saldo_efektif_bln_ini=v_saldo_akhir+v_bunga-v_pajak-v_administrasi,

saldo_nominatif=v_saldo_akhir+v_bunga-v_pajak-v_administrasi,

saldo_hitung_pajak=v_saldo_akhir+v_bunga-v_pajak-v_administrasi,

last_tgl_adm=date_add(v_tgl_admin_terakhir,interval 1 month),

status_aktif=2

where no_rekening= v_no_rekening;

insert into tabtrans(tabtrans_id,tgl_trans,no_rekening,kode_trans,saldo_trans,TOB,posted,validated,kuitansi,userid,saldo_trans_kredit)

values((select sf_kode_tabtrans()+1),tgl_overbooking,v_no_rekening, sf_get_kode_Transaksi_bunga(), saldoTrans,'O',1,1,"SYS-BUNGA",userId,saldo_trans);

end if;

Page 274: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

252

UNTIL done END REPEAT;

close cursorOverbooking;

END$$

DELIMITER ;

Dari query di atas dapat dilihat bahwa proses pemindahbukuan

dilakukan dengan membaca data pada tabel temp_tabung yang kemudian

disimpan dalam tabel tabungan. Pemindahan nilai perhitungan bunga,

pajak dan administrasi dilakukan sesuai dengan tanggal transaksi

pemindahbukuan yang dilakukan oleh Manajer.

Setelah selesai memindahkan nilai perhitungan bunga, pajak dan

administrasi tabungan maka dilakukan proses memasukkan nilai saldo

akhir ke dalam tabel tabtrans. Nilai transaksi saldo akhir digunakan

sebagai saldo transaksi kredit dalam tabel tabtrans.

4.2.2.11. Penghapusan Transaksi Tabungan

Fitur penghapusan transaksi tabungan digunakan oleh seorang

Manajer ketika ingin menghapus transaksi tabungan yang tidak benar,

seperti kesalahan masukan data rekening tabungan dari subsistem teller

atau kesalahan dalam proses pemindahbukuan. Data transaksi yang

ditampilkan dalam fitur penghapusan transaksi hanya data transaksi yang

Page 275: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

253

sama dengan tanggal aplikasi yang dimasukkan Manajer ketika login ke

dalam sistem untuk pertama kalinya.

Gambar 4.18. Tampilan Penghapusan Data Transaksi

Untuk menghapus transaksi tabungan, Manajer memilih salah

satu baris data transaksi tabungan, kemudian menekan tombol “Hapus”.

Sistem akan menanyakan apakah ingin menghapus data terpilih. Jika

Manajer memilih ya maka sistem akan memanggil metode

hapusDataTransaksiTabungan di kelas EntitasTransaksiTabungan. Baris

perintah hapusDataTransaksiTabungan dapat dilihat dibawah ini.

public boolean hapusDataTransaksiTabungan(int rowIndex, java.util.Vector dataInput) throws SQLException {

int lastIdxRec = getRowCount();

boolean kondisi = false;

String sql = "{ call sp_hapus_Datatranstab(?)}";

Page 276: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

254

try {

cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);

cn.setAutoCommit(false);

java.sql.CallableStatement pstmt = cn.prepareCall(sql);

//ganti setiap simbol ? dengan nilai yang diharapkan

pstmt.setString(1, (String) dataInput.get(0));

//kirim sql ke database server dan jalankan

pstmt.executeUpdate();

pstmt.close();

fireTableRowsDeleted(lastIdxRec, lastIdxRec);

baris.removeElementAt(rowIndex);

kondisi = true;

cn.commit();

cn.setAutoCommit(true);

} catch (SQLException ex) {

cn.rollback();

ex.printStackTrace();

kondisi = false;

Page 277: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

255

}

return kondisi;

}

Tingkat transaksi basis data yang digunakan untuk menghapus

transaksi tabungan adalah serializable. Setelah mengganti parameter

masukan untuk stored procedure sp_hapus_Datatranstab maka

dieksekusi dengan perintah pstmt.executeUpdate(). Jika proses penghapusan

transaksi tabungan berhasil maka akan baris data berisi data transaksi yang

dihapus dihilangkan dari tampilan di penghapusan transaksi tabungan.

Selanjutnya transaksi basis data menjalankan metode commit. Jika

penghapusan transaksi gagal, maka transaksi basis data menjalankan

metode rollback.

4.2.2.12. Pencetakan Laporan Nominatif

Fitur pencetakan laporan nominatif digunakan Manajer untuk

mencetak data saldo nominatif semua rekening tabungan sejak rekening

dibuka hingga periode tertentu.

Page 278: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

256

Gambar 4.19. Tampilan Pencetakan Laporan Nominatif Tabungan

Untuk mencetak laporan nominatif tabungan, Manajer

memasukkan tanggal periode cetak laporan nominatif dan kemudian

menekan tombol “Cetak”.

4.2.2.13. Pencetakan Laporan Bunga, Pajak dan Administrasi Tabungan

Fitur pencetakan laporan bunga, pajak dan administrasi

tabungan digunakan Manajer untuk mencetak data bunga, pajak dan

administrasi rekening tabungan pada periode satu bulanan.

Gambar 4.20. Tampilan Pencetakan Laporan Bunga, Pajak dan

Administrasi Tabungan

Untuk mencetak laporan bunga, pajak, dan administrasi

tabungan, Manajer memasukkan tanggal periode awal bulan dan akhir

bulan cetak laporan bunga, pajak, dan administrasi, kemudian menekan

tombol “Cetak”.

Page 279: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

257

4.2.2.14. Pencetakan Laporan Transaksi Tabungan

Fitur pencetakan transaksi tabungan digunakan Manajer untuk

mencetak data transaksi rekening tabungan pada periode satu bulanan.

Gambar 4.21. Tampilan Pencetakan Laporan Transaksi Tabungan

Untuk mencetak laporan transaksi tabungan, Manajer

memasukkan tanggal periode awal bulan dan akhir bulan cetak laporan

transaksi, kemudian menekan tombol “Cetak”.

4.2.2.15. Pencetakan Laporan Mutasi Tabungan

Fitur pencetakan laporan mutasi tabungan digunakan Manajer

untuk mencetak laporan daftar rekening yang melakukan mutasi pada

periode waktu satu bulanan.

Gambar 4.22. Tampilan Pencetakan Laporan Mutasi Tabungan

Page 280: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

258

Untuk mencetak laporan mutasi tabungan, Manajer

memasukkan tanggal periode awal bulan dan akhir bulan cetak laporan

mutasi tabungan, kemudian menekan tombol “Cetak”.

Page 281: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

259

BAB V

ANALISIS HASIL

5.1. Analisis Hasil Implementasi

5.1.1. Analisis Unjuk Kerja Multiplatform Subsistem yang Baru

Subsistem tabungan yang baru dikembangkan menggunakan teknologi

bahasa pemrograman Java yang mendukung berbagai platform sistem operasi.

Subsistem tabungan yang baru juga telah diujicobakan pada dua sistem operasi

yaitu Windows XP Service Pack 2 dan Linux Mint 8 Gloria. Untuk menjalankan

subsistem tabungan yang baru diperlukan Java Virtual Machine (JVM) dan

server basis data MySQL versi 5.1.

Hasil uji coba subsistem tabungan yang baru di kedua sistem operasi

dapat berjalan dengan baik. Ujicoba kemampuan multiplatform dilakukan dengan

menempatkan satu buah server basis data yang diakses bersamaan oleh dua buah

komputer klien yang menjalankan subsistem tabungan. Komputer klien yang

pertama menggunakan sistem operasi Windows XP Service Pack 2 dan komputer

klien yang kedua menggunakan sistem operasi Linux Mint 8 Gloria.

Dengan kemampuan subsistem tabungan yang baru dapat memberikan

alternatif pilihan platform sistem operasi yang ingin digunakan untuk pengadaan

dan penggunaan subsistem tabungan dari sistem informasi lembaga keuangan

Mikro. Dengan kemampuan multiplatform yang dimiliki subsistem tabungan yang

Page 282: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

260

baru, BPR dapat menggunakan platform tidak berbayar seperti keluarga LINUX

untuk menjalankan subsistem tabungan yang baru, sehingga dapat menekan biaya

pengadaan dan penggunaan subsistem tabungan yang baru.

5.1.2. Analisis Unjuk Kerja Teknologi Basis Data Subsistem yang Baru

Dari segi teknologi basis data, sistem baru lebih unggul jika

dibandingkan dengan sistem sebelumnya, karena pada sistem yang baru sudah

menggunakan teknologi basis data MySQL 5.1 sedangkan pada sistem yang lama

menggunakan teknologi basis data MySQL 3.

Tabel berikut adalah rangkuman perbandingan teknologi server basis

data MySQL versi 3 dengan versi 5.

Tabel 5.1. Perbandingan server MySQL

(Sumber dari http://www.wlug.org.nz/PostgresVsMysql)

Page 283: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

261

Dari tabel di atas dapat dilihat bahwa secara pada server MySQL 3 yang

digunakan sistem yang lama belum mendukung konsep transaksi, sedangkan pada

subsistem tabungan baru yang menggunakan server MySQL 5.1 sudah

mendukung konsep transaksi, sehingga dari segi teknologi dapat disimpulkan

bahwa server basis data subsistem tabungan yang baru lebih baik dibandingkan

dengan subsistem tabungan sebelumnya.

Pada subsistem yang lama proses manipulasi data dilakukan pada tingkat

antarmuka dan tidak diletakkan pada basis data subsistem. Hal ini dilakukan

karena pada server basis data subsistem yang lama belum mengenal stored

procedure yang dapat digunakan untuk melakukan beberapa langkah sekaligus

dalam memanipulasi data tertentu. Perintah-perintah untuk manipulasi basis data

yang berada pada program aplikasi juga tidak mengunakan mekanisme transaksi

yang dapat mencegah proses manipulasi data yang tidak benar atau mengalami

kegagalan. Padahal kegagalan pada subsistem lama sering terjadi pada tingkat

program aplikasi. Jika proses manipulasi data dijalankan, kemudian subsistem

lama mengalami kegagalan maka proses manipulasi data akan diulangi dari awal.

Selain itu juga, data hasil manipulasi sebelumnya harus dihapus secara manual

untuk mencegah munculnya data yang ganda (redundancy). Namun sering

ditemukan bahwa sebelum memulai lagi transaksi yang mengalami kegagalan

sebelumnya, data transaksi yang lama tidak dihapus. Hal ini yang dapat

menimbulkan data yang ganda.

Pada subsistem yang baru setiap proses manipulasi data dalam basis data

akan menggunakan tingkat transaksi serial, sehingga jika terjadi kegagalan pada

Page 284: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

262

salah satu proses transaksi maka transaksi akan dibatalkan (rollback). Konsep

transaksi ini digunakan untuk menjaga konsistensi data dalam basis data.

Sedangkan dalam membaca data dari sebuah tabel digunakan tingkat transaksi

repeatable-read, dimana sebuah tabel yang belum menjalankan perintah commit

tidak akan dibaca, sehingga data yang ditampilkan kepada pengguna merupakan

data yang terjamin konsistensinya.

Contoh penggunaan dari transaksi serial dapat dilihat di bawah ini.

/** *starting hitung bunga */ public boolean hitungbunga(String tglAwal, String tglAkhir, String query) { boolean hitungBungaCondition = false; System.out.println("query in jButtonHitungBungaPajakActionPerformed: " + query); try { cn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE); cn.setAutoCommit(false); java.sql.CallableStatement callStmt = cn.prepareCall(query); //java.sql.ResultSet resultSet; callStmt.setString(1, tglAwal); callStmt.setString(2, tglAkhir); callStmt.executeUpdate(); hitungBungaCondition = true; callStmt.close(); cn.commit(); cn.setAutoCommit(true); } catch (SQLException e) { try { cn.rollback(); } catch (SQLException ex) { System.out.println(ex); } hitungBungaCondition = false;

Page 285: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

263

e.printStackTrace(); } // System.out.println("query sql: " + sql); System.out.println("hitungBungaCondition: " + hitungBungaCondition); return hitungBungaCondition; }

Baris perintah diatas adalah salah satu contoh penggunakan mekanisme

transaksi secara serial pada metode perhitungan bunga tabungan. Perintah-

perintah diatas yang dicetak tebal merupakan perintah-perintah untuk melakukan

transaksi basis data secara serial. Perintah

Connection.TRANSACTION_SERIALIZABLE merupakan perintah untuk

menentukan tingkat transaksi dalam basis data menjadi serial. Selanjutkan jika

transaksi berhasil maka transaksi akan dinyatakan dalam kondisi commit dengan

perintah cn.commit(). Sementara jika mengalami kegagalan maka transaksi

akan dibatalkan dengan menggunakan perintah cn.rollback().

Contoh penggunaan dari transaksi dengan tingkat repeatable-read dapat

dilihat di bawah ini.

/** * method for getting status hitung bulan * in every month */ public boolean statusHitungBungaBlnIni(String dateHitung) { boolean kondisi = false; try { cn.setTransactionIsolation(cn.TRANSACTION_REPEATABLE_READ); cn.setAutoCommit(false); java.sql.CallableStatement callStmt = cn.prepareCall(queryStatusHitungBungaBlnIini); java.sql.ResultSet resultSet; callStmt.setString(1, dateHitung); resultSet = callStmt.executeQuery();

Page 286: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

264

while (resultSet.next()) { statusHitungBunga = resultSet.getString(1); } if (statusHitungBunga.isEmpty()) { kondisi = false; } else { kondisi = true; } cn.commit(); cn.setAutoCommit(true); } catch (SQLException ex) { try { cn.rollback(); } catch (SQLException ex1) { System.out.println(ex1); } kondisi = false; ex.printStackTrace(); } System.out.println("statusHitungBunga: " + kondisi); return kondisi; }

Bagian yang dicetak tebal dari baris perintah diatas adalah perintah

untuk menjalankan konsep transaksi tingkat repeatable-read. Tingkat transaksi

repeatable-read berguna untuk mencegah data dari sebuah tabel dibaca terlebih

dahulu jika saja ada transaksi lain yang membaca data yang sama dan belum

berada dalam kondisi commit. Dengan konsep ini sebuah transaksi yang

membutuhkan data-data untuk menjalankan transaksi memperoleh data yang

konsisten, karena tidak dapat diubah transaksi lain sebelum dinyatakan commit

oleh transaksi yang membaca data tersebut. Jika transaksi berhasil maka akan

dinyatakan dalam kondisi commit.

Konsep transaksi serial dan repeatable-read tidak hanya diterapkan pada

kedua metode diatas. Daftar metode yang menggunakan konsep transaksi dapat

Page 287: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

265

dilihat pada lampiran 36.

Proses manipulasi data dalam subsistem yang baru dilakukan pada

tingkat basis data. Proses perhitungan diletakkan dalam sebuah stored procedure.

Subsistem yang baru dirancang dengan mengunakan konsep transaksi dalam basis

data berguna untuk mencegah agar jika terjadi kegagalan subsistem di tingkat

program aplikasi, maka proses perhitungan di basis data tidak mengalami

kegagalan yang menghasilkan data yang tidak konsisten.

5.2. Kelebihan dan Kekurangan Subsistem

Sistem informasi lembaga keuangan mikro subsistem tabungan

memiliki beberapa kelebihan dan kekurangan.

Kelebihan dari sistem ini adalah:

1. Menggunakan teknologi basis data yang mendukung

transaction, stored procedure, triger, dan cursor untuk

menjamin konsistensi data.

2. Dapat berjalan pada platform sistem operasi Linux maupun

Windows yang sudah memiliki Java Runtime Environment

dan server basis data MySQL (untuk mesin server).

Kekurangan dari sistem ini adalah:

1. Sistem informasi lembaga keuangan mikro subsistem

tabungan belum bisa melakukan proses pembuatan suatu

rekening tabungan dengan produk tabungan yang dapat

disesuaikan dengan kebutuhan seorang nasabah.

Page 288: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

266

2. Sistem informasi lembaga keuangan mikro subsistem

tabungan belum bisa melakukan proses backup terhadap

data-data transaksi tabungan secara berkala.

Page 289: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

267

BAB VI

PENUTUP

6.1. Kesimpulan

Berdasarkan hasil analisis, desain dan implementasi sistem maka dapat

disimpulkan bahwa sistem informasi lembaga keuangan mikro subsistem

tabungan yang baru:

1. Dapat berjalan pada berbagai platform sistem operasi (Windows

dan Linux) sehingga dapat memberikan alternatif pilihan platform

sistem operasi yang ingin digunakan untuk pengadaan dan

penggunaan subsistem tabungan.

2. Menggunakan teknologi basis data MySQL versi 5.1 yang sudah

mendukung konsep stored procedure, trigger, cursor, constraints,

transaction, sehingga data-data transaksi tabungan tetap memiliki

integritas dan konsistensi yang baik.

3. Dapat membantu pegawai pada kantor pendukung (back office)

dalam melakukan fungsi-fungsi perhitungan tabungan secara

otomatis.

6.2. Saran

Saran untuk pengembangan sistem informasi lembaga keuangan mikro

subsistem tabungan adalah:

Page 290: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

268

1. Sistem dapat membuat suatu rekening tabungan dengan produk

tabungan yang dapat disesuaikan dengan kebutuhan seorang

nasabah.

2. Sistem dapat melakukan proses backup terhadap data-data

transaksi tabungan secara berkala.

Page 291: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

269

DAFTAR PUSTAKA

Bank Indonesia, 1998, Undang-Undang Nomor 7 Tahun 1992 tentang Perbankan

Sebagaimana Telah Dirubah Dengan Undang-Undang Republik Indonesia

Nomor 10 Tahun 1998, Bank Indonesia, Jakarta

Fitz Gerald, Jerry, 1981, Fundamentals of System Analysis 2nd Edition, Jhon

Willey & Sons, New York

Hermawan, Benny, 2004, Menguasai Java 2 & Object Oriented Programming,

Penerbit Andi, Yogyakarta

Jogiyanto, 2001, Analisis Disain Sistem Informasi : Pendekatan Terstruktur Teori

dan Praktek Aplikasi Bisnis, Andi Offset,Yogyakarta

Dwi Prasetyo, Didik, 2007, 150 Rahasia Pemrograman Java, PT Elex Media

Komputindo, Gramedia Jakarta

Lewis, Phillip M., 2002, Databases And Transaction Processing: An Application-

Oriented Approach, Addison-Wesley, New York

Whitten, Jeffrey L., 2004, System Analysis and Design Methods 6th edition,

McGraw-Hill, New York

Wijono, Wiloejo Wiryo, Pemberdayaan Lembaga Keuangan Mikro Sebagai

Salah Satu Pilar Sistem Keuangan Nasional: Upaya Konkrit Memutus

Mata Rantai Kemiskinan, Kajian Ekonomi dan Keuangan, Edisi Khusus

November 2005, Halaman 90-91

__________, (2009), Mengetahui Perhitungan Bunga Tabungan,

(www.bi.go.id/web/id/Tentang+BI/Edukasi/Perbankan/perbankan47.htm

diakses tanggal 23 November 2009 jam 13.19 WIB)

Page 292: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

270

__________, (2010), Keunggulan Java,

(http://scqolbu.com/pemrograman/94.html diakses 2 January 2010 jam

2:35 WIB)

__________,(2009), http://www.wlug.org.nz/PostgresVsMysql (diakses tanggal

26 November 2009)

Page 293: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

271

LAMPIRAN

Page 294: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

272

Lampiran 1. Kelas Diagram Lengkap Login

Page 295: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

273

Lampiran 2. Kelas Diagram Lengkap Pengelolaan Produk Tabungan

Page 296: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

274

Lampiran 3. Kelas Diagram Lengkap Pengelolaan Grup Tabungan

Page 297: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

275

Lampiran 4. Kelas Diagram Lengkap Pengelolaan Kode Pemilik Tabungan

Page 298: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

276

Lampiran 5. Kelas Diagram Lengkap Pengelolaan Kode Referensi

Page 299: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

277

Lampiran 6. Kelas Diagram Lengkap Pengelolaan Data Rekening

Page 300: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

278

Lampiran 7. Kelas Diagram Lengkap Perhitungan Bunga dan Pajak Tabungan

Page 301: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

279

Lampiran 8. Kelas Diagram Lengkap Pengelolaan Daftar Bunga, Pajak dan Administrasi Tabungan

Page 302: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

280

Lampiran 9. Kelas Diagram Lengkap Pemindahbukuan

Page 303: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

281

Lampiran 10. Kelas Diagram Lengkap Pengelolaan Transaksi Tabungan

Page 304: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

282

Lampiran 11. Kelas Diagram Lengkap Pengelolaan Pencetakan Laporan

Page 305: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

283

Lampiran 12. Diagram Sekuensial Login

Page 306: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

284

Lampiran 13. Diagram Sekuensial Logout Direksi

Page 307: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

285

Lampiran 14. Diagram Sekuensial Logout Manajer

Lampiran 15. Diagram Sekuensial Penambahan Produk Tabungan

Page 308: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

286

Lampiran 16. Diagram Sekuensial Pengubahan Produk Tabungan

Lampiran 17. Diagram Sekuensial Penghapusan Produk Tabungan

Page 309: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

287

Lampiran 18. Diagram Sekuensial Pencarian Produk Tabungan

Page 310: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

288

Lampiran 19. Diagram Sekuensial Penambahan Grup Tabungan

Page 311: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

289

Lampiran 20. Diagram Sekuensial Pengubahan Grup Tabungan

Page 312: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

290

Lampiran 21. Diagram Sekuensial Penghapusan Grup Tabungan

Page 313: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

291

Lampiran 22. Diagram Sekuensial Pencarian Grup Tabungan

Page 314: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

292

Lampiran 23. Diagram Sekuensial Penambahan Data Rekening

Page 315: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

293

Lampiran 24. Diagram Sekuensial Pengubahan Data Rekening

Page 316: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

294

Lampiran 25. Diagram Sekuensial Penghapusan Data Rekening

Page 317: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

295

Lampiran 26. Diagram Sekuensial Pencarian Data Rekening

Page 318: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

296

Lampiran 27. Diagram Sekuensial Perhitungan Bunga dan Pajak

Tabungan

Page 319: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

297

Lampiran 28. Diagram Sekuensial Pencarian Daftar Bunga, Pajak dan

Administrasi Tabungan

Page 320: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

298

Lampiran 29. Diagram Sekuensial Pengubahan Daftar Bunga, Pajak dan

Administrasi Tabungan

Page 321: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

299

Lampiran 30. Diagram Sekuensial Pemindahbukuan

Page 322: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

300

Lampiran 31. Diagram Sekuensial Penghapusan Transaksi

Page 323: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

301

Lampiran 32. Diagram Sekuensial Pencetakan Laporan Nominatif

Lampiran 33. Diagram Sekuensial Pencetakan Laporan Bunga, Pajak

dan Administratif Tabungan

Page 324: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

302

Lampiran 34. Diagram Sekuensial Pencetakan Laporan Transaksi

Tabungan

Lampiran 35. Diagram Sekuensial Pencetakan Laporan Mutasi

Tabungan

Page 325: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

303

Lampiran 36. Daftar Nama Metode yang Menggunakan Konsep

Transaksi

A. Metode yang Menggunakan Konsep Transaksi Serial

1. public boolean masukProdukTabungan(java.util.Vector data)

2. public boolean ubahProdukTabungan(java.util.Vector data)

3. public boolean hapusProdukTabungan(String data)

4. public boolean ubahProsentaseBungaDanPajak(java.util.Vector

dataProsentase)

5. public boolean masukKodeGrupTabungan(Vector dataInput)

6. public boolean ubahKodeGrupTabungan(java.util.Vector dataInput)

7. public boolean hapusKodeGrupTabungann(Vector dataCollector)

8. public boolean masukKodeReferensi()

9. public boolean ubahKodeReferensi()

10. public boolean hapusKodeReferensi(String kodeTransaksiId)

11. public boolean masukDataRekeningNasabah(java.util.Vector data)

12. public boolean ubahDataRekeningNasabah(java.util.Vector data)

13. public boolean hapusDataRekeningNasabah(String data)

14. public boolean hapusDataTransaksiTabungan(int rowIndex,

java.util.Vector dataInput)

15. public boolean overbookingProcess(String tglOverbooking,String

pengguna)

16. public boolean ubahDaftarBungaDanPajakTabungan(int rowIndex,

java.util.Vector dataInput)

17. public boolean hitungbunga(String tglAwal, String tglAkhir, String

query)

18. public boolean ubahDaftarBungaDanPajakTabungan(int rowIndex,

java.util.Vector dataInput)

B. Metode yang Menggunakan Konsep Transaksi Repeatable-Read

1. public void getRecDbProdTab(String query)

Page 326: SISTEM INFORMASI LEMBAGA KEUANGAN MIKRO SUBSISTEM … · 2018. 11. 29. · was implemented using the Java programming language and MySQL database 5.1, NetBeans 6.5.1 and SQL Yog browser

304

2. public Vector cariProdukTabungan(String kataKunci)

3. public void getRecDbKodeGrupTabungan(String query)

4. public Vector cariDataKodeGrupTabungan(String kataKunci, String

Grup)

5. public void getRecDBKodeTransTab(String query)

6. public Vector cariKodeRef(String kataKunci)

7. private void getEntityDataNasabah(String nasabahId)

8. public void getRecDbDataNasabah(String query)

9. public Vector setdataForJenisTabungan(String selectedItem, boolean

kondisi)

10. public Vector cariDataRekNasabah(String kataKunci)

11. public String nomorRekening(String produkTabungan)

12. public void getRecDBTransTab(String query, String dateCondition)

13. private void getRecDBDaftarBungaDanPajakTabungan(String query)

14. public Vector cariDataNasabah(String key)

15. public boolean dataBulanIniOverbooking(String tglAwal)

16. public boolean statusOverbookingBungaBlnIni(String dateHitung)

17. private void getRecDBDaftarBungaDanPajakTabungan(String query)

18. public boolean statusHitungBungaBlnIni(String dateHitung)

19. public boolean statusBulanSebelumnya(String dateBlnIni)

20. public boolean dataBulanIni(String tglAwal, String tglAkhir)