Rabu, 04 Agustus 2010

PERANCANGAN BASISDATA




Data, Informasi dan Basis Data

Data, Informasi dan Basis Data

Data merupakan fakta mengenai suatu objek seperti manusia, benda, peristiwa, konsep, keadaan dan sebagainya yang dapat dicatat dan mempunyai arti secara implisit. Data dapat dinyatakan dalam bentuk angka, karakter atau simbol, sehingga bila data dikumpulkan dan saling berhubungan maka dikenal dengan istilah basis data (database) [Ramez2000]. Sedangkan menurut George Tsu-der Chou basis data merupakan kumpulan informasi bermanfaat yang diorganisasikan ke dalam aturan yang khusus. Informasi ini adalah data yang telah diorganisasikan ke dalam bentuk yang sesuai dengan kebutuhan seseorang [Abdul1999]. Menurut Encyclopedia of Computer Science and Engineer, para ilmuwan di bidang informasi menerima definisi standar informasi yaitu data yang digunakan dalam pengambilan keputusan.

Definisi lain dari basis data menurut Fabbri dan Schwab adalah sistem berkas terpadu yang dirancang terutama untuk meminimalkan duplikasi data.

Menurut Ramez Elmasri mendefinisikan basis data lebih dibatasi pada arti implisit yang khusus, yaitu:
a. Basis data merupakan penyajian suatu aspek dari dunia nyata (real world).
b. Basis data merupakan kumpulan data dari berbagai sumber yang secara logika mempunyai arti implisit.    
    Sehingga data yang terkumpul secara acak dan tanpa mempunyai arti, tidak dapat disebut basis data.
c. Basis data perlu dirancang, dibangun dan data dikumpulkan untuk suatu tujuan. Basis data dapat digunakan  
    oleh beberapa user dan beberapa aplikasi yang sesuai dengan kepentingan user.

Dari beberapa definisi-definisi tersebut, dapat dikatakan bahwa basis data memounyai berbagai sumber data dalam pengumpulan data, bervariasi derajat interaksi kejadian dari dunia nyata, dirancang dan dibangun agar dapat digunakan oleh beberapa user untuk berbagai kepentingan [Waliyanto2000].

Hirarki Data
Data diorganisasikan kedalam bentuk elemen data (field), rekaman (record), dan berkas (file). Definisi dari ketiganya adalah sebagai berikut:

Elemen data adalah satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain yang bermakna. Misalnya data siswa terdiri dari NIS, Nama, Alamat, Telepon atau Jenis Kelamin.

Rekaman merupakan gabungan sejumlah elemen data yang saling terkait. Istilah lain dari rekaman adalah baris atau tupel.

Berkas adalah himpunan seluruh rekaman yang bertipe sama.


Sistem Basis Data
[Waliyanto2000] Gabungan antara basis data dan perangkat lunak SMBD (Sistem Manajemen Basis Data) termasuk di dalamnya program aplikasi yang dibuat dan bekerja dalam satu sistem disebut dengan Sistem Basis Data.


















C. J. Date menyatakan bahwa sistem basis data dapat dianggap sebagai tempat untuk sekumpulan berkas data yang terkomputerisasi dengan tujuan untuk memelihara informasi dan membuat informasi tersebut tersedia saat dibutuhkan.

Data Base Management System (DBMS)/Sistem Manajemen Basis Data (SMB)
DBMS dapat diartikan sebagai program komputer yang digunakan untuk memasukkan, mengubah, menghapus, memodifikasi dan memperoleh data/informasi dengan praktis dan efisien. Kelebihan dari DBMS antara lain adalah:
• Kepraktisan. DBMS menyediakan media penyimpan permanen yang berukuran kecil namun banyak 
   menyimpan data jika dibandingkan dengan menggunakan kertas.
• Kecepatan. Komputer dapat mencari dan menampilkan informasi yang dibutuhkan dengan cepat.
• Mengurangi kejemuan. Pekerjaan yang berulang-ulang dapat menimbulkan kebosanan bagi manusia, 
   sedangkan mesin tidak merasakannya.
• Update to date. Informasi yang tersedia selalu berubah dan akurat setiap.

[Waliyanto2000] Keuntungan-keuntungan dalam penggunaan DBMS antara lain adalah:
a. Pemusatan kontrol data. Dengan satu DBMS di bawah kontrol satu orang atau kelkompok dapat  
    menjamin terpeliharanya standar kualitas data dan keamanan batas penggunaannya serta dapat menetralkan 
    konflik yang terjadi dalam persyaratan data dan integritas data dapat terjaga.
b. Pemakaian data bersama (Shared Data). Informasi yang ada dalam basis data dapat digunakan lebih efektif 
    dengan pemakaian beberapa user dengan kontrol data yang terjaga.
c. Data yang bebas (independent). Program aplikasi terpisah dengan data yang disimpan dalam komputer.
d. Kemudahan dalam pembuatan program aplikasi baru.
e. Pemakaian secara langsung. DBMS menyediakan interface yang memudahkan pengguna dalam mengolah 
    data.


f.  Data yang berlebihan dapat dikontrol. Data yang dimasukkan dapat terjadi kerangkapan (redudant), untuk 
    itu DBMS berfungsi untuk menurunkan tingkat redudancy dan pengelolaan proses pembaruan data.
g. Pandangan user (user view). Ada kemungkinan basis data yang diakses adalah sama, maka DBMS mampu 
   mengatur interface yang berbeda dan disesuaikan dengan pemahaman tiap user terhadap basis data menurut 
    kebutuhan.

Kelemahan-kelemahan DBMS antara lain:
a. Biaya. Kebutuhan untuk medapatkan perangkat lunak dan perangkat keras yang tepat cukup mahal,  
    termasuk biaya pemeliharaan dan sumber daya manusia yang mengelola basis data tersebut.
b. Sangat kompleks. Sistem basis data lebih kompleks dibandingkan dengan proses berkas, sehingga dapat 
    mudah terjadinya kesalahan dan semakin sulit dalam pemeliharaan data.
c. Resiko data yang terpusat. Data yang terpusat dalam satu lokasi dapat beresiko kehilangan data selama 
    proses aplikasi.

Model Data
Model data dapat dikelompokkan berdasarkan konsep pembuatan deskripsi struktur basis data, yaitu:
a. Model data konsepsual (high level) menyajikan konsep tentang bagaiman user memandang atau 
    memperlakukan data. Dalam model ini dikenalkan tiga konsep penyajian data yaitu:
    • Entity (entitas) merupakan penyajian obyek, kejadian atau konsep dunia nyata yang keberadaannya 
      secara eksplisit didefinisikan dan disimpan dalam basis data, contohnya Mahasiswa, Matakuliah, Dosen, 
      Nilai dan lain sebagainya.
    • Atribute (atribut) adalah keterangan-keterangan yang menjelaskan karakteristik dari suatu entitas seperti 
      NIM, Nama, Fakultas, Jurusan untuk entitas Mahasiswa.
    • Relationship (hubungan) merupakan hubungan atau interaksi antara satu entitas dengan yang lainnya, 
       misalnya entitas pelanggan berhubungan dengan entitas barang yang dibelinya.
b. Model data fiskal (low level) merupakan konsep bagaimana deskripsi detail data disimpan ke dalam 
    komputer dengan menyajikan informasi tentang format rekaman, urutan rekaman, dan jalur pengaksesan  
    data yang dapat membuat pemcarian rekaman data lebih efisien.
c. Model data implementasi (representational) merupakan konsep deskripsi data disimpan dalam komputer 
   dengan menyembunyikan sebagian detail deskripsi data sehingga para user mendapat gambaran global  
    bagaimana data disimpan dalam komputer. Model ini merupakan konsep model data yang digunakan oleh 
    model hirarki, jaringan dan relasional.

Skema dan Instan Basis Data
Skema basis data merupakan deskripsi dari basis data yang spesifikasinya ditentukan dalam tahap perancangan namun tidak terlalu diharapkan diubah setiap saat. Penggambaran skema umumnya hanya berisi sebagian dari deatil deskripsi basis data.















Sekelompok data yang tersusun dalam satu baris rekaman (record/tuple) dan tersimpan dalam basis data disebut dengan instansi (instance) atau kejadian (occurences).

Arsitektur DBMS
Arsitektur ini dikenal dengan nama arsitektur tiga skema (three-schema architecture) dimana fungsi ini untuk memisahkan antara basis data fisik dengan program aplikasi user. Skema-skema tersebut adalah sebagai berikut:
a. Level internal merupakan skema internal yang memuat deskripsi struktur penyimpanan basis data dan 
    menggunakan model data fisikal serta mendefinisikan secara detail penyimpanan data dalam basis data, 
    serta jalur pengaksesan data.
b. Level konsepsual adalah skema yang memuat deskripsi struktur basis data secara keseluruhan untuk semua 
    pemakai. Skema ini hanya memuat deskripsi tentang entitas, atribut, hubungan dan batasan, tanpa memuat 
    deskripsi data secara detail.
c. Level eksternal merupakan skema eksternal (user view) yang mendefinisikan pandangan data terhadap 
    sekelompok user (local view) dengan menyembunyikan data lain yang tidak diperlukan oleh kelompok user 
    tersebut.


Keuntungan dari arsitektur ini antara lain:
a. Perubahan skema konsepsual, yaitu adanya perubahan dalam skema konsepsual contohnya penambahan 
    suatu item data tidak akan berpengaruh pada program aplikasi. Tetapi jika skema eksternal tidak sesuai 
    lagi dengan skema konsepsual yang baru maka program aplikasi harus disesuaikan juga.
b. Perubahan skema internal. Pemisahan antara skema eksternal dan skema internal berfungsi untuk menjaga 
    bila terjadi perubahan skema internal, misalnya ada penambahan “pointer” pada rekaman tidak 
    memerlukan perubahan pada aplikasi.
c. Perubahan skema eksternal. Adanya penambahan skema eksternal atau pembuatan skema eksternal baru 
    tidak akan berpengaruh pada aplikasi yang ada selama aplikasi tersebut tidak mengakses data berdasarkan 
    skema yang baru.


Komponen DBMS
Komponen-komponen DBMS (Howe,1991) terdiri dari:
• Interface, yang didalamnya terdapat bahasa manipulasi data (data manipulation language)
• Bahasa definisi data (data definition language) untuk skema eksternal, skema konsepsual dan skema internal.
• Sistem kontrol basis data (Database Control System) yang mengakses basis data karena adanya perintah 
  dari bahasa manipulasi data.

Contoh bahasa menggunakan komponen-komponen tersebut adalah SQL (Structured Query Language). SQL merupakan bahasa standar yang digunakan oleh kebanykan aplikasi-aplikasi DBMS.


Klasifikasi DBMS
Sistem Basisi Data dapat diklasifikasikan menjadi tiga bagian, yang terdiri dari:
a. Klasifikasi berdasarkan model data. Klasifikasi ini terdiri dari model data hirarki, model data jaringan, 
    model data relasional.
   1. Model data hirarki
       Dalam model ini, data disusun menurut struktur pohon yang merupakan bentuk lain dari abstraksi data 
       untuk basis data akademi. Pada puncak hirarki diesbut dengan akar (root). Tiap entitas tingkat atas 
       (parent) mempunyai satu atau lebih sub-entitas (children) sehingga setiap entitas hanya boleh mempunyai 
       satu induk, tetapi dapat mempunyai banyak anak. 

       Pada mode data hirarki, hubungan antar entitas dinyatakan dalam satu-banyak (one to many) atau satu-
       satu (one to one). Dalam satu Universitas terdapat banyak Fakultas dan setiap Fakultas terdapat banyak 
       Dosen atau banyak Mahasiswa, dan seterusnya. Tanda panah menunjukkan derajat keterhubungan 
       “banyak”.

       Untuk menampilkan semua mata kuliah pada Fakultas tertentu harus dilakukan dalam dua tahap. Yang 
       pertama adalah menampilkan rekaman semua Dosen yang mengajar di Fakultas tersebut, kemudian baru 
       mata kuliah yang dipegang oleh para Dosen. Dalam hal ini penampilan data terlihat kurang efisien, sebab 
       menggunakan entitas perantara (dosen) yang harus ditampilkan juga. Dikarenakan kunci data yang 
       digunakan untuk menghubungkan antar entitas diberi kode dalam struktur data, maka untuk jumlah entitas 
       perantara yang sedikit masih dapat dikatakan efisien.


       Kelemahan lain pada model data hirarki adalah tidak dapat melakukan pencarian data pada field. 
       Misalnya dalam entitas mata ki\uliha tida pat ditampilkan hanya mata kuliah dengan jumlah SKS tertentu,  
       sebab field “Jumlah SKS” bukan sebagai kunci data. Hal ini masih dapat dilakukan dengan mengubah 
       struktur data dengan memberi hubungan khusus yang digunakan untuk mengubah struktur database. 
       Kelebihan model ini adalah sangat mudah dipahami dan mudah dalam pembaharuan data 
       [Waliyanto2000].


2. Model data Jaringan
Dalam model ini setiap entitas dapat mempunyai banyak induk dan banyak anak. Pada gambar menunjukkan entitas mata kuliah mempunyai dua induk, yaitu langsung berhubungan dengan Fakultas dan Dosen.














Dalam model ini lebih sedikit terdapat data rangkap, namun lebih banyak terdapat hubungan antar entitas, sehingga akan menambah informasi hubungan yang harus disimpan dalam database. hal ini akan menambah volume dan kerumitan dalam penyimpanan berkas data.

3. Model data Relasional
Dalam model ini setiap field dapat dijadikan kunci data. Data rekaman disusun dari nilai yang berhubungan (record). Baris-baris ini akan membentuk tabel yang umunya tersimpan dalam satu berkas (file).














Dengan menggunakan model ini, pencarian field dari suatu tabel atau banyak tabel dapat dilakukan dengan cepat. Pencarian atribut yang berhubungan pada tabel yang berbeda dapat dilakukan dengan menghubungkan terlebih dahulu tabel-tabel tersebut dengan menggunakan atribut yang sama (joint operation).
Keuntungan yang didapat dengan menggunakan model ini adalah sebagai berikut [Waliyanto2000]:
• Model ini lebih luwes karena nilai data dalam tabel tidak ada pembatasan dalam berbagai proses pencarian data.
• Model ini mempunyai latar belakang teori matematika.
• Pengorganisasian model relasional sangat sederhana, sehingga mudah dipahami.
• Basis data yang sama biasanya dapat disajikan dengan lebih sedikit terjadi data rangkap (redudancy data).

Sedangkan beberapa kelemahan model ini adalah [Waliyanto2000]:
• Lebih sulit dalam implementasinya terutama untuk data dengan jumlah yang besar dan tingkat kompleksitasnya tinggi.
• Proses pencarian informasi lebih lambat, karena beberapa tabel tidak dihubungkan secara fisik. Dalam manipulasi data yang menggunakan beberapa tabel akan memerlukan waktu yang lama, karena tabel-tabel harus dihubungkan terlebih dahulu.


b. Klasifkasi berdasarkan lokasi penyimpanan data, yaitu DBMS terpusat dan DBMS terdistribusi. Dalam DBMS terpusat basis data disimpan dalam satu komputer media penyimpan sehingga pengguuna sistem mengakses data dari pusat. DBMS terdistribusi, basis data tersebar pada penyimpanan tiap terminal pengguna (client). Antar pengguna dapat mengakses data secara langsung tanpa perlu melalui pusat penyimpanan. DBMS ini memerlukan sistem kontrol yang rumit.
c. Klasifikasi berdasarkan tujuan DBMS digunakan yaitu tujuan umum (general purpose) dan tujuan khusus (special purpose). Untuk tujuan umum dapat digunakan untuk berbagai tujuan dengan memperlakukan data sama menurut penggunaannya contoh aplikasinya adalah DBASE,ORACLE, FOXBASE dan sebagainya.  DBMS tujuan khusus dirancang dan digunakan untuk keperluan tertentu, sebagai contoh pengelolaan data karyawan pada perusahaan Asuransi.


Pengembangan Database
Database diproses oleh DBMS untuk digunakan oleh pengembang maupun pengguna, yang mengakses DBMS secara langsung atau tidak langsung melalui program-program aplikasi. Database terdiri dari empat elemen utama yaitu data pengguna, metadata, indeks dan metadata aplikasi [David2002].

Data Pengguna
Hampir semua database me-representasikan data pengguna sebagai relasi dengan menganggapnya sebagai tabel data. Kolom dalam tabel berisi field-field atau atribut dan baris tabel berisi record/tuple (rekaman) untuk keterangan entitas dalam lingkungan bisnis. Tidak semua relasi diperlukan, beberapa relasi lebih baik distrukturkan dengan proses normalisasi. 

Relasi ini dapat digambarkan dengan bentuk hubungan antara pelajar dengan guru sebagai berikut:

Tabel 1-1 Relasi Pelajar dengan Guru (R1)









Struktur relasi tersebut dapat terjadi beberapa masalah, misalnya jika guru Dadang mengganti nomor telepon maka tiga record yang terdapat guru Dadang diatas harus diganti juga. Untuk itu lebih baik jika struktur relasi diubah menjadi dua relasi seperti di bawah ini:

Tabel 1-2 Hubungan antara R1 dan R2








Dari relasi diatas akan pengubahan data hanya dilakukan pada relasi kedua.

Metadata
Penjelasan struktur dari suatu tabel disebut dengan metadata dan terkadang disebut dengan system tables. Bentuk dari metada dapat digambarkan seperti dibawah ini yang terdiri dua tabel. Tabel pertama berisi daftar tabel-tabel di dalam suatu database sedangkan tabel yang kedua berisi daftar kolom-kolom pada suatu tabel.

Tabel 1-3 Tabel SysTable









Tabel 1-4 Tabel SysColumns

















Indeks
Tipe database ini digunakan untuk meningkatkan kinerja dan akses suatu database. Terkadang tipe 
data ini disebut dengan overhead data, terdiri dari prinsip-prinsip indeks serta beberapa penggunaan 
struktur data link list. Di bawah ini contoh pengguanan dua buah indeks dari tabel Mahasiswa:

























Indek tidak hanya digunakan untuk pengurutan, tetapi digunakan juga untuk mengakses cepat ke 
database terutama pencarian data. Apbila suatu tabel contuhnya tabel Mahasiswa, mengalami 
pengubahan data (penambahan/pengubahan/penghapusan) maka tabel indeks mengalami 
pengubahan juga.


Application Metadata
Application metadata digunakan untuk menyimpan struktur dan format dari user forms, report, queries 
dan komponen-komponen aplikasi lainnya. 



Konsep Dasar Tabel

Tabel merupakan blok dasar yang paling umum digunakan dalam sistem basis data, atau disebut juga  
dengan relasi. Komponen tabel terdiri dari beberapa kolom yang ditandai dengan jenis atribut. 
Perpotongan antara baris dan kolom disebut nilai atribut. Tujuan penggunaan tabel adalah untuk 
menyederhanakan logika pandangan terhadap data. Beberapa kententuan-ketentuan dalam 
penyusunan sebuah tabel adalah sebagai berikut [Waliyanto2000]:

a. Urutan baris diabaikan, sehingga pertukaran baris tidak berpengaruh pada isi informasi tabel.
b. Urutan kolom diabaikan serta identifikasi kolom dibedakan dengan jenis atribut.
c. Tiap perpotongan antara baris dan kolom berisi atribut tunggal
d. Tiap baris dalam tabel harud dibedakan, sehingga tidak ada dua baris atau lebih dalam tabel 
mempunyai nilai atribut yang sama secara keseluruhan.



Tabel yang memenuhi ketentuan ini disebut dengan tabel normal, jika belum maka dilakukan proses 
normalisasi.



Salah satu keuntungan menggunakan basis data adalah konsistensi data selalu terjaga dengan 
menghindari adanya data rangkap (redudant data). Perbedaan antara data rangkap dan data duplikat 
adalah duplikasi data terjadi bila satu atribut mempunyai dua atau lebih nilai yang sama, sedangkan 
data rangkap adalah bila satu atribut mempunyai dua atau lebih nilai yang sama, namun bilai salah 
satu nilai dihapus, maka tidak ada informasi yang hilang, sehingga duplikasi data ini tidak perlu ada. 

Untuk lebih jelasnya lihat dua tabel berikut:

















Pada tabel 1.8 terjadi duplikasi data pada atribut NamaGuru, andaikan baris pertama pada atribut 
NamaGuru dihilangkan maka informasi untuk atribut NamaPelajar baris pertama akan hilang, 
sedangkan pada tabel 1.9 dapat terlihat bahwa kalau atribut TeleponGuru dari baris pertama 
dihilangkan maka informasi ini masih dapat diketahui melalui atribut NamaGuru pada baris kedua, 
mengapa?

Salah satu syarat tabel normal adalah setiap atribut harus mempunyai nilai tunggal untuk tiap barisnya. 
Di bawah ini contoh dari suatu tabel yang mempunyai atribut bernilai ganda.






















Dalam tabel di atas terdapat nilai atribut ganda pada kolom Gelar. Hal ini berakibat pengurutan data 
hanya dapat dilakukan berdasarkan kolom NIP dan Nama. Untuk menghilangkan nilai ganda tersebut, 
hal yang paling mudah dilakukan adalah membuat pengisian nilai atribut vertikal namun dapat
berakibat kerangkapan data, seperti di bawah ini.




















Solusi yang teapat untuk menghilangkan kerangkapan data tersebut adalah dengan membagi tabel 
menjadi dua bagian yang saling terhubung dengan elemen penghubung salah satu atributnya. 
Perhatikan tabel-tabel di bawah ini:












Dengan cara ini dapat mempermudah dalam proses normalisasi berikutnya. Dalam penyusunan 
aturan data perlu dipahami tentang determinan dan identitas. Jika sebuah tabel memiliki atribut A, B, 
dan C, sedangkan A menjadi penentu B atau sebaliknya B ditentukan oleh A maka A determinan 
(functional determines) B (B functional dependent A) . Nilai atribut B dapat saja duplikasi, kosong atau 
dapat diubah. Jika a1 dan b1 merupakan nilai A maka akan berpasangan dengan nilai B yang sama 
ataupun berbeda. Jadi A determinan B jika tiap A mempunyai satu pasangan nilai B. Perhatikan
contoh tabel di bawah ini:







Apabila setiap nilai atribut NIM menentukan nama mahasiswa maka dikatakan atribut NIM determinan 
atribut Nama. Begitu juga dengan atribut Jurusan dan Fakultas yang ditentukan oleh NIM. Bentuk 
diagram determinan adalah sebagai berikut:









Dalam kasus lain, ada kemungkinan dua atribut atau lebih secara bersama menentukan atribut lain 
atau determinan komposit (composite determinant/fully functionally dependent) . Sebagai contoh pada 
tabel di bawah, atribut NIM dan atribut MataKuliah menentukan atribut Dosen sebagai pengajar.










Gambar diagram determinannya adalah sebagai berikut:









Sedangkan bila atribut A determinan atribut B dan atribut B merupakan determinan atribut C maka 
atribut A adalah determinan transitif atribut C (C transitive dependency A). perhatikan contoh tabel dan 
diagram determinan di bawah ini:









Dari pembahasan di atas tiap baris dapat diidentifikasikan dengan semua nilai atribut, tetapi akan 
sangat menyulitkan. Oleh sebab itu perlu pemilihan salah satu nilai atribut yang digunakan sebagai 
identitas (identifier) atau elemen kunci (key element) dari baris. Nilai atribut dapat dijadikan identitas 
jika dalam tabel tidak terjadi duplikasi data dan data dengan nilai kosong (NULL).

Normalisasi
Proses normalisasi menyediakan cara sistematis untuk meminimalkan terjadinya kerangkapan data 
diantara relasi dalan perancangan logikal basis data. Format normalisasi terdiri dari lima bentuk, yaitu:

Form Normal Pertama (1NF). Suatu tabel dikatakan sudah 1NF jika telah memenuhi ketentuan 
sebagai berikut:
• Tidak ada atribut mempunyai nilai berulang atau nilai array
• Tidak mempunyai baris yang rangkap
Bentuk unnormal mengijinkan nilai-nilai pada suatu atribut dapat berulang.

Form Normal Kedua (2NF). Relasi dapat dikatakan format normal kedua jika sudah dalam format 
normal pertama dan diikuti kondisi sebagai berikut:
• Key terdiri dari atribut tunggal
• Setiap atribut nonkey ketergantungan fungsional pada semua key atau tidak terjadinya 
ketergantungan pada key composite.

Form Normal Ketiga (3NF). Relasi dikatakan format normal ketiga jika sudah dalam format normal
kedua dan tidak ada ketergantungan transitif diantara atribut.

Form Normal Boyce-Codd (BCNF). BCNF menentukan setiap determinan adalah kunci kandidat
(candidate key).

Form Normal Keempat (4NF). Bentuk ini adalah bentuk normal ketiga atau BCNF dengan nilai atribut
tidak tergantung pada nilai banyak (multivalue dependency).

Form Normal Kelima (5NF). Konsep pada bentuk ini adalah ketergantungan pada gabungan
beberapa atribut (join dependency).

PERANCANGAN BASIS DATA
Permasalahan dalam perancangan basis data adalah bagaimana merancang struktur logikal dan 
fisikal dari satu atau lebih basis data untuk memenuhi kebutuhan informasi yang diperlukan oleh 
pengguna sesuai dengan aplikasi-aplikasi yang ditentukan. [Waliyanto2000]

Dengan permasalahan tersebut dapat ditentukan beberapa tujuan utama perancangan basis data, 
yaitu:
a. Memenuhi kebutuhan informasi sesuai dengan yang diperlukan oleh pengguna untuk aplikasi 
tertentu.
b. Mempermudah pemahaman terhadap struktur informasi yang tersedia dalam basis data,
c. Memberikan keterangan tentang persyaratan pemrosesan dan kemampuan sistem, seperti lama 
tidaknya mengakses data, kapasitas memori yang tersedia dan sebagainya.

Tahapan-tahapan proses perancangan untuk memenuhi tujuan tersebut adalah:
1. Mengumpulkan dan menganalisis persyaratan
2. Merancang konsepsual basis data
3. Memilih Sistem Manajemen Basis Data
4. Merancang logikal basis data
5. Merancang fisikal basis data (pemetaan model data)
6. Implementasi sistem basis data

Dalam pelaksanaan perancangan tersebut terdapat dua kegiatan yang dapat dilakukan secara paralel, 
yaitu perancangan struktur dan isi data (analisis data) dan perancangan pemrosesan data serta 
program aplikasi (analisis fungsional). 
Tahapan rancangan basis data seperti pada bagan di bawah ini tidak secara ketat harus diikuti secara 
berurutan. Karena antara tahap yang satu dengan yang lainnya dapat saling mempengaruhi dan
memberi umpan balik.




















Rancangan konsepsual basis data (tahap 2) menghasilkan skema konsepsual dari basis data yang 
bebas dari DBMS tertentu. Dalam hal ini juga digunakan pemodelan bahasa tingkat tinggi seperti 
model E-R (Entity Relationship) atau EER (Enhanced Entity Relationship). Tahap ini juga menentukan 
transaksi data yang dapat dilakukan terhadap sistem basis data.

Rancangan logikal (tahap 4) disebut juga pemetaan model data, yaitu mentransformasikan model 
data yang telah dibuat pada tahap dua ke dalam model data yang sesuai dengan DBMS terpilih. 
Tahap ini juga melakukan perancangan skema eksternal untuk aplikasi yang ditentukan.

Rancangan fisikal basis data (tahap 5) melakukan pendefinisian basis data yang akan disimpan 
sesuai dengan SMBD yang digunakan, meliputi struktur penyimpanan data, format data dan jalur 
akses. Tahap ini disebut skema internal.

Koleksi dan Analisis Persyaratan
Koleksi dan analisis persyaratan merupakan proses pengumpulan dan analisis tujuan dan harapan 
pengguna untuk memperoleh informasi dari sistem basis data. Kegiatan-kegiatan yang dilakukan 
dalam tahapan ini adalah sebagai berikut:
a. Melakukan identifikasi bidang aplikasi dan kelompok pemakai
b. Mempelajari dan menganalisis dokumen yang ada pada aplikasi tertentu
c. Mempelajari sistem yang sedang berjalan
d. Membuat semacam pertanyaan/angket pada calon pengguna yang dipandang potensial untuk 
memperoleh spesifikasi informasi dan proses yang diperlukan.

Perancangan Konsepsual Basis Data
Tahapan ini meliputi dua kegiatan yaitu rancangan skema konsepsual tentang organisasi data yang 
harus disimpan dalam basis data, dan rancangan transaksi yang dilakukan untuk memperoleh 
informasi dari sistem basis data hasil analisis persyaratan pada tahap 1.

Rancangan skema konsepsual
Hasil rancangan konsepsual merupakan pemodelan data dari pemahaman dunia nyata yang 
dituliskan dalam bahasa tingkat tinggi dan tidak terikat dengan DBMS yang akan digunakan. 
Umumnya pembuatan skema konsepsual ini menggunakan diagram E-R.

Untuk menyusun rancanngan konsepsual dimulai dengan identifikasi komponen utama dari skema 
(entitas, hubungan, atribut) dengan mengacu pada karakateristik sebagai berikut:
a. Model data harus cukup memberikan tampilan yang menggambarkan perbedaan jenis data, 
hubungan dan constraint (ekspresif).
b. Model harus dibuat sederhana dan mudah dipahami serta digunakan oleh pengguna.
c. Penyajian model data dibuat dalam diagram yang mudah diinterprestasi
d. Penyajian model data dalam skema harus teliti dan tidak menimbulkan interprestasi (akurat).

Rancangan transaksi
Teknik pembuatan spesifikasi transaski dilakukan dengan melakukan identifikasi data masukan dan 
data keluaran serta sifat fungsional transaksi, sehingga perancang dapat membuat model konsepsual 
transaksi yang tidak terikat dengan sistem.

Fungsi-sungsi model transaksi adalah sebagai berikut:
a. Transaksi pemanggilan (retrieval transaction), yaitu pemanggilan data untuk ditampilkan di layar 
monitor atau dicetak sebagai laporan.
b. Transaksi pembaharuan (update transaction), digunakan untuk pemasukan data baru atau 
perubahan data lama.
c. Transaksi campuran (mixed transaction), digunakan untuk kombinasi pemanggilan data dan 
pembaharuan data.

Pemilihan DBMS
Faktor-faktor yang menentukan pemilihan DBMS antara lain adalah faktor teknik, faktor ekonomi dan 
politik dalam organisasi.

Faktor teknik meliputi kelangsungan dari DBMS untuk diterapkan dalam pengelolaan data seprti jenis 
model DBMS, struktur penyimpanan data dan alur akses data, interface pengguna dan pemrogram, 
jenis bahasa tingkat tinggi dan sebagainya. 
Faktor ekonomi diantaranya pembelian software DBMS, pembelian hardware, biaya pemeliharaan 
sistem, biaya penyusunan basis data dan lain sebagainya. 
Pemodelan Logikal Basis Data

Tujuan dari tahap ini adalah menyusun rancangan konsepsual dan skema eksternal yang sesuai 
dengan DBMS yang dipilih. Langkah-langkah yang dilakukannya adalah:
a. Pemetaan (transformasi data) yang tidak terikat sistem.
b. Penyusunan skema sesuai dengan DBMS.

Perancangan Fisikal Basis Data
Tujuan dari perancangan ini adalah untuk membuat spesifikasi struktur penyimpanan dan jalur akses 
data sehingga diperoleh kemampuan sistem yang baik untuk berbagi aplikasi. Beberapa hal yang 
menjadi pertimbangan dalam perancangan fisikal adalah:
1. Waktu tanggap. Yaitu waktu yang digunakan oleh sistem sejak transaski basis data dimasukkan 
untuk dieksekusi sampai mendapat tanggapan dari sistem. Faktor yang mempengaruhinya adalah 
waktu akses basis data yang dikendalikan oleh DBMS serta dipengaruhi oleh sistem pemuatan 
data (loading) pada komputer, sistem operasi yang digunakan, atau penundaan sistem 
komunikasi.
2. Penggunaan memori komputer. Merupakan kapasitas memori komputer yang digunakan untuk 
menyimpan berkas-berkas basis data dan struktur jalur akses.
3. Transaksi data. Kemampuan melakukan transaksi data tiap satuan waktu merupakan hal yang 
kritis.

Implementasi Sistem Basis Data
Tahap ini merupakan implementasi dari hasil pemodelan logikal dan fisikal. Bahasa yang digunakan 
untuk definisi data atau penyimpanan data yang sesuai dengan DBMS terpilih. Implementasi 
penyusunan basis data dimulai dari pembuatan berkas-berkas data kosong yang akan digunakan 
untuk menyimpan data dalam basis data. Kemudian dilanjutkan dengan pemasukan data untuk tiap 
instansi tabel.

Dalam impelementasi rancangan transaksi, program aplikasi ditulis dengan bahasa manipulasi data 
yang sesuai. Program-program aplikasi yang dibuat harus dilakukan uji coba dulu untuk menguji 
kebenaran program. Setelah diuji kemudian diimplementasikan dalam operasional sistem basis data.

***

Referensi:
[Abdul1999] Abdul Kadir. 1999. Konsep & Tuntunan Praktis Basis Data. Penerbit Andi.
           Yogyakarta.

[David2002] David M. Kroenke. 2002. Database Processing Fundamentals, Design, and
            Implementation. Eight Edition. Pretince Hall.

[Ramez2000] Ramez Elmasri & Shamkant B Navathe. 2000. Database System.

[R.E. 2003] R.E. Wyllys. 2003. Database-Management Principles And Applications.

[Sitansu1991] Sitansu S. Mittra. 1991. Principles of Relational Database Systems. International
             Editions. Prentice-Hall. New Jersey.

[Waliyanto2000] Waliyanto. 2000. Sistem Basis Data Analisis dan Pemodelan Data. J&J Learning.
             Yogyakarta.










Tidak ada komentar:

Posting Komentar