Pemodelan Database dengan ER Diagram by denikimen

VIEWS: 5,084 PAGES: 12

More Info
									PEMODELAN DATABASE DENGAN ER MODEL
DAN TRASFORMASI MODEL DATA KE DESAIN
                       DATABASE

 Disusun untuk Melengkapi Tugas Mata Kuliah Manajemen Database




                            Oleh:
           Deni Dwi Kurniawan         (0710320138)
           Satriyo Agung ADNP         (0710320160)




 JURUSAN ILMU ADMINISTRASI BISNIS
    FAKULTAS ILMU ADMINISTRASI
         UNIVERSITAS BRAWIJAYA
                       MALANG
                            2010
          Perancangan basis data dengan menggunakan model entity relationship
adalah denganmenggunakan Entity Relationship Diagram (ERD). Terdapat tiga
notasi dasar yangbekerja pada model E-R yaitu : entity sets, relationship sets, dan
attribut.
          Sebuah entiti adalah sebuah ”benda” (thing) atau ”objek” (objek) didunia
nyata yang dapat dibedakan dari objek lainnya. Entity sets adalah sekumpulan
entiti yangmempunyai tipe yang sama. Kesamaan tipe ini dapat dilihat dari
attribut/property yang dimiliki oleh setiap entity. Misal :
          Kumpulan orang yang menyimpan uang pada suatu bank dapat
didefinisikansebagai entity set nasabah.
          Kumpulan orang yang belajar diperguruan tinggi didefinisikan sebagai
mahasiswa.
Entity set dilambangkan dengan bentuk persegi panjang , seperti tampak pada
gambar:




                                      Gambar 1
       Lambang Entity Set Relationship adalah hubungan diantara beberapa entiti.
Relationship set merupakan sekumpulan relasi yang mempunyai tipe yang sama.
Relationship set digambar dengan diamond seperti tampak pada gambar dibawah
ini.




                                      Gambar 2
   Lambang Entity SetAtribut merupakan sebutan untuk mewakili suatu entity.
Atribut dalam ERDdilambangkan dengan bebtuk elips. Seperti pada gambar 5.3




                                      Gambar 3
                                 Lambang Entity Set
Ada beberapa istilah yang harus dipahami sebelum merancang basis data dengan
menggunakan model entity relationship diagram. Diantaranya yaitu ;
1. Superkey
Satu atau lebih atribut (kump atribut) yang dapat membedakan setiap baris
datadalam tabek secara unik.Sebagai ilustasi diberikan tabel mahasiswa berikut :




                                  Table mahasiswa


       Dari tabel tersebut yang memungkinkan menjadi superkey adalah atibut
NIM,atribut NIM dan Nama, atribut NIM dan Alamat, atibut NIM dan Jurusan,
atributNIM, Nama, Alamat dan Jurusan.Atribut Nama tidak bisa menjadi
superkey karena memungkinkan lebih dari 1baris yang memiliki nilai sama.
Demikian pula atribut alamat, atribut jurusan,atribut Nama dan Alamat, Atribut
Nama dan Jurusan, Atribut Alamat dan Jurusanserta Atribut Nama, Alamat, dan
Jurusan.


2. Kandidat Key
       Merupakan kumpulan atribut minimal yang membedakan setiap baris data
dalamtabel secara unik. Untuk bisa menjadi kandidat key, suatu atribut harus
memenuhipersyaratan        sebagai     berikut    :a.Untuk     satu     nilai   hanya
mengidentifikasikan satu baris dalam satu relasi(unik).b.Tidak memiliki subset
yang juga merupakan kunci relasic.Tidak dapat bernilai nullDengan kata lain,
sebuah kandidat key adalah superkey yang paling sedikit jumlahatributnya. Dari
contoh pada superkey dari tabel Mahasisea pada tabel 5.1 yangmemenuhi
persyaratan sebagai kandidat key adalah atribut NIM.


3. Kunci relasi (relation key) kunci utama (primary key)
       Nilai dari kunci relasi harus mengidentifikasikan sebuah baris yang unik
didalamsebuah rekasi. Kunci relasi terdiri dari satu atau lebih atribut-atribut relasi.
Agarmenjadi sebuah primary key, sebuah atribut haruslah memenuhi persyaratan
sebagai kandidat key. Dalam contoh tabel mahaiswa pada pada Tabel 5.1
NIMadalah kunci relasinya.


4. Kunci Alternatif (alternate Key)
          Kunci yang tidak ada didunia nyata, tetapi diadakan dan dijadikan primary
key.Kunci alternatif dibuat ketika tidak ada satu pun atribut dalam sebuah relasi
yangbisa mewakili relasi teresebut, atau ada yang bisa menjadi kandidat key
tetapitidak cukup efektif untuk digunakan sebagai primary key.Sebagai contoh
berikut ini adalah sebuah relasi Hobby ;




Dari tabel kandidat key pada tabel tersebut adalah Nama. Tetapi untuk lebihefektif
mungkin         aja   perancang      basisdata    akan   memberikan      kunci   alternatif
berupakode_hobi. Kode tersebut tidak pernah ada dalam dunia nyata. Karena kita
tidakpernah tahu kalau Hiking tersebut dipilih sebagai kunci utama. Maka
kode_nilaidisebut sebagai kunci alternatif.


5. Komposit Key
Primary key yang terdiri dari lebih dari 1 atribut


6. Foreign Key (FK)
Istilah    Fk     juga   banyak       digunakan     dalam     perancangan.   Sebuah     Fk
adalahsekumpulan atribut dalam suatu rlasi (misal A) sedemikian sehingga
kumpulanatribut ini bukan kunci A tetapi merupakan kunci dari relasi lain.


7. Kardinalitas Pemetaan
Kardinalitas pemetaan atau rasio kardinalitas menunjukan jumlah entity
yangdihubungkan          ke   satu    entity lain    dengan     suatu   relationship   sets.
Kardinalitaspemetaan meliputi :
      Hubungan satu ke satu (one to one) yaitu satu entity dalam A dihubungkan
       dengan maksimum satu entity.
      Hubungan satu ke banyak (one to many) yaitu satu entity dalam
       Adihubungkan     dengan   sejumlah    entity   dalam    entity   dalam   B
       dihubungkandengan maksimum satu entity dalam A.


B. TAHAP PEMBUATAN ENTITY RELATIONSHIP DIAGRAM
  Secara umum ada 2 langkah dalam membuat ERD. Langkah pertama adalah
membuatERD awal untuk mendapat sebuah rancangan database yang minimal
dapatmengakomodasi       kebutuhan     penyimpanan      data      sistem    yang
sedangmempertimbangkan anomali-anomali dan aspek-aspek efesiensi, kinerja,
danflekibilitas.Berikut akan dijelaskan tahap-tahap pembuatan ERD awal. Untuk
lebih memudahkanilustrasi, akan diberikan kasus perancangan basis data dalam
Sistem InformasiAkademik. Adapun langkah-langkahnya adalah sebagai berikut.
1. Mengidentifikai dan menetapkan seluruh himpunan entitas (entity) yang akan
  terlihat.
  Misalnya entitas yang terlihat adalah : Mahasiswa, Dosen, Matakuliah.
2. Menentukan atribut-atribut key dari masing-masing himpunan entitas.
  Untuk entitas Mahasiswa, atribut yang terlibat yaitu : NIM, Nama.,
  Alamat,Jurusan.Untuk entitas Dosen, atribut yang terlibat adalah : NIP, Nama,
  Alamat.Untuk entitas Matakulaih, atribut yang terlibat adalah : Kode_Matakul,
  Nama,SKS.
3. Menentukan PK dari setiap entitas yang ada.
  PK dari entitas Mahasiswa : NIM.PK dari entita Dosen : NIP.PK dari entitas
  Matakuliah : Kode_Matkul.
4. Mengidentifikasi dan menetapkan seluruh himpunan relasi di antarahimpunan
  entitas-himpunam entitas yang ada beserta foreign key-nya


  Dosen dengan mata kuliah berelasi secara langsung dengan relasi
mengajar,yaituu deosen mengajar mata kuliah. Himpunan relasi mengajar antara
Dosen danMata kuliah bisa dilihat pada gambar dibawah ini.
atribut pada gambar diatas ada beberapa atribut yang digaris bawahi yang atribut
NIP pada Entity Dosen dan Kode_Matkul pada Entity Mata kuliah. Atribut yang
diberi garis bawah ganda seperti atribut NIP dan Kode_Matkul pada relasi
Mengajar merupakan Foreign Key.
      Selain Dosen dan Matakuliah yang dihubungkan dengan Relasi Mengajar,
masihada satu Entity yang masih berelasi dalam sistem ini, yaitu Entity
Mahasiswa.Entity Mahasiswa berhubungan dengan relasi Matakuliah sekaligus
beralasidengan dosen, tetapi relasi antara Mahasiswa dengan kedua entity yang
lain saling bekaitan (bersamaan). Mahasiswa mengikuti suatu matakuliah yang
diajarkan oleh seorang dosen. Adi tidak hanya dosennya tetapi langsung dengan
mata kuliahnya secara spesifik. Relasi seperti ini disebut dengan agregasi.
Dimana sebuah entity berelasi dengan yang lain. Jika digambar akan tampak
seperti pada gambar berikut ini :




                                    Relasi agregasi
      Relasi anatara dosen dengan matakuliah memiliki kardinalitas banyak ke
banyakatau many to many, dimana satu dosen dapat mengajar banyak mata kuliah
dan satu mata kuliah bisa diajarkan oleh banyak dosen.Demikian pula relasi antara




                                  Dengan kardinalitas


Mahasiswa dengan RELASI Mengajar yang menghubungkan antara Entity Dosen
dengan Matakuliah, memiliki kardinilitas Banyak ke Banyak. Berikut ini adalah
gambar ERD setelah ditentukan derajat kardinilitasnya.


Penggambaran ERD dapat pula dilengkapi dengan kamus data, sehingga tidak
perludigambarkan semua atributnya dalam gambaran ERD-nya. Cara penulisan
kamus datayaitu dengan menyebutkan Entity diikuti dengan atribut-aributnya.
Misal Entity Dosen akan ditulis sebagai berikut :


      Dosen : { NIP, Nama, Alamat}


      Dalam kamus data NIP diberi garis bawah untuk menambahkan bahwa NIP
merupakan primary key dari entiti Dosen.Setelah          ERD lengkap dengan
kardanilitasnya selesai dibuat.
Langkah selanjutnya yang perlu dipikirkan adalah optimasi dilakukan untuk 3
tujuan yaitu meningkatkan :-Efesiensi-Kinerja-Fleksibilitas


       Untuk meningkatkan efesiensi dan kinerja, dalam optimasi ERD terkadang
diperlukanpemberian kunci alternatif (alternate key) yaitu atribut yang sebenarnya
tidak adadidunia nyata. Tetapi ditambahkan dan dijadikan sebagai primery key.
Sebagai contohdalam relasi hobi, dimana dalam relasi tersebut hanya tersiri dari
nama_hobi.Mengingat panjang data nama hobi cukup banyak, terkadang perlu
dipertimbangkanuntuk menambahkan kode_hobi yang sebenarnya hal ini ada
dalam dunia nyata.Dalam hal pengkodean, ada 3 bentuk pengkodean yang bisa
diberikan yaitu :
       Sekuensial, jenis kode ini diberikan secara urut. Misalnya untuk kode
        pembelian terurut dari 1, 2, 3, dan seterusnya.
       Mnemonic. Jenis kode ini berupa karakter atau angka sebagai simbol.
        Misalnya Ldan P pada jenis kelamain yang aartinya laki-laki dan
        perempuan.
       Blok. Jenis pengkodean ini terdiri dari beberapa bagian, misalnya
        NIM02.11.2341. kode tersebut memiliki 3 bagian yang masing-masing
        memiliki makna tersendiri. Blok pertama 02 bermakna tahun angkatan
        2002. Blok ke 2 berisi kode jurusan yang menggambarkan nomer urutan
        mahasiswa pada tahun dan jurusan tersebut.


       Hal lain yang bisa dilakukan dalam usaha optomasi adalah melakukan
dekomposisi atau pemecahan tabel.
Dalam hal peningkatan fleksibilitas, optimasi dilakukan dengan cara berikut :
    Penambahan atribut. Dengan ditambahkan atribut pada entity/relasi
        diharapkan,entity/relasi ini akan lebih fleksibel penggunaannya. Sebagai
        contoh:     relasi   mengajar jika hanya     memiliki   atribut   NIP   dan
        Kode_Matkul, berarti relasi inihanya berlaku untuk datu periode waktu
        daja. Namun jika ditambahkan atributTahun dan semester, maka relasi ini
        dapat menampung data untuk beberapa periode waktu.
 Pemilihan domain atribut yang lebih luas. Sebagai contoh adalah pemilih
   lebar data untuk atribut tahun. Sebelum tahun 2002, banyak system yang
   yangdibangun dengan rancangan lebar atribut tahun adalah 2 digit.
   Ddengan demikianuntuk tahun 1982 hanya ditulis 82. untuk tahun 1989
   hanya ditulis 98.


 Generelasi. Sebuah contoh kasus generelasi adalah sebagai berikut.
   Diberikan 2entitas Dosen dan Mahasiswa sebagai anggota dalam sistem
   perpustakaan.Masing-masing dari kedua entitas tersebut memiliki atribut
   IdAnggota, Nama,dan Alamat. Jika masing-masing jenis anggota
   direpresentasikan dalam sebuah relasi maka jika ada penambahan jenis
   anggota, misalnya karyawan, maka harus ditambahkan relasi baru. Tetapi
   jika generelasi , seluruh relasi dari anggotaperpustakan dijadikan sebuah
   relasi anggota dengan atriut IdAnggota, Nama, danAlamat dan ditambah
   dengan jenis.



 Perubahan stuktur entitas dari yang berorientasi kolom baris ke orientasi
   baris. Sebagai
   contoh,   sebuah    relasi    sirkulasi   pada   sistem   perpustakaan   yang
   berbentuk,seperti tampak pada tabel berikut.




                                Relasi sirkulasi
TRANSFORMASI MODEL DATA KE DESAIN DATABASE
A. TAHAP IMPLEMENTASI
       Tahap Implementasi merupakan upaya untuk membangun basis data fisik
yang ditempatkan dalam memori sekunder. Adapun langkah-langkah untuk
mengimplementasikan Entity RelationshIp Diagram adalah sebagai berikut :
     -transformasi dari model data yang telah dibuat ke skema basis data sesuai
       dengan DBMS yang dipilih.
     -Diagram ER dan basis data.
     -Entity table-table/file-file data
     -Atribut dan field


Transformasi dasar :
   1. Setiap himpunan entitas akan diimplementasikan sebagai sebuah table2.
       Relasi dengan derajat 1-1 yang menghubungkan
   2. buah himpunan entitas akan direpresentasikan dalam bentuk penambahan
       atribut-atribut relasi ke salah satu tabel yang memiliki kedua himpunan
       entitas.
   3. Relasi dengan derajat 1-N yang menghubungkan 2 buah himpunan entitas
       juga akan direpresentasikan dalam bentuk pencantuman atau pemberian
       atribut key dari himpunan entitas pertama (yang derajat 1) ke himpunan ke
       2 (yang derajat N).
   4. Relasi dengan derajat N-N yang menghubungkan 2 buah himpunan entitas
       akan diwujudkan dalam bentuk table khusus, yang memiliki field tepatnya
       (foreigenkey) yang berasal dari key-key kedua himpunan entitas yang
       dihubungkan.
   5. Relasi tunggal. Derajat 1-1 : penggunaan field key dua kali pada satu table
       dengan nama dan fungsi berbeda.b.Derajat 1-N : dibentuk tabel baru yang
       mendapatkan field dari atribut relasi dariatribut relasi yang ditambah
       dengan atribut key dari himpunan entitasnya.Sebagai contoh akan
       diberikan ER Diagram seperti tertera pada Gambar berikut
                                    ER Diagram


Adapun langkah implementasinya adalah sbagai berikut :
   1. Mengubah entitas menjadi tabel dengan fieldnya adalah atribut dari entitas
       tersebut. Dengan demikian tabel yang berbentuk pada tahap ini adalah :
                 Tabel Dosen, Field-fieldnya : NIP, Nama, Alamat.
                 Tabel Matakuliah, Field-fieldnya : Kode_Matkul, Nama, SKS.
                 Tabel Mahasiswa, Fieldnya-fieldnya : NIM, Nama, Alamat.
                 Tabel Jurusan, Field-fieldnya : KD_Jurusan, Nama.


   2. Mengubah relasi antara entitas dengan derajat kardinalitas banyak ke
       banyak     menjadi   table   baru.   Dari   gambar,    relasi    yang   derajat
       kardinalitasnya banyak ke banyak adalah :
       Relasi      Mengajar,   yang    menghubungkan        antar     Dosen   dengan
         Matakuliah.Relasi ini diubah menjadi tabel Mengajar dengan field :
         NIP, Kode_Matkul.
         Relasi Prasyaratan, yang menghubungkan antara Matakuliah dengan
           Mata kuliah. Relasi ini diubah menjadi tabel Prasyarat dengan field
           :kode_Matkul, Kode_Matkul_Prasyarat
         Relasi Mengikuti, yang menghubungkan antar Mahasiswa dengan
           Relasi Mengajar. Relasi ini diubah menjadi tabel mengikuti dengan
           nilai field : NIM,Kode_Matkul, NIP


        Menambahkan field pada entity yang dihubungkan oleh relasi dengan
derajat satu ke banyak. Dari gambar, relasi yang berderajat satu ke derajat banyak
adalah relasi memiliki yang menghubungkan antar jurusan dengan mahasiswa.
Relasi ini mengakibatkan penambahan field Kode_Jurusan sebagai primary key
dari entity jurusan yang berserajat satu ke entiti mahasiwa yang berderajat banyak.
Dengan demikian tabel mahasiswa memiliki field : Nim, Nama, dan
Kode_Jurusan.


B. TIPE DATA FIELD
Tipe-tipe data field beserta aturan penamaan tertanggung pada DBMS-nya. Secara
umum macam-macam tipe field :
       Data Angka : Numerik atau Alfanumerik.
       Data Numerik : Bilangan bulat (interger) atau Bilangan Nyata (real).
       Data Bilangan Bulat (interger)
        Byte (1 byte)
        Small interger (2 byte)
        Long interger (4 byte)-Data Bilangan Nyata
        Singel (4 byte)
        Double (8 byte)-Data Uang
        Money/currency-Data Teks
        Character (fixed)
        Variable Character (non fixed)-Data Biner
        Blob

								
To top