Translate

Saturday, July 16, 2016

Perancangan Perangkat Lunak

Perancangan Perangkat Lunak


Bab ini merupakan uraian mengenai inti penerapan teori dan algoritme yang dikembangkan dalam bentuk perangkat lunak. Ada tiga hal yang harus diperhatikan dalam perancangan perangkat lunak ini yaitu perancangan data, perancangan proses dan perancangan antarmuka. Untuk menjadikannya lebih sederhana, maka perancangan perangkat lunak ini dibagi ke dalam beberapa tahapan meliputi:
  1. Perancangan Data
  2. Perancangan Proses
  3. Perancangan Antarmuka

3.1 Perancangan Data


Data-data yang digunakan dalam perangkat lunak ini dapat dibedakan menjadi tiga yaitu data masukan, data proses dan data keluaran. Beberapa jenis data tersebut akan dijelaskan pada sub bab berikutnya. Alur dari informasi diprosesnya suatu data sehingga menjadi suatu informasi memang perlu diketahui. Adapun  alur dari aliran informasi dari data-data tersebut dapat dilihat pada diagram berikut ini:


3.1.1 Data Masukan

Data masukan adalah data-data yang diperlukan agar perangkat lunak dapat bekerja. Data mentah yang dapat diolah dalam aplikasi ini terdiri dari data input yaitu data IHSG BEJ dengan jenis yang sesuai dengan yang diinputkan pengguna.
Data masukan yang diperlukan dalam hal ini adalah data IHSG BEJ pada periode 2005. Data tersebut berupa file yang berekstensi txt, dengan format pada Gambar 3.2 sebagai berikut:


Jumlah dari file teks yang didapat adalah 238 file yang berarti dalam waktu satu tahun (tahun 2005) terjadi sekitar 238 trading time (waktu perdagangan saham).
Kolom indeks adalah nama dari jenis indeks, tertera dalam tabel bahwa terdapat 15 indeks. Masing-masing indeks memiliki karakteristik sendiri-sendiri, dibagi menurut karakternya dan sektoral.
Namun sesuai dengan batasan masalah, bahwa yang diklaster adalah data IHSG pada tahun 2005, berarti data yang dibutuhkan adalah data dari seluruh jenis IHSG dan yang berada pada kolom ‘today’.


3.1.2 Data Proses

Data proses adalah data-data yang digunakan selama proses pencarian pusat klaster dengan algoritme pengklasteran dan proses pencarian derajat keanggotaan optimal. Data ini diolah dari data masukan dan digunakan untuk menghasilkan data keluaran. Data masukan diproses dengan dua tahap, yakni:
  1. Pencarian pusat klaster
Pada tahap ini data mentah masukan diolah untuk menghasil pusat klaster dari masing-masing klaster. Penghitungan pusat klaster sesuai dengan rumus penghitungan pencarian pusat klaster pada pengklasteran Fuzzy C-Means (rumus 2.2).
  1. Pencarian derajat keanggotaan optimal
Pada tahap ini terdiri atas fase pencarian derajat keanggotaan tiap data mentah pada masing-masing 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 mentah masukan. Penghitungan derajat keanggotaan masing-masing klaster dihitung dengan rumus update derajat keanggotaan pada metode pengklasteran Fuzzy C-means (rumus 2.3).
b.       Fase pencarian derajat keanggotaan optimal
Pada tahap ini, data hasil pada fase pencarian derajat keanggotaan optimal dicari dan disimpan dalam sebuah matriks. Dilakukan algoritme perbandingan untuk mendapatkan yang optimal.

3.1.3 Data Keluaran

Data keluaran adalah informasi yang dihasilkan oleh perangkat lunak untuk pengguna. Informasi didapat dari proses pengklasteran data mentah dengan  metode pengklasteran Fuzzy C-Means. Pada tahap ini, data dapat dilihat oleh pengguna dengan jelas karena ada perbedaan warna untuk masing-masing klaster dan data keluaran didalamnya. Pada tahap ini data yang telah diproses diberikan warna pada grafik, sehingga pengguna lebih mudah membedakan daerah klaster.

3.2 Perancangan Proses

Perangkat lunak ini didesain dengan penyesuaian terhadap tahapan-tahapan yang dilalui oleh pengklasteran Fuzzy C-Means.


3.2.1 Fase Preprocessing

            Pada tahap ini, data masukan diolah sesuai dengan keinginan pengguna. Data masukan diproses sesuai dengan parameter yang di-input-kan pengguna. Parameter yang di-input-kan pengguna yakni,  jenis indeks, jumlah klaster, batas ketelitian, dan fuzziness. Semua input tersebut merupakan syarat parameter metode pengklasteran Fuzzy C-Means kecuali jenis indeks. Jenis indeks mempengaruhi data masukan yang akan diolah. Tiap masukkan nantinya akan diberi persyaratan masukan sehingga masukan yang masuk ke aplikasi adalah masukan yang benar dan sesuai dengan masukan yang disyaratkan oleh algoritme Fuzzy C-Means. Diagram dibawah ini akan menjelaskan proses tersebut.


3.2.2 Fase Proses Klasterisasi                

                        Proses klasterisasi adalah proses inti dari aplikasi yang nantinya akan dibuat. Proses ini memiliki alur seperti Gambar 3.5 berikut ini.




3.2.2.1 Proses Generate Data Input

Proses ini merupakan proses untuk inisialisasi derajat keanggotaan tiap data. Inisialisasi dari proses ini didapatkan dari bilangan generate random (bilangan acak).

3.2.2.2 Komputasi Pusat Klaster

Disini data masukan diolah sehingga menjadi beberapa pusat klaster yang jumlahnya sesuai dengan jumlah klaster yang diinputkan oleh pengguna. Fase ini melalui tahap rumus berikut ini:


3.2.2.3 Komputasi Derajat Keanggotaan

Disini data hasil proses pada fase pencarian pusat klaster diolah dengan data masukan berupa data mentah indeks. Melakukan komputasi untuk menghitung derajat keanggotaan masing-masing data terhadap klaster, dengan rumus sebagai berikut:


3.2.2.4 Fase Pemberhentian                   

Melakukan pengambilan keputusan, yakni bila terdapat nilai selisih derajat keanggotaan data yang lebih kecil dari batas ketelitian (dari fase preprocessing) maka proses akan berhenti, bila tidak maka akan dilanjutkan ke tahap komputasi pusat klaster.

            Hal tersebut sesuai dengan rumus sebagai berikut:


3.2.5 Fase Pencarian Derajat Keanggotaan Optimal

Disini data hasil proses pada fase update derajat keanggotaan diolah dengan algoritme perbandingan untuk mendapatkan derajat keanggotaan optimal untuk masing-masing klaster. Kemudian diambil derajat keanggotaan dari data yang paling tinggi nilainya.

3.2.6 Fase Pengelompokkan Berdasarkan Klaster

            Pada fase ini data hasil dari fase pencarian derajat keanggotaan optimal akan dikelompokkan sesuai dengan persamaan klasternya. Data akan dikelompokkan sesuai dengan data yang lainnya yang memiliki kemiripan klaster. Pengelompokkan nanti menggunakan algoritme sorting.

3.2.7 Fase Pembuatan Grafik Data Terklaster

            Data yang sudah mengelompok berdasarkan kemiripan klaster dibuatkan sebuah grafik yang merupakan representasi dari data pada klaster tertentu. Grafik ini nantinya akan dibuat dengan berwarna. Hal ini untuk memudahkan pengguna dalam membedakan daerah klaster dan memudahkan mendapatkan informasi.

3.3 Perancangan Antarmuka

            Perancangan antarmuka dimaksudkan untuk memudahkan pengguna dalam menjalankan perangkat lunak. Interaksi antar pengguna dengan perangkat lunak menggunakan mouse dan keyboard. Pengguna bisa memilih jenis IHSG yang diinginkan, memasukkan data input serta menekan tombol untuk memulai proses baik untuk melakukan generate maupun untuk melakukan run proses serta juga untuk melakukan proses secara step by step (proses perlangkah) . Selain input untuk proses klasterisasi, juga terdapat input untuk melihat grafik hasil dari pengklasteran data. Input tersebut berupa radio button yang bisa di klik sesuai dengan keinginan pengguna. Radio button tersebut bisa dipilih bila pengguna bermaksud melihat data dan grafik, pilihan-pilihannya adalah sebagai berikut:
v  Grafik IHSG, yakni pengguna bisa melihat grafik poin indeks terhadap waktu sebelum data indeks diklaster.
v  Derajat keanggotaan, pengguna bisa melihat nilai keanggotaan data indeks terhadap masing-masing klaster beserta grafiknya.
v  Data terklaster, pengguna bisa melihat grafik poin indeks terhadap waktu setelah data indeks diklaster.
v  Detail data tersortir, pengguna bisa melihat data indeks terklaster secara detail yang sudah tersortir secara ascending.
                                     
Berikut ini adalah implementasi dari perancangan antarmuka dengan penjelasan dari tiap komponen yang ada pada form. Semuanya ada pada Gambar 3.6.







No comments:

Post a Comment

silahkan membaca dan berkomentar