Anda di halaman 1dari 31

PEMODELAN DATA

1.1 PENDAHULUAN

Data (bahasa Latin : datum = facts), sekarang berkembang sehingga tidak saja
mencakup realita tetapi juga ide. Sehingga data dapat didefinisikan sebagai deskripsi
(yang tidak akan pernah bersifat "complete" ) tentang : fenomena dan ide.
Data sesuai dengan cara persepsi tertentu, direkam dengan cara tertentu. Fenomena
dan ide dapat mencakup : "event" ( kejadian/ peristiwa ), "object"/ "things" ( beserta
atributnya ) dan "concept".

Berdasarkan arti katanya, model dapat diartikan sebagai :


 Simulation, yaitu peniruan ( sebagian ) katakteristik
 realization : dari suatu konsep
 prototype/ ideal/ standard : patokan untuk evaluasi
Ketiganya dapat dijumpai dalam model data :
 meniru karakteristik tertentu dari "real-world" yang direpresentasikannya
 ada aturan aturan tertentu yang selalu berlaku untuknya
 berfungsi sebagai pola dan kerangka bagi data ( dan proses terhadap data )

Dari arti per kata di atas, maka dapat diartikan bahwa data model adalah :
 sesuai konteks representasi/ organisasi/ manipulasi di dunia informatika maka :
model data menyediakan dasar konseptual dan sekaligus "tools"
 secara definitif :
o model mengenai data yang menyediakan cara interpretasi
o alat abstraksi sehingga kita dapat melihat "hutan" nya, bukan "pohon" nya

1
1.2 DATA MODEL

Sebuah model adalah proses abstraksi yang menyembunyikan rincian yang


berlebihan. Pemodelan data digunakan untuk mewakili entitas kepentingan dan
hubungan data dalam database.
Data Model adalah kumpulan konsep yang dapat digunakan untuk menggambarkan
struktur Database yang menyediakan sarana untuk mencapai abstraksi dari kebutuhan
yang terdefinisi.

Jenis Data Model dapat dikelompokkan sebagai berikut :


 High Level-konseptual Data Model : Yaitu pemodelan data tingkat tinggi yang
merepresentasikan kebutuhan dari pengguna. Model Data Konseptual memberikan
konsep yang lebih dekat dengan cara pengguna melihat data.
 Low Level -Fisikal Data Model : Memberikan konsep yang menjelaskan rincian
tentang bagaimana data disimpan dalam model komputer. Low level Data Model
hanya untuk spesialis Komputer bukan untuk End User.
 Representation – Logical Data model : adalah model data antara High level dan
dan Low level data model. Dalam Logical Data model ini disediakan konsep yang
dapat dipahami oleh End User tetapi tidak terlalu jauh dari cara data
diorganisasikan dalam komputer.

TABEL 1. LEVEL MODEL DATA

Level Orientasi
KONSEPTUAL "representativeness"
LOJIKAL tatanan proses / dbms
FISIKAL tatanan sebenarnya

2
Gambaran dari tiga level model data di atas adalah sebagai berikut :

Gambar 1. Tiga level model data

Contoh dari jenis model data di atas adalah sebagai berikut :

TABEL 2. JENIS PEMODELAN DAN LEVELNYA

model data Keterangan


Entity-Relatinship ( Chen ) Konseptual
Infological Konseptual
Functional data model Konseptual
Binary Konseptual-lojikal
Semantic Net Konseptual-lojikal
Relasional ( Codd )  Berbasis Lojikal
Record
Object Oriented Model Lojikal
Network ( CODASYL - ANSI )  lojikal agak fisikal
Berbasis Record
Hierarchical ( IMS )  Berbasis lojikal agak fisikal
Record
Unifying Fisikal
Frame memory Fisikal

Konsep konsep yang relevan dengan pemodelan data diantaranya :


 abstraksi
 teori himpunan
 teori relasi dan pemetaan
 teori graph

3
1.2.1 Abstraksi

Pengertian umum Abstraksi :


ability to hide detail and concentrate on general, common properties of a set
of objects
digunakan dalam dunia komputer/ informatika secara luas karena dapat :
a. mereduksi kompleksitas
b. membantu pengertian

Menurut Smith ( 1977 ) dan Lockerman ( 1979 ), khususnya dalam dunia pemodelan
data, abstraksi dipergunakan untuk :
a. memperoleh kategori data
b. menggabungkan beberapa kategori menjadi kategori yang lebih umum
c. memberi semantik ( arti / cara interpretasi )

Dua macam abstraksi :


a. generalisasi
b. agregasi
Generalisasi dan agregasi biasanya dipergunakan secara komplementer sehingga
menghasilkan struktur dan kelas.

1.2.1.1 Generalisasi

Salah satu jenis abstraksi yang dipergunakan dalam model data, ada 2 macam :
a. klasifikasi, yaitu generalisasi dari "token" menjadi "type"
b. generalisasi, yaitu generalisasi dari "type" menjadi "type yang lebih umum"

4
Gambaran dari Klasifikasi adalah sebagai berikut :

KENDARAAN

ORANG

UANG

Gambar 2. Klasifikasi “token” menjadi “Type”

Contoh data Generalisasi dapat dilihat dalam table berikut :

TABEL 3. GENERALISASI DARI TYPE KE TYPE YANG LEBIH UMUM

Tipe tipe yang lebih umum


PEGAWAI
PELAJAR ORANG
WIRASWASTAWAN
KOMPOR
PANCI ALAT RUMAH TANGGA
GAYUNG
TRUCK
SEDAN KENDARAAN BERMOTOR
BIS

5
Cara penggambaran generalisasi yang umum adalah sbb :
ORANG KENDARAAN
BERMOTOR

PEGAWAI PELAJAR WIRASWASTA TRUK JEEP SEDAN BIS

Gambar 3. Gambaran Generalisasi

contoh lain yang agak rumit :


MAJIKAN ORANG

MAJIKAN MAJIKAN
BURUH
PERUSAHAAN PERORANGAN

Catatan : "properties" (sifat-sifat) diwariskan berlawanan arah dengan "arah


generalisasi". Konsep ini dikenal dengan sebutan "inheritance".

1.2.1.2 Agregasi
Agregasi memiliki karakteristik :
1. konstruksi suatu token dari unsur propertiesnya disebut faktual ( atau extensional ).

AMIR 29 Jl Jambu 12
Bandung

Gambar 4. Agregasi

2. konstruksi suatu tipe dari unsurnya disebut sebagai definitional ( atau intensional ).

6
KENDARAAN
ORANG BERMOTOR

Nama Umur Alamat Nomor Nomor Nomor Merk


Polisi Rangka Mesin

1.2.2 Himpunan
Karakteristik Himpunan adalah :
 Himpunan merupakan koleksi objek yang diidentifikasikan secara baik ( mungkin
ditandai dengan suatu "syarat keanggotaan" ), contoh :
himpunan bernama H mempunyai aggota bilangan 1, 2 dan 4
ditulis secara matematis : H = { 1, 2, 4 }

himpunan bernama S mempunyai anggota semua bilangan ganjil yang lebih kecil
dari 20 ditulis secara matematis : S = { x | x bilangan ganjil dan x < 20 }

 ada 2 sifat himpunan, sekaligus merupakan cara untuk menyatakan suatu


himpunan :
extension : melalui daftar anggotanya
intension : melalui syarat keanggotaannya

Konsep dalam himpunan :

1. himpunan bagian dan himpunan super :

Himpunan Himpunan Himpunan Himpunan


Bilangan Bilangan Pegawai Orang
Ganjil Bulat

2. disjoint : 2 atau lebih himpunan disebut disjoint jika satu dengan yang
lainnya tidak mempunyai irisan
contohnya :

Himpunan Himpunan
Kendaraan Orang

7
akan tetapi, contoh berikut ini bukan himpunan yang disjoint :
kendaraan kendaraan
bermotor tidak bermotor

alat angkut
truk gerobak barang
sedan sepeda

bis otopet

3. teori himpunan klasik tidak cukup menyediakan "tools" untuk pemodelan


data, karena :
a. tidak membahas masalah urutan ( order ).
b. tidak mengganggap penting untuk memperhatikan masalah
duplikasi.

4. "extended set theory" ( teori himpunan yang diperluas ) dapat menyediakan


sarana yang lengkap bagi konsep pemodelan data
a. memperkenalkan konsep urutan
b. objek dasarnya disebut "complex"
c. setiap complex memiliki "data" dan "urutan"
contoh :
complex C mempunyai anggota "Amir", "Hasan" dan "Abu"; yang
terurut menurut abjad, ditulis sbb : C = { Amir2 , Hasan3 , Abu1 }

5. himpunan biasa adalah complex yang semua anggotanya tidak mempunyai


nomor urut.

1.2.3 Relasi Dan Fungsi

Adalah hubungan antara elemen himpunan dengan elemen himpunan yang lain. Cara
paling mudah untuk menyatakan hubungan antara elemen 2 himpunan adalah dengan
himpunan pasangan terurut. Himpunan pasangan terurut diperoleh dari perkalian
kartesian.
Definisi 1: Perkalian kartesian (Cartesian products) antara himpunan A dan B ditulis:
A x B didefinisikan sebagai semua himpunan pasangan terurut dengan komponen
pertama adalah anggota himpunan A dan komponen kedua adalah anggota himpunan
B.
8
A x B = { (x,y) / xA dan yB}

Definisi 2: Relasi biner R antara A dan B adalah himpunan bagian dari A x B.


A disebut daerah asal dari R (domain) dan B disebut daerah hasil (range) dari R.
Definisi 3: Relasi pada A adalah relasi dari A ke A.
Contoh:
1. Misal A = {1,2,3}, B = {a,b}, maka : A x B = {(1,a), (1,b), (2,a), (2,b), (3,a),
(3,b)}
2. Misal P = {2,4,8,9,15}, Q = {2,3,4}. Relasi R dari P ke Q didefinisikan sebagai:
(p,q) R jika p habis dibagi q, maka: R = {(2,2), (4,2), (8,2), (9,3), (15,3), (4,4),
(8,4)}
3. Misal R adalah relasi pada A = {2,3,4,8,9} yang didefinisikan oleh (x,y)R jika
x adalah factor prima dari y, maka: R = {(2,2), (2,4), (2,8), (3,3), (3,9)}

1.2.3.1 Representasi Relasi

Relasi dapat direpresentasikan melalui cara-cara berikut :


1. TABEL : Jika relasi disajikan dengan table maka kolom pertama menyatakan
daerah asal dan kolom kedua menyatakan daerah hasil. Contoh : untuk relasi pada
contoh diatas no.2 dan 3
Tabel 1 Tabel 2

9
2. MATRIKS Misal R adalah relasi dari A = {a1,a2, ..., am} ke B = {b1,b2,...,bn}.
Relasi R dapat disajikan dengan matriks M = [mij],

Contoh : Relasi R pada contoh 2 dapat dinyatakan dengan matriks:

3. Graf berarah.Representasi relasi dengan graf berarah adalah merupakan


representasi relasi secara grafis. Tiap elemen himpunan dinyatakan dengan
sebuah titik ( simpul, vertex) dan tiap pasangan terurut dinyatakan dengan busur.
Dengan kata lain jika (a,b) R maka dibuat busur dari simpul a ke simpul b.
Simpul a disebut simpul asal dan simpul b disebut simpul tujuan.
Contoh:
a. Representasi relasi pada contoh 2 adalah :

Gambar 5. Representasi relasi via digraph

b. Representasi relasi pada contoh 3 adalah :

10
Sifat – Sifat Relasi Biner :
 REFLEKSIF : Relasi R pada himpunan A disebut refleksif jika (a,a) R untuk
setiap aA. Contoh: Misal A = {1,2,3,4} dan relasi R dibawah ini didefinisikan
pada A, maka
R = {(1,1), (1,3), (2,1), (2,2), (3,3),(4,2), (4,3),(4,4)} bersifat refleksif.
R = {(1,1), (2,2), (2,3), (4,2), (4,3), (4,4)}
bukan relasi refleksif karena (3,3) R.
 SIMETRIS : Relasi R pada himpunan A disebut simetris jika (a,b) R maka
(b,a)R untuk setiap a,b A.
Contoh: R = {(1,1),(1,2),(2,1),(2,2),(2,4),(4,2),(4,4)}
 TRANSITIF: Relasi R pada himpunan A disebut Transitif jika (a,b) R dan
(b,c)R maka (a,c) R untuk setiap a,b,c A.
Contoh:
a. R = {(2,1),(3,1),(3,2),(4,1),(4,2),(4,3)}
b. Relasi habis dibagi pada bilangan bulat positif.

RELASI N – ARY Adalah relasi yang menghubungkan lebih dari 2 himpunan.


Relasi n-ary mempunyai terapan penting dalam basis data.

Contoh :
Misal NIM = {13598011,13598014,13598015,13598019,13598021,13598025}
Nama = {Amir, Santi, Irawan, Ahmad, Cecep, Hamdan}
MatKul = { Matematika Diskrit, Algoritma,Struktur Data, Arsitektur Komputer}
Nilai = {A,B,C,D,E}

11
Relasi MHS terdiri dari n-tuple (NIM,Nama, MatKul,Nilai} yang disajikan dalam
table berikut:

TABEL 4. CONTOH INSTANCE DARI RELASI N-ARY

1.2.3.2 Fungsi

Definisi : Misal f adalah relasi dari A ke B. f disebut fungsi jika untuk setiap anggota
A direlasikan dengan tepat satu anggota B. Contoh: Misal A = {1,2,3}, B = {u,v,w}
f = {(1,u),(2,v),(3,w)} adalah fungsi
f = {(1,u),(2,u),(3,w)} adalah fungsi.
Fungsi f disebut satu satu / injectif ,jika tidak ada elemen himpunan A yang
mempunyai bayangan yang sama atau untuk setiap a,bA, jika a  b maka f(a)  f(b).
Contoh: f = {(1,w),(2,u),(3,v)}

12
Fungsi f dikatakan pada / onto / surjektif, jika setiap anggota himpunan B adalah
merupakan bayangan dari satu atau lebih anggota himpunan A.
Contoh: f = {(1,w),(2,u),(3,v)}

Fungsi f dikatakan berkoresponden satu – satu / bijektif jika f adalah fungsi satu satu
dan pada.Gambar berikut akan memperlihatkan perbedaan fungsi, fungsi satu – satu,
dan fungsi pada.

Gambar 6. Representasi Fungsi

KOMPOSISI FUNGSI
Misal g adalah fungsi dari himpuan A ke B dan f adalah fungsi dari B ke C. komposisi
f dan g dinotasikan f g adalah fungsi dari A ke C yang didefinisikan oleh:
(f g) (a) = f(g(a))

Contoh: Diberikan fungsi g = {(1,u),(2,u),(3,v)} yang memetakan himpunan


A = {1,2,3} ke B = {u,v,w}, dan fungsi f = {(u,y),(v,x),(w,z)} yang memetakan
B = {u,v,w} ke C = {x,y,z}. Fungsi komposisi dari A ke C adalah:
f g = {(1,y),(2,y),(3,x)}

13
1.2.4 Domain Dan Atribut
Karakteristik domain dan atribut dapat diuraikan sebagai berikut :

1. Domain adalah himpunan nilai data


contoh :
himpunan nilai dari 0 s/d 60000
himpunan deretan karakter sepanjang 25

2. objek atau properties dari objek ( atribut ) mengambil nilai dari domainnya
masing masing, pernyataan ini dapat dianggap sebagai suatu generalisasi
sbb :
integer

Jumlah Jumlah
Umur
Anak Tanggungan

Gambar 7. Generalisasi dalam type data

3. dalam pemodelan data : atribut selalu dikaitkan dengan objek lain

4. beberapa atribut mungkin saling berhubungan sebagai hasil dari proses


agregasi

14
1.3 MODEL ENTITY RELATIONSHIP

Model Entity Relationship (E-R) ini bersifat konseptual, memandang dunia data dari
suatu enterprise tertentu sebagai objek-objek dan keterhubungan diantara objek-objek
tersebut.
Unsur struktural pada model E-R terdiri atas : entity-set, relationship-set , is-a, atribut;
sedangkan unsur kendala terdiri atas : cardinality, integrity-constraint. 
Penggambaran dari diagram model E-R ini menggunakan model Chen, seperti
berikut:

Gambar 8. Diagram E-R

Simbol dalam E-R diagram dapat diuraikan sebagai berikut :

Gambar 9. Simbol dalam E-R diagram

1.3.1 Entity dan Entity-Type/Set

Entity adalah objek yang : mempunyai eksistensi ( baik nyata atau abstrak ), dan
terdefinisikan dengan baik. Sedangkan Entity type atau Entity set adalah himpunan
entity yang sejenis. Karena himpunan, maka setiap anggotanya dapat diidentifikasikan
secara unik. Pada model E-R entity digambar sebagai 4 persegi panjang. 
15
Penentuan Entity type sangat tergantung dari cara generalisasi/ klasifikasi yang
dipilih. 

Contoh : kumpulan objek kendaraan bermotor mempunyai 2 macam cara


pengelompokan, 
terbagi sesuai dengan jenis bahan bakar yang dipakai ⇒kendaraan bensin, kendaraan
solar
terbagi sesuai dengan fungsi dan bentuk ⇒truck, bis, sedan, jip
kedua cara pandang tersebut diatas dapat menghasilkan entity-set yang berbeda 

1.3.2 Relationship Type/ Set

Relationship adalah keterhubungan diantara beberapa entity. Tingkat jumlah entity


pada suatu relationship dapat 2 (binary) atau lebih (n_ary). Pada relationship dapat
mengandung sebuah atau lebih attribute, disebut sebagai descriptive attribute. Pada
dua buah entity set, bisa terdapat lebih dari sebuah relationship yang masing-masing
mempunyai makna berbeda. Relationship set adalah himpunan relationship bertipe
sama. Asosiasi yang terjadi antara entity-set. Biasa digambarkan sebagai diamond
(layang layang). 
Contoh :
entity set : PENDUDUK, MOBIL 
relationship set : mempunyai
gambarnya : 

Gambar 10. Contoh Relationship set

16
Antar 2 entity-set dapat terjadi lebih dari 1 relationship, sebagai contoh misalnya :

Gambar 11. 2 relationship-set antar 2 entity-set

Ada pula relationship antar sebuah entity, misalnya saja untuk merepresentasikan
hubungan atasan-bawahan antar Pegawai : 

Gambar 12. Relationship antar sebuah entity

Atasan dan bawahan pada skema disebut sebagai ROLE ( peran ).


Relationship juga dapat terjadi antar lebih dari 2 entity-set, contohnya :

Gambar 13. Relationship n-ary

17
1.3.3 Atribut
Merupakan cerminan "property" dari entity-set atau relationship, berbentuk data yang
mempunyai domain nilai tertentu. 
Contoh : entity-set : MAHASISWA mempunyai atribut dan domain sbb : 
Atribut Domain
Entity set : NIM (nomor induk mahasiswa) 5 angka
MAHASISWA Nama Max 30 huruf
Tanggal lahir Tanggal, bulan dan tahun (date)
Entity set : MATA- NMK (nomor mata kuliah) 2 huruf + 3 angka
KULIAH Nama Max 30 huruf
Sks (satuan kredit semester) Numeric > 0 dan <= 6
Relationship : Nilai akhir A, B, C, D atau E
MENGAMBIL

Penggambaran dalam E-R diagram nya adalah sebagai berikut :

Gambar 14. Penggambaran atribut dalam E-R diagram

Suatu atribut biasanya melekat pada entity tertentu. Sebuah atribut yang merupakan
milik dari beberapa entity direpresentasikan dengan melekatkannya pada relationship
dari entity-entity yang membentuknya. Dengan pengertian ini, instances nilai atribut
ini bergantung instances entity-entity tersebut. Atribut jenis ini disebut descriptive
attribute. Atribut Nilai dalam gambar di atas adalah contohnya.
Jenis atribut :
a. Key, yaitu atribut yang digunakan untuk menentukan suatu entity menjadi
unik;
b. Atribut Simple, adalah atribut yang bernilai tunggal;
c. Atribut Multi value, adalah atribut yang memiliki sekelompok nilai untuk
setiap instan entity;
18
Gambar 15. Atribut multi value

d. Atribut Composit, adalah suatu atribut yang terdiri dari beberapa atribut yang
lebih elementer yang mempunyai arti tertentu;

Gambar 16. Atribut Composit

e. Atribut Derivatif, yaitu suatu atribut yang dihasilkan dari atribut yang lain

Gambar 17. Atribut Derivatif

1.3.4 Cardinality

Merupakan sifat dari suatu relationship. Aturan keterhubungan sehubungan dengan


relationship dispesifikasi pada mapping cardinality. Jadi mapping cardinality adalah
suatu aturan yang membatasi jumlah banyaknya keterhubungan suatu entity dari suatu
entity set tertentu terhadap entity dari suatu entity set lain. Secara umum mapping
cardinality dinyatakan dengan maksimum keterhubungan, dapat berupa: one-to-one ,
one-to-many, many-to-one, many-to-many.
Seringkali hanya dicantumkan nilai maksimumnya saja, akan tetapi dianjurkan untuk
juga mencantumkan nilai minimumnya.

19
Contoh :Ada relationship MEMILIKI antar entity-set PENDUDUK dan MOBIL
dengan sifat sbb :
 sebuah MOBIL dimiliki oleh minimum 1 penduduk dan maksimum 1 penduduk 
 seorang PENDUDUK mempunyai minimum 0 dan maksimum banyak ( n )
MOBIL
maka penulisan mapping cardinality nya

Gambar 18. Penulisan mapping cardinality

1.3.5 Entity Lemah ( Weak Entity ) & Id Dependency

Key adalah atribut yang berfungsi sebagai identifikator unik anggota sebuah entity-
set. Misalnya untuk contoh MAHASISWA maka NIM merupakan key. Key sering
digambarkan dengan menggunakan garis ganda. 
Ada entity-set yang tidak mempunyai key, untuk mengidentifikasikannya diperlukan
bantuan atribut dari entity lain yang mempunyai relationship dengannya. Untuk
keperluan ini relationship tersebut harus mempunyai cardinality tertentu. Entity lemah
digambarkan dengan menggunakan garis ganda. 
contoh :
Entity set PASIEN mempunyai atribut Nomor-Pasien, Nama-Pasien, Nomor
Pasien merupakan key.
Entity set KUNJUNGAN-PASIEN mempunyai atribut tanggal dan jam
kunjungan. Merupakan entity lemah, untuk dapat melakukan identifikasi unik
diperlukan bantuan atribut PASIEN, ialah Nomor-pasien. Untuk menandai ini
maka pada relationship dibubuhkan tanda panah.

20
Gambar 19. Weak entity dalam ER diagram


Pada kasus contoh di atas, maka dikatakan bahwa relationship MELAKUKAN
merepresentasikan adanya ID-dependency ( ketergantungan identifikasi atau key )
dari entity set KUNJUNGAN-PASIEN terhadap entity set PASIEN.

Misalkan bahwa ternyata setiap kunjungan pasien dicatat pada suatu buku kunjungan
pasien sedemikian rupa sehingga setiap kejadian kunjungan mempunyai nomor
pendaftaran yang unik. Maka dapat saja dilakukan anggapan bahwa sekarang entity
set KUNJUNGAN PASIEN bukan merupakan weak entity lagi. Dipergunakan atribut
Nomor-Pendaftaran sebagai key pada entity ini. Akan tetapi tetap ada semacam
ketergantungan terhadap entity set PASIEN yang disebut sebagai existence-
dependency, berdasarkan fakta bahwa tidak akan ada kunjungan pasien jika tidak ada
pasien.

1.3.6 Konsep IS-A


Merupakan ekuivalensi dari konsep umum generalisasi dan klasifikasi. Ingat
pewarisan, pada model ER merupakan pewarisan atribut. 
contoh : Perguruan Tinggi :
ada Perguruan Tinggi Negri ada Swasta
PTS dibawah koordinasi wilayah Kopertis tertentu
PTN membina PTS; maka ER diagram yang representative adalah : 

21
Gambar 20. IS-A dalam ER Diagram

1.3.7 Integrity Constraint

Integrity : sifat yang menyatakan tingkat "kebenaran" dalam mewakili dunia nyata. 
Integrity Constraint : pada model data ER diperlukan kendala tambahan diluar aspek
struktur dan cardinality yang harus dipenuhi supaya model data benar benar
mencerminkan dunia nyata.

contoh : dari contoh diatas) 

Ada tambahan syarat dari dunia nyata : bahwa penduduk hanya melempari mobil
yang bukan miliknya. Fakta tersebut tidak terlihat dari unsur struktural, maka harus
ditambahkan constraint/kendala sbb ( misalnya dengan gaya matematis ) :
x PENDUDUK, jika ada y MOBIL dan (x,y) mempunyai, maka (x,y)
melempar .
Biasanya integrity constraint dinyatakan dalam constrain/kendala untuk INSERT,
DELETE dan UPDATE 

22
Supaya dapat menyusun integrity constraint lebih baik jika dibuat dahulu : Entity Life
History atau suatu Model Event ( model yang memperlihatkan hubungan relatif event
sistem dalam sumbu waktu ) 

1.4 PEMBUATAN DIAGRAM E-R

Diagram entity-relationship banyak digunakan pada aplikasi sistem informasi suatu


institusi bisnis untuk mewakili data yang disimpan. Sesuai dengan itu pembangunan
dapat dilakukan terfokus pada data yang terlibat dalam interaksi diantara para pelaku
yang terlibat pada sistem informasi tersebut.
Pendekatan yang lebih memberi kepastian jaminan terkendali adalah pembentukan
model secara bertahap (incremental approach) dari satu demi satu kegiatan interaksi
pelaku. Data yang terlibat diekstraksi berdasarkan kelompok-kelompok data dan
keterkaitan diantara mereka. Perilaku data dapat direpresentasikan bersamaan dengan
pembentukan struktur datanya untuk memenuhi layanan yang diinginkan. Kelompok
data itulah membentuk entity tertentu. Atribut data mewakili properti tertentu dari
entity. Kumpulan atribut ini bila dijamin mempunyai suatu properti yang dapat
membuat unik harus dibentuk menjadi suatu entity.
Selanjutnya ditentukan keterhubungan diantara suatu objek ke objek-objek lain.
Keterhubungan menggambarkan perekatan data membentuk suatu informasi yang
menggambarkan semantik tertentu. Dengan perkataan lain semantik suatu kumpulan
atribut data diekstraksi menjadi objek-objek dan menghubungkan ke objek dimana
rekatan data tersebut merupakan salah satu properti objek lain tersebut. Selain properti
rekatan, perlu dicermati satu atau lebih properti yang dimiliki bersama oleh semua
entity yang membentuk keterhubungan (relationship). Pernyataan dimiliki bersama
berarti dependen terhadap entity-entity yang membentuk keterhubungan. Bila terdapat
properti jenis ini, maka dipastikan properti ini milik keterhubungan.

Setelah itu ditentukan kardinalitas keterhubungan entity-entity melengkapi sifat


keterhubungannya. Kardinalitas pada keterhubungan sederhana (biner) mudah
23
dipahami, karena sebuah nilai kardinalitas menceritakan banyaknya keterhubungan
entity di satu sisi ke entity di sisi yang lain. Keterhubungan lebih kompleks adalah
bila melibatkan lebih dari dua entity, misalnya ternary (keterhubungan tiga entity).
Sebuah takaran kebenaran sederhana dapat diterapkan di sini dimana bila hal ini
terwakili maka cukup untuk menyatakan keterhubungan itu benar. Ada sebuah
pendapat yang menyatakan bahwa permasalahan keterhubungan ternary atau lebih
harus diuji secara keterhubungan biner untuk semua pasangan yang mungkin
sedemikian sehingga harus benar dan bermakna.
Tidak demikian yang dimaksud dengan kecukupan takaran kebenaran sederhana.

1.4.1 Identifikasi Entity dan Relationship

1.4.1.1 Pahami Real world


"real world" dapat dianggap terdiri dari "chain of events", event harus "meaningful"/
"significant" . Pada setiap event terlibat objek objek dunia nyata dan melalui event
terjadi "interaksi" antara objek dunia nyata.
Contoh sederhana :
Event 1 Rekanan memohon menjadi rekanan tetap
Event 2 Perusahaan menentukan rekanan tetap
Event 3 Perusahaan memesan barang dari rekanan

1.4.1.2 Identifikasi entity-set dan klasifikasinya

Pada event diatas terlihat adanya 3 objek dunia nyata yang mempunyai eksistensi
ialah : PERUSAHAAN, REKANAN, dan BARANG. Ketiganya merupakan calon
entity- set.
Jika ingin dibuat sebuah model data ER untuk sebuah perusahaan, maka objek
PERUSAHAAN merupakan objek tunggal. Oleh karena itu tidak perlu diidentifikasi
sebagai entity. Maka hanya didentifikasikan 2 entity-set : REKANAN dan BARANG.
pada event ke 2, untuk entity REKANAN terlihat ada semacam klasifikasi :
REKANAN-TETAP. Dapat digambarkan melalui konsep ISA sbb :

24
Gambar 21. Identifikasi klasifikasi entity-set

Untuk entity BARANG belum terlihat adanya klasifikasi. Akan tetapi biasanya selalu
ada klasifikasi, oleh karenanya harus dicari !
Ada konsep pembendaan dari kejadian, misalnya dalam kasus diatas :
PERMOHONAN, PENENTUAN dan PEMESANAN. Ketiganya boleh saja dianggap
sebagai objek, sehingga mungkin diidentifikasikan sebagai entity-set !

1.4.1.3 Identifikasi relationship-set dan klasifikasinya

Klasifikasi pada BARANG pada umumnya dimodelkan sebagai hirarki : JENIS-


BARANG vs BARANG. Ini menimbulkan identifikasi sebuah relationship dengan
cardinality 1 ke n.

Gambar 22. Identifikasi Relationship-set

Pada event-1 dan event-2 tidak terlihat munculnya relationship, karena tidak
mengakibatkan terjadinya kaitan antar entity. Jika ini dianut maka event nantinya
hanya diwakili ditingkat atribut saja. Akan tetapi jika event ini dianggap cukup
penting, maka dapat dilakukan penerapan konsep pembendaan kejadian sehingga
diperoleh bentuk sbb :

25
Gambar 23. Tahap identifikasi relationship-set

Pada event-3 jelas terlihat adanya kaitan antara entity BARANG dan REKANAN,
oleh karenanya dapat dilakukan identifikasi relationship-set MEMESAN atau
DIPESAN. Kecermatan diperlukan disini untuk mempertanyakan : yang dipesan ke
REKANAN itu BARANG atau JENIS-BARANG ? Perhatikan bahwa pada saat
pemesanan sebenarnya baru dinyatakan JENIS-BARANG yang dipesan !

Gambar 24. Relationship pemesanan oleh rekanan

1.4.1.4 Rules of events

Pada umumnya event selalu mempunyai rules. Misalnya untuk PEMESANAN : harus
dilakukan ke REKANAN TETAP, jika tidak tersedia maka baru boleh memesan ke
REKANAN lain. Atau dapat juga berbunyi : ada JENIS BARANG tertentu yang
harus dipesan ke REKANAN TETAP, ada juga yang tidak harus.
Penterjemahan rule dapat menyebabkan integrity constraint tambahan diluar
cardinality !

26
1.4.2 Identifikasi Integrity Constraint

1.4.2.1 Identifikasi Cardinality

Ada cardinality yang langsung muncul dari hubungan klasifikasi pada suatu objek :
misalnya seperti pada relationship (JENIS-BARANG) - (BARANG)
Pada event-3 : relationship DIPESAN patut dianalisis melalui teori himpunan dan
pemetaan sbb :
pemesanan dapat dilakukan berulang ulang untuk jenis barang yang sama
pemesanan jenis barang yang sama dari rekanan yang sama dapat terjadi lebih

dari satu kali. Misalnya kejadiannya adalah sbb :
Pemesanan ke 1 Ke rekanan 1 Jenis barang 1 dan 2
Pemesanan ke 2 Ke rekanan 1 Jenis barang 1 dan 3
Pemesanan ke 3 Ke rekanan 2 Jenis barang 3 dan 4

dalam bentuk gambar sbb :

Gambar 25. Himpunan dari kejadian pemesanan Barang

perhatikan bahwa ada 2 garis yang berawal dan berakhir dari dan ke titik yang sama
(antara jb1 dan r1). Hal ini tidak sah ! maka cara representasi harus diubah. Karena
memiliki eksistensi maka PEMESANAN harus diidentifikasikan sebagai entity-set.

27
Dapat dipilih salah satu dari bentuk dibawah ini.

atau

Gambar 26. Identifikasi relationship-set

Masih ada keraguan pada penentuan cardinality relationship antara REKANAN


dengan PERMOHONAN dan PENENTUAN sbb :
Apakah REKANAN dapat mengajukan PERMOHONAN lebih dari 1 kali, jika ia
belum saja ditetapkan sebaga REKANAN-TETAP (ditolak ?)
Apakah status sebagai REKANAN-TETAP berlaku “once and forever ?”

1.4.2.2 Identifikasi Integrity Constraint Lain

Biasanya berasal dari "real-world rules" dan hubungan time-dependent antar event
yang tidak dapat direpresentasikan dalam diagram secara langsung.
Sebagai contoh misalnya antara event-1 dan event-2 :
REKANAN yang tidak mengajukan PERMOHONAN menjadi REKANAN-
TETAP tidak mungkin akan ditentukan sebagai REKANAN-TETAP
muncul integrity constraint tambahan sbb : jika ada x anggota REKANAN, y
anggota PENETAPAN, dimana (x,y) anggota DIBUAT, maka harus ada z
anggota PERMOHONAN dimana (x,z) anggota DIAJUKAN.

28
maka untuk sementara bentuk diagram ER adalah sbb :

Gambar 27. Cardinality dalam relationship PERMOHONAN-REKANAN

timbul berbagai argumentasi untuk diagram diatas dilihat dari kacamata


representativeness, misalnya :
bukankah hanya REKANAN TETAP yang mempunyai PENETAPAN ?
akan tetapi jika relationship DIBUAT dipindahkan ke REKANAN TETAP,
bagaimana dengan "sejarah" PERMOHONAN nya ?
jawab : tidak menjadi masalah, karena REKANAN TETAP adalah sub-
himpunan dari REKANAN !

1.4.3 Analisis Atribut, Kamus Data, Identifikasi Entity Lemah dan


Dependency

1.4.3.1 Analisis Atribut dan Kamus Data

Untuk setiap entity tersebut diatas harus dilakukan identifikasi atribut secara lengkap.
Pada metodologi Structured Analysis dan Design yang menjadi sumber adalah Kamus
Data (Data Dictionary). Akan tetapi sering terjadi pula bahwa Kamus Data pun
mendapat koreksi dari skema ER.

29
1.4.3.2 Atribut Key dan Entity Lemah
Dari atribut setiap entity ditentukan yang mana yang dapat menjadi key. Jika ternyata
tidak ada maka entity ybs diidentifikasikan sebagai entity-lemah.
Misalnya untuk kasus diatas :

TABEL 5. IDENTIFIKASI ATRIBUT KEY

Entity atribut key atribut lain


REKANAN #rekanan nama-rekanan, alamat, ...
REKANAN TETAP #rekanan-tetap atau #rekanan nama-rekanan, alamat, ...
REKANAN TIDAK
kode-rekanan nama-rekanan, alamat, ...
TETAP
JENIS BARANG #jenis-barang deskripsi, ....
PERMOHONAN - tanggal-permohonan
- tanggal-penentuan
PENENTUAN
PEMESANAN - tanggal-pemesanan

PERMOHONAN, PENENTUAN dan PEMESANAN ternyata tidak mempunyai


atribut key, maka ketiganya merupakan entity lemah !

1.4.3.3 Identifikasi Dependency

Setiap entity lemah harus terlibat dalam suatu dependency dengan entity kuat.
maka skema ER menjadi sbb :

Gambar 28. E-R diagram hasil pemodelan

30
Perhatikan bahwa cardinality pada relationship yang mengandung dependency harus
one-to-one atau one-to-many dengan "full mapping" pada pihak tanpa tanda panah !

31

Anda mungkin juga menyukai