Implementasi Perangkat Lunak
Bab ini akan menguraikan tentang implementasi dari rancangan perangkat
lunak yang telah dibuat. Pembahasan meliputi lingkungan implementasi perangkat
lunak, implementasi proses, dan implementasi kelas.
4.1 Lingkungan
Aplikasi
Lingkungan
implementasi meliputi perangkat keras dan perangkat lunak yang digunakan. Spesifikasi perangkat keras dan perangkat lunak yang digunakan dalam
implementasi dapat dilihat pada tabel 4.1:
Perangkat Keras
|
Prosesor : Intel(R) Pentium(R) 4 CPU 2.8 GHz
Memori : 1024 MB
RAM
|
Perangkat Lunak
|
Sistem Operasi : Microsoft Windows
Server 2003
Perangkat Lunak
IDE : NetBeans 5
Komponen
java : JFreeChart
Driver : JDBC Oracle 10G
|
4.2
Implementasi Data
Implementasi data merupakan bab yang menjelaskan
tentang implementasi dari perancangan data yang ada pada bab 3. Seperti pada
perancangan data, implementasi data dibagi menjadi 3 yaitu data masukan, data
proses dan data keluaran.
4.2.1 Data Masukan
Data masukan yang dalam bentuk teks, diproses dengan melakukan konversi ke
dalam bentuk file CSV (Comma Separated
Value). Data yang dikonversi adalah data yang diperlukan saja. Konversi ini
dilakukan agar data dapat lebih mudah untuk dimasukkan ke dalam suatu database.
Pemilihan ke dalam bentuk CSV karena data dalam bentuk seperti itu bisa
dikonversi ke dalam beberapa database, artinya beberapa database mendukung bentuk
tersebut dalam proses import ke
database tersebut.
Data masukan yang dibutuhkan dipindahkan ke dalam database (Oracle Database 10G), dengan beberapa atribut berikut
ini:
DDL (Data Definition Language)
dari tabel yang akan dibuat adalah sebagai berikut:
Berikut ini adalah beberapa data setelah dilakukan pemindahan ke dalam
database Oracle.
Agar efisien dalam
menggunakan waktu dalam pem-filter-an
data yang benar pada master data
saham maka dibuat beberapa view yang
hasilnya adalah data yang dibutuhkan yakni IHSG yang sesuai dengan jenis
masing-masing indeks. View adalah tabel secara virtual/bayangan
atau query yang tersimpan dan tidak menyimpan data secara fisik View
merupakan bagian dari DDL(Data Definition Language).
View
dari masing-masing jenis indeks memiliki beberapa atribut sebagai berikut:
Berikut ini adalah beberapa jenis view yang digunakan untuk masing –masing
IHSG:
v VIEW_COMP2
View
ini digunakan untuk mendapatkan IHSG BEJ yang berjenis composite index .
4.2.2 Data Proses
Implementasi dari perancangan data proses adalah
membuat suatu matriks untuk menampung isi dari dari data masukan setelah di
proses. Data masukan diproses dengan dua tahap, yakni:
1. Pencarian pusat klaster
Pusat klaster disimpan dalam sebuah matriks satu
dimensi setelah proses pencarian matriks dilakukan. Matriks ini jumlah barisnya
sesuai dengan jumlah klaster yang diinputkan oleh pengguna. Matriks ini
dinamakan dengan clustercentroid.
2. Pencarian
derajat keanggotaan optimal
Pada tahap ini terdiri atas fase pencarian
derajat keanggotaan tiap data masukan pada tiap klaster dan fase pencarian data
derajat keanggotaan optimal.
a. Fase pencarian derajat keanggotaan
Pada tahap ini, data proses hasil proses
pencarian pusat klaster diolah dengan data masukan. Hasil dari proses ini
dimasukkan kedalam matriks dua dimensi yang masing-masing indeksnya menunjukkan
indeks dari data dan indeks dari klaster. Matriks ini berisi derajat
keanggotaan tiap data pada klaster tertentu. Matriks ini diberi nama dengan
matriks u1.
b. Fase pencarian
derajat keanggotaan optimal
Pada tahap ini, data hasil pada fase pencarian
derajat keanggotaan optimal dicari dan disimpan dalam sebuah matriks. Matriks
ini merupakan matriks satu dimensi yang isinya adalah indeks dari klaster yang
derajatnya optimal.
4.2.3 Data Keluaran
Data keluaran adalah informasi yang dihasilkan
oleh perangkat lunak untuk pengguna. Data yang sudah terproses sehingga
mendapatkan keanggotaan pada klaster tertertentu dibuat tampilan grafiknya
dengan warna yang berbeda untuk tiap klaster. Hal ini ada pada metode
createDataset yang berisi filtering untuk
membedakan tiap klaster.
4.3
Implementasi Proses
Sub bab
ini menjelaskan tentang implementasi dari perancangan proses yang ada pada bab
3.
4.3.1 Fase
Preprocessing
Fase ini merupakan fase dimana pengguna
melakukan input ke aplikasi. Input
dari pengguna perlu dilakukan suatu filter
sesuai dengan yang disyaratkan oleh
algoritme pengklasteran Fuzzy C-Means. Berikut ini adalah kode program dari
persyaratan input:
Fase ini juga melakukan proses pengambilan
data masukan dari database sesuai
dengan jenis indeks. Pengambilan melalui database
dengan menggunakan koneksi langsung dengan komponen yang disediakan oleh Oracle
yakni Oracle Data Source. ConnectDbFix adalah kelas yang berisi koneksi dan
pengambilan data dari database. Kode
program pengaksesan dari proses ini adalah sebagai berikut:
4.3.2 Fase Proses Klasterisasi
Pada
fase proses klasterisasi terdapat beberapa tahap yang sudah dijelaskan pada bab
perancangan perangkat lunak. Berikut ini adalah beberapa kode program yang mencerminkan
tahap perancangan tersebut.
4.3.2.1 Proses
Generate Data Input
Berikut
ini adalah kode program untuk mendapatkan nilai random yang dipersyaratkan oleh metode pengklasteran Fuzzy C-Means.
Kode program ini menggunakan kelas random yang sudah tersedia.
4.3.2.2 Komputasi Pusat Klaster
Berikut
ini adalah kode program untuk mendapatkan pusat klaster seperti pada rumus
pengklasteran dengan Fuzzy C-Means.
4.3.2.3 Komputasi Derajat Keanggotaan
Derajat
keanggotaan tiap data perlu untuk dihitung nilainya untuk masing-masing
klaster. Tiap data selalu melakukan update
derajat keanggotaan hingga kondisi pemberhentian terpenuhi. Berikut ini
adalah kode program dari rumus mendapatkan derajat keanggotaan data pada
masing-masing klaster.
4.3.2.4 Fase Pemberhentian
Berikut
ini adalah kode program dari fase pemberhentian seperti yang dijelaskan pada
bab sebelumnya.
4.3.3 Fase Pencarian Derajat Keanggotaan Optimal
Fase ini
adalah fase untuk mendapatkan data dengan derajat keanggotaan optimal. Berikut
ini adalah kode program dari fase ini. Pada fase ini dilakukan sebuah algoritme
perbandingan. Algoritme ini melakukan
seleksi terhadap data pada suatu matriks yang memiliki derajat keanggotaan
paling tinggi. Jikalau derajat keanggotaan paling tinggi didapatkan maka indeks
matriks dari klaster akan disimpan sebagai nilai pengembaliannya. Nilai
pengembalian ini yang berguna untuk proses selanjutnya.
4.3.4 Fase Pengelompokkan Berdasarkan Klaster
Kode
program untuk mengelompokkan data berdasarkan klasternya adalah sebagai
berikut:
4.3.5 Fase Pembuatan Grafik
Ada
beberapa grafik dalam aplikasi pada Tugas Akhir ini. Masing-masing akan
dijelaskan berikut ini.
4.3.5.1 Kelas hariFrame
Kelas
hariFrame berfungsi untuk menampilkan data hasil dari klasterisasi. Kelas ini
akan menampilkan derajat keangotaan masing-masing data yang sudah terklaster
beserta tanggal.
4.3.5.2 Kelas chartFrame
Kelas chartFrame berfungsi untuk menampilkan
grafik dari data IHSG BEJ yang masih belum terklaster. Kelas ini terdiri dari 3
hal utama, yakni:
v createDataSet:
untuk menampung data yang akan digunakan.
v createChart:
untuk membuat grafik dari data yang tertampung dalam DataSet.
v createDemoPanel:
sebagai tempat dari grafiknya.
4.3.5.3 Kelas markerFrame
Kelas
markerFrame berfungsi untuk menampilkan grafik dari data-data IHSG BEJ yang
telah terklaster. Kelas ini memiliki 3 hal utama yang sama dengan kelas
chartFrame. Hanya bedanya adalah terletak pada marker. Marker ini
digunakan sebagai pembeda antara klaster satu dengan yang lainnya. Hal ini
untuk memudahkan pengguna agar bisa melihat informasi secara jelas. Berikut
ini adalah implementasi dari kelas markerFrame dalam Java.
4.3.5.4
Kelas MbfFrame
Kelas MbfFrame ini berfungsi untuk
menampilkan derajat keanggotaan masing-masing IHSG BEJ secara detil dan
menyeluruh. Kelas
ini sekilas sama dengan hariFrame, akan tetapi sebenarnya berbeda. Bedanya
terletak pada jumlah derajat keanggotaan masing-masing IHSG BEJ. Kelas ini akan
menampilkan derajat keanggotaan dari IHSG BEJ dari masing-masing klaster,
sedangkan hariFrame hanya menampilkan derajat keanggotaan yang paling besar
saja
4.3.5.5 Kelas degreeFrame
Kelas
degreeFrame digunakan untuk menampilkan grafik dari data-data derajat
keanggotaan dari masing-masing IHSG BEJ pada tiap-tiap klaster. Dengan
menggunakan kelas ini, bisa dilihat derajat keanggotaan masing-masing IHSG BEJ.
No comments:
Post a Comment
silahkan membaca dan berkomentar