Relationship ENTI TY- RELATI ONSHI P DI AGRAM

266 Rekayasa Perangkat Lunak Selain memilih mana yang benar-benar penting bagi sebuah entitas, kita juga harus menentukan mana yang akan menjadi atribut kunci Primary Key. Pada contoh di atas contoh atribut kita dapat dengan mudah menentukan primary key dari entitas yang ada. Contoh Atribut kunci Primary key. : o Entitas Siswa. Misalkan atribut yang dimiliki adalah : NI S nomor induk siswa, nama, alamat, nomor telepon, tempat lahir, dan tanggal lahir. Dari keenam atribut ini, maka yang paling cocok menjadi primary key adalah NI S karena atribut ini yang paling unik. Tidak ada siswa yang memiliki NI S yang sama. Nama masih mungkin sama, tapi NI S tidak. o Entitas Guru. Misalkan atribut yang dimiliki adalah: NI P, nama, alamat, pangkat, nomor telepon, tempat lahir, tanggal lahir, dan bidang keahlian. Atribut yang paling cocok menjadi primary key adalah NI P karena atribut ini yang paling unik. Tidak ada guru yang memiliki NI P yang sama. Sehingga NI P dapat dijadikan pengidentifikasi entitas guru. o Entitas Mobil. Misalkan atribut yang dimiliki adalah: Nomor mesin, nomor rangka, warna, tahun keluar, tipe mesin, dan bahan baker. Di sini ada dua atribut yang unik yaitu nomor mesin dan nomor rangka. Pada kasus ini kita dapat memilih salah satu dari kedua atribut tersebut sebagai primary key. Sebagai panduan, berikut ini merupakan cirri-ciri dari atribut yang dapat dipertimbangkan sebagai identifier candidate key : o Niliainya tidak berubah-ubah o Tidak mungkin berisi nilai null kosong bukan nol o Tidak berisi data nama atau lokasi yang mungkin berubah-ubah.

10.2.3. Relationship

Relationship atau relasi adalah hubungan yang terjadi antara sejumlah entitas. Misalkan dari entitas siswa ada seorang siswa yang memiliki NI S = “GHI 007” dan nama_siswa = “Donny” mempunyai relasi dengan entitas program keahlian dengan kode_program = “RPL” dan nama_program = “Rekayasa Perangkat Lunak”. Relasi di antara kedua entitas mengandung arti siswa tersebut sedang mengambil program keahlian tersebut pada sekolah tertentu. Di unduh dari : Bukupaket.com Rekayasa Perangkat Lunak 267 Gambar 10.20. Relationship. Ramakrishnan and Gehrke 2000 menyebutkan bahwa konsep relationship pada model E-R berbeda dengan konsep relation di dalam model data relasional. Relationship adalah mekanisme yang menghubungkan antara entitas. Dalam implementasi ke dalam DBMS baik entitas maupun relationship akan direpresentasikan dalam bentuk tabel relation. Setiap relationship selalu mempunyai kardinalitas. Kardinalitas atau Derajat Relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas lain pada himpunan entitas yang lain. Pada gambar 10.20 kita sebenarnya dapat melihat sebuah kardinalitas antara himpunan entitas siswa dengan himpunan entitas program keahlian. Siswa dapat berelasi hanya dengan satu entitas pada himpunan entitas program keahlian. Sebaliknya satu entitas pada program keahlian dapat berelasi dengan banyak siswa. Pada gambar tersebut terlihat Donny hanya dapat berhubungan dengan Rekayasa Perangkat Lunak, sedangkan Rekayasa Perangkat Lunak dapat berhubungan dengan Donny dan Joni. Ada beberapa jenis tingkat hubungan kardinalitas antara entitas satu dengan entitas lainnya. Kardinalitas menunjukkan jumlah maksimum entitas pada suatu himpunan entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Secara umum ada tiga bentuk kardinalitas antar himpunan entitas, yaitu : o satu ke satu one to one . Hubungan dengan kardinalitas one-to-one artinya satu anggota suatu entitas set hanya boleh berhubungan dengan satu anggota entitas set yang lain. Hubungan antara entitas set suami dengan istri dapat dikelompokkan dalam hubungan one-to-one.’ Di unduh dari : Bukupaket.com 268 Rekayasa Perangkat Lunak Gambar 10.21. Hubungan one-to-one suami dan istri. o satu ke banyak banyak ke satu one to many many to one . Kardinalitas satu ke banyak dan banyak ke satu dapat dianggap sama karena tinjauan kardinalitas selalu dilihat dari dua sisi. Contohnya adalah pada suatu sekolah mempunyai aturan satu kelas terdiri dari banyak siswa tetapi tidak sebaliknya, yaitu satu siswa tidak dapat belajar pada kelas yang berbeda. Gambar 10.22. Hubungan one-to-many kelas dengan siswa. o banyak ke banyak many to many . Kardinalitas ini cukup rumit untuk dijelaskan namun seringkali kita jumpai. Misalnya hubungan siswa dengan mata pelajaran memiliki kardinalitas many-to-many. Siswa berhak mengambil mempelajari lebih dari satu matapelajaran dan setiap mata pelajaran boleh diambil dipelajari lebih dari satu siswa.

10.3. BASI S DATA RELASI ONAL