Friday, April 20, 2012

Logical Database Design


Logical database design adalah proses pembuatan suatu model informasi yang digunakan pada perusahan berdasarkan pada model data yang spesifik, tetapi tidak tergantung dari Database Management System (DBMS) yang khusus dan pertimbangan fisik yang lain (Connolly,2002,p441).

DBMS adalah software yang memungkinkan pemakai untuk mendefinisi, membuat, memelihara, dan mengontrol akses ke basis data (Connolly,2002,p16). Fasilitas-fasilitas yang disediakan oleh DBMS antara lain :
1.    Memperbolehkan user untuk mendefinisikan basis data.
2.    Memperbolehkan user untuk menambah , mengubah, dan menghapus serta mengambil data dari basis data.
3.    Menyediakan kontrol akses ke basis data. Seperti security, integrity, concurrency control, recovery control system dan user-accessible catalog.
Langkah kedua : membuat dan memvalidasi local logical data model untuk setiap pandangan. Bertujuan untuk membuat local logical data model dari local conceptual data model yang mempresentasikan pandangan khusus dari perusahaan dan memvalidasi model tersebut untuk menjamin kebenaran strukturnya (dengan menggunakan teknik normalisasi) dan menjamin bahwa model tersebut mendukung kebutuhan transaksi.
Menurut Conolly (2002,p376), normalisasi merupakan suatu teknik untuk menghasilkan suatu relasi yang sangat diperlukan dimana kebutuhan datanya diberikan oleh perusahaan. Dalam proses normalisasi membutuhkan beberapa tahap untuk dapat diimplementasikan. Tahap-tahap normalisasi menurut (Conolly,2002,p387) adalah :
•    Bentuk tidak normal (UNF)
Merupakan bentuk normalisasi dimana terdapat tabel yang memiliki satu atau lebih data yang berulang.
•    Bentuk normal pertama (1NF)
Merupakan bentuk normalisasi dimana data yang dikumpulkan menjadi satu field yang sifatnya tidak akan berulang dan tiap field mempunyai satu nilai.


•    Bentuk normal kedua (2NF)
Merupakan bentuk normalisasi dimana field yang bukan kunci tergantung secara fungsi pada suatu primary key.
•    Bentuk normal ketiga (3NF)
Merupakan bentuk normalisasi dimana tidak ada field yang bukan primary key tergantung transitive kepada primary key.
•    Bentuk BCNF (Boyce-Codd Normal Form)
Merupakan bentuk normalisasi dimana jika dan hanya jika setiap determinant adalah candidate key.
Pada perancangan model logical langkah kedua, tahapan-tahapannya adalah :
a.    Menghilangkan features yang tidak compatible dengan model relasional (pilihan). Bertujuan untuk menghasilkan model yang kompatibel dengan model relasional. Yaitu dengan :
•    Menghilangkan many-to-many (*:*) binary relationship types
•    Menghilangkan many-to-many (*:*) recursive relationship types
•    Menghilangkan complex relationship types
•    Menghilangkan multi-valued attributes

b.    Memperoleh relasi untuk local logical data model.
Bertujuan untuk membuat hubungan logical model yang mewakili entity, relationship dan attribute yang telah didefinisi. Mendeskripsikan komposisi tiap hubungan memakai Database Definition Language (DDL) untuk relasi yang diikuti dengan daftar dari relasi attribute yang mudah lalu mengidentifikasikan primary key dan foreign key dari suatu relasi. Untuk memperoleh relasi untuk local data model, maka diperlukan penjelasan untuk mendeskripsikan struktur yang mungkin dalam data model saat ini.
Bahasa dalam basis data dapat dibedakan menjadi dua bentuk :
•    Data Definition Language (DDL)
DDL merupakan bahasa dalam basis data yang memungkinkan pengguna untuk membuat atau menghapus basis data, membuat atau menghapus tabel membuat struktur penyimpanan tabel. Hasil dari kompilasi DDL adalah kumpulan tabel yang disimpan dalam file khusus yang disebut dengan kamus data.
•    Data Manipulation Language (DML)
DML merupakan bahasa dalam basis data yang memungkinkan pengguna untuk melakukan manipulasi data pada suatu basis data, seperti menambah, mengubah, menghapus data dari suatu basis data.
a.    Memvalidasi relasi dengan menggunakan normalisasi
Dengan menggunakan normalisasi, maka model yang dihasilkan mendekati model dari kebutuhan perusahaan, konsisten dan memiliki sedikit redundansi dan stabilitas yang maksimum.
a.    Memvalidasi relasi dengan transaksi pengguna
Bertujuan untuk menjamin bahwa relasi dalam model logikal tersebut mendukung user’s requirements specification secara detail. Selain itu juga untuk meyakinkan bahwa tidak ada kesalahan yang muncul sewaktu membuat suatu relasi.
a.    Mendefinisikan Integrity constraints
Bertujuan untuk mendefinisikan integrity constraints yang disampaikan dalam pandangan. Terdapat lima tipe integrity constraints yang harus diperhatikan, yaitu :
•    Required data
•    Attribute domain constraints
•    Entity integrity
•    Referential integrity
•    Enterprise Constraints
a.    Melihat kembali local logical data model dengan pengguna
Bertujuan untuk menjamin local logical data model dan mendukung dokumentasi yang menggambarkan model yang sudah benar.
Langkah ketiga : Membuat dan memvalidasi global logical data model. Bertujuan untuk menyatukan local logical data model menjadi global logical data model.
Pada perancangan model logikal langkah ketiga, tahapan-tahapannya adalah :
a.    Menggabungkan local logical data model menjadi global model
Pada langkah ini, setiap local logical data model menghasilkan E-R diagram, skema relasional, kamus data dan dokumen pendukung yang mendeskripsikan constraints dari model. Beberapa tugas yang harus dikerjakan adalah sebagai berikut :
•    Memeriksa lembali nama dan isi dari entities dari relationships dan candidate key.
•    Memeriksa kembali nama dan isi dari relationships/ foreign keys.
•    Menggabungkan entities atau hubungan dari local data model.
•    Mengikutsertakan (tanpa menggabungkan) entities atau relationships yang unik pada tiap local data model.
•    Menggabungkan relationships atau foreingn key dari local data model.
•    Mengikutsertakan (tanpa menggabungkan) relationships atau foreign key unik pada tiap local data model.
•    Memeriksa untuk entities (hubungan) dan relationships atau foreign key.
•    Memeriksa integrity constraints.
•    Menggambarkan ER-diagram.
•    Melakukan update dokumen.
b.    Memvalidasi global logical data model
Bertujuan untuk memvalidasi relasi yang dibuat dari global logical data model dengan teknik normalisasi dan menjamin bahwa model tersebut mendukung kebutuhan transaksi
c.    Mengecek pertumbuhan yang akan dating
Bertujuan untuk menentukan apakah ada perubahan yang signifikan seperti keadaan yang tidak terduga dimasa mendatang dan menilai apakah model logikal tersebut dapat menampung atau menyesuaikan perubahan yang terjadi.
d.    Melihat kembali global logical data model dengan pengguna
Bertujuan untuk menjamin model data logikal yang bersifat global telah tepat untuk perusahaan.