• Tidak ada hasil yang ditemukan

BAB II TINJAUAN PUSTAKA

2.7 Model Entity Relationship

Model Entity-Relationship adalah model data konseptual tingkat tinggi untuk perancangan basis data. Model data konseptual adalah himpunan konsep yang mendeskripsikan struktur basis data, transaksi pengambilan dan pembaruan basis data. Model ER adalah data konseptual tak tergantung DBMS dan platform perangkat keras tertentu. Model ER dikemukakan oleh Chen [1976]. Sejak itu, telah memperoleh banyak perhatian dan perluasan. Model ER adalah persepsi terhadap dunia nyata sebagai terdiri objek-objek dasar yang disebut entitas dan keterhubungan (relationship) antar entitas-entitas itu. Konsep paling dasar di model ER adalah entitas-entitas, relationship dan atribut.

Komponen-komponen utama model ER:

a. Entitas (entity), Entitas memodelkan objek-objek yang berada di perusahaan/lingkungan.

b. Relationship. Relationship memodelkan koneksi/hubungan di antara entitas-entitas.

c. Atribut-atribut (properi-properti), memodelkan properti-properti dari entitas dan relationship.

d. Konstrain-konstrain (batasan-batasan) integritas, konstrain-konstrain ketentuan validitas.

2.7.1. Entitas (Entity) dan Himpunan Entitas (Entitas Sets)

Entitas merupakan individu yang mewakili sesuatu yang nyata (eksistensinya) dan dapat dibedakan dari sesuatu yang lain. Sebuah kursi yang kita duduki, seseorang yang menjadi pegawai di sebuah perusahaan

dan sebuah mobil yang melintas di depan kita adalah entitas. Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama membentuk sebuah himpunan entitas (entity sets). Sederhananya, entitas menunjuk pada individu suatu objek, sedang himpunan entitas menunjuk pada rumpun (family) dari individu tersebut. Seorang pasien, misalnya akan dimasukkan dalam himpunan entitas pasien. Sedang seorang dokter akan ditempatkan dalam himpunan entitas dokter. Dalam berbagai pembahasan/literature, penyebutan himpunan entitas (yang kurang praktis) ini seringkali digantikan dengan sebutan entitas saja. Karena itu sering ditemui, penggunaan istilah entitas (entity) di sebuah literature sebenarnya menunjuk pada himpunan entitas.

 Kunci Entitas

Sebagaimana model relasional, adalah penting dan berguna untuk memasukkan kunci yang diasosiasikan dengan himpunan entitas. Kunci pada himpunan entitas S, adalah himpunan atribut A. Sehingga tidak ada dua entitas di S yang mempunyai nilai sama untuk tiap atribut di A dan tidak ada subset di A yang dapat menjadi kunci di S, dengan demikian kunci mempunyai property minimal.

2.7.2. Atribut (Atributes/Properties)

Setiap entitas pasti memiliki atribut yang mendeskripsikan karakteristik (property) dari entitas tersebut. Penentuan / pemilihan atribut-atribut yang relevan bagi sebuah entitas merupakan hal penting lainnya dalam pembentukan model ER. Contoh : nim, nama, alamat, kode.

2.7.3. Relasi dan Himpunan Relasi

Relasi menunjukkan adanya hubungan di antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda.

nim = „980001‟ dan nama_mhs = „Ali Akbar‟ (yang ada di himpunan entitas Mahasiswa)

mempunyai relasi dengan entitas sebuah mata kuliah dengan kode_kul=‟IF-110‟ dan nama_kul=‟Struktur Data‟.

Relasi diantara kedua entitas tadi mengandung arti bahwa mahasiswa tersebut sedang mengambil/mempelajari mata kuliah tersebut di sebuah perguruan tinggi yang ditinjau.Kumpulan semua relasi diantara entitas-entitas yang terdapat pada himpunan entitas-himpuan entitas tersebut membentuk himpunan relasi (relationship sets). Sebagaimana istilah himpunan entitas yang banyak sekali disingkat menjadi entitas, istilah himpunan relasi jarang sekali digunakan dan lebih sering disingkat dengan istilah relasi saja.

2.7.4. Kardinalitas/Derajat Relasi

Kardinalitas Relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas relasi merujuk kepada hubungan maksimum yang terjadi dari himpunan entitas yang satu ke himpunan entitas yang lain dan begitu juga sebaliknya.

Kardinalitas di antara dua himpunan entitas (misalnya A dan B) dapat berupa :

a. Satu ke satu (One to One),

setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas begitu juga sebaliknya setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.

b. Satu ke Banyak (one to many),

setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya,

dimana setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.

c. Banyak ke Satu (Many to One)

setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada himpunan entitas B.

d. Banyak ke Banyak (Many to Many)

setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, demikian juga sebaliknya, di mana setiap entitas pada himpunan entitas B dapat berhubungan dengan banyak entitas pada himpunan entitas A.

2.7.5. Jenis-Jenis Kunci (Key)

a. Candidat Key

Sebuah attribute atau lebih yang secara unit mengidentifikasi sebuat record, disebut candidate key. Attribute ini mempunyai nilai yang unik pada hampir setiap recordnya. Fungsi dari candidate key ini adalah sebagai calon primary key.

Contoh candidate-key :

ID_Cus Name NoOfPay Amount

112233 Tim 890 9000

112231 Kate 891 8000

112241 Tyson 895 10000 Candidate Key

Gambar 2.4 : Candidate Key

( Sumber : Yakub. Sistem Basis Data Tutorial Konseptual. Graha Ilmu. Yogyakarta. 2008)

a. Primary Key

Salah satu atrribut dari candidat key dapat dipilih menjadi primary key dengan 3 kriteria sbb :

1. Key tersebut lebih natural untuk dijadikan acuan 2. Key tersebut lebih sederhana

3. Key tersebut cukup uniqe b. Foreign Key

Jika sebuah primary key terhubungan ke table/entity lain, maka keberadaan primary key pada entity tersebut di sebut sebagai foreign key. Misal : Primary Key KodeDosen dari entity Dosen digunakan juga pada field entity KRS, maka keberadaan field KodeDosen pada entity KRS disebut sebagai foreign key.

c. Alternate Key

Setiap atribut dari candidate key yang tidak terpilih sebagai primary key akan dinamakan alternate key. Pada contoh sebelumnya bila untuk primary key dipilih ID_Cus maka alternate key nya adalah No.of Pay

2.7.6. Diagram Entity Relationship(ER)

Penggambaran Model ER secara sistematis dilakukan melalui diagram ER. Notasi-notasi simbolik di dalam Diagram ER yang dapat digunakan adalah:

a. Persegi panjang, menyatakan Himpunan Entitas.

b. Lingkaran/Elips, menyatakan atribut (Atribut yang berfungsi sebagai key digaris bawahi).

d. Garis, sebagai penghubung antara Himpunan Relasi dengan Himpunan Entitas dan Himpunan Entitas dengan atributnya.

e. Kardinalitas Relasi dapat dinyatakan dengan banyaknya garis cabang atau dengan pemakaian angka (1 dan 1 untuk relasi one to one, 1 dan N untuk relasi one to many atau N dan N untuk relasi many to many).

Tahap Pembuatan Diagram ER

Diagram ER selalu dibuat secara bertahap. Paling tidak ada dua kelompok Tahapan yang biasa ditempuh di dalam pembuatan diagram ER, yaitu :

a. Tahap pembuatan Diagram ER awal (preliminary design). Yaitu : 1. Mengidentifikasi dan menetapkan seluruh entity yang terlibat

dalam sistem database tersebut.

2. Menentukan attribute-attribute atau field dari masing-masing entity beserta kunci (key)-nya.

3. Menentukan attribute dari suatu entitas sangat menentukan baik atau tidaknya sistem database yang dirancang, karena attribute ini sangat menentukan nantinya dalam proses relasi. Attribute

merupakan ciri khas yang melekat pada suatu entity, misalnya attribute pada mahasiswa dapat berupa nobp, nama, tempat lahir, tanggal lahir, alamat, nama orang tua, pekerjaan orang tua dan lain-lain. Dari sekian banyak kemungkinan attribute yang ada pada entity mahasiswa, kita dapat menggunakan hanya yang perlu saja.

4. Setelah menentukan attributenya selanjutnya adalah menentukan field kunci. Field kunci adalah penanda attribute tersebut

sehingga bisa digunakan untuk relasi nantinya dan field kunci ini harus bersifat unik. Misalnya pada entity mahasiswa, attribute nobp bisa dijadikan field kunci, karena bersifat unik dan tidak ada mahasiswa yang mempunyai nobp sama.

5. Mengidentifkasi dan menetapkan seluruh himpunan relasi diantara himpunan-himpunan entity yang ada beserta kunci tamu (foreign key)- nya.

6. Setelah menentukan entity dan attribute beserta field kuncinya, maka selanjutnya adalah menentukan entity yang terbentuk akibat adanya relasi antar entity. Misalnya antara entity

mahasiswa dengan entity dosen, terjadi suatu hubungan proses mengajar, maka proses mengajar ini merupakan entity baru. Entity mengajar ini harus kita tentukan juga attribute yang melekat padanya beserta kunci tamu (foreign key). Kunci tamu adalah field kunci utama pada tabel lain, dan field tersebut digunakan juga pada tabel yang satu lagi. Misalnya nobp adalah field kunci dari entity mahasiswa, pada entity mengajar terdapat juga attribute NoBP, maka keberadaan attribute nobp pada entity mengajar disebut sebagai kunci tamu. Proses menentukan

hubungan antar entity juga sangat menentukan kualitas system database yang dirancang.

7. Menentukan derajat relasi untuk setiap himpunan relasi. Setelah semua entity dan attribute yang dibutuhkan terbentuk, maka selanjutnya adalah menentukan derajat relasi antar entity tersebut, apakah satu kesatu, satu ke banyak atau sebaliknya, atau banyak ke banyak. Berhati-hatilah dalam menentukan derajat relasi ini, karena nantinya akan berhubungan dengan proses query terhadap data.

8. Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif (non key).

b. Tahap optimasi Diagram ER (final design).

Dokumen terkait