Anda di halaman 1dari 20

PROGRAM PENGOLAHAN DATABASE PERBANKAN DENGAN MENGGUNAKAN PROGRAM APLIKASI

DELPHI DAN MICROSOFT ACCESS 2003

Disusun Oleh :

M. RINALDI S. (D0A04038)

UNIVERSITAS PADJADJARAN FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM PROGRAM DIPLOMA III ILMU KOMPUTER PROGRAM STUDI MANAJEMEN INFORMATIKA BANDUNG 2006

BAB I LATAR BELAKANG MASALAH Saat ini banyak bank yang menggunakan database berskala besar dalam mengelola data para nasabahnya. Namun terkadang database berskala besar memiliki berbagai kendala yang sering menjadi masalah dalam pengelolaan database perbankan. Salah satunya kendala dalam hal peralatan yang digunakan, yaitu peralatan yang digunakan untuk menyimpan database berskala besar tersebut supaya aman dan efisien. Oleh karena itu database berskala besar membutuhkan biaya dalam pengusahaan sarana dan prasarananya. Seiring dengan perkembangan Software Sistem Manajemen Database, sekarang ini terdapat banyak sekali software yang dapat mengelola manajemen database. Namun tentu saja antar software pengelola sistem database tersebut memiliki keunggulan dan kelemahan masing-masing. Untuk itu dalam pengolahan database perbankan, penyusun ingin mencoba menggunakan software sistem pengelola database yang mengelola database, yaitu dengan menggunakan software sistem manajemen database Microsoft Access Delphi . Penyusun memilih software tersebut karena software tersebut terus berkembang sehingga program pengolahan database ini dapat terus di-update sesuai dengan perkembangan software tersebut, software diatas juga merupakan software yang telah banyak digunakan oleh masyarakat sehingga dalam pengelolaannya akan terasa lebih mudah. Walau skala database yang dapat dicakup merupakan skala yang yang tidak terlalu besar jika dibandingkan dengan software pengelola sistem manajemen database yang banyak digunakan bank sekarang ini namun keunggulan dari program ini adalah fiturnya yang mewakili program aplikasi perbankan pada umumnya serta tampilan yang user friendly sehingga dapat mempermudah dalam penggunaannya. 2003 sedangkan untuk pengolahannya penulis akan menggunakan software bahasa pemrograman Borland

BAB II IDENTIFIKASI MASALAH Dengan memperhatikan latar belakang masalah sebelumnya penyusun dapat menyimpulkan beberapa masalah yang sering timbul dalam mengelola database perbankan. Diantaranya yaitu : a. Masalah pengaksesan database sewaktu memanipulasi data yang sering salah diakibatkan banyaknya data yang kurang teratur dalam database, baik itu secara pembuatan table naupun hubungan (relationship) antar tabel itu sendiri. b. Sering terjadinya duplikasi data (data redudancy) yang baik secara disengaja maupun tidak menimbulkan permasalahan yang besar dalam pengolahan database perbankan yang pasti mengelola berbagai hal yang berhubungan dengan uang. c. Sedikitnya database yang digunakan pastilah berhubungan dengan database lainnya sehingga perlu dibuat semacam hubungan / relasi atar database sehingga pengolahan database tersebut dapat lebih efisien dan efektif. Untuk itu penyusun menggunakan Software Pengelola Sistem Manajemen Database Microsoft Access dikarenakan software tersebut telah banyak digunakan oleh masyarakat sehingga dalam sosialisasinya program ini akan lebih mudah untuk dimengerti. Setidaknya walau database telah dibuat dengan baik perlu ada semacam program aplikasi untuk mengolah database tersebut. Dalam hal ini penyusun menggunakan software pemrograman Delphi yang dapat membuat interface aplikasi yang menarik dan mudah untuk digunakan serta dipelajari.

BAB III TUJUAN DAN PEMECAHAN MASALAH Tujuan dari pembuatan program aplikasi ini sendiri adalah penulis ingin mencoba untuk mengelola database perbankan yang biasanya dikelola menggunakan software pengolah database berskala besar dengan menggunakan aplikasi database berskala menengah kebawah dengan beberapa fitur yang tidak kalah berguna dengan softwaresoftware perbankan lainnya. Untuk memecahkan masalah-masalah yang telah disebutkan sebelumnya penulis merencanakan untuk membuat program aplikasi perbankan dengan berbagai fitur sebagai berikut : a. Fitur yang berhubungan dengan data administrasi nasabah misalnya : Membuka rekening bank (opening), Menutup rekening bank (closing), Memindahbukukan rekening bank satu ke rekening baru yang lain, dan Perubahan data nasabah yang telah ada. b. Fitur yang berhubungan dengan pengelolaan rekening tabungan nasabah Penarikan tunai, Penyetoran tunai, Transfer antar rekening, dan Transaksi-transaksi lain dengan syarat-syarat tertentu. c. Fitur yang berhubungan dengan pengolahan database user program dalam hal ini adalah user yang mengelola database perbankan itu sendiri mulai dari teller, manajer dan supervisor. Misalnya : Penambahan dan pengurangan data pegawai, Pencatatan waktu login user serta transaksi apa saja yang terjadi saat user tersebut login. d. Fitur-fitur lain yang akan ditentukan kemudian. misalnya :

Untuk itu diperlukan beberapa tabel dan database yang terpisah namun masih memiliki hubungan / relasi baik itu secara langsung maupun tidak langsung.

BAB IV DESAIN KONSEP DATABASE PERBANKAN Database perbankan merupakan suatu database yang memiliki sistem yang kompleks. Sehingga untuk pengelolaannya diperlukan pengonsepan database perbankan dalam bentuk desain-desain yang mewakili seluruh entitas yang berhubungan dengan database perbankan tersebut. Namun sebelumnya desain-desain tersebut harus dikelompokkan menurut jenisjenis sistem yang diwakilinya. Dalam hal ini penyusun membagi keseluruhan sistem pengelolaan perbankan menjadi beberapa subsistem, antara lain yaitu : SUBSISTEM PENGELOLAAN DATA NASABAH SUBSISTEM PENGELOLAAN TRANSAKSI NASABAH SUBSISTEM PENGELOLAAN DATA USER SUBSISTEM PEMBUATAN LAPORAN Subsistem-subsistem diatas melibatkan beberapa entitas yang saling berhubungan, yaitu : Nasabah (Nasabah tabungan, Nasabah deposito), Karyawan Bank (Teller, Manajer, dan Supervisor) , Bank (dalam hal ini mewakili keseluruhan sistem bank), Rekening (merupakan entitas yang mewakili tempat nasabah menyimpan uang). Sedangkan desain konsep relasi antar entitas itu sendiri dapat dilihat seperti diagram sebagai berikut :

ID_BANK

NAMA_BANK

BANK

ENTRi DATA

ALAMAT_BANK

BEKERJA PADA PILIH

DAFTAR
ID NASABAH NAMA_KARYAWAN

NAMA_NASABAH

NASABAH
SALDO

TRANSAKSI

KARYAWAN BANK
ID TRANSAKSI TGL_DAN_WAKTU

ID KARYAWAN

ALAMAT_NASABAH

USERNAME

JENIS_TRANSAKSI

PUNYA

MANAGE

NO REKENING

MATA UANG

REKENING

KELOLA

JUMLAH

Diagram 1.1 Desain Konseptual Pengelolaan Database Perbankan

Pada Diagram Desain Konseptual Database Perbankan diatas, dapat kita simpulkan bahwa setiap entitas memiliki fungsi dan tujuan masing-masing. Entitas Bank memiliki hubungan dengan dua Entitas lain yang saling berelasi yaitu Entitas Nasabah dan Entitas Karyawan Bank. Untuk hubungan relasinya, merupakan relasi one to many yaitu sebuah Bank dapat memiliki banyak Nasabah sedangkan Nasabah hanya berhubungan dengan Bank tersebut. Untuk kardinalitasnya terhadap Entitas Nasabah, Nasabah harus memiliki paling tidak satu Rekening pada sebuah Bank untuk menjadi seorang nasabah, sebaliknya Bank minimum harus memiliki seorang Nasabah pula.

Entitas Nasabah memiliki hubungan dengan Entitas Bank, Karyawan Bank (dalam hal ini adalah teller) dan Entitas Rekening. Dengan Karyawan Bank, Nasabah memiliki hubungan untuk melakukan transaksi dan pendaftaran karena itu relasinya adalah many to many. Kardinalitasnya terhadap Karyawan Bank, Nasabah membutuhkan Karyawan Bank untuk melakukan transaksi, sedangkan Karyawan Bank dapat berdiri sebagai Entitas tanpa adanya Nasabah. Nasabah dapat memiliki beberapa Rekening sedangkan satu Rekening hanya untuk satu Nasabah (one to many). Nasabah dan Rekening saling memiliki hubungan yang erat, tanpa Nasabah tidak akan ada Rekening begitu juga sebaliknya. Entitas Karyawan Bank berhubungan dengan Bank, Rekening, Nasabah serta Karyawan Bank itu sendiri. Karyawan Bank memiliki kewajiban dalam mengelola Rekening Nasabah walaupun tanpa Rekening, Karyawan Bank dapat berdiri menjadi Entitas tersendiri. Untuk kardinalitasnya, seorang Karyawan Bank belum tentu mengelola suatu Rekening, tetapi Rekening pasti dikelola oleh salah satu Karyawan Bank. Karyawan Bank terdiri atas 3 golongan yaitu Teller, Manager dan Supervisor. Manager membawahi beberapa Supervisor sedangkan Supervisor membawahi beberapa Teller. Hubungan yang terjadi merupakan hubungan one to many dimana Supervisor maupun Manager paling tidak memiliki satu anak buah untuk diatur sedangkan Karyawan Bank (misalnya Manager) belum tentu memiliki atasan yang mengaturnya. Sedangkan Entitas Rekening memiliki hubuangn dengan Entitas Nasabah dan Entitas Karyawan Bank seperti yang dijelaskan sebelumnya. Dengan melihat hubungan antar Entitas diatas kita dapat menyimpulkan dalam mengelola suatu Database Perbankan diperlukan suatu kerjasama yang kompak antar Entitas. Sehingga segala kegiatan yang mungkin atau harus terjadi dapat terlaksana dengan baik dan lancar. Misalnya dalam membuka rekening tabungan yang baru, seorang Nasabah harus menghubungi / mendaftar pada Karyawan bank (Teller) yang kemudian harus mengisi formulir yang ada dengan benar. Apabila nasabah tersebut salah dalam mengisi formulir maka ada kemungkinan akan terjadi kekurangan data maupun kerancuan dalam database itu sendiri.

BAB V DESAIN LOGIS DATABASE PERBANKAN Setelah mendapatkan konsep dasar dari relasi antar entitas yang berhubungan dalam database perbankan ini. Kita dapat menentukan logika-logika dari konsep desain tersebut. Sesuai dengan pembahasan sebelumnya, database yang digunakan berhubungan dengan empat entitas. Hubungan logis keempat entitas tersebut antara lain : Relasi antara Entitas Bank dengan Entitas Karyawan Bank
ID_BANK NAMA_BANK

BEKERJA PADA

ID KARYAWAN NAMA_KARYAWAN

ALAMAT_BANK

BANK

ENTRI DATA

KARYAWAN BANK

USERNAME PASSWORD ID_BANK

Diagram 2.1 Relasi Entitas Bank dengan Entitas Karyawan Bank Dengan melihat hubungan diatas kita dapat menyimpulkan logical design dari kedua relasi diatas. Yaitu : BANK (ID_BANK,NAMA_BANK,ALAMAT_BANK); KARYAWAN (ID_KARYAWAN ,NAMA_KARYAWAN,USERNAME,PASSWORD, ID_BANK) Relasi antara Entitas Bank dengan Entitas Nasabah
ID_BANK ID NASABAH NAMA_BANK NAMA_NASABAH ALAMAT_BANK

BANK

PILIH

NASABAH

ALAMAT_NASABAH

ID_BANK

Diagram 2.2 Relasi Entitas Bank dengan Entitas Nasabah

Dengan melihat hubungan diatas kita dapat menyimpulkan logical design dari kedua relasi diatas. Yaitu : BANK (ID_BANK,NAMA_BANK,ALAMAT_BANK); NASABAH (ID_NASABAH ,NAMA_NASABAH,ALAMAT_NASABAH,ID_BANK). Relasi antara Entitas Karyawan Bank dengan Entitas Nasabah
DAFTAR
ID KARYAWAN ID NASABAH NAMA_KARYAWAN NAMA_NASABAH

NASABAH

TRANSAKSI

KARYAWAN BANK

USERNAME PASSWORD

ALAMAT_NASABAH ID NASABAH JUMLAH JENIS_TRANSAKSI ID KARYAWAN ID TRANSAKSI

TGL_DAN_WAKTU

Diagram 2.3 Relasi Entitas Karyawan Bank dengan Entitas Nasabah Dengan melihat hubungan diatas kita dapat menyimpulkan logical design dari kedua relasi diatas. Yaitu : KARYAWAN (ID_KARYAWAN ,NAMA_KARYAWAN,USERNAME,PASSWORD); NASABAH (ID_NASABAH ,NAMA_NASABAH,ALAMAT_NASABAH); TRANSAKSI (ID_TRANSAKSI ,JENIS_TRANSAKSI,JUMLAH,TGL_DAN_WAKTU, ID_KARYAWAN,ID_NASABAH).

Relasi antara Entitas Karyawan Bank dengan Entitas Rekening

NO REKENING

ID KARYAWAN

MATA UANG SALDO

REKENING

KELOLA

KARYAWAN BANK
ID KARYAWAN

NAMA_KARYAWAN

USERNAME NO REKENING PASSWORD NO_PENGELOLAAN

Diagram 2.4 Relasi Entitas Karyawan Bank dengan Entitas Rekening Dengan melihat hubungan diatas kita dapat menyimpulkan logical design dari kedua relasi diatas. Yaitu : KARYAWAN (ID_KARYAWAN ,NAMA_KARYAWAN,USERNAME,PASSWORD); REKENING (NO_REKENING,SALDO,MATA_UANG); PENGELOLAAN (NO_PENGELOLAAN ,ID_KARYAWAN,NO_REKENING). Relasi antara Entitas Rekening dengan Entitas Nasabah

ID NASABAH NAMA_NASABAH NO REKENING ALAMAT_NASABAH

NO REKENING

NASABAH

PUNYA

REKENING

MATA UANG SALDO

Diagram 2.5 Relasi Entitas Nasabah dengan Entitas Rekening Dengan melihat hubungan diatas kita dapat menyimpulkan logical design dari kedua relasi diatas. Yaitu : REKENING (NO_REKENING,SALDO,MATA_UANG); NASABAH (ID_NASABAH ,NAMA_NASABAH,ALAMAT_NASABAH,NO_REKENING).

Relasi intern Entitas Karyawan Bank


MANAGE

KARYAWAN BANK
ID_MANAGER KODE_JENIS ID KARYAWAN NAMA_KARYAWAN

PASSWORD

USERNAME

Diagram 2.6 Relasi Intern Entitas Karyawan Bank Dengan melihat hubungan diatas kita dapat menyimpulkan logical design dari relasi diatas. Yaitu : KARYAWAN (ID_KARYAWAN ,NAMA_KARYAWAN,USERNAME,PASSWORD, ID_MANAGER,KODE_JENIS); Dari enam relasi diatas kita dapat menyimpulkan bahwa attribut tiap-tiap entitas dapat dijadikan kolom dalam tabel database perbankan. Logical design yang terbentuk antara lain : BANK (ID_BANK,NAMA_BANK,ALAMAT_BANK); KARYAWAN (ID_KARYAWAN ,NAMA_KARYAWAN,USERNAME,PASSWORD, ID_BANK,ID_MANAGER,KODE_JENIS); NASABAH (ID_NASABAH ,NAMA_NASABAH,ALAMAT_NASABAH,ID_BANK, NO_REKENING); REKENING (NO_REKENING,SALDO,MATA_UANG); PENGELOLAAN (NO_PENGELOLAAN ,ID_KARYAWAN,NO_REKENING); TRANSAKSI (ID_TRANSAKSI ,JENIS_TRANSAKSI,JUMLAH,TGL_DAN_WAKTU, ID_KARYAWAN,ID_NASABAH).

BAB VI NORMALISASI DATABASE PERBANKAN Dengan adanya tujuh ralasi yang didapat dari proses logical design pada bab sebelumnya, kita menyadari bahwa bentuk dari relasi tersebut sedikit tidak normal. Ketidak normalan tersebut dapat kita lihat misalnya pada relasi karyawan :
KODE_JENIS JENIS_KARYAWAN

MANAGE

KARYAWAN BANK
ID MANAGER KODE_JENIS ID KARYAWAN NAMA_KARYAWAN

PASSWORD

USERNAME

Diagram 2.7 Relasi Intern Entitas Karyawan Bank Disebutkan bahwa relasi diatas memiliki hubungan antar karyawan dimana satu karyawan (manager/supervisor) me-manage banyak karyawan (teller atau supervisor). Untuk itu dapat kita buat suatu relasi baru yaitu relasi MANAGER yang isinya berupa : MANAGER (ID_MANAGER,ID_KARYAWAN). Walaupun isi dari ID_MANAGER dan ID_KARYAWAN sama-sama nomor ID yang sifatnya unique namun tidak seluruh karyawan merupakan atasan yang memiliki bawahan. Dalam hal ini Microsoft Access 2003 tidak mendukung adanya foreign key dengan

primary key yang berada pada satu tabel. Untuk itu perlu dibuat relasi yang baru.

Selain itu dalam tabel Rekening, tabel Nasabah maupun tabel Karyawan sendiri terdapat kolom jenis yang memungkinkan penggunaan memori yang berlebihan. Ada baiknya isi dari kolom jenis tersebut diubah menjadi kode khusus dan terdapat relasi lain yang mejelaskan kode khusus tersebut sehingga tidak memakan memori yang terlampau besar jika terdapat pertumbuhan Rekening, Nasabah maupun Karyawan yang besar. JENIS_KARYAWAN (KODE_JENIS,JNS_KARYAWAN); JENIS_NASABAH (KODE_JENIS,JNS_NASABAH); JENIS_REKENING (KODE_JENIS,JNS_REKENING). Setelah mengalami proses NORMALISASI maka didapat logical design sebagai berikut : BANK (ID_BANK,NAMA_BANK,ALAMAT_BANK); KARYAWAN (ID_KARYAWAN ,NAMA_KARYAWAN,USERNAME,PASSWORD, ID_BANK,ID_MANAGER,KODE_JENIS); NASABAH (ID_NASABAH ,NAMA_NASABAH,ALAMAT_NASABAH,ID_BANK, NO_REKENING,KODE_JENIS); REKENING (NO_REKENING,SALDO,MATA_UANG,KODE_JENIS); PENGELOLAAN (NO_PENGELOLAAN ,ID_KARYAWAN,NO_REKENING); TRANSAKSI (ID_TRANSAKSI ,JENIS_TRANSAKSI,JUMLAH,TGL_DAN_WAKTU, ID_KARYAWAN,ID_NASABAH); MANAGER (ID_MANAGER,ID_KARYAWAN); JENIS_KARYAWAN (KODE_JENIS,JNS_KARYAWAN); JENIS_NASABAH (KODE_JENIS,JNS_NASABAH); JENIS_REKENING (KODE_JENIS,JNS_REKENING).

BAB VII DESAIN FISIK DATABASE PERBANKAN Menilik desain konsep dan desain logika dari Database Perbankan di atas kita dapat membuat realisasi fisiknya. Yaitu dalam desain fisik, berupa tabel-tabel dari Database Perbankan. Tabel-tabel tersebut merepresentasikan attribut-attribut desain konsep maupun kolom-kolom desain logika kedalam field-field yang dapat digunakan dalam membangun Database Perbankan dengan menggunakan Database Management System. Dalam hal ini penyusun akan menggunakan Microsoft Access 2003 untuk membuatnya. Desain fisik dari Database perbankan tersebut dapat terlihat dalam tabel sebagai berikut : BANK ( ID_BANK,NAMA_BANK,ALAMAT_BANK);

Desain Fisiknya :

Gambar 1.1 Desain Fisik Tabel Bank dalam MS Access

Tabel 1.1 Desain Fisik Bank Nama Field ID_BANK NAMA_BANK ALAMAT_BANK KARYAWAN ( Desain Fisiknya : Tipe Data TEXT TEXT TEXT Ukuran Field 10 50 50

ID_KARYAWAN ,NAMA_KARYAWAN,USERNAME,PASSWORD,

ID_BANK,ID_MANAGER,KODE_JENIS);

Gambar 1.2 Desain Fisik Tabel Karyawan dalam MS Access

Tabel 1.2 Desain Fisik Karyawan Nama Field ID_KARYAWAN NAMA_KARYAWAN USERNAME PASSWORD ID_BANK ID_MANAGER KODE_JENIS NASABAH ( Tipe Data TEXT TEXT TEXT TEXT TEXT TEXT TEXT Ukuran Field 10 50 20 20 10 10 3

ID_NASABAH ,NAMA_NASABAH,ALAMAT_NASABAH,ID_BANK,

NO_REKENING); Desain Fisiknya :

Gambar 1.3 Desain Fisik Tabel Nasabah dalam MS Access Tabel 1.3 Desain Fisik Nasabah Nama Field ID_NASABAH NAMA_NASABAH Tipe Data TEXT TEXT Ukuran Field 10 50

ALAMAT_NASABAH ID_BANK NO_REKENING REKENING (

TEXT TEXT TEXT

50 10 20

NO_REKENING,SALDO,MATA_UANG);

Desain Fisiknya :

Gambar 1.4 Desain Fisik Tabel Rekening dalam MS Access Tabel 1.4 Desain Fisik Rekening Nama Field NO_REKENING SALDO MATA_UANG PENGELOLAAN ( Desain Fisiknya : Tipe Data TEXT NUMBER TEXT Ukuran Field 10 DOUBLE 10

NO_PENGELOLAAN ,ID_KARYAWAN,NO_REKENING);

Gambar 1.5 Desain Fisik Tabel Pengelolaan dalam MS Access Tabel 1.5 Desain Fisik Pengelolaan Nama Field NO_PENGELOLAAN ID_KARYAWAN NO_REKENING TRANSAKSI ( Desain Fisiknya : Tipe Data TEXT TEXT TEXT Ukuran Field 10 50 20

ID_TRANSAKSI ,JENIS_TRANSAKSI,JUMLAH,TGL_DAN_WAKTU,

ID_KARYAWAN,ID_NASABAH);

Gambar 1.6 Desain Fisik Tabel Transaksi dalam MS Access Tabel 1.6 Desain Fisik Transaksi Nama Field ID_TRANSAKSI JENIS_TRANSAKSI JUMLAH TANGGAL_DAN_WAKTU ID_KARYAWAN ID_NASABAH JENIS_NASABAH ( Desain Fisiknya : Gambar 1.7 Desain Fisik Tabel Jenis_Nasabah dalam MS Access Tabel 1.7 Desain Fisik Tabel Jenis_Nasabah Tipe Data TEXT TEXT NUMBER DATE/TIME TEXT TEXT Ukuran Field 10 10 DOUBLE 10 10

KODE_JENIS,JENIS_NASABAH).

Nama Field KODE_JENIS JENIS_NASABAH JENIS_KARYAWAN ( Desain Fisiknya :

Tipe Data TEXT TEXT

Ukuran Field 3 11

KODE_JENIS,JENIS_KARYAWAN).

Gambar 1.8 Desain Fisik Tabel Jenis_Karyawan dalam MS Access Tabel 1.8 Desain Fisik Tabel Jenis_Karyawan Nama Field KODE_JENIS JENIS_KARYAWAN MANAGER ( Tipe Data TEXT TEXT Ukuran Field 3 11

ID_MANAGER,ID_KARYAWAN).

Desain Fisiknya : Gambar 1.9 Desain Fisik Tabel Manager dalam MS Access Tabel 1.9 Desain Fisik Tabel Manager Nama Field ID_MANAGER ID_KARYAWAN Tipe Data TEXT TEXT Ukuran Field 3 11

Sehingga melihat desain-desain fisik diatas kita dapat menentukan relasionship (hubungan antar tabel satu dengan tabel yang lainnya sebagai berikut :