Professional Documents
Culture Documents
DISUSUN OLEH :
ANDRI ADITYA R
09080301007
MANAJEMEN INFORMATIKA
UNIVERSITAS SRIWIJAYA
2009-2010
1
DAFTAR ISI
DAFTAR
ISI................................................................................................. 2
Pendahuluan ................................................................................ 3
Pengertian Basis data ………………………………………….. 4
Perancangan Basisdata ………………………………………… 6
Implementasi Basis Data …………………………………….... 8
Teknik Normalisasi ….…………………... …………………… 9
Penerapan Logical Data Model Dalam Contoh Kasus ………... 13
Daftar Pustaka ………………………………………………… 21
2
Pendahuluan
Dalam suatu sistem informasi, landasan yang utama adalah database dan
implementasi prgoram. Database yang tidak efektif dan implementasi program yang
tidak terstruktur dapat mempengaruhi performansi sistem informasi tersebut.
Pengaruh desain terhadap database sangatlah besar, termasuk desain data, tipe data
maupun relasinya. Pembuatan desain yang tidak dibangun dengan cermat dapat
menyebabkan hilangnya data yang dibutuhkan, data yang tidak konsisten, redundansi
data, proses update yang lambat dan banyak hal lain. Untuk menghindari hal tersebut,
dibuatlah beberapa contoh kasus yang dapat menunjukkan betapa pentingnya desain
sebelum pembuatan database yaitu pembuatan logical data model. Dari contoh kasus
yang diberikan, dapat dilihat bahwa desain mempengaruhi database yang akan
dibentuk.
Salah satu langkah dalam membangun suatu sistem informasi adalah melakukan
perancangan
database. Database merupakan jantung dari system informasi. Data harus tersedia
ketika user ingin
menggunakan, data juga harus akurat dan konsisten. Selain dari requirement tersebut,
tujuan dari desain database adalah efisiensi penyimpanan data dan efisiensi
pembacaan maupun update data.
Database merupakan suatu koleksi data. Efektifitas dari database harus dapat
memenuhi kebutuhan :
• memastikan data agar dapat diakses oleh banyak user pada banyak aplikasi,
• memastikan data yang dibutuhkan baik sekarang maupun yang akan datang dapat
tersedia,
Dari pengamatan yang dilakukan penulis, masih ada beberapa orang yang
memiliki tidak mempertimbangkan efektifitas dalam mendesain database. Untuk
menjelaskan lebih lanjut pentingnya efektifitas database, dibuatlah beberapa contoh
kasus dalam desain logical data model.
3
Pengertian Basis data
Basis data dapat didefinisikan dalam sejumlah sudut pandang, seperti menurut
Connolly (2002,p14), definisi basis data adalah kumpulan data yang dihubungkan
secara bersama-sama, dan gambaran dari data yang dirancang untuk memenuhi
kebutuhan informasi dari suatu organisasi. Berbeda dengan sistem file yang
menyimpan data secara terpisah, pada basis data data tersimpan secara terintegrasi.
Basis data bukan menjadi milik dari suatu departemen tetapi sebagai sumber daya
perusahaan yang dapat digunakan bersama.
Menurut Date (1990,p5), definisi dari basis data adalah kumpulan terintegrasi dari file
yang merupakan representasi data dari suatu model enterprise.
Data dalam basis data disimpan dalam tiga struktur, yaitu file, tabel atau objek.
File terdiri dari record dan field, tabel terdiri dari baris dan kolom. Objek terdiri dari
data dan instruksi program yang memfungsikan data. Tabel terdiri dari kolom-kolom
yang saling terkait, seperti file yang terdiri dari record yang saling terkait. File
didalam basis data dapat terhubung kepada beberapa tabel. Dalam sebuah tabel, data
pada tiap kolom terdiri dari ukuran dan tipe yang sejenis (char/ numeric).
4
Keuntungan dari basis data:
Kekurangan:
• Sistem lebih rumit, jadi memerlukan tenaga ahli dalam disain, program dan
implementasi
• Lebih mahal
• Bila ada akses yang tidak benar, kerusakan dapat terjadi
• Karena semua data di tempat terpusat, kerusakan software dan hardware dapat
terjadi
• Proses pemeliharaan dapat memakan waktu karena ukurannya yang besar
• Proses back up data memakan waktu
5
Perancangan Basis Data
Suatu data base dibangun berdasarkan kebutuhan informasi dalam suatu organisasi,
oleh sebab itu pada umumnya perancangan data base dimulai dari pengamatan
kebutuhan informasi. Berikut ini adalah langkah-langkah yang sering dilakukan dalam
perancangan basisdata:
1. Teliti informasi apa yang dibutuhkan oleh organisasi ini, misalnya dengan me-
wawancarai pengguna informasi dalam organisasi tersebut.
2. Pisahkan/kelompokkan hasil temuan informasi menjadi beberapa entity.
3. Pikirkan field-data yang mendukung setiap entity
4. Tentukan field-data yang mungkin menjadi indeks (primary key) setiap entity
5. Pikirkan kemungkinan relasi antar entity
o bila one-to-one : berarti sebenarnya kedua entity ini bisa digabung
o bila one-to-many atau many-to-one : tambahkan primary-key dari
entity sisi-one sebagai field-data baru pada entity sisi many.
o bila many-to-many : ciptakan sebuah file-relasi dengan field data utama
adalah primary-key masing-masing entity yang berelasi, tambahkan
field data yang baru apabila field data ini bergantung pada kedua
primary key.
6. Pilih DBMS untuk melakukan implementasi, dimana setiap entity diciptakan
sebagai sebagai sebuah table pada model relasional.
• Daftar Peserta Mata Kuliah (DPMK) : daftar per-mata kuliah yang memuat
semua nama mahasiswa yang mengambil mata kuliah tersebut pada rencana
studi-nya di awal semester.
• Daftar Nilai Akhir (DNA) : daftar per-mata kuliah yang memuat nama semua
mahasiswa yang mengambil matakuliah tersebut disertai kode nilai yang akan
dilingkari oleh dosen pengasuh di-akhir semester.
• Kartu Hasil Studi (KHS) atau Rapor: print-out untuk setiap mahasiswa dimana
termuat hasil studi mahasiswa tersebut untuk setiap matakuliah yang di-ikuti-
nya, disertai IPS (indeks prestasi semester)
Apabila ketiga informasi ini diteliti maka diperoleh domain data (entity) sebagai
berikut:
1. Data Mahasiswa
2. Data Matakuliah
3. Data Dosen
• Nomer Mahasiswa
• Nama Mahasiswa
• Alamat
6
• Jenis Kelamin
• Agama
• Tgl Lahir
• dsb
• Kode Matakuliah
• Nama Matakuliah
• SKS
• dsb
• Kode Dosen
• Nama Dosen
• Alamat
• Keahlian
• dsb
Mahasiswa <–> MataKuliah : relasi ditandai dengan rencana studi, dimana satu
mahasiswa dapat mem-program banyak matakuliah, dan sebaliknya satu matakuliah
dapat diprogramkan oleh banyak mahasiswa, dengan kata lain relasi-nya many-to-
many (M-to-N). Karena itu diperlukan file-relasi, yaitu file semester, dengan field-
field data sbb:
• Kode matakuliah
• Nomer mahasiswa
• Nilai
• kode semester
Dosen <–> Matakuliah : relasi ini ditandai dengan penugasan dosen, misalnya di
program S1, pada umumnya seorang dosen boleh mengajar lebih dari satu matakuliah,
dan satu matakuliah hanya diajar oleh seorang dosen, dengan demikian relasi-nya
one-to-many (1-to-M). Karena itu primary key dari dosen (kode-dosen) ditambahkan
ke entity matakuliah. File data dosen nanti tidak ada perubahan, tetapi field dari file
matakuliah akan bertambah, menjadi:
• Kode Matakuliah
• Nama Matakuliah
• SKS
• Kode-Dosen
7
• Dsb
Dosen <–> Mahasiswa : relasi ini ditandai dengan fungsi dosen sebagai penasehat
akademik (PA), dimana seorang dosen boleh menjadi PA lebih dari satu mahasiswa
sementara setiap mahasiswa memerlukan satu PA, sehingga relasi yang cocok adalah
one-to-many (1-to-M). Karena itu primary key dari dosen ditambahkan ke entity
mahasiswa, sehingga susunan field-data mahasiswa menjadi sebagai berikut:
• Nomer Mahasiswa
• Nama Mahasiswa
• Alamat
• Jenis Kelamin
• Agama
• Tgl Lahir
• Kode-Dosen
• dsb
Pada akhirnya basisdata akademik ini paling tidak harus terdiri atas empat tabel/file
yaitu: Tabel Mahasiswa, Tabel Matakuliah, Tabel Dosen, dan Tabel Semester.
8
TEKNIK NORMALISASI
1.Pengertian Normalisasi
Normalisasi merupakan proses pengelompokan data elemen menjadi table-
tabel yang menunjukkan entitas dan relasinya.
Anomali adalah proses pada basis data yang memberikan efek samping yang
tidak diharap- kan (misalnya ketidakkonsistenan data karena adanya redudansi).
Ada 3 macam anomali pada suatu database:
1. Anomali penyisipan data (insert)
2. Anomali pengubahan data (update)
3. Anomali penghapusan data (delete)
Bila ada anomali maka relasi mungkin perlu dipecah menjadi beberapa tabel
lagi agar diperoleh database yang optimal.
Depedensi (Ketergantungan).
Depedensi merupakan konsep yang menda-sari normalisasi. Depedensi
menjelaskan nilai suatu atribut yang menentukan nilai atribut lainnya.
Jenis depedensi antara lain:
1. Depedensi Fungsional
Suatu atribut Y mempunyai depe-densi fungsional terhadap atribut X jika dan
hanya jika setiap nilai nilai X berhubungan dengan sebuah nilai Y.
X→Y
2. Depedensi Transitif
Atribut Z mempunyai depedensi transitif terhadap X bila:
• Y memiliki depedensi fungsional terhadap X
• Z memiliki depedensi fungsional terhadap Y
2.Tujuan dari Normalisasi
Untuk menghilangkan kerangkapan data
Untuk mengurangi kompleksitas
Untuk mempermudah pemodifikasian data
3.Bentuk tidak normal (unnormalized Form)
9
Bentuk ini merupakan kumpulan data yang direkam, tidak ada keharusan
mengikuti suatu format tertentu, bisa tidak lengkap atau terduplikasi. Data
dikumpulkan apa adanya sesuai dengan kedatangannya.
contoh :
Seorang pegawai memiliki : nomor_pegawai, nama_pegawai, nomor_klien,
nama_klien, alamat_klien, keperluan_klien
Satu orang pegawai mungkin akan melayani lebih dari 1 orang klien.
10
P29 Barkah K05 Gabriela Febrianti
P30 Mahendra K06 Siti Amiarti
P30 Mahendra K08 Sandi Sunardi
no_klien nama_klien
K01 Rini Suwandi
K02 Edi Damhudi
K03 Robert Irwandi
K04 Fatwa Sari
K05 Gabriela Febrianti
K06 Siti Amiarti
K07 Veronica Suci
K08 Sandi Sunardi
11
• Tidak mengandung depedensi transitif
Contoh :
no_pegawai no_klien
P27 K01
P27 K02
P27 K04
P28 K03
P28 K07
P29 K05
P30 K06
P30 K08
12
PENERAPAN LOGICAL DATA MODEL DALAM
CONTOH KASUS
Contoh kasus 1
Apabila ruang lingkup ditambah dengan pencatatan setiap jabatan yang dipegang
selama seorang pegawai, maka gambar 2 harus diubah lagi dengan memasukkan informasi
pilihan jabatan yang mungkin dijabat seorang pegawai selain kepala departemen. Sebagai
seorang pegawai pasti mempunyai sebuah jabatan, sehingga dari entiti history jabatan dapat
diketahui departemen yang saat itu menaunginya. Oleh karena itu, relasi antara entiti Pegawai
dengan entiti Departemen dapat dihilangkan.
13
Gambar 3. Perubahan entiti History Jabatan
Moss poin (d) dan Elmasri poin (a) menyatakan bahwa pembuatan model harus
disesuaikan dengan fakta. Contoh kasus 1 memperlihatkan bahwa dalam melakukan desain
perlu memastikan data apa saja yang dibutuhkan baik sekarang maupun yang akan datang
dapat tersedia. Pada gambar 1 terdapat permasalahan yaitu tidak menyediakan penyimpanan
data masa lampau. Kemudian yang kedua adalah apakah database dapat memenuhi kebutuhan
sesuai dengan pertumbuhan user sebagaimana yang digambarkan pada gambar 3 yaitu bahwa
jenis jabatan dapat semakin beragam, oleh karena itu dibuat sebuah entiti tersendiri.
Contoh kasus 2
Pada suatu database yang diakses oleh banyak user, perlu diperhatikan data mana saja yang
boleh diakses seorang pegawai, data mana yang tidak boleh diakses oleh seorang pegawai.
Seperti yang dilihat pada gambar 4, setiap pegawai berhak melihat history jabatannya masing-
masing maupun milik pegawai lain, namun setiap pegawai (kecuali bagian penggajian) hanya
boleh melihat data gaji miliknya sendiri.
Untuk memastikan data agar dapat diakses oleh banyak user pada banyak aplikasi maka
perlu diperhatikan pemilihan database yang digunakan. Apabila ternyata database yang
digunakan tidak mendukung management user, maka perlu disediakan entiti Hak Akses dan
entiti Menu (gambar 5).
14
Gambar 5. Penambahan hak akses menu
Contoh kasus 3
Seorang pegawai berprestasi akan dikaitkan dengan jabatan apa yang dimiliki pada saat itu,
sehingga pada gambar 6 digambarkan bahwa entity Prestasi direlasikan dengan entiti History
Jabatan.
Ternyata prestasi tidak sepenuhnya melekat pada prestasi, namun sebenarnya lebih tepat
apabila entiti Prestasi direlasikan dengan entiti Pegawai. Untuk mengetahui prestasi seorang
pegawai didapat pada saat pegawai tersebut menjabat menjadi apa, dapat dilakukan proses
query. Contoh kasus 3 memperlihatkan bahwa ketika mengadopsi aturan bisnis dengan obyek
15
pada dunia nyata harus dilakukan dengan cermat, sehingga relasi yang dibuat menjadi tepat
(Moss poin (d) dan Elmasri poin (a) dan memastikan bahwa tiap definisi/semantik menempel
pada data yang sesuai (Moss (a) dan Elmasri (d)).
Contoh kasus 4
Normalisasi penting dilakukan untuk memastikan bahwa sebuah atribut hanya dimiliki
oleh satu entiti saja sehingga maintain data dapat dilakukan secara akurat dan konsisten. Data
yang tidak ternormalisasi juga menyebabkan lambatnya proses update. Setiap prestasi seorang
pegawai dinilai oleh beberapa penilai. Jumlah penilai tergantung pada jabatan yang dimiliki
oleh pegawai yang berprestasi tersebut. Dilihat dari gambar 8, ternyata terjadi redundansi
data, dimana terjadi perulangan data atribut No Urut, Nama Prestasi dan Tanggal Prestasi tiap
ada nilai dari seorang penilai.
16
Gambar 8. Redundansi data pada entiti Prestasi
Contoh kasus 4 memperlihatkan bahwa dalam melakukan desain perlu memperhatikan aturan
normalisasi (Moss poin (c) dan Elmasri poin (b)), sehingga konsistensi data dapat terjamin.
Proses update data akan menjadi lebih sulit apabila dilakukan pada desain database seperti
gambar 8. Contoh data pada tabel Prestasi dari gambar 8 dapat dilihat pada tabel 1.
Apabila terjadi kesalahan dalam pemasukan data atribut Nama Prestasi dari
’Technology Award 2003’ menjadi ’Technology Award 2004’, maka update harus dilakukan
pada tiga record) dalam table Prestasi. Berbeda dengan data yang tersimpan dengan desain
pada gambar 9, proses update hanya perlu dilakukan pada satu record saja.
Contoh kasus 5
Hal lain yang perlu diperhatikan adalah pemilihan atribut sebagai primary key (Moss poin
(b)). Antara gambar 9 dengan gambar 10 terdapat perbedaan primary key untuk entiti Prestasi.
Gambar 9 menghasilkan tabel Prestasi dengan primary key NIP pegawai dan No Urut.
Sedangkan gambar 10 menghasilkan tabel prestasi dengan primary key Kode Prestasi.
Pemilihan desain tergantung daripada desainer database. Apabila dicermati, Kode Prestasi
pada tabel prestasi dapat dihilangkan karena dengan NIP Pegawai dan No Urut tidak
menyebabkan kesulitan proses update data pada tabel Prestasi.
17
Gambar 10. Primay Key Tabel Prestasi adalah Kode Prestasi
Contoh kasus 6
Pendapat yang mengatakan bahwa semua table dalam suatu sistem informasi harus memiliki
relasi adalah tidak sepenuhnya benar. Ada beberapa table yang memang harus berdiri sendiri
karena table tersebut hanya sebagai tabel bantu.
Gambar 11. Entiti Range Nilai tidak harus berelasi dengan entiti lain
Hasil dari penilaian prestasi dari tiap penilai akan dikalkulasi sehingga menghasilkan
nilai akhir (disimpan pada atribut Nilai Akhir pada entity Prestasi). Pada gambar 11 terdapat
entiti Range Nilai yang menyimpan informasi ’arti’ tiap nilai akhir pada tiap prestasi. Entiti
Range Nilai tidak perlu direlasikan dengan entiti Prestasi karena yang disimpan pada entiti
Range Nilai merupakan informasi range nilai dan arti nilai, bukan menyimpan tiap nilai dan
arti nilai. Sehingga entiti Range Nilai cukup berdiri sendiri.
Contoh kasus 7
Pembuatan relasi yang berlebihan juga menyebabkan redundasi data (Elmasri poin (b)).
Gambar 12 memperlihatkan bahwa ada redundasi relasi dimana pada tabel Penilaian Prestasi
disimpan atribut NIP Pegawai, padahal dari relasi dinilai (antara entiti Prestasi dengan entiti
Penilaian Prestasi) dapat dicari pula NIP Pegawai yang dinilai prestasinya dengan
18
menggunakan proses query. Sehingga relasi pegawai berprestasi harus dihilangkan untuk
menghilangkan redundansi data.
Contoh kasus 8
Pemilihan bentuk desain dapat juga mempengaruhi penyimpanan nilai null pada data (Elmasri
poin (c)). Pada gambar 13 terlihat bahwa Pegawai dibedakan menjadi dua jenis yaitu pegawai
tidak tetap dan pegawai tetap. pegawai tidak tetap tidak akan memiliki history jabatan seperti
pegawai tetap. Oleh karena itu, relasi menjabat seharusnya tidak direlasikan antara entiti
Pegawai dengan entiti History Jabatan melainkan direlasikan antara entiti Pegawai Tetap
dengan entiti History Jabatan.
Contoh kasus 9
Pemilihan tipe data juga merupakan hal yang penting dalam melakukan desain. Salah satu
contohnya adalah tipe data antara character dengan variable character. Character(n) berarti
menyimpan data sejumlah n karakter. Variable character(n) berarti menyimpan data sejumlah
karakter yang dimasukkan. Oleh karena itu, untuk jumlah karakter data yang sama, digunakan
tipe data character, seperti atribut NIP Pegawai. Sedangkan untuk atribut Nama Pegawai
digunakan tipe data variable character.
19
Gambar 14. Pemilihan tipe data
Penggunaan tipe data pada gambar 14 untuk atribut Nama Prestasi pada entiti Prestasi
menyebabkan penggunaan space yang tidak perlu setiap kali terjadi penambahan data dari
tabel Prestasi. Tipe data atribut tersebut harus diubah dari Variable Character(50) menjadi
Character(50).
KESIMPULAN
a. tidak mempersiapkan desain yang dapat digunakan pada perkembangan system di masa
yang akan datang,
2. Dalam mendesain logical data model harus memperhatikan database yang akan digunakan,
proses bisnis pada sistem dan mempersiapkan desain yang dapat digunakan pada
perkembangan sistem di masa yang akan datang.
20
DAFTAR PUSTAKA
http://teguhnet.wordpress.com/2008/09/20/studi-kasus-dan-model-
database/
http://teknik-informatika.com/perancangan-basis-data/
http://expresiaku.wordpress.com/category/ilmu-komputer/analisa-
dan-perancangan-basis-data/
21