proyek akhir dbms

82
PROYEK AKHIR DATABASE TERDISTRIBUSI BERBASIS ORACLE UNTUK APLIKASI PERBANKAN Syarifuddin Rouf 7403 030 001 Dosen Pembimbing 1 : Wiratmoko Yuwono, ST. 132 316 238 Dosen Pembimbing 2 : Tessy Badriyah, S.Kom, MT. 132 297 020 JURUSAN TEKNOLOGI INFORMASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA SURABAYA 2006

Upload: meester-sandie

Post on 20-Oct-2015

154 views

Category:

Documents


1 download

DESCRIPTION

proyek akhir dbms

TRANSCRIPT

Page 1: proyek akhir dbms

PROYEK AKHIR

DATABASE TERDISTRIBUSI BERBASIS ORACLE UNTUK APLIKASI PERBANKAN

Syarifuddin Rouf 7403 030 001

Dosen Pembimbing 1 : Wiratmoko Yuwono, ST.

132 316 238

Dosen Pembimbing 2 : Tessy Badriyah, S.Kom, MT.

132 297 020

JURUSAN TEKNOLOGI INFORMASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA

SURABAYA 2006

Page 2: proyek akhir dbms

DATABASE TERDISTRIBUSI BERBASIS ORACLE

UNTUK APLIKASI PERBANKAN

TUGAS AKHIR

oleh : Syarifuddin Rouf

7403 030 001

Diajukan Sebagai Salah Satu Syarat untuk menyelesaikan Studi pada Program Pendidikan Diploma III

Politeknik Elektronika Negeri Surabaya-ITS Surabaya, Agustus 2006

disetujui oleh :

Tim Penguji Proyek Akhir : Dosen Pembimbing : Dosen Penguji I Dosen Pembimbing I Arna Fariza, S.Kom, M.Kom. Wiratmoko Yuwono, ST. NIP : 132 233 198 NIP : 132 303 872

Dosen Penguji II Dosen Pembimbing II Arif Basofi, S.Kom. Tessy Badriyah, S.Kom, MT. NIP : 132 303 872 NIP : 132 297 020 Dosen Penguji III Rengga Asmara, S.Kom NIP : 132 310 244

Mengetahui, Ketua Jurusan Teknologi Informasi

Iwan Syarif, S.Kom, M.Kom. NIP: 132 134 725

Page 3: proyek akhir dbms

ABSTRAK Salah satu aplikasi perbankan yang telah banyak digunakan

adalah ATM (Automatic Teller Machine) yaitu mesin untuk mengambil sejumlah uang, transfer antar rekening, pembayaran rekening telepon dan lain-lain. Fitur dan teknologi akan selalu menghiasi seiring tujuan memudahkan kegiatan para nasabah.

Oracle mempunyai teknologi yang disebut Replikasi dimana dua atau lebih database dapat diimplementasikan sebagai database terdistribusi. Implementasi ini yang selanjutnya dapat disimulasikan sebagai mesin-mesin atm. Dengan dukungan Oracle maka data akan dijamin ketahanan dan kestabilannya dengan tingkat transaksi yang tinggi sekalipun. Aplikasi yang dibangun ini berdasarkan prinsip kerja mesin ATM secara umum dan fasilitas tambahan yaitu monitoring dibenamkan untuk melihat kinerja sistem.

Kata kunci : Oracle, Replikasi, Monitoring

Page 4: proyek akhir dbms

ABSTRACT

One of the most used banking application is ATM,which is a machine to take some money,account transfer,pay phone bill etc.Fitur and technology will always filled up a time goes bye to make the consumer activity easier.

Oracle have Replication technology which two or more databases can be implemented as a distributed databases. With Oracle support,the reliability and stability will be guaranteed even for high transaction level. The application that built is based on ATM work principles in common and extra Monitoring facility built to watching system performance. Keywords : Oracle, Replication, Monitoring

Page 5: proyek akhir dbms

KATA PENGANTAR

Dengan mengucap puji syukur kepada Allah SWT, atas limpahan rahmat dan hidayahNya, serta perlindungan, pertolongan dan ridho-Nya kepada kami sehingga kami dapat menyelesaikan Proyek Akhir ini tepat pada waktunya, serta tak terlupakan iringan salam dan sholawat bagi junjungan kami Nabi Muhammad SAW.

Dengan pengerahan segenap usaha kami akhirnya kami dapat menyelesaikan proyek akhir kami yang berjudul :

DATABASE TERDISTRIBUSI BERBASIS ORACLE

UNTUK APLIKASI PERBANKAN Tugas akhir ini dibuat untuk memenuhi persyaratan

mendapatkan gelar diploma III ( D3 ) pada jurusan Teknologi Informasi Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh November Surabaya.

Dalam menyelesaikan Proyek Akhir, kami melaksanakan berdasarkan teori-teori yang telah kami peroleh dalam perkuliahan, literatur dan bimbingan dari dosen pembimbing serta pihak-pihak lain yang telah banyak memberikan semangat dan bantuan.

Penulis sadar bahwasannya masih banyak kesalahan-kesalahan dan kekurangan dalam penyusunan buku laporan Proyek Akhir ini, untuk itu penulis mohon maaf dan mengharapkan kritik dan saran dari pembaca. Selain itu juga diharapkan pembaca dapat mengembangkan Proyek Akhir ini. Semoga buku ini memberikan manfaat dalam menghasilkan sumber daya manusia yang berkualitas. Amien…

Surabaya , Juli 2006

Penulis

Page 6: proyek akhir dbms

UCAPAN TERIMA KASIH

Dengan mengucapkan puji syukur kepada Allah SWT, pada kesempatan ini, penulis hendak menyampaikan rasa hormat yang setinggi-tingginya serta rasa terima kasih kepada pihak-pihak yang telah memberikan bantuan baik berupa material maupun moril dan baik secara langsung maupun tidak langsung kepada:

Ibu dan Ayah tercinta atas segala doa, bimbingan dan kasih sayang yang beliau curahkan selama ini.

Kakakku Firdaus tercinta. Bapak Dr. Ir. Titon Dutono, M.Eng selaku Direktur Politeknik

Elektronika Negeri Surabaya. Bapak Iwan Syarif, S.Kom, M.Kom selaku Ketua Jurusan

Teknologi Informasi PENS-ITS. Bapak Wiratmoko Yowono dan Ibu Tessy Badriyah sebagai

dosen pembimbing Proyek Akhir atas segala bimbingan dan arahannya.

Bapak dan Ibu dosen lain yang telah memberikan ilmu yang sangat besar manfaatnya selama proses belajar mengajar.

Seluruh staf dan karyawan PENS-ITS khususnya Jurusan Teknologi Informasi yang telah banyak membantu dalam hal administrasi.

Teman-teman yang selalu bersamaku saat suka maupun duka. Teman kosku yang selalu membuatku bersemangat. Rekan-rekan IT dan angkatan 2003. Kepada semua pihak yang tidak mungkin disebutkan satu-

persatu.

Page 7: proyek akhir dbms

DAFTAR ISI

HALAMAN JUDUL............................................................... LEMBAR PENGESAHAN..................................................... ABSTRAK............................................................................... ABSTRACT............................................................................. KATA PENGANTAR.............................................................. UCAPAN TERIMAKASIH..................................................... DAFTAR ISI............................................................................ DAFTAR TABEL.................................................................... DAFTAR GAMBAR................................................................ BAB 1 PENDAHULUAN

1.1 Latar Belakang………………………………. 1.2 Tujuan............................................................. 1.3 Permasalahan.....……………………....…...... 1.4 Batasan masalah........…………...................... 1.5 Metodologi……………….............................. 1.6 Sistematika Pembahasan……………….........

BAB 2 TEORI PENUNJANG

2.1 Database Terdistribusi..................................... 2.2 Replikasi pada Oracle......................................

2.2.1 Konsep Replikasi Master...................... 2.2.1.1 Apakah Replikasi Master itu? 2.2.1.2 Mengapa Replikasi

Multimaster?........................... 2.2.1.3 Proses Replikasi Multimaster

2.2.2 Konsep Resolusi Konflik...................... 2.2.2.1 Resolusi Konflik..................... 2.2.2.2 Metode Mengatasi Konflik.....

2.2.3 Managemen Replikasi.......................... 2.3 Microsoft Visual Basic 6.................................

2.3.1 Oracle Data Control.............................. 2.3.2 Crystal Report.......................................

BAB 3 PERENCANAAN DAN PEMBUATAN

PERANGKAT LUNAK 3.1 Desain Database............................................... 3.2 Desain Sistem..................................................

i ii

iii iv v

vivii ix x

1 2 2 2 2 3

5 5 8 8

10 11 13 14 15 16 16 17 20

25 28

Page 8: proyek akhir dbms

3.2.1 Data Alir Diagram................................ 3.2.1.1 Data Alir Diagram Level 0..... 3.2.1.2 Data Alir Diagram Level 1..... 3.2.1.3 Data Alir Diagram Level 1

Proses 1.................................. 3.2.2 Perancangan Program...........................

3.2.2.1 Klausa Select.......................... 3.2.2.2 Klausa Insert........................... 3.2.2.3 Klausa Update........................ 3.2.2.4 Klausa Delete.........................

3.2.3 Aplikasi Monitoring............................. 3.3 Pembuatan Sistem...........................................

3.3.1 User Interface Aplikasi ATM............... 3.3.1.1 Form Bahasa.......................... 3.3.1.2 Form PIN............................... 3.3.1.3 Form Menu............................ 3.3.1.4 Form Informasi Saldo............ 3.3.1.5 Form Penarikan Tunai........... 3.3.1.6 Form Ganti PIN..................... 3.3.1.7 Form Pembayaran.................. 3.3.1.8 Form Pemindahbukuan..........

3.3.2 Pembuatan Replikasi............................ 3.3.3 Teknik Resolusi Konflik......................

BAB 4 PENGUJIAN DAN ANALISA 4.1 Pengujian.........................................................

4.1.1 Pengujian Net Service Name................ 4.1.2 Pengujian Replika Data........................ 4.1.3 Pengujian Aplikasi ATM......................

4.1.3.1 Pengujian Login ATM........... 4.1.3.2 Pengujian Menu ATM...........

4.1.4 Pengujian Konflik................................. 4.1.5 Pengujian Monitoring...........................

4.2 Analisa Hasil Pengujian..................................

BAB 5 PENUTUP 5.1 Kesimpulan........................................................ 5.2 Saran..................................................................

DAFTAR PUSTAKA RIWAYAT HIDUP PENULIS

29 29 30

30 31 31 31 31 31 32 34 34 34 35 35 36 36 37 37 38 39 46

49 49 52 54 54 56 60 61 61

69 69 71 72

Page 9: proyek akhir dbms

DAFTAR TABEL Tabel 1 Tipe Konflik pada Replikasi ....................................... 13 Tabel 2 Rancangan Tabel Fisik................................................ 25 Tabel 3 Informasi Master Grup ............................................... 53

Page 10: proyek akhir dbms

DAFTAR GAMBAR Gambar 2.1 Sistem Replikasi Multimaster .................................... 9 Gambar 2.2 Replikasi Multimaster support beberapa akses .......... 11 Gambar 2.3 Kondisi pada proses replikasi ..................................... 13 Gambar 2.4 Enterprise Manager Console ....................................... 16 Gambar 2.5 Menambahkan ORADC pada project ........................ 17 Gambar 2.6 Ikon ORADC ............................................................. 18 Gambar 2.7 Properti ORADC......................................................... 18 Gambar 2.8 Properti Textbox ......................................................... 19 Gambar 2.9 Hasil Project................................................................ 19 Gambar 2.10 Report Designer .......................................................... 20 Gambar 2.11 Format Laporan........................................................... 20 Gambar 2.12 Koneksi report ke database ......................................... 21 Gambar 2.13 Daftar DSN pada ODBC............................................. 21 Gambar 2.14 Pemilihan tabel untuk laporan..................................... 21 Gambar 2.15 Relasi tabel laporan..................................................... 22 Gambar 2.16 Memilih atribut untuk laporan .................................... 22 Gambar 2.17 Desain Laporan ........................................................... 23 Gambar 3.1 Tabel Relasi ................................................................ 25 Gambar 3.2 Koneksi database pada OEM ...................................... 27 Gambar 3.3 Tabel Anggota............................................................. 28 Gambar 3.4 Diagram Sistem Aplikasi ATM .................................. 28 Gambar 3.5 DAD Level 0............................................................... 29 Gambar 3.6 DAD Level 1............................................................... 30 Gambar 3.7 DAD Level 1 Proses 1 ................................................ 30 Gambar 3.8 Diagram Sistem Monitoring........................................ 32 Gambar 3.9 Desain Aplikasi Monitoring........................................ 33 Gambar 3.10 Form Bahasa ............................................................... 35 Gambar 3.11 Form PIN .................................................................... 35 Gambar 3.12 Form Menu ................................................................. 36 Gambar 3.13 Form Saldo.................................................................. 36 Gambar 3.14 Form Tunai.................................................................. 37 Gambar 3.15 Form Ganti Pin.............................................................. 37 Gambar 3.16 Form Pembayaran......................................................... 38 Gambar 3.17 Form Transfer ............................................................. 38 Gambar 3.18 Setup Master Site ........................................................ 39 Gambar 3.19 Memasukkan Master Site............................................ 40 Gambar 3.20 Master Sites................................................................. 40

Page 11: proyek akhir dbms

Gambar 3.21 Administrator Replikasi .............................................. 41 Gambar 3.22 Membuat Skema ......................................................... 41 Gambar 3.23 Skema.......................................................................... 42 Gambar 3.24 Setting Scheduled Link ............................................... 42 Gambar 3.25 Mengatur Interval Schedule ........................................ 43 Gambar 3.26 Setting Purge Job ....................................................... 43 Gambar 3.27 Buat master group dengan Repadmin ......................... 44 Gambar 3.28 Master group ............................................................... 44 Gambar 3.29 Menambahkan object .................................................. 45 Gambar 3.30 Site Tujuan .................................................................. 45 Gambar 3.31 Topologi replikasi ....................................................... 46 Gambar 3.32 Objek replika............................................................... 47 Gambar 3.33 Kolom group ............................................................... 47 Gambar 3.34 Membuat metode resolusi ........................................... 48 Gambar 3.35 Metode resolusi ........................................................... 48 Gambar 4.1 Net Configuration Assistant ....................................... 49 Gambar 4.2 Input nama service ...................................................... 50 Gambar 4.3 Nama host dan port ..................................................... 50 Gambar 4.4 Koneksi sukses............................................................ 51 Gambar 4.5 Net service sukses ....................................................... 51 Gambar 4.6 Objek-objek replika..................................................... 52 Gambar 4.7 Informasi master group .............................................. 53 Gambar 4.8 Data login.................................................................... 55 Gambar 4.9 Informasi Display Atm saat Login ............................. 55 Gambar 4.10 Informasi Display Atm Login gagal............................ 55 Gambar 4.11 Informasi Display Menu ATM.................................... 56 Gambar 4.12 Informasi Display Menu Pembayaran......................... 56 Gambar 4.13 Informasi Display Menu Telkom ................................ 57 Gambar 4.14 Informasi Display Konfirmasi Pembayaran Telepon.. 57 Gambar 4.15 Informasi Display Menu Pemindahbukuan................. 58 Gambar 4.16 Informasi Display Jumlah uang transfer ..................... 58 Gambar 4.17 Informasi Display Konfirmasi Pemindahbukuan ........ 59 Gambar 4.18 Informasi Display Menu Penarikan tunai.................... 59 Gambar 4.19 Informasi Display Pengambilan Uang ........................ 60 Gambar 4.20 Form Monitoring......................................................... 61 Gambar 4.21 Login ATM ................................................................. 65 Gambar 4.22 Menu ATM ................................................................. 65 Gambar 4.23 Login Salah ................................................................. 66 Gambar 4.24 Hasil Logs ................................................................... 68

Page 12: proyek akhir dbms

BAB I PENDAHULUAN

1.1 LATAR BELAKANG

Dewasa ini kegiatan transaksi jual-beli maupun tunai-kredit berkembang pesat. Dulunya orang akan lebih senang bertatap muka dalam transaksi, akan tetapi sekarang ini faktor efisiensi waktu menjadi pilihan untuk menghadapi hal tersebut. Terutama transaksi yang melibatkan pengambilan uang dari rekening bank. Dengan adanya fasilitas Automatic Teller Machine (ATM) atau yang biasa disebut Anjungan Tunai Mandiri, kita dapat mengambil uang dengan cepat tanpa harus mengantri di bank. Belum lagi berbagai fasilitas lain dalam ATM yang semakin memudahkan transaksi kita sehari-hari. Dengan tersebarnya mesin ATM di hampir seluruh wilayah Indonesia membuat mobilitas transaksi uang menjadi tinggi, tentunya stabilitas dan performansi data sangat perlu diperhatikan.

Untuk mengatasi masalah tersebut maka dikembangkan konsep data secara terdistribusi dimana terdapat beberapa database yang terhubung satu sama lain dan dengan sebuah pusat (master) sebagai pengatur dan pemroses transaksi data. Oracle 9i sebagai sebuah sistem pengembangan database (Database Development System) mempunyai teknologi yang dinamakan Replikasi Tingkat Lanjut (Advanced Replication) dalam Oracle Enterprise Manager Console. Dengan teknologi tersebut memungkinkan kita untuk mengimplementasikan konsep Database Terdistribusi yang akan dipelajari. Dan aplikasi program yang diterapkan adalah simulasi mesin ATM.

Implementasi sistem tersebut akan diwujudkan dalam sebuah aplikasi dengan platform Microsoft Visual Basic. Tidak hanya simulasi mesin ATM yang diwujudkan akan tetapi akan ditambahkan sebuah fasilitas atau fitur yang merupakan fungsi utama pada implementasi sistem database terdistribusi ini, yaitu fasilitas Monitoring Database. Dengan fasilitas Monitoring ini seorang user layaknya nasabah sebuah bank akan dapat mengecek apakah transaksi yang dilakukannya telah berhasil dengan melihat data-data yang terkait pada transaksi tersebut. Begitu juga dengan proses pendistribusian data tersebut ke “mesin-mesin ATM ” lain dan tentunya database pusat.

Page 13: proyek akhir dbms

1.2 TUJUAN Proyek akhir ini diharapkan dapat memudahkan user untuk

mendapatkan informasi tentang data-data terkait dalam transaksi keuangan pada mesin ATM sehingga user dapat melihat hasil data yang disebabkan transaksi yang dilakukannya segera setelah user selesai melakukan transaksi. Tentunya yang bisa melihat data tersebut hanya user yang bersangkutan dengan isi data yang menjadi miliknya saja. Selain itu juga diharapkan dapat meningkatkan keefektifitasan dan stabilitas data pada sistem database terdistribusi.

1.3 PERMASALAHAN

Permasalahan yang ditangani dalam pembuatan Database Terdistribusi Berbasis Oracle untuk Aplikasi Perbankan ini adalah mobilitas transaksi uang maupun ketersediaan data yang tinggi pada transaksi perbankan terutama pada mesin ATM, sehingga mengakibatkan beban jaringan komputer antar ATM pada suatu bank menjadi berat.

1.4 BATASAN MASALAH

Batasan masalah dalam proyek akhir ini adalah sebagai berikut :

a. Membuat suatu aplikasi perbankan dalam hal ini aplikasi ATM Bank

b. Pembuatan aplikasi untuk monitoring transaksi antar database yang terdistribusi dengan menggunakan aplikasi Microsoft Visual Basic.

1.5 METODOLOGI

Metodologi pada proyek akhir ini adalah : a. Studi Pustaka

Pemahaman studi pustaka tentang konsep dan teori dari Replikasi pada Oracle dan Microsoft Visual Basic 6.0.

b. Survey Melakukan survey pada mesin ATM terkait dengan desain interface dan cara kerja serta sistem yang berjalan.

c. Perancangan Sistem Dari hasil survey yang didapat, selanjutnya dilakukan analisa dan perencanaan terhadap sistem yang akan dibuat dalam proyek akhir ini. Yang meliputi perancangan aturan sistem,

Page 14: proyek akhir dbms

analisa database terdistribusi, perancangan interface dan perancangan replikasi.

d. Pembuatan Perangkat Lunak (software) Hasil dari perancangan replikasi untuk database terdistribusi pada mesin ATM ini diimplementasikan dalam sebuah perangkat lunak yaitu aplikasi ATM yang menggunakan teknologi Microsoft Visual Basic 6.0 dan replikasi Oracle.

e. Pengujian dan Analisa Setelah dilakukan pembuatan perangkat lunak maka langkah selanjutnya adalah melakukan pengujian dan analisa proyek akhir.

1.6 SISTEMATIKA PEMBAHASAN

Sistematika pembahasan yang akan diuraikan dalam buku laporan proyek akhir ini terbagi dalam bab-bab yang akan dibahas sebagai berikut :

BAB I Berisi tentang pendahuluan yang terdiri dari :

- Latar Belakang - Tujuan dan Sasaran - Permasalahan - Batasan Masalah - Metodologi - Sistematika Pembahasan

BAB II Berisi tentang teori-teori penunjang yang terdiri dari : - Konsep Database Terdistribusi - Konsep Replikasi pada Oracle - Konsep Microsoft Visual Basic 6.0

BAB III Berisi tentang perencanaan dan pembuatan Database

Terdistribusi berbasis Oracle untuk aplikasi perbankan baik perancangan sistem, metode yang digunakan maupun pembuatan software aplikasi. Hal ini meliputi perancangan desain database ATM, proses pembuatan interface dan pembuatan fasilitas Monitoring.

BAB IV Berisi hasil dari pengujian, analisa dari sistem, dan

kinerja dari software yang telah dibuat

Page 15: proyek akhir dbms

BAB V Berisi kesimpulan dan saran serta rencana pengembangan proyek akhir, jika dimungkinkan untuk masa yang akan datang.

Page 16: proyek akhir dbms

BAB II TEORI PENUNJANG

2.1 Database Terdistribusi

Database Terdistribusi bisa diartikan sebagai kumpulan dari data-data dengan berbagai bagian yang ditangani DBMS (Data Base Management System) secara terpisah dan berjalan pada sistem komputer.

Semua komputer saling terhubung dan setiap sistem mempunyai hak kemampuan memproses untuk melayani permintaan lokal. Setiap sistem berpartisipasi baik dalam melaksanakan satu atau lebih permintaan. Beberapa permintaan memerlukan data tidak hanya dari satu tempat melainkan beberapa tempat atau lebih. Database asli yang terdistribusi itu sendiri tidak terlihat oleh user dan transparansi dari data tersebut dapat ditunjukkan dalam berbagai cara.

Distribusi data dalam DBMS ada 2 bentuk : a. Data partitioning (data yang terpisah-pisah)

Dalam distribusi DBMS sebuah table relasi mungkin terpecah menjadi dua atau lebih bagian. Suatu table mungkin dapat terpecah secara horizontal,vertical, maupun gabungan dari keduanya. Bahkan data partitioning bisa berubah menjadi ter-replika. Bentuk ini menimbulkan masalah kontrol yang bersamaan dan pengaturan daftar dalam distribusi database.

b. Data replication (replikasi data) Dalam distribusi DBMS sebuah table relasi bisa menjadi replika (kopi-an) lalu replika tersebut didistribusikan melalui database. Bentuk ini menimbulkan masalah dalam menyebarluaskan update dan kontrol yang bersamaan.

Kedua bentuk distribusi data di atas merupakan transparan artinya tampak nyata oleh user dalam sistem distribusi database. Dan dalam proyek akhir ini penulis akan menggunakan bentuk Data replication sesuai dengan teknologi pada Oracle.

2.2 Replikasi pada Oracle

Replikasi adalah proses duplikasi dan pengaturan objek database seperti tabel, dalam beberapa database yang menghasilkan sebuah sistem database terdistribusi. Perubahan yang terjadi pada satu tempat akan diambil dan disimpan setempat sebelum diteruskan dan

Page 17: proyek akhir dbms

diterapkan di setiap tempat pada target lokasi. Replikasi merupakan fitur yang tergabung dalam Oracle Server, bukan server yang berlainan. Dan sudah built-in dalam Oracle versi 9i ke atas.

Replikasi menggunakan teknologi database terdistribusi untuk berbagi data diantara beberapa tempat, akan tetapi database replika dan database terdistribusi adalah tidak sama. Dalam database terdistribusi, data tersedia dalam beberapa atau banyak lokasi, akan tetapi tabel utama hanya ada pada satu lokasi. Sebagai contoh, sebuah tabel pegawai (employee) berada hanya pada database A dalam sistem database terdistribusi yang juga mencakup database B dan C. Sedangkan pada database replika yang berarti bahwa data yang sama akan berada di semua lokasi. Contohnya, tabel pegawai (employee) tersedia pada database A,B dan C.

Alasan menggunakan konsep replikasi : Ketersediaan data

Replikasi dapat memperbaiki kebutuhan data sebuah aplikasi dikarenakan ada alternatif pilihan untuk mengakses data-data. Jika sebuah tempat sedang tidak berjalan, maka user tetap dapat meneruskan query-nya atau bahkan mengupdate lokasi yang bersangkutan. Dengan kata lain, replikasi menyediakan proteksi kegagalan yang sangat baik.

Performa Replikasi menyediakan kecepatan,akses lokal untuk berbagi data karena replikasi mengimbangkan aktifitas di semua banyak tempat. Seorang user dapat mengakses satu server sementara user lain juga dapat mengakses server yang berbeda tanpa mengurangi beban pada semua server.

Komputasi Teknik Materialized View memungkinkan user untuk bekerja

dalam database meski hubungan terputus dengan pusat database. Jika koneksi telah terhubung lagi,maka user dapat mengupdate materialized view sesuai kebutuhan.

Mengurangi beban network Replikasi dapat digunakan untuk mendistribusikan data ke

berbagai banyak lokasi. Sementara aplikasi dapat mengakses berbagai server lokal disamping mengakses satu sentral server. Konfigurasi ini dapat mengurangi beban network secara dramatis.

Page 18: proyek akhir dbms

Pengembangan Dengan replikasi anda dapat mengembangankan template yang

nantinya akan memungkinkan Anda untuk membuat beberapa materialized view dengan cepat.

Dalam sistem replikasi ada tiga komponen dasar,yang terdiri

dari :

1. Objek Replikasi Adalah objek database yang terdapat dalam beberapa server pada sistem database terdistribusi. Dalam lingkup replikasi, segala perubahan (update) pada objek replikasi di satu tempat maka akan dikopikan ke semua tempat lain. Tipe objek yang dapat direplika adalah sebagai berikut :

Tabel Index View dan Object View Package and Package Bodies Procedures and Functions User-Defined Types and Type Bodies Trigger Synonim Indextype User-Defined Operator

2. Grup Replikasi Adalah kumpulan objek database yang secara logika saling terkait atau berhubungan. Satu objek database hanya dapat menjadi anggota sebuah grup replikasi. Dengan menyusun objek database yang saling terkait dalam sebuah grup replikasi, maka akan memudahkan untuk mengatur dan mengelola berbagai objek yang ada secara bersamaan. 3. Site (tempat) Replikasi Sebuah grup replikasi mungkin terdapat dalam beberapa tempat. Dalam lingkup Replikasi terdapat dua tipe tempat,yaitu master dan materialized view. Sebuah tempat dapat menjadi induk bagi satu grup replikasi dan materialized view dalam grup yang berbeda. Akan tetapi, sebuah tempat tidak dapat menjadi induk bagi master dan materialized view pada grup yang sama.

Page 19: proyek akhir dbms

Setelah mengetahui komponen-komponen dasar dalam

replikasi, maka berikutnya akan dijelaskan tentang tipe-tipe dari replikasi itu sendiri. Yaitu terdiri dari :

Replikasi Multimaster Replikasi Materialized View Replikasi Multimaster dan Materialized View

Seperti yang tertulis di atas, ada 3 tipe dari replikasi. Akan tetapi penulis hanya akan menjelaskan teknik yang pertama saja karena metode yang digunakan dalam proyek akhir ini adalah Replikasi Multimaster. 2.2.1 Konsep Replikasi Master

Untuk mengetahui secara mendetail tentang arsitektur dari replikasi master, maka perlu diketahui terlebih dahulu tentang konsep replikasi master itu sendiri. Dengan mengetahui bagaimana dan mengapa dari replikasi itu, maka akan memberikan pemahaman yang jelas tentang bagaimana elemen-elemen arsitektural bekerja secara bersama dalam menciptakan sebuah lingkup replikasi multimaster.

2.2.1.1 Apakah Replikasi Master itu ?

Oracle mempunyai dua tipe dari replikasi master,yaitu : replikasi master tunggal dan replikasi multimaster. Replikasi Multimaster meliputi beberapa master site, dimana setiap site bekerja sebagai sebuah equal peer. Dalam replikasi master tunggal, sebuah master site tunggal dengan replikasi materialized view menyediakan mekanisme untuk menampung ratusan bahkan ribuan materialized view site. Sebuah master site tunggal yang support satu atau lebih materialized view site dapat pula berpartisipasi dalam beberapa lingkup master site, menciptakan gabungan lingkup replikasi (kombinasi dari replikasi multimaster dan materialized view)

Replikasi Master Tunggal

Sebuah replikasi master tunggal dapat berfungsi sebagai target master site bagi satu materialized view maupun lebih. Dalam replikasi master tunggal, materialized view hanya akan mengupdate target master site-nya.

Page 20: proyek akhir dbms

Replikasi Multimaster Atau disebut juga dengan peer to peer / n-way

replication, yaitu terdiri dari beberapa master site yang sama-sama berperan dalam suatu model “update-anywhere“. Update yang terjadi pada sebuah individu master site akan dikirimkan pada semua master site lain yang terkait. Gambar 2.1 berikut meng-ilustrasikan sistem dari replikasi multimaster.

Gambar 2.1 Sistem Replikasi Multimaster

Oracle Database Server yang berperan sebagai

master site dalam lingkup replikasi multimaster bekerja secara otomatis untuk mengumpulkan data dari semua replika tabel. Sekaligus memastikan konsistensi transaksi secara global dan intergritas data. Sementara itu, resolusi konflik akan ditangani tersendiri pada setiap master site. Jadi teknik replikasi multimaster ini mencakup replika lengkap dari tiap replika tabel pada setiap master site.

Master Site

Adalah node (ujung) dalam lingkup replikasi multimaster. Sebuah master site juga dapat diartikan sebagai master dari satu atau lebih materialized view site dalam replikasi master tunggal maupun multimaster. Objek yang ter-replika akan disimpan pada master site dan dapat diakses oleh user. Master Definition Site

Dalam replikasi multimaster, sebuah master site akan berperan sebagai master definition site pada satu grup. Fungsi dari site

Page 21: proyek akhir dbms

ini adalah melakukan berbagai perintah administratif maupun maintenance untuk keseluruhan replikasi multimaster. Setiap grup hanya boleh mempunyai satu master definition site, sementara master definition site itu sendiri bisa dari master site manapun pada replikasi multimaster. Dan sebagai tambahan, suatu master definition dapat diubah menjadi master site yang lain jika diperlukan.

2.2.1.2 Mengapa Replikasi Multimaster ?

Berdasarkan pemahaman dasar dari awal, bahwa replikasi digunakan untuk memastikan bahwa data itu dapat diakses dari mana dan kapan pun kita membutuhkannya. Uraian berikut ini akan menjelaskan lebih rinci tentang beberapa perbedaan lingkup yang mempunyai persyaratan pengiriman informasi yang berbeda pula. Lingkup replikasi Anda mungkin salah satu atau lebih dari persyaratan berikut :

Proteksi Kegagalan (failover) Replikasi multimaster dapat digunakan untuk menjaga ketersediaan data pada waktu kritis. Sebagai contoh, suatu replikasi multimaster dapat mereplika data pada database untuk menentukan site utama mana yang mengalami kegagalan agar “tidak aktif“ sehubungan dengan kerja sistem atau network. Site yang “gagal“ tadi dapat diumpamakan sebagai sebuah database fungsional yang men-support akses dari suatu aplikasi jika site utamanya secara serentak beroperasi.

Penyeimbang beban (load balancing) Replikasi multimaster sangat berguna pada proses aplikasi transaksi yang melibatkan banyak pengguna yang mengakses ke informasi database. Tujuannya adalah :

• Mendistribusikan beban aplikasi yang berat • Memastikan ketersediaan secara kontinyu • Menyediakan lebih banyak akses data secara lokal

Page 22: proyek akhir dbms

Gambar 2.2 Replikasi Multimaster support beberapa akses

2.2.1.3 Proses Replikasi Multimaster

Dalam replikasi, terdapat dua tipe dari replikasi multimaster : asynchronous dan synchronous. Replikasi asynchronous merupakan teknik yang biasa digunakan dalam mengimplementasikan Replikasi Multimaster. Dengan menggunakan replikasi asynchronous maka informasi tentang sebuah perubahan DML (Data Manipulation Language) pada tabel disimpan dalam deferred transaction queue di tempat dimana perubahan itu terjadi. Perubahan ini dinamakan Transaksi Tunda (Deferred Transaction). Lalu deferred transaction disebarkan ke master lain pada interval tertentu. Dan anda dapat pula mengatur waktu interval tersebut.

Replikasi Asynchronous memungkinkan adanya konflik data karena sebuah baris yang isinya sama dapat di-update pada dua master site yang berbeda dalam waktu yang bersamaan. Akan tetapi, Oracle telah menyediakan mekanisme untuk mengatasi masalah tersebut. Informasi tentang konfik data tersebut disimpan dalam log error.

Replikasi Asynchronous

Replikasi asynchronous secara independent menyebarluaskan DML atau eksekusi prosedur replikasi ke seluruh master site terkait pada lingkup replikasi multimaster. Penyebaran terjadi dalam transaksi terpisah setelah DML atau prosedur replikasi dieksekusi setempat. Replikasi asynchronous merupakan mode default dari replikasi. Mode ini membutuhkan sedikit networking dan tidak banyak memakan resource (sumber daya) dibandingkan mode

Page 23: proyek akhir dbms

synchronous, sehingga akan menghasilkan performa dan availability yang lebih baik.

Replikasi asynchronous berarti bahwa dataset yang terdapat pada master site yang berbeda pada lingkup replikasi multimaster, dimungkinkan akan berbeda pada periode tertentu sebelum perubahan tersebut disebarluaskan. Tentunya dengan mekanisme seperti itu akan menimbulkan suatu konflik pada replikasi asynchronous.

Berikut ini adalah uraian proses dari replikasi asynchronous :

1. User memasukkan statement DML atau mengeksekusi wrapper (sampul) untuk prosedur replikasi. → Setelah sebuah tabel disusun untuk replikasi, segala

DML yang telah di-commit oleh user akan disimpan untuk direplika ke semua master site. Bagi setiap baris baik itu yang mengalami insert, update atau delete, maka sebuah internal trigger akan membuat remote procedure call (RPC) sementara dan menempatkannya pada deferred transaction queue. Jadi deferred transaction queue berisi semua RPC yang ada.

2. Deferred transaction queue mengeluarkan RPC. → Setiap transaksi dalam deferred transaction queue

mempunyai list/daftar tujuan yang mendefinisikan dimana seharusnya transaksi itu disebarluaskan. Terdapat satu deferred transaction queue untuk setiap site dan queue ini bisa digunakan oleh beberapa grup replikasi.

3. Pengiriman isi deferred transaction queue ke tujuan

→ Pada interval tertentu atau sesuai dengan keinginan, transaksi yang ada pada deferred transaction queue akan disebarkan ke tempat tujuan dan setiap tujuan mempunyai waktu interval tersendiri.

4. Menerapkan isi dari deferred transaction queue pada tempat tujuan → Dengan transaksi-transaksi yang telah disebarkan ke

tujuan, maka setiap RPC yang diterapkan pada tujuan akan memanggil sebuah internal package. Jika transaksi itu tidak sukses diterapkan pada tujuan, maka

Page 24: proyek akhir dbms

akan dikirim kembali dan ditempatkan pada error queue di site tujuan, dimana anda dapat memperbaiki error tersebut dan menerapkannya kembali.

→ Ketika transaksi-transaksi itu diterapkan pada tempat tujuannya, Oracle akan mengecek apakah terdapat konflik data. Jika ditemukan konflik maka akan disimpan pada log tempat tujuan dan akan ditangani oleh conflict resolution method (metode resolusi konflik).

5. Ketika sebuah transaksi telah sukses dikirim ke semua master site tujuan, maka sebenarnya tidak secara langsung dikirimkan dari deferred transaction queue ke site tujuan. Karena transaksi itu dapat dikirimkan sesuai dengan interval yang diinginkan oleh user.

2.2.2 Konsep Resolusi Konflik

Ketika Oracle mereplika suatu tabel, segala DML yang diterapkan pada tabel replika tersebut yang menyebabkan konflik data akan secara otomatis dikenali oleh Oracle server di site tujuan. Sebagai contoh, Gambar 2.3 di bawah ini akan mengilustrasikan kondisi yang terjadi :

Gambar 2.3 Kondisi pada proses replikasi

Dengan jadwal penyebaran setiap satu jam, maka ditemukan

adanya sebuah konflik dimana dua atau lebih site dapat mengupdate baris yang sama selama satu interval berjalan.

Selain konflik update yang dicontohkan sebelumnya, terdapat pula konflik insert dan delete. Berikut ini akan diuraikan tentang konflik yang mungkin terjadi pada replikasi :

Page 25: proyek akhir dbms

Tabel 1 Tipe Konflik pada Replikasi Tipe Konflik Keterangan

Konflik Update Dua atau lebih statement DML diterapkan untuk baris yang sama padasite yang berbeda, sebelum DML tersebut disebarkan ke site lain.

Konflik Unique Insert dilakukan pada dua atau lebih site dan primary key (atau bagian lain dari keunikan kolom) untuk tiap insert berisi nilai yang sama. Atau update satu site yang mengubah primary key (atau bagian lain dari keunikan kolom) dimana juga berisi nilai yang sama.

Konflik Delete Sebuah baris dihapus pada satu site sementara update terjadi pada site lain, dimana akan menyebabkan usaha untuk mengupdate sebuah baris yang tidak ada. Atau baris yang sama dihapus pada interval bersamaan pada beberapa site.

Ketika Oracle mengenali adanya konflik, maka yang akan

dilakukan adalah : 1. Metode resolusi konflik akan berusaha untuk menyelesaikan

konflik. 2. Jika konflik tidak terselesaikan, maka konflik tersebut akan

disimpan di error queue pada site tujuan. Dan bila konflik data tersimpan di error queue, maka database administrator yang bertanggung jawab untuk menyelesaikan konflik data itu secara manual.

2.2.2.1 Resolusi Konflik

Setelah sebuah konflik dikenali, maka usaha untuk mengatasi konflik tersebut dengan tujuan untuk konvergensi data akan dilakukan di semua site. Oracle menyediakan beberapa metode resolusi konflik untuk mengatasi konflik update dan dalam banyak situasi dapat menjamin konvergensi data melalui berbagai tipe replikasi. Oracle juga menawarkan beberapa metode resolusi konflik untuk mengatasi konflik unique, meskipun metode ini tidak menjamin konvergensi data.

Page 26: proyek akhir dbms

Oracle tidak menyediakan metode resolusi konflik untuk menghapus atau memilih suatu konflik. Bagaimanapun juga Oracle mengijinkan anda untuk membuat metode resolusi konflik sendiri dalam mengatasi konflik data sesuai dengan aturan anda.

2.2.2.2 Metode Mengatasi Konflik

Meskipun Oracle telah menyediakan metode yang bagus dalam mengatasi konflik data, kita harus tetap memprioritaskan untuk menghindari konflik pada waktu mendesain replikasi database dan suatu aplikasi. Berikut ini adalah beberapa teknik yang disarankan Oracle agar dapat digunakan untuk menyelesaikan konflik pada replikasi.

• Timestamp

Timestamp adalah tipe data waktu (time) pada Oracle. Waktu pertama (earliset timestamp) dan waktu terakhir (latest timestamp) pada metode ini tergantung pada nilai maksimum dan minimum.Untuk menggunakan metode ini, maka harus ada penambahan kolom dengan tipe data DATE.

• Overwrite and Discard Method Metode ini mengabaikan nilai yang dikirim baik dari site asal maupun site tujuan, sehingga tidak bisa menjamin konvergensi data antar master site. Metode Overwrite akan mengganti nilai di site tujuan dengan nilai baru dari site asal, sedangkan metode discard akan mengabaikan nilai yang dikirim dari site asal.

• Minimum and Maximum Metode maksimum dan minimum adalah teknik membandingkan nilai dari site asal dengan site tujuan. Teknik tersebut tergantung dari apa yang diinginkan, bila yang dipilih maksimum, maka nilai terbesar akan diterapkan di site tujuan. Dan bila minimum, maka nilai terkecil akan selalu diterapkan pada site tujuan.

• Priority group Prioritas grup menerapkan sebuah level-level nilai dari setiap kolom. Jika terjadi konflik, Oracle akan mengganti data pada tabel dengan prioritas kolom terendah dari data tabel dengan prioritas tertinggi.

Page 27: proyek akhir dbms

• Site priority Metode prioritas site (site priority) yaitu metode dengan memberikan suatu level prioritas pada master site. Sehingga jika terjadi konflik, maka yang akan digunakan adalah site dengan prioritas tertinggi.

• Additive and average Hampir sama dengan metode minimum dan maksimum, dengan cara membandingkan dua nilai dari site asal dan tujuan, additive akan menambahkan dari dua nilai dan average akan mengirim hasil rata-rata dari dua nilai tersebut.

2.2.3 Managemen Replikasi Oracle menyediakan suatu tool yang digunakan untuk

membuat, mengatur, dan memonitor replikasi yang terdapat dalam Oracle Enterprise Manager Console. Dengan OEM (Oracle Enterprise Manager) maka kita dengan cepat dapat mengkonfigurasi dan memanage segala hal dalam yang dibutuhkan dalam sebuah Replikasi.

Gambar 2.4 Enterprise Manager Console

2.3 Microsoft Visual Basic 6.0

Untuk membangun sebuah aplikasi antar-muka dengan Oracle sebagai database, maka digunakan Microsoft Visual Basic 6.0. Software ini merupakan buatan Microsoft yang telah terkenal dengan kompabilitas dan interface yang cocok digunakan pada platform sistem

Page 28: proyek akhir dbms

operasi (operating system) Windows. Dengan Microsoft Visual Basic 6.0 maka kita dapat membuat aplikasi ATM seperti yang sebenarnya, bahkan Oracle sebagai database juga dapat diintegrasikan dengan software ini. Komponen-komponen yang digunakan pada Microsoft Visual Basic 6.0 diantaranya adalah : Oracle Data Control, Crystal Report.

2.3.1 Oracle Data Control

Oracle Data Control adalah VBX (visual basic extension) yang didesain agar dapat digunakan pada Visual Basic data control. Oracle data control menggunakan OLE Server untuk dapat mengakses Oracle Database. Tidak seperti data control yang lain, Oracle Data Control dibuat dengan tidak mempunyai control sendiri seperti text box, list box, combo box, grid, dan yang lainnya. Karena secara teori, Oracle Data Control mempunyai teknologi sendiri sehingga dapat mengintegrasikan control seperti di atas.

Yang perlu diperhatikan pada waktu akan menggunakan komponen ORADC (oracle data control) pada Visual Basic adalah mengatur Connect, DatabaseName, dan RecordSource pada properties-nya. Ketika ORADC di-refresh maka secara otomatis akan membuat client (jika dibutuhkan), sesi, database, maupun dynaset. Berikut ini akan dijelaskan bagaimana cara mengatur field-field properties yang diperlukan pada Oracle Data Control.

1) Jalankan Visual Basic lalu buat sebuah project baru. 2) Pada menu Project pilih opsi Components untuk

menambahkan Oracle Data Control ke dalam project.

Gambar 2.5 Menambahkan ORADC pada Project

Page 29: proyek akhir dbms

Berikutnya Oracle Data Control (ORADC) akan ditambahkan pada Visual Basic tool pallete dan akan terlihat seperti gambar di bawah ini :

Gambar 2.6 Ikon ORADC

3) Untuk menggunakan komponen ORADC pada project

maka lakukan drag and drop pada form. Aturlah ukuran dan posisinya sesuai dengan kebutuhan.

4) Setelah menambahkan ORADC pada form, ganti nama kontrol ORADC menjadi Oracle Data Control (atau yang lain). Aturlah field-field seperti Connect, DatabaseName, dan RecordSource pada tab properties agar dapat mengakses Oracle database seperti berikut :

Gambar 2.7 Properti ORADC

5) Setelah mengatur properties dari ORADC, drag and drop

Visual Basic Control lain, contohnya : TextBox, pada form yang sama dan mengakses data pada ORADC. Atur properties Data untuk mengakses data field dan source yang dibutuhkan. Gambar berikut ini menunjukkan control

Page 30: proyek akhir dbms

TextBox yang diatur untuk menampilkan nomor pegawai (empno).

Gambar 2.8 Properti TextBox

6) Ketika project dijalankan, maka data yang

diidentifikasikan pada RecordSource properties akan ditampilkan dengan menggunakan Oracle Data Control.

Gambar 2.9 Hasil Project

Oracle Data Control mempunyai kelebihan bila dibandingkan

dengan data control lain, seperti jumlah properties yang lebih banyak dapat digunakan daripada data control dari Microsoft. Properties yang tidak ditemukan pada Visual Basic itu antara lain :

AllowMoveLast AutoBinding TrailingBlanks HelpContextID

Page 31: proyek akhir dbms

Session dan Database DatabaseName dan Connect

2.3.2 Crystal Report

Crystal Report merupakan paket tersendiri yang harus ditambahkan kedalam Visual Basic versi 6, sangat cepat untuk mendesain beberapa persoalan laporan yang membutuhkan bentuk laporan yang tidak sederhana. Crystal Report sebenarnya untuk Visual Basic versi 6 kebawah sudah include didalamnya, karena Visual Basic 6 telah memiliki cara desain report menggunakan data report. Jika menggunakan Visual Basic 6 supaya bisa menggunakan Crystal Report maka install dulu paket crystal report yang ada sehingga akan plug-in didalam menu Add-in -> Report Designer. Sebagai contoh sederhana dapat dibuat laporan bowohan , seperti sebagai berikut :

Gambar 2.10 Report designer

Klick report designer maka akan masuk ke menu crystal

report, lalu pilih menu File, dan klick New maka akan muncul dialog format laporan sebagai berikut :

Gambar 2.11 Format laporan

Page 32: proyek akhir dbms

Untuk aplikasi ini digunakan contoh format laporan standart,maka akan muncul dialog berikutnya, yaitu dialog untuk koneksi ke database, seperti gambar berikut ini :

Gambar 2.12 Koneksi report ke database

Dalam hal ini koneksi database yang dipakai adalah

menggunakan teknik SQL/ODBC, maka akan muncul daftar ODBC yang telah dibuat sebelumnya.

Gambar 2.13 Daftar DSN pada ODBC

Selanjutnya akan muncul daftar dari table yang ada,

tambahkan tabel-tabel yang dibutuhkan dalam report dengan cara Add. Seperti gambar berikut ini :

Gambar 2.14 Pemilihan tabel untuk laporan

Page 33: proyek akhir dbms

Kemudian klick Done maka akan muncul relasi table seperti gambar berikut :

Gambar 2.15 Relasi tabel laporan

Untuk menampilkan attribute/kolom/field apa saja yang

dilaporkan maka pilih Next sehingga muncul dialog sebagai berikut :

Gambar 2.16 Memilih Atribut untuk laporan

Akhiri desain laporan tersebut dengan memilih tombol

Preview Report

Page 34: proyek akhir dbms

Gambar 2.17 Desain laporan

Simpan hasil desain laporan tersebut, misal disimpan dengan

nama Laporan.rpt. Report yang dirancang akan digunakan pada form yang telah disiapkan sebelumnya. Sedangkan untuk memanggil report dalam form tersebut maka pada command untuk memanggil laporan tersebut, listing programnya adalah sebagai berikut :

- Laporan Semua

Untuk memanggil laporan seluruh record adalah :

Private Sub Command2_Click() Laporan.ReportFileName="d:\data\latihan\Laporan.rpt" Laporan.PrintReport End Sub

- Laporan Per Nomor Sedangkan untuk memanggil laporan berdasarkan kriteria, maka lakukan filter berdasarkan formula yang dicari, seperti sebagai berikut :

Private Sub Command4_Click() Laporan.SelectionFormula="{anggota.no_anggota}='"&

no_anggota & "'" Laporan.ReportFileName = "d:\data\latihan\lap_per_no.rpt" Laporan.WindowState = crptMaximized Laporan.RetrieveDataFiles Laporan.Action = 1 End Sub

Page 35: proyek akhir dbms

BAB III PERENCANAAN DAN PEMBUATAN

PERANGKAT LUNAK

3.1 Desain Database Langkah awal yang kita lakukan dalam tahap ini adalah

merancang database dari ATM. Perancangan dilakukan berdasarkan hasil survey pada aplikasi ATM itu sendiri (yang sebenarnya), dikarenakan sifat dari data-data perbankan yang pribadi sehingga sangat sulit untuk membuat konsep database sesuai aslinya. Dengan survey dan pengamatan yang mendalam pada aplikasi ATM, maka konsep database yang akan dibuat adalah sebagai berikut :

Gambar 3.1 Tabel Relasi

Dalam konsep data model yang ditunjukkan di atas, database

terdiri dari 19 tabel dengan rincian sebagai berikut :

Tabel 2 Rancangan Tabel Fisik Nama Tabel Keterangan

Tabel Login Menyimpan semua data PIN dari anggota Tabel Anggota Menyimpan semua data anggota Tabel Rekening Menyimpan semua data rekening anggota Tabel Saldo Menyimpan semua data saldo rekening

Page 36: proyek akhir dbms

Nama Tabel Keterangan Tabel Telepon Menyimpan semua data telepon anggota Tabel HP Menyimpan semua data handphone anggota Tabel Kartu_Debit Menyimpan semua data kartu debit anggota Tabel Kartu_Kredit Menyimpan semua data kartu kredit anggota Tabel Voucher Menyimpan semua data voucher handphone Tabel ATM Menyimpan semua data alamat atm Tabel Jenis_transaksi Menyimpan semua data keterangan

transaksi Tabel Tunai Menyimpan semua record data transaksi

tunai Tabel Transfer Menyimpan semua record data transaksi

transfer Tabel Telkom Menyimpan semua record data transaksi

pembayaran telepon Tabel PDAM Menyimpan semua record data transaksi

pembayaran air Tabel Tiket Menyimpan semua record data transaksi

pembayaran tiket Tabel Debit Menyimpan semua record data transaksi

pembayaran debit Tabel Kredit Menyimpan semua record data transaksi

pembayaran kredit Tabel Transaksi Menyimpan semua record data transaksi

Untuk membuat tabel-tabel di atas maka dapat dilakukan

melalui iSQL*Plus, SQL Plus, atau OEM Console (lebih mudah karena tidak perlu banyak mengetik). Bila melalui iSQL*Plus atau SQL Plus maka sintax SQL untuk membuat tabel adalah seperti berikut :

CREATE TABLE "ROUF"."ANGGOTA" ("NO_ANGGOTA" VARCHAR2(10 byte) NOT NULL, "NAMA" VARCHAR2(30 byte) NOT NULL, "ALAMAT" VARCHAR2(30 byte), "KOTA" VARCHAR2(10 byte), "KODE_POS" VARCHAR2(5 byte), "JENIS_KEL" VARCHAR2(10 byte), "PEKERJAAN" VARCHAR2(10 byte), "KANTOR_CABANG" VARCHAR2(10 byte), "NO_AIR" VARCHAR2(4 byte) NOT NULL);

Page 37: proyek akhir dbms

Keterangan dari sintax SQL di atas adalah seperti berikut : → ...“ROUF“.“ANGGOTA“... adalah nama tabel Anggota pada

database Rouf → ... ("NO_ANGGOTA" VARCHAR2(10 byte) NOT

NULL,...)... adalah field-field apa saja yang ada pada tabel,tipe datanya varchar2 dengan maksimal 10 digit, dan kolom tidak boleh kosong (NOT NULL).

Setelah dieksekusi DDL (data definition languange) di atas, maka akan terbentuk sebuah tabel baru Anggota pada databasase ROUF. Bila proses membuat tabel seperti di atas dirasa agak susah, karena perlu banyak mengetik, maka dapat dilakukan di OEM. Proses untuk membuat tabel pada OEM Console akan dijelaskan sebagai berikut :

1. Buka Oracle-OraHome92 – Enterprise Manager Console 2. Akan muncul tampilan OEM Login. Pilih Launch Standalone. 3. Setelah itu jendela OEM Console akan terbuka. Pilih database

yang ada, contohnya : Databases – SERVER. Klik kanan pada SERVER pilih Connect atau dengan cara menekan tanda (+) pada nama database.

4. Login dengan username SYSTEM dan password : (sesuai password pada waktu create database).

Gambar 3.2 Koneksi Database pada OEM

5. Setelah login,berhasil maka tree dari node SERVER akan

muncul. Pilih Schema – (user). Contohnya Schema – ROUF. Dan untuk membuat tabel maka klik kanan, pilih Create.

Page 38: proyek akhir dbms

6. Isikan nama dari tabel, lalu kolom-kolom yang akan dimasukkan beserta tipe datanya. Sehingga akan tampak seperti gambar berikut :

Gambar 3.3 Tabel Anggota

Langkah nomor 1 – 4 di atas merupakan langkah utama

dalam memulai OEM Console dan untuk menggunakan fitur-fitur di dalamnya. Setelah selesai membuat tabel Anggota maka selanjutnya adalah membuat tabel-tabel lainnya seperti pada desain tabel di atas. Dan bila telah selesai semua tabel dibuat, masukkan data-data “dummy“ seperti di halaman terlampir. Data-data tersebut digunakan sebagai database dari aplikasi ATM, yang berisi rekening seorang user atau nasabah bank dan hal-hal lainnya seperti tagihan. 3.2 Desain Sistem

Dalam sistem ATM terdapat mekanisme proses yang dapat digambarkan secara singkat sebagai berikut :

Gambar 3.4 Diagram Sistem Aplikasi ATM

Page 39: proyek akhir dbms

Secara sederhana sistem ATM adalah Login – Transaksi – Logout. Akan tetapi dalam aplikasi atm ada mekanisme verifikasi password atau yang lebih dikenal dengan PIN. Dan untuk memperkuat keamanan dan pengembangan sistem, maka ditambahkan verifikasi PASSWORD. Pada sistem atm sebenarnya, user akan diharuskan memasukkan pin setelah memasukkan kartu atm ke dalam mesin. Dan selanjutnya mesin akan mengenali nomor dari kartu magnetik tersebut dan dibandingkan dengan pin yang dimasukkan apakah sesuai pada database. Akan tetapi, pada aplikasi atm ini tidak ada mekanisme input kartu sehingga yang akan dikenali sebagai “kartu atm“ adalah pin dan password yang dimiliki user. Dengan pin dan password tersebut, maka atm akan mencocokkan dengan database dan “men-generate“ nomor anggota dan rekening milik user. Selanjutnya user dapat menggunakan aplikasi atm itu untuk transaksi berikut fasilitas-fasilitasnya.

Pin dan password yang dimaksud dalam aplikasi atm ini bersifat krusial, artinya sangat penting peranannya dalam proses transaksi. Tanpa pin dan password, anda tidak akan bisa bertransaksi. Jadi bila lupa, tanyakan pada “administrator “ atau lihat pada databasenya. Dan pada simulasi atm, juga terdapat output berupa cetak kertas yang menampilkan rincian hasil transaksi sebelumnya sehingga user dapat mengecek apakah sudah sesuai dengan yang diinginkannya.

3.2.1 Data Alir Diagram

3.2.1.1 Data Alir Diagram Level 0

LOGOUT

LOGINNASABAH

1

ATM

+

Gambar 3.5 DAD Level 0

Gambar di atas menunjukkan proses yang terjadi pada aplikasi ATM untuk level 0 atau pertama kali. User harus login terlebih dahulu untuk mengakses aplikasi tersebut atau logout untuk keluar dari aplikasi.

Page 40: proyek akhir dbms

3.2.1.2 Data Alir Diagram Level 1

KELUARGAGAL

BERHASIL

LOGIN

LOGOUT

LIHAT_LOGIN

LIHAT_PIN&PASS

NASABAH NASABAH

1

INPUT_PIN&PASS

2

CEK_PIN&PASS

LOGIN

4

MENU

+

Gambar 3.6 DAD Level 1

Gambar di atas adalah proses pada waktu login ATM. Jika pin dan password yang dimasukkan benar, maka akan ke proses menu. Jika tidak, akan logout.

3.2.1.3 Data Alir Diagram Level 1 Proses 1

KEMBALI

KEMBALI

KEMBALIKEMBALI

KEMBALI KEMBALI

INPUT_NO

KELUAR

PILIH_TRANSFER PILIH_BAYARPILIH_GANTIPILIH_SALDO

PILIH_TUNAI

BAYAR_KREDITTAMBAH_SALDO BAYAR_AIRBAYAR_TELPBAYAR_TIKET

UBAH_PINLIHAT_SALDOCEK_SALDO

1

PENARIKAN_TUNAI

2

INFORMASI_SALDO 3

GANTI_PIN

4

PEMBAYARAN

5

TRANSFER

SALDOLOGIN

6

AIR

7

TELEPON

8

TIKET

9

KARTU_DEBIT

10

KARTU_KREDIT

11

MENU_ATM NASABAH

12

INPUT_REK_TUJUAN

13

MENU

Gambar 3.7 DAD Level 1 Proses 1

3.2.2 Perancangan Program

Page 41: proyek akhir dbms

Untuk menghubungkan program pada Visual Basic dengan database Oracle maka digunakan ORADC (Oracle Data Control) dengan contoh seperti yang telah dijelaskan pada bab sebelumnya. Dan bahasa pemrograman yang dipakai adalah berdasarkan SQL (Structured Query Language). Kali ini yang akan dibahas adalah statement-statement DML apa saja yang digunakan pada aplikasi atm.

3.2.2.1 Klausa Select Untuk menampilkan data dari suatu tabel maka digunakan statement SELECT. Berikut adalah contoh program untuk menampilkan data pada tabel Anggota : sql = “SELECT * FROM anggota WHERE

no_anggota=’7403030001’“ ORADC1.RecordSource = sql ORADC1.Refresh 3.2.2.2 Klausa Insert Untuk memasukkan data-data suatu tabel maka statement yang digunakan adalah INSERT. Penggunaan klausa ini akan banyak digunakan pada saat pengisian database atm. Berikut akan diberikan contoh programnya :

sql = “INSERT INTO anggota VALUES(’7403030001’,’Rouf’,’Keputih’,’Sura

baya’,’60111’,’Laki-laki’,’Mahasiswa’,’BNI_ITS’,’1470’)“

ORADC1.Database.Executesql sql

3.2.2.3 Klausa Update UPDATE digunakan untuk meng-update data pada suatu tabel dengan nilai yang dibutuhkan. Berikut adalah contoh program untuk update saldo dari rekening tabungan :

sql = “UPDATE saldo SET total = total – ’“ & nominal & “’“

ORADC1.Database.Executesql sql 3.2.2.4 Klausa Delete Untuk menghapus baik baris, kolom atau isinya menggunakan statement DELETE. Contoh :

sql = “DELETE FROM telkom WHERE periode = ’JULI’“

Page 42: proyek akhir dbms

ORADC1.Database.Executesql sql 3.2.3 Aplikasi Monitoring

Dalam proyek akhir ini, proses distribusi data tidak akan terlihat secara transparan atau nyata karena mekanisme proses itu yang dinamakan Replikasi akan ditangani oleh Oracle sebagai RDBMS. Dan bila diterapkan pada simulasi mesin atm, maka cara yang mudah agar kita dapat mengetahui dan menampilkan hasil jalannya database terdistribusi adalah dengan membuat sebuah aplikasi monitoring. Dengan aplikasi monitoring tersebut, user akan dapat melihat proses distribusi data yang memang menjadi sistem utama atm setelah selesai melakukan transaksi di mesin tersebut. Aplikasi ini dirancang agar dapat menampilkan data-data replika (sebagai akibat transaksi) yang ada dalam database dan data apa saja yang telah berubah setelah user melakukan transaksi. Dengan sifat database asli hanya ada di satu tempat, sementara yang lain berupa kopi-an (replika), maka konsep dari aplikasi ini adalah user di banyak tempat akan melihat monitoring dengan data sesuai dengan sesi terakhir yang dilakukannya. Gambaran dari penjelasan di atas adalah seperti diagram sistem berikut :

Gambar 3.8 Diagram Sistem Monitoring

Proses dari monitoring itu sendiri dapat dijelaskan sebagai berikut :

a. User terlebih dahulu harus login untuk memasukkan pin&password dari no anggotanya.

b. Transaksi dipilih berdasarkan keinginan,misalnya user ingin mengambil uang maka pilih menu Penarikan Tunai pada ATM.

Page 43: proyek akhir dbms

c. User akan memilih berapa jumlah uang yang akan diambil dalam rekening dengan satuan angka. Setelah itu data akan diproses dan diberi informasi bahwa proses penarikan uang telah berhasil.

d. Ketika proses input (permintaan uang) selesai maka akan terjadi sinkronisasi (yang disebut dengan replikasi) data antar database server sehingga nilai tabungan user tersebut juga berubah dan isinya sama.

e. Dan kali ini aplikasi monitoring berperan untuk menampilkan data yang berubah tersebut pada tiap database server sehingga kita dapat melihat bahwa proses distribusi data berlangsung dengan baik. Maka ketika user login dari ATM lain akan sudah mengetahui data tabungannya berkurang sesuai dengan transaksi sebelumnya.

Di bawah ini adalah tampilan utama dari aplikasi

monitoring pada masing-masing database.

Gambar 3.9 Desain Aplikasi Monitoring

Time pada form menunjukkan waktu dari setiap sistem komputer. Sedangkan Database menunjukkan nama server database pada Oracle yang digunakan untuk aplikasi ATM. Setiap aplikasi monitoring akan dirancang pada masing-masing database atm. Dan berikutnya yaitu Replicated Data adalah tabel-tabel di database yang menjadi objek replikasi.

Page 44: proyek akhir dbms

Cara kerja dari aplikasi monitoring database atm itu sendiri dapat dijelaskan sebagai berikut :

1) Form monitoring akan dijalankan setelah user selesai

menjalankan aplikasi atm, dalam arti log out. 2) Jika user tadi telah melakukan satu atau lebih transaksi pada

atm, maka tabel yang pertama muncul saat monitoring dijalankan adalah berupa data pada tabel LOGS. Dalam tabel LOGS tersebut akan tercatat semua perubahan-perubahan yang terjadi pada data-data terkait transaksi sebelumnya.

3) User dapat melihat data-data lain pada database dengan cara klik panah pada kotak kombo. Dan isi tabel akan ditampilkan sesuai dengan pilihan.

4) User hanya akan dapat melihat data-data yang terkait pada rekening atau keanggotaannya dan pada sesi yang terakhir saja. Record data transaksi atau sesi sebelumnya tidak akan ditampilkan

3.3 Pembuatan Sistem Dalam tahap pembuatan ini, yang pertama kali dilakukan adalah

membuat user interface aplikasi ATM, kemudian membuat suatu replikasi dari database yang telah dirancang, dan akhirnya memilih teknik untuk mengatasi konflik pada replikasi. Berikut ini akan dijelaskan masing-masing tahapan pembuatan sistem.

3.3.2 User Interface Aplikasi ATM

Pada pembuatan interface ini digunakan Visual Basic 6 beserta komponen-komponennya seperti Oracle Data Control (ORADC) dan Crystal Report Control 4.6. Sedangkan perancangan interface-nya didasarkan pada interface atm sebenarnya, termasuk menu-menu di dalamnya. Berikut ini akan dijelaskan beberapa desain form yang digunakan.

3.3.2.1 Form Bahasa

Dalam interface ATM akan dijumpai form bahasa dahulu. Dan desain dari form bahasa adalah seperti berikut :

Page 45: proyek akhir dbms

Gambar 3.10 Form Bahasa

3.3.2.2 Form PIN

Form ini berfungsi sebagai Login dari aplikasi ATM. User diharuskan untuk mengisi pin dan password sesuai dengan nomor pin dan password dari ke-anggotaaannya.

Gambar 3.11 Form PIN

3.3.2.3 Form Menu

Sesuai dengan namanya, form ini berisi menu-menu yang ada pada aplikasi ATM. Untuk menggunakan salah satu menu, cukup dengan menekan tombol yang ada di sampingnya.

Page 46: proyek akhir dbms

Gambar 3.12 Form Menu

3.3.2.4 Form Informasi Saldo Form ini akan menampilkan informasi saldo dari jenis rekening yang dimiliki user. Jenis rekening itu sendiri bisa terdiri dari : rekening tabungan, rekening giro dan kartu kredit.

Gambar 3.13 Form Saldo

3.3.2.5 Form Penarikan Tunai Pada pemilihan menu penarikan tunai, akan terdapat beberapa pilihan untuk mengambil uang tunai sesuai dengan nominal yang tertera. Juga terdapat pilihan lain bila user ingin memasukkan sendiri berapa nominal yang diinginkan.

Page 47: proyek akhir dbms

Gambar 3.14 Form Tunai

3.3.2.6 Form Ganti PIN User yang ingin mengganti 4 digit nomor pin-nya maka setelah memilih menu ganti pin pada form menu, dapat merubahnya dengan cara menekan angka-angka yang telah disediakan. Jadi user hanya menggunakan mouse untuk berinteraksi, seperti terlihat di gambar berikut :

Gambar 3.15 Form Ganti Pin

3.3.2.7 Form Pembayaran Di form ini disediakan menu-menu untuk melakukan transaksi yang berhubungan dengan “pembayaran“ atau mungkin disebut juga sebagai tagihan. Terdapat menu pembayaran telepon, pembelian voucher pulsa prabayar dan pembayaran pascabayar,

Page 48: proyek akhir dbms

pembayaran kartu kredit, tiket pesawat terbang, kartu debit dan yang terakhir adalah pembayaran tagihan air/pdam. Desain formnya seperti di bawah ini :

Gambar 3.16 Form Pembayaran

3.3.2.8 Form Pemindahbukuan Pemindahbukuan adalah transaksi “pindah-buku“ atau pindah-uang dari rekening seseorang ke rekening orang lain. Dalam aplikasi ATM ini user juga dapat melakukan transaksi transfer uang ke rekening orang lain. User akan mengisi nomor rekening tujuan dan jumlah uang dari jenis rekening yang akan digunakan. Adapun desain formnya seperti gambar di bawah ini :

Gambar 3.17 Form Transfer

Page 49: proyek akhir dbms

3.3.3 Pembuatan Replikasi Berikut ini akan dijelaskan secara rinci tentang langkah-

langkah dalam membangun suatu sistem replikasi pada Oracle. Persyaratannya adalah siapkan terlebih dahulu 2 database boleh pada komputer yang sama atau dua komputer yang berbeda. Langkah-langkahnya yaitu :

1. Login sebagai SYSTEM/SYS. 2. Klik tanda ‘+’ pada pilihan distributed, kemudian klik

tanda ‘+’ pada pilihan advanced replication , Klik kanan pada pilihan Multimaster Replication.

3. Dan pilih Setup Master Sites.

Gambar 3.18 Setup Master Site

4. Kemudian muncullah Gambar 3.19.

Page 50: proyek akhir dbms

Gambar 3.19 Memasukkan Master Site

5. Pilih server-server yang akan dikoneksikan pada pilihan

site, anda harus mengetahui password user system pada masing-masing server, dan mengisikannya pada isian password. Dan kemudian klik tombol add. Pada site adding terdapat nama server-server yang akan dikoneksikan. Setelah anda selesai menambahkan server yang akan dikoneksikan, klik tombol Ok. Sehingga muncullah Gambar 3.20.

Gambar 3.20 Master Sites

6. Kemudian Klik tombol Next. Akan muncul Gambar 3.21.

Page 51: proyek akhir dbms

Gambar 3.21 Administrator Replikasi

7. Gambar di atas, adalah perintah untuk membuat user administrator untuk menangani replikasi oracle. Sebaiknya biarkan schema tetap REPADMIN, anda tinggal mengubah password dari user repadmin tersebut. Kemudian klik tombol Next.

Gambar 3.22 Membuat Schema

8. Selanjutnya akan muncul tampilan seperti pada Gambar

3.22, yang merupakan petunjuk untuk membuat schema pada masing-masing server untuk direplika, klik tombol Add. Contoh penulis membuat schema REPLIKA, maka

Page 52: proyek akhir dbms

schema ini akan dibuatkan otomatis oleh Oracle, pada masing-masing server. Seperti pada Gambar 3.23.

Gambar 3.23 Schema

9. Kemudian klik tombol Ok. 10. Lalu klik tombol Next. Dan muncul Gambar 3.24, yang

merupakan petunjuk untuk setting scheduling link antar server pada saat replikasi terjadi. Kalo anda ingin mempercepat proses link, dan dilakukan terus-menerus, jangan ubah SYSDATE pada isian Next Date, ubah-lah intervalnya, dengan menekan tombol SET.

Gambar 3.24 Setting Scheduled Link

Page 53: proyek akhir dbms

11. Ubahlah interval-nya dari minutes ke seconds. Dan

kemudian klik Ok, terjadi perubahan pada intervalnya. Kemudian klik Next.

Gambar 3.25 Mengatur Interval Schedule

12. Dan akan muncul tampilan seperti pada Gambar 3.26,

yang merupakan petunjuk setting untuk melaksanakan eksekusi data dari server satu ke server yang lain, bila terjadi perubahan data pada salah satu server. Settinglah seperti pada langkah nomor 11. lalu klik tombol Next.

Gambar 3.26 Setting Purge Job

Page 54: proyek akhir dbms

13. Lalu akan muncul pilihan konfigurasi master site-master site yang telah di add sebelumnya. Jangan ubah apapun pada tampilan tersebut, klik tombol Next.

14. Klik tombol finish. 15. Lalu klik Ok. 16. Kemudian LOGIN sebagai REPADMIN (user ini dibuat

waktu membuat master site). 17. Buatlah Group pada Master Groups, Dengan mengklik

kanan Master Groups pada anak cabang Multimaster Replication. Dan pilih Create.

Gambar 3.27 Buat master grup dengan Repadmin

18. Kemudian buat nama pada isian Name, semisal distribusi,

seperti pada Gambar 3.28.

Gambar 3.28 Master Grup

Page 55: proyek akhir dbms

19. Kemudian pilih schema yang akan direplika, schema ini

ada saat kita membuat-nya pada Langkah 8. Buat tabel terlebih dahulu pada schema yang ditunjuk untuk proses replikasi. Anda cukup membuatnya pada sisi server pusat, server lain tidak perlu membuat tabel yang sama persis, karena Oracle nantinya secara otomatis akan mengkopi-nya ke server lain dalam satu koneksi replikasi.

Gambar 3.29 Menambahkan objek

20. Pilih server tujuan replika

Gambar 3.30 Site Tujuan

Page 56: proyek akhir dbms

21. Selanjutnya akan nampak topologi replica

Gambar 3.31 Topologi replikasi

Pastikan pada table atau objek-objek lain yang direplika,

Generation Status = Generated. Bila tidak klik tombol “GENERATE”.

22. Setelah status objek-objeknya Generated, maka klik

tombol Submit Start Request.

3.3.4 TEKNIK RESOLUSI KONFLIK

Aplikasi atm ini dirancang agar dapat diakses dari lebih satu tempat, tergantung dari jumlah komputer yang digunakan. Dengan itu diharapkan dapat mengimplementasikan sistem database secara terdistribusi.

Database terdistribusi memungkinkan beberapa aplikasi untuk mengakses dan melakukan query pada data dalam waktu yang bersamaan. Sehingga akan menyebabkan suatu konflik database dan hal itu yang harus dihindari. Seperti yang telah dijelaskan pada bab sebelumnya tentang resolusi konflik, maka pada perancangan replikasi ini akan digunakan salah satu metode untuk mengatasi konflik.

Berikut ini akan diterangkan langkah-langkah untuk menggunakan metode resolusi konflik :

Page 57: proyek akhir dbms

1) Login sebagai REPADMIN pada master definition site 2) Pilih Distributed – Advanced Replication – Master

Groups, pilih master grup yang ada. 3) Pastikan pada tab General dari master grup itu,

statusnya Stopped. 4) Pilih objek replica pada tree master grup, lalu klik tab

Conflict Resolution.

Gambar 3.32 Objek Replika

5) Klik Create pada sisi Column Group. Lalu akan muncul

jendela baru seperti berikut :

Gambar 3.33 Kolom Grup

Page 58: proyek akhir dbms

6) Beri nama kolom grup tersebut, contoh cg_anggota. Pilihlah kolom mana dari tabel yang akan dibuat. Pemilihan tersebut didasarkan pada tipe data kolom yang sesuai dengan jenis metode yang akan digunakan. Contohnya, tipe data NUMBER dapat digunakan untuk metode Additive/Average. Lalu klik OK.

7) Setelah proses pembuatan kolom grup selesai, akan

muncul kolom grup cg_anggota. Pilih dan klik Add.

Gambar 3.34 Membuat metode resolusi

8) Akan muncul jendela Update Resolution Methods. Pilih

metode yang dibutuhkan. Lalu klik OK.

Gambar 3.35 Metode Resolusi

9) Setelah metode selesai dibuat. Klik Generate pada objek

(bila belum generated) lalu Submit Start Request untuk melanjutkan replikasi.

Page 59: proyek akhir dbms

BAB IV PENGUJIAN DAN ANALISA

4.1 Pengujian

Dalam bab ini akan diuraikan tentang hasil uji coba sistem. Pengujian ini membutuhkan setidaknya dua komputer atau lebih untuk mensimulasikan beberapa atm pada lain tempat. Pengujian ini dibagi menjadi 3 tahap, yaitu uji coba koneksi ke net service name, uji coba replika data dan uji coba konflik.

4.1.1 Pengujian Net Service Name Pengujian Net Service Name ini diperlukan untuk mengetahui apakah database pada komputer lain sudah bisa berhubungan dengan database lokal. Langkah-langkah untuk mengecek konektivitas antar database Oracle adalah sebagai berikut :

Buka Net Configuration Assistant. Pilih Local Set Service Name configuration, lalu klik Next.

Gambar 4.1 Net Configuration Assistant

Lalu pilih Add untuk mengakses database melalui network. Klik Next.

Jika database yang akan diakses menggunakan Oracle versi 8, maka pilih opsi Oracle8 release 8.0 database or service. Untuk Oracle versi 8i ke atas, pilih Oracle 8i or later database or service. Klik Next untuk lanjut.

Masukkan nama servis atau nama database yang dituju. Contohnya : DATA. Lalu klik Next.

Page 60: proyek akhir dbms

Gambar 4.2 Input Nama Service

Selanjutnya akan tampil pilihan untuk setting network protocol, bila komputer menggunakan LAN, maka pilih TCP. Tekan Next untuk lanjut.

Tampilan berikutnya adalah untuk masukan nama host komputer yang dituju atau bisa nomor IP-nya saja. Untuk port-nya pilih yang standard saja, atau bila database yang diakses jumlahnya banyak maka dapat dipilih port yang diinginkan. Lalu klik Next.

Gambar 4.3 Nama Host dan Port

Selanjutnya akan muncul request tes koneksi. Pilih Yes.

Tunggu sesaat. Bila nama host dan service yang diberikan benar maka akan muncul “Test successfull“.

Page 61: proyek akhir dbms

Gambar 4.4 Koneksi sukses

Selanjutnya akan muncul tampilan untuk memasukkan

nama net servis tersebut. Secara default Oracle akan memasukkan nama servis seperti dengan nama yang diminta sebelumnya, tapi dapat diubah sesuai keinginan. Klik Next untuk lanjut.

Bila telah selesai pilih No. Bila masih ingin konfigurasi lagi, pilih Yes. Lalu tekan Next.

Akan muncul tampilan seperti di bawah ini bila telah selesai

Gambar 4.5 Net Servis Sukses

Bila muncul gambar seperti di atas maka menunjukkan bahwa penambahan database untuk diakses pada network telah berhasil. Dan segera servis tersebut dapat ditambahkan pada node Network - Databases di Enterprise Manager Console. Sehingga memudahkan dalam pengaturan replika database nantinya.

Page 62: proyek akhir dbms

4.1.2 Pengujian Replika Data Pengujian ini diperlukan untuk mengetahui apakah objek-

objek yang akan direplika berhasil digenerate semuanya sebelum mulai aktivitas replikasi. Dengan begitu dapat diketahui objek mana yang tidak bisa di-generate untuk proses replikasi beserta penyebab errornya. Ada beberapa macam error yang mungkin terjadi pada saat menambahkan objek replika pada grup :

Status objek (VALID – INVALID)

Merupakan status dari objek itu sendiri, bukan pada grup replika. Jadi bila muncul status ini, maka cek terlebih dahulu tabel tersebut. Apakah jumlah kolom, tipe datanya sudah sesuai atau ada nilai yang kosong pada baris.

Status generate (GENERATED – DOING GENERATION – NEEDS GENERATION) Adalah status objek baik itu tabel maupun lainnya, pada suatu grup replika. Setelah menambahkan objek-objek replika pertama kalinya, maka status dari objek adalah DOINGGEN (doing generation). Tunggu beberapa saat, bila statusnya tidak berubah menjadi GENERATED, maka klik “Generate Replication Support“. Sedangkan status NEEDS GENERATION berarti objek tersebut belum dan perlu untuk di-generate.

Berikut adalah contoh status pada grup replika.

Gambar 4.6 Objek-objek replika

Page 63: proyek akhir dbms

Bila tidak terdapat error seperti di atas maka replikasi dapat

dimulai dengan cara menekan “Submit Start Request“ pada tab General. Maka status replikasi akan berubah dari Stopping (Quiesced) menjadi Running (Normal). Semua proses yang berjalan pada grup master akan dicatat dalam sebuah daftar administratif yang disebut dengan “Administrative Request“. Berikut adalah penjelasan mengenai informasi yang terdapat dalam master grup :

Gambar 4.7 Informasi Master Grup

Tabel 3 Informasi Master Grup

Name Menampilkan nama dari master grup. Connection Qualifier

Menampilkan nomor kualifikasi pada link database yang digunakan oleh master grup.

Master Definition Site

Mengindikasikan apakah site tersebut merupakan master definition site atau bukan. Nilainya Yes atau No. Beberapa operasi seperti menghentikan master grup, hanya dapat dilakukan pada master jenis site ini.

Aktivitas Replikasi (Replication Activity) Status Menampilkan status replikasi pada

master grup tersebut. Nilainya adalah Running (Normal), Stopping (Quiescing), dan Stopped (Quiesced).

Page 64: proyek akhir dbms

Submit Start/Stop Request

Tombol ini hanya akan aktif pada master definition site. Label yang tertera, Start/Stop, tergantung dari status master grup. Klik Submit Start Request untuk melanjutkan proses replikasi, dan Submit Stop Request untuk menghentikan aktivitas.

Perintah Administratif (Administrative Request) Total number of administrative request

Menampilkan jumlah perintah administratif pada master grup.

Administrative request with errors

Menampilkan jumlah perintah administratif yang error.

View Administrative request

Tombol untuk membuka jendela informasi perintah administratif, dimana dapat memasukkan atau mengeluarkan perintah-perintah tersebut.

Remark Menampilkan catatan atau komentar tentang master grup tersebut.

4.1.3 Pengujian Aplikasi Atm Pengujian aplikasi atm akan dilakukan untuk mengetahui

apakah rancangan sistem atm yang dibangun dapat berjalan lancar dengan koneksi database ke Oracle. Juga akan diukur seberapa cepat aplikasi dapat menyediakan akses ke database dan penanggulangan error pada program itu sendiri.

Selain itu juga akan diuji beberapa transaksi seperti yang terdapat di menu atm. Untuk melihat apakah transaksi tersebut sudah sesuai dengan data yang dimasukkan.

Berikut ini akan dijelaskan tentang pengujian aplikasi atm. 4.1.3.1 Pengujian Login ATM

Pada saat login atm, user hanya dituntut untuk memasukkan nomor pin saja. Sedangkan nomor pin ini diketahui oleh user sendiri dan administrator. Bila user lupa berapa nomor pin-nya, maka dapat meminta tolong administrator untuk melihat data dari login user. Data tersebut dalam database adalah seperti gambar berikut.

Page 65: proyek akhir dbms

Gambar 4.8 Data Login

Setelah user mengetahui data login-nya, maka selanjutnya user dapat login aplikasi atm.

Gambar 4.9 Informasi Display ATM saat Login

Setelah memasukkan nomor pin, tekan tombol diantara Correction dan Accept untuk memasukkan password.Setelah itu tekan tombol “Tekan jika Benar“, maka selanjutnya program atm akan memproses data input pin dan password tadi. Nomor input pin dan password dicocokkan dengan data login pada database. Jika nomor pin dan password pada database tidak berubah, maka login akan berhasil. Bila tidak cocok diantara keduanya, maka login tidak sukses dan aplikasi atm akan menampilkan form seperti berikut :

Gambar 4.10 InformasiDisplay ATM Login gagal

Page 66: proyek akhir dbms

Pada form seperti di atas, user dapat memasukkan kembali nomor pin dan password hingga 3 kali kesempatan. Jika masih salah, maka aplikasi atm akan berakhir. 4.1.3.2 Pengujian Menu ATM

Setelah login sukses, user dapat melihat menu yang terdapat pada atm. Ada 5 menu yang ditawarkan, yaitu : Ganti Pin, Pembayaran, Pemindahbukuan, Penarikan Tunai, dan Informasi Saldo.

Gambar 4.11 Informasi Display Menu ATM

Berikut akan dijelaskan beberapa pengujian transaksi di atas. 1. Pembayaran

Dalam menu pembayaran, user dapat melakukan beberapa macam transaksi pembayaran, yaitu : pembayaran telepon, kartu kredit, tiket, kartu debit, dan air/pdam.

Gambar 4.12 Informasi Display Menu Pembayaran

Berikut akan diberikan contoh transaksi pembayaran telepon :

• Pilih Telepon/HP pada menu pembayaran • Akan muncul menu telepon. Pilih Telkom.

Page 67: proyek akhir dbms

• Lalu akan muncul menu telkom seperti gambar di bawah ini. Pilih Telepon.

Gambar 4.13 Informasi Display Menu Telkom

• Setelah itu user diharuskan untuk memasukkan nomor

telepon. Contohnya : 0315558855. Untuk lanjut, tekan tombol “Tekan Jika Benar“, jika nomor telepon yang dimasukkan salah tekan tombol “Tekan Jika Salah“.

• Selanjutnya program akan mencocokkan nomor telepon yang dimasukkan user dengan database dan apakah nomor telepon tersebut mempunyai tagihan pada bulan tersebut. Bila sekarang bulan Juli, maka database akan mencari data tagihan telepon 0315558855 untuk bulan Juli. Bila pencocokan selesai, akan tampil konfirmasi transaksi telepon yang ditunjukkan pada gambar berikut :

Gambar 4.14 Informasi Display Konfirmasi Pembayaran Telepon

• Tekan Ya jika data tersebut benar dan ingin lanjut transaksi.

Bila tidak tekan Tidak, maka transaksi tidak akan diteruskan dan kembali ke menu utama.

• Jika Ya, maka akan muncul pilihan jenis rekening untuk pembayaran. Pilih Rekening Tabungan. Selanjutnya

Page 68: proyek akhir dbms

transaksi akan diproses. Pada proses ini saldo rekening tabungan akan dikurangi sesuai jumlah tagihan telepon sebelumnya. Untuk mengecek saldo tabungan, pilih menu utama Informasi Saldo. Maka dapat dilihat sisa saldo user akan berkurang.

2. Pemindahbukuan

Dalam menu ini, user dapat melakukan transaksi pemindahbukuan atau yang dikenal dengan transfer. Ada dua jenis pemindahbukuan, yaitu : dari Rekening Tabungan dan dari Kartu Kredit. Berikut ini akan diberikan contoh transaksi transfer tabungan.

• Pilih Dari Rekening Tabungan pada pemindahbukuan.

Gambar 4.15 InformasiDisplay Menu Pemindahbukuan

• Masukkan nomor rekening tujuan pemindahbukuan.

Contohnya : 1672949276. Untuk lanjut, tekan tombol “Tekan Jika Benar“, jika nomor rekening tujuan yang dimasukkan salah tekan tombol “Tekan Jika Salah“.

• Selanjutnya akan muncul tampilan seperti gambar di bawah ini. Masukkan jumlah uang yang akan dipindahbukukan.

Gambar 4.16 Informasi Display jumlah uang transfer

Page 69: proyek akhir dbms

• Untuk lanjut, tekan tombol “Tekan Jika Benar“, jika jumlah nominal uang yang dimasukkan salah tekan tombol “Tekan Jika Salah“.

• Selanjutnya akan muncul konfirmasi transaksi

pemindahbukuan. Jika setuju, tekan Ya.

Gambar 4.17 Informasi Display Konfirmasi Pemindahbukuan

• Setelah menekan Ya, program akan memproses transaksi

pemindahbukuan sesuai dengan data-data yang dimasukkan oleh user. Nomor rekening tujuan 1672949276 akan menerima tambahan uang sebanyak 500000. Sedangkan rekening tabungan user akan berkurang sebanyak 500000 pula.

3. Penarikan Tunai

Dalam menu ini, user dapat melakukan “penarikan tunai“ seperti sebenarnya. Karena pengambilan tunai, maka proses penarikan uang berasal dari rekening tabungan, bukan kartu kredit.

Gambar 4.18 Informasi Display Menu Penarikan tunai

Page 70: proyek akhir dbms

Berikut akan diberikan contoh transaksi tunai. • Pilih Rekening Tabungan setelah menekan Transaksi

Tunai. • Pilih jumlah uang yang akan diambil. Nominal yang

disediakan adalah kelipatan 50000. Bila ingin mengambil uang dengan nominal lain, tekan Lainnya.

• Setelah memilih jumlah uang, transaksi akan diproses. Program akan mengurangi saldo rekening tabungan dari user sesuai jumlah yang dimasukkan. Tampilan setelah proses transaksi tunai seperti gambar berikut :

Gambar 4.19 Informasi Display Pengambilan Uang

4.1.4 Pengujian Konflik

Dalam simulasi atm yang dilakukan pada dua komputer, selain dapat menjalankan transaksi sebagaimana halnya pada mesin atm sesungguhnya, masing-masing user dapat mencoba untuk melakukan suatu kasus dimana tidak dijumpai pada keadaan sebenarnya. Yaitu dimana user berusaha login dan bertransaksi menggunakan rekening yang sama, dan proses ini yang nantinya akan menimbulkan permasalahan pada database. Saat seorang user A login dengan nomor pin 1234 di atm 1, kemudian melakukan transaksi penarikan uang tunai sejumlah 50000 rupiah, maka pada saat yang hampir bersamaan user B juga login dengan nomor pin yang sama di atm 2. Dan user B juga melakukan transaksi penarikan tunai sebesar 250000 rupiah, seiring dengan user A.

Ilustrasi di atas merupakan konflik yang mengacu pada proses “update“, dikarenakan user akan mengurangi saldo dari rekeningnya sebanyak permintaan. Sementara permintaan yang akan dieksekusi pada database berasal dari dua user yang mengakses baris dengan kolom yang sama pada periode tertentu. Untuk kasus

Page 71: proyek akhir dbms

semacam ini, maka metode resolusi konflik yang sesuai seperti : waktu terakhir (earliest timestamp).

Pada pengujian ini akan dilakukan bermacam-macam kemungkinan yang akan menghasilkan error dan nantinya dicatat dalam daftar pengujian error beserta penjelasan mengenai metode untuk mengatasi jenis error tersebut.

4.1.5 Pengujian Monitoring

Setelah selesai dengan aplikasi atm, user yang tadinya melakukan suatu transaksi dapat melihat hasil dari proses tersebut pada Monitoring. Monitoring akan menampilkan data-data dari user tersebut berikut logs atau hasil record dari transaksi-transaksi yang telah dilakukannya. Jika proses transaksi benar, maka akan dilihat apakah logs dari transaksi juga dapat menampilkan informasi yang sesuai.

Selain itu user dapat melihat data pada tabel-tabel lain dengan cara memilih tabel pada Replicated Data. Seperti yang dicontohkan pada gambar berikut.

Gambar 4.20 Form Monitoring

Tabel Logs tersebut berfungsi untuk menampilkan data-data yang berubah akibat transaksi yang telah dilakukan seorang user.

4.2 Analisa Hasil Pengujian

Program yang dibuat dalam aplikasi atm banyak menggunakan statement SQL untuk manipulasi data, yang sesuai dengan program untuk berbagai proses pada database Oracle. Selain Oracle sendiri yang menyediakan kemampuan proses transaksi level tinggi, maka desain

Page 72: proyek akhir dbms

program dibuat seefisien mungkin agar mudah untuk mempelajari dan menelusuri error bila terjadi kesalahan.

Berikut akan dicontohkan program pada form_pin yang digunakan untuk verifikasi nomor pin.

Private Sub accept_Click() SQL = "select * from login where pin='" & txt_pin.Text&"'" LOGIN.RecordSource = SQL LOGIN.Refresh If LOGIN.Recordset.RecordCount > 0 Then If txt_pin.Text = LOGIN.Recordset!pin Then pass = txt_pin.Text 'simpan pin' no = LOGIN.Recordset!no_rekening 'simpan no_rekening' anggota = LOGIN.Recordset!no_anggota 'simpan no_anggota'

SQL = "select * from rekening where no_rekening='" & no & "'"

LOGIN.RecordSource = SQL LOGIN.Refresh jenis_rek = LOGIN.Recordset!jenis 'simpan jenis_rekening'

SQL = "select * from anggota where no_anggota='" & anggota & "'"

LOGIN.RecordSource = SQL LOGIN.Refresh no_air = LOGIN.Recordset!no_air 'simpan no_air' 'Mengaktifkan seq_log_sesi

SQL = "select seq_log_sesi.nextval from dual" LOGIN.RecordSource = SQL LOGIN.Refresh

x = LOGIN.Recordset!nextval 'update tabel temp dengan no_rekening dan sesi SQL = "update temp set id='" & no & "'" LOGIN.Database.ExecuteSQL SQL SQL = "update temp set counter='" & x & "'" LOGIN.Database.ExecuteSQL SQL 'Mengaktifkan trigger SQL = "alter trigger tr_ad_pdam enable" LOGIN.Database.ExecuteSQL SQL SQL = "alter trigger tr_ad_telkom enable" LOGIN.Database.ExecuteSQL SQL SQL = "alter trigger tr_ad_tiket enable"

Page 73: proyek akhir dbms

LOGIN.Database.ExecuteSQL SQL SQL = "alter trigger tr_au_kartudebit enable" LOGIN.Database.ExecuteSQL SQL SQL = "alter trigger tr_au_kartukredit enable" LOGIN.Database.ExecuteSQL SQL SQL = "alter trigger tr_au_pulsa enable" LOGIN.Database.ExecuteSQL SQL SQL = "alter trigger tr_au_saldo enable" LOGIN.Database.ExecuteSQL SQL

'Ganti Form Form_menuu.Show Unload Me Else Form_pinsalah.Show Unload Me End If Else Form_pinsalah.Show Unload Me End If End Sub Program di atas akan berfungsi ketika user memasukkan

nomor pin dari keanggotaannya untuk diverifikasi apakah sesuai pada data nomor pin di database. Jika sesuai maka akan dilakukan beberapa proses, yaitu :

Menampung data nomor pin, nomor rekening, nomor

anggota, jenis rekening dan nomor air dari user. Data-data yang disimpan di atas akan banyak

digunakan dalam proses berbagai transaksi pada atm, sehingga tidak perlu dilakukan pemanggilan statement yang berulang-ulang.

Mengaktifkan sebuah sequence. Sequence yang dimaksud adalah seq_log_sesi, yaitu

fungsi pada database Oracle untuk menghasilkan nomor yang berurut sesuai dengan jumlah penambahan yang ditentukan dan batas maksimumnya. Sequence ini akan menghasilkan nilai jika diberikan statement nama_sequence.nextval.

Page 74: proyek akhir dbms

Mengupdate tabel temp

Tabel temp merupakan tabel cadangan (temporary) yang digunakan untuk menyimpan nomor rekening dari user yang login dan nilai sesi user yang dihasilkan dari sequence sebelumnya. Tabel temp ini nantinya juga akan banyak digunakan dalam pencatatan record transaksi.

Mengaktifkan trigger Trigger adalah blok PL/SQL yang akan dieksekusi

bila kondisi-kondisi di dalamnya terpenuhi. Dapat digunakan untuk memicu (trig) suatu statement DML sekalipun. Trigger-trigger di atas diterapkan pada tabel-tabel tertentu, dengan kondisi after_update (au) atau after_delete (ad) yang melibatkan tabel tersebut. Sintax untuk mengaktifkan trigger adalah : alter trigger nama_trigger enable.

Trigger-trigger yang digunakan adalah : 1. Trigger tr_ad_pdam. 2. Trigger tr_ad_telkom. 3. Trigger tr_ad_tiket. 4. Trigger tr_au_kartudebit. 5. Trigger tr_au_kartukredit. 6. Trigger tr_au_pulsa. 7. Trigger tr_au_saldo.

Ganti Form Jika proses-proses di atas sudah terpenuhi maka

yang berikutnya adalah ganti form berikutnya, yaitu form menu pada atm.

Sedangkan bila user memasukkan nomor pin yang tidak

sesuai dengan database, maka user akan diberikan informasi tentang kesalahan tersebut dengan pergantian form_pin menjadi form_pinsalah. Dalam form_pinsalah tersebut user akan mengetahui nomor pinnya tidak sesuai dan dapat mengulanginya lagi. Batas maksimal pengulangan input pin adalah 3 kali, setelah itu user akan logout dari aplikasi atm. Berikut ini akan ditampilkan gambar-gambar dari contoh kasus di atas.

Page 75: proyek akhir dbms

Gambar 4.21 Login ATM

Jika input pin benar, maka akan muncul tampilan :

Gambar 4.22 Menu ATM

Jika salah, maka tampilan yang akan muncul adalah :

Page 76: proyek akhir dbms

Gambar 4.23 Login Salah

Sedangkan bentuk tampilan dari transaksi dapat dibagi

menjadi : Tampilan transaksi tunai. Tampilan transaksi transfer. Tampilan transaksi pembayaran.

Tampilan transaksi pembayaran telepon / hp. → Tampilan transaksi telkom. → Tampilan transaksi telkomsel. → Tampilan transaksi indosat.

Tampilan transaksi pembayaran kartu kredit. Tampilan transaksi pembayaran tiket. Tampilan transaksi pembayaran kartu debit. Tampilan transaksi pembayaran air minum / pam.

Lihat saldo dan ganti pin bukan termasuk dalam transaksi karena tidak menyebabkan perubahan data-data rekening maupun jumlah saldo. Meskipun tidak tercatat dalam record transaksi, kedua menu tersebut juga mempunyai tampilan tersendiri, yaitu tampilan informasi saldo dan ganti pin. Untuk pengujian konflik yang direncanakan sebelumnya, maka dapat diambil analisa bahwa akan ada beberapa langkah yang dilakukan baik itu program, database maupun monitoring. Uraiannya adalah sebagai berikut :

Page 77: proyek akhir dbms

• Analisa Program

Program Visual Basic dengan menggunakan ORADC akan membuat sesi yang berbeda dan terpisah dengan program lain, misal iSQL*Plus atau SQLPlus. Yang dimaksud adalah pada waktu eksekusi objek-objek selain tabel seperti : trigger, sequence.

Nilai sequence yang diaktifkan pada VB akan menghasilkan nomor, akan tetapi kita tidak dapat melihat nilai sekarang dari sequence tersebut pada iSQL*Plus, tanpa mendeklarasikan statemen untuk mengaktifkan terlebih dahulu. Itulah yang menjadi alasan kenapa pada contoh program form_pin di atas terdapat script untuk meng-update tabel temp, yaitu berfungsi untuk menampung nilai seq_log_sesi yang dibangkitkan dari VB.

Sedangkan untuk kasus terjadinya konflik, maka yang mungkin dilakukan oleh program adalah menampilkan pesan, informasi atau peringatan tentang terjadinya konflik yang tidak dapat ditangani oleh Oracle. Ketika hal ini terjadi, maka pemrogram harus secara manual menyelesaikan permasalahan tersebut melalui teknik-teknik yang telah diterangkan di atas.

• Analisa Database

Oracle akan mendeteksi secara otomatis bila terjadi konflik

pada master grup. Apabila konflik itu tidak dapat diselesaikan sendiri oleh Oracle, maka pemrogram secara manual bertanggung jawab mendefinisikan teknik atau metode-metode resolusi konflik tersebut.

Ketika muncul peringatan dari Oracle akan terjadinya konflik, maka proses replikasi pada master grup harus dihentikan terlebih dahulu. Meskipun hal itu tidak dilakukan, namun tetap saja sewaktu mengkonfigurasi objek-objek yang error atau pengaturan ulang database, proses replikasi harus dihentikan terlebih dahulu. Sebab objek-objek replika tidak akan dapat di-generate kembali bila masih terdapat error, sehingga replikasi pun tidak bisa teruskan.

Metode resolusi konflik yang telah diterapkan pada master grup atau objek replika dapat merupakan salah satu dari metode tersebut maupun gabungan dari lebih satu metode. Hal ini tergantung dari tipe data kolom, nilai kolom atau keunikan dari kolom itu sendiri. Jadi tidak boleh terpaku hanya pada satu metode saja.

Page 78: proyek akhir dbms

• Analisa Monitoring Hasil transaksi-transaksi user pada atm seperti penarikan

tunai, pembayaran, pemindahbukuan dan ganti pin, akan menyebabkan perubahan-perubahan data pada database. Untuk menampilkan perubahan-perubahan data tersebut maka dibuatlah monitoring dengan fasilitas logs. Logs ini merupakan record dari perubahan-perubahan data akibat transaksi user. Bila user melakukan transaksi, maka record datanya dapat tampil pada logs. Jika tidak melakukan transaksi, seperti melihat informasi saldo atau ganti pin, maka tabel logs tidak mencatat record tersebut. Akan tetapi user masih dapat melihat perubahan pin tersebut, misalnya pada tabel LOGIN. Caranya adalah dengan memilih tabel-tabel pada Replicated Data.

Gambar 4.24 Hasil Logs

Page 79: proyek akhir dbms

BAB V PENUTUP

Pada bab-bab sebelumnya, dari bab II sampai dengan bab IV

telah diuraikan beberapa hal yang berhubungan dengan pembuatan aplikasi ini, mulai dari latar belakang, teori-teori penunjang, perancangan dan pembuatan aplikasi, sampai dengan implementasinya yang disertai uji coba dan analisa. Pada bab ini diuraikan beberapa hal yang dapat disimpulkan dari hasil-hasil pengujian aplikasi dan beberapa saran dengan harapan untuk lebih menyempurnakan perancangan yang telah dibuat.

5.1 Kesimpulan

Berdasarkan hasil pengujian dan analisa yang telah di bahas pada bab sebelumnya, maka dapat diberikan beberapa kesimpulan antara lain sebagai berikut :

1. Aplikasi atm ini memberikan kemudahan seperti, user hanya

cukup memasukkan nomor pin untuk login, dan dapat melakukan transaksi sebagaimana atm sesungguhnya.

2. Proses replikasi membutuhkan minimal dua database pada satu computer atau lebih dan sudah terinstall Oracle versi 8i ke atas.

3. Dengan replikasi, kita tidak membutuhkan skema atau objek yang dibutuhkan suatu aplikasi pada database lain. Kita cukup membuatnya pada satu sisi database.

4. Pada waktu membuat objek replika pada master grup, dapat dipilih objek-objek dari skema lain yang ada di database.

5. Metode resolusi konflik tidak semuanya optimal, karena ada yang tidak dapat menjamin konvergensi data. Seperti metode overwrite.

6. Aplikasi Monitoring merupakan satu paket program dengan ATM, yang dijalankan pada masing-masing database server.

5.2 Saran Proyek akhir ini masih bisa dikembangkan lebih lanjut.

Beberapa saran untuk pengembangan diberikan berikut ini :

Page 80: proyek akhir dbms

• Aplikasi yang dibuat pada proyek akhir ini masih sangat sederhana sekali. Diharapkan untuk pengembangan selanjutnya dapat membuat aplikasi yang lebih kompleks.

• Sistem yang digunakan bersifat homogen, yaitu sistem database yang sama menggunakan Oracle. Sebaiknya coba implementasikan sistem heterogen.

• Akan sangat konkret hasilnya bila aplikasi yang dibuat sekaligus dapat dibangun perangkat kerasnya. Sehingga bisa seperti produk sesungguhnya.

• Sebaiknya dilakukan perancangan teknik resolusi konflik yang akan dipakai terlebih dahulu. Dengan pemakaian yang tepat dan kesesuaian dengan aplikasi, maka replikasi akan semakin baik dan efisien.

Page 81: proyek akhir dbms

DAFTAR PUSTAKA

[1] Ted Burroughs, Oracle9i Advanced Replication Release 2 (9.2), Oracle Corporation,2002.

[2] Wiratmoko Yuwono, ST ,”Advanced Replication Step by Step”. [3] Gerald Bernbom, Data Administration and Distributed Data

Processing (Cause/Effect Vol. 14, Number 4, Winter 1992. Accessed 26 September 2000),

[4] http://www.dba-oracle.com/art_dbazine_mm_repl.htm, Donald K. Burleson, A Four-phase Approach to Procedural

Multi-master Replication . [5] http://www.dbspecialists.com/ Brian Keating, Database Specialists, Inc.

[6] http://www.lessaworld.com/dm/dm02.txt, 2000.

Page 82: proyek akhir dbms

RIWAYAT HIDUP PENULIS

Nama : Syarifuddin Rouf Alamat : Joyosuko 1/5b Malang Tgl Lahir

: 3 Desember 1984

Email : [email protected] Motto : Berusahalah menjadi

orang yang baik

Penulis dilahirkan pada tanggal 3 Desember 1984 di Dinoyo, Malang, putera kedua dari Bapak dan Ibu Syatibi.

Pendidikan SD ditamatkannya pada tahun 1997 dan SMP pada tahun 2000 di Malang. Pendidikan berikutnya dijalani di SMA Negeri 3 Malang dan tamat pada tahun 2003. Pada tahun yang sama ia melanjutkan pendidikan ke Diploma 3 Politeknik Elektronika Negeri Surabaya dengan mengambil jurusan Teknologi Informasi.

Penulis yang menyukai olahraga sejak dari kecil terutama sepakbola ini, memang bercita-cita menjadi seorang programer atau ahli komputer. Impian itu terbersit saat mulai mengutak-atik komputer 486 milik kakaknya ketika masih SD. Semenjak itu, penulis menyukai hal-hal yang berbau komputer atau info tentang teknologi lainnya. Pesan yang ingin penulis sampaikan yaitu bekerjalah dengan senang hati dan berusaha menjadi orang yang baik. Karena dengan dua hal itu akan membuat kita selalu merasa rendah hati dan tekun dalam mengerjakan sesuatu. Hidup IT !