Topik2 ModelConceptual
Topik2 ModelConceptual
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".
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
Level Orientasi
KONSEPTUAL "representativeness"
LOJIKAL tatanan proses / dbms
FISIKAL tatanan sebenarnya
2
Gambaran dari tiga level model data di atas adalah sebagai berikut :
3
1.2.1 Abstraksi
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 )
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
5
Cara penggambaran generalisasi yang umum adalah sbb :
ORANG KENDARAAN
BERMOTOR
MAJIKAN MAJIKAN
BURUH
PERUSAHAAN PERORANGAN
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
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 }
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
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) / xA dan yB}
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],
10
Sifat – Sifat Relasi Biner :
REFLEKSIF : Relasi R pada himpunan A disebut refleksif jika (a,a) R untuk
setiap aA. 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.
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:
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,bA, 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.
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))
13
1.2.4 Domain Dan Atribut
Karakteristik domain dan atribut dapat diuraikan sebagai berikut :
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
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:
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.
16
Antar 2 entity-set dapat terjadi lebih dari 1 relationship, sebagai contoh misalnya :
Ada pula relationship antar sebuah entity, misalnya saja untuk merepresentasikan
hubungan atasan-bawahan antar Pegawai :
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
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;
e. Atribut Derivatif, yaitu suatu atribut yang dihasilkan dari atribut yang lain
1.3.4 Cardinality
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.
21
Gambar 20. IS-A dalam ER Diagram
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.
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 )
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 !
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 !
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
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
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
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 :
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 :
Setiap entity lemah harus terlibat dalam suatu dependency dengan entity kuat.
maka skema ER menjadi sbb :
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