Pages

Minggu, 26 Februari 2012

Tugas 3 (DDL dan Perancangan Basis Data)

Tujuan Utama Perancangan Basis data adalah :

  Memenuhi informasi yang berisikan kebutuhan-kebutuhan pengguna secara khusus dan aplikasi-aplikasinya.
      Memudahkan pengertian struktur informasi
   Mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan (response time, processing time, dan storage space).


Siklus hidup aplikasi basis data berhubungan dengan siklus hidup sistem informasi. Siklus kehidupan sistem informasi sering disebut macro life cycle, dimana siklus kehidupan basis data merupakan micro life cycle. Proses perancangan basis data merupakan bagian dari siklus hidup sistem informasi .

Aktifitas-aktifitas yang berhubungan dengan basis data sebagai micro life cycle dan termasuk fase-fasenya sbb :


1.    Database planning
Di aktifitas ini akan disusun bagaimana langkah-langkah siklus hidup dapat direalisasikan secara lebih efisien dan efektif.
2.    System definition
       Definisi ruang lingkup basis data (misal : para pemakai, aplikasi-aplikasinya, dsb.)
3.    Design
    Pada bagian dari fase ini, perancangan sistem basis data secara konseptual, logikal dan fisik dilaksanakan
4.    Implementation
      Pemrosesan dari penulisan definisi basis data secara konseptual, eksternal, dan internal, pembuatan file-file basis data yang kosong, dan implementasi aplikasi-aplikasi software.
5.    Loading atau Data Conversion
       Basis data ditempatkan baik secara memanggil data secara langsung ataupun merubah file-file        .......yang ada ke dalam format sistem basis data dan memangggilnya kembali.
6.    Application Conversion
      Beberapa aplikasi software dari suatu sistem sebelumnya dikonversikan ke suatu sistem yang baru.
7.   Testing dan Validation
       Sistem yang baru ditest dan diuji kebenarannya.
8.    Operation
       Operasi-operasi pada sistem basis data dan aplikasi-aplikasinya.
9.    Monitoring dan Maintenance
     Selama fase operasi, sistem secara konstan memonitor dan memelihara basis data. Pertambahan dan pengembangan data dan aplikasi-aplikasi software dapat terjadi. Modifikasi dan pengaturan kembali basis data mungkin diperlukan dari waktu ke waktu.

Langkah ke-3 disebut juga perancangan basis data. Langkah 3, 4, dan 5 merupakan bagian dari fase design dan implementation pada siklus kehidupan sistem informasi yang besar. Pada umumnya basis data pada organisasi menjalani seluruh aktifitas-aktifitas siklus kehidupan di atas. Langkah 5 dan 6 tidak berlaku jika basis data dan aplikasi-aplikasinya baru.

Aktifitas-aktifitas pengumpulan data dan analisa :

1.  Menentukan kelompok pemakai dan bidang-bidang aplikasinya

Menentukan aplikasi utama dan kelompok user yang akan menggunakan basis data. Individu utama pada tiap-tiap kelompok pemakai dan bidang aplikasi yang telah dipilih merupakan peserta utama pada langkah-langkah berikutnya dari pengumpulan dan spesifikasi data.

2.  Peninjauan dokumentasi yang ada 

Dokumen yang ada yang berhubungan dengan aplikasi-aplikasi dipelajari dan dianalisa. Dokumen-dokumen lainnya (seperti : kebijaksanaan-kebijaksanaan, form, report, dan bagan organisasi) diuji dan ditinjau kembali untuk menguji apakah dokumen-dokumen tsb berpengaruh terhadap kumpulan data dan proses spesifikasi.

3.  Analisa lingkungan operasi dan pemrosesan data

Informasi yang sekarang dan yang akan datang dipelajari. Termasuk juga analisa jenis-jenis transaksi dan frekuensi-frekuensi transaksinya dan juga arus informasi dalam sistem. Input-output data untuk transaksi-transaksi tsb diperinci.

4.  Daftar pertanyaan dan wawancara

Tuliskan tanggapan-tanggapan dari pertanyaan-pertanyaan  yang telah dikumpulkan dari para pemakai basis data yang berpotensi. Ketua kelompok (individu utama) dapat diwawancarai sehingga input yang banyak dapat diterima dari mereka dengan memperhatikan informasi yang berharga dan mengadakan prioritas.


Transaction Troughput ialah rata-rata jumlah transaksi yang dapat diproses per menit oleh sistem basis data dan merupakan parameter kritis dari sistem transaksi (misal : digunakan pada pemesanan tempat di pesawat, bank, dll). Hasil dari fase ini adalah penentual awal dari struktur penyimpanan dan jalur akses untuk file-file basis data.























Kamis, 16 Februari 2012

[Pengenalan Software RDBMS dan Model Data]



                  Pengenalan Software RDBMS dan Model Data 



  1. Ada puluhan bahkan mungkin ratusan perangkat lunak yang tersedia, masing-masing dengan spesifikasinya sendiri-sendiri.
    Pada bagian ini saya akan membahas 5 buah DBMS yang cukup familiar dikalangan pengguna DBMS, yaitu :
    1. Microsoft Access 
    2. MySQL
    3. Microsoft SQL Server
    4. PosgreSQL
    5. Oracle.

 Microsoft Access  
Kadang disebut juga Microsoft Office Access adalah DBMS relational keluaran dari microsoft yang termasuk dalam paket Microsoft Office. Microsoft Access mengkombinasikan engine relational Microsoft Jet Database, Graphical User Interface(GUI). Microsoft Access juga dapat digunakan sebagai basis data untuk aplikasi berbasis web sederhana.




      
                                                                                                                 
    MySQL adalah software yang menggunakan standar SQL, yang bersifat multi-thread dan multi-user.My-SQL berjalan sebagai server yang melayani banyak pengguna untuk mengakses sejumlah basis data.
                                  
           
           

          Microsoft SQL Server adalah DBMS relational keluaran dari Microsoft seperti halnya Microsof Accesss. Bahasa query utama yang digunakan adalah varian dari ANSI SQL yang disebut sebagai T-SQL (Transact-SQL). Bahasa ini membolehkan user untuk membuat stored procedure sehingga meningkatkan efisiensi akses dengan basis data.





       PostgreSQL atau sering disebut Postgres termasuk dalam kategori Object-Relational Database Management System (ORDBMS). ORDBMS ialah DBMS yang selain menggunakan prinsip- prinsip basis  data relational juga menggunakan pendekatan berorientasi objek dalam model basis datanya.




      Oracle Database                
      Nama Oracle Database atau Oracle RDBMS adalah nama yang sangt diperhitungkan dalam dunia RDBMS. Oracle dikembangkan oleh Oracle Corporation. Oracle menyimpan data secara logika dalam bentuk tablespaces dan secara fisik dalam bentuk file-file data. Oracle dapat menyimpan dan store procedure dan fungsi secara mandiri



      Model-Model Data


      • Arsitektur Sistem Basis Data
      Arsitektur system basis data memberikan kerangka kerja bagi pembangunan basis data.  Dan terbagi atas tiga level yaitu :   
             -     Internal/Physical Level    : Menunjukkan bagaimana data akan disimpan

      -          External/View Level       : Level tertinggi yang menjelaskan bagian-bagian basis data pada pengguna tertentu

      -          Conceptual/Logical Level : Berkaitan dengan data apa yang akan disimpan dan bagaimana hubungan antardata tersebut

      • Model-Model Data

      1.       Entity-Relationship Diagram
      Model ER biasa digambarkan dalam bentuk diagram yang disebut Entity-Relationship Diagram (ERD). ERD merupakan notasi grafis dalam pemodelan data konseptual yang digunakan untuk memodelkan struktur data dan hubungan antar data. Pada dasarnya ada 3 macam symbol yang digunakan yaitu :

      -          Entitas : Entitas digambarkan dalam bentuk persegi empat.


      -          Atribut: Atribut digambarkan dalam bentuk ellips dan dihubungkan dengan entitas dimana atribut tersebut berada


      -          Relationship: Relationship digambarkan dalam bentuk intan/diamonds


      1.       Object-Oriented Model
      Model berorientasi objek berbasiskan kumpulan objek. Setiap objek berisi :
      -     Nilai yang disimpan dalam variable instant, dimana variable tersebut  “melekat” dengan objek itu sendiri.
      -         Metode : operasi yang berlaku pada objek yang bersangkutan.
      -      Objek-objek yang memiliki tipe nilai & metode yang sama  dikelompokkan dalam satu kelas. Kelas disini mirip dengan tipe data abstrak pada bahasa pemrograman.
      -   Sending a message : sebuah objek dapat mengakses data sebuah objek  yang lain hanya dengan memanggil metode dari objek tersebut.

      2.       Model-model logic berbasis record
      Data yang disimpan menggambarkan beberapa aspek dari suatu organisasi. Model data, adalah himpunan deksripsi data level tinggi yang dikonstruksi untuk menyembunyikan beberapa detail dari penyimpanan level rendah. Terdapat beberapa model dalam kelompok ini, antara lain: 

       
      Model relasional menggunakan kumpulan tabel-tabel untuk merepresentasikan data & relasi antar data-data tersebut. Setiap tabel terdiri atas kolom-kolom, dan setiap  kolom mempunyai nama yang unik. Model relasional adalah model data yang paling banyak digunakan saat ini. Pembahasan pokok pada model ini adalah relasi, yang dimisalkan sebagai himpunan dari record. Deskripsi data dalam istilah model data disebut skema. Pada model  relasional, skema untuk relasi ditentukan oleh nama, nama dari tiap field (atau Atribut atau kolom), dan tipe dari tiap field. 
      3.                Model Jaringan (Network Model )
      Data dalam model jaringan direpresentasikan dengan sekumpulan record (Pascal),dan relasi antara data direpresentasikan oleh record & link. Link dipandang sebagai pointer. Record-record diorganisasikan sebagai graf Model jaringan distandarisasi pada tahun 1971 oleh Data Base Task Group (DBTG).

      4.                Model Hierarki (Hirarchical Model)
               Model hirarkis biasa disebut model pohon, karena menyerupai pohon yang   dibalik. Model ini menggunakan pola hubungan orang tua-anak. Setiap simpul (biasa dinyatakan dengan lingkaran atau kotak) menyatakan sekumpulan medan. 


      RELATIONSHIP
      Relationship atau relasi adalah hubungan yang terjadi antara sejumlah entitas. Misalkan dari entitas siswa ada seorang siswa yang memiliki NIS = “GHI007” dan nama_siswa = “Donny” mempunyai relasi dengan entitas program keahlian dengan kode_program = “RPL” dan nama_program = “Rekayasa Perangkat Lunak”. Relasi di antara kedua entitas mengandung arti siswa tersebut sedang mengambil program keahlian tersebut pada sekolah tertentu.


      Relationship adalah mekanisme yang menghubungkan antara entitas. Dalam implementasi ke dalam DBMS baik entitas maupun relationship akan direpresentasikan dalam bentuk tabel (relation).
      Setiap relationship selalu mempunyai kardinalitas. Kardinalitas atau Derajat Relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas lain pada himpunan entitas yang lain.

      Kita sebenarnya dapat melihat sebuah kardinalitas antara himpunan entitas siswa dengan himpunan entitas program keahlian. Siswa dapat berelasi hanya dengan satu entitas pada himpunan entitas program keahlian. Sebaliknya satu entitas pada program keahlian dapat berelasi dengan banyak siswa. Pada gambar tersebut terlihat Donny hanya dapat berhubungan dengan Rekayasa Perangkat Lunak, sedangkan Rekayasa Perangkat Lunak dapat berhubungan dengan Donny dan Joni. Ada beberapa jenis tingkat hubungan (kardinalitas) antara entitas satu dengan entitas lainnya. Kardinalitas menunjukkan jumlah maksimum entitas pada suatu himpunan entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Secara umum ada tiga bentuk kardinalitas antar himpunan entitas, yaitu :
        satu ke satu (one to one).

      Hubungan dengan kardinalitas one-to-one artinya satu anggota suatu entitas set hanya boleh berhubungan dengan satu anggota entitas set yang lain. Hubungan antara entitas set suami dengan istri dapat dikelompokkan dalam hubungan one-to-one.

       



       satu ke banyak / banyak ke satu (one to many / many to one).

      Kardinalitas satu ke banyak dan banyak ke satu dapat dianggap sama karena tinjauan kardinalitas selalu dilihat dari dua sisi. Contohnya adalah pada suatu sekolah mempunyai aturan satu kelas terdiri dari banyak siswa tetapi tidak sebaliknya, yaitu satu siswa tidak dapat belajar pada kelas yang berbeda.



       banyak ke banyak (many to many)

      Kardinalitas ini cukup rumit untuk dijelaskan namun seringkali kita jumpai. Misalnya hubungan siswa dengan mata pelajaran memiliki kardinalitas many-to-many. Siswa berhak mengambil (mempelajari) lebih dari satu matapelajaran dan setiap mata pelajaran boleh diambil (dipelajari) lebih dari satu siswa.




       


      Model Basis Data Relasional

      Model basis data relasional diperkenalkan pertama kali oleh E.F. Codd pada tahun 1970. Model data ini didasarkan pada struktur matematis yang mudah dan alami, yaitu relation (tabel). Operasi-operasi manipulasi data semuanya berakar pada logika matematika. Hal ini menjadikan ekspresi-ekspresi
      pada tabel dapat dianalisis dan dioptimasi (Lewis et al., 2002). Pembentuk utama dalam model data relasional adalan relation (tabel). Relation terdiri dari dua hal penting yaitu schema dan instance. Relation instance tidak lebih dari sebuah tabel dua dimensi dengan baris dan kolom. Baris (row) biasa disebut sebagai tuple, yang memiliki arti sama dengan record dalam suatu file. Tetapi berbeda dengan file record, semua tuple memiliki jumlah kolom yang sama dan tidak ada tuple dalam relation instance yang sama. Kolom dalam relation instance juga dikenal sebagai attribute atau column (Ramakrishnan and Gehrke, 2000; Lewis et al., 2002). Gambar 10.23. menunjukkan bagaimana hubungan tabel/file/relation, row/record/tuple dan column/field/attribute. Gambar ini juga menunjukkan susunan dari hubungan tersebut.
      Arsitektur system basis data memberikan kerangka kerja bagi pembangunan basis data.  Dan terbagi atas tiga level yaitu :

      1.      Internal/Physical Level: berhubungan dengan bagaimana data disimpan secara fisik (physical storage). Merupakan level terendah untuk merepresentasikan basis data. Record disimpan dalam media penyimpanan dalam format byte. Didefinisikan sebagai sebuah Skema Internal.

      2.   External /View Level, berhubungan dengan bagaimana data di representasikan dari sisi setiap pengguna dan merupakan level pengguna. Yang dimaksud dengan pengguna adalah programmer, end user atau DBA. Setiap user mempunyai ‘bahasa’ yang sesuai dengan kebutuhannya. Untuk programmer, bahasa yang digunakan adalah bahasa pemrograman seperti C, COBOL,  atau PL/I. Untuk end user, bahasa yang digunakan adalah 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 aplikasi basis data. Didefinisikan sebagai sebuah Skema Eksternal.

      3.        Conceptual/Logical Level yang menghubungkan antara internal & external level. Conceptual level adalah sebuah representasi seluruh muatan informasi yang dikandung oleh basis data. 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
        
      •  Perbedaan model data Object-Oriented dengan ER-Relationship ?
      Sesuai dengan namanya Object-Oriented, Model berorientasi objek berbasiskan kumpulan objek.
      Sedangkan Model ER biasa digambarkan dalam bentuk diagram yang disebut Entity-Relationship Diagram (ERD). ERD merupakan notasi grafis dalam pemodelan data konseptual yang digunakan untuk memodelkan struktur data dan hubungan antar data.

      • Perbedaan model data relasional, jaringan dan hierarkis
      Model Relasional
      Menggunakan tabel-tabel untuk mempresentasikan data dan relasi data-data tersebut. Setiap tabel terdiri atas kolom-kolom, dan setiap kolom mempunyai nama yang unik
             Model Jaringan
           Data dalam model jaringan direpresentasikan dengan sekumpulan record, dan relasi antara data direpresentasikan oleh record dan link. Di model Jaringan, Link di pandang sebagai pointer.

            Model Hirarkis
          Biasa disebut dengan model pohon, karena menyerupai pohon yang dibalik. Model ini menggunakan pola hubungan orang tua-anak.

      Contoh Database yang saya buat yaitu database apotik, menggunakan software My-SQL :
      Melalui cmd:



      Melalui GUI :