PENGANTAR BASIS DATA I


Basis adalah dapat diartikan se bagai markas atau gudang, tempat bersarang atau berkumpul. Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia, pegawai, siswa, pembeli, pelanggan, barang, hewan peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasinya.
Jadi, Basis Data: Kumpulan file / table yang saling berelasi (berhubungan) antara satu dengan yang lainnya. Koleksi terpadu dari data yang saling berkaitan yang dirancang untuk memenuhi kebutuhan informasi.
Basis data dapat didefinisikan dalam sejumlah sudut pandang, seperti menurut Connolly (2002, p14), definisi basis data adalah kumpulan data yang dihubungkan secara bersama-sama, dan gambaran dari data yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. Berbeda dengan sistem file yang menyimpan data secara terpisah, pada basis data data tersimpan secara terintegrasi. Basis data bukan menjadi milik dari suatu departemen tetapi sebagai sumber daya perusahaan yang dapat digunakan bersama.
Menurut Date (1990, p5), definisi dari basis data adalah kumpulan terintegrasi dari file yang merupakan representasi data dari suatu model enterprise.Sedangkan menurut Fathansyah (1999, p2), basis data adalah : Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.
Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan.

Tujuan Basis Data

Tujuan utama basis data merupakan untuk dapat memudahkan kita dalam memperoleh data yang kita cari. Selain itu ada beberapa tujuan basis data sebagai berikut yakni :
1.        Kecepatan ataupun kemudahan dalam menyimpan, mengedit ataupun memanipulasi data serta dapat melihat data.
2.        Efisiensi ruang penyimpanan dengan database, kita bisa dapat menghindari terjadinya kesamaan data dengan yang menggunakan kode tertentu sehingga ruang penyimpanan menjadi lebih efisien.
Beberapa tujuan penggunaan basis data adalah sebagai berikut :
1.      Kecepatan dan Kemudahan (Speed), melalui basis data diharapkan pengguna dapat melakukan penyimpanan, perubahan dan menampilkan kembali dengan cepat dan mudah.
2.      Efisiensi Ruang Penyimpanan (Space), penggunaan basis data mampu mengurangi pengulangan atau redundansi data. Hal ini dapat dilakukan dengan menerapkan sejumlah pengkodean atau dengan membuat relasirelasi (dalam bentuk file) antara kelompok data yang saling berhubungan.
3.      Keakuratan (Accuracy), melalui basis data keakuratan data lebih terjaga dengan menerapkan aturan dan batasan tertentu (constraint), tipe data, domain data dan keunikan data.
4.      Ketersediaan (Availability), dengan database data yang sudah tidak dipakai dapat dipisahkan dari sistem database yang sedang aktif. Hal ini dapat dilakukan dengan cara penghapusan atau memindahkannya ke media backup untuk menghemat ruang penyimpanan. Selain itu dapat memanfaatkan teknologi jaringan komputer agar data yang berada di suatu lokasi atau cabang dapat juga diakses oleh lokasi atau cabang lainnya.
5.      Kelengkapan (Completeness), agar data yang dikelola senantiasa lengkap baik relatif terhadap kebutuhan pemakai maupun terhadap waktu. Hal ini
dapat dilakukan melalui penambahan record-record data, perubahan struktur basis data, menambah field pada tabel atau menambah tabel baru.
6.      Keamanan (Security), walaupun tidak semua sistem basis data menerapkannya, keamanan dalam penggunaan basis data diperlakukan pada sistem yang besar dan serius. Dengan penerapan ini, setiap pengguna dibedakan hak aksesnya yakni ditentukan objek-objek mana saja yang bisa diakses dan proses apa saja yang bisa dia dilakukan.

7.      Kebersamaan (Sharability), agar data yang dikelola oleh sistem mendukung lingkungan multiuser (banyak pemakai) dengan menjaga atau menghindari munculnya masalah baru seperti inkonsistensi data (perubahan data yang dilakukan oleh beberapa user dalam waktu yang bersamaan) atau kondisi deadlock (banyak pemakai yang saling menunggu untuk menggunakan data).

Manfaat Basis Data
       a.       Kecepatan dan Kemudahan (Speed)
       b.      Kebersamaan Pemakaian (Sharability)
       c.       Pemusatan Kontrol Data
       d.      Efisiensi Ruang Penyimpanan (Space)
       e.       Keakuratan (Accuracy)
       f .        Ketersediaan (Availability)
      g.      Kelengkapan (Completeness)
      h.      Keamanan (Security)  
      i.        Kemudahan dalam Pembuatan Program Aplikasi Baru

Fungsi Basis Data
Basis data juga memiliki fungsi umum yang banyak diterapkan dalam dunia industri di seluruh dunia untuk dapat mendukung system atau aplikasi yang digunakan pada setiap industry. Berikut beberapa ini fungsi dasar dari database yakni:
       a.   Database berfungsi untuk mengklasifikasikan data untuk mudah digunakan dan dipahami penggunanya.
       b.  Menghindari adanya duplikasi dan juga inkonsistensi dari suatu data.
       c.   Memudahkan dalam menyimpan dan mengakses data.
       d.  Memudahkan dalam mengupdate dan menghapus data.
       e.   Menjamin kualitas data dan informasi yang terkandung didalamnya dan dapat diakses.
       f.   Merupakan suatu solusi penyimpanan data.
       g.  Mendukung kinerja aplikasi dalam penyimpanan data.

   Jenis - Jenis Basis Data
   Basis data juga dibedakan menjadi 4 jenis, yakni :
       a.       Basis data individual
Basis data individual merupakan basis data yang telah digunakan oleh perseorangan. Biasanya juga basis data seperti ini banyak kita temui dilingkungan PC. Visual data BASE, Corel Paradox, danFilemaker Pro merupakan contoh perangkat lunak yang biasa akan digunakan untuk mengelolabasi data untuk kepentingan pribadi/kita semua.
      b.      Basis data perusahaan
Basis data perusahaan merupakan basis data yang dimaksudkan untuk dapat diakses oleh beberapa pegawai dalam sebuah perusahaan dalam sebuah lokasi. Basis data seperti ini dapat disimpan dalam sebuah server atau para pemakai dapat mengakses dari masing-masing komputer yang akan berkedudukan sebagai client.
     c.       Basis data terdistribusi
Basis data terdistribusi merupakan basis data yang telah disimpan pada sejumlah komputer yang akan terletak pada beberapa lokasi. Model seperti ini banyak digunakan bank yang akan memiliki sejumlah cabang di berbagai kota atau melayani transaksi perbankan yang dapat bersifat online.
     d.      Basis data publik
Basis data publik merupakan basis data yang dapat juga diakses oleh siapa saja (publik). Sebagai contohnya, banyak situs web ( yang misalnya yahoo atau about.com) yang akan menyediakan data yang bersifat publik dan dapat diambil siapa saja secara gratis. dengan demikian, adakalanya seseorang harus menjadi anggota atau membayar iuran untuk memperoleh data publik.

Pengguna Basis Data
   a.      Database Administrator
Ialah manusia yang mengorganisasi seluruh sistem basis data. Database administrator imemiliki tanggung jawab penuh dalam manajemen database meliputi: pengaturan hak akses, koordinasi dan monitoring serta bertanggung jawab terhadap kebutuhan hardware dan software. Dalam pekerjaannya biasanya dibantu oleh staf Admin.
   b.       Database Designer
Adalah manusia yang bertugas merancang dan mengembangkan database. database designer bertanggung jawab dalam identifikasi data yang tersimpan dalam database, menentukan struktur data yang tepat untuk disimpan dalam database. Database designer memerlukan koordinasi akan kebutuhan user database.
   c.       Application Programmer
Ialah penggunaa yang berinteraksi dengan basis data melalui Data Manipulation Language (DML). DML meliputi program yang ditulis dalam bahasa pemrograman induk yang dipakai.
   d.      End user
Adalah adalah pengguna yang memanfaatkan atau membutuhkan akses ke database melalui query, manambah, merubah menghapus maupun membuat report database. End user dapat dikategorikan:
1.      Casual end users atau pengguna tak tetap atau user mahir.
Pengguna yang tidak selalu mengakses database, tapi kadang memerlukan informasi terbaru. Berinteraksi dengan sistem tanpa modul program,hanya menggunakan query (untuk akses dan manipulasi data) yang telah disediakan oleh DBMS.
2.      Natïve atau parametric end users atau user umum.
Pengguna yang pekerjaan selalu konstan yaitu melakukan query dan update data. Misalnya : bank teller, pegawai reservasi. Pengguna ini berinteraksi dengan sistem melalui pemanggilan suatu program aplikasi permanen (executable) yang telah dibuat sebelumnya oleh programmer.
3.      User Khusus (Specialized User).
Pengguna yang menulis aplikasi basis data non konvensional untuk keperluan khusus yang bisa saja mengakses basis data dengan atau tanpa DBMS yang bersangkutan.
4.      Sophisticated end users.
pengguna yang melengkapi kebutuhan database user, seperti engineer, scientist, business analyst.
5.      Stand-alone users.

pengguna user yang mengelola personal database.

Pengenalan Sistem Manajemen Basis Data (SMBD)
Database Management System (DBMS) Perangkat lunakyang digunakan untuk mengelola dan memanggil queri (query) basis datadisebut sistem manajemen basis data (database management system, DBMS). Sistem manajemen basis data (Bahasa Inggris: database management system, DBMS), atau kadang disingkat SMBD, adalah suatu sistem atau perangkat lunak yang dirancang untukmengelola suatu basis data dan menjalankan operasi terhadap data yang diminta banyak pengguna.Perintah atau instruksi tersebut umumnya ditentukan oleh user, adapun bahasa yang digunakan dibagi kedalam 2 (dua) macam diantaranya sebagaimana di bawah ini.
a.      DDL (Data Definition Language)
Yang pertama adalah bahasa DDL atau kepanjangannya Data Definition Languange, yaitu dipakai untuk menggambarkan desain dari basis data secara menyeluruh. DDL (Data Definition Language) dapat dipakai untuk membuat tabel baru, memuat indeks, maupunmengubah tabel. Hasil dari kompilasi DDL akan disimpan di kamus data. Itulah definisi dariDDL.
b.       DML (Data Manipulation Language)

          Dan yang kedua adalah DML atau kepanjangannya Data Manipulation Language, yaitu dipakai untuk memanipulasi daan pengambilan data pada suatu basis data, misalnya seperti penambahan data yang baru ke dalam suatu basis data, menghapus data pada suatu basis datadan mengubah data pada suatu basis data. Itulah definisi dar DML.

Istilah Basis Data
Istilah – istilah dalam sistem basis data sebagai berikut :
   a.      Enterprise
Yaitu suatu bentuk organisasi data yang disimpan dalam basis data merupakan data operasional dari suatu Enterprise.
#Contoh: Sekolah, Rumah Sakit, Bank dll.
   b.      Entitas
Yaitu objek yang dapat dibedakan dengan objek yang lainnya.
#Contoh : Dalam Enterprise Sekolah terdapat Entitas Mahasiswa, Mata kuliah
   c.        Attribut
Yaitu sebutan untuk mewakili suatu Entitas / Entity.
#Contoh : Dalam Entitas mahasiswa memiliki attribut NIM, Nama, Alamat,   Agama dll
   d.      Nilai data atau Data value
Yaitu informasi yang tercakup dalam setiap elemen data. Isi dai attribut Nilai Data.  
   e.        Record ( Tuple )
Yaitu kumpulan Field – field yang saling berkaitan yang menginformasikan tentang suatu entity secara lengkap.
   f.       File
Yaitu kumpulan record – record yang sejenis dimana mempunyai panjang elemen yang sama, atribute yang sama namun berbeda – beda data value – nya
   g.      Database
Yaitu kumpulan file – file yang mempunyai kaitan antara satu file dengan file lainnya sehingga membentuk suatu bangunan data.
   h.      Database Management System ( DBMS )
Yaitu kumpulan file yang saling berkaitan bersama – sama dengan program untuk pengelolaannya. Database adalah kumpulan datanya sedang program pengelolanya berdiri sendiri dalam satu paket program yang berfungsi untuk membaca data, mengisi data, menghapus data serta melaporkan data dalam database.

#Contoh:
Pengertian Basis data
     Database berasal dari dua kata yaitu data dan base. Data adalah keadaan yang diperoleh dari fakta yang ada didunia nyata. Salah satu bentuk data  adalah tulisan. Sedangkan base (basis) adalah tempat berkumpulnya sesuatu. Jadi, secara sedehana database adalah sekumpulan data yang saling berelasi. Basis data (database) adalah kumpulan data yang disimpan secara sistematis di dalam komputer yang dapat diolah atau dimanipulasi menggunakan perangkat lunak (program aplikasi) untuk menghasilkan informasi.


Fungsi Basis Data
    Adapun fungsi dari adanya basis data ini yaitu sebagai berikut :
1.      Mengelompokkan data untuk mempermudah identifikasi data. Database menyiapkan data sesuai dengan permintaan user terhadap sesuatu informasi dengan cepat dan akurat. Contohnya melalui software DBMS petugas bank dapat mencari profil informasi seorang nasabah dalam hitungan detik.
2.      Menghindari data ganda dan inkonsistensi data. Software DBMS untuk menjalankan database komputer mempunyai kemampuan menginformasikan kepada user pada saat input data apabila data yang akan diinput sudah ada adalam database.
3.      Memudahkan akses peyimpanan data, mengedit data, dan meghapus data.
4.      Menjaga kualitas data dan informasi sesuai agar tetap sama, data tidak hilang selama penyimpanan di database.
5.      Memecahkan masalah penyimpanan data konvensional yang memakan ruang database konvensional berbasis kertas sangat memakan ruangan. Dengan teknologi database data dalam kertas bisa ditransfer menjadi file digital dan disimpan dalam database server.


6.      Mendukung aplikasi yang membutuhkan ruang penyimpanan. Database sebagai penyedia ruang untuk menyimpan data data aplikasi dan sistem sebuah komputer.  

Pengertian ERD
        ERD adalah suatu diagram untuk menggambarkan desain konseptual dan model konseptual suatu basis data relasional. ERD juga merupakan gambaran yang menghubungkan antara objek satu dengan objek yang lain dalam dunia nyata. Bisa juga dikatakan bahwa bahan yang digunakan untuk membuat ERD berasal dari objek dunia nyata. ERD ini merupakan pemodelan awal basis data yang paling banyak digunakan.


ERD digunakan pada pemodelan basis data relasional. Jika menggunakan OODBMS (Object Oriented Database Management System) maka perancangan ERD tidak diperlukan. ERD memiliki beberapa aliran notasi seperti notasi Chen (dikembangkan Peter Chen), notasi Barker (dikembangkan Richard Barker), notasi Crow’s Foot dan lainnya. Tetapi, notasi yang paling banyak digunakan adalah notasi Chen. Untuk memodelkan struktur data dan hubungan antar data, ERD menggambarkannya dengan beberapa notasi dan simbol.  

Fungsi ERD 
  Fungsi penggambaran Entity Relationship Diagram (ERD) yang ada saat ini yaitu sebagai berikut 
1.      Untuk memudahkan kita dalam menganalisis pada suatu basis data atau suatu sistem dengan cara yang cepat dan murah.
2.      Dapat dilakukan pengujian pada model yang telah dibuat dan dapat mengabaikan proses yang sudah dibuat hanya dengan menggambar Entity Relationship Diagram (ERD).
3.      Menjelaskan hubungan-hubungan antar data-data dalam basis data berdasarkan objek –objek dasar data yang memiliki hubungan yang dihubungkan oleh suatu relasi.
4. Untuk mendokumentasikan data-data yang ada dengan cara mengidentifikasi setiap entitas dari data-data dan hubungannya pada suatu Entity Relationship Diagram (ERD) itu sendiri 

Komponen Basis Data
Komponen ERD sebagai berikut :
Tabel Komponen ERD

   Simbol
              Keterangan
Entitas (Entity) 

Nama_entitas


 Segala sesuatu yang dapat digambarkan oleh sebuah data. Entitas juga dapat didefinisikan sebagai objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain. Untuk menggambarkan sebuah entitas, diperlukan aturan sebagai berikut :
a.       Nama entitas berupa kata benda, orang dan tunggal.
b.      Nama entitas sebaiknya menggunakan nama yang mudah dipahami dan dapat menyatakan makna yang jelas.
Relasi (Relationship)
   Menunjukkan sebuah hubungan diantara beberapa entitas yang berasal dari himpunan entitas yang berbeda. Aturan dalam penggambaran relasi adalah sebagai berikut :
a.       Nama relasi dapat berupa kata kerja aktif, seperti memiliki, menangani.
b.     Nama relasi sebisa mungkin menggunakan nama yang mudah dipahami dan dapat menyatakan maknanya dengan jelas.
Atribut 
 Pendeskripsian karakter dan keterangan yang terdapat pada   sebuah entitas. Selain itu, berfungsi sebagai penjelas memberikan informasi lebih rinci tentang jenis sebuah entitas. Aturan dalam atribut sebagai berikut :
a.       Nama atribut juga merupakan kata benda dan tunggal.
b.      Nama atribut sebisa mungkin menggunakan nama yang mudah dipahami dan dapat menyatakan maknanya dengan jelas.
               
   Atribut Kunci Utama (Primary Key)
 Kolom atau kumpulan kolom yang secara unik membedakan antara baris yang satu dengan lainnya, sebagai kunci akses record yang diinginkan.
Atribut Bernilai Banyak (Multivalue)

 Sebuat atribut yang memiliki nilai lebih dari satu dari atribut yang bersangkutan. Contohnya beberapa pengarang pada sebuah buku.

Atibut Gabungan (Composite)
Sebuah atribut yang terdiri dari beberapa atribut yang lebih kecil, yang memiliki arti tertentu dan dapat dipecah lagi atau memiliki sub atribut.
   Atribut Turunan (Derived) atau Derivatif
Atribut yang dihasilkan dari atribut lain atau dari suatu relationship. Jadi, atribut ini bergantung pada atribut pembentuknya
Asosiasi (Association) atau garis
Penghubung antara relasi dan entitas dimana kedua ujungnya memiliki kemungkinan jumlah pemakai


Pengertian CDM
   CDM (Conceptual Data Model) atau model konsep data merupakan konsep yang berkaitan dengan pandangan pemakai terhadap data yang disimpan dalam basis data. CDM dibuat sudah dalam bentuk tabel-tabel tanpa tipe data yang menggambarkan relasi antar tabel untuk keperluan implementasi ke basis data.
CDM merupakan hasil penjabaran lebih lanjut dari ERD. Ada aturan-aturan yang harus diikuti dalam melakukan konversi ERD atau menjabarkan ERD menjadi CDM.
 Jenis-jenis objek dalam CDM yaitu :
1.      Entity (entitas)
2.      Relationship (relasi)
3.      Inheritance


4.      Association
 Fungsi CDM
   CDM dalam penerapannya dapat disamakan dengan ERD yang fungsinya memang sama yaitu memodelkan struktur logik dari basis data. CDM dipakai untuk menggambarkan secara detail (dari arti, hubungan dan batasan-batasan) struktur basis data dalam bentuk logik.
    Selain itu, CDM berfungsi sebagai alat komunikasi antar basis data, desaigner, dan analis. 
 Simbol CDM
Tabel  Simbol CDM
Simbol
Keterangan
    Entitas atau Tabel 

    nama_tabel






  Entitas atau tabel yang menyimpan data dalam basis data.






    Relasi
   1..
   * nama relasi
   1..*
  Relasi antar tabel yang terdiri atas nama relasi dan multiplicity.
    Aturan untuk mengubah ERD menjadi CDM secara umum adalah sebagai berikut :
Tabel Aturan ERD menjadi CDM
ERD
CDM
         Entitas

                                         Petugas
   PK
username
password
nama
no_ petugas
hak_akses

    Menjadi sebuah tersendiri.
    Atribut multivalue
  

   Pengarang
   PK  
    id_ pustaka
   PK
    Pengarang


                                         1…*
  Menjadi sebuah tabel tersendiri dengan kunci primer (primary key) adalah kunci primer pada entitas dan memiliki atribut dengan nama seperti pada atribut entitas.               








    Relasi
   PK
   id_E1
   PK
    id_E2
   
   atribut_relasi
   Relasi dengan kardinalitas many to many
  Menjadi sebuah tabel tersendiri dengan kunci primer adalah atribut yang menjadi kunci primer dikedua entitas yang direlasikannya
   Relasi dengan kardinalitas one to many

   E2
   PK
   id_E1
   PK
   id_E2

   atribut_relasi

 Kunci primer entitas yang memiliki hubungan one akan dijadikan kunci primer di entitas yang memiliki hubungan many dengan kata lain, relasi tidak menjadi tabel tersendiri.
   Relasi dengan kardinalitas one to one

    E2
   PK 
   PK
   id_E1
   id_E2
  
   atribut_relasi

  Kunci Primer salah satu entitas akan dijadikan kunci asing (foreign key) pada tabel yang lain dan kunci asing itu dijadikan
  
       Model relasional atau  PDM (Physical Data Model) adalah model yang menggunakan sejumlah tabel untuk mengambarkan data serta hubungan antar data. Setiap tabel mempunyai sejumlah kolom dimana setiap kolom memiliki nama yang unik beserta tipe datanya. PDM merupakan konsep yang menerangkan detail dari bagaimana data di simpan di dalam basis data.
PDM merupakan suatu bentuk fisik perancangan basis data yang sudah siap diimplementasikan ke dalam DBMS sehingga nama tabel juga sudah merupakan nama asli tabel yang akan diimplementasikan ke dalam DBMS. PDM dapat dihasilkan dari CDM yang valid. PDM dalam penerapannya dapat disamakan dengan skema relasi yang fungsinya adalah memodelkan struktur fisik dari suatu basis data yaitu merupakan gambaran secara detail suatu basis data dalam bentuk fisik. PDM memperlihatkan struktur penyimpanan data yang benar pada basis data yang digunakan sesungguhnya. 
Jenis-jenis objek dalam PDM yaitu :
1. Table (tabel)
2. View
3. Referenc

Perancangan PDM bertujuan untuk meningkatkan efisiensi dalam pemprosesan data yang mencakup :
1.      Relasi yang sudah ternormalisasi, juga mencakup perhitungan kasar volume data yang akan disimpan.
2.      Definisi dan deskripsi masing-masing atribut pada setiap entitas yang ada.
3.      Deskripsi tentang kapan dan dimana data digunakan, meliputi langkah-langkah pemasukan data, pemanggilan, penghapusan serta pembaruan.
4.      Kebutuhan akan waktu dalam mem-backup, recovery dan pemeliharaan integritas data.
5.      Deskripsi teknologi (sistem database, DBMS) yang digunakan untuk mengimplementasikan data.

Tabel Simbol PDM
Simbol
Keterangan
    Tabel           
nama_tabel

  Tabel yang menyimpan data dalam basis data
    Relasi

       id_tbl1 = id_fk_tbl2
  Relasi antar tabel yang terdiri dari persamaan antara primary key (kunci primer) tabel yang diacu dengan kunci yang menjadi referensi acuan di tabel lain.

Kardinalitas adalah penjelasan dari tingkat hubungan antarentitas. Ukuran derajat kardinalitas entitas terbagi menjadi :
          1.      One-to-one (1-1)
              Satu entitas A mempunyai hubungan dengan satu entitas B. Contohnya : 
a.   Relasi pegawai dan departemen dimana setiap pegawai hanya bekerja pada 1 departemen.
b.  Seorang ketua jurusan hanya memimpin satu jurusan.
c.   Satu presiden menjadi pemimpin pada sebuah Negara.


Gambar One to One
         2.      One-to-many (1-N) 
             Sebuah entitas pada A berhubungan dengan entitas B lebih dari satu. Contohnya : 
a. Satu depertemen memiliki banyak pegawai.
b. Seorang wali bisa menjadi wali dari beberapa mahasiswa.
c. Satu pimpinan perusahaan memiliki banyak karyawan.

                         
Gambar One to Many
   Ada juga kardinalitas Many-to-one (N-1), ini merupakan kebalikan dari dari one-to-many yaitu suatu entitas A memiliki hubungan yang banyak pada sebuah entitas B.
Contohnya :
a. Banyak pegawai yang berada pada satu departemen.
b. Banyak mahasiswa yang memiliki wali yang sama.
c. Banyak karyawan yang dipimpin oleh satu pimpinan perusahaan. 
         3.      Many-to-many (N-N)
             Sebuah entitas pada A berhubungan dengan entitas B lebih dari satu dan B berhubungan dengan A lebih dari satu       juga.
           Contohnya : 
a.             Relasi siswa dengan pelajaran, banyak siswa bisa mengambil banyak pelajaran.

                   
Gambar  Many to Many

Power designer adalah tool pemodelan yang dikeluarakan oleh Sybase untuk membangun sebuah sistem informasi yang cepat, terstuktur, dan efektif. Power Designer dapat dipergunakan untuk membangun atau merancang sebuah basis data melalui  ER-diagram, merancang sistem melalui Data Flow Diagram (DFD) serta mampu membuat program aplikasi. Ada beberapa macam pemodelan data yang digunakan untuk perancangan basis data diantaranya pertama, Conceptual Data Model (CDM) adalah model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi objek-objek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu.
Sementara itu, kedua, Physical Data Model (PDM) yaitu model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara datadata tersebut. Pada Sybase Power Designer Anda dapat melakukan generate database yang semula berupa ER-Diagram atau Conceptual Data Model (CDM) kedalam bentuk Physical Data Model (PDM) yang selanjutnya bisa kita gunakan untuk membuat sistem basis data berbasis WEB. Sybase Power Designer adalah software terkemuka di manajemen pemodelan dan, dimaksudkan untuk pembuatan model data, arsitektur informasi dan arsitektur interprisePower Designer memberikan perusahaan analisis kekuatan hubungan (analisis dampak teknologi) kemampuan untuk mengelola perubahan selama desain dan manajemen metadata teknik.
Power designer adalah tool pemodelan yang dikeluarakan oleh Sybase untuk membangun sebuah sistem informasi yang cepat, terstuktur, dan efektif. Power Designer dapat dipergunakan untuk membangun atau merancang sebuah basis data melalui  ER-diagram, merancang sistem melalui Data Flow Diagram (DFD) serta mampu membuat program aplikasi. Ada beberapa macam pemodelan data yang digunakan untuk perancangan basis data diantaranya pertama, Conceptual Data Model (CDM) adalah model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi objek-objek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu.
Sementara itu, kedua, Physical Data Model (PDM) yaitu model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara datadata tersebut. Pada Sybase Power Designer Anda dapat melakukan generate database yang semula berupa ER-Diagram atau Conceptual Data Model (CDM) kedalam bentuk Physical Data Model (PDM) yang selanjutnya bisa kita gunakan untuk membuat sistem basis data berbasis WEB. Sybase Power Designer adalah software terkemuka di manajemen pemodelan dan, dimaksudkan untuk pembuatan model data, arsitektur informasi dan arsitektur interprisePower Designer memberikan perusahaan analisis kekuatan hubungan (analisis dampak teknologi) kemampuan untuk mengelola perubahan selama desain dan manajemen metadata teknik.

Fungsi Sybase Power Designer adalah sebagai berikut :
1.      Meningkatkan produktivitas dengan bekerja sama bisnis dan TI.
2.      Berkelanjutan mendukung berbagai lingkungan heterogen (berbeda).
3.      Pengaturan yang fleksibel untuk mendukung standar yang berbeda dan mengatur komunikasi dengan lingkungan eksternal.
4.      Meningkatkan pembuatan model arsitektur enterprise karena kemungkinan mendokumentasikan.
5.      Meningkatkan bisnis kelincahan oleh ketersediaan link teknologi dan analisis hubungan (analisis dampak).

Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data yang mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi).
Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.

 1.      Untuk menghilang kerangkapan data
   2.      Untuk mengurangi kompleksitas
   3.      Untuk mempermudah pemodifikasian data

   Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat. Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.

       a.       Ketergantungan Fungsional (Functional Devendency-FD)
b.      Ketergantungan Fungsional Parsial (Partial Devendency-PD)
                  
Gambar Ketergantungan Fungsional Parsial

c.       Ketergantungan Transitif (Transitive Devendency-TD)
                      
                                   Gambar Ketergantungan Transitif
   Tahap Normalisasi dimulai dari tahap paling ringan (1NF) hingga paling ketat (5NF) Biasanya hanya sampai pada tingkat 3NF atau BCNF karena sudah cukup memadai untuk menghasilkan tabel-tabel yang berkualitas baik. Urutan: 1NF, 2NF, 3NF, BCNF, 4NF, 5NF

 

a.       Syarat normal ke 1NF antara lain :
1.      Setiap data dibentuk dalam flat file, data dibentuk dalam satu record
2.      demi satu record nilai dari field berupa “atomic value”.
3.      Tidak  ada set atribute yang berulang atau bernilai ganda.
4.      Telah ditentukannya primary key untuk tabel / relasi tersebut.
5.      Tiap atribut hanya memiliki satu pengertian.
b.      Syarat normal ke 2 NF antara lain sebagai berikut:
1.      Tabel tersebut memenuhi 1NF
2.      Semuaatribut bukan kunci memiliki full defendent functional (FD2) terhadap ateribut ang menjadi primary key
3.      Bukan kunci merupakan atribut yang bukan merupakan bagian dari atribut primary key. Primary key bisa di gabung atribut-atribut. Simpel-nya, setiap atribut bergantung pada kunci (primary key).
4.      Umun-nya diperlukan dekomposisi (pemecahan tabel) terlebih dahilu terhadap tabel yang memenuhi 1NF agar bisa di ubah menjadi 2NF.
c.       Syarat normalisasi 3NF yaitu :
1.          Sudah tercapai-nya normalisasi 2NF.
2.          setiap atribut yang bukan kunci tidak tergantung secara fungsional terhadap atribut bukan kunci yang lain dalam relasi tsb (tidak terdapat ketergantungan transitif pada atribut bukan kunci).
 Deskripsi Kasus
Judul kasus : Sistem Informasi Transaksi Penjualan
 Deskripsi :
   Kasus Transaksi Penjualan di PT. TIRTA SUKSES PERKASA masih manual. Agen masih saja memesan air club ketempat tersebut dan sambil antri, antrian nya yang sangat panjang dan lama untuk bisa membeli air club tersebut, kemudian kepala marketing hanya bisa mencatat berapa stok barang yang dipesan dan diantar kemana barang tersebut, dengan menggunakan alat tulis seperti buku kecil dan satu pulpen. Kemudian untuk itu saya ingin membuat alur untuk perancangan aplikasi tentang sistem informasi transaksi penjualan air club di PT. TIRTA SUKSES PERKASA secara online agar orang yang ingin memesan tidak menunggu terlalu lama dan waktu tidak terbuang dengan sia – sia, dan hasil biodata dari agen dapat  tersimpan secara otomatis di sistem  dan  data agen tidak hilang ataupun  rusak. Agen juga bisa mengisi form data untuk memesan air club di PT. TIRTA SUKSES PERKASA secara online melalui perancangan aplikasi yang akan dibuat pengguna.

 Fungsi kasus
 Fungsi dari Transaksi Penjualan di PT. TIRTA SUKSES PERKASA sebagai berikut
a.       Mengelola data agen meliputi :
1)      Memasukkan data agen
2)      Melihat data agen
3)      Mencari data agen
4)      menyimpan data agen
b.      Mengelola data kepala marketing meliputi :
1)      Memasukan data kepala marketing
2)      Mengubah data kepala marketing
3)      Menghapus data kepala marketing
4)      Mencari data kepala marketing
5)      Melihat data kepala marketing
c.       Mengelola data Sales meliputi :
1)      Memasukan data Sales
2)      Mengubah data Sales
3)      Menghapus data Sales
4)      Mencari data Sales
5)      Melihat data Sales
d.      Mengelola data Kepala produksi meliputi :
1)      Memasukan data Kepala produksi
2)      Mengubah data Kepala produksi
3)      Menghapus data Kepala produksi
4)      Mencari data Kepala produksi
5)      Melihat data Kepala produksi
e.       Mengelola data email meliputi :
1)      Mencari data email
2)      Melihat data email

 Definisi Entitas dan Atribut
Tabel Entitas dan Atribut
  
          Agen
     (entitas yang menyimpan data agen)
1.      id_agen (atibut yang menjadi identitas agen)
2.      nama_agen (atribut untuk menyatakan nama agen)
3.      umur_agen (atribut untuk menyatakan umur)
4.      tgl_agen (atribut untuk menyatakan tanggal lahir agen) 
5.      jumlah (atribut untuk menyatakan barang yang ingin dipesan)
6.      alamat ( atribut untuk menyatakan alamat agen)
7.      no_hp_agen (atribut untuk menyatakan nomor telpon)
8.      jk_agen (atribut untuk menyatakan jenis kelamin agen)
9.      status_agen (atribut untuk menyatakan status agen)
10.  id_kplmarketing (atribut yang menjadi  foregrein)
Kpl_Marketing
1.      id_kplmarketing (atribut yang menjadi identitas kepala marketing)
2.      nama_kplmarketing (atribut untuk menyatakan nama kepala marketing)
3.      tgl_kplmarketing (atribut yang menyatakan tempat tanggal lahir kepala marketing)
4.      alamat (atrbut untuk menyatakan alamat)
5.      status_kplmarketing (atribut untuk menyatakan status)
6.      no_hp_kplmarketing (atribut untuk menyatakan no telpon)
7.      jk_kplmarketing (atribut untuk menyatakan jenis kelamin)
8.      id_klppro (atribut yang menjadi  foregrein)
Sales
1.      id_sales (atribut yang menjadi identitas sales)
2.      nama_sales (atribut untuk menyatakan nama sales)
3.      tgl_sales (atribut yang menyatakan tempat tanggal lahir sales)
4.      alamat_sales (atrbut untuk menyatakan sales)
5.      status_sales (atribut untuk menyatakan status)
6.      no_hp_sales (atribut untuk menyatakan no telpon)
7.      jk_sales (atribut untuk menyatkan jenis kelamin)
8.      id_klppro (atribut yang menjadi  foregrein)
Email
1.      id_email (atribut yang menjadi identitas email)
2.      nama_email (atribut untuk menyatakan nama email)
3.      password (atribut untuk menyatakan password )
4.      tgl_pengambilan (atribut untuk menyatakan tanggal pengambilan)
5.      id_klpmarketing (atribut yang menjadi  foregrein)


 Definisi relasi
Berikut adalah definisi relasi dari sistem informasi transaksi penjualan dan  sebagai berikut :
Tabel  Relasi

Relasi
Deskripsi
   Memesan_barang
 Memesan barang merupakan relasi antara entitas agen dan kepala marketing , yang artinya agen dapat memesan barang ke kepala marketing Relasi tersebut disimpan pada entitas kepala marketing.

 Kardinalitas antara agen dan kepala marketing adalah many to one, karena banyak agen dapat memesan barang kepada satu kepala marketing.
   Menyerahkan 
  Menyerahkan merupakan relasi antara entitas kepala marketing dan sales, yang artinya kepala marketing  dapat menyerahkan kepada sales. Relasi tersebut disimpan pada entitas sales.

  Kardinalitas antara kepala marketing dan sales adalah one to many, karena satu kepala marketing dapat menyerahkan kepada sales.
   Menyampaikan
    Menyampaikan merupakan relasi antara entitas sales dan kepala produksi, yang artinya sales dapat menyampaikan kepada kepala produksi. Relasi tersebut disimpan pada entitas kepala produksi.

 Kardinalitas antara sales dan kepala produksi adalah many to one, karena satu sales dapat menyampaikan kepada satu kepala produksi.
   Melapor
   Melapor merupakan relasi antara entitas kepala produksi dan kepala marketing, yang artinya kepala produksi dapat melapor kepada kepala marketing. Relasi tersebut disimpan pada entitas kepala marketing.

  Kardinalitas antara kepala produksi dan kepala marketing  adalah one to one, karena satu kepala produksi dapat melapor kepada satu kepala marketing.
   Memberitahu
  Memberitahu merupakan relasi antara entitas kepala marketing dan email, yang artinya kepala marketing dapat memberitahu kan  kepada agem melalui email. Relasi tersebut disimpan pada entitas email.

  Kardinalitas antara kepala bagian dan sub bagian adalah one to many, karena satu kepala marketing  dapat memberitahu melalui beberapa email agen yang aktif.

 Diagram ERD
 Gambar Diagram ERD
 

 Digram CDM
 Gambar Diagram CDM
 Diagram PDM
 Gambar Diagram PDM



 Gambar  SQL

 Gambar PhpMyAdmin
   a.       Tabel Tidak Normal
    Kode_barang 
    Nama barang dan jumlah
    harga
151603
Amdk club 220 2 dus
   40.000
151609
Amdk club 220 4 dus 
80.000
151610
Amdk club 220 1 dus
20.000

   b.      Normalisasi 1Nf
Kode_barang
Nama barang
Jumlah
Harga
151603
Amdk club 220
2 dus
40.000
151609
Amdk club 220
4 dus
80.000
151610
Amdk club 220
1 dus
20.000

   c.       Normalisasi 2 Nf
Kode_barang
Nama barang
151603
Amdk club 220
151609
Amdk club 220
151610
Amdk club 220

    Nama barang
    Jumlah
    Harga
Amdk club 220
2 dus
40.000
Amdk club 220
4 dus
80.000
Amdk club 220
1 dus
20.000

    d.      Normalisasi 3 NF
   Id_gudang
   Nama_gudang
   Kapasitas_gudang
    Kode_barang
   Banyak_
   barang
   11268
   Gudang A1
   20M
   151603
   100
   11267
   Gudang A2
   30M
   151609
   80
   11264
   Gudang B1
   35M
   151610
   200

   Id_gudang
   Nama_gudang
   Kapasitas_gudang
   Banyak_barang
   11268
   Gudang A1
    20M
   100
   11267
   Gudang A2
    30M
    80
   11264
   Gudang B1
    35M
   200





Tidak ada komentar:

Posting Komentar

BAB VIII JOIN 8.1. Natural Join Sekarang Anda dapat membuat tampilan yang sama dengan query yang lebih singkat, yaitu menggunakan ...