Jumat, 06 Februari 2015

APLIKASI BASIS DATA



APLIKASI BASIS DATA


Kompetensi Dasar
Menerapkan teknologi basis data dan menganalisis aplikasi basis data dalam organisasi Kepolisian.

Indikator Hasil Belajar
1.         Menjelaskan pengertian sistem berbasis data;
2.         Menjelaskan tujuan sistem berbasis data;
3.         Menjelaskan manfaat sistem berbasis data;
4.         Menjelaskan komponen basis data;
5.         Menjelaskan pemodelan basis data;
6.         Mempraktekkan pembuatan Entity Relationship Diagram;
7.         Melakukan pengolahan basis data dengan aplikasi sistem basis data;
8.         Menguraikan aplikasi basis data sederhana yang dapat diterapkan pada fungsi Kepolisian.



A.        Pengertian
Data adalah objek abstrak yang merepresentasikan fakta dunia nyata tentang suatu objek tertentu. Seperti manusia, barang, hewan, keadaan, peristiwa, konsep dalam bentuk angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya.
Basis data terdiri dari 2 kata, yaitu basis & data. Basis dapat diartikan sebagai markas / gudang, tempat berkumpul. Sedangkan data adalah fakta yang mewakili suatu objek seperti tersebut diatas.
Basis Data adalah suatu kumpulan data terhubung (interrelated data) yang disimpan secara bersama-sama pada suatu media, tidak perlu kerangkapan data (controlled redundancy) dengan cara-cara tertentu sehingga mudah untuk digunakan atau ditampilkan kembali, dapat digunakan oleh satu atau lebih program aplikasi secara optimal, data disimpan tanpa mengalami ketergantungan pada program yang akan menggunakannya, data disimpan sedemikian rupa sehingga penambahan, pengambilan dan modifikasi data dapat dilakukan dengan mudah dan terkontrol.
Basis data sendiri dapat di definisikan dalam sejumlah sudut pandang seperti :
1.         Himpunan kelompok data / arsip yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat & mudah.
2.         Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan/ penumpukan (redundansi), untuk memenuhi berbagai kebutuhan.
3.         Kumpulan file/ tabel /arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.
Basis data dan lemari arsip sesungguhnya memiliki prinsip kerja dan tujuan yang sama. Prinsip utamanya adalah pengaturan data/arsip. Dan tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan kembali data/ arsip. Perbedaannya hanya terletak pada media penyimpanan yang digunakan . jika lemari arsip menggunakan lemari sebagai media penyimpanannya, maka basisdata mnenggunakan media penyimpanan elektronis seperti disk (disket, harddisk).
Dari pengertian tersebut dapat disimpulkan bahwa basis data mempunyai beberapa kriteria yang penting, yaitu :
1.         Bersifat data oriented dan bukan program oriented.
2.         Dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah basis datanya.
3.         Dapat berkembang dengan mudah, baik volumenya maupun strukturnya.
4.         Dapat memenuhi kebutuhan-kebutuhan sistem baru secara mudah.
5.         Dapat digunakan dengan cara-cara yang berbeda.
6.         Kerangkapan data (data redundancy) minimal
B.        Tujuan Sistem Berbasis Data
1.         Kecepatan & kemudahan (speed)
Pemanfaatan basis data memungkinkan untuk dapat menyimpan data atau melakukan perubahan/manipulasi terhadap data atau menampilkan kembali data tersebut dengan cepat dan mudah.
2.         Efisiensi ruang penyimpanan (space)
Karena keterkaitan yang erat antara kelompok data dalam sebuah basisdata,maka redundansi (pengulangan) pasti akan selalu ada, sehingga akan memperbesar ruang penyimpanan. Dengan basisdata, efisiensi ruang penyimpanan dapat dilakukan dengan menerapkan sejumlah pengkodean, atau dengan membuat relasi-relasi antar kelompok data yang saling berhubungan.
3.         Keakuratan (accuracy)
Pengkodean atau pembentukan relasi antar data bersama dengan penerapan aturan/batasan (constraint), dmain data, keunikan data, dsb, yang secara ketat dapat diterapkan dalam sebuah basis data, sangat berguna untuk menekan ketidak akuratan penyimpanan data.



4.         Ketersediaan (availability)
Dengan pemanfaatan jaringan komputer, maka data yang berada di suatu lokasi/cabang dapat juga diakses (tersedia/available) bagi lokasi/cabang lain.
5.         Kelengkapan (completeness)
Kelengkapan data yang disimpan dalam sebuah database bersifat relatif, bisa jadi saat ini dianggap sudah lengkap, tetapi belum tentu pada suatu saat dianggap lengkap. Untuk mengakomodasi kelengkapan data, seperti
6.         Keamanan (security)
aspek keamanan dapat diterapkan dengan ketat, dengan begitu kita dapat menentukan pemakai basis data serta obyek-obyek didalamnya ,serta jenis-jenis operasi apa saja yang boleh dilakukannya.
7.         Kebersamaan pemakaian (sharability)
Basis data yang dikelola dengan aplikasi multi user dapat memenuhi kebutuhan ini. Pemakai basis data sering kali tidak terbatas hanya pada satu pemakaian saja atau oleh satu sistem aplikasi saja. Basis data yang dikelola oleh sistem (aplikasi) yang mendukung lingkungan multiuser, akan dapat memenuhi kebutuhan ini, tetapi dengan menjaga/menghindari terhadap munculnya persoalan baru seperti inkonsistensi data (karena data yang sama diubah oleh banyak pemakai pada saat bersamaan).
C.        Keuntungan Sistem Basis Data:
1.         Mengurangi redudansi data
          Data yang sama pada beberapa aplikasi cukup disimpan sekali saja.
2.         Integritas Data
          Dimana data terismpan secara akurat karena tidak adanya redudansi data.
3.         Menghindari inkonsisten data
          Sebagai akibat tidak adanya data yang redundansi data, sehingga tidak terjadi inkonsisten data, karena data yang akan diupdate cukup dilakukan sekaligus saja.
4.         Penggunaan data bersama
          Data yang sama dapat diakses atau dimanfaatkan oleh beberapa user pada saat yang bersamaan.
5.         Standarisasi data
          Akibat tidak adanya redundansi, inkonsisten, dan integritas data, maka akan terciptanya adanya standarisasi data.
6.         Jaminan Keamanan Data (Security Data)
          Data yang tersimpan hanya dapat diakses oleh yang mempunyai otoritas terhadap data tersebut.
D.        Komponen Sistem Basis Data
1.         Perangkat keras
berupa komputer dan bagian-bagian didalamnya, seperti prosesor, memori & harddisk. Komponen inilah yang melakukan pemrosesan dan juga untuk menyimpan basis data.
2.         Objek Basisdata
sebuah DBMS dapat memiliki beberapa basisdata, setiap basisdata dapat berisi sejumlah objek basisdata (file,tabel,indeks dsb). Disamping berisi data,setiap basisdata juga menyimpan definisi struktur (baik untuk basisdata maupun objek-objeknya secara detail).
3.         Perangkat lunak
perangkat lunak ini terdiri dari sistem operasi dan perangkat lunak/program pengelola basisdata. Perangkat lunak inilah yang akan menentukan bagaimana data diorganisasi,disimpan, diubah dan diambil kembali. Ia juga menerapkan mekanisme pengamanan data, pemakaian data secara bersama, pemaksaan keakuratan/konsistensi data, dsb.
          Contoh perangkat lunak DBMS : MS access, SQL Server, Oracle dsb.
4.         Pengguna/user
          pengguna dapat digolongkan menjadi 3 :
a.                Pengguna akhir / end user.
Dapat dibagi menjadi 2 :
1)                  Pengguna aplikasi : adalah orang  yang mengoperasikan program aplikasi yang dibuat oleh pemrogram aplikasi.
2)                  Pengguna interaktif : adalah orang yg dpt memberikan perintah-perintah pada antar muka basisdata, misalnya SELECT, INSERT dsb.
b.                Pemrogram aplikasi
adalah orang yang membuat program aplikasi yang menggunakan basisdata.
c.                 Administrator database / DBA(database administrator)
adalah orang yang bertanggungjawab terhadap pengelolaan basisdata. Tugas DBA :
1)                  mendefinisikan basisdata
2)                  menetukan isi basisdata
3)                  menentukan sekuritas basisdata
E.        Pemodelan Data
Model Data merupakan sekumpulan perangkat konseptual untuk menggambarkan data, hubungan antar data, semantik (makna) data dan batasan data. Dengan menggunakan model data ini maka akan memberikan kemudahan untuk melakukan evaluasi/analisis, dan perbaikan sebelum diimplementasikan ke dalam Sistem Basis Data. Pemodelan data ada beberapa bentuk model, yaitu model hierarkis, jaringan dan relasional serta berorientasi objek.
Model database hirarki dan jaringan merupakan model database yang tidak banyak lagi dipakai saat ini, karena adanya berbagai kelemahan dan hanya cocok untuk struktur hirarki dan jaringan saja. Artinya tidak mengakomodir untuk berbagai macam jenis persoalan dalam suatu sistem database.
Model Entity-Relationship (ER) adalah model data konseptual tingkat tinggi untuk perancangan basis data. Model data konseptual adalah himpunan konsep yang mendeskripsikan struktur basis data, transaksi pengambilan dan pembaruan basis data.
Model ER tak tergantung DBMS dan platform perangkat keras tertentu. Model ER dikemukakan oleh Chen [1976]. Sejak itu, telah memperoleh banyak perhatian dan perluasan.
Model ER merupakan persepsi terhadap dunia nyata sebagai terdiri objek-objek dasar yang disebut entitas dan keterhubungan (relationship) antar entitas-entitas itu.
Model ER menggunakan diagram untuk menggambarkan relasi antar entitinya, bentuk diagram yang sering digunakan adalah Entity Relationship Diagram (ERD), ada tiga hal yang perlu diperhatikan dalam ERD, yaitu Entitas, Relationship dan Atribut.
1.         Entitas
adalah objek yang ada dan dapat dibedakan objek yang lain (barang, manusia, keadaan). Keberadaan entitas berdiri sendiri dan bisa nyata maupun tidak nyata. Entitas direpresentasikan dengan sekumpulan atribut, entitas orang mempunyai atribut nama, alamat, tanggal lahir dll.
Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama membentuk sebuah himpunan entitas (entity sets). Sederhananya, entitas menunjuk pada individu suatu objek, sedang himpunan entitas menunjuk pada rumpun (family) dari individu tersebut.
Seorang pasien, misalnya akan dimasukkan dalam himpunan entitas pasien. Sedang seorang dokter akan ditempatkan dalam himpunan entitas dokter.
Dalam berbagai pembahasan/literature, penyebutan himpunan entitas (yang kurang praktis) ini seringkali digantikan dengan sebutan entitas saja.
Karena itu sering ditemui, penggunaan istilah entitas (entity) di sebuah literature sebenarnya menunjuk pada himpunan entitas.
Sebagaimana model relasional, adalah penting dan berguna untuk memasukkan kunci yang diasosiasikan dengan himpunan entitas. Kunci pada himpunan entitas S, adalah himpunan atribut A. Sehingga tidak ada dua entitas di S yang mempunyai nilai sama untuk tiap atribut di A dan tidak ada subset di A yang dapat menjadi kunci di S, dengan demikian kunci mempunyai property minimal.
2.         Atribut
merupakan penggambaran rinci entitas. Setiap atribut harus dijelaskan dengan suatu nilai, misalnya entitas orang mempunyai atribut nama dengan nilai “Malikus Sumadyo”. Nilai dari atribut tersebut dapat juga diatur, misalnya panjang karakter nama tidak boleh lebih dari 20 karakter.
3.         Relationship
menggambarkan hubungan yang nyata diantara beberapa entitas. Tingkatan relationship ini adalah:
a.                Unary: hanya melibatkan satu entitas
b.                Binary: melibatkan dua entitas
c.                 Ternary: melibatkan lebih dari dua entitas
Kebanyakan relationship adalah binary dengan derajat relasinya dapat one to one, yaitu setiap record pada satu entitas hanya mempunyai hubungan dengan satu record pada entitas lainnya. Sedangkan relasi one to many yaitu setiap satu record pada entitas tertentu berhubungan dengan banyak record pada entitas yang lain. Dan many to many yaitu banyak record pada suatu entitas berhubungan dengan banyak record pada entitas yang lain.
F.        Tahap Pembuatan Diagram ER
Diagram ER selalu dibuat secara bertahap. Paling tidak ada dua kelompok penahapan yang biasa ditempuh di dalam pembuatan diagram ER, yaitu :
Pembuatan Diagram ER diawali dengn preliminary design. Yaitu :
a.         Mengidentifikasi dan menetapkan seluruh entity yang terlibat dalam sistem database tersebut.
b.         Menentukan attribute-attribute atau field dari masing-masing entity beserta kunci (key)-nya.
Menentukan attribute dari suatu entitas sangat menentukan baik atau tidaknya sistem database yang dirancang, karena attribute ini sangat menentukan nantinya dalam proses relasi. Attribute merupakan ciri khas yang melekat pada suatu entity, misalnya attribute pada mahasiswa dapat berupa NRP, nama, tempat lahir, tanggal lahir, alamat, nama orang tua, pekerjaan orang tua dan lain-lain. Dari sekian banyak kemungkinan attribute yang ada pada entity mahasiswa, kita dapat menggunakan hanya yang perlu saja. Setelah menentukan attributenya selanjutnya adalah menentukan field kunci. Field kunci adalah penanda attribute tersebut sehingga bisa digunakan untuk relasi nantinya dan field kunci ini harus bersifat unik. Misalnya pada entity mahasiswa, attribute NRP bisa dijadikan field kunci, karena bersifat unik dan tidak ada mahasiswa yang mempunyai NRP sama.
c.         Mengidentifkasi dan menetapkan seluruh himpunan relasi diantara himpunan-himpunan entity yang ada beserta kunci tamu (foreign key)- nya.
Setelah menentukan entity dan attribute beserta field kuncinya, maka selanjutnya adalah menentukan entity yang terbentuk akibat adanya relasi antar entity. Misalnya antara entity mahasiswa dengan entity dosen, terjadi suatu hubungan proses mengajar, maka proses mengajar ini merupakan entity baru. Entity mengajar ini harus kita tentukan juga attribute yang melekat padanya beserta kunci tamu (foreign key). Kunci tamu adalah field kunci utama pada tabel lain, dan field tersebut digunakan juga pada tabel yang satu lagi. Misalnya NRP adalah
field kunci dari entity mahasiswa, pada entity mengajar terdapat juga attribute NRP, maka keberadaan  attribute NRP pada entity mengajar disebut sebagai kunci tamu. Proses menentukan hubungan antar entity juga sangat menentukan kualitas system database yang dirancang.
d.         Menentukan derajat relasi untuk setiap himpunan relasi.
Setelah semua entity dan attribute yang dibutuhkan terbentuk, maka selanjutnya adalah menentukan derajat relasi antar entity tersebut, apakah satu kesatu, satu ke banyak atau sebaliknya, atau banyak ke banyak. Berhati-hatilah dalam menentukan derajat relasi ini, karena nantinya akan berhubungan dengan proses query terhadap data
e.         Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif (non key).
G.        Jenis-Jenis Kunci (Key)
1.         Candidat Key
Sebuah attribute atau lebih yang secara unit mengidentifikasi sebuat record, disebut candidate key. Attribute ini mempunyai nilai yang unik pada hampir setiap recordnya. Fungsi dari candidate key ini adalah sebagai calon primary key.
2.         Primary Key
Salah satu atribut dari candidat key dapat dipilih menjadi primary key dengan 3 kriteria sbb :
a.                Key tersebut lebih natural untuk dijadikan acuan
b.                Key tersebut lebih sederhana
c.                 Key tersebut cukup uniqe
3.         Foreign Key
Jika sebuah primary key terhubungan ke table/entity lain, maka keberadaan primary key pada entity tersebut di sebut sebagai foreign key. Misal : Primary Key KodeDosen dari entity Dosen digunakan juga pada field entity KRS, maka keberadaan field KodeDosen pada entity KRS disebut sebagai foreign key.
4.         Alternate Key
Setiap atribut dari candidate key yang tidak terpilih sebagai primary key akan dinamakan alternate key. Pada contoh sebelumnya bila untuk primary key dipilih ID_Cus maka alternate key nya adalah No.of Pay.
H.        Jenis Perintah Basis Data
1.         Bahasa Definisi Data (Data Definition Language/ DDL)
DDL adalah perintah-perintah yang biasa digunakan oleh administrator basis data (DBA) utnuk mendefinisikan skema ke DBMS. Skema adalah deskripsi lengkap tentang struktur medan, rekaman, dan hubungan data pada basis data Index merupakan suatu mekanisme yang lazim digunakan pada basis data, yang memungkinkan pengambilan data dapat dilakukan dengan cepat.
DDL Digunakan untuk mespesifikasikan struktur/skema basis data yang menggambarkan/mewakili desain basis data secara keseluruhan.
Hasil kompilasi perintah DDL adalah kamus data (File yang berisi metadata (data yang mendeskripsikan data sesungguhnya).
Struktur penyimpan dan metode akses yang digunakan oleh sistem basis data disebut dengan data storage and definition language.
2.         Bahasa Manipulasi Data (Data Manipulation laguage/ DML)
DML adalah perintah-perintah yang digunakan untuk mengubah, manipulasi dan mengambil data pada basis data. Tindakan seperti menghapus, mengubah, dan mengambil data menjadi bagian dari DML.
DML pada dasarnya dibagi menjadi dua :
a.                Prosedural, yang menuntut pengguna menentukan data apa saja yang diperlukan dan bagaimana cara mendapatkannya.
b.                Nonprosedural, yang menuntut pengguna menentukan data apa saja yang diperlukan, tetapi tidak perlu menyebutkan cara mendapatkannya.
3.         DQL ( Data Query Language)
Query sesungguhnya berarti pertanyaan atau permintaan. Istilah ini tetap dipertahankan dalam bentuk asli, karena telah populer di kalangan pengguna DBMS di Indonesia
I.          Operasi dasar pembuatan Basis data
1.         Pembuatan Basis Data (Create Database)
Yang identik dengan pembuatan lemari arsip yang baru.
2.         Penghapusan Basis Data (Drop Database)
Yang identik dengan perusakan lemari arsip (sekaligus beserta isinya, jika ada)
3.         Pembuatan File/Table baru ke suatu basis data (Create Table)
Yang identik dengan penambahan map arsip baru ke sebuah lemari arsip yang telah ada.
4.         Penghapusan File/Table dari suatu basis data (Drop Table)
Yang identik dengan perusakan map arsip lama yang ada di sebuah lemari arsip.
5.         Penambahan data baru ke suatu file/table di sebuah basis data (insert)
Identik dengan penambahan lembaran arsip baru kesebuah map arsip.
6.         Pengambilan data dari sebuah file/table (Retrieve/Search)
Identik dengan pencarian lembaran arsip dari sebuah map arsip.
7.         Pengubahan data dari sebuah file/table (Update)
Identik dengan perbaikan isi lembaran arsip yang ada di sebuah map arsip.
8.         Penghapusan data dari sebuah file/table (Delete)
Identik dengan penghapusan sebuah lembaran arsip yang ada di sebuah map arsip.
J.         Latihan Dasar (Kasus Perpustakaan)
Dalam perpustakaan kampus setidaknya ada yang perlu dicatat atau menjadi antitas yaitu buku sebagai salah satu bahan pustaka yang sering dipinjam, kemudian anggota yaitu anggota perpustakaan yang diperbolehkan untuk meminjam bahan pustaka, dan transaksi peminjaman buku. Ketiga entitas tersebut perlu dirinci atributnya sebagai berikut:
Buku :
1.         Kode buku : atribut ini sebagai pembeda atas setiap buku dengan buku lainnya meskipun mempunyai judul atau atribut lain yang sama.
2.         Judul : atribut untuk judul buku
3.         Pengarang
4.         Penerbit
5.         Tahun : atribut untuk mencatat tahun terbitan buku
6.         Jumlah halaman
Anggota :
1.         No anggota : atribut sebagai pembeda antara anggota satu dengan lainnya
2.         Nama : atribut untuk nama anggota
3.         Alamat
4.         Tanggal lahir
5.         Jurusan
Peminjaman :
1.         No urut peminjaman
2.         Nama peminjam
3.         Buku yang dipinjam
4.         Tanggal peminjaman
5.         Tanggal pengembalian
Dari keterangan diatas perlu penyusunan pemodelan data sehingga mempermudah dalam penyusunan basis data dengan beberapa penjelasan sebagai berikut :
1.         Entitas buku disusun menjadi tabel dengan 6 field yaitu kode_buku (ingat bahwa nama field tidak boleh menggunakan spasi) type data kode_buku dapat berbentuk text (untuk MS Access) atau varchar (untuk MySQL) field kode_buku dibuat sebagai kunci primer (primary key). Kemudian judul, pengarang dan penerbit dengan type data text, sedangkan tahun dan jml_halaman dapat berbentuk number (dalam MySQL integer).
2.         Entitas anggota disusun menjadi tabel dengan 5 field yaitu no_anggota dengan type data text sebagai kunci primer, nama, alamat dan jurusan dengan type data text dan tgl_lahir dengan type data date.
3.         Entitas peminjaman disusun menjadi tabel dengan field no_urut_pinjam dengan type data number sebagai kunci primer. Nama peminjam tidak perlu dijadikan field karena atribut ini mengacu pada no_anggota pada tabel anggota, sehingga cukup hanya dimasukkan no_anggota sebagai foreign key. Begitu pula untuk atribut buku yang dipinjam tidak perlu dijadikan field pada tabel peminjaman, tetapi justru perlu field kode_buku yang nantinya menjadi foreign key terhadap tabel buku. Dengan demikian cukup dengan 5 field dengan field tgl_pinjam dan tgl_kembali dengan type data date.




Dengan menggunakan Microsoft Access model diatas dapat diimplementasikan sebagai berikut :


Gambar 1 : Desain tabel buku

Gambar 2 : Desain tabel anggota


Gambar 3 : Desain tabel peminjaman



Model entity relationship ketiga tabel tersebut diatas diimplementasikan pada MS Access dengan diagram berikut :

Gambar 4 : Relationship antar tabel

Pengisian data buku, anggota dan peminjaman diisi sesuai contoh berikut
Gambar 5 : data buku

K.        Rangkuman
Aplikasi basis data adalah aplikasi yang mendayagunakan sumber informasi yang dihasilkan oleh basis data. Aplikasi ini berupa kumpulan instruksi yang melakukan permintaan kepada pangkalan data untuk menggali informasi dengan perintah query yang terstruktur atau disebut SQL (Structured Query Language). Lembaga Kepolisian sangat membutuhkan aplikasi seperti ini dalam operasional berbagai kegiatannya.

Tidak ada komentar:

Posting Komentar