Pemodelan data
Pemodelan data
By:
By:
Mr. Haloho
Pendahuluan terhadap pemodelan
Pendahuluan terhadap pemodelan
sistem
sistem
•
Model: representasi dari kenyataan. Model
dapat dibentuk untuk sistem yang sudah
ada atau untuk sistem yang diusulkan
sebagai cara untuk memahami sistem itu
dan cara mendokumentasikan
kebutuhan-kebutuhan bisnis dan desain teknis.
•
Model terbagi dua:
1.
Model logika
Model logika & Model Teknis
Model logika & Model Teknis
•
Model logika: Menunjukkan apa sebenarnya sistem.
Menggambarkan sistem tanpa terpengaruh
implementasi teknis. Model logika mengilustrasikan
inti (esensi) dari sistem. Model sering juga disebut
model esensial, model konseptual atau model bisnis
•
Model teknis: menunjukkan bukan hanya apa
Fokus analis sistem
Fokus analis sistem
•
Analis sistem fokus pada model logika karena:
1. Model logika menghilangkan bias yang dihasilkan cara sistem yang sekarang diterapkan atau cara
berpikir seseorang tentang bagaimana sistem harus diterapkan.
2. Model logika mengurangi resiko kehilangan kebutuhan-kebutuhan bisnis yang disebabkan terlampau fokus pada masalah teknis
Pemodelan data
Pemodelan data
• Pemodelan data merupakan teknik dalam mengelola dan mendokumentasikan data sistem.
• Pemodelan data sangat penting karena:
– Data merupakan sumberdaya yang akan dipakai oleh berbagai proses, sehingga data harus dikelola dalam suatu cara yang
fleksible dan dapat menyesuaikan dengan kebutuhan-kebutuhan bisnis.
– Struktur dan perlengkapan data biasanya permanen
– Model data jauh lebih kecil daripada model proses dan obyek dan dapat dikembangkan lebih cepat
Entity-relationship diagram
Entity-relationship diagram
• Entitas: suatu obyek yang datanya akan diperoleh dan disimpan. Suatu entitas merupakan suatu kelompok orang-orang, tempat-tempat, obyek-obyek, peristiwa-peristiwa atau konsep-konsep tentang sesuatu yang datanya akan ditangkap dan disimpan.
• Dalam pemodelan sistem entitas digambarkan dengan empat persegi panjang.
• Setiap entitas menunjukkan suatu kelompok dari
beberapa contoh (Instansi) dari entitas itu, dan setiap entitas bisa dipisahkan dari entitas-entitas lainnya.
• Suatu Instansi entitas adalah keterjadian tunggal
• Atribut: sesuatu yang dapat menjelaskan satu entitas atau karakteristik dari suatu entitas. Contohnya: Nama, Alamat, Nomor Telepon, Tanggal Lahir, IP, dll
• Atribut dapat dijabarkan beberapa atribut, dinamakan atribut gabungan (compound attribute). Misal: Ubtuk atribut Nama, dapat dijabarkan menjadi: Nama awal, Nama akhir, Marga,dll.
• Nilai dari suatu atribut dijabarkan dalam; tipe data,
domain dan default
• Tipe/jenis data untuk satu atribut menjelaskan kelompok data apa yang dapat disimpan dalam atribut itu.
• Domain/Wilayah dari suatu atribut menjelaskan rentang nilai suatu atribut.
• Nilia Default bagi satu atribut adalah nilai yang akan
Identifikasi entitas
Identifikasi entitas
•
Setiap entitas atau instansi entitas membutuhkan
identifikasi/pengenal didasarkan pada nilai data
dari satu atau lebih atribut.
•
Masing-masing entitas harus memiliki pengenal
yang disebut
key (kunci)
. Tidak satupun instansi
entitas yang memiliki
key
yang sama. Namun,
kadangkala lebih dari satu atributdiperlukan untuk
mengidentifikasi instansi suatu entitas.
•
Sekelompok atribut yang secara unik
mengidentifikasi suatu instansi entitas disebut
•
Contoh: Suatu toko penyewaan Video
ingin mengidentifikasi setiap Video dan
copy-
nya. Apabila identifikasi hanya
“Nomor Judul” tidak memadai, karena
setiap judul memiliki
copy.
Bila hanya
copy
judul sebagai pengenal juga tidak
memadai, karena setiap judul memiliki
copy
dengan nomor yang sama. Untuk itu
diperlukan
concenated key (
kunci
gabungan) dengan memadankan “Nomor
Judul” dan “Nomor
copy
sebagai
•
Biasanya suatu entitas bisa memiliki lebih dari
satu kunci. Setiap atribut dari setiap
entitas/instansi entitas bisa dibuatkan kunci.
Kunci-kunci ini dinamakan
Kunci Kandidat
(Candidate Key)
•
Kunci kandidat yang paling sering dipakai untuk
mengidentifikasi satu instansi entitas
dinamakan
kunci utama (
Primary Key).
•
Nilai
default (
yang dikenal sistem apabila tidak
ditentukan user) dari kunci utama tidak bisa nol.
•
Kunci kandidat yang tidak digunakan sebagi
Hubungan-hubungan
Hubungan-hubungan
(Relationships)
(Relationships)
•
Suatu hubungan adalah kaitan bisnis yang
alami antara satu atau lebih entitas.
Hubungan mungkn menunjukkan suatu
peristiwa yang menghubungkan
entitas-entitas atau hanya logika yang ada
Derajat Kompleksitas Hubungan
Derajat Kompleksitas Hubungan
•
Kardinalitas mendefenisikan jumlah keterjadian
minimun dan maksimum dari satu entitas untuk
suatu keterjadian tunggal dari entitas tertentu.
Karena seluruh hubungan-hubungan selalu dua
arah, kardinalitas harus didefenisikan dalam
kedua arah untuk setiap hubungan.
•
Ukuran kompleksitas hubungan data selain
kardinalitas adalah Derajat (
degree).
Hubungan yang berulang
Hubungan yang berulang
• Hubungan bisa juga terjadi diantara instansi/contoh yang berbeda dari entitas yang sama. Hubungan ini disebut
hubungan berulang (recursive relationship).
• Hubungan-hubungan mungkin juga terjadi antara dua atau lebih entitas yang berbeda. Hubungan ini disebut
hubungan n-arah.
• Entitas penghubung (associative entity) adalah suatu entitas yang memperoleh kunci (key) utamanya dari lebih dari satu entitas lainnya. Masing-masing bagian
dari kunci gabungan (concenated key) diarahkan ke satu dan hanya satu instansi dari masing-masing entitas
Kunci asing (Foreign Key)
Kunci asing (Foreign Key)
•
Kunci asing (
foreign key)
adalah suatu kunci
utama suatu entitas yang diduplikasi oleh entitas
lain untuk mengidentifikasi suatu hubungan.
Suatu kunci asing (selalu di entitas
anak)
selalu
cocok dengan kunci utama (di entitas
orangtua
)
•
Entitas
anak
adalah entitas adalah entitas yang
memakai kunci asing yang berasal dari kunci
utama entitas lain
Hubungan yang tidak spesifik
Hubungan yang tidak spesifik
•
Hubungan yang tidak spesifik sering juga
disebut many-to-many relationship,
adalah suatu hubungan dimana beberapa
instansi dari satu entitas dihubungkan
dengan beberapa instansi dari entitas
lainnya.
•
Dalam hubungan yang tidak spesifik, tidak
Generalisasi
Generalisasi
•
Generalisasi adalah suatu teknik dimana
atribut yang sama dibeberapa jenis
entitas dikelompokkan menjadi entitas
tersendiri. Entitas hasil pengelompokan ini
disebut entitas tipesuper (
supertype)
•
Entitas tipesuper adalah entitas yang
Bagaimana membentuk model data
Bagaimana membentuk model data
Menemukan entitas yang akan dijelaskan oleh data. Beberapa teknik yang dapat digunakan untuk mengidentifikasi entitas:
• Selama wawancara atau sesi JAD dengan pemilik dan pengguna, berikan perhatian kepada kata kunci
sewaktu diskusi dilakukan.
• Selama wawancara atau sesi JAD, secara khusus
minta pemilik sistem dan pengguna menyatakan apa yang harus ditangkap, disimpan, dan informasi apa yang akan dihasilkan.
• Teknik yang lain untuk mengidentifikasi entitas adalah mempelajari formulir-formulir yang ada dan arsip-arsip. Beberapa formulir bisa mengidentifikasi entitas
peristiwa.
•
Minta user menetapkan berapa banyak
instansi dari setiap entitas.
•
Ketika entitas-entitas ditemukan, beri
nama yang ringkas dan berorientasi
bisnis. Entitas harus dinamai dengan kata
benda yang menggambarkan orang,
peristiwa, obyek atau benda yang akan
disimpan datanya.
•
Untuk setiap entitas, defenisikan dalam
istilah bisnis, bukan teknis. Kalau perlu
Model data konteks
Model data konteks
•
Setelah setiap entitas ditentukan, tugas
berikutnya dalam pemodelan data adalah
membentuk model data. Model data
konteks mengikutkan entitas-entitas yang
telah ditemukan sebelumnya.
•