Kamis, 26 April 2012

MODUL SISTEM BASIS DATA


BAB I

SISTEM BASIS DATA


PENGERTIAN BASIS DATA DAN SISTEM BASIS DATA
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.
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
Sistem Basis Data adalah sekumpulan basis data dengan para pemakai yang menggunakan basis data secara bersama-sama, personel-personel yang merangcang dan mengelola basis data, teknik-teknik untuk merancang dan mengelola basis data, serta sistem komputer untuk mendukungnya.

PENYUSUN SISTEM BASIS DATA
Sistem basis data merupakan lingkup yang lebih luas dari basis data. Dari gambar 1 bahwa sistem basis data merupakan lingkup terbesar dalam organisasi data. Sistem basis data mencakup semua bentuk komponen data yang ada dalam suatu sistem.  Sedangkan basis data merupakan komponen utama yang menyusun sistem basis data.



 




















Gambar 1 : Hirarki Sistem Basis Data
Keterangan :
1.    Bit, adalah satu sistem angka biner yang terdiri atas dua macam nilai, yaitu 0 dan 1. Sistem angka biner merupakan dasar yang dapat digunakan untuk komunikasi antara manusia dan mesin (komputer) yang merupakan sekumpulan komponen elektronik dan hanya dapat membedakan dua macam keadaan saja yaitu high and low.
2.    Byte, adalah bagian terkecil yang dapat di alamatkan dalam memori. Byte merupakan sekumpulan bit yang secara konvensional terdiri atas kombinasi delapan bit. Satu byte digunakan untuk mengkodekan satu buah karakter dalam memori.
3.    Field, sering juga disebut atribut/data item/elemen adalah unit terkecil yang disebut data. Field merupakan sekumpulan byte/karakter yang mempunyai makna.
4.    Agregat data, adalah sekelompok rinci data yang mempunyai ciri tertentu dan diberi nama. Contoh : data bernama tanggal terdiri atas field hari, bulan dan tahun.
5.    Record, disebut juga tuple atau rekaman, merupakan sekumpulan field yang saling berhubungan.
6.    File, adalah sekumpulan record. Dalam satu file masing-masing record mempunyai jumlah field yang sama.
7.    Basis data, disebut pula sebagai koleksi data atau pustaka data adalah sekumpulan dari bermacam-macam file.
8.    Sistem Basis Data, adalah merupakan sistem yang bertugas memanajemen record-record menggunakan komputer  dan untuk menyimpan maupun mengambil kembali informasi-informasi yang diperlukan oleh pemakai. Selain itu Sistem Basis Data juga bisa diartikan sebagai gabungan antara dua unsur, yaitu basis data dan sistem manajemen basis data.



BAB II

SYARAT PENYUSUN DATABASE
Penyusun database digunakan untuk  mengatasi masalah-masalah pada penyusunan data yaitu :
1.  Redundansi dan Inkonsistensi Data
Redundansi data adalah duplikasi data dalam beberapa file data sehingga data yang sama di simpan di dalam lebih dari 1 lokasi. Redundansi data terjadi ketika kelompok yang berbeda dalam organisasi mendapatkan data yang sama secara independen dan menyimpannya secara independen juga. Redundansi data menghabiskan tempat penyimpanan data dan juga menimbulkan inkonsisten data, dalam arti atribut yang sama mungkin mempunyai nilai berbeda. Redundansi mengakibatkan data tidak konsisten. Penyimpanan dibeberapa tempat untuk data yang sama ini disebut sebagai redundansi dan mengakibatkan pemborosan ruang penyimpanan dan juga biaya untuk akses lebih tinggi.
2.  Kesulitan pengaksesan data
Pada suatu saat dibutuhkan untuk mencetak data mahasiswa yang berada padahal belum tersedia program yang telah ditulis untuk  mengeluarkan data tersebut. Maka kesulitan akan timbul, dan penyelesaian ke arah itu adalah DBMS yang mampu mengambil data secara langsung dengan bahasa yang familiar dan mudah digunakan (user frindly).
3.  Isolasi data untuk strandarisasi
Jika data tersebar dalam beberapa file / table dalam bentuk format yang tidak sama, maka ini akan menyulitkan dalam menulis program aplikasi untuk mengambil dan menyimpan data. Maka haruslah data dalam satu basis data dibuat satu format, sehingga mudah dibuat program aplikasinya.
4.  Multiple User (Banyak Pemakai)
Dalam rangka mempercepat semua daya guna sistem dan mendapat response waktu yang cepat, beberapa sistem mengijinkan banyak pemakai untuk meng “update“ data secara simultan. Salah satu alasan mengapa basis data dibangun karena nantinya data tersebut digunakan oleh banyak orang dalam waktu yang sama atau berbeda, diakses oleh program yang sama tapi berbeda orang dan waktu.
5.  Masalah keamanan (security)
Tidak semua pemakai sistem basis data diperbolehkan untuk mengakses semua data. Misalkan data mengenai gaji seorang karyawa hanya boleh dibuka oleh bagian keuangan dan personalia, tidak diperkenankan bagian gudang membaca dan mengubahnya.
6.  Masalah integritas (kesatuan)
Basis data berisi file / table yang saling terkait, masalah utama adalah bagaimana kaitan antar table itu terjadi. Meskipun kita mengetahui table A berkaitan dengan table B, namun secara teknis ada field / atribut kunci yang mengaitkan / merelasikan table tersebut.
7. Masalah data independence (kebebasan data)
Paket bahasa yang diciptakan oleh DBMS, perubahan pada struktur file / table, setiap kali kita hendak melihat data cukup dengan utility list, menambah data dengan Append (misal untuk DBMS Clipper atau Foxpro), merubah struktur table dengan Design Table, melakukan penelurusan data dengan query (misal untuk Access, Sql Server, MySql atau Oracle). Ini berarti perintah-perintah dalam paket DBMS bebas terhadap basis data. Apapun perubahan dalam basis data semua perintah akan mengalami kestabilan tanpa mengalami perubahan.

TUJUAN BASIS DATA
Tujaun utama dalam pengelolaan data dalam sebuah basis data adalah agar dalam menemukan kembali data/ mengakses data dapat dilakukan dengan cepat dan mudah. Dengan tujuan tersebut terdapat beberapa manfaat dalam penggunaan basis data.
Pemanfaatan Basis Data dalam pengelolaan data antara lain :
·         Kecepatan dan kemudahan :
Pemanfaatan basis data memungkinkan untuk dapat menyimpan data atau melakukan perubahan/manipulasi terhadap data atau menampilkan kembali data tersebut dengan cepat dan mudah.
·         Efisiensi Ruang Penyimpanan:
Penggunaan ruang penyimpanan di dalam basis data dilakukan  untuk mengurangi jumlah redundansi (pengulangan) data, baik dengan melakukan penerapan sejumlah pengkodean atau dengan membuat relasi-relasi (dalam bentuk file) antar kelompok data yang saling berhubungan.
·         Keakuratan
Pemanfaatan pengkodean atau pembentukan relasi antar data bersama dengan penerapan aturan/batasan tipe data, domain data, keunikan data dan sebagainya dan diterapkan dalam basis data, sangat berguna untuk menentukan ketidakakuratan pemasukan atau penyimpanan data.
·         Ketersediaan
Pertumbuhan data (baik dari jumlah maupun jenisnya) sejalan dengan waktu akan semakin membutuhkan ruang penyimpanan yang besar. Data yang sudah jarang atau bahkan tidak pernah lagi digunakan dapat diatur untuk dilepaskan dari sistem basis data dengan cara penghapusan atau dengan memindahkannya ke media penyimpanan.
·         Kelengkapan (Completeness)
Lengkap atau tidaknya data yang dikelola bersifat relatif baik terhadap kebutuhan pemakai maupun terhadap waktu. Dalam sebuah basis data, struktur dari basis data tersebut juga harus disimpan. Untuk mengakomodasi kebutuhan kelengkapan data yang semakin berkembang, maka tidak hanya menambah record-record data, tetapi juga melakukan penambahan struktur dalam basis data.
·         Keamanan (Security)
Sistem keamanan digunakan untuk dapat menentukan siapa saja yang boleh menggunakan basis data dan menentukan jenis operasi apa saja yang boleh dilakukan.
·         Kebersamaan pemakai
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).

Keuntungan Sistem Basis Data
Keuntungan-keuntungan yang dapat diperoleh dari penerapan sistem basis data
pada suatu perusahaan adalah sebagai berikut:
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.

Kerugian Sistem Basis Data / Masalah Pengolahan data
·   Volume data yang senantiasa bertambah
      Kebutuhan data dalam memori meningkat
      Kecepatan pelacakan data menurun
      Organisasi dan pemutakhiran data lebih rumit
      Keamanan data lebih rawan
·   Duplikasi Data
 -    Pemborosan memori
 -    Pemutakhiran data lebih rumit
 -    Keterkaitan antar data tidak jelas

·   Format & struktur data yang tidak baku
-     Integrasi data lebih sulit
-     Lebih menghabiskan waktu dan biaya untuk konversi data
-     Data tidak kompatibel
-     Pemutakhiran dan validasi lebih rumit.
·   Keamanan data yang tak layak
      resiko kerusakan dan kehilangan data
      Resiko penyadapan, penyalinan dan manipulasi data.
      Kemungkinan serangan virus.
·   Teknologi manajemen data yang tidak memadai
      nilai pemanfaatan rendah
      keamanan data menjadi rawan
      kinerja sistem informasi menurun.




BAB III

KOMPONEN SISTEM BASIS DATA

1.  Perangkat Keras
Perangkat keras dapat bekerja berdasarkan perintah yang telah ditentukan ada padanya, atau yang juga disebut dengan dengan istilah instruction set. Dengan adanya perintah yang dapat dimengerti oleh hardware tersebut, maka hardware tersebut dapat melakukan berbagai kegiatan yang telah ditentukan oleh pemberi perintah.
Secara fisik, Komputer terdiri dari beberapa komponen yang merupakan suatu sistem. Sistem adalah komponen-komponen yang saling bekerja sama membentuk suatu kesatuan. Apabila salah satu komponen tidak berfungsi, akan mengakibatkan tidak berfungsinya proses-proses yang ada komputer dengan baik. Komponen komputer ini termasuk dalam kategori elemen perangkat keras (hardware). Berdasarkan fungsinya, perangkat keras komputer dibagi menjadi :
1. Input divice (unit masukan)
2. Process device (unit Pemrosesan)
3. Output device (unit keluaran)
4. Backing Storage ( unit penyimpanan)
5. Periferal ( unit tambahan)
Komponen dasar pada komputer terdiri dari input, process, output dan storage. Input device terdiri dari keyboard dan mouse, Process device adalah microprocessor (ALU, Internal Communication, Registers dan control section), Output device terdiri dari monitor dan printer, Storage external memory terdiri dari harddisk, Floppy drive, CD ROM, Magnetic tape. Storage internal memory terdiri dari RAM dan ROM. Sedangkan komponen Periferal Device merupakan komponen tambahan atau sebagai komponen yang belum ada atau tidak ada sebelumnya. Komponen Periferal ini contohnya : TV Tuner Card, Modem, Capture Card.
2.  Perangkat Lunak
Perangkat lunak adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi yang akan menjalankan suatu perintah. Melalui sofware atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah
Software atau perangkat lunak komputer berdasarkan distribusinya dibedakan menjadi beberapa macam, yaitu software berbayar, software gratis atau free ( Freeware, free software, shareware, adware) .
Software berbayar merupakan perangkat lunak yang didistribusikan untuk tujuan komersil, setiap pengguna yang ingin menggunakan atau mendapatkan software tersebut dengan cara membeli atau membayar pada pihak yang mendistribusikannya. pengguna yang menggunakan software berbayar umumnya tidak diijinkan untuk menyebarluaskan software tersebut secara bebas tanpa ijin ada penerbitnya. contoh software berbayar ini misalnya adalah sistem microsoft windows, microsoft office, adobe photo shop, dan lain-lain.
Freeware atau perangkat lunak gratis adalah perangkat lunak komputer berhak cipta yang gratis digunakan tanpa batasan waktu, berbeda dari shareware yang mewajibkan penggunanya membayar (misalnya setelah jangka waktu percobaan tertentu atau untuk memperoleh fungsi tambahan). Para pengembang perangkat gratis seringkali membuat perangkat gratis freeware “untuk disumbangkan kepada komunitas”, namun juga tetap ingin mempertahankan hak mereka sebagai pengembang dan memiliki kontrol terhadap pengembangan selanjutnya. Freeware juga didefinisikan sebagai program apapun yang didistribusikan gratis, tanpa biaya tambahan. Sebuah contoh utama adalah suite browser dan mail client dan Mozilla News, juga didistribusikan di bawah GPL (Free Software).
3.  Basis data
Data merupakan fakta mengenai suatu objek seperti manusia, benda, peristiwa, konsep, keadaan dan sebagainya yang dapat dicatat dan mempunyai arti secara implisit. Data dapat dinyatakan dalam bentuk angka, karakter atau simbol, sehingga bila data kumpulkan dan saling berhubungan maka dikenal dengan istilah basis data (database). Sedangkan basis data merupakan kumpulan informasi bermanfaat yang diorganisasikan ke dalam aturan yang khusus. Informasi ini adalah data yang telah diorganisasikan ke dalam bentuk yang sesuai dengan kebutuhan seseorang.


4.  Pemakai
Brainware Komputer adalah setiap orang yang terlibat dalam kegiatan pemanfaatan komputer atau sistem pengolahan data. Brainware juga dapat diartikan sebagai perangkat intelektual yang mengoperasikan dan mengeksplorasi kemampuan dari hardware komputer maupun software komputer. Tanpa adanya brainware ini mustahil hardware dan software yang canggih sekalipun dapat dimanfaatkan secara maksimal. Berdasarkan tingkat pemanfaatannya, brainware komputer dibagi dalam 4 tingkatan :
a.    System Analyst
System Analyst adalah seseorang yang bertanggung jawab atas penelitian, perencanaan, pengkoordinasian, dan merekomendasikan pemilihan perangkat lunak dan sistem yang paling sesuai dengan kebutuhan organisasi bisnis atau perusahaan. System Analyst juga memegang peranan yang sangat penting dalam proses pengembangan sistem.
Seorang system analyst harus memiliki setidaknya empat keahlian : analisis, teknis, manajerial, dan interpersonal (berkomunikasi dengan orang lain). Kemampuan analisis memungkinkan seorang system analyst untuk memahami perilaku organisasi beserta fungsi-fungsinya, pemahaman tersebut akan membantu dalam mengidentifikasi kemungkinan terbaik serta menganalisis penyelesaian permasalahan. Keahlian teknis akan membantu seorang system analyst untuk memahami potensi dan keterbatasan dari teknologi informasi. Dan seorang system analyst harus mampu untuk bekerja dengan berbagai jenis bahasa pemrograman, sistem operasi, serta perangkat keras yang digunakan. Keahlian manajerial akan membantu seorang system analyst untuk mengelola proyek, sumber daya, risiko, dan perubahan. Keahlian interpersonal akan membantu system analyst dalam berinteraksi dengan pengguna akhir sebagaimana halnya dengan programer, administrator dan profesi sistem lainnya.
b.    Programmer
Programmer adalah seseorang yang mempunyai kemampuan menguasai salah satu atau banyak bahasa pemrograman seperti bahasa C, Pascal, Java, dll. Programmer juga bisa dikatakan sebagai pembuat dan petugas yang mempersiapkan program yang dibutuhkan pada sistem komputerisasi yang akan dirancang.
c.   Administrator
Administrator adalah seseorang yang bertugas mengelola suatu sistem operasi dan program-program yang berjalan pada sebuah sistem komputer atau jaringan komputer.
d.   Operator
Operator adalah pengguna biasa yang hanya memanfaatkan sistem komputer yang sudah ada atau istilahnya hanya menggunakan apilkasi-aplikasi tertentu.

4 tingkatan di atas merupakan brainware/pengguna umum dari sebuah sistem komputer. Sebenarnya dalam bidang IT masih banyak brainware-brainware komputer lainnya.
5.  Sistem Operasi
Sistem operasi adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan perangkat lunak aplikasi seperti program-program pengolah kata dan peramban web.
Secara umum, Sistem Operasi adalah perangkat lunak pada lapisan pertama yang ditempatkan pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi
Kalau sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah penghubung antara lapisan hardware dan lapisan software. Lebih jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem berkas. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur schedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.
Dalam banyak kasus, Sistem Operasi menyediakan suatu pustaka dari fungsi-fungsi standar, dimana aplikasi lain dapat memanggil fungsi-fungsi itu, sehingga dalam setiap pembuatan program baru, tidak perlu membuat fungsi-fungsi tersebut dari awal.
Sistem Operasi secara umum terdiri dari beberapa bagian:
1.  Mekanisme Boot, yaitu meletakkan kernel ke dalam memory
2.  Kernel, yaitu inti dari sebuah Sistem Operasi
3.  Command Interpreter atau shell, yang bertugas membaca input dari pengguna
4.  Pustaka-pustaka, yaitu yang menyediakan kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain.
5.  Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol.

Sebagian Sistem Operasi hanya mengizinkan satu aplikasi saja yang berjalan pada satu waktu (misalnya DOS), tetapi sebagian besar Sistem Operasi baru mengizinkan beberapa aplikasi berjalan secara simultan pada waktu yang bersamaan. Sistem Operasi seperti ini disebut sebagai Multi-tasking Operating System (misalnya keluarga sistem operasi UNIX). Beberapa Sistem Operasi berukuran sangat besar dan kompleks, serta inputnya tergantung kepada input pengguna, sedangkan Sistem Operasi lainnya sangat kecil dan dibuat dengan asumsi bekerja tanpa intervensi manusia sama sekali. Tipe yang pertama sering disebut sebagai Desktop OS, sedangkan tipe kedua adalah Real-Time OS, contohnya adalah Windows, Linux, Free BSD, Solaris, palm, symbian, dan sebagainya.




BAB IV

ABSTRAKSI DATA
DBMS adalah merupakan kumpulan dari beberapa data dan program yang saling berhubungan dan memungkinkan user untuk mengakses dan memodifikasi data.
Tujuan utama dari sistem basis data adalah menyediakan tinjauan abstraks mengenai data kepada user.


Terdapat beberapa tingkatan abstraksi data dalam memandang suatu basis data:

1.    Level Phisik.
2.    Level Konseptual.
3.    Level Padangan Pemakai ( View )

1.  Level Phisik
Level abstraksi paling rendah, menggambarkan bagaimana (how) data disimpan dalam kondisi sebenarnya. Level ini tentu paling kompleks, struktur data level terendah digambarkan pada level ini. Level ini digunakan oleh programmer, yang digunakan untuk melakukan pemrograman dengan mengunakan database dan DBMS tertentu sesuai dengan kebutuhan daripada end-user.
2.  Level Konseptual
Level abstraksi data level lebih tinggi yang menggambarkan data apa (what) yang disimpan dalam basis data, dan hubungan relasi yang terjadi antar data. Level ini menggambarkan keseluruhan basis data. Pemakai tidak memperdulikan kerumitan dalam struktur level phisik lagi, penggambaran cukup dengan memakai kotak, garis dan keterangan secukupnya. Level ini digunakan oleh database administrator, yang memutuskan informasi apa yang akan dipelihara dalam satu database.
3.  Level Pandangan Pemakai (View Level)
Level abstraksi tertinggi yang mengambarkan hanya satu bagian dari keseluruhan database. Bila pada level konseptual data merupakan suatu kumpulan besar dan kompleks, pada level ini hanya sebagian saja yang dilihat dan dipakai. Hal ini disebabkan beberapa pemakai database tidak membutuhkan semua isi database. Level ini sangat dekat dengan pemakai (user), dan setiap user kemungkinan hanya membutuhkan sebagian dari database. Ada beberapa kelompok user dengan pandangan berbeda butuh data dalam database, jadi pada level ini yang memakai adalah pemakai akhir atau end-user. Misalkan pemakai akhir pada bagian keuangan hanya memakai data untuk file / table pembayaran, mahasiswa dan karyawan, tetapi tidak membutuhkan file / table buku dan nilai. Demi kemudahan interaksi antara pemakai dengan sistem, maka view level ini didefinisikan. Jadi ada beberapa pandangan disusun untuk mengakses satu system database yang sama.

DBA ( Data Base Administrator )
Yaitu orang / sekelompok orang yang bertanggung jawab pada seluruh pengontrolan database

Syarat DBA
  1. Berkeahlian teknik
  2. Berkeahlian tentang enterprise
Tanggung Jawab DBA
  1. Menetapkan isi database
  2. Menetapkan struktur data pada penyimpanan sekunder dan metode akses
  3. Melayani kebutuhan pengguna
  4. Pengecekan kewenangan penggunaan database
  5. Menetapkan strategi backup dan recovery
  6. Memonitor unjuk kerja dan melayani kebutuhan akan perubahan-perubahan kepentingan.
Untuk melaksanakan tanggung jawabnya DBA mempunyai beberapa program bantu diantaranya :
1.    CREATE ROUTINE
Untuk membuat data base baru
2.    REORGANIZATION ROUTINE
Untuk menyusun kembali database dari data-data yang sudah usang/tidak dipergunakan lagi
3.    JOURNALIZING ROUTINE
Untuk mencatat semua operasi yang telah dikerjakan, siapa penggunanya.
4.    RECOVERY ROUTINE
Memperbaiki kerusakan data base pada posisi sebelum kerusakan
5.    STATISTICAL ANALISYS ROUTINE
Untuk memonitor hasil-hasil database.




BAB V


MANIPULASI DATA
Merupakan suatu cara untuk menyediakan data-data bagi para pemakai atau informasi bagi pembuat keputusan.
Relational Algebra : bagaimana suatu relasi dirancang untuk memenuhi kebutuhan data
Operasi Yang Dilakukan Pada Relational Algebra

1.    PROYEKSI
Untuk menciptakan suatu relasi baru dengan menyeleksi atribut – atribut dari suatu relasi.
MAHASISWA
NIM
NAMA
TGL-LAHIR
JURUSAN
9901
BUDIMAN
09-09-87
TI
0002
MILANI
18-09-82
MI
0033
RIVA
17-03-78
TI
0034
TATA
03-05-88
TI

Dari  relasi mahasiswa dilakukan operasi proyeksi terhadap NIM, NAMA dan JURUSAN maka hasil dari operasi ini adalah sebagai berikut.
Mahasiswa-jurusan
NIM
NAMA
JURUSAN
9901
BUDIMAN
TI
0002
MILANI
MI
0033
RIVA
TI
0034
TATA
TI

2. OPERASI SELEKSI
Untuk menciptakan relasi baru dengan menyeleksi record – record dari suatu relasi.
MAHASISWA
NIM
NAMA
TGL-LAHIR
JURUSAN
9901
BUDIMAN
09-09-87
TI
0002
MILANI
18-09-82
MI
0033
RIVA
17-03-78
TI
0034
TATA
03-05-88
TI
Jika kita ingin memperoleh informasi tentang data mahasiswa dari nim, nama dan jurusannya adalah TI dari relasi mahasiswa. Relasi mahasiswa yang diseleksi berdasarkan Jurusan = TI hasilnya sebagai berikut :

Mahasiswa (nim, nama, jur)
NIM
NAMA
JURUSAN
9901
BUDIMAN
TI
0033
RIVA
TI
0034
TATA
TI

3.   OPERASI PENYERTAAN (JOIN)
Penggabungan tabel dilakukan jika antara tabel – table  yang akan digabungkan  mempunyai kolom nilai atribut  yang sama sebagai dasar penggabungan. Penggabungan Secara horizontal.




Mahasiswa
NIM
NAMA
JUR
9901
BUDIMAN
TI
0002
MILANI
MI
0033
RIVA
TI
0034
TATA
TI

Matakuliah
NIM
NAMAMK
SKS
9901
Bhs C
3
0002
Agama
2
0033
Agama
2
0034
Bhs VB
3

Hasil dari gabungan

MAHASISWA.NIM

MAHASISWA. NAMA

MAHASISWA.JUR

MATAKULIAH.NIM

MATAKULIAH.NAMAMK

MATAKULIAH.SKS
9901
BUDIMAN
TI
9901
Bhs C
3
0002
MILANI
MI
0002
Agama
2
0033
RIVA
TI
0033
Agama
2
0034
TATA
TI
0034
Bhs VB
3

4. OPERASI PENGGABUNGAN
Untuk menciptakan relasi baru dengan mengkombinasikan secara vertikal record – record dari dua relasi.

JABATAN
NIP
JABATAN
1021
ANALIS
1022
KONSULTAN
1023
PROGRAMER

PENGALAMAN
NIP
JABATAN
1021
KONSULTAN
1022
PROGRAMER
1023
PROGRAMER
Hasil Dari Penggabungan
PENGALAMAN JABATAN
NIP
JABATAN
1021
ANALIS
1021
KONSULTAN
1022
KONSULTAN
1022
PROGRAMER
1023
PROGRAMER


5. INTERSEKSI
Untuk menciptakan relasi baru dengan memuat record – record yang ada dalam kedua relasi.
STAF
NIP
NAMA
DEPARTEMEN
1021
ITA
KEUANGAN
1022
ATI
PEMASARAN
1023
NIA
KEUANGAN

MANAJEMEN
NIP
NAMA
DEPARTEMEN
1021
ITA
KEUANGAN
1022
ATI
PEMASARAN
1024
SASA
KEUANGAN
1025
SINTA
PEMASARAN
Hasil Dari Operasi Interseksi
SUPERVISOR PERCOBAAN
NIP
NAMA
DEPARTEMEN
1021
ITA
KEUANGAN
1022
ATI
PEMASARAN

6.   DIFFERENSI
Untuk menciptakan relasi baru yang memuat record – record yang ada dalam suatu relasi tapi tidak ada dalam relasi yang lain.
STAF
NIP
NAMA
DEPARTEMEN
1021
ITA
KEUANGAN
1022
ATI
PEMASARAN
1023
NIA
KEUANGAN

MANAJEMEN
NIP
NAMA
DEPARTEMEN
1021
ITA
KEUANGAN
1022
ATI
PEMASARAN
1024
SASA
KEUANGAN
1025
SINTA
PEMASARAN

Hasil Dari Operasi Differensi
Operasi direfferensi staf terhadap manajemen
NON SUPERVISOR
NIP
NAMA
DEPARTEMEN
1023
NIA
KEUANGAN

7.   DIVISI
Untuk menciptakan relasi baru dengan menyeleksi record – record dari suatu relasi yang didasarkan pada nilai atribut yang sama dalam memisahkan relasi.
KEAHLIAN
NIP
KEAHLIAN
1021
ANALIS
1022
KONSULTAN
1021
PROGRAMER
KEPAKARAN
PAKAR
ANALIS
PROGRAMER

Ahli Sesuai Kepakaran
NIP
1021




BAB VI



RELATIONAL DATABASE
*      Model ini menjelaskan kepada pemakai tentang hubungan logik antar data dalam basis data dengan cara memvisualisasikan ke dalam bentuk tabel-tabel dua dimensi yang terdiri dari sejumlah baris dan kolom yang menunjukkan atribut-atribut.
*      Model data relational meletakkan pada dasar teori yang memungkinkan model ini menyediakan suatu dasar untuk banyak operasi dengan mengadakan relasi antar data dalam bentuk yang berbeda-beda sebagaimana dalam relasi sistem basis data.

A. Karakteristik-karakteristik dalam Relasi
1.    Semua entry/elemen data pada suatu baris dan kolom tertentu harus mempunyai nilai tunggal (single value), atau suatu nilai yang tidak dapat dibagi lagi (atomic value).
2.    Semua entry/elemen data pada suatu kolom tertentu dalam relasi yang sama harus mempunyai jenis yang sama.
3.    Masing-masing kolom dalam suatu relasi mempunyai suatu nama yang unik (meskipun kolom-kolom dalam relasi yang berbeda diijinkan mempunyai nama yang sama).
4.    Pada suatu relasi/tabel yang sama tidak ada dua baris yang identik.
5.    Urutan baris bebas.
6.    Urutan  kolom bebas.

B. Terminologi Model Data Relasional
Record               : Sebuah baris dalam suatu relasi. Istilah record adalah sinonim dengan  
                              tuple.
Cardinality          : Banyaknya tuple atau record dalam sebuah relasi.
Atribut                 : Suatu kolom dalam sebuah relasi.
Domain              : Batasan-batasan nilai dalam atribut dan tipe datanya.
Derajat/Degree  : Banyaknya atribut/kolom dalamsebuah relasi.
Candidate Key   : Atribut yang unik yang dapat digunakan untuk mengidentifikasi / 
                             membedakan suatu record.
Primary Key       : Salah satu dari candidate key yang dipilih dan dipakai untuk
                             mengidentifikasi / membedakan suatu record.
Alternate Key     : Bagian dari candidate   key   selain   Primary Key atau Candidate    
                             Key yang tidak dipilih sebagai Primary Key.
Foreign Key       : Satu atribut yang bertamu ke relasi yang lain berkaitan dengan
                             hubungan dengan tabel yang lain.
Unary Relation   : Suatu relasi yang hanya mempunyai satu atribut / kolom
Binary Relation  :  Suatu relasi yang hanya mempunyai dua atribut / kolom
Ternary Relation:  Suatu relasi yang hanya mempunyai tiga atribut / kolom

C. Komponen-komponen Tabel Relasional
1.   Intension. Intension terdiri dari 2 bagian, yaitu struktur penamaan (naming structre) dan batasan integritas ( integrity constraint). Struktur penamaan menunjukkan nama tabel dan nama-nama atribut yang ada, lengkap dengan domainnya. Sedangkan batasan integritas dipengaruhi oleh referential integritas (integritas referensial)   yang meliputi key constraint dan referensial constraint . Key constraint tidak mengijinkan adanya nilai null pada atribut yang digunakan sebagai Primary Key. Sedangkan Referensial Constraint memberikan aturan bahwa nilai-nilai dalam atribut kunci yang digunakan untuk mengembangkan / menghubungkan ke tabel yang lain tidak diijinkan memiliki nilai null.
2.   Extension. Menunjukkan isi dari tabel ( nilai-nilai dari atribut yang ada dalam tabel) pada suatu waktu. Ektension suatu tabel relational cenderung untuk berubah dari waktu ke waktu.

D. Aturan-aturan Untuk Primary Key
Dasar penentuan PK adalah bahwa nilai-nilai rinci data dari atribut yang digunakan sebagai PK haruslah uniq. Aturan lain untuk PK :
  1. Integritas Entity, yaitu bahwa nilai atribut yang dipilih sebagai PK tidak boleh null untuk setiap record dalam yang ada dalam relasi. Dalam hal ini ada 2 pengertian yaitu Null untuk data string ( blank), Null untuk data numerik ( nol ).
  2. Integritas Referensial, berhubungan dengan 2 / lebih tabel/relasi dalam suatu basis data yang menggunakan PK yang sama.




BAB VII


MODEL DATA

l  Model data adalah sebagai kumpulan perangkat konseptual untuk memaparkan data, hubungan(relasi) antar data, semantika (makna logika) data dan kendala-kendala data.
l  Merupakan suatu cara untuk menjelaskan bagaimana user dapat melihat data secara logik

Model data dikelompokan menjadi :
  1. Model logik berbasis objek/model data berorientasi objek.
  2. Model logik berbasis record/model data berorientasi record.
  3. Model data fisikal (tidak dibahas).

1. Model data berorientasi objek.
l Mendiskripsikan data pada level konseptual.
l Dicirikan oleh ketersediaan kemampuan strukturisasi yang fleksibel dan memungkinkan spesifikasi kendala/batasan secara eksplisit.
l Merupakan himpunan data dan prosedur / relasi yang menjelaskan hubungan logik antar data dalam suatu basis data berdasarkan objek datanya.

Model Data ini dibedakan menjadi 2 :
a. Entity Relationship Model ( E_R Model)
b. Semantic Model

a.   Entity Relationship Model
Merupakan suatu model yang menjelaskan hubungan antara data dalam basisdata berdasarkan suatu persepsi bahwa realword (dunia nyata) terdiri atas obyek – obyek dasar yang mempunyai hubungan / relasi antar obyek.
Simbol yang digunakan dalam pembuatan diagram
                                      : link


 
 
                                      : himpunan entitas / entity


 
                                     
   : relasi

                                     
                                       : obyek dasar / atribut



Tahapan pembuatan Entity Relationship Diagram (ERD)
1.   Tahap pembuatan ERD
Tujuannya untuk mendapatkan rancangan basis data minimal yang dapat mengakomodasikan kebutuhan penyimpanan data terhadap sistem yang dibuat.
2.   Tahap optimasi ERD
Tahapan ini merupakan bentuk koreksi yang terjadi, dapat berupa pendekomposisian, penggabungan, pengubahan derajad relasi dan penambahan  relasi baru hingga perubahan atribut untuk masing – masing entitas dan relasi.

KARDINALITAS RELASI
Menunjukan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain.
Khusus untuk relasi biner, antara lain :

  1. Relasi One to one (satu ke satu)
Satu relasi angggota gugus diasosiasikan dengan tepat satu entity anggota gugus yang lain.


Contoh : One to one
b. Relasi One to many ( satu ke banyak )
Suatu entiti anggota gugus diasosiasikan dengan tepat satu atau lebih entiti anggota gugus yang lain. Sebaliknya satu entiti anggota  yang lain tersebut diasosiasikan dengan tepat satu anggota gugus pasangannya.
     Contoh :One to many
Misal kepemilikan mobil
c.    Relasi Many to Many ( banyak ke banyak )
Setiap entiti anggota gugus  diasosiasikan  dengan satu atau lebih  entiti anggota gugus yang lain  dan berlaku sebaliknya.

Contoh : many to many
mahasiswa yang mengambil matakuliah

LANGKAH – LANGKAH TEKNIS DALAM PEMBUATAN ERD :
  1. Mengidentifikasi dan menetapkan seluruh himpunan entitas yang terlibat.
  2. Menentukan atribut – atribut key (kunci) dari masing – masing himpunan entitas.
  3. Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan entitas beserta foreign key( kunci tamu)
d. Menentukan kardinalitas relasi untik setiap himpunan relasi.
e.  Melengkapi himpunan entitas dan himpunan relasi dengan atribut – atribut.




Contoh : ERD mahasiswa mengambil matakuliah (khs)

b.  Semantic Model
merupakan suatu relasi antar obyek dasar tidak dinyatakan dengan simbol tetapi dengan kata – kata.

Materi lain MODEL DATA

Penggambaran relasi antar himpunan entitas lengkap dengan kardinalitas relasi                 dan atribut2 nya.
1. Relasi satu-ke-satu (one to one)
    Setiap dosen mengepalai satu jurusan dan setiap jurusan dikepalai satu dosen.


2.  Relasi satu-ke-banyak (one to many)
Setiap dosen dapat mengajar lebih dari satu mata kuliah, sedang setiap mata kuliah diajar oleh satu dosen (pada suatu semester).


3.  Relasi banyak-ke-banyak (many to many)
Setiap dosen dapat mengajar lebih dari satu mata kuliah, sedang setiap mata kuliah diajar oleh satu dosen (pada suatu semester).







ERD untuk ketiga entity (mahasiswa, kuliah, dosen) tersebut di atas :




DERAJAT RELASI MINIMUM
Derajat relasi minimum menunjukkan hubungan minimum yang boleh terjadi dalam sebuah relasi antar himpunan entitas. Kita ambil contoh relasi antara himpunan entitas mahasiswa dan kuliah. Kita mengetahui bahwa seorang mahasiswa boleh mengambil banyak mata kuliah sekaligus dan demikian juga sebaliknya, sehingga kardinalitas relasinya adalah banyak ke banyak atau N-N). Sementara derajat minimum dalam relasi itu dapat kita ketahui dari fakta bahwa seorang mahasiswa boleh tidak mengambil mata kuliah satupun ( misalnya karena sedang cuti) dan bisa terjadi sebuah mata kuliah tidak diikuti oleh seorang mahasiswa pun (karena mata kuliah pilihan). Dengan demikian derajat relasi minimumnya sama-sama 0. Nilai 0 merupakan derajat relasi minimum yang sering terjadi. Tetapi tidak selalu demikian, misalnya, relasi antara  kuliah dan dosen. Seorang dosen mungkin saja belum/tidak dimungkinkan untuk mengajar satu mata kuliah satu pun (derajat relasi miminumnya 0), tetapi ada fakta bahwa setiap mata kuliah harus sudah ditentukan dosen yang akan mengajarnya (derajat relasi minimumnya adalah 1).
Dalam diagram E-R, derajat relasi minimum boleh pula disertakan walaupun tidak wajib sifatnya. Notasinya disatukan dengan rerajat relasi maksimum yang sudah umum digunakan dengan format penulisan (x,y) dimana x mewakili derajat relasi minimum  dan y mewakili derajat relasi maksimum. Sehingga notasi diagram E-R sebagai berikut :






Keterangan diagram E-R di atas :
  • Seorang MHS dapat mempelajari banyak MK sekaligus, tapi boleh juga tidak (belum) mempelajari MK satu pun.
  • Setiap MK dapat diikuti oleh banyak MHS, tapi bisa juga ada MK yang tidak (belum pernah) diikuti oleh satu pun MHS.
  • Seorang DSN boleh mengajar banyak MK sekaligus, tetapi bisa juga dosen yang tidak mengajar satu pun MK.
  • Setiap MK hanya boleh diajarkan oleh seorang DSN dan tidak boleh ada MK yang belum ditentukan siapa dosennya.

Diagram E_R dalam Notasi lain



Disamping pemakaian notasi yang sudah dijelaskan sebelumnya, dalam berbagai literature akan dapat dijumpai pula penggambaran Diagram E-R dengan sedikit perbedaan penggunaan notasi. Berikut adalah salah satu contoh penggambaran Diagram E-R yang sedikit berbeda dengan yang telah digunakan.

Gambar dengan notasi lain :






BAB VIII


NORMALISASI
1.    Normalisasi  merupakan metodologi lain untuk menciptakan struktur tabel dalam basis data dengan tujuan untuk verifikasi terhdap tabel – tabel yang dihasilkan oleh metodologi lain (misal ERD)
2.    Merupakan  rancangan basisdata selain menggunakan ERD.
3.    Normalisasi sebagai proses untuk mengubah suatu relasi yang memilki masalah tertentu kedalam dua atau lebih relasi (tabel) yang tidak memiliki masalah.
Anomali adalah proses pada basis data yang memberikan efek samping yang tidak diharapkan .

Macam anomali antara lain :
a.    Anomali peremajaan
b.    Anomali penghapusan
c.    Anomali penyisipan

a. Anomali Peremajaan
Anomali ini terjasi bila terdapat pengubahan pada sejumlah data yang mubazir, tetapi tidak seluruhnya diubah.

PESANAN
PEMASOK
KOTA
BARANG
JUMLAH
Citra
Bandung
Monitor
10
Bumita
Bogor
CPU
23
Citra
Bandung
Zip drive
12

Pada tabel pesanan jika pemasok CITRA pindah kotanya ke Bogor dan data yang akan dilakukan perubahan adalah pada record pertama, maka akan
   Pada tabel pesanan jika pemasok CITRA pindah kotanya ke Bogor dan data yang akan dilakukan perubahan adalah pada record pertama, maka akan terjadi ketidak konsistenan. Karena terdapat dua kota pada pemasok citra.

b.   Anomali penyisipan
Anomali penyisipan terjadi jika pada saat penambahan dilakukan terdapat elemen data yang kosong
RUANGKULIAH
MATAKULIAH
RUANG
PENGAJAR
PASCAL
Ruang Ia
Totok
MATEMATIKA
Ruang Ib
Andi
SISTEM PAKAR
Ruang Ic
(blank)

c.   Anomali Penghapusan
Anomali ini terjadi sekiranya sesuatu baris yang tidak terpakai dihapus, maka akan mengakibatkan data yang lain hilang.
BIAYA KURSUS
NOMOR
KURSUS
BIAYA
11
BHS INGGRIS
75000
11
BHS JEPANG
60000
12
BHS JEPANG
60000
Dari tabel biaya kursus tersebut jika dilakukan penghapusan terhadap record pada kursus bahasa inggris maka akan terjadi kehilangan informasi tentang biaya kursus bahasa jepang.




BENTUK NORMAL
   Proses Normalisasi : Proses untuk mengelompokkan atribut-atribut pada tabel-tabel yang menggambarkan himpunan-himpunan dan hubungan-hubungannya satu sama lain.
   Aturan - aturan normalisasi dinyatakan dalam istilah bentuk normal.
   Bentuk normal adalah suatu aturan yang dikenakan pada relasi – relasi dalam basisdata dan harus dipenuhi oleh relasi tersebut pada level – level normalisasi.
   Suatu relasi dikatakan berada dalam bentuk normal tertentu jika memenuhi kondisi – kondisi tertentu.
Terdapat beberapa bentuk 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 (5NF)

Sebelum ke bentuk normal pertama, untuk mengawali ke bentuk normal pertama adalah merupakan tabel bukan bentuk normal /belum ternormaliasi (Unnormalized Form (UNF)). UNF adalah tabel yang berisi satu atau lebih atribut yang berulang/nilai ganda.

Contoh untuk Penyewaan Vila
VILA APIK
Nomor Client : CR76
Nama : Johan
Nomor Property : PG4
Alamat Property : Mtr
Mulai sewa : 12-03-2000
Berakhir : 31-08-2001
Nomor Pemilik : CO40
Nama : Tina

Tabel UNF
NoClient
CName
NoProp
AlmProp
Mulai
Berakhir
Sewa
NoPem
NmPem
CR76
Johan
PG4
PG16
Mtr1
Mtr2
12-3-00
1-11-01
31-8-01
12-4-02
350
450
CO40
CO93
Tina
Toni
CR56
Alina
PG4
PG36
PG16
Mtr1
Mtr3
Mtr2
12-3-02
1-11-01
1-12-00
31-8-02
12-4-02
12-1-01
350
400
450
CO40
CO93
CO93
Tina
Toni
Toni

Tabel tersebut merupakan bentuk UNF, pada UNF ini masih terdapat masalah –
Masalah (anomali) seperti pada baris dan kolom masih terdapat nilai dari atribut
Yang berulang (pengulangan nilai atribut).
Untuk menghindarinya maka dibuatkan kedalam bentuk normal pertama (1NF)

1. Bentuk Normal Pertama (1NF)
Suatu relasi dikatakan memenuhi / berada dalam bentuk normal pertama jika dan hanya jika setiap atribut bernilai tunggal untuk setiap baris/record.






ClientRental
NoClient
CName
NoProp
AlmProp
Mulai
Berakhir
Sewa
NoPem
NmPem
CR76
Johan
PG4
Mtr1
12-3-00
31-8-01
350
CO40
Tina
CR56
Alina
PG4
Mtr1
12-3-02
31-8-02
350
CO40
Tina
CR76
Johan
PG16
Mtr2
1-11-01
12-4-02
450
CO93
Toni
CR56
Alina
PG36
Mtr3
1-11-01
12-4-02
400
CO93
Toni
CR56
Alina
PG16
Mtr2
1-12-00
12-1-01
450
CO93
Toni



Bentuk Normal Pertama (1NF)

Alternatif untuk 1NF
clinet
NoClient
CName
CR76
Johan
CR56
Alina
PropertyRentalOwner
NoClient
NoProp
AlmProp
Mulai
Berakhir
Sewa
NoPem
NmPem
CR76
PG4
Mtr1
12-3-00
31-8-01
350
CO40
Tina
CR56
PG4
Mtr1
12-3-02
31-8-02
350
CO40
Tina
CR76
PG16
Mtr2
1-11-01
12-4-02
450
CO93
Toni
CR56
PG36
Mtr3
1-11-01
12-4-02
400
CO93
Toni
CR56
PG16
Mtr2
1-12-00
12-1-01
450
CO93
Toni

2.   Bentuk normal kedua (2NF)
Bentuk Normal kedua berdasarkan konsep dependensi fungsional penuh
Suatu relasi dikatakan memenuhi/ berada dalam bentuk normal kedua jika dan hanya jika :
§  Memenuhi bentuk normal pertama dan
§  Semua atribut bukan kunci tergantung sepenuhnya pada kunci utama

Bentuk Normal Kedua
clinet
NoClient
CName
CR76
Johan
CR56
Alina

Rental
NoClient
NoProp
Mulai
Berakhir
CR76
PG4
12-3-00
31-8-01
CR56
PG4
12-3-02
31-8-02
CR76
PG16
1-11-01
12-4-02
CR56
PG36
1-11-01
12-4-02
CR56
PG16
1-12-00
12-1-01

propertyOwner
NoProp
AlmProp
Sewa
NoPem
NmPem
PG4
Mtr1
350
CO40
Tina
PG16
Mtr2
450
CO93
Toni
PG36
Mtr3
400
CO93
Toni
PG4
Mtr1
350
CO40
Tina
PG16
Mtr2
450
CO93
Toni
PG36
Mtr3
400
CO93
Toni

3.   Bentuk normal ketiga (3NF)
Suatu relasi dikatakan memenuhi/berada dalam bentuk normal ketiga jika dan hanya jika :
§  Berada dalam bentuk normal kedua
§  Setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci utama (primary key)





BAB IX

IMPLEMENTASI DATABASE

Di dalam pengoperasiannya ada beberapa hal yang harus diperhatikan :
1.  Entry dan Update
Langkah pertama pengoperasian database adalah mengentry dan menyimpan data. Bila ada kesalahan atau perubahan dari data tersebut data yang telah tersimpan dapat diperbaiki.
2.  Backup dan Recovery
Backup adalah pekerjaan menduplikasikan record-record database.
Recovery adalah proses untuk memperbaiki kembali database dari kerusakan yang dialami. Kerusakan ini umumnya kerusakan fisik pada penyimpanan sekunder.
3.  Reorganization
Proses pembersihan record-record tidak aktif.
4.  Restructuring
Kebutuhan perubahan pada lingkungan yang dinamis, misalnya :
-          Penambahan / penghapusan suatu data elemen, perubahan ukuran data elemen.
-          Perubahan metode akses
5.  Performance Monitoring dan Tuning
-          Evaluasi secara periodic terhadap unjuk kerja system database
-          Kekurangan ini hendaknya diperbaiki dan dilaraskan (Tuning)
6.  Security
Sekuriti data adalah pengontrolan pengaksesan data dalam database terhadap orang-orang yang tidak berwenang, sehingga mencegah :
-          Penyingkapan rahasia data
-          Perubahan data
-          Perusakan/penghapusan data

SQL
Between          : menyatakan antara
Mis. Where harga between 10000 and 20000
Order by field_1, field_2 asc/desc : menyatakan pengurutan data secara ascending/descending
                        Mis. Order by nama asc (bisa tanpa pernyataan Where)
In                     : menampilkan informasi lebih dari satu
Mis. Where nama_barang in (‘meja’,’kursi’) (dapat untuk character / numeric)
Group by         : pengelompokkan berdasarkan fielnya. Pemakaian group by tidak dapat digabung dengan pernyataan where.
                        Mis. Group by field
Having             : berfungsi sebagai kondisi (seperti where)
                        Mis. Group by nama_barang
                        Having count(*)=2
Like                 : menampilkan informasi berdasarkan nama depan pada isi suatu filed
Mis. where nama like 'm*'

Aggregate Functions.
-          SUM()
-          AVG()
-          MAX()
-          MIN()
-          COUNT(*)

Relational Operators
=
Equal
<> 
Not Equal
Less Than
Greater Than
<=
Less Than or Equal To
>=
Greater Than or Equal To
Logical Operations
-          AND    -  NOT dan - OR


BAB X

Langkah-langkah Pengembangan Sistem Basis Data

Proyek pengembangan sistem basis data bukan hanya se­kedar menyusun file-file yang diperlukan untuk disimpan seba­gai basis data, tetapi juga termasuk di dalamnya mengatur ba­gaimana agar basis data tersebut dapat dimanfaatkan secara optimal oleh pemakai untuk memenuhi kebutuhan datanya. Ja­di proyek pengembangan sistem basis data meliputi pengembangan file basis data, perangkat lunak (software), perangkat keras (hardware), dan menyiapkan personal-personal yang akan terlibat dalam penggunaan sistem basis data agar dapat meman­faatkannya dangan baik dan benar.
Adapun tahapan-tahapan utama dalam proyek pengem­bangan sistem basis data terdiri dari empat tahap yaitu :
1.    spe­sifikasi kebutuhan
2.    evaluasi alternatif
3.    desain
4.    implemen­tasi.
Keempat tahapan utama tersebut akan dibahas secara le­bih terinci dalam uraian-uraian selanjutnya. Tahapan-tahapan utama dalam suatu proyek pengembangan sistem basis data di­tunjukkan pada Gambar 1.
Tahap pertama proyek pengembangan sistem basis data adalah menentukan spesifikasi kebutuhan pemakai. Proses yang terjadi meliputi definisi masalah, studi kelayakan penggu­naan komputer sebagai dasar pemecahan masalah dan memberikan definisi secara rinci terhadap spesifikasi kebutuhan pe­makai. Jadi inti dari tahapan spesifikasi kebutuhan adalah me­nentukan keinginan pemakai tentang apa yang akan dan harus dilakukan oleh sistem yang akan dikembangkan.



1.    Spesifikasi Kebutuhan
  1. Definisi masalah dan study kelayakan
  2. Rinci spesifikasi
2.   Evaluasi Alteraatif
a. Indikasi alternatif
b. Seleksi alternatif
c. Mengembangkan rencana proyek
3.  Desain
a. Spesifikasi dan pengorderan perangkat keras
b. Desain logik program
c. Desain struktur data
d. Desain prosedur untuk pemakai dan operator
e. Definisi struktur organisasi pemakai
4. Implemeatasi
a. Install dan tes perangkat keras
b.Koding dan tes unit-unit program
c. Konversi data
d. Pembuatan dokumen prosedur
e. Pelatihan pemakai
f. Tes meyeluruh


 
 






















GAMBAR 1: Tahapan-tahapan utama proyek pengembangan sistem basis data.

Pada tahap kedua, alternatif-alternatif pemecahan kebu­tuhan pemakai ditentukan, satu per satu dievaluasi dan sekali­gus diseleksi untuk menemukan alternatif pemecahan yang ter­baik.
Setelah solusi alternatif dievaluasi, proyek dilanjutkan dangan tahap desain. Dalam tahap ini ditentukan spesifikasi-spe­sifikasi perangkat keras yang diperlukan dan kemudian dilaku­kan pengorderan, program-program didesain (atau diorder dari vendor), serta merancang dan mengembangkan struktur basis data. Prosedur-prosedur untuk operasi dan personal pemakai juga didesain. Tahapan ketiga ini diakhiri dangan mendefini­sikan struktur organisasi pemakai dan fungsi-fungsi kerja se­hubungan dengan keperluan pegembangan sistem baru.
Setelah desain dilakukan dangan dengan lengkap, proyek dilanjutkan dengan tahapan implementasi. Tahapan ini meliputi install dan pengetesan perangkat keras, koding dan tes unit-unit program (atau menginstalnya jika dipesan dari vendor),  mendokumentasikan prosedur, dan  melatih personal. Pada akhirnya, jika semua sudah siap, maka sistem yang baru dikembangkan tersebut diujicobakan secara menyeluruh, dan aktivitas-aktivitas pemakai dan operasi-operasi dokonversi ke sistem yang baru.
Hal yang cukup penting dalam proyek pengembangan sistem basis data adalah bahwa dalam personal-personal yang tergabung dalam tim pengembangan tersebut harus terbebas dari solusi masalah yang bias. Masing-masing harus mengerti akan tugas­nya secara jelas. Oleh karenanya diperlukan suatu sistem yang terbaik yang dijumpai dalam tahapan evaluasi alternatif sesuai dengan kebutuhan pemakai yang telah didefinisikan pada tahap awal proyek pengembangan sistem basis data.
Masing-masing tahapan utama dalam proyek pengem­bangan sistem basis data tersebut masih dapat dijabarkan ke dalam beberapa tahap yang lebih rinci dan secara berturut-tu­rut akan dibahas dalam uraian berikut ini.

1. Tahap Spesifikasi Kebutuhan
Tahap Spesifikasi Kebutuhan terdiri dari beberapa tahap rincian seperti ditunjukkan pada Gambar 2. Tahap spesifikasi kebutuhan biasanya hanya memerlukan tim yang kecil, waktu yang relatif pendek, dan biaya yang tidak terlalu besar. Namun demikian bila kesalahan terjadi pada tahapan ini akan meng­akibatkan kesalahan total pada seluruh usaha dalam proyek pe­ngembangan sistem basis data. Hal yang perlu mendapat per­hatian yang serius dalam tahap ini adalah perlunya komunikasi yang jelas antara pihak developer dan pemakai.
Akhir tahapan ini akan menghasilkan spesifikasi yang rinci tentang kebutuhan pemakai yang telah disetujui oleh pi­hak pemakai. Spesifikasi-spesifikasi ini merupakan dasar bagi seluruh tahapan proses pengembangan sistem basis data.

Tahap Spesifikasi Kebutuhan
1. Definisi masalah dan study kelayakan
a.  Statemen singkat dan tidak mahal pada permasalahan
b. Estimasi pertambahan biaya, jadwal dan kesulitan tek­nis
c.  Review manajemen dan persetujuan untuk melanjut­kan atau ulang
2. Rinci Specifikasi
a. Alir Sistem
b. Sistem yang diinginkan (dengan DFD,  deskripsi proses)
c. Review pemakai dan persetujuan (termasuk interview dan dokumentasi)

 
 












GAMBAR 2:Dua fase dalam tahap spesifikasi kebutuhan pada
proyek pengembangan sistem basis data.

2. Tahap Evaluasi Alternatif
Tahapan evaluasi alternatif adalah untuk menentukan suatu cara pendekatan secara umum yang terbaik, untuk me­menuhi kebutuhan pemakai. Dalam tahapan ini semua alter­natif diidentifikasi dan diuji, kemudian salah satu di antaranya ditetapkan sebagai solusi terhadap masalah/kebutuhan pemakai. Jika diperlukan oleh manajemen, suatu analisis biaya man­faat (Cost Benefit Analysis) atau analisis pengembalian modal (Return On Invesment) perlu dilakukan. Pada akhirnya rencana proyek dikembangkan sesuai dangan spesifikasi yang ada.
Dokumen-dokumen rencana yang dibuat secara garis be­sar itu memuat tentang bagian-bagian sistem yang akan dikem­bangkan sendiri, dikembangkan di luar jika ada), dan bagian mana yang akan diperoleh dari penjual (vendor). Secara rinci tahapan evaluasi alternatif terdiri dari beberapa fase rincian seperti terlihat pada Gambar 3.



Tahap Evaluasi Alternatif
1. Indikasi alternatif
a. Perangkat keras
b. Program-program
c. Data
d. Prosedur-prosedur
e. Orang
2. Seleksi Alternatif
a. Analisa subyektif
b. Analisa biaya manfaat atau pengembalian modal (ROI)
c. Kombinasi
3. Mengembangkan rencana proyek
a. Alternatif diseleksi
b. Lingkungan Pendukung
c. Hal-hal umum dalam rencana proyek
 
 














GAMBAR 3 :Dua fase dalam tahap evaluasi alternatif pada
proyek pengembangan sistem basis data.

3. Tahap Desain
Dalam tahap desain sistem basis data terdapat dua hal pokok yang harus diselesaikan, yaitu mendefinisikan struktur logik basis data dan mendesain program aplikasi. Yang terma­suk dalam bagian pokok pertama adalah mengembangkan struk­tur logik dari basis data. Struktur logik yang telah didefinisikan itu kemudian ditransformasikan ke dalam format fisik yang sesuai dangan DBMS yang digunakan. Unit-unit program apli­kasi didesain secara bersamaan dangan pengembangan struk­tur desain logik basis data. Pada saat desain basis data dan pro­gram aplikasi telah lengkap, spesifikasi-spesifikasi akhir kemudian ditetapkan. Pada beberapa bagian di mana perangkat keras perlu diubah, perangkat keras tersebut diorder pada tahap ini (atau bahkan lebih awal lagi jika spesifikasi-spesifikasi spesifik yang diperlukan telah mencukupi), sehingga pada saat mema­suki tahap implementasi, perangkat itu telah tersedia. Dalam tahap pengembangan prosedur, yang perlu mendapat perhatian serius adalah fasititas untuk keamanan dan pengendalian basis data. Suatu rencana yang seksama dikembangkan untuk meyakinkan bahwa hanya pemakai tertentu yang berhak saja yang dapat mengakses data pada saat yang dikuasakan.



TAHAP DESAIN

1.    Spesifikasi dan pengorderan perangkat keraas
2.      Desain logik program
3.      Desain struktur data (chema dan subchema)
4.      Definisi struktur organisasi pemakai
 
 









GAMBAR4 :Fase-fase dalam tahap desain pada
proyek pengembangan sistem basis data.

Permasalahan ini dapat pula diatasi dengan memanfaatkan suatu rutin yang dipanggil dan digunakan dalam sistem operasi atau DBMS.
Prosedur back up dan recovery data yang diperlukan juga didesain. Pada akhirnya fungsi-fungsi administrator basis data (Data Base Administrator atau DBA) ditetapkan. Kantor untuk DBA diorganisasikan, job description ditulis, dan kualifikasi-kua­lifikasi personal DBA yang diperlukan untuk waktu-waktu men­datang didefinisikan pula. Beberapa fase dalam tahapan desain secara terpisah ditunjukkan pada Gambar 4.

4. Tahap Implementasi
Selama tahapan ini perangkat keras diinstall dan dites, program dikoding dan dites, data dikonversi, prosedur-prosedur didokumentasikan dan pemakai dilatih. Pengetesan secara pa­ralel dangan sistem yang lama akan melengkapi tahapan ini. Beberapa aspek unik terjadi pada sistem basis data selama ta­hapan ini. Yang pertama, sebelum data dapat dikonversi, desain basis data harus dikoding dangan menggunakan bahasa pemro­graman dan fasilitas-fasilitas lain yang diperoleh dari vendor DBMS. Pada saat struktur basis data dikompile, dilakukan sua­tu pengetesan terhadap basis data dan dikonversikan. Hal ini dilakukan untuk mengetes akurasi deskripsi basis data. Prose­dur untuk pemakai dan personal operasi didokumentasikan se­lama dalam tahapan ini. Pemakai perlu mengetahui bagaimana menyempurnakan fungsi kerja dangan menggunakan sistem yang baru. Personal operasi juga harus tahu bagaimana prose­dur-prosedur yang harus dilakukan untuk menggunakan, me­nampilkan kembali data, dan operasi-operasi lain, yang pada kenyataannya justru lebih kompleks dari pada sistem pemro­sesan suatu file. Konsekuensinya, diperlukan dokumentasi pro­sedur yang cukup baik dan jelas.






TAHAP IMPLEMENTASI

1. Install dan test perangkat keras
2. Koding dan tes unit-unit program
3. Konversi data
4. Pembuatan dokumen-dokumen prosedur
5. Pelatihan pemakai
6. Tes menyeluruh

 
 











GAMBAR 5 :Fase-fase dalam tahap implementasi pada
proyek pengembangan sistem basis data.

Setelah prosedur-prosedur selesai didokumentasikan, pe­makai dan personal-personal operasi perlu dilatih. Akhir dari fa­se implementasi adalah pengetesan secara paralel antara sistem yang lama dangan sistem yang baru. Secara teoritis, hasil dari sistem yang lama dibandingkan dangan hasil dari sistem yang baru. Namun pada kenyataannya, melakukan hal seperti itu ter­nyata sangat sulit, memerlukan waktu yang cukup lama dan biaya yang banyak. Karenanya, pengetesan seperti ini hanya dimaksudkan sebagai antisipasi saja, dan tujuan dari penge­tesan secara paralel tersebut dapat dikompromikan. Fase-fase dalam tahap implementasi di atas ditunjukan oleh Gambar 5.

C. Beberapa Alat Bantu dan Metode dalam Pengembangan Sistem Basis Data
Agar usaha pengembangan sistem basis data dapat berha­sil dangan baik, maka diperlukan beberapa alat bantu dan me­tode. Yang dimaksud dangan alat bantu di sini bukanlah ber­wujud benda-benda fisik, namun berupa suatu teknik yang da­pat digunakan untuk mempermudah atau mendukung kelancaran pelaksanaan kegiatan proyek tersebut.
Pada tahap awal proyek diperlukan suatu statemen yang dapat meyakinkan manajemen organisasi bahwa proyek pe­ngembangan sistem basis data tersebut layak untuk dilaku­kan. Studi kelayakan (feasibility study) perlu dilakukan untuk kepentingan ini, dan dapat dilakukan setelah mengetahui spe­sifikasi kebutuhannya. Dalam laporan hasil studi kelayakan tersebut juga dicantumkan beberapa analisis penting, yang me­liputi:

1.   Analisis Ekonomi. Proyek pengembangan sistem basis data perlu dianalisis tentang kelayakannya dari segi ekonomi. Hal ini penting karena manajemen akan menolak jika proyek tersebut tidak akan menghasilkan keuntungan secara eko­nomi, sekalipun keuntungan tersebut baru akan dirasakan setelah jangka waktu tertentu yang agak lama. Analisis ekonomi mempunyai tingkat kerumitan yang tinggi / besar. Perhitungan secara kuantitatif relatif sangat sulit untuk dilakukan, karena berhubungan dangan berbagai fak­tor lain yang sulit untuk dipisahkan akibat-akibatnya, apa­lagi jika akibat-akibat tersebut lebih bernilai sosial yang ber­hubungan dangan mutu hidup manusia. Karenanya anali­sis ekonomi lebih bersifat sebagai nilai perkiraan, yang mungkin untuk dicapai sebagai akibat nyata dari penerapan sistem baru. Kecuali, jika proyek tersebut merupakan per­mintaan dari manajemen pada organisasi pemakai, yang ti­dak terlalu mempermasalahkan biaya pengembangan, kare­na untuk melaksanakan perintah atau kebutuhan yang ha­rus dipenuhi sehingga akhirnya analisis ekonomi dapat ha­nya dianggap sebagai pelengkap saja. Namun demikian ti­dak ada satu alasanpun yang dapat mengabaikan perlunya analisis ekonomi dalam proyek pengembangan sistem basis data, sehingga proyek mempunyai kelayakan secara ekono­mi.
2.   Analisis Hukum. Proyek pengembangan sistem basis data juga perlu dianalisis kelayakannya dari segi hukum. Pera­latan atau perlengkapan yang diperlukan ataupun aturan atau prosedur yang digunakan dalam sistem yang baru ter­kadang mempunyai keterkaitan yang erat dangan masalah hukum. Mungkin sistem yang baru memerlukan peralatan yang harus didatangkan dari luau negeri, atau peralatan khusus, atau aturan-aturan yang menyangkut kepenting­an umum, sehingga perlu dinyatakan bahwa pengembangan sistem basis data tersebut layak dari segi hukum (law feasi­bility).
3. Analisis Teknik. Analisis teknik berguna untuk menjelas­kan ketersediaan berbagai komponen teknis yang diperlu­kan selama proyek pengembangan sistem basis data dilak­sanakan dan pada saat sistem baru diimplementasikan. Ha­sil analisis ini juga diperlukan untuk menentukan apakah peralatan-peralatan teknis itu perlu didatangkan dari luar negeri, atau dibeli dari perusahaan lain di dalam negeri, atau menyewa dari perusahaan lain, atau cukup meman­faatkan yang telah ada. Hasil analisis teknis akan membe­rikan statemen tentang kelayakan proyek pengembangan sistem basis data ditinjau dari segi teknis (technical feasi­
bility).
4.   Analisis Operasional. Analisis operasional dimaksudkan un­tuk menjelaskan bahwa sistem yang baru adalah layak dio­perasikan pada kondisi lingkungan organisasi yang ada saat ini, atau perlu usaha-usaha lain untuk mengubah desain sistem atau kondisi lingkungan organisasi, sehingga sistem basis data yang baru menjadi layak dioperasikan (operational feasibility).

5. Analisis Jadwal. Analisis jadwal adalah analisis untuk men­jelaskan kelayakan jadwal pelaksanaan proyek. Ini berarti bahwa desain sistem harus dapat dioperasikan dalam batas­an-batasan waktu yang tersedia atau yang ditentukan. Jika tidak, maka desain sistem atau batasan waktu yang tersedia harus diubah.

Hasil analisis-analisis di atas memberikan statemen pen­ting kepada manajemen pada organisasi pemakai bahwa proyek pengembangan sistem basis data tersebut layak atau tidak untuk dilakukan (feasible) dalam semua aspek.

3 komentar:

  1. mas,,boleh kirimkan modul sistem basis data yang ini k email saya,,mas..soalnya yg ini gak ada kelihatan gambarnya..makasih,,y mas..

    BalasHapus
  2. thanks gan :)
    berguna banget buat tugas ane

    BalasHapus