bab ii tinjauan pustaka - potensi utama repository

advertisement
BAB II
TINJAUAN PUSTAKA
II.1. Pegertian Sistem
Untuk mengawali pembahasan tentang analisis dan perancangan sistem
informasi, pemahaman akan sistem terlibih dahulu harus ditentukan. Definisi
sistem berkembang sesuai dengan konteks di mana pengertian sistem itu
digunakan. Berikut akan diberikan beberapa definisi sistem secara umum :
1. Kumpulan dari bagian-bagian yang bekerja sama untuk mencapai tujuan
yang sama.
a. Sistem Tatasurya
b. Sistem Pencernaan
c. Sistem Transportasi Umum
d. Sistem Otomotif
e. Sistem Komputer
f. Sistem Informasi
2. Sekumpulan objek-objek yang saling berlaris dan berinteraksi serta
hubungan antara objek bisa dilihat sebagai satu kesatuan yang dirancang
untuk mencapai satu tujuan
Dengan demikian, secara sederhana sistem dapat diartikan sebagai suatu
kumpulan atau himpuan dari unsure atau variabel-variabel yang saling
terorganisai (Tata Sutardi ; 2012 : 3).
13
14
Sistem informasi variable suara ini EQ atau Equlize Qontrol merupakan bagian
dari tone control yang harus diatur. Anda bisa mengatur tone control dalam
saluran frekuensi rendah, menengah, dan tinggi. Fungsi utama dari EQ ini adalah
untuk mengatur warna suara. Anda bisa menggunakan setting default atau bawaan
dari sound ataupun dengan manual setting dengan data masukan untuk
menyesuaikan frekuensinya.
II.2. Data Mining
Data mining merupakan serangkaian proses untuk menggali nilai tambah
dari suatu kumpulan data berupa pengetahuan yang selama ini tidak diketahui
secara manual dari suatu kumpulan data. Defenisi lain data mining adalah sebagai
proses untuk mendapatkan informasi yang berguna dari gudang basis data yang
besar. Data mining juga diartikan sebagai pengekstrakan informasi baru yang
diambil dari bongkahan data besar yang membantu dalam pengambilan
keputusan. Istilah data mining kadang disebut juga knowledge discovery. Istilah
data mining dan Knowledge Discovery in Database (KDD) sering kali digunakan
secara bergantian untuk menjelaskan proses penggalian informasi tersembunyi
dalam suatu basis data yang besar. Sebenarnya kedua istilah tersebut memiliki
konsep yang berbeda, tetapi berkaitan satu sama lain. KDD adalah kegiatan yang
meliputi pengumpulan, pemakaian data, historis untuk menemukan keteraturan,
pola atau hubungan dalam set data yang berukuran besar.
Data mining didefinisikan sebagai proses menemukan pola-pola dalam data.
Pola yang ditemukan harus penuh arti dan pola tersebut memberikan keuntungan.
15
Karakteristik data mining sebagai berikut
1. Data mining berhubungan dengan penemuan sesuatu yang tersembunyi dan
pola data tertentu yang tidak diketahui sebelumnya.
2. Data mining biasa menggunakan data yang sangat besar. Biasanya data
yang besar digunakan untuk membuat hasil lebih dipercaya (Relita Buaton
; 2012 : 90-91).
Data mining didefinisikan sebagai proses menemukan pola-pola dalam data. Pola
yang ditemukan harus penuh arti dan pola tersebut memberikan keuntungan.
Karakteristik data mining sebagai berikut
1. Data mining berhubungan dengan penemuan sesuatu yang tersembunyi
dan pola data tertentu yang tidak diketahui sebelumnya.
2. Data mining biasa menggunakan data yang sangat besar. Biasanya data
yang besar digunakan untuk membuat hasil lebih dipercaya.
Data mining berguna untuk membuat keputusan yang kritis, terutama dalam
strategi, juga dapat digunakan untuk pengambilan keputusan di masa depan
berdasarkan informasi yang diperoleh dari data masa lalu. Tergantung pada
aplikasinya, data bisa berupa data mahasiswa, data pasien, data nasabah atau
penjualan. Banyak kasus dalam kehidupan sehari-hari yang tanpa disadari bisa
diselesaikan dengan data mining, diantaranya adalah
1. Memprediksi harga saham dalam beberapa bulan ke depan berdasarkan
performansi perusahaan dan data-data ekonomi
2. Memprediksi berapa jumlah mahasiswa baru di perguruan tinggi
berdasarkan data pendaftar pada tahun-tahun sebelumnya
16
3. Memprediksi nilai indeks prestasi mahasiswa berdasarkan nilai IP setiap
semester sebelumnya.
4. Produk apa yang akan dibeli pelanggan secara bersamaan jika membeli
produk di swalayan
5. Bagaimana mengetahui karakteristik nasabah yang kredit lancar atau macet
dalam suatu perbankan atau finance
6. Mengelompokan customer berdasarkan minat, atau pola kebiasaan sehingga
mempermudah menentukan target pemasaran
7. Dll.
Tentu masih banyak lagi contoh-contoh dalam bidang lain atau kasus lain yang
kaitannnya dengan penggalian data sehingga bisa menghasilkan pengetahuan baru
dan informasi baru menjadi strategi dalam mengembangkan suatu bidang uasaha.
II.3. Clustering
Clustering adalah sebuah metode untuk mengelompokkan beberapa macam
obyek yang serupa (similar) kedalam class - class. Sebuah cluster adalah
sekumpulan data yang mirip satu sama lain dan tidak mirip dengan data - data
pada cluster lain. Clustering berbeda dengan klasifikasi karena pada clustering
tidak ada class - class target yang telah diset sebelumnya. Clustering algoritma
akan berusaha membagi data yang ada menjadi kelompok - kelompok data
dimana data pada kelompok (cluster) yang sama relatif lebih homogen bila
dibandingkan dengan data - data pada kelompok lain. Clustering berusaha
17
memaksimalkan kesamaan (similarity) dari data - data pada cluster yang sama dan
meminimalkan kesamaannya dengan data - data pada cluster lainnya.
Teknik clustering melakukan pengelompokkan pada beberapa record, dan
biasanya diberikan kepada pengguna akhir untuk memberikan gambara tentang
apa yang terjadi pada basis data. Pada Data mining, teknik clustering berbeda
dengan teknik association rule mining dan classification dimana kelas data telah
ditentukan sebelumnya. Clustering melakukan pengelompokkan data tanpa
berdasarkan kelas data tertentu. Bahkan clustering dapat dipakai untuk
memberikan label pada kelas data yang belum diketahui itu. Karena itu clustering
sering digolongkan sebagai metode unsupervised learning. Prinsip clustering
adalah memaksimalkan kesamaan antar anggota satu kelas dan meminimumkan
kesamaan antar kelas atau cluster. Clustering dapat dilakukan pada data yang
memiliki atribut yang dipetakan sebagai ruang multi dimensi. Banyak algoritma
clustering memerlukan fungsi jarak untuk mengukur kemiripan antar data, selain
itu juga diperlukan metode normalisasi bermacam atribut yang dimiliki data.
Beberapa kategori algoritma clustering yang banyak dikenal adalah metode partisi
dimana pemakai harus menentukan jumlah k partisi yang diinginkan lalu setiap
data dites untuk dimasukkan pada salah satu partisi. (Gregorius Satia Budhi, 2011
: 2).
II.4. Algoritma K-Means
K-means clustering merupakan salah satu metode data clustering nonhirarki yang mengelompokan data dalam bentuk satu atau lebih cluster/kelompok.
Data-data yang memiliki karakteristik yang sama dikelompokan dalam satu
18
cluster/kelompok
dan
data
yang
memiliki
karakteristik
yang
berbeda
dikelompokan dengan cluster/kelompok yang lain sehingga data yang berada
dalam satu cluster/kelompok memiliki tingkat variasi yang kecil (Johan Oscar Ong
; 2013).
II.4.1. Konsep K-Means
K-means merupakan salah satu metode data klustering non hirarki yang
berusaha mempartisi data yang ada ke dalam bentuk satu atau lebih cluster /
kelompok. Metode ini mempartisi ke dalam cluster / kelompok sehingga data
yang
memiliki
karakteristik
yang
sama
(High
intra
class
similarity)
dikelompokkan ke dalam satu cluster yang sama dan yang memiliki karakteristik
yang berbeda (Law inter class similarity) dikelompokkan pada kelompok yang
lain [3]. Proses klustering dimulai dengan mengidentifikasi data yang akan
dikluster, Xij (i=1,...,n; j=1,...,m) dengan n adalah jumlah data yang akan dikluster
dan m adalah jumlah variabel. Pada awal iterasi, pusat setiap kluster ditetapkan
secara bebas (sembarang), Ckj (k=1,...,k; j=1,...,m). Kemudian dihitung jarak
antara setiap data dengan setiap pusat kluster. Untuk melakukan penghitungan
jarak data ke-i (xi) pada pusat kluster ke-k (ck), diberi nama (dik), dapat
digunakan formula Euclidean (Johan Oscar Ong ; 2013).
II.4.2. Langkah-Langkah K-Means
Melakukan clustering dengan metode K-Means adalah sebagai berikut:
a. Pilih jumlah cluster k.
b. Inisialisasi k pusat cluster ini bisa dilakukan dengan berbagai cara.
Namun yang paling sering dilakukan adalah dengan cara random.
19
Pusat-pusat cluster diberiduberi nilai awal dengan angka-angka
random,
c. Alokasikan semua data/ objek ke cluster terdekat. Kedekatan dua objek
ditentukan berdasarkan jarak kedua objek tersebut. Demikian juga
kedekatan suatu data ke cluster tertentu ditentukan jarak antara data
dengan pusat cluster.
Dalam tahap ini perlu dihitung jarak tiap data ke tiap pusat cluster.
Jarak paling antara satu data dengan satu cluster tertentu akan menentukan
suatu data masuk dalam cluster mana (Johan Oscar Ong ; 2013).
Rumus :
d. Hitung kembali pusat cluster dengan keanggotaan cluster yang sekarang.
Pusat cluster adalah rata-rata dari semua data/ objek dalam cluster tertentu.
Jika dikehendaki bisa juga menggunakan median dari cluster tersebut. Jadi
rata-rata (mean) bukan satu-satunya ukuran yang bisa dipakai.
e. Tugaskan lagi setiap objek memakai pusat cluster yang baru. Jika pusat
cluster tidak berubah lagi maka proses clustering selesai. Atau, kembali ke
langkah nomor 3 sampai pusat cluster tidak berubah lagi (Johan Oscar Ong ;
2013).
II.5. Javascript
Javascript bukan bahasa berorientasi objek, melainkan bahasa berbasis
objek. Bahasa berorientasi objek harus mendukung tiga konsep dasar, yaitu
20
pengkapsulan (encapsulation), perwarisan (inheritance) dan polimorfisme
(polymorphism). Javascript hanya mendukung pengkapsulan, itupun tidak 100%
benar. Program JavaScript dituliskan pada file HTML (.html atau .htm) dengan
menggunakan tag container <SCRIPT>. Dengan kata lain, anda tidak perlu
menuliskan program JavaScript pada file terpisah (meskipun anda bisa juga
melakukannya). Ingat bahwa yang dimaksud dengan tag container adalah tag yang
diawali dengan <NAMA_TAG> dan diakhiri dengan </NAMA_TAG>. Beberapa
contoh tag container adalah <HTML></HTML>, <HEAD></Body>, dsb (Antony
Pranata ; 2001 : 11).
II.6. SQLite
SQLite merupakan sebuah sistem manajemen basis data relasional yang
bersifat ACID-compliant dan memiliki ukuran pustaka kode yang relatif kecil,
ditulis dalam bahasa C. SQLite merupakan proyek yang bersifat public domain
yang dikerjakan oleh D. Richard Hipp. Tidak seperti pada paradigma client-server
umumnya, Inti SQLite bukanlah sebuah sistem yang mandiri yang berkomunikasi
dengan sebuah program, melainkan sebagai bagian integral dari sebuah program
secara keseluruhan sehingga protokol komunikasi utama yang digunakan adalah
melalui pemanggilan API secara langsung melalui bahasa pemrograman.
Mekanisme seperti ini tentunya membawa keuntungan karena dapat mereduksi
overhead, latency times, dan secara keseluruhan lebih sederhana. Seluruh elemen
basis data (definisi data, tabel, indeks, dan data) disimpan sebagai sebuah file.
Kesederhanaan dari sisi desain tersebut bisa diraih dengan cara mengunci
21
keseluruhan file basis data pada saat sebuah transaksi dimulai (Fredy Purnomo ;
2010 : 2).
II.7. Teknik Normalisasi
Normalisasi adalah teknik perancangan yang banyak digunakan sebagai
pemandu dalam merancang basis data relasional. Pada dasarnya, normalisasi
adalah proses dua langkah yang meletakkan data dalam bentuk tabulasi dengan
menghilangkan kelompok berulang lalu menghilangkan data yang terduplikasi
dari tabel rasional.
Teori normalisasi didasarkan pada konsep bentuk normal. Sebuah tabel
relasional dikatakan berada pada bentuk normal tertentu jika tabel memenuhi
himpunan batasan tertentu. Ada lima bentuk normal yang tekah ditemukan.
II.7.1.Bentuk-bentuk Normalisasi
1. Bentuk normal tahap pertama (1” Normal Form)
Contoh yang kita gunakan di sini adalah sebuah perusahaan yang
mendapatkan barang dari sejumlah pemasok. Masing-masing pemasok
berada pada satu kota. Sebuah kota dapat mempunyai lebih dari satu
pemasok dan masing-masing kota mempunyai kode status tersendiri.
2. Bentuk normal tahap kedua (2nd normal form)
Definisi bentuk normal kedua menyatakan bahwa tabel dengan kunci
utama gabungan hanya dapat berada pada 1NF, tetapi tidak pada 2NF.
Sebuah tabel relasional berada pada bentuk normal kedua jika dia berada
22
pada bentuk normal kedua jika dia berada pada 1NF dan setiap kolom
bukan kunci yang sepenuhnya tergantung pada seluruh kolom yang
membentuk kunci utama.
3. Bentuk normal tahap ketiga (3rd normal form)
Bentuk normal ketiga mengharuskan semua kolom pada tabel relasional
tergantung hanya pada kunci utama. Secara definisi, sebuah tabel berada
pada bentuk normal ketiga (3NF) jika tabel sudah berada pada 2NF dan
setiap kolom yang bukan kunci tidak tergantung secara transitif pada
kunci utamanya.
4. Boyce Code Normal Form (BCNF)
Setelah 3NF, semua masalah normalisasi hanya melibatkan tabel yang
mempunyai tiga kolom atau lebih dan semua kolom adalah kunci.
Banyak praktisi berpendapat bahwa menempatkan entitas pada 3NF
sudah cukup karena sangat jarang entitas yang berada pada 3NF bukan
merupakan 4NF dan 5NF.
5. Bentuk Normal Tahap Keempat dan Kelima
Sebuah tabel relasional berada pada bentuk normal keempat (4NF) jika
dia dalam BCNF dan semua ketergantungan multivalue merupakan
ketergantungan fungsional. Bentuk normal keempat (4NF) didasarkan
pada konsep ketergantungan multivalue (MVD).
Sebuah tabel berada pada bentuk normal kelima (5NF) jika ia tidak dapat
mempunyai dekomposisi lossless menjadi sejumlah tabel lebih kecil. Empat
bentuk normal pertama berdasarkan pada konsep ketergantungan fungsional,
23
sedangkan bentuk normal kelima berdasarkan pada konsep ketergantungan
gabungan, laporan berbentuk faktur dapat diterangkan dengan langkah-langkah
state berikut yang ditunjukkan pada gambar II.1 berikut :
Gambar II.1 Dokumen Dasar
(Sumber : Janner Simarmata ; 2010 : 76)
II.8.
UML (Unified Modeling Language)
Menurut Windu Gata (2013 : 4) Hasil pemodelan pada OOAD
terdokumentasikan dalam bentuk Unified Modeling Language (UML). UML
adalah bahasa spesifikasi standar yang dipergunakan untuk mendokumentasikan,
menspesifikasikan dan membangun perangkat lunak.
UML merupakan metodologi dalam mengembangkan sistem berorientasi
objek dan juga merupakan alat untuk mendukung pengembangan sistem. UML
saat ini sangat banyak dipergunakan dalam dunia industri yang merupakan standar
24
bahasa pemodelan umum dalam industri perangkat lunak dan pengembangan
sistem.
Alat bantu yang digunakan dalam perancangan berorientasi objek
berbasiskan UML adalah sebagai berikut :
1. Use case Diagram
Use case diagram merupakan pemodelan untuk kelakukan (behavior) sistem
informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara
satu atau lebih aktor dengan sistem informasi yang akan dibuat. Dapat
dikatakan use case digunakan untuk mengetahui fungsi apa saja yang ada di
dalam sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi
tersebut. Simbol-simbol yang digunakan dalam use case diagram, yaitu :
Tabel II.2. Simbol Use Case
Gambar
Keterangan
Use case menggambarkan fungsionalitas yang
disediakan sistem sebagai unit-unit yang bertukan
pesan antar unit dengan aktor, biasanya dinyatakan
dengan menggunakan kata kerja di awal nama use
case.
Aktor adalah abstraction dari orang atau sistem yang
lain yang mengaktifkan fungsi dari target sistem.
Untuk mengidentifikasikan aktor, harus ditentukan
pembagian tenaga kerja dan tugas-tugas yang
berkaitan dengan peran pada konteks target sistem.
Orang atau sistem bisa muncul dalam beberapa
peran. Perlu dicatat bahwa aktor berinteraksi dengan
use case, tetapi tidak memiliki control terhadap use
case.
Asosiasi antara aktor dan use case, digambarkan
dengan garis tanpa panah yang mengindikasikan
siapa atau apa yang meminta interaksi secara
langsung dan bukannya mengidikasikan aliran data.
Asosiasi antara aktor dan use case yang
menggunakan panah terbuka untuk mengidinkasikan
25
bila aktor berinteraksi secara pasif dengan sistem.
Include, merupakan di dalam use case lain (required)
atau pemanggilan use case oleh use case lain,
contohnya adalah pemanggilan sebuah fungsi
program.
Extend, merupakan perluasan dari use case lain jika
kondisi atau syarat terpenuhi.
(Sumber : Windu Gata, 2013 : 4)
2. Diagram Aktivitas (Activity Diagram)
Activity Diagram menggambarkan workflow (aliran kerja) atau aktivitas dari
sebuah sistem atau proses bisnis. Simbol-simbol yang digunakan dalam
activity diagram, yaitu :
Tabel II.3. Simbol Activity Diagram
Gambar
Keterangan
Start point, diletakkan pada pojok kiri atas dan
merupakan awal aktifitas.
End point, akhir aktifitas.
Activites, menggambarkan suatu proses/kegiatan
bisnis.
Fork (Percabangan), digunakan untuk menunjukkan
kegiatan yang dilakukan secara parallel atau untuk
menggabungkan dua kegiatan pararel menjadi satu.
Join (penggabungan) atau rake, digunakan untuk
menunjukkan adanya dekomposisi.
Decision Points, menggambarkan pilihan untuk
pengambilan keputusan, true, false.
26
New Swimline
Swimlane, pembagian activity diagram untuk
menunjukkan siapa melakukan apa.
(Sumber : Windu Gata, 2013 : 6)
3. Diagram Urutan (Sequence Diagram)
Sequence diagram menggambarkan kelakuan objek pada use case dengan
mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima
antar objek. Simbol-simbol yang digunakan dalam sequence diagram, yaitu :
Tabel II.4. Simbol Sequence Diagram
Gambar
Keterangan
Entity Class, merupakan bagian dari sistem yang
berisi kumpulan kelas berupa entitas-entitas yang
membentuk gambaran awal sistem dan menjadi
landasan untuk menyusun basis data.
Boundary Class, berisi kumpulan kelas yang menjadi
interface atau interaksi antara satu atau lebih aktor
dengan sistem, seperti tampilan formentry dan form
cetak.
Control class, suatu objek yang berisi logika aplikasi
yang tidak memiliki tanggung jawab kepada entitas,
contohnya adalah kalkulasi dan aturan bisnis yang
melibatkan berbagai objek.
Message, simbol mengirim pesan antar class.
Recursive, menggambarkan pengiriman pesan yang
dikirim untuk dirinya sendiri.
Activation, activation mewakili sebuah eksekusi
operasi dari objek, panjang kotak ini berbanding
lurus dengan durasi aktivitas sebuah operasi.
27
Lifeline, garis titik-titik yang terhubung dengan
objek, sepanjang lifeline terdapat activation.
(Sumber : Windu Gata, 2013 : 7)
4. Class Diagram (Diagram Kelas)
Merupakan hubungan antar kelas dan penjelasan detail tiap-tiap kelas di
dalam model desain dari suatu sistem, juga memperlihatkan aturan-aturan dan
tanggng jawab entitas yang menentukan perilaku sistem.
Class diagram juga menunjukkan atribut-atribut dan operasi-operasi dari
sebuah kelas dan constraint yang berhubungan dengan objek yang
dikoneksikan. Class diagram secara khas meliputi: Kelas (Class), Relasi,
Associations, Generalization dan Aggregation, Atribut (Attributes), Operasi
(Operations/Method), Visibility, tingkat akses objek eksternal kepada suatu
operasi atau atribut. Hubungan antar kelas mempunyai keterangan yang
disebut dengan multiplicity atau kardinaliti.
Tabel II.5. Multiplicity Class Diagram
Multiplicity
Penjelasan
1
0..*
1..*
0..1
n..n
Satu dan hanya satu
Boleh tidak ada atau 1 atau lebih
1 atau lebih
Boleh tidak ada, maksimal 1
Batasan antara. Contoh 2..4 mempunyai arti
minimal 2 maksimum 4
(Sumber : Windu Gata, 2013 : 9)
Download