Mengenal Rancangan Database

Mengenal Rancangan Database

Mengenal Rancangan Database

Mengenal Rancangan Database
Mengenal Rancangan Database

Penggunaan kode data merupakan bagian dari upaya optimalisasi rancangan database. Alasan utama penggunaan kode data dalam rancangan database adalah untuk efisiensi memori, mencirikan nilai item data tertentu, dan memudahkan pengelolaan data. Kode data perlu dirancang sekaligus pada saat perancangan database dan didokumentasikan dengan jelas.

Dengan menggunakan kode data, maka proses validasi dan kontrol terhadap nilai-nilai item data dapat dilakukan secara terprogram. Dalam beberapa kasus, kode data hanya digunakan dalam internal sistem, tidak perlu ditampilkan kepada para pengguna database. Kode dapat berupa kumpulan angka, huruf dan karakter khusus.

Penggunaan kode data bertujuan untuk :

  •     Mewakili sejumlah informasi yang  kompleks.
  •     Mengidentifikasi data secara unik.
  •     Meringkas atau menyederhanakan data.
  •     Melakukan klasifikasi data.
  •     Menyampaikan makna tertentu untuk pemrosesan berikutnya.

Jenis kode data dapat dikelompokan sebagai (Ladjamudin, 2005):

  •     Kode sekuensial, yaitu kode yang dirancang dengan mengasosiasikan data dengan kode terurut (biasanya berupa bilangan asli atau abjad). Keunggulan pengkodean sekuensial adalah memudahkan pengecekan apabila terjadi kesalahan pengkodean karena pengecekan terjadinya kesalahan bisa dilakukan secara terprogram, selain itu juga memudahkan proses pengurutan data. Kelemahan pengkodean sekuensial adalah kode yang diberikan sebenarnya tidak membawa kandungan informasi di dalamnya dan tidak menjelaskan apa-apa tentang atributnya. Penyisipan item data baru pada titik tengah juga memerlukan penomoran kembali item-item data.
  •     Kode blok, yaitu kode yang dirancang dengan cara menyatakannya dalam format tertentu. Keunggulan penggunaan kode blok adalah memungkinkan penyisipan kode baru dalam satu blok tanpa harus mengorganisasikan kembali seluruh struktur kode. Semakin banyak digit dalam range kode, semakin banyak pula item data yang dapat ditempatkan dalam kode blok. Kelemahan penggunaan kode blok seperti halnya dengan kode sekuensial, kandungan informasi dari kode blok blok tidak langsung diketahui sebelum dicocokkan dengan daftar arti dari kode blok.
  •     Kode mnemonik, yaitu kode yang dirancang berdasarkan akronim atau singkatan dari data yang ingin dikodekan. Keunggulan penggunaan kode mnemonik adalah memiliki informasi tingkat tinggi tentang item data yang diwakilinya, sehingga mudah untuk diingat. Kelemahan dari kode mnemonik biasanya adalah memiliki range yang terbatas dalam mewakili item-item data pada kelompoknya.

Kode data berdasarkan pembentukannya dibedakan sebagai (Ladjamudin, 2005):

  •     Kode eksternal (user defined code), adalah kode yang disusun oleh pemakai awam (end user) untuk mewakili kode-kode yang telah lazim digunakan secara terbuka dan telah dikenal baik oleh para pengguna. Kode eksternal umumnya telah digunakan dalam catatan manual sehari-hari dan dapat diadobsi secara langsung dalam rancangan database, misal NIM, NIK, NIP, dan lainnya.
  •     Kode internal (system coding), merupakan kode-kode baru yang disusun oleh perancang database, dan umumnya digunakan sebagai kode untuk kunci relasi. Rancangan kode internal harus diupayakan agar mudah dipahami oleh para pengguna. Contoh kode internal adalah kode_propinsi, kode_kabupaten, kode_kecamatan, di mana dalam kehidupan sehari-hari jarang digunakan kode untuk ketiganya.

    Contoh Penggunaan Kode dan Data

Untuk menggambarkan beberapa permasalahan yang menjadi alasan pentingnya standarisasi kode data dalam rancangan database, uraian berikut menunjukkan beberapa contoh kasus terkait dengan penggunaan kode data dalam rancangan database.

    Kode dan data jenis kelamin

Jenis kelamin merupakan item data terkait dengan identitas yang dapat dipastikan selalu digunakan dalam identitas seseorang, seperti data siswa, mahasiswa, dosen, pegawai, karyawan, anggota, pasien, dan lainnya. Jenis kelamin sering dikodekan sebagai “P” dan “W” untuk menyatakan pria dan wanita, atau “L” dan “P” untuk mengkodekan laki-laki dan perempuan, ada juga yang menggunakan kode “1” dan “0”, atau bahkan sekalipun tidak lazim ada juga yang menggunakan “True” dan “False” dengan default “True” yang diartikan sebagai jenis kelamin laki-laki, atau “1” untuk menyatakan laki-laki dan “2” untuk kode perempuan. Dengan demikian, jika ada kode data “P” maknanya bisa jadi akan berbeda jika berada dalam sistem yang berbeda.

    Kode dan data jenjang pendidikan

Hampir sama dengan data jenis kelamin, kode dan data jenjang pendidikan banyak digunakan dalam identitas seseorang, seperti identitas siswa, mahasiswa, guru, dosen, karyawan, pegawai, dan lainnya. Mengacu pada Dokumen Kamus Data Pendidikan Pangkalan Data Pendidikan Tinggi (PDPT) Dirjen Dikti Kemdiknas (2011), kode dan data jenjang pendidikan adalah sebagai berikut:

Jenjang_pendidikan Numeric[Auto Increment]

Keterangan:

1 = S3            4 = D4           7 = D1

2 = S2           5 = D3           11 = non akademik

3 = S1           6 = D2

Mengacu pada Kepmenkes No. 844 Tahun 2006), kode dan data jenjang pendidikan adalah sebagai berikut:

Jenjang_pendidikan Numeric [Auto Increment]

Keterangan:

01 = SD                06 = D3                                11 = D3/A3                       16 = S2

02 = SMP            07 = Sarjana Muda         12 = D4                               17 =S3

03 = SMA            08 = D3/A2                       13 = S1

04 = D1                 09 = Akademi                  14 = A4

05 = D1/A1         10 = D3                               15 = Spesialis 1/2/AV

Mengacu pada Keputusan Gubernur DIY No. 3 Tahun 2005, kode dan data jenjang pendidikan adalah sebagai berikut:

Jenjang_pendidikan Char[1]

Keterangan:

1 = Tidak sekolah         4 = SLTA/sederajat                    7 = Pascasarjana

2 = SD/sederajat          5 = Akademi/PT

3 = SLTP/sederajat     6 = Universitas

Dengan demikian, jika ada kode data jenjang pendidikan “1” maknanya akan

berbeda jika berada dalam sistem yang berbeda, bisa berarti “S3”, “SD”, atau “tidak sekolah”.

    Kode dan data wilayah

Cara Membuka Situs yang Diblokir Internet Positif di Google Chrome – Mirip dengan data jenis kelamin, kode dan data wilayah juga merupakan item data yang penting dan digunakan dalam identitas seseorang, bahkan lebih luas karena juga digunakan untuk identitas perusahaan, lembaga, dan lainnya. Mengacu pada Permendagri No. 66 Tahun 2011, kode dan data wilayah dalam dalam Sistem Informasi Administrasi Kependudukan (SIAK) yang dikembangkan oleh Kemendagri dikodekan sebagai berikut:

Kode propinsi Char[2]

Kode Kabupaten/Kota Char[2]

Kode Kecamatan Char[2]

Contoh penggunaan kode wilayah dalam SIAK adalah sebagai berikut:

34 = kode wilayah Propinsi DIY

01 = kode wilayah Kabupaten Kulon Progo

01 = kode wilayah Kecamatan Temon

Untuk mengkodekan wilayah Kecamatan Temon, Kabupaten Kulon Progo, Propinsi DIY dinyatakan sebagai “340101”. Mengacu pada UU No. 52 Tahun 2009, Nomor Induk Kependudukan (NIK) penduduk dikodekan 16 digit dengan format berikut:

AABBCCDDEEFFGGGG

Keterangan:

AA (1‐2): kode propinsi NIK diterbitkan

BB (3‐4): kode kabupaten/kota NIK diterbitkan.Angka 70 menandakan nama “kota”

CC (5‐6): kode kecamatan NIK diterbitkan

DD (7‐8): tanggal lahir. Jika perempuan, tanggalnya ditambah 40.

EE (9‐10): bulan lahir

FF( 11‐12): dua angka terakhir tahun lahir.

GGGG (13‐16):nomor urut 0001‐9999, berurutan sesuai dengan12 angka sebelumnya.

Sementara itu, jika mengacu pada Kepmenkes No. 844 Tahun 2006, kode wilayah adalah sebagai berikut:

Kode propinsi Char[2]

Kode Kabupaten/Kota Char[2]

Kode Kecamatan Char[2]

Kode Desa Char[3]

Dibandingkan dengan kode dan data wilayah dalam SIAK dan e-KTP, perbedaan

kode wilayah terjadi pada penetapan kode desa. Mengacu pada Dokumen Kamus Data Pendidikan Pangkalan Data Pendidikan Tinggi (PDPT) Dirjen Dikti Kemdiknas (2011), kode dan data wilayah adalah sebagai berikut:

Kode propinsi Numeric[Autoincrement]

Kode Kabupaten/Kota Numeric[Autoincrement]

Perbedaan kode dan data wilayah terjadi pada tipe dan ukuran data.Penggunaan tipe data numerik untuk kode propinsi dan kode kabupaten tidak lazim digunakan untuk item data yang tidak akan dioperasikan secara aritmatika, di samping itu penggunaan autoincrement menunjukkan indikasi hanya untuk memudahkan proses pemrograman saja. Mengacu pada Keputusan Gubernur DIY No. 3 Tahun 2005, kode dan data wilayah adalah sebagai berikut:

Kode propinsi Char[2]

Kode Kabupaten/Kota Char[2]

Kode Kecamatan Char[2]

Dibandingkan dengan kode dan data wilayah dalam SIAK dan e-KTP, perbedaan

kode wilayah terjadi pada penetapan kode wilayah, yaitu:

12 = kode wilayah Propinsi DIY

04 = kode wilayah Kabupaten Kulon Progo

02 = kode wilayah Kecamatan Temon

Sehingga untuk mengkodekan wilayah Kecamatan Temon, Kabupaten Kulon Progo, Propinsi DIY dinyatakan sebagai “120402000” dimana 3 digit terakhir menyatakan urutan desa dalam masing-masing kecamatan.

    Kode dan data lainnya

Di samping perbedaan penggunaan kode dan data dalam contoh-contoh di atas, ada beberapa contoh lain perbedaan kode dan data yang berpotensi menimbulkan problem, di antaranya terjadi dalam penggunaan kode dan data pada Nomor Induk Dosen Nasional (NIDN) dengan format NIDN Char[10], Nomor Pokok Sekolah Nasional (NPSN) dikodekan dengan format NPSN Char[10], Nomor Indukn Siswa Nasional (NPSN) dikodekan dengan format NISN Char[10], Nomor Unik Pendidik dan Tenaga Kependidikan (NUPTK) dikodekan dengan format NUPTK Char[9].