PERANCANGAN DATABASE

PERANCANGAN DATABASE

 

RELATIONAL DATABASE

 

Menjelaskan kepada pemakai tentang hubungan logik antar data dalam basis data dengan cara menvisualisasikannya ke dalam bentuk tabel-tabel dua dimensi ynag terdiri dari sejumlah baris dan kolom yang menunjukkan  atribut-atribut.

 

Tujuan Perancangan Database

Ø  Untuk menyajikan data dan hubungan antar data yang diperlukan oleh pemakai dan aplikasi

Ø  Untuk mempermudah pemahaman informasi

Ø  Untuk melengkapi model data yang mendukung transaksi-transaksi yang diperlukan

Ø  Untuk mendukung proses permintaan dan performance seperti waktu respon, waktu proses dan tempat penyimpanan

 

 

Keuntungan Relational Database :

  1. Bentuknya sederhana
  2. Mudah melakukan berbagai operasi data

 

Karakteristik-karakteristik dalam relasi

  1. Semua  entry/elemen data suatu baris dan kolom tertentu harus mempunyai nilai tunggal (single value), bukan suatu larik atau group perulangan.
  2. Semua entry/elemen data pada suatu kolom tertentu dalam relasi yang sama harus mempunyai jenis yang sama.
  3. Masing-masing kolom dalam suatu relasi mempunyai suatu nama yang unik.
  4. Pada suatu relasi/tabel yang sama tidak ada dua baris yang identik.

 

Istilah dalam Relational Database :

  • Record/Tuple            : Sebuah baris dalam suatu relasi.
  • Cardinality                 : Banyak tuple atau record
  • Atribute                      : Suatu kolom dalam sebuah relasi
  • Domain                      : Batasan-batasan nilai dalam atribut dan tipe datanya
  • Derajat/Degree         : Banyaknya atribut/kolom

 

Relational Key

  • Super Key

Satu atribut/kumpulan atribut yang secara unik mengidentifikasikan sebuah tupel di dalam relasi.

  • Candidate Key

Atribut di dalam relasi yang biasanya mempunyai nilai unik.

  • Primary Key

Candidate key yang dipilih untuk mengidentifikasikan tupelo secara  unik dalam relasi.

  • Alternate Key

Candidate key yang tidak dipilih sebagai primary key

 

  • Foreign Key

Atribute dengan domain yang sama yang menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa.

 

Aturan-aturan (Rules) dalam Primary Key

 

Dasar penentuan primary key adalah bahwa nilai-nilai rinci data dari atribut yang digunakan sebagai primary key haruslah unik, artinya tidak mungkin ada nilai rinci data yang sama pada semua record dalam basis data.

  • Integritas Entity

Nilai atribut yang dipilih sabagai primay key tidak bolah bernilai null untuk setiap record yang ada dalam relasi.

 

  • Integritas Referensi

Berhubungan dengan dua atau lebih tabel/relasi dalam suatu system basis data yang menggunakan primary key yang sama.

 

 

Bahasa Pada Relational Database

 

Menggunakan bahasa query à pernyataan yang diajukan untuk mengambil informasi.

 

Terbagi 2 :

  1. Bahasa Formal

Bahasa query yang diterjemahkan dengan menggunakan symbol-simbol matematis dan symbol-simbol logika.

 

<, >, <=, >=, =, ≠

AND, OR, NOT

           

  1. Bahasa Komersial

Bahasa query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly).

 

 

 

 

Kerelasian (Relationship) antar Entity

  • Kerelasian Entity dalam satu tabel

Kerelasian antar entity (yang berupa record) untuk menyediakan data atau informasi dari atribut-atribut dalam satu tabel.

  • Kerelasian Entity dalam banyak tabel

Tipe ini mempunyai kerelasian yang lebih kompleks.

    1. Jenis Pohon (Tree)
    2. Jenis Jaringan Sederhana (Simple Network)
    3. Jenis Jaringan Kompleks (Compleks Network)

 

 

Manipulasi Data

 

  1. Relational Algebra

Relational algebra menyediakan sejumlah operator untuk memanipulasi data pada seluruh relasi.

    1. Proyeksi (Projection)
    2. Seleksi (Selection)
    3. Penggabungan (Union)
    4. Interseksi (Intersection)
    5. Differensi (Difference)
    6. Divisi (Division)
    7. Penyertaan (Join)

 

  1. Relational Calculus

Adalah tipe manipulasi data non procedural, karena pemakai hanya menspesifikasikan data-data apa saja yang diinginkannya, bukan bagaimana memperolehnya.

 

Langkah-langkah perancangan

 

Perancangan database disini dimulai dari data dictionary (kamus data), yang merupakan daftar semua elemen/field. Kamus data diperoleh pada saat analisis dengan Diagram Arus Data (Data Flow Diagram).

 

Pada perancangan ini dibuat dengan sekaligus contoh yang pada perancangan komputerisasi karyawan yang mengerjakan proyek-proyek pada suatu perusahaan.

1.    Buat kamus data

 

Nama Filed

Tipe Data

Panjang

Keterangan

No_kar

character

4

Nomor karyawan

Na_kar

character

20

Nama karyawan

Al_kar

character

20

Alamat karyawan

Tgl_msk

date

8

Tanggal masuk kerja

Gaji

numeric

7

Gaji pokok

No_bag

character

5

Nama bagian/depertemen

Na_bag

character

15

Nama bagian/departemen

No_pek

character

4

Nomor pekerjaan

Na_pek

character

20

Nama pekerjaan

Tgl_ml

date

8

Tanggal mulai pekerjaan

Tgl_sls

date

8

Tanggal selesai pekerjaan

Ang_pek

numeric

9

Anggaran tenaga kerja

Jam_ker

numeric

3

Jam kerja pada suatu pekerjaan

 

 

 

2.    Memilih kunci record

     Pada contoh kamus data di atas kunsi record yang dipilih :

    • No_kar ( nomor karyawan, satu karyawan satu nomor )
    • No_bag ( nomor bagian/departemen )
    • No_pek  ( nomor pekerjaan)

 

3. Bentuklah entity/tabel berdasarkan kunci recordnya.

 

no_kar

na_kar

al_kar

tgl_msk

gaji

 
Entity karyawan : 

        Kunci     

 

 

    

no_bag

na_bag

 
     Entity bagian/departemen :

         Kunci 

 

    

no_pek

na_pek

tgl_ml

tgl_sls

ang_pek

 
      Entity pekerjaan :

         Kunci

 

 

 

 

 

 

 

 

 

 

File Departemen

 

File Karyawan

 
4.Mencari relasi antar file dan menggabungkannya

no_pek *

na_pek

tgl_ml

tgl_sls

ang_ker

 

no_bag *

na_bag

 

File Pekerjaan

 

 

Pada contoh di atas diketahui hubungan antara departemen dengan karyawan adalah satu lawan banyak, satu departemen terdiri banyak karyawan maka kita letakkan kunci field departemen (no_bag) pada file karyawan.

 

 

 

 

 

 

 

 

 

 

 

 

Relasi banyak lawan banyak pada file pekerjaan dan karyawan dibuat file konektor menjadi :

 

Departeman

No_bag

Na_bag

 

                                         

      Karyawan

No_kar

Na_kar

Al_kar

Tgl_msk

Gaji

No_bag

                                     pekerjaan

No_pek

Na_pek

Tgl_ml

Tgl_sls

Ang_pek

 

 


Konektor

No_kar

No_pek

 

5. Melengkapi isi tiap file

Mengisi field-field yang tergantung (tidak mempunyai kunci record tunggal) pada file konektor.

 

Konektor

No_kar

No_pek

Jam_ker

 

6. Lakukan pemeriksaan relasi

  • semua file jangan sampai memiliki field data yang sejenis yang ditulis berulang-ulang.
  • periksalah dengan metode normalisasi.

 

 

 

Fase-fase dari proses Perancangan Database

  1. Pengumpulan dan analisis permintaan
  2. Perancangan model konseptual database
  3. Pemilihan DBMS
  4. Perancangan model logical database
  5. Perancangan fisik database
  6. Implementasi database

 

Fase-1. Pengumpulan dan analisis Permintaan-permintaan

Fase ini meliputi pengumpulan dan analisis permintaan dari para pemakai maupun area aplikasi.

 

Aktifitas-aktifitas yang dilakukan dalam fase ini:

ð  Mengidentifikasikan kelompok dari pemakai dan area aplikasi

ð  Mempelajari dokumen-dokumen yang ada

(bentuk-bentuk formulir, laporan, aturan-aturan)

ð  Menganalisis lingkungan operasional dan pemrosesan permintaan

ð  Mengadakan questioner dan interview

 

Fase-2. Perancangan Model Konseptual Database

ð  Fase ini meliputi penyajian data dan hubungan-hubungannya yang disimpan dalam database

ð  Model data ini terpisah dari detail implementasi seperti DBMS yang digunakan, program aplikasi dan perangkat kerasnya.

 

Pada fase ini dilakukan 2 aktifitas:

a.    Perancangan skema konseptual

Aktifitas- aktifitas yang dilakukan:

ð  Mengidentifikasi tipe entity, atribut-atributnya serta keterhubungan antar entity

ð  Menentukan key dari atribut-atribut tersebut

ð  Menentukan cardinaliti ratio dan participation constraint

ð  Bila diperlukan ditambahkan spesialisasi atau generalisasi

 

Terdapat 2 macam pendekatan:

  1. Perancangan skema tersentralisasi

ð  Semua permintaan user dan aplikasi dirancang menjadi satu kesatuan. Autorisasi tersentralisasi oleh DBA.

ð  DBA bertanggungjawab penuh dalam perancangan

ð  Diperlukan perancang database yang ahli dan memahami permintaan-permintaan untuk setiap pemakai

  1. Perancangan skema integrasi

ð  Setiap kelompok pemakai dapat merancang database meraka sendiri-sendiri

ð  Setelah skema konseptual database terbentuk, proses integrasi dilanjutkan oleh DBA

ð  Pembentukan entity-entity, atribut-atribut dan domain harus jelas dan seragam pada setiap user group

 

Strategi-strategi pada perancangan skema:

  1. Top Down Strategi

ð  Perancangan dimulai dari pendefinisian tipe-tipe entitynya terlebih dahulu, setelah itu dilanjutkan dengan ketehubungannya beserta atribut-atributnya

ð  Pendefinisian tipe entity dari lebih tinggi ke tipe yang lebih rendah. Contoh : menggunakan spesialisasi

  1. Bottom Up Strategi

ð  Perancangan dimulai dari pendefinisian atribut-atribut terlebih dahulu, setelah itu dilanjutkan dengan keterhubungannya beserta atribut-atributnya

ð  Pendefinisian tipe entity dari lebih rendah ke tipe yang lebih tinggi. Contoh : menggunakan Generalisasi

  1. Inside-Out Strategi

ð  Special kasus dari Bottom Up Strategi dimana difokuskan ke konsep-konsep utama baru ke konsep lainnya.

  1. Mixed Strategi

ð  Gabungan dari Top Down dan Bottom Up Strategi

  1. Perancangan transaksi

ð  Transaksi merupakan represantasi dari aktifitas-aktifitas terhadap database

ð  Perancangan transaksi harus disesuaikan dengan kebutuhan para pemakai dan area aplikasi

 

Kegiatan-kegiatan dalam perancangan transaksi pada tingkat konseptual meliputi:

ð  Mengidentifikasi input/output

ð  Mengidentifikasi fungsi transaksi

 

Jenis-jenis Transaksi:

v  Retrieval transaksi

Transaksi yang mencari data untuk menampilkan laporan pada layer

v  Update transaksi

Transaksi untuk menambahkan, menghapus dan memodifikasi record-record di dalam database

v  Mixed transaksi

Transaksi untuk mencari data sekaligus untuk update data

 

Fase-3. Pemilihan DBMS

Terdapat dua faktor yang perlu diperhatikan dalam pemilihan DBMS :

1. Faktor teknik

ð  Pendefinisian primary key, foreign key, tipe data dan domain

ð  Tersedianya control integrity, mekanisasi view, kamus data dan kemandirian data

ð  Tipe-tipe model data yang tersedia

ð  Pemeliharaan struktur file

ð  Kemudahan reorganisasi, indexing

ð  Tersedianya kompresi data

ð  Bahasa query yang tersedia

ð  Tersedianya system interface

ð  Multi user diperbolehkan

ð  Tersedianya backup dan recovery

ð  Tersedianya pengontrolan konkurensi

ð  Tersedianya penanganan deadlock

 

2. Faktor ekonomi

ð  Perkiraan biaya yang dibutuhkan : software, pemeliharaan hardware, training, operasi dsb.

ð  System yang lebih familier dengan personal-personalnya

ð  Kemampuan pelayanan vendor (penjual)

 

Fase-4. Perancangan Model Logikal database

 

Didalam fase ini ada 2 kegiatan:

  1. Pemetaan system independent (Tansformsi)

ð  Pemetaan dari ER (entity relationship) diagram ke bentuk database yang dipilih

ð  Jenis-jenis model database adalah relasional, hierarki, jaringan dan object oriented

  1. Penyesuaian skema ke DBMS

ð  Kita harus menyesuaikan skema yang diperoleh ke bentuk database yang dipilih, karena setiap database mempunyai model data yang berbeda

ð  Bila database yang dipilih adalah database relasional, maka relasi harus dinormalisasikan terlebih dahulu

 

Fase-5. Perancangan Fisik Datase

Perancangan fisik database meliputi :

ð  Perancangan aturan integrity

ð  Analisis transaksi

ð  Pemilihan organisasi file

ð  Pemilihan indekx

ð  Pengontrolan redudansi

ð  Perancangan view untuk pemakai

ð  Pemberian hak pengaksesan untuk pemakai

 

Beberapa petunjuk dalam pemilihan database secara fisik:

1.  Respon Time

Waktu yang telah berlalu dari suatu transaksi database yang diajukan untuk menjalankan suatu tanggapan

2.  Space Utility

Jumlah ruang penyimpanan yang digunakan oleh file-file database dan struktur-struktur jalur akses

3.  transaction throughput

Rata-rata jumlah transaksi yang dapat diproses permenit oleh system database, dan merupakan parameter kritis dari system transaksi (missal: digunakan pada pemesanan tempat di pesawat, bank, dll)

 

Fase-6. Implementasi Sistem Database

ð  pembentukan database file

ð  pengisian data

ð  konversi data (bila perbaikan system lama)

ð  implementasi transaksi database

ð  testing dan validasi

 

 

 

 


Comments

Popular posts from this blog

contact person

aplikasi pianika pc