Minggu, 27 Desember 2015

ERD (Entity Relationship Diagram)
ERD  merupakan  notasi  grafis  dalam  pemodelan  data  konseptual  yang mendeskripsikan  hubungan  antara  penyimpanan  (tabel).  ERD  digunakan  untuk memodelkan  struktur  data  dan  hubungan  antar  data,  kita  dapat  menguji  data dengan mengabaikan proses yang harus dilakukan serta bisa mengetahui data apa yang  kita  perlukan,  serta  bagaimana  data-data  tersebut  bisa  saling  berhubungan.
Pada dasarnya terdapat 3 macam simbol yang digunakan untuk menggambarkan struktur dan hubungan antar data, yaitu :
1. Entity
Entity adalah obyek yang dapat dibedakan dalam dunia nyata
  • Entity set adalah kumpulan dari entity yang sejenis
  • Entity set dapat berupa :
–  Obyek  secara fisik : Rumah, Kendaraan, Peralatan
–  Obyek secara konsep : Pekerjaan , Perusahaan, Rencana
 Suatu  objek,  merupakan  bagian  dari  sitem  yang  dapat  diidentifikasi  dalam lingkungan pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang  akan  dibuat.  Entity  dapat  berupa  sebuah  kelompok  dari  sesuatu,  harus dapat dibedakan.
2. Atribut
Atribut adalah karakteristik dari entity atau relationship, yang menyediakan penjelasan detail tentang entity atau relationship tersebut. Nilai Atribut  merupakan suatu data aktual atau informasi yang disimpan  pada suatu atribut
di dalam suatu entity atau relationship.
Jenis-jenis atribut :
  • Key  : Atribut yang digunakan untuk menentukan suatu entity secara unik.
  • Atribut Simple : Atribut yang bernilai tunggal.
  • Atribut Multivalue : Atribut yang memiliki sekelompok nilai untuk setiap instan entity.
  • Atribut Composite  : Suatu atribut yang terdiri dari beberapa atribut yang lebih kecil yang mempunyai arti tertentu.
3. Relationship (hubungan)
Merupakan penghubung antar satu entiti dengan entiti yang lain, ataupun satu entiti ke dalam entiti itu sendiri. Relationship dibagi menjadi 3 jenis, yaitu :
  • Satu ke satu (1-1)
Seorang supir hanya dapat menyetir satu mobil. Satu mobil pun hanya bisadigunakan oleh seorang supir.
  • Satu ke banyak/ banyak ke satu(1-n / n-1)
Satu kelas dapat terdiri dari banyak siswa, dan banyak siswa bisa belajar di dalam satu kelas. Tapi tidak sebaliknya, seorang siswa tidak bisa belajar di kelas yang berbeda.
  • Banyak ke banyak (n-n)
Seorang  karyawan  bisa  mengerjakan  satu  atau  lebih  proyek.  Dan  setiap proyek bisa dikerjakan oleh seorang atau lebih karyawan.
Transformasi dari ERD ke Database Relasional
  • Setiap tipe Entity  dibuat suatu relasi yang memuat semua atribut simple, sedangkan untuk atribut composite  hanya dimuat komponen-komponennya saja.
PEGAWAI (NOPEG, ALM1, KDPOS, …….)
  • Setiap  relasi  yang    mempunyai    atribut  multivalue,  buatlah  relasi  baru  dimana  Primary Key nya  merupakan    gabungan  dari  Primary  Key  dari  relasi  tersebut  dengan  atribut multivalue.
LOKPR(NOPRO, LOKASI)
  • Setiap  Unary  Relationship  1:N,  pada  relasi  perlu  ditambahkan  suatu  foreign  key      yang menunjuk ke nilai  primary keynya.
PEGAWAI (NOPEG, ….., SUPERVISOR-ID)
  • Setiap    Unary    Relationship      M:N,    buatlah    relasi      baru          dimana    primary  keynya  merupakan gabungan dari dua atribut dimana  keduanya  menunjuk  ke primary key relasi awal dengan penamaan yang berbeda.KOMBAR (NOBAR, NOKOMP , JUMLAH)
  • Setiap  Binary  Relationship    1:1,  dimana  Participation  Constraint  keduanya  total,  buatlah suatu relasi gabungan dimana Primary Keynya dapat dipilih salah satu.PEGAWAI (NOPEG, … , NOPRO, …).
  • Setiap  Binary  Relationship  1:1  dan  salah  satu  Participation  Constraintnya  Total,  maka Primary Key pada relasi yang Participation Constraintnya Partial menjadi Foreign Key pada relasi yang lainnya.BAGIAN (NOBAG, … , MANAGER)
  • Setiap  Binary  Relationship  1:1,  dimana  kedua    Participation  Constraintnya  partial,  maka selain kedua relasi perlu dibuat  relasi baru yang berisi Primary Key  gabungan dari Primary Key kedua tipe Entity yang berelasi.PEKERJAAN ( NOPEG, NOPRO, …)
  • Setiap Binary Relationship 1 : N, dimana tipe Entity  yang bersisi N mempunyai  Participation Constraint Total, maka Primary Key pada relasi  yang bersisi 1 dijadikan Foreign Key  pada relasi yang bersisi N.PROYEK (NOPRO,  … ,  NOBAG)
  • Setiap Binary Relationship 1 : N, dimana tipe Entity  yang bersisi N mempunyai Participation Constraint  partial,  buatlah  relasi  baru  dimana  Primary  Keynya  merupakan    gabungan  dari Primary  Key kedua tipe Entity yang berelasi.PEKERJAAN (NOPEG, NOPRO, ……)
  • Setiap Binary Relationship M:N, buatlah  relasi baru dimana  Primary   Keynya merupakan  gabungan dari Primary Key  kedua  tipe Entity yang berelasi.PEKERJAAN (NOPEG, NOPRO, …..)
  • Setiap  Ternary  Relationship,  buatlah    relasi  baru  dimana  Primary  Keynya  merupakan gabungan dari Primary Key ketiga tipe Entity yang berelasi.PEKERJAAN ( NOPEG, NOPRO , NOKOT)
  • Setiap tipe Weak Entity, dibuat suatu relasi yang memuat semua atributnya dimana PrimaryKeynya adalah gabungan dari Partial Key dan Primary Key dari relasi induknya ( identifying owner).TANGGUNGAN (NOPEG, NAMA, ….)
Hasil Transformasi dari  Diagram ER ke database relasional :
Skema Database
  • PEGAWAI         (NOPEG, NAPEG, ALM1, KDPOS, TGLLAH, UMUR,  SUPERVISOR-ID, NOBAG)
  • BAGIAN            (NOBAG, NABAG, LOKASI, MANAGER)
  • PROYEK          (NOPRO, NAPRO, NOBAG)
  • LOKPR             (NOPRO, LOKAPR)
  • PEKERJAAN     (NOPEG, NOPRO, JAM)
  • TANGGUNGAN (NOPEG, NAMA, JNKELT,HUBUNGAN)
Database

Database atau basis data adalah kumpulan data yang disimpan secara sistematis di dalam komputer yang dapat diolah atau dimanipulasi menggunakan perangkat lunak (program aplikasi) untuk menghasilkan informasi. Pendefinisian basis data meliputi spesifikasi berupa tipe data, struktur data dan juga batasan-batasan data yang akan disimpan. Basis data merupakan aspek yang sangat penting dalam sistem informasi dimana basis data merupakan gudang penyimpanan data yang akan diolah lebih lanjut. Basis data menjadi penting karena dapat mengorganisasi data, menghidari duplikasi data, hubungan antar data yang tidak jelas dan juga update yang rumit.
Proses memasukkan dan mengambil data ke dan dari media penyimpanan data memerlukan perangkat lunak yang disebut dengan sistem manajemen basis data (database management system | DBMS). DBMS merupakan sistem perangkat lunak yang memungkinkan pengguna database (database user) untuk memelihara, mengontrol dan mengakses data secara praktis dan efisien. Dengan kata lain semua akses ke basis data akan ditangani oleh DBMS. Ada beberapa fungsi yang harus ditangani DBMS yaitu mengolah pendefinisian data, menangani permintaan pemakai untuk mengakses data, memeriksa sekuriti dan integriti data yang didefinisikan oleh DBA (Database Administrator), menangani kegagalan dalam pengaksesan data yang disebabkan oleh kerusakan sistem maupun disk dan menangani unjuk kerja semua fungsi secara efisien.
Tujuan utama dari DBMS adalah untuk memberikan tinjauan abstrak data kepada pengguna. Jadi sistem menyembunyikan informasi tentang bagaimana data disimpan, dipelihara dan tetap bisa diambil (diakses) secara efisien. Pertimbangan efisien di sini adalah bagaimana merancang struktur data yang kompleks tetapi masih tetap bisa digunakan oleh pengguna awam tanpa mengetahui kompleksitas strukturnya.

Pembagian basis data menurut jenisnya:

Basis data flat-file. Basis data flat-file ideal untuk data berukuran kecil dan dapat dirubah dengan mudah. Pada dasarnya, mereka tersusun dari sekumpulan string dalam satu atau lebih file yang dapat diurai untuk mendapatkan informasi yang disimpan. Basis data flat-file baik digunakan untuk menyimpan daftar atau data yang sederhana dan dalam jumlah kecil. Basis data flat-file akan menjadi sangat rumit apabila digunakan untuk menyimpan data dengan struktur kompleks walaupun dimungkinkan pula untuk menyimpan data semacam itu. Beberapa kendala dalam menggunakan basis data jenis ini adalah rentan pada korupsi data karena tidak adanya penguncian yang melekat ketika data digunakan atau dimodifikasi dan juga adanya duplikasi data yang mungkin sulit dihindari. Salah satu tipe basis data flat-file adalah file CSV yang menggunakan pemisah koma untuk setiap nilainya.
Basis data relasional. Basis data ini mempunyai struktur yang lebih logis terkait cara penyimpanan. Kata "relasional" berasal dari kenyataan bahwa tabel-tabel yang berada di basis data dapat dihubungkan satu dengan lainnya. Basis data relasional menggunakan sekumpulan tabel dua dimensi yang masing-masing tabel tersusun atas baris (tupel) dan kolom (atribut). Untuk membuat hubungan antara dua atau lebih tabel, digunakan key (atribut kunci) yaitu primary key di salah satu tabel dan foreign key di tabel yang lain. Saat ini, basis data relasional menjadi pilihan karena keunggulannya. Beberapa kelemahan yang mungkin dirasakan untuk basis data jenis ini adalah implementasi yang lebih sulit untuk data dalam jumlah besar dengan tingkat kompleksitasnya yang tinggi dan proses pencarian informasi yang lebih lambat karena perlu menghubungkan tabel-tabel terlebih dahulu apabila datanya tersebar di beberapa tabel. Beberapa contoh basis data relasional adalah Microsoft Access, MySQL, Oracle, MS SQL Server dan Postgresql.
Normalisasi
Normalisasi   merupakan  sebuah   teknik  dalam  logika   desain  sebuah  basis  data,  yaitu  mengelompokkan  atribut  dari  suatu  relasi  sehingga  membentuk  struktur  relasi  yang  baik (tanpa redudansi).
Tujuan dari Normalisasi
  • Untuk menghilang kerangkapan data
  • Untuk mengurangi kompleksitas
  • Untuk mempermudah pemodifikasian data
Ketergantungan Fungsional : Atribut Y pada relasi R dikatakan tergantung fungsional pada atribut X (R.X –> R.Y), jika dan hanya jika setiap nilai X pada relasi R mempunyai tepat satu nilai Y pada R
Ketergantungan Fungsional Penuh : Atribut Y pada relasi R dikatakan tergantung fungsional penuh pada atribut X pada relasi R, jika Y tidak tergantung pada subset dari X (bila X adalah key gabungan)
Ketergantungan Fungsional Transitif : Atribut Z pada relasi R dikatakan tergantung transitif pada atribut X, jika atribut Y tergantung pada atribut X pada relasi R dan atribut Z  tergantung pada atribut Y pada relasi R.  ( X  –> Y,    Y  –> Z,  maka     X  –>  Z )
Proses Normalisasi
1. Normalisasi ke-1
Suatu data dikatakan normal pertama jika sudah memiliki karakter berikut ini :
  • Mendefinisikan atribut kunci (key).
  • Tidak ada grup yang berulang.
  • Semua atribut bukan key tergantung pada atribut kunci.
2. Normalisasi ke-2
Suatu data dikatakan normal kedua jika sudah memiliki karakter berikut ini :
  • Sudah memenuhi dalam bentuk normal pertama.
  • Sudah  tidak  ada  ketergantungan  parsial,  dimana  seluruh  field  tergantung  pada sebagian key field.
3. Normalisasi ke-3
Suatu data dikatakan normal jika sudah memiliki karakter berikut ini :
  • Sudah berada pada bentuk normal kedua.
  • Tidak ada ketergantungan transitif (field bukan key bergantung pada field bukan key lainnya).

Tidak ada komentar:

Posting Komentar