Perancangan Database Terdistribusi (Distributed Database) untuk

advertisement
Perancangan Database Terdistribusi (Distributed
Database) untuk Validasi Surat Keterangan Kelahiran
(Studi Kasus Kantor Catatan Sipil Salatiga)
Artikel Ilmiah
Peneliti:
Julianne Moore (672012208)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Agustus 2016
Perancangan Database Terdistribusi (Distributed
Database) untuk Validasi Surat Keterangan Kelahiran
(Studi Kasus Kantor Catatan Sipil Salatiga)
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
untuk memperoleh Gelar Sarjana Komputer
Peneliti:
Julianne Moore (672012208)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Agustus 2016
1.
Pendahuluan
Dinas Kependudukan dan Catatan Sipil kota Salatiga merupakan dinas yang
berada di bawah naungan Kementerian Dalam Negeri, yang berpotensi dalam
bidang Kependudukan dan Pencatatan Sipil. Sehubungan dalam proses melayani
masyarakat, Dinas Kependudukan dan Catatan Sipil mempunyai tugas
melaksanakan urusan kependudukan, salah satunya yaitu mengeluarkan dokumen
kependudukan, seperti dokumen akta kelahiran.
Salah satu syarat untuk membuat akta kelahiran adalah orang tua wajib
melampirkan surat keterangan kelahiran dari rumah sakit yang menyatakan bahwa
benar pada tanggal yang bersangkutan telah lahir dengan selamat bayi yang akan
diurus akta kelahirannya sebagaimana yang tertuang dalam Peraturan Menteri
dalam Negeri RI No 9 Tahun 2016 Tentang Percepatan Peningkatan Cakupan
Kepemilikan Akta Kelahiran pada Bab II Bagian Kesatu Pasal 3. Pada Peraturan
Menteri Dalam Negeri tertulis bahwa Persyaratan Pencatatan Kelahiran
sebgaimana dimaksud dalam Pasal 2 huruf a dengan memenuhi syarat berupa: (a).
surat keterangan lahir dari dokter/bidan/penolong kelahiran; (b). akta
nikah/kutipan akta perkawinan; (c). KK dimana penduduk akan didaftarkan
sebagai anggota keluarga; (d). KTP-el orang tua/wali/pelapor; atau (e). paspor
bagi WNI bukan penduduk dan orang asing.
Pada umumnya, setiap bayi yang lahir di Indonesia harus memiliki akta
kelahiran. Akta kelahiran didapatkan apabila orang tua bayi telah mempersiapkan
seluruh persyaratan yang dibutuhkan oleh pemerintah dalam hal ini dilakukan
oleh Kantor Catatan Sipil yang mempunyai wewenang untuk mengeluarkan akta
kelahiran dari bayi yang bersangkutan. Surat keterangan kelahiran dari pihak
rumah sakit atau bidan merupakan bukti bahwa benar pada tanggal yang
bersangkutan telah lahir dengan selamat bayi yang akan diurus akta kelahirannya.
Selama ini pihak catatan sipil tidak melakukan pengecekan pada surat
keterangan kelahiran yang dikeluarkan oleh pihak rumah sakit atau bidan
sehingga hal ini menimbulkan kekuatiran bagi Kantor Catatan Sipil dalam
mengeluarkan akta kelahiran. Oleh karena itu Kantor Catatan Sipil membutuhkan
suatu sistem baru untuk mengatasi kecurangan atau pemalsuan data. Implementasi
database terdistribusi memungkinkan pihak kantor catatan sipil dapat melakukan
validasi dari surat keterangan kelahiran apakah benar dikeluarkan oleh pihak
rumah sakit secara sah ataukah tidak. Hal ini memungkinkan pihak catatan sipil
dapat melakukan pengecekan keabsahan surat keterangan, dikarenakan setiap data
yang diisikan oleh pihak rumah sakit secara otomatis akan disalin atau diduplikasi
ke dalam data Kantor Catatan Sipil, sehingga pihak catatan sipil tidak perlu
melakukan validasi secara manual kepada pihak rumah sakit, atau pihak catatan
sipil dapat menyatakan bahwa surat keterangan kelahiran yang dikeluarkan oleh
pihak rumah sakit dan dilampirkan oleh orang tua bayi sebagai persyaratan
pembuatan akta kelahiran adalah sah atau tidak. Pengecekan ini juga berfungsi
untuk meminimalkan alur kerja pengumpulan surat keterangan kelahiran yang
dikeluarkan oleh rumah sakit karena secara otomatis surat keterangan kelahiran
bayi dapat dicek pada server admin dalam hal ini server Kantor Catatan Sipil.
1
Berdasarkan latar belakang masalah tersebut, maka dilakukan penelitian
yang berjudul Perancangan Database Terdistribusi (Distributed Database) untuk
Validasi Surat Keterangan Kelahiran pada Kantor Catatan Sipil Salatiga.
Permasalahan yang dibahas dalam penelitian ini dibatasi dalam hal sebagai
berikut: (1) Aplikasi dirancang menggunakan Visual Studio 2008 dan berbasis
desktop (2) Proses Database Terdistribusi menggunakan metode Replication–
Fragmentation Data. Tujuan dari penelitian ini adalah merancang Database
Terdistribusi untuk proses validasi dan pengecekan surat keterangan kelahiran
oleh Kantor Catatan Sipil Salatiga. Manfaat dari penelitian ini adalah untuk
menghasilkan sistem Database Terdistribusi untuk proses validasi dan
pengecekan surat keterangan kelahiran oleh Kantor Catatan Sipil Salatiga.
2.
Tinjauan Pustaka
Penelitian yang pernah dilakukan terkait pembuatan sistem akta kelahiran,
dan database terdistribusi, yang menjadi acuan penelitian yang akan dilakukan,
dijelaskan sebagai berikut. Penelitian berjudul Aplikasi Pembuatan Akta kelahiran
di Kantor Catatan Sipil Kabupaten Ende Menggunakan Mircrosoft Visual Basic
6.0, menjelaskan bahwa diperlukan sebuah sistem yang berfungsi untuk
membantu kantor catatan sipil Kabupaten Ende dalam membuat dan menyimpan
informasi mengenai pencatatan akta kelahiran. Objek dari penelitian ini
difokuskan pada pembuatan sebuah Aplikasi Pembuatan Akta Kelahiran di Kantor
Catatan Sipil Kabupaten Ende. Data yang diperlukan dalam pembahasan Aplikasi
Pembuatan Akte Kelahiran adalah data yang berkaitan dengan lokasi atau objek
penelitian di kantor catatan sipil yaitu data primer dan sekunder. Aplikasi yang
dibuat berbasis desktop ini dapat membantu kantor catatan sipil Kabupaten Ende
dalam melakukan administrasi data akta kelahiran yang terjadi di kabupaten Ende
[1].
Penelitian lain yang dilakukan dalam proses pencatatan akta kelahiran
adalah penelitian berjudul Pembangunan Sistem Informasi Akta Kelahiran Dinas
Kependudukan dan Pencatatan Sipil Sragen. Penelitian yang berbasis web dengan
menggunakan PHP ini menunjukkan bahwa dalam pencatatan dan penyimpanan
data kelahiran masih menggunakan cara konvensional dengan penyimpanan arsip
kelahiran disimpan dalam bentuk hardcopy yang disimpan di dalam rak arsip
sehingga proses pencarian laporan menjadi terlambat [2].
Penelitian lain yang dilakukan dalam proses pencatatan akta kelahiran
adalah Perancangan Aplikasi Pendaftaran Akta Kelahiran Berbasis Web. Metode
yang digunakan dalam pembuatan aplikasi pendaftaran akta kelahiran berbasis
web ini yaitu menggunakan metode System Development Life Cycle (SDLC)
dimana pada proses pembuatan aplikasi ini dimulai dari tahapan perencanaan,
analisa kebutuhan, perancangan sistem, pembangunan sistem, pengujian dan
implementasi. Aplikasi ini dibuat dengan menggunakan bahasa pemrograman
PHP, HTML, dan Database MySQL. Hasil yang didapat dari aplikasi ini ialah
pendaftaran akta kelahiran yang dapat dilakukan secara online dimana hasil dari
pendaftaran dapat dilihat secara langsung setelah pendaftaran selesai dilakukan.
2
Aplikasi ini membantu masyarakat dalam proses pendaftaran akta dan
meminimalis antrian saat proses pendaftaran akta [3].
Penelitian sebelumnya yang membahas tentang database terdistribusi adalah
Perancangan Basis Data Terdistribusi untuk Barang dan Peralatan di Balai Riset
dan Standarisasi Industri Palembang. Tujuan dari penelitian ini adalah untuk
mempelajari dan menganalisis database yang sedang berjalan pada BARISTAND
Palembang, merancang sebuah sistem database untuk mendukung kebutuhan data
dalam proses pencatatan administrasi pada laboratorium dengan sistem database
yang lebih terstruktur dan terintegrasi. Sistem menghasilkan sebuah database
yang sudah terstruktur dan terintegrasi dengan masing–masing bagian, membantu
perusahaan untuk memperoleh informasi tentang permasalahan dan
menyelesaikan masalah yang ada dalam sistem database penjualan, persediaan,
pembelian, dan produksi. Selain itu kesalahan sumber daya manusia atau human
error dapat diminimalisir dengan adanya batasan-batasan yang ditetapkan dalam
program, masing-masing user dapat memanipulasi data seperti menambah,
menghapus, meng-update, dan mencari data, dengan adanya basis data ini,
database yang ada pada perusahaan terintegrasi dengan baik [4].
Berdasarkan penelitian-penelitian sebelumnya terkait pembuatan sistem akta
kelahiran, dan database terdistribusi, maka dilakukan penelitian yang membahas
tentang perancangan database terdistribusi (distributed database) untuk validasi
surat keterangan lahir pada Kantor Catatan Sipil di Salatiga, yaitu penerapan
metode Database terdistribusi pada proses validasi surat keterangan kelahiran
yang dikeluarkan oleh pihak rumah sakit yang kemudian akan diserahkan kepada
pihak catatan sipil. Metode yang digunakan memungkinkan pihak catatan sipil
mendapatkan informasi keabsahan surat keterangan kelahiran yang dikeluarkan
oleh pihak rumah sakit. Hal ini dikarenakan pada saat proses administrasi data
yang dilakukan oleh rumah sakit, secara otomatis pihak catatan sipil juga akan
mendapatkan updated data (data yang terbaru).
Akta Kelahiran adalah bukti sah mengenai status dan peristiwa kelahiran
seseorang yang dikeluarkan oleh Dinas Kependudukan dan Catatan Sipil. Bayi
yang dilaporkan kelahirannya akan terdaftar dalam Kartu Keluarga (KK) dan
diberi Nomor Induk Kependudukan (NIK) sebagai dasar untuk memperoleh
pelayanan masyarakat lainnya. Manfaat Akta Kelahiran adalah untuk identitas
anak, administrasi kependudukan seperti KTP dan KK, keperluan sekolah,
pendaftaran nikah di KUA, mendaftar pekerjaaan, pembuatan paspor, dan lainlain, sebagaimana yang tertera dalam Undang-Undang Nomor 23 Tahun 2002
tentang Perlindungan Anak.
Terdapat beberapa tahapan dalam pengurusan akta kelahiran [5], yakni: (1)
mengisi formulir yang disediakan oleh Dinas Kependudukan dan Pencatatan Sipil
(Tersedia di Kecamatan atau Kelurahan); (2) Surat Keterangan Kelahiran dari
Rumah Sakit/Bidan (Asli); (3) fotocopy KTP Orang Tua (Ayah dan Ibu); (4)
fotocopy Kartu Keluarga (NIK Anak harus sudah masuk dalam KK); (5) fotocopy
Akta Nikah atau Akta Perkawinan/Isbat dari Pengadilan Agama/putusan atau
penetapan Pengadilan Negeri; (6) melampirkan fotocopy KTP dua orang saksi
dari keluarga dekat; (7) Surat Keterangan Pelapor Kelahiran dari RT/RW dan
3
Kelurahan; dan (8) Surat Kuasa bermaterai cukup bagi yang pelaporannya
dikuasakan.
Apabila syarat-syarat telah dipenuhi dengan lengkap, pemohon dapat
mengurus pembuatan akta kelahiran dan mendaftar ke loket yang ada di Dinas
Kependudukan dan Catatan Sipil dan kemudian petugas dari Dinas
Kependudukan dan Catatan Sipil akan melakukan langkah-langkah sebagai
berikut [6]: (1) penelitian berkas; (2) memasukkan data dalam komputer; 3)
pengecekan data dan diparaf oleh pemeriksa data; (4) penandatanganan oleh
Kepala Dinas Kependudukan dan Catatan Sipil; (5) distempel atau dicap; dan (6)
penyerahan Akta Kelahiran pada Pemohon.
Database terdistribusi adalah kumpulan (elementer) yang secara logik
berkaitan dalam merepresentasikan fenomena/fakta secara terstruktur dalam
dominan tertentu untuk mendukung aplikasi pada sistem tertentu [7]. Contoh
penerapan database terdistribusi adalah sebuah bank yang memiliki banyak
cabang, bahkan di sebuah kota bisa terdiri dari beberapa cabang atau kantor.
Masing-masing lokasi memiliki jaringan lokal sendiri, dan semua jaringan lokal
tersebut dihubungkan satu sama lain membentuk sebuah jaringan nasional. Setiap
cabang dan pusat harus saling terhubung dalam sebuah jaringan data sehingga
proses pelaporan yang dibutuhkan oleh kantor pusat dapat dilakukan secara cepat
dan tepat. Sebuah sistem database terdistribusi hanya mungkin dibangun dalam
sebuah sistem jaringan komputer. Topologi jaringan yang digunakan dalam
membangun sebuah database terdistribusi adalah ring, star, atau bus topologi.
Ada beberapa pendekatan yang berkaitan dengan penyimpanan data atau
tabel dalam sebuah sistem basis data terdistribusi, yaitu [7]: (1) Replikasi.
Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian data dan
objek-objek basis data dari satu basis data ke basis data lain dan melaksanakan
sinkronisasi antara basis data sehingga konsistensi data dapat terjamin. Replikasi,
dalam database terdistribusi merupakan pemisahan database ke berbagai lokasi
(site) yang mana database satu dengan database yang lainnya memiliki struktur
data yang sama. Sistem memelihara beberapa salinan (copy) dari relasi. Setiap
salinan disimpan pada beberapa lokasi yang berbeda. Jika relasi r direplikasi,
maka sebuah salinan dari relasi r disimpan pada dua atau lebih site. Dalam kasus
yang esktrim, replikasi penuh (full replication) dapat dimiliki, dimana sebuah
salinan dari relasi r dapat disimpan pada setiap site dalam sistem; (2) Fragmentasi,
relasi dibagi ke dalam sejumlah sub relasi yang disebut fragmen-fragmen yang
kemudian disebar. Terdapat dua tipe utama fragmentasi yaitu Fragmentasi
Horizontal dan Fragmentasi Vertikal. Fragmentasi horizontal adalah relasi dibagi
menjadi fragmen-fragmen berupa subset-subset tupel dari suatu relasi.
Fragmentasi vertikal adalah relasi dibagi menjadi fragmen-fragmen berupa subsetsubset atribut dari relasi tersebut; dan (3) Replikasi dan Fragmentasi yang
merupakan kombinasi dari replikasi dan fragmentasi. Data atau tabel dipilah
dalam sejumlah fragmen. Sistem lalu mengelola sejumlah salinan dari masingmasing fragmen tadi di sejumlah simpul.
Pendekatan yang digunakan dalam penelitian ini adalah pendekatan
replikasi. Beberapa kelebihan dan kekurangan replikasi adalah: (1) availability.
Jika salah satu dari site yang berisi relasi r mengalami kegagalan, maka relasi r
4
dapat ditemukan pada site lain sehingga sistem dapat melanjutkan memproses
query yang berisi r walaupun terjadi kegagalan; (2) meningkatnya pemrosesan
paralel, dalam hal sebagian besar pengaksesan terhadapa relasi r hanya
menghasilkan pembacaan relasi, maka beberapa site dapat memproses query
berisi r dalam bentuk paralel. Makin banyak replikasi r, maka semakin besar
kemungkinan data yang dibutuhkan dapat ditemukan pada site dimana transaksi
dieksekusi. Replikasi data dapat meminimalkan perpindahan data antar site; dan
(3) meningkatnya overhead terhadap update dimana sistem harus menjamin
bahwa seluruh replikasi dari sebuah relasi r adalah konsisten, jika tidak, maka
akan menyebabkan kekeliruan perhitungan. Oleh karena itu, bilamana r di-update
maka update tersebut harus disebarkan ke seluruh site yang berisi replikasi.
Akibatnya, akan meningkatkan overhead. Sebagai contoh pada sistem perbankan
dimana informasi rekening direplikasikan pada berbagai site dan diperlukan
jaminan bahwa saldo rekening sesuai pada seluruh site.
Ada beberapa ciri utama pada basis data terdistribusi yaitu: (1) data
disimpan di sejumlah tempat; (2) prosessor pada tempat yang berbeda tersebut
dihubungkan dengan jaringan computer; dan (3) sistem basis data terdistribusi
bukan terdiri dari sekumpulan file yang berada pada berbagai tempat tetapi pada
sebuah basis data di berbagai tempat.
Gambar 1 Design Database Terdistribusi [7]
Gambar 1 merupakan design database terdistribusi, dijelaskan sebagai
berikut. Pada Gambar 1, terlihat bahwa setiap komputer yang melakukan proses
bisnis saling terhubung ke dalam suatu sistem database yang saling terkoneksi
sehingga mempermudah dalam proses pencarian data antar bagian dalam suatu
perusahaan. Setiap tempat secara mandiri memproses permintaan user yang
membutuhkan akses ke data di tempat tersebut dan juga dapat memproses data
yang tersimpan di tempat lain.
Pemanfaatan basis data terdistribusi dapat memberikan manfaat bagi sistem
yang mengimplementasikannya. Hal ini disebabkan oleh kelebihan-kelebihan
yang dimilikinya, antara lain [8]: Pertama adalah Kinerja, yang lebih baik karena
data ditempatkan di tempat yang sesuai dengan kebutuhan dan komputerkomputer dalam sistem dapat bekerja secara paralel, sehingga pembebanan pada
komputer (server) menjadi seimbang. Kedua adalah alasan Ekonomis, yaitu
bahwa merancang sistem-sistem yang terdiri atas jaringan komputer-komputer
kecil (sederhana) lebih ekonomis dibandingkan dengan mengimplementasikan
5
komputer tunggal yang handal. Ketiga adalah alasan modularitas, yaitu bahwa
system-sistem yang bekerja dalam basis data terdistribusi dapat dimodifikasi,
ditambah, atau dikurangi tanpa mempengaruhi modul lain (sistem lain dalam basis
data terdistribusi). Pembagian lokasi data memberikan dampak bahwa jika terjadi
masalah atau musibah pada sistem, tidak semua data terancam, melainkan hanya
data pada tempat-tempat tertentu. Keempat adalah alasan organisasi dan otonomi
pada sistem-sistem yang berpartisipasi, misalnya pada suatu kantor perusahaan,
terdapat beberapa departemen, dengan basis data terdistribusi, data perusahaan
dapat disebar ke tiap-tiap departemen yang bertanggung jawab atasnya.
Di samping kelebihan-kelebihan yang dimilikinya, basis data terdistribusi
juga memiliki kendala, antara lain: pertama, masalah kompleksitas, bukan
pekerjaan yang mudah untuk membuat basis data yang tersebar terlihat sebagai
satu kesatuan. Administrator basis data mempunyai tugas ekstra untuk menjaga
agar basis data yang tersebar di berbagai lokasi terlihat transparan. Di samping itu,
pemeliharaan sistem yang berlainan lebih kompleks daripada pemeliharaan sistem
besar yang utuh sebagai satu kesatuan. Tingginya kompleksitas juga dapat
menyebabkan pembengkakkan biaya. Kedua, masalah desain, desain yang dibuat
harus memperhatikan arsitektur komputer yang terdiri atas sistem-sistem yang
terpisah, selain itu juga memperhatikan data yang difragmentasi (dipecah-pecah)
ke dalam lokasi berlainan. Perubahan dari basis data terpusat menjadi terdistribusi
juga menjadi masalah karena belum ada standar metodologi dalam konversi
DBMS terpusat menjadi DBMS terdistribusi. Ketiga, Keamanan data, bukan
hanya satu sistem yang harus diberi proteksi keamanan data, melainkan juga
fragmen-fragmennya yang tersebar di berbagai lokasi, juga jalur komunikasi antar
sistem. Kendala mempertahankan integritas karena dalam menjaga integritas
sistem melalui jaringan juga dapat memakan resource yang besar dari jaringan.
Database terdistribusi dibagi atas dua tipe yakni heterogen dan homogen.
Dalam sistem yang homogen, semua site menggunakan product DBMS (Data
Base Management System) yang sama. Sistem homogen lebih mudah dirancang
dan diatur. Pendekatan ini memberikan perkembangan yang baik, yaitu tidak
mengalami kesulitan dalam membuat sebuah site baru pada DDBMS. Misalnya
seluruh sistem menggunakan basis data Oracle yang bertempat di satu atau
beberapa mesin. Oracle yang digunakan dapat berbeda versi, tetapi sistem harus
dapat memahami perbedaan fungsionalitas yang ada di setiap simpul (basis data)
sistem [9].
Sistem basis data heterogen yaitu sistem dimana setiap tempat yang
berbeda menjalankan DBMS yang berbeda, baik relational DBMS
(RDBMS) atau non relational DBMS. Misalnya dalam basis data
terdistribusi sedikitnya satu sistem bagian tidak menggunakan basis data Oracle.
Agar dapat saling berkomunikasi, perbedaan ini dapat dijembatani dengan
menerapkan Oracle Transparent Gateway yang menggunakan layanan heterogen
pada server Oracle (Oracle Heterogenous Services) dan agen yang spesifik
terhadap sistem pada sistem non-Oracle [9].
6
3.
Metode dan Perancangan Sistem
Penelitian yang dilakukan diselesaikan dalam beberapa tahapan, yaitu: (1)
tahap identifikasi masalah; (2) tahap perancangan sistem; (3) tahap perancangan
database terdistribusi; (4) tahap implementasi sistem; dan (5) tahap pengujian
sistem.
Gambar 2 Tahapan Penelitian
Gambar 2 menunjukkan tahapan penelitian, dijelaskan sebagai berikut, (1)
identifikasi masalah. Pada tahap ini dilakukan analisis terhadap permasalahan
yang ada, yaitu mendapatkan data dan literatur yang terkait dengan database
terdistribusi serta proses pengurusan surat keterangan kelahiran yang dikeluarkan
oleh pihak rumah sakit. Selain itu pada tahap ini dilakukan proses wawancara
dengan pihak Kantor Catatan Sipil mengenai proses pengurusan surat kelahiran.
Hasil wawancara menunjukkan bahwa selama ini pihak catatan sipil tidak
melakukan validasi atau pengecekan terhadap surat keterangan kelahiran yang
dikeluarkan oleh rumah sakit maupun bidan sebelum mengeluarkan akta kelahiran
bayi; (2) perancangan sistem. Pada tahap ini dilakukan proses perancangan sistem
menggunakan Unified Modelling Language (UML) untuk mengetahui setiap
proses beserta semua aktifitas dari masing-masing user yang akan dibangun pada
sistem; (3) perancangan database, perancangan arsitektur, dan perancangan
topologi jaringan untuk database terdistribusi. Pada tahap ini dibuat semua tabel
yang akan digunakan pada sistem. Perancangan database terdistribusi pada sistem
menggunakan trigger yang akan ditempatkan pada setiap tabel yang ada di
database; (4) implementasi sistem. Tahap ini merupakan pengembangan lebih
lanjut dari tahap perancangan sistem. Sistem dibuat sesuai dengan kebutuhan yang
telah didefinisikan pada tahap sebelumnya. Pada tahap ini dibangun aplikasi yang
di dalamnya sudah diintegrasikan dengan database terdistribusi; (5) pengujian
sistem. Pada tahap ini dilakukan pengujian sistem, yaitu menjalankan proses
implementasi sistem, dengan menguji hasil dari database terdistribusi.
7
Perancangan Database terdistribusi pada sistem dapat dilihat pada Gambar
3.
Gambar 3 Rancangan Arsitektur Database Terdistribusi
Gambar 3 menunjukkan rancangan Database Terdistribusi pada sistem,
dimana terdapat dua client dan satu server. Client diartikan sebagai rumah sakit,
dan server diartikan sebagai Kantor Catatan Sipil. Setiap komputer client akan
diberikan aplikasi untuk memasukkan data surat keterangan kelahiran yang terjadi
pada rumah sakit tersebut. Masing-masing client memiliki database aplikasi
tersendiri. Setiap proses pencatatan yang terjadi pada client akan disimpan ke
dalam database client dan kemudian data tersebut akan diduplikasi atau
didistribusikan ke komputer server. Proses distribusi ini akan dilakukan melalui
trigger yang diletakkan pada masing-masing database client sehingga setiap
proses manipulasi data yang terjadi di database client akan ter-update otomatis di
sisi server.
Trigger adalah blok PL/SQL atau prosedur yang berhubungan dengan table,
view, schema atau database yang dijalankan secara implisit pada saat terjadi
sebuah event. Trigger merupakan store procedure yang dijalankan secara otomatis
saat user melakukan modifikasi data pada tabel. Modifikasi data yang dilakukan
pada tabel yaitu berupa perintah INSERT, UPDATE, dan DELETE. Perintah
INSERT, UPDATE dan DELETE dapat digabung jadi satu trigger yang
dinamakan Multiple Trigger. Tipe dari trigger adalah [10]: 1) Application trigger,
diaktifkan pada saat terjadi event yang berhubungan dengan sebuah aplikasi; 2)
Database trigger, diaktifkan pada saat terjadi event yang berhubungan dengan
data (seperti operasi Data Manipulation Language (DML)) atau event yang
berhubungan dengan sistem (misalnya logon atau shutdown) yang terjadi pada
sebuah schema atau database.
Koneksi antar database yang digunakan pada SQL Server adalah Linked
Server. Linked Server adalah suatu hubungan dari satu server ke server yang lain
yang berbeda lokasi dan server-nya. Perbedaan juga dapat terjadi terhadap
platform dari satu database dengan database yang lainnya, misalnya Server
Database SQL Server dengan Server Database Oracle atau yang lainnya. Secara
khusus, linked server dipergunakan untuk menangani query terdistribusi. Ketika
aplikasi client menjalankan query terdistribusi melalui suatu linked server, SQL
Server melakukan parse perintah dan mengirimkan permintaan ke OLE DB.
8
Permintaan rowset dapat berada dalam bentuk menjalankan query terhadap
provider atau membuka suatu tabel asal dari provider tersebut.
Fungsi dari Linked Server adalah : (1) Kemampuan mengakses data dari
sisi luar SQL Server; (2) Kemampuan terhadap masalah query terdistribusi,
update, Command/perintah, dan transaksi pada sumber data yang heterogen
(berbagai platform database) di antara perusahaan; dan (3) Kemampuan untuk
mengarahkan sumber data yang berbeda secara sama.
Gambar 4 Rancangan Topologi Jaringan Database Terdistribusi
Gambar 4 merupakan rancangan topologi jaringan dalam
mengimplementasikan database terdistribusi. Topologi jarigan yang dipilih adalah
topologi star, dimana setiap perangkat atau komputer dihubungkan melalui switch
atau hub.
Perancangan proses pada sistem merupakan langkah yang harus dilakukan
untuk menjelaskan kepada pengguna mengenai alur kerja secara garis besar dari
sistem yang akan dikembangkan. Perancangan proses menggunakan diagram
UML yaitu use case diagram dan class diagram. Use case Diagram merupakan
diagram yang menjelaskan manfaat sistem, jika dilihat dari sudut pandang orang
atau sesuatu yang berada di luar sistem yang sedang dibangun (aktor). Jenis
diagram ini dapat digunakan untuk menangkap requirements sistem dan untuk
memahami bagaimana sistem seharusnya bekerja [11].
Data User Login
User
Admin
Data Kelahiran
<<extend>>
<<extend>>
Data Rumah Sakit
<<extend>>
Data Dokter
Data Orang Tua
Data Bayi
Gambar 5 Use Case Diagram Sistem
Gambar 5 menunjukkan use case diagram pada sistem, dijelaskan sebagai
berikut. Sistem memiliki 2 (dua) aktor yakni user, dan admin. User adalah pihak
Rumah Sakit yang mempunyai hak untuk memasukkan data kelahiran bayi yang
meliputi data dokter, data orang tua, dan data bayi. Sedangkan admin adalah
Kantor Catatan Sipil Salatiga yang berfungsi untuk memasukkan data rumah sakit
9
serta mempunyai hak untuk mengecek data kelahiran yang telah dimasukkan oleh
user.
Class diagram merupakan diagram yang membantu dalam visualisasi
struktur kelas-kelas dari suatu sistem. Pada diagram ini, diperlihatkan hubungan
antar kelas dan penjelasan detail tiap-tiap kelas [11].
Gambar 6 Class Digram Sistem
Gambar 6 menunjukkan class diagram yang digunakan dalam sistem.
Pada Gambar 6, terlihat relasi antar kelas yang digunakan pada sistem. Hubungan
antar class menggunakan derajat relasi one to one dan one to many dimana derajat
relasi ini akan digunakan sebagai acuan rancangan database yang digunakan pada
sistem. Acuan ini juga nantinya akan memetakan setiap primary key dan foreign
key pada setiap tabel.
4.
Pembahasan dan Hasil Pengujian
Pada sisi server, aplikasi ini hanya dapat digunakan oleh admin pada Kantor
Catatan Sipil. Oleh karena itu pada aplikasi ini dilengkapi keamanan berupa hak
akses yaitu menu login seperti pada Gambar 7.
Gambar 7 Form Menu Login
Pada Sistem ini, admin hanya diberikan beberapa menu pilihan yaitu menu
Set Up dan Cetak SK Lahir. Menu Set Up mengijinkan admin untuk
10
menambahkan data rumah sakit. Surat Keterangan Kelahiran dapat dicetak pada
sisi admin kemudian dapat ditunjukkan sebagai bukti kelahiran untuk pengurusan
akta kelahiran dari pihak orang tua kepada pihak catatan sipil.
Gambar 8 Form Pencarian Data (Surat Keterangan Kelahiran)
Gambar 8 menunjukkan form pencarian surat keterangan kelahiran. Surat
keterangan kelahiran ini dapat dicek oleh pihak catatan sipil melalui sistem
dengan cara memasukkan id surat keterangan kelahiran.
Gambar 9 Contoh Surat Keterangan yang dihasilkan oleh Sistem
Gambar 9 menunjukkan salah satu contoh Surat Keterangan Kelahiran yang
dihasilkan oleh sistem. Pada surat keterangan kelahiran tersebut terlihat jelas
bahwa antar database sudah terintegrasi dan berjalan dengan baik.
Pada sisi client, aplikasi ini hanya dapat digunakan oleh user pada rumah
sakit. Oleh karena itu pada aplikasi ini juga dilengkapi keamanan berupa hak
akses yaitu menu login seperti pada sisi server. Apabila user sudah berhasil
masuk ke dalam aplikasi, user diberikan beberapa menu pilihan seperti melakukan
proses input Master Data, Set Up, Delete Data, Cetak SK Lahir dan logout.
11
Gambar 10 merupakan menu untuk melakukan proses input data Bayi,
Orang Tua dan Dokter.
Gambar 10 Menu Pilihan
Input Data
Pada uji coba aplikasi yang dibuat, dilihat kemampuan aplikasi dalam
melakukan layanan yang baik dan tepat pada user.
Gambar 11 Form Input Data Dokter
Gambar 11 merupakan form input data dokter. Data dokter pada setiap
rumah sakit akan disimpan pada server rumah sakit yang kemudian secara
otomatis akan diduplikasi ke server admin dalam hal ini server catatan sipil.
Proses duplikasi data ini akan dilakukan melalui trigger yang telah terpasang pada
tabel dokter.
12
Gambar 12 Form Input Data Orang Tua
Gambar 12 merupakan form input data orang tua, yang digunakan untuk
memasukkan data orang tua bayi. Data orang tua yang dimasukkan pada server
user (rumah sakit) kemudian akan diduplikasikan ke server admin (catatan sipil)
melalui proses trigger yang telah terpasang pada tabel orang tua.
Gambar 13 Form Input Data Bayi
Gambar 13 merupakan form input data bayi, yang digunakan untuk
memasukkan data bayi pada sistem. Data bayi merupakan data yang dibutuhkan
oleh pihak rumah sakit untuk mengeluarkan surat keterangan kelahiran bayi. Surat
keterangan kelahiran bayi ini kemudian akan dicek keabsahannya oleh pihak
catatan sipil untuk memastikan apakah benar bayi tersebut lahir sesuai dengan
surat yang dilampirkan oleh orang tua dalam pengurusan akta kelahiran. Data ini
secara otomatis akan disalin dari server user ke server admin sehingga admin
(catatan sipil) tidak perlu melakukan pengecekan secara langsung keabsahan surat
keterangan kelahiran yang dibawa oleh orang tua sebagai persyaratan pengurusan
akta kelahiran.
Perancangan database terdistribusi pada aplikasi adalah dengan
menggunakan trigger pada setiap tabel yang ada pada sistem.
13
Kode Program 1 Trigger Pada Tabel Dokter
1.
2.
3.
4.
ALTER trigger [dbo].[dokteradd] on [dbo].[Tbl_Dokter] after insert as
insert into db_aktaduplikasi.dbo.tbl_dokter (iddokter, nama, alamat,
kelamin, notelp, spesialisasi, idrs)
select iddokter, nama, alamat, kelamin, notelp, spesialisasi, idrs from
inserted
5. ALTER trigger [dbo].[dokterdelete] on [dbo].[Tbl_Dokter] after delete as
6. delete from db_aktaduplikasi.dbo.tbl_dokter where
7. db_aktaduplikasi.dbo.tbl_dokter.iddokter = tbl_dokter.IDDokter
8. ALTER trigger [dbo].[dokterupdate] on [dbo].[Tbl_Dokter] after update as
9. update db_aktaduplikasi.dbo.tbl_dokter
10.
set iddokter = (select iddokter from inserted),
11.
nama = (select nama from inserted),
12.
alamat = (select alamat from inserted),
13.
kelamin = (select kelamin from inserted),
14.
notelp = (select notelp from inserted),
15.
spesialisasi = (select spesialisasi from inserted),
16.
idrs = (select idrs from inserted)
17.
where
18.
iddokter = (select iddokter from inserted)
19.
and idrs = (select idrs from inserted)
Kode Program 1 merupakan perintah untuk trigger yang diletakkan pada
tabel dokter. Perintah pada baris-1 sampai dengana baris ke-4 merupakan perintah
untuk melakukan proses duplikasi data ke server admin dimana data yang
diduplikasi ke server admin sesuai dengan data yang dimasukkan ke server user.
Perintah pada baris ke-5 sampai ke-7 merupakan perintah yang digunakan untuk
melakukan proses penghapusan data di server admin sesuai dengan data yang
dihapus di server user. Perintah pada baris ke-8 sampai dengan baris ke-19
merupakan perintah untuk mengubah data di server admin sesuai dengan data
yang diubah pada server user. Proses tambah, hapus, dan edit pada server admin
dilakukan setelah proses tambah, hapus, dan edit dilakukan pada server user.
Kode Program 2 Trigger Pada Tabel Orang Tua
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
ALTER trigger [dbo].[ortuadd] on [dbo].[Tbl_Ortu] after insert as
insert into db_aktaduplikasi.dbo.tbl_Ortu (idOrtu, nama, alamat,
Telp, StatusHub, idrs)
select idOrtu, nama, alamat, Telp, StatusHub, idrs from inserted
ALTER trigger [dbo].[Ortudelete] on [dbo].[Tbl_Ortu] after delete as
delete from db_aktaduplikasi.dbo.tbl_Ortu where
db_aktaduplikasi.dbo.tbl_Ortu.idOrtu = tbl_Ortu.IDOrtu
ALTER trigger [dbo].[Ortuupdate] on [dbo].[Tbl_Ortu] after update as
update db_aktaduplikasi.dbo.tbl_Ortu
set idOrtu = (select idOrtu from inserted),
nama = (select nama from inserted),
alamat = (select alamat from inserted),
Telp = (select Telp from inserted),
StatusHub = (select StatusHub from inserted),
idrs = (select idrs from inserted)
where
idOrtu = (select idOrtu from inserted)
and idrs = (select idrs from inserted)
Kode Program 2 merupakan perintah trigger yang diletakkan pada tabel
orang tua. Penjelasan Kode Program 2 sama seperti Kode Program 1 dimana
perintah pada baris ke-1 sampai ke-4 merupakan fungsi untuk melakukan proses
duplikasi data ke server admin, perintah pada baris ke-5 sampai baris ke-7
merupakan fungsi untuk proses delete data di server admin, dan perintah pada
14
baris ke-8 sampai baris ke ke-18 merupakan perintah untuk proses edit data orang
tua di server admin.
Kode Program 3 Trigger Pada Tabel Bayi
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
ALTER trigger [dbo].[bayiadd] on [dbo].[Tbl_Bayi] after insert as
insert into db_aktaduplikasi.dbo.tbl_Bayi (id, nama, kelamin,
Tanggallahir, Iddokter, idrs)
select id, nama, kelamin, Tanggallahir, Iddokter, idortu, berat, panjang,
idrs from inserted
ALTER trigger [dbo].[Bayidelete] on [dbo].[Tbl_Bayi] after delete as
delete from db_aktaduplikasi.dbo.tbl_Bayi where
db_aktaduplikasi.dbo.tbl_Bayi.id = tbl_Bayi.Id
ALTER trigger [dbo].[Bayiupdate] on [dbo].[Tbl_Bayi] after update as
update db_aktaduplikasi.dbo.tbl_Bayi
set id = (select id from inserted),
nama = (select nama from inserted),
kelamin = (select kelamin from inserted),
Tanggallahir = (select Tanggallahir from inserted),
Iddokter = (select Iddokter from inserted),
idortu = (select idortu from inserted),
berat = (select berat from inserted),
panjang = (select panjang from inserted),
idrs = (select idrs from inserted)
where id = (select id from inserted) and idrs = (select idrs from
inserted)
Kode Program 3 merupakan trigger yang terletak pada tabel bayi. Trigger
berfungsi untuk melakukan duplikasi data yang dimasukkan oleh pihak rumah
sakit yang kemudian akan diduplikasi ke server admin, yang dilakukan dengan
perintah pada baris ke-1 sampai baris ke-3. Perintah pada baris ke-4 sampai
dengan baris ke-6 merupakan perintah untuk proses penghapusan data bayi di
server admin sedangkan perintah pada baris ke-7 sampai dengan baris ke ke-18
merupakan perintah untuk proses update data bayi di server admin.
Selain melakukan pengujian sistem melalui pengujian aplikasi maka
dilakukan pula pengujian aplikasi menggunakan black box. Pengujian black box
merupakan pengujian yang akan menjelaskan status dari masing-masing proses
dalam sistem, apakah sudah sesuai dengan yang diharapkan atau tidak. Hasil
pengujian sistem berbasis black box, ditunjukkan pada Tabel 1.
Tabel 1 Hasil Black Box Testing untuk Proses Output
No
1
2
Poin
Pengujian
Validasi Input
Data Input
Pengujian
Form Login
Verifikasi
username dan
password.
Username
dan
password
Pengujian
Form
Master Data
Data yang
dibutuhkan
untuk masingmasing form.
Data yang
harus diisi
karena
merupakan
primary key
pada
15
Hasil Uji
Sistem
akan
memberikan
peringatan kepada user apabila
tidak mengisi username atau
password. Selain itu apabila
password dan username sama
dengan yang terdaftar pada
database, maka user dapat
mengakses halaman utama.
Sistem
akan
memberikan
peringatan bahwa data yang diisi
tidak lengkap dan data tersebut
tidak akan disimpan dalam
database apabila ada data yang
tidak valid. Sebaliknya sistem
Status
Uji
Valid
Valid
masingmasing tabel
yang ada di
dalam
database.
3
Pengujian
Database
Terdistribusi
Semua Data
4
Pengujian
Laporan
Laporan yang
ditampilkan
Semua data
dokter, bayi,
dan orang
tua
akan menyimpan data yang valid
ke dalam database.
Database secara langsung akan
melakukan fungsi tambah, hapus,
dan edit pada sisi server apabila
terjadi proses tambah, hapus, dan
edit pada sisi user.
Aplikasi dapat menghasilkan
Surat Keterangan Kelahiran bayi
pada sisi admin (pihak catatan
sipil) maupun pada sisi user
(rumah sakit)
Valid
Valid
Berdasarkan hasil pengujian black box dari masing-masing proses pada
Tabel 1, maka dapat disimpulkan bahwa database terdistribusi yang dibuat dapat
melakukan duplikasi data dari database user ke database admin. Hal ini dapat
dilihat dengan adanya proses tambah, hapus, dan edit data pada sisi server yang
secara real time terjadi apabila terjadi proses tambah, hapus, dan edit data pada
sisi user.
5.
Simpulan
Berdasarkan pembahasan, pengujian, dan analisis sistem, maka dapat
diambil kesimpulan bahwa Database Terdistribusi yang dirancang dapat
membantu pihak catatan sipil kota Salatiga dalam melakukan validasi atas surat
keterangan kelahiran yang dijadikan sebagai salah satu persyaratan pengurusan
akta kelahiran anak sehingga dapat meminimalkan tindak pemalsuan surat
keterangan kelahiran, yang sebelumnya tidak pernah dicek oleh catatan sipil
Salatiga. Saran pengembangan sistem ke depan adalah sistem dapat dibuat
terintegrasi antara sistem pengurusan akta kelahiran bayi sehingga seluruh proses
pembuatan akta kelahiran serta validasi seluruh dokumen persyaratan dapat
diintegrasikan menjadi satu kesatuan sistem yang utuh.
6.
Daftar Pustaka
[1]
Sai, H., 2009, Aplikasi Pembuatan Akta Kelahiran di Kantor Catatan Sipil
Kabupaten Ende Menggunakan Visual Basic 6.0, Diakses melalui http://
ie.akprind.ac.id/content/biblio/aplikasi-pembuatan-akte-kelahiran-di-kantorcatatan-sipil-kabupaten-ende-menggunakan
Suripto, M., 2014, Pembangunan Sistem Informasi Akta Kelahiran Dinas
Kependudukan dan Catatan Sipil Sragen, IJNS - Indonesian Journal on
Networking and Security /Vol. 3/ No.3/ISSN: 2302-5700 (Print) 2354-6654
(Online).
Rumiyati, F., 2014, Perancangan Aplikasi Pendaftaran Akta Kelahiran
Berbasis Web, Diakses melalui http://eprints.ums.ac.id.
[2]
[3]
16
[4]
Erico, A., 2013, Perancangan Basis Data Terdistribusi untuk Barang dan
Peralatan di Balai Riset dan Standarisasi Industri Palembang, Program Studi
Teknik Informatika, Fakultas Ilmu Komputer, Universitas Bina Darma
Palembang.
[5] Admin, 2016. Tata Cara Pengurusan Akta Kelahiran, Diakses melalui
www.bandungkab.com
[6] Admin, 2016. Prosedur Penertiban Akta Kelahiran, Diakses melalui
www.satulayanan.com.
[7] Hariyanto, B., 2004. Sistem Manajemen Basis Data, Penerbit Informatika
Bandung.
[8] Fathansyah, 2004. Sistem Basis Data, Penerbit Informatika Bandung.
[9] Lintang,
2013.
Sistem
Basis
Data,
Diakses
melalui
irmarr.staff.gunadarma.ac.id/Downloads.
[10] Hari,
2010.
Pengertian
Trigger,
Diakses
melalui
http://www.haritsthinkso.com/2010/01/pengertian-trigger-pada-sql.html
[11] Nugroho, A., 2010. Mengembangkan Aplikasi Basis Data Menggunakan C#
+ SQL Server, Yogyakarta : Penerbit Andi Offset.
17
Download