MODEL DATA ENTITY-RELATIONSHIP
Model data Entity-Relationship (ER) adalah suatu model jaringan yang
menggunakan susunan data yang disimpan dalam sistem secara abstrak, yang menekankan pada struktur-struktur dan relatioship data. Biasanya model ER ini digunakan oleh profesional sistem untuk berkomunikasi dengan pemakai eksekutif tingkat tinggi dalam sebuah organisasi seperti wakil direktur, manajer yang pada umumnya tidak tertarik pada pelaksanaan operasional sistem sehari-hari. Pemakai ini cenderung lebih tertarik pada data apa saja yang dibutuhkan oleh bisnis mereka?. Bagaimana data tersebut saling berrelasi? Siapa yang diperkenankan mengakses data. Mode ER juga menguntungkan bagi profesional sistem, karena model ER meMperlihatkan hubungan antara data store yang ada
pada Data Flow Diagram (DFD).
Model data ER dibangun berdasarkan persepsi dari dunia nyata yang
mengandung himpunan dari objek-objek yang disebut entitas dan hubungan
antara objek-objek tersebut. Model ER ini digunakan untuk memfasilitasi perancangan basis data dari sebuah skema organisasi, dengan mentransformasi kebutuhan suatu basis data dari suatu organisasi ke dalam bentuk skema konseptual yang akan menghasilkan struktur logika dari suatu basis data. Setiap objek yang terbentuk di dalam suatu organisasi bersifat unik. Hal ini tampak dari atribut-atribut yang dimiliki oleh objek–objek tersebut.
Contoh :
KRS mempunyai atribut NPM , Kd_mK , Mt_kuliah, SKS. Kelas, Sem.
Untuk menggambarkan proses pembuatan model ER dicontohkan dengan hubungan antara beberapa entitas seperti KRS merupakan relasi yang menghubungkan Mahasiswa dengan setiap MATAKULIAH yang diambil.
Struktur logik dari sebuah basis data secara grafik digambarkan pada gambar 1. yang terdiri dari beberapa komponen.
MAHASISWA MENGAMBIL MATAKULIAH NPM
NAMA ALAMAT
TGL_LHR KOTA
KD_MK MT_KULIAH SKS
SEM
KELAS
M N
Gambar 1.
1. Konsep Dasar Model ER
Konsep dasar dari model ER terdiri dari : Entitas, Atribut, Relationship.
1.1. Entitas
Sebuah entitas adalah suatu objek yang dapat dibedakan dengan objek lainnya. Sebagai contoh, setiap mahasiswa yang belajar di suatu Universitas adalah sebuah entitas begitu juga dengan objek lain yang berhubungan dengan Universitas seperti Dosen, Mata Kuliah, Nilai dan sebagainya.
Entitas dapat merupakan objek dalam bentuk phisik (nyata) dan dapat merupakan objek dalam bentuk konsep (abstrak) seperti terlihat pada tabel 1.
Tabel 1. Contoh Entitas dalam bentuk Phisik dan Konsep
Phisik Konsep
Entitas memiliki sejumlah atribut, dan dari beberapa atribut yang dimiliki oleh entitas, ada yang bernilai unik. Atribut tersebut digunakan untuk
mengidentifikasi suatu entitas . Notasi yang digunakan adalah Rectangle (Kotak)
Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama membentuk himpunan entitas. Contoh seorang mahasiswa akan dimasukan dalam himpunan entitas, sedangkan pelanggan akan dimasukan kedalam himpunan pelanggan.
Dalam beberapa pembahasan, penyebutan Himpunan Entitas dianggap kurang praktis, sehingga diganti dengan sebutan Entitas saja. Masing-masing tipe entitas dalam ER diberi nama yang mewakili satu kelas/set.
Contoh:
Semua Mahasiswa atau Mahasiswa dengan entitas Andini, Komang,
Suryo dan lain-lain
Semua Dosen atau Dosen dengan entitas Windi, Kurniawan,Fristy dan
lain-lain
Semua MATAKULIAH atau MATAKULIAH dengan entitas Matematika 1,
P.Kewiraan, Pengantar Basis Data dan lain-lain.
1.2. Atribut
menjelaskan entitas. Notasi yang digunakan adalah Ellips , seperti terlihat pada gambar 2.
Contoh :
Entitas : Mahasiswa
Atribut : NPM,NAMA,ALAMAT,KOTA,TGL_LHR,TELP
Entitas : DOSEN
Atribut : Kd_dosen,Na_dos, Alamat,JK,Telp
Entitas : MATAKULIAH
Atribut : Kd_mk, Mt_Kuliah,SKS
MAHASISWA NPM
NAMA
ALAMAT
TGL_LHR
KOTA
TELP
Gambar 2. Entitas MAHASISWA dan Atribut-atributnya
Setiap atribut memiliki kumpulan nilai yang disebut dengan Domain.
Sebagai contoh : Andre, Raja, Ria, Soraya adalah kumpulan nilai dari atribut NAMA pada entitas MAHASISWA.
Atribut menunjukkan fungsinya sebagai pembentuk karakteristik yang melekat pada setiap entitas. Disamping penamaan yang unik berdasarkan fungsinya, atribut–atribut dapat dibedakan berdasarkan sejumlah pengelompokannya.
1.3. Relationship
Relationship merupakan hubungan yang terjadi antar satu entitas atau lebih yang dinotasikan dengan Diamond. Misalkan suatu perguruan tinggi untuk mengetahui mata kuliah apa saja yang diambil oleh setiap mahasiswanya. Hal ini menuju pada suatu relationship (yang disebut MENGAMBIL) antara entitas Mahasiswa dengan matakuliah yang dapat digambarkan pada gambar 3.
MAHASISWA MENGAMBIL MATAKULIAH
M N
Pada gambar 3. menunjukan relationship banyak (M) ke banyak (N) yang artinya setiap mahasiswa dapat mengambil satu atau lebih matakuliah pada entitas Matakuliah dan setiap matakuliah dapat diambil oleh satu atau lebih mahasiswa.
Seperti sebuah entitas, relationship juga mungkin memiliki atribut atau sifat yang membedakannya dengan relationship lainnya. Misalkan suatu Perguruan Tinggi ingin mencatat semester berapa seorang mahasiswa mengambil tiap matakuliah yang ditawarkan. Jadi gambar 3. dapat diperbaiki seperti pada gambar 4. berikut ini.
MAHASISWA MENGAMBIL MATAKULIAH
M N
SEM
Gambar 4. Relationship MENGAMBIL dengan atribut SEM
Relationship MENGAMBIL antara entitas MAHASISWA dengan entitas MATAKULIAH menghasilkan entitas baru, yaitu misalnya diberi nama KRS. Kumpulan semua relationship diantara entitas–entitas yang terdapat pada himpunan entitas tersebut membentuk himpunan relationship.
2. Diagram Entity Relationship
DASAR ARTI Notasi
Entitas
Weak Entity (Entitas Lemah)
Relationship
Identifying Relationship
Gerund
Atribut
Atribut Kunci Utama
Atribut Multivalue
Atribut komposisi
Atribut derived / turunan
DASAR ARTI Notasi
Derajat Relatinship
Unary
Binary
Ternary
Kardinalitas Relationship
1 1
Satu ke satu
1 M
Satu ke banyak
N M
Banyak ke banyak
2.1. Tipe Entitas
Pada umumnya entitas yang digunakan dalam diagram ER adalah strong
entity atau entitas yang kuat, dimana keberadaannya tidak tergantung pada entitas lainnya Tetapi pada kenyataannya pembuatan model ER adakalanya
melibatkan weak entity (entitas yang lemah) atau Agregasi.
2.1.1. Entitas Kuat
Entitas ini tidak memiliki ketergantungan dengan entitas yang lainnya, masing– masing dapat berdiri sendiri. Contohnya Entitas Mahasiswa, Dosen, Matakuliah. Gambar 6.7. berikut ini menggambarkan entitas kuat.
MAHASISWA Nama
NPM
Alamat
Kota
MATAKULIAH Mt_kuliah
Kd_mk sks
a. b.
MAHASISWA AMBIL MATAKULIAH
M N
c.
Gambar 7.a. Entitas kuat Dosen b. Entitas kuat Matakuliah c. Diagram ER untuk Entitas Dosen dengan Entitas matakuliah
2.1.2 Entitas Lemah
Entitas ini muncul karena ketergantungannya pada sebuah relationship terhadap entitas lain. Karena sifat ketergantungannya entitas ini dapat memiliki ataupun tidak memiliki sebuah kunci atribut. Sebuah entitas lemah dapat
terbentuk untuk melengkapi entitas kuatnya yang memiliki Multivalue Attribute
DOSEN Nm_dos
Kd_dos
Alamat
Anak
a.
DOSEN Nm_dos
Kd_dos Alamat
ANAK Nm_anak
1 M
Punya Punya
b.
Gambar 8. a.Melengkapi ( dari Multivalue Attribute)
b. Diagram ER untuk Entitas lemah dari Multivalue Attribute ANAK
MAHASISWA AMBIL MATAKULIAH
M N
Mt_kuliah
Kd_mk sks
Nama
NPM
Alamat
Kota
NPM
Kd_mk Sem
Kls_ambil
KRS
MAHASISWA
a. Relationship Banyak Ke Banyak antara entita MAHASISWA dengan MATAKULIAH b. Diagram ER untuk Entitas lemah dari atribut komposisi
2.1.3. Entitas Agregasi
Sebuah relasi terbentuk tidak hanya dari entitas tapi terkadang juga mengandung unsur dari relasi yang lain. Jika terjadi hal demikian dapat diakomodasi dengan Agregasi yang menggambarkan sebuah himpunan relasi yang secara langsung menghubungkan sebuah himpunan entitas dengan sebuah himpunan relationship dalam diagram ER yang mengandung unsur agregasi diperlihatkan pada gambar 10 berikut ini.
MAHASISWA MATAKULIAH
Dari gambar 10 di atas, dapat dilihat ada beberapa himpunan relasi yang saling berhubungan dengan suatu entitas yaitu pertama ; Himpunan relasi MAHASISWA dengan MATAKULIAH berelasi ‘PUNYA’ dengan entitas NILAI , dan kedua ; himpunan relasi DOSEN, MATAKULIAH dan RUANGAN berelasi ‘ISI’ dengan entitas Nilai.
2.2. Tipe Atribut
Ada beberapa tipe atribut yang perlu diperhatikan dalam penggambaran model ER, yaitu Atribut kunci, single value (attribute atribut bernilai tunggal),
multivalue attribute (atribut bernilai banyak/jamak ), composite attribute (atribut
komposit ) dan derived attribute (atribut turunan).
Untuk membedakan atribut kunci dengan atribut lainnya, maka nama/label atribut diberi garis bawah, seperti contoh pada gambar 11.
MAHASISWA NPM
NAMA ALAMAT
TELP
TGL_LHR KD_JUR
Gambar 11. Notasi Atribut Kunci
Gambar 11,
Menjelaskan contoh dari 4 tipe dari atribut kunci, yaitu :
Kunci kandidat : NPM,NAMA+TGL_LHR, Kunci utama : NPM
Kunci alternatif : NAMA+TGL_LHR Kunci asing : KD_JUR
2.2.1. Atribut Bernilai Banyak dan Bernilai Tunggal
Banyak atribut yang memiliki satu nilai tunggal pada suatu entitas tertentu, atribut yang demikian disebut atribut bernilai tunggal (Single Value Attribute). Contohnya atribut Tgl_lhr, TELP, dll pada entitas mahasiswa, atribut KD_MK pada entitas MATAKULIAH. Ada juga atribut yang memiliki sekelompok nilai yang disebut atribut bernilai banyak (Multi Value attribute). Contoh atribut HOBBY pada entitas Mahasiswa .
MAHASISWA NPM
NAMA
ALAMAT
TGL_LHR
HOBBY
TELP
Gambar 12. Notasi Atribut bernilai banyak HOBBY dan atribut bernilai tunggal
2.2.2. Atribut Atomik dan Komposit
Suatu atribut mungkin terdiri dari beberapa atribut yang lebih kecil atau sub-sub atribut yang lebih sedehana yang disebut dengan atribut komposit. Contoh Atribut NAMA dapat terdiri dari NAMA_DEPAN, NAMA_TENGAH, NAMA_BLK. Tetapi jika dalam penerapan pengolahan datanya tidak ada aktifitas yang melibatkan sub-sub atribut tersebut, maka atribut tidak perlu diuraikan menjadi atribut komposit.
Sedangkan ada juga atribut yang tidak dapat dibagi kedalam sub-sub atribut disebut dengan atribut atomik atau atribut simple. Contoh dari atribut sederhana ini yaitu Jenis Kelamin , SKS, Sem dan lain-lain
Penggambaran atribut bernilai komposit pada dilihat pada gambar 13. berikut ini.
NAMA
NAMA_DEPAN NAMA_TENGAH NAMA_BLK
Gambar 13. Notasi Atribut komposit NAMA
2.2.3. Atribut Turunan
MAHASISWA
TGL_LHR UMUR
Gambar 14. Notasi Atribut Turunan UMUR
2.3. Tipe Relationship
Dalam pembentukan suatu perancangan basis data seorang perancang harus melihat kompleksitas dari suatu organisasi yang akan dikembangkan rancangan basis data-nya sehingga perancang akan mengetahui relasi apa saja yang akan digunakan atau derajat relasi beserta batasan-batasan relasi dan kardinalitas relasi atau banyaknya keterhubungan yang akan digunakan
2.3.1. Derajat Relasi
Derajat relasi ini terdiri dari sejumlah entitas yang saling berhubungan di dalam satu relasi. Seperti contoh relationship MENGAMBIL pada gambar 3. atau 15. adalah relationship berderajat dua, karena ada dua entitas yang saling berelasi yaitu : mahasiswa dan MATAKULIAH.
MAHASISWA MENGAMBIL MATAKULIAH
M N
Gambar 15.
Relationship MENGAMBIL antara Entitas MAHASISWA dengan MATAKULIAH
Ada tiga jenis derajat relasi yang sering digunakan dalam Diagram ER, yaitu : Unary (berderajat satu), Binary (berderajat dua), Ternary (berderajat tiga). Relationship yang berderajat lebih tinggi mungkin saja ada, tetapi relationship ini jarang digunakan dalam praktek. Contoh-contoh relationship ini dapat dilihat pada Gambar 6.16. berikut ini.
DOSEN KOORDINIR
KD_DOS
KD_PEM
M
1
DOSEN MENGAJAR MATAKULIAH
M
N
Gambar 16.b. Relasi Berderajat 2
DOSEN MENGAJAR MATAKULIAH
M N
RUANG N
Gambar 16.c. Relasi Berderajat 3
Relationship Berderajat Satu yang sering disebut dengan relationship rekursif merupakan relationship yang menghubungan hanya satu entitas saja. Pada gambar 16.a. relationship KOORDINIR menunjukan relationship satu ke banyak, yang artinya satu dosen dapat membimbing atau mengkoordinir beberapa dosen yang berada dalam tanggung jawabnya.
Relationship Berderajat Dua merupakan relationship yang menghubungkan dua entitas. Relationship ini yang paling umum digunakan pada pembuatan model data. Gambar 1.b. menunjukan bahwa relationship MENGAJAR dengan notasi banyak ke banyak, artinya bahwa seorang dosen dapat mengajar lebih dari satu matakuliah dan satu matuliah dapat diajarkan oleh beberapa dosen.
Sedangkan Relationship Berderajat Tiga merupakan relationship yang menghubungkan tiga entitas secara bersama. Pada gambar 16.c. Relationship MENGAJAR menghubungkan entitas DOSEN yang mengajar MATAKULIAH pada RUANG yang telah ditentukan. Masing-masing entitas berpartispasi banyak ke banyak.
2.3.2. Kardinalitas Relasi
2.3.2.1. Kardinalitas Satu Ke Satu
Sebuah entitas A diasosiasikan satu pada entitas B dan entitas B diasosiasikan satu pada entitas A.
Model semantik dari relasi antara entitas PEGAWAI dengan KANTOR CABANG
Gambar 17., menjelaskan seorang pegawai ditunjuk hanya dapat memimpin satu kantor cabang dan sebaliknya satu kantor cabang hanya dipimpin oleh satu orang pegawai, tetapi tidak semua pegawai memimpin kantor cabang. Hubungan antara entitas PEGAWAI dengan KANTOR CABANG di perlihatkan pada gambar 6.18. Diagram ER berikut ini.
PEGAWAI MEMIMPIN KANTOR_CABANG
1 1
NIP No_cab
Gambar 18. Kardinalitas satu ke satu
2.3.2.2. Kardinalitas Satu Ke Banyak
Sebuah entity A diasosiasikan dengan sejumlah entity B, tetapi entity B dapat diasosiasikan paling banyak satu entity A.
D1
Nilai Atribut Entitas Dosen KoordinirRelasi MatakuliahEntitas Atribut Nilai
Kd_dos
Model semantik dari relasi antara entitas DOSEN dengan MATAKULIAH
Gambar 19., memperlihatkan bahwa seorang dosen dapat mengkoordinir atau mengasuh lebih dari satu matakuliah. Tetapi satu matakuliah hanya dapat dikoordinir oleh satu orang dosen. Untuk menggambarkan kardinalitas relasi antara entitas DOSEN dengan MATAKULIAH dapat dilihat pada gambar 20. berikut ini.
DOSEN Koorninir MATAKULIAH
1 M
Kd_dos Kd_mk
Gambar 20. Kardinalitas satu ke banyak
Seorang Dosen dapat mengkoordinir beberapa matakuliah
Suatu entitas A dapat diasosiasikan dengan paling banyak sebuah entitas B, tetapi entity B dapat diasosiasikan dengan sejumlah entitas di A.
P1 Nilai Atribut Entitas
Pegawai
Model semantik dari relasi antara entitas PEGAWAI dengan DEPARTEMEN
Gambar 21. menyatakan seorang pegawai hanya bekerja pada satu departemen saja, tetapi satu departemen dapat memilki beberapa pegawai. Untuk meng- gambarkan kardinalitas relasi antara entitas PEGAWAI dengan DEPARTEMEN ditunjukkan pada gambar 6.22. di bawah ini.
PEGAWAI M Kerja DEPARTEMEN 1
NIP Kd_dep
Gambar 22. Kardinalitas banyak ke satu Banyak pegawai bekerja pada satu departemen
Suatu entitas A dapat diasosiasikan dengan sejumlah entitas B dan entitas B dapat diasosiasikan dengan sejumlah entitas di A.
N1 R1 Nilai Atribut Entitas
Dosen MengajarRelasi
Entitas
Gambar 23. Model semantik dari relasi antara entitas DOSEN dengan MATAKULIAH
Gambar 23. menyatakan seorang dosen dapat mengajar lebih dari satu matakuliah pada setiap semesternya, begitu juga pada setiap semester matakuliah yang sama dapat diajarkan oleh lebih dari satu dosen, sebagai contoh dosen Tuti mengajar SIM (Sistem Informasi Manajemen) dan SBD (Sistem Basis Data) , sedang matakuliah SBD pada satu semester diajar oleh dosen Tuti, Indah, Inda. Untuk menggambarkan kardinalitas relasi antara entitas DOSEN dengan MATAKULIAH ditunjukkan pada gambar 24. di bawah ini.
DOSEN AJAR MATAKULIAH
M N
SEM Kd_mk
Kd_dos
Gambar 24. Kardinalitas banyak ke banyak
Seorang dosen mengajar banyak matakuliah dan satu matakuliah diajar oleh banyak dosen
Batasan relasi menjelaskan apakah keberadaan suatu entitas tergantung pada entitas lain melalui suatu relasi.
Ada 2 tipe batasan relasi yakni Total Participation (partisipasi total) dan Partial
Participation (partisipasi sebagian).
2.3.3.1. Partisipasi Total
Suatu entitas disebut dengan berpartisipasi total, jika keberadaan entitas tersebut sangat bergantung pada keberadaan entitas lain. Contoh entitas Dosen keberadaan tergantung pada keberadaan entitas Matakuliah dan sebaliknya artinya, jika ada seorang dosen maka harus ada matakuliah yang diajarkan, begitu pula sebaliknya adanya entitas matakuliah harus ada dosen yang mengajar matakuliah tersebut.
DOSEN AJAR MATAKULIAH
M N
Kelas
Mt_kuliah Nm_dos
Kd_dos Kd_mk
sks Alamat
SEM
Gambar 25. Partisipasi Total pada Dosen yang mengajar Matakuliah
2.3.3.2. Partisipasi Sebagian
Suatu entitas dikatakan berpartisipasi sebagian jika entitas tersebut tidak bergantung dengan keberadaan entitas lain tetapi berhubungan satu sama lain. Contoh Tidak semua dosen menjadi koordinator sesama dosen.
DOSEN
M Nm_dos
Kd_dos
Alamat
Kd_pem
Koordinir
1