PENGARUH DESAIN TERHADAP PENERAPAN EFEKTIFITAS
DATABASE MELALUI BEBERAPA CONTOH KASUS
ABSTRAK: 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.
Kata kunci: database, logical data model.
ABSTRACT: The main foundation of information system is database and programming. Inefficient
database and unstructured programming can influence information system performance. Database design
is very important, including the data design, data domain and relationship. Unstable design can cause data
lost, inconsistent data, redundancy data, slow data updating and many more. A some presented in this
paper study cases here show how important the step of design before the step of making database, which is
called the design of logical data model. From these study cases here, we can see that design will influence
the database.
Keywords: database, logical data model.
PENDAHULUAN
Salah satu langkah dalam membangun suatu
sistem informasi adalah melakukan perancangan
database. Database merupakan jantung dari sistem
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
(1) memastikan data agar dapat diakses
oleh banyak user pada banyak aplikasi,
(2) maintain data secara akurat dan konsisten, (3) memastikan data yang dibutuhkan baik sekarang maupun yang akan
datang dapat tersedia,
(4) database dapat memenuhi
kebutuhan sesuai dengan pertumbuhan user dan (5)database dapat memenuhi kebutuhan pembacaan data tanpa memperdulikan bagaimana data secarafisik tersimpan [4].
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.
LOGICAL DATA MODEL
Logical data model merupakan pemodelan dari
proses bisnis yang berfokus pada analisis data.
Logical data model dibangun oleh tiga notasi yaitu entiti, atribut dan relasi. Entiti adalah tempat, obyek, kejadian maupun konsep pada lingkungan user dimana diperlukan maintain data pada organisasi tersebut. Atribut adalah karakteristik yang dimiliki tiap entiti. Relasi adalah hubungan asosiasi data antar
entiti.
Beberapa hal yang perlu diperhatikan dalam
pembuatan logical data model menurut Moss Larissa
[2]:
a. Memeriksa definisi, semantik dan tipe data pada tiap entiti untuk mencari duplikasi obyek bisnis karena dapat tidak terlihat apabila nama yang digunakan berbeda.
b. Memastikan tiap data pada entiti bahwa hanya
memiliki satu pengenal yang unik (primary key),
dimana termasuk apabila ada data lama yang
dihapus dari database.
c. Menggunakan aturan normalisasi untuk memastikan bahwa sebuah atribut hanya dimiliki oleh satu entiti saja.
d. Mengadopsi aturan bisnis dengan obyek pada
dunia nyata. Aturan bisnis ini memperlihatkan
relasi data antar entiti.
Beberapa hal yang perlu diperhatikan dalam
pembuatan logical data model menurut Elmasri
Ramez [1]:
a. Semantic atribut
Bagaimana menggambarkan relasi yang dapat
menggambarkan fakta yang ada.
b. Memperkecil terjadinya data redundansi
Tujuan dalam pembuatan database adalah mengoptimalkan penyimpanan data.
c. Memperkecil terjadinya nilai null pada data
Null value dapat menyebabkan penyimpanan data yang besar dan dapat terjadi kesalahpahaman dalam mengartikan suatu atribut. Null value dapat diinterpretasikan sebagai: (1) atribut ini tidak dimiliki oleh data tersebut, (2) nilai atribut tidak diketahui dan (3) nilai atribut diketahui tetapi belum dicatat.
d. Tiap entiti memiliki definisi/semantik yang jelas.
PENERAPAN LOGICAL DATA MODEL
DALAM CONTOH KASUS
Contoh kasus digambar menggunakan notasi
chicken feet dengan tools Power Designer 6.1.
Contoh kasus 1
Gambar 1 menunjukkan relasi kepala departemen antara entiti Pegawai dengan Departemen adalah
1 : 1 yang berarti satu orang pegawai hanya dapat mengepalai satu departemen dan satu departemen hanya boleh dikepalai oleh satu orang pegawai.
Dilihat dari kenyataan yang terjadi, relasi tersebut adalah benar karena tidak mungkin pada satu waktu, ada lebih dari satu pegawai yang mengepalai suatu departemen dan begitu pula sebaliknya.
bekerja pada
kepala departemen
Pegawai
NIP Pegawai
Nama Pegawai
Departemen
Kode Departemen
Nama Departemen
Gambar 1. Relasi entiti Pegawai dan entiti
Departemen
Namun ternyata ketika terjadi pergantian kepala
departemen, data kepala departemen yang lama
sudah tidak dapat lagi diketahui. Dengan kata lain, database tidak menyediakan penyimpanan data masa lampau. Oleh karena itu, desain gambar 1 ditambahkan suatu entiti yang mencatat tanggal seorang pegawai menjabat suatu departemen, sehingga dapat ditelusuri siapa saja yang pernah menjabat menjadi
kepala departemen suatu departemen
(gambar 2).
kepala departemen departemen
bekerja pada
Pegawai
NIP Pegawai
Nama Pegawai
Departemen
Kode Departemen
Nama Departemen
History Kepala Departemen
Tanggal Menjabat
Gambar 2. Penambahan entiti History Kepala Departemen
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.
jabatan
menjabat departemen
Pegawai
NIP Pegawai
Nama Pegawai
Departemen
Kode Departemen
Nama Departemen
History Jabatan
Tanggal Menjabat
Jenis Jabatan
Kode Jabatan
Jabatan
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.