PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS HASANUDDIN 2013 KATA PENGANTAR Puji dan Syukur kami panjatkan ke Hadirat Tuhan Yang Maha Esa, karena berkat limpahan Rahmat dan Karunia-nya sehingga kami dapat menyusun makalah ini dengan baik dan tepat pada waktunya. Dalam makalah ini kami membahas mengenai Desain Basis Data.
Makalah ini dengan berbagai bantuan dari berbagai pihak untuk membantu menyelesaikan tantangan dan hambatan selama mengerjakan makalah ini. Oleh karena itu, saya mengucapkan terima kasih yang sebesar-besarnya kepada semua pihak yang telah membantu dalam penyusunan makalah ini.
Saya menyadari bahwa masih banyak kekurangan yang mendasar pada makalah ini. Oleh karena itu kami mengundang pembaca untuk memberikan saran serta kritik yang dapat membangun kami. Kritik konstruktif dari pembaca sangat saya harapkan untuk penyempurnaan makalah selanjutnya.
Akhir kata semoga makalah ini dapat memberikan manfaat bagi kita sekalian.
Makassar, 22 Desember 2013
Penulis BAB I PENDAHULUAN A. Latar Belakang Basis data adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh suatu informasi dari database tersebut. Perangkat lunak yang digunakan untuk mengolah dan mengambil query basis data disebut sistem manajement basis data. Pemrosesan basis data sebagai perangkat andalan sangat diperlukan oleh berbagai institusi dan perusahaan. Dalam pengembangan sistem informasi diperlukan basis data sebagai media penyimpanan data. Kehadiran basis data dapat meningkatkan daya saing perusahaan tersebut. Basis data dapat mempercepat upaya pelayanan kepada pelanggan, menghasilkan informasi dengan cepat dan tepat sehingga membantu pengambilan keputusan untuk segera memutuskan suatu masalah berdasaran informasi yang ada. Banyak aplikasi yang dibuat dengan berlandaskan pada basis data antara lain semua transaksi perbankan, aplikasi pemesanan, penjadwalan penerbangan, proses registrasi dan pencatatan data mahasiswa pada perguruan tinggi, aplikasi pemrosesan penjualan, pembelian dan pecatatan data barang pada perusahaan dagang, pencatatan data pegawai beserta akivitasnya termasuk operasi penggajian pada suatu perusahaan, dan sebagainya. Beberapa informasi pada perusahaan retail seperti jumlah penjualan, mencari jumlah stok yang tersedia, barang apa yang paling laku dijual pada bulan ini, dan berapa laba bersih perusahaan dapat diketahui dengan mudah menggunakan basis data. BAB II PEMBAHASAN
A. Pengertian basis data Banyak sekali definisi tentanb basis data yang diberikan oleh pakar di bidang ini. Basis data atau disebut juga database, terdiri dari dua penggalan kata yaitu data dan base, yang artinya berbasiskan pada data, secara konseptual, database diartikan sebuah koleksi atau kumpulan data-data yang saling berhubungan (relation), disusun menurut aturan tertentu secara logis, sehingga menghasilkan informasi. Selain itu, untuk mengelola dan memanggil query basis data agar dapat disajikan dalam berbagai bentuk yang dibutuhkan perangkat lunak yang disebut Sistem Manajement Basis Data atau disebut juga Sistem Database Management System (DBMS). Penggabungan Sistem Database Management System (DBMS) dengan Basis Data akan membentuk satu kesatuan yang disebut Sistem Basis Data. System Basis Data adalah suatu system penyusunan dan pengelolaan record-record dengan menggunakan computer, dengan tujuan untuk menyimpan atau merekam serta memelihara data operasional lengkap sebuah organisasi/perusahaan sehingga mampu menyediakan informasi yang diperlukan pemakai untuk kepentingan proses pengambilan keputusan.
B. Komponen dasar basis data Dalam membuat basis data harus memiliki komponen dasar. Agar terciptanya basis data maka hal yang diperhatikan tersedianya : 1. Data : representasi fakta dunia nyata yang mewakili suatu objek yang direkam dalam bentuk angka, huruf, symbol, teks, gambar, bunyi, atau kombinasinya. 2. Hardware : terdiri dari semua peralatan perangkat keras computer yang digunakan untuk mengelola system basis data berupa : peralatan penyimpanan (disk, drum, tape), peralatan input dan output, atau peralatan komunikasi. 3. Software : sebagai perantara antara pemakai dengan data fisik pada basis data, berupa: Database Mangement System (DBMS) atau program-program aplikasi dan prosedur prosedur. 4. User (pemakai) : terbagi menjadi 4 klasifikasi, yaitu : a. System Engineer : tenaga ahli yang bertanggung jawab atas pemasangan system basis data, dan juga mengadakan peningkatan dan melaporkan kesalahan dari system tersebut kepada pihak penjual. b. Administrator Basis Data : tenaga ahli yang mempunyai tugas untuk mengontrol system basis data secara keseluruhan, meramalkan kebutuhan akan system basis data, merencanakannya dan mengaturnya. c. Programmer : membuat program aplikasi yang diperlukan oleh pemakai akhir dengan menggunakan data yang terdapat dalam system basis data. Pemakai akhir : tenaga ahli yang menggunakan data untuk mengambil keputusan yang diperlukan untuk kelangsungan usaha.
C. Istilah - istilah basis data Dalam penyusunan basis data ada beberapa istilah yang akan sering digunakan. Oleh karena itu, kita sebagai obyek yang mempelajari lebih jauh lagi tentang ilmu pengetahuan basis data sepatutnya mengenal : 1. Enterprise : suatu bentuk organisasi seperti : bank, universitas, rumah sakit, pabrik, dsb. Data yang disimpan dalam basis data merupakan data operasional dari suatu enterprise. Contoh data operasional : data keuangan, data mahasiswa, data pasien, data karyawan. 2. Entitas : suatu obyek yang dapat dibedakan dari lainnya yang dapat diwujudkan dalam basis data. Contoh entitas dalam lingkungan bank terdiri dari : nasabah, simpanan, hipotik. Contoh entitas dalam lingkungan universitas terdiri dari : mahasiswa, mata kuliah. Kumpulan dari entitas disebut Himpunan Entitas. Contoh : semua nasabah, semua mahasiswa. 3. Atribut (Elemen Data) : karakteristik dari suatu entitas. Contoh: entitas mahasiswa atributnya terdiri dari npm, nama, alamat, tgl lahir. 4. Nilai Data (Data Value) : isi data/informasi yang tercakup dalam setiap elemen data. Contoh: atribut nama mahasiswa dapat berisi nilai data: Dani, Dewi, Diaz. 5. Kunci Element Data (Key Data Element): tanda pengenal yang secara unik mengidentifikasikan entitas dari suatu kumpulan entitas. Contoh entitas mahasiswa yang mempunyai atribut atribut npm, nama, alamat, tgl lahir, menggunakan kunci element data npm. 6. Record Data: kumpulan isi element data yang saling berhubungan. Contoh: kumpulan atribut npm, nama, alamat, tgl lahir dari entitas mahasiswa: 4109073, Dani, Jl. Jend. Sudirman No. 4 Makassar, 4 April 1983.
D. Database Mangement System (DBMS) Seperti yang telah dikemukakan diawal, pada bagian ini kita akan mengulas lebih spesifik lagi mengenai Sistem Mangement Basis Data atau populernya disebut Database Managament System (DBMS). Yang mana adalah perangkat lunak yang berfungsi untuk mengelola database, mulai dari membuat database itu sendiri sampai dengan proses proses yang berlaku dalam database tersebut, baik berupa entry, edit, hapus, query terhadap data, membuat laporan dan lain sebagainya secara efektif dan efisien. Salah satu jenis DBMS yang sangat terkenal saat ini adalah Relational DBMS (RDBMS), yang mempresentasikan data dalam bentuk tabel tabel yang saling berhubungan. Sebuah tabel disusun dalam bentuk baris (record) dan kolom (field). Banyak sekali berkembang perangkat lunak RDBMS ini, misalnya : MySQL, Oracle, Sybase, dBase, MS. SQL Microsoft Access (MS. Access) dan lain-lain. Ada 3 kelompok perintah yang digunakan dalam mengelola dan mengorganisasikan data dalam RDBMS, yaitu : 1. Data Definition Language: merupakan perintah perintah yang digunakan oleh seorang Database Administrator untuk mendefinisikan struktur dari database, baik membuat tabel baru, menentukan struktur penyimpanan tabel, model relasi antar tabel, validasi data, dab lain sebagainya. 2. Data Manipulation Language (DML): perintah-perintah yang digunakan untuk memanipulasi dan mengambil data pada suatu database. Manipulasi yang dapat dilakukan terhadap data adalah : Penambahan Data Penyisipan Data Penghapusan Data Pengubahan Data 3. Data Control Language: bagian ini berkenaan dengan cara mengendalikan data, seperti siapa saja yang bisa melihat isi data, bagaimana data bisa digunakan oleh banyak user, dan lain-lain. Lebih mengarah ke segi sekuritas data.
E. Arsitektur basis data Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya, penjelasan ini disebut skema. Arsitektur system basis data memberikan kerangka kerja bagi pembangunan basis data. Menurut ANSI/SPARC, arsitektur basis data terbagi atas 3 level yaitu: 1. Internal/Physical Level: level terendah untuk mempresentasikan basis data, berhubungan dengan bagaimana data disimpan secara fisik (physical storage). Record disimpan dalam media penyimpanan dalam format byte. Didefinisikan sebagai sebuah Skema Internal. 2. External/View Level: level user, berhubungan dengan bagaimana data direpresentasikan dari sisi setiap user. Yang dimaksud dengan user adalah programmer, end user atau DBA. Setiap user mempunyai bahasa yang sesuai dengan kebutuhannya. Programmer menggunakan bahasa pemograman seperti C, COBOL, atau PL/I End User menggunakan bahasa query atau menggunakan fasilitas yang tersedia pada program aplikasi. Pada level eksternal ini, user dibatasi pada kemampuan perangkat keras dan perangkat lunak yang digunakan aplkasi basis data. Didefinisikan sebagai sebuah Skema Eksternal. 3. Conceptual/Logical Level: sebuah representasi seluruh muatan informasi yang dikandung basis data yang menghubungkan antara level internal dan level eksternal. Tidak seperti level eksternal, maka pada level conceptual, keberadaannya tidak memperhitungkan kekurangan perangkat keras maupun perangkat lunak pembangun aplikasi basis data. Didefinisikan sebagai sebuah Skema Konseptual.
F. Database Independence Dalam kebebasan data, aplikasi disekat dari bagaimana data disimpan dan distrukturkan. Kebebasan data adalah salah satu keuntungan utama dari penggunaan DBMS. Tujuan utama dari arsitektur 3 level diatas adalah untuk menyediakan data independence, dimana level diatasnya tidak berpengaruh oleh perubahan untuk level dibawahnya. Ada 2 jenis data independence: 1. Logical Data Independence (kebebasan data secara logika): perlindungan dari perubahan struktur logika suatu data. Logical data independence menunjuk kepada kekebalan dari skema eksternal untuk perubahan-perubahan dalam skema konseptual. Perubahan skema konseptual, seperti : memungkinkan penambahan atau penghapusan entity, atribut, atau relationship tanpa harus mengganti skema eksternal atau harus menulis kembali program aplikasi yang sudah ada. 2. Physical Data Independence (kebebasan data secara fisik): perlindungan dari perubahan struktur fisik suatu data. Physical data independence menunjuk kepada kekebalan dari skema konseptual untuk perubahan-perubahan dalam skema internal. Perubahan skema internal, seperti: penggunaan organisasi file atau struktur penyimpanan yang berbeda, penggunaan media penyimpanan yang berbeda, perubahan algoritma indeks atau hashing tanpa harus mengganti/merubah konseptual atau skema eksternal.
G. Model Basis Data Model basis data adalah kumpulan konsep yang terintegrasi yang menggambarkan data, hubungan antara data dan batasan-batasan data dalam suatu organisasi. Fungsi dari suatu model data untuk mempresentasikan data sehingga data tersebut mudah dipahami. Untuk menggambarkan data pada tingkat eksternal dan konseptual digunakan model data berbasis objek atau model data berbasis objek atau model data berbasis record. 1. Model Data Berbasis Objek menggunakan konsep entitas, atribut dan hubungan antar entitas. Beberapa jenis model data berbasis objek yang umum adalah: Entity Relationship Semantic Functional Object Oriented 2. Model Data Berbasis Record, basis data terdiri dari sejumlah record dalam bentuk yang tetap yang dapat dibedakan dari bentuknya. Ada 3 macam jenis model data berbasis record yaitu: Model Data Relasional (Relational), merupakan model data yang popular saat ini. Menggunakan model berupa tabel berdimensi dua yang disebut relasi atau tabel. Memakai kunci tamu (foreign key) sebagai penghubung dengan tabel lain. Model Data Hierarkhi (Hierarchical), dikenal pula sebagai model pohon. Model Data Jaringan (Network), disebut juga model CODASYL. Setiap anak biasa memiliki lebih dari satu orangtua.
H. Bahasa Query Formal dan Komersial Bahasa query yaitu pernyataan yang diajukan untuk mengambil informasi. Dan bahasa query ini adalah bahasa pada model data relasional yang terbagi menjadi 2 yaitu : 1. Bahasa Query Formal: bahasa query yang diterjemahkan dengan menggunakan symbol-simbol matematis terdiri dari: a. Procedural, yaitu pemakai memberi spesifikasi data apa yang dibutuhkan dan bagaimana cara mendapatkannya. b. Non procedural, yaitu pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. 2. Bahasa Query Komersial: bahasa query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly). Contoh : QUEL : berbasis pada bahasa kalkulus relasional QBE : berbasis pada bahasa kalkulus relational SQL : berbasis pada bahasa kalkulus relasional dan aljabar relasional
I. Perancangan Basis Data Perancangan basis data adalah proses pembuatan (develop) struktur database sesuai dengan data yang dibutuhkan oleh user. Dalam perancangan basis data tentu sangat dibutuhkan model data seperti apa yang diinginkan, dan hal itu sudah dibahas pada bagian sebelumnya. Selanjutnya mengambil langkah-langkah dalam perancangan basis data, yaitu: 1. Mendefinisikan kebutuhan (Requirements definition) tujuannya: untuk mengidentifikasikan dan mendeskripsikan data yang dibuat oleh user dalam sebuah organisasi. 2. Rancangan konseptual (Conceptual Design) tujuannya: untuk membuat sebuah model data konseptual (atau arsitektur informasi) yang akan mendukung perbedaan kebutuhan informasi dari beberapa user dalam sebuah organisasi. 3. Rancangan Implementasi (Implementation Design) tujuannyal: untuk memetakan model data logis (logical data model) kedalam sebuah skema yang dapat diproses oleh DBMS tertentu melalui transformasi ER-D ke Relasi. 4. Rancangan fisik (Physdical Design). Pada tahap terakhir ini, logical database structured (normalized relation, trees, network, dll) dipetakan menjadi physical storage structure seperti file dan tabel. Rancangannya seperti: Model detail oleh Database Specialist Diagram Entity-Relationship Normalisasi Spesifikasi hardware/software
J. Teknik Normalisasi Pengertian normalisasi ada beberapa yang berpendapat: 1. Istilah Normalisasi berasal dari E. F.Codd, salah seorang perintis teknologi basis data. Selain dipakai sebagai metodologi tersendiri untuk menciptakan struktur tabel 9 relasi dalam basis data (dengan tujuan mengurangi kemubadziran data), normalisasi terkadang hanya dipakai sebagai perangkat verifikasi terhadap tabel-tabel yang dihasilkan oleh metodologi lain (misalnya : E-R). 2. Kroenke mendefinisikan normalisasi sebagai proses untuk mengubah suatu relasi yang memiliki masalah tertentu ke dalam dua belah relasi atau lebih yang tidak memiliki masalah tersebut. Masalah yang dimaksud oleh Kroenke ini sering disebut dengan istilah anomaly. 3. Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data/database, teknik pengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi). 4. Normalisasi adalah suatu proses memperbaiki/membangun dengan model data relasional, dan secara umum lebih tepat dikoneksikan dengan model data logika. Proses normalisasi adalah proses pengelompokkan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya. Pada proses normalisasi dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saat menambah/menyisipkan, menghapus, mengubah dan mengakses pada suatu basis data. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi pada beberapa beberapa tabel lagi atau dengan kata lain perancangan basis data belum optimal. Tujuan dari normalisasi itu sendiri adalah: 1. Untuk menghilangkan kerangkapan data 2. Mengurangi kompleksitas 3. Untuk mempermudah pemodifikasian data.
Tahapan normalisasi dapat diurai sebagai berikut: 1. Bentuk Tidak Normal: menghilangkan perulangan group. 2. Bentuk Normal Pertama (1NF): menghilangkan ketergantungan sebagian. Bentuk normal kesatu mempunyai ciri yaitu setiap data dibentuk dalam file flat, data dibentuk dalam satu record demi satu record dan nilai dari field berupa atomic value. 3. Bentuk Normal Kedua (2NF): menghilangkan ketergantungan transitif. Bentuk normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk normal kesatu. 4. Bentuk Normal Ketiga (3NF): menghilangkan anomali-anomali hasil dari ketergantungan fungsional. Untuk menjadi bentuk Normal Ketiga maka relasi haruslah dalam bentuk Normal Kedua dan semua atribut bukan primer tidak punya hubungan yang transitif. Artinya setiap atribut bukan kunci harus bergantung hanya pada kunci primer secara menyeluruh. 5. Bentuk Normal Boyce-Codd (BCNF): menghilangkan ketergantungan multivalue. Boyce- Codd Normal Form mempunyai paksaan yang lebih kuat dari bentuk Normal Ketiga. Untuk menjadi BNCF, relasi harus dalam bentuk Normal Kesatu dan setiap atribut dipaksa bergantung pada fungsi pada atribut super key. 6. Bentuk Normal Keempat (4NF): menghilangkan anomali-anomali yang tersisa. 7. Bentuk Normal Kelima: pengujian untuk memastikan kebenaran isi tabel dan hubungan antara tabel tersebut.
Teknik Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data, teknik pengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi).
Pada normalisasi terdapat 3 aturan, yakni: Aturan Pertama: mendefinisikan atribut kunci, tidak adanya group berulang , semua atribut bukan kunci tergantung pada atribut kunci. Aturan Kedua: sudah memenuhi dalam bentuk normal kesatu, sudah tidak ada ketergantungan parsial, dimana seluruh field hanya tergantung pada sebagian field kunci. Aturan Ketiga: sudah berada dalam bentuk normal kedua, tidak ketergantungan transitif(dimana field bukan kunci tergantung pada field bukan kunci lainnya), bentuk normal seharusnya berada dalam bentuk normal tertinggi dan bergerak dari bentuk normal satu dan seterusnya untuk setiap kali membatasi hanya satu jenis redudansi. Keseluruhannya Cuma ada lima bentuk normal. Tiga bentuk normal pertama menekankan redudansi yang muncul dari Function Dependencies sedangkan bentuk keempat dan kelima menekankan redudansi yang muncul dari kasus Multi Valued Dependencies. BAB III KESIMPULAN & PENUTUP
A. Kesimpulan a. Basis data atau juga disebut database artinya berbasiskan pada data, tetapi secara konseptual, database diartikan sebuah koleksi atau kumpulan data-data yang saling berhubungan (relation), disusun menurut aturan tertentu secara logis, sehingga menghasilkan informasi. Untuk mengelola dan mengambil query basis data agar dapat disajikan dalam berbagai bentuk yang diinginkan dibutuhkan perangkat lunak yang disebut Sistem Management Basis Data atau juga disebut Data Base Management System (DBMS). Penggabungan Database Management System (DBMS) dengan Basis Data akan membentuk satu kesatuan yang disebut Sistem Basis Data. b. Komponen dasar dalam pembuatan basis data dengan adanya data, hardware, software dan user. Istilah-istilah dalam basis data juga seyogyanya kita tahu yaitu: enteprise, entitas, atribut, nilai data, kunci element data, record data. c. Menurut ANSI/SPARC, arsitektur basis data terbagi atas tiga level yaitu: Internal/Physical Level, External/View Level, Conceptual/Logical Level. Tujuan utama dari arsitektur 3 level tersebut adalah untuk menyediakan data independence yang terbagi dua: Logical Data Independence (kebebasan data secara logika), Physical Data Independence (kebebasan data secara fisik). Untuk menggambarkan data pada tingkat eksternal dan konseptual digunakan model data berbasis objek atau model data berbasis record. Bahasa query formal dan komersial adalah bahasa pada model data relasional, yang mana model data relasional merupakan salah satu dari model data berbasis record. Agar terciptanya basis data, maka butuh proses pembuatan. Langkah-langkah yang dapat diambil dalam perancangan basis data sebagai berikut: mendefinisikan kebutuhan data, rancangan konseptual, rancangan implementasi, rancangan fisik, langkah perbaikan. Suatu teknik untuk mengorganisasikan data kedalam tabel-tabel untuk memenuhi kebutuhan pemakai didalam suatu organisasi disebut normalisasi. Tujuan normalisasi: untuk menghilang kerangkapan data, untuk mengurangi kompleksitas, untuk mempermudah pemodifikasian data. Sedangkan Tahapan Normalisasi: bentuk tidak normal, bentuk normal pertama (1NF), bentuk normal kedua (2NF), bentuk normal ketiga (3NF), bentuk normal boyce-codd (BCNF), bentuk normal keempat (4NF), bentuk normal kelima.
B. Penutup Demikian yang dapat saya paparkan mengenai materi yang menjadi pokok bahasan dalam makalah ini, tentunya masih banyak kekurangan dan kelemahannya, karena terbatasnya pengetahuan dan kurangnya rujukan atau referensi yang ada hubungannya dengan judul makalah ini. Penulis banyak berharap para pembaca yang budiman sudi memberikan kritik dan saran yang membangun kepada penulis demi sempurnanya makalah ini dan dipenulisan makalah dikesempatan-kesempatan berikutnya. Semoga makalah ini berguna bagi penulis pada khususnya juga para pembaca yang budiman pada umumnya.
DAFTAR PUSTAKA http://elista.akprind.ac.id/upload/files/8511_Appendix_2_-_Desain_Basis_Data.pdf diakses pada tanggal 22 Desember 2013 pukul 15.39 di Makassar https://docs.google.com/folderview?id=0B2SzyFWHDRi7WlE2aGx3RUdIdkU diakses pada tanggal 22 Desember 2013 pukul 15.50 di Makassar https://docs.google.com/folderview?id=0B2SzyFWHDRi7WlE2aGx3RUdIdkU diakses pada tanggal 22 Desember 2013 pukul 15.52 di Makassar http://dezhadosa05716.blogspot.com/2012/03/desain-database.html diakses pada tanggal 22 Desember 2013 pukul 16.20 di Makassar http://parief.net/blog/wp-content/uploads/2012/10/Modul-Basis-Data.pdf diakses pada tanggal 22 Desember 2013 pukul 16.30 di Makassar
Pendekatan sederhana untuk SEO: Bagaimana memahami dasar-dasar optimasi mesin pencari dengan cara yang sederhana dan praktis melalui jalur penemuan non-spesialis untuk semua orang