Bab IV
Pembangunan Perangkat Lunak
IV.1. Lingkup Masalah Perangkat lunak dibangun dengan dua tahapan. Kedua tahapan dari perangkat lunak tersebut merupakan perangkat lunak yang berdiri sendiri. Perangkat lunak terapan akan dibangun berdasarkan informasi yang didapat dalam perangkat lunak analisis. Langkah pembangunan perangkat lunak diberikan pada Gambar IV-1. Hanya perangkat lunak terapan yang akan diberikan pada konsumen. 1. Perangkat lunak Analisis. Fungsi perangkat lunak ini adalah untuk menemukan parameter citra daun teh hitam yang memiliki korelasi tinggi terhadap parameter kualitas daun teh hitam. 2. Perangkat lunak Terapan. Bagian ini merupakan perangkat lunak utuh yang mengambil parameter yang telah ditemukan oleh bagian analisis untuk menentukan kualitas teh hitam.
Analisis Kebutuhan Perangkat Lunak
Perancangan Perangkat Lunak
Pembangunan Bagian Analisis
Pengujian Bagian Analisis
Data Latih
Penuruan Parameter Ideal
Data Latih
Data Uji
Pengujian Bagian Terapan
Pelepasan Perangkat Lunak
Data Uji
Gambar IV-1 Diagram pembangunan perangkat lunak
48
Pembangunan Bagian Terapan berdasarkan Parameter Ideal
Penambahan tahapan pembangunan perangkat lunak analisis dimaksudkan untuk memastikan performa hasil akhir sistem yang diserahkan kepada konsumen dapat bekerja optimal, karena sistem berkerja dengan tulang punggung jaringan syaraf tiruan.
Bagian analisis menangani kebutuhan sebagai berikut. 1. Ekstraksi informasi dari citra teh hitam a. Parameter Ukur. Parameter yang diekstraksi merupakan semua parameter ukur yang dapat ditemukan. b. Parameter Kualitas. Parameter kualitas berasal dari informasi kualitas yang telah diberikan pada sampel. 2. Analisis korelasi antara parameter ukur dan parameter kualitas. 3. Pelatihan sistem pakar berdasarkan parameter masukan dan sampel yang ditentukan. Sistem pakar dibangun dengan penggerak utama berupa jaringan syaraf tiruan propagasi balik. 4. Pengukuran kecepatan pelatihan dan akurasi sistem pakar berdasarkan beberapa kasus masukan.
Bagian terapan menangani kebutuhan sebagai berikut. 1. Ekstraksi informasi parameter ukur dari citra teh hitam. Parameter ukur yang diekstraksi merupakan parameter yang telah ditentukan berdasarkan pengukuran pada bagian analisis. 2. Pelatihan jaringan syaraf tiruan berdasarkan sampel yang telah ditentukan.21 3. Pengambilan keputusan kelas kualitas berdasarkan parameter masukan.
21
Dapat tidak diterapkan. Sistem dapat dibangun dengan mengambil masukan dari perangkat lunak analisis.
49
IV.2. Kebutuhan Perangkat Lunak IV.2.1. Deskripsi Umum Sistem Aplikasi yang dibangun merupakan aplikasi mandiri; ia tidak bergantung pada aplikasi lain. Operasi dari perangkat lunak bergantung sepenuhnya dari masukan yang diberikan oleh konsumen.
Secara umum bagian analisis bekerja dengan mengolah data masukan dari pengguna berupa sampel teh hitam dan kelas mutu yang ditentukan, seperti pada Gambar IV-2 dan Gambar IV-3.
Batas Iterasi Latih Data Latih Indeks Parameter Latih
Pengguna
Citra Teh Hitam
Bagian Analisis
Data Uji
Nilai Treshold Data Beban Batas Akurasi Latih
Nilai Korelasi
Laporan Pelatihan
Gambar IV-2 Perangkat lunak analisis
Sistem pada bagian tahap analisis dilengkapi dengan kemampuan untuk menerima jenis parameter ukur yang dipakai; sistem ini akan mengekstraksi semua parameter ukur yang dapat diambil pada objek di dalam citra. Sistem juga dapat menerima masukan dari pengguna tentang parameter apa yang akan digunakan oleh pengguna dalam melakukan pelatihan jaringan syaraf tiruan.
50
Data Latih Batas Iterasi Latih
Pengguna
Citra Teh Hitam
Bagian Terapan
Data Uji
Batas Akurasi Latih Data Beban Kelas Mutu Teh
Gambar IV-3 Perangkat lunak Terapan
Bagian terapan merupakan bentuk akhir sistem yang akan diserahkan pada konsumen. Sistem ini hanya akan mengekstraksi parameter ukur yang optimal terhadap jenis sampel objek dan kelas parameter mutu yang digunakan, sehingga masukan pilihan parameter tidak diperlukan. Ukuran data yang diekstraksi dan disimpan akan jauh lebih kecil dibandingkan pada bagian analisis.
IV.2.2. Fitur Utama Perangkat Lunak IV.2.2.1.
Kebutuhan Fungsional
Kebutuhan fungsional yang akan ditangani oleh sistem adalah seperti pada Tabel IV-1 dan Tabel IV-2.
Tabel IV-1
Bagian Analisis
Nom
Fungsi Bagian
or
Analisis
A1
Ekstraksi Data
Kebutuhan Fungsi
Sistem mampu mengambil citra teh Sistem dapat menerima masukan jenis kelas dan besar nilai kelas mutu teh Sistem menerima masukan besar nilai treshold Sistem mampu melakukan tresholding pada citra Sistem mampu mengekstraksi data setiap butiran teh pada citra Sistem mampu menyimpan data butiran teh Sistem mampu mengambil data butiran teh
A2
Analisis Korelasi
Sistem mampu melakukan analisis korelasi antara setiap parameter ukur dan setiap jenis parameter mutu Sistem mampu menyimpan data korelasi parameter ukur dan parameter mutu teh hitam
A3
Pelatihan Sistem Pakar
Sistem mampu mengambil data latih Sistem mampu mengambil data uji Sistem mampu mengambil data beban Sistem mampu menerima rangkaian pilihan parameter yang digunakan dan memodifikasi
51
Nom
Fungsi Bagian
or
Analisis
Kebutuhan Fungsi
sistem sesuai kebutuhan Sistem mampu melakukan pelatihan sistem berdasarkan data latih yang dibuat Sistem mampu mengambil keputusan berdasarkan data uji Sistem mampu memberikan informasi laju pelatihan dan akurasi pelatihan Sistem mampu memberikan nilai akurasi berdasarkan data uji Sistem mampu menyimpan data beban
Kebutuhan yang dijabarkan pada Tabel IV-2 dibentuk agar pengguna dapat mengetahui performa sistem terhadap pilihan parameter yang digunakan, dan informasi berkaitan dengan korelasi antara parameter masukan dan parameter keluaran yang dipilih.
Tabel IV-2
Bagian Terapan
Nom
Fungsi Bagian
or
Terapan
T1
Ekstraksi Data
Kebutuhan Fungsi
Sistem mampu mengambil citra teh Sistem dapat menerima masukan jenis kelas dan besar nilai kelas mutu teh (untuk keperluan pembuatan data latih) Sistem mampu melakukan tresholding pada citra Sistem mampu mengekstraksi data setiap butiran teh pada citra Sistem mampu menyimpan data butiran teh Sistem mampu mengambil data butiran teh
T2
Pelatihan Sistem Pakar
Sistem mampu mengambil data latih Sistem mampu mengambil data uji Sistem mampu mengambil data beban Sistem mampu melakukan pelatihan sistem berdasarkan data latih yang dibuat Sistem mampu mengambil keputusan berdasarkan data uji Sistem mampu memberikan informasi laju pelatihan dan akurasi pelatihan Sistem mampu memberikan nilai akurasi berdasarkan data uji Sistem mampu menyimpan data beban
T3
Penerapan Sistem Pakar
Sistem mampu mengambil keputusan kelas mutu teh sesuai citra yang dimasukkan dan data beban yang telah dibuat
Kebutuhan fungsional bagian terapan dibentuk dengan tujuan untuk keringkasan pemakaian sistem. Pada model ini, performa akurasi sistem dan kecepatan sistem telah dijamin dengan penggunaan parameter yang optimal.
52
IV.2.2.2.
Kebutuhan non Fungsional
Kebutuhan non fungsional yang adalah optimasi kecepatan dan pemakaian data sistem. Tujuan utama pembuatan bagian analisis adalah untuk mencapai optimasi pemakaian waktu.
IV.2.3. Model Fungsional Dalam pengembangan sistem, bentuk arsitektur sistem yang digunakan adalah arsitektur terkendali peristiwa (event driven architecture). Bagian utama pembentuk peristiwa adalah bagian antar muka sistem. Antar muka sistem yang memberikan pesan kepada setiap komponen sistem untuk dapat melaksanakan tugasnya masing – masing, seperti pada Gambar IV-4. Kegiatan pada setiap komponen sistem membentuk suatu rangkaian kerja seperti pada Gambar IV-5.
Antar Muka Sistem Ekstraksi Data
Analisis Korelasi
Jaringan Syaraf Tiruan
Treshold
Pelatihan Sistem
Interpretasi Parameter
Penerapan Sistem
Gambar IV-4 Arsitektur fungsional sistem
53
Antar Muka
Treshold
Input untuk pelatihan jaringan syaraf tiruan: - Data Objek
Interpretasi Peta Treshold
Analisis Korelasi
Input untuk ektraksi data: - Citra teh hitam - kelas mutu
Ekstraksi Data
Proses Sistem Keseluruhan
Penyimpanan Data
Jaringan Syaraf Tiruan
Analisis Korelasi
Pelatihan jaringan syaraf tiruan
Data Objek: File
Data Korelasi: File
Penerapan Jaringan Syaraf Tiruan
Data Beban: File
Gambar IV-5 Diagram proses keseluruhan
Sistem menerima masukan yang berbeda untuk proses ekstraksi data dan pelatihan jaringan syaraf tiruan. Berdasarkan nilai threshold yang diberikan, objek dibedakan dengan latar citra dengan metode threshold. Proses threshold akan menghasilkan citra biner, dan interpretasi peta treshold dilakukan untuk mengekstraksi objek citra. Data objek yang telah diekstraksi disimpan ke dalam sebuah basis data. Berdasarkan data yang telah dihimpun, tingkat korelasi antara parameter target objek (misal, kelas mutu) dengan parameter mutu objek dikalkulasi.
54
Dengan format data objek yang sama dan pilihan parameter ukur dan target yang telah diketahui, dibentuk sebuah rangkaian data latih. Data latih tersebut dipakai untuk pelatihan jaringan syaraf tiruan, dan data beban yang dibentuk disimpan. Data beban tersebut akan dipakai ketika penerapan tahapan jaringan syaraf tiruan.
Proses Ekstraksi Data Parameter dilakukan sebagai berikut. 1. Masukan gambar, nilai threshold, target kelas, dan nilai target kelas 2. Pemisahan antara titik yang merupakan bagian dari objek dengan latar berdasarkan nilai threshold, hasil berupa citra biner, seperti pada Gambar IV-6. a. Nilai di dalam nilai threshold adalah titik latar b. Nilai di luar titik threshold adalah titik objek c. Nilai di luar titik threshold yang berbatasan dengan titik latar adalah titik tepi objek 3. Interpretasi peta threshold dilakukan seperti pada Gambar IV-7. a. Menemukan titik bagian citra threshold yang merupakan objek. b. Mengumpulkan semua titik di sekitar titik yang ditemukan yang merupakan bagian dari objek. Setiap titik tetangga dari titik yang telah ditemukan dan merupakan titik objek dikumpulkan membentuk suatu rangkaian titik. c. Menginterpretasi parameter objek berdasarkan rangkaian titik. Memasukkan parameter target ke dalam objek. d. Menambahkan objek ke dalam basis data. Basis data merupakan rangkaian objek. e. Mencari dan menemukan objek lain dalam citra.
55
Penyimpanan Data
Treshold
Peta Treshold: Citra biner
Antar Muka
Ekstraksi Data
hasil
Untuk Setiap titik dalam citra
Warna titik di dalam batas nilai treshold
Titik tidak berbatasan titik latar tidak
ya
ya
Status latar
Status titik tepi
Status titik objek
Input untuk treshold: - treshold values
Gambar IV-6 Diagram proses treshold
Proses threshold dilakukan pada citra dengan cara memeriksa setiap piksel dalam citra tersebut; suatu titik yang berada di dalam batas nilai threshold merupakan titik latar, dan titik selain titik tersebut merupakan titik objek.
Proses ekstraksi objek dilakukan dengan cara menemukan terlebih dahulu titik di dalam citra yang merupakan titik objek, dan memeriksa semua titik di dekat titik – titik yang telah ditemukan, apakah ia termasuk ke dalam titik objek. Rangkaian titik yang terbentuk dimasukkan ke dalam basis data, dan sistem kembali menelusuri citra untuk menemukan objek lainnya.
56
Antar Muka
Interpretasi Peta Treshold
Input untuk ekstraksi data: - peta treshold - peta periksa
Pencarian Titik Objek
Untuk setiap titik dalam citra
Interpretasi parameter titik
Untuk setiap parameter titik yang digunakan
Kalkulasi parameter titik
Data titik diketahui
Temukan titik objek
Untuk setiap titik di sekitar titik yang telah ditemukan
Bentuk rangkaian titik
Titik objek
tidak
Ekstraksi Data
ya
Hasil berupa rangkaian titik
Tambahkan ke rangkaian titik
Abaikan
Interpretasi Parameter objek
Untuk setiap parameter objek yang digunakan
Kalkulasi parameter objek
Hasil
Penyimpanan Data
Tambahkan ke basis data
Penyimpan an Data: Data objek
Gambar IV-7 Diagram proses interpretasi peta treshold
Proses Analisis Korelasi Parameter dilakukan seperti pada Gambar IV-8. 1. Berdasarkan basis data objek, dilakukan perhitungan antara parameter ukur untuk setiap objek dengan parameter target. a. Perhitungan
korelasi
dilakukan
untuk
setiap
pasangan
parameter ukur dan parameter target. b. Dilakukan perhitungan pengambilan kesimpulan yang lain seperti nilai minimum dan nilai maksimum. 2. Perhitungan analisis korelasi dilakukan setiap kali terjadi perubahan terhadap basis data.
57
Trigger
Analisis Korelasi
[Fungsi pemanggil]
Analisis Korelasi Parameter
Input Data
Analisis Korelasi
Untuk setiap pasang parameter ukur dan parameter target
Perhitungan nilai korelasi dan perhitungan lainnya
Penyimpanan Data
Hasil
Penyimpan an Data: Data Korelasi
Gambar IV-8 Diagram proses analisis korelasi parameter
Analisa korelasi parameter dimulai dari adanya pesan dari sistem bahwa analisa korelasi parameter dapat dilakukan. Masukan yang diperlukan adalah masukan data objek yang telah dihimpun. Untuk setiap pasangan parameter ukur dan parameter target dilakukan analisis korelasi, dan data kesimpulan yang didapatkan disimpan ke dalam basis data.
Proses Jaringan Syaraf Tiruan terdiri atas rangkaian proses sebagai berikut. 1. Masukan data latih, target iterasi, target akurasi, indeks parameter ukur yang digunakan (khusus bagian analisis), dan masukan beban awal. 2. Pelatihan jaringan syaraf tiruan dilakukan seperti pada Gambar IV-9. a. Ambil sebuah datum dari data latih, masukkan nilai parameter ukur ke dalam simpul masukan dan nilai parameter target ke dalam simpul keluaran jaringan syaraf tiruan. Sebuah datum ekuivalen sebuah objek dalam basis data. Setiap nilai parameter
58
yang dimasukkan ke dalam simpul harus dipetakan ke dalam nilai antara 0 hingga 1. b. Propagasi sistem berdasarkan nilai beban, baik beban masukan dan
beban
keluaran
untuk
mendapatkan
nilai
simpul
tersembunyi dan simpul keluaran sistem. c. Penurunan delta sistem berdasarkan selisih nilai propagasi dan nilai target datum. d. Propagasi balik sistem untuk menentukan nilai beban masukan dan keluaran yang baru. e. Lakukan untuk setiap datum dalam data latih. f. Perhitungan akurasi sistem terhadap terhadap keseluruhan data latih. g. Pelatihan dilakukan hingga target iterasi atau target akurasi yang telah ditentukan tercapai. h. Beban masukan dan keluaran akhir disimpan 3. Penerapan jaringan syaraf tiruan dilakukan seperti pada Gambar IV-10. a. Masukan parameter didapatkan dalam proses ekstraksi data. b. Dilakukan propagasi jaringan syaraf tiruan untuk mendapatkan nilai keluaran yang sesuai. c. Nilai keluaran sistem dipetakan ke dalam bentuk yang diinginkan untuk dilaporkan kepada pengguna.
Pelatihan jaringan syaraf tiruan dimulai dengan memasukkan data latih, indeks parameter yang diperlukan, dan data beban awal. Proses pelatihan dilakukan untuk setiap datum dalam data latih, dan pada setiap iterasi latih besar dan iterasi dan akurasi latih diperhitungkan. Pelatihan dilakukan berulang hingga salah satu antara target iterasi atau akurasi latih tercapai. Struktur dan nilai beban jaringan syaraf tiruan disimpan
Pada penerapan jaringan syaraf tiruan, data beban yang telah didapatkan ketika tahapan latihan dipakai sebagai komponen evaluasi terhadap data objek yang telah
59
diekstraksi dari citra yang digunakan. Keputusan yang diambil diberikan sebagai laporan terhadap pengguna.
Antar Muka
Pelatihan Jaringan Syaraf Tiruan
Input untuk pelatihan jaringan syaraf tiruan: Data Latih
Jaringan Syaraf Tiruan
Untuk setiap parameter ukur dan target
Petakan ke [0, 1]
Hasil
Pelatihan Jaringan Syaraf Tiruan
Hingga target iterasi atau target akurasi tercapai
Untuk setiap datum
Hasil
Penulisan Data Beban
Penyimpanan Data
Untuk setiap satu set data
Perhitungan iterasi dan akurasi
Penulisan data beban
Propagasi
Penurunan Delta
Data beban: File
Gambar IV-9 Diagram proses pelatihan jaringan syaraf tiruan
60
Propagasi Balik
Jaringan Ekstraksi Data Syaraf Tiruan
Antar Muka
Penerapan Jaringan Syaraf Tiruan
Gambar IV-10
Input untuk bagian terapan: - Citra Teh Hitam - Data Beban - Data Korelasi - Nilai Treshold
Treshold
Report: Console.Wr iteline
Interpretasi Peta Treshold
Propagasi
Interpretasi Keputusan
Diagram proses penerapan jaringan syaraf tiruan
IV.2.4. Model Kasus Guna IV.2.4.1.
Diagram Kasus Guna
Diagram kasus guna sistem seperti pada Gambar IV-11 dan Gambar IV-12.
61
Kasus Guna Bagian Analisis A1. Ekstraksi Data
A2. Analisis Korelasi Pengguna A3. Pelatihan Sistem Pakar
Gambar IV-11
Kasus guna bagian analisis
Model kasus guna pada bagian analisis dibangun agar pengguna dapat mengetahui informasi korelasi antara parameter ukur yang parameter kualitas yang ia perlukan, dan pengguna mendapatkan kebebasan untuk menguji parameter mana yang dirasakan akan optimal untuk digunakan pada bagian terapan.
Kasus Guna Bagian Terapan T1. Ekstraksi Data
T2. Pelatihan Sistem Pakar Pengguna T3. Penerapan Sistem Pakar
Gambar IV-12
Kasus guna bagian terapan
Kasus guna bagian terapan dirancang untuk pembangunan antar muka yang sesederhana mungkin bagi pengguna. Sistem ini dirancang untuk bekerja hanya dengan parameter yang telah dipilih.
62
IV.2.4.2.
Definisi Pelaku
Pengguna sistem dapat berupa pengguna mandiri hingga ahli organolepsi. Pengguna dapat menggunakan sistem ini sebagai salah satu sarana penyimpanan / pemindahan pengetahuan; ia dapat menetapkan suatu standard klasifikasi dan menyimpan standard tersebut, atau membangun standard baru.
Pengguna dapat menggunakan sistem terapan untuk melakukan ekstraksi data teh, melatih sistem terhadap sampel yang ia tentukan sehingga sampel dapat mengambil keputusan sesuai dengan sampel yang ia berikan.
IV.2.4.3.
Definisi Kasus Guna
Definisi kasus guna sistem seperti pada Tabel IV-3. Kasus guna yang dibangun merupakan penjabaran atas kebutuhan fungsional yang telah diberikan.
Tabel IV-3 Nom
Definisi kasus guna
Kasus Guna
Deskripsi
or A1
Ekstraksi Data
Kasus guna pengambilan data parameter ukur dan kualitas teh hitam serta penyimpanan data
A2
Analisis Korelasi
Kasus guna perhitungan korelasi antara parameter ukur dan parameter kualitas teh hitam
A3
Pelatihan Sistem
Kasus guna pelatihan jaringan syaraf tiruan terhadap parameter ukur yang dipilih, data
Pakar
latih dan data uji
Ekstraksi Data
Kasus guna pengambilan data parameter ukur dan kualitas teh hitam serta penyimpanan
T1
data T2
T3
Pelatihan Sistem
Kasus guna pelatihan jaringan syaraf tiruan terhadap parameter ukur yang dipilih, data
Pakar
latih dan data uji
Penerapan Sistem
Kasus guna pemakaian jaringan syaraf tiruan dalam pengambilan keputusan.
Pakar
IV.2.4.4.
Skenario Kasus Guna
Definisi skenario kasus guna sistem seperti pada Tabel IV-4. Sistem dirancang untuk tidak mengeksekusi semua perintah yang tidak mengikuti prosedur standard.
63
Tabel IV-4 Nomor
Skenario kasus guna
Nama Kasus
Aksi Aktor
Respon Sistem
Aktor mengambil citra yang
Citra ditampilkan di layar
Guna A1
Ekstraksi Data
tersimpan di dalam basis data Aktor memberikan nilai treshold
Nilai treshold disimpan di dalam sistem
Aktor memberikan perintah
Citra biner ditampilkan
treshold Aktor memberikan perintah
Data diekstraksi dari citra dan disimpan dalam basis
ekstraksi citra
data
Aktor memberikan perintah
Data disimpan dalam tempat yang telah ditentukan oleh
penyimpanan data
aktor
Aktor memberikan perintah
Data sistem digantikan dengan data yang diambil
pengambilan data A2
Analisis
Aktor memberikan perintah
Setiap terjadi perubahan data sistem, perhitungan
Korelasi
ekstraksi citra
korelasi dilakukan
Aktor memberikan perintah
Data korelasi disimpan bersama dengan data objek
penyimpanan data Aktor memberikan perintah
Data korelasi dihitung ulang berdasarkan data yang baru
pengambilan data A3
Pelatihan
Aktor memasukkan indeks
Sistem Pakar
parameter ukur dan mutu yang
Indeks parameter dan mutu disimpan
dipakai Aktor memberikan perintah
Data latih disimpan di dalam sistem
pengambilan data latih Aktor memasukkan target iterasi
Data target iterasi dan akurasi disimpan di dalam sistem
dan akurasi yang digunakan Aktor memberikan perintah
Pelatihan dilakukan, log pelatihan diberikan
pelatihan Aktor memberikan perintah
data beban dituliskan ke dalam data
penulisan beban Aktor memberikan perintah
data beban sistem digantikan data beban yang diambil
pembacaan beban Aktor memberikan perintah
Data uji dieksekusi, laporan pengujian diberikan.
eksekusi data uji T1
Ekstraksi Data
Aktor mengambil citra yang
Citra ditampilkan di layar
tersimpan di dalam basis data Aktor memberikan perintah
Data diekstraksi dari citra dan disimpan dalam basis
ekstraksi citra
data
Aktor memberikan perintah
Data disimpan dalam tempat yang telah ditentukan oleh
penyimpanan data
aktor
Aktor memberikan perintah
Data sistem digantikan dengan data yang diambil
pengambilan data T2
Pelatihan
Aktor memberikan perintah
Sistem Pakar
pengambilan data latih
Data latih disimpan di dalam sistem
Aktor memasukkan target iterasi
64
Data target iterasi dan akurasi disimpan di dalam sistem
Nomor
Nama Kasus
Aksi Aktor
Respon Sistem
Guna dan akurasi yang digunakan Aktor memberikan perintah
Pelatihan dilakukan, log pelatihan diberikan
pelatihan Aktor memberikan perintah
data beban dituliskan ke dalam data
penulisan beban Aktor memberikan perintah
data beban sistem digantikan data beban yang diambil
pembacaan beban Aktor memberikan perintah
Data uji dieksekusi, laporan pengujian diberikan.
eksekusi data uji T3
Penerapan
Aktor memberikan perintah
Dengan menggunakan data citra yang diekstraksi,
Sistem Pakar
ekstraksi citra
sistem memberikan kelas mutu yang diinginkan
IV.3. Model Analisis IV.3.1. Realisasi Kasus Guna Tahap Analisis IV.3.1.1.
Kasus Guna A1. Ekstraksi Data
Antar muka pengguna menerima masukan dari pengguna berupa citra, nilai treshold, dan perintah lain yang diperlukan. Bagian ekstraksi data akan menerjemahkan citra ke dalam objek data yang akan disimpan dalam penyimpanan data, seperti pada Gambar IV-13 dan Gambar IV-14.
Antar Muka Pengguna
Ekstraksi Data
Penyimpanan Data
Gambar IV-13
Kasus Guna A1. Ekstraksi data
65
Pengguna melakukan ekstraksi data dengan cara memasukkan citra objek ke dalam sistem. Sistem akan mengekstraksi parameter objek yang terdapat di dalam citra dan memasukkannya ke dalam basis data.
Antar Muka Pengguna
Ekstraksi Data
Penyimpanan Data
citra
Aktor mengambil citra
nilai treshold
Aktor memasukkan nilai treshold
Treshold Aktor melakukan treshold citra biner
Ekstraksi Aktor melakukan ekstraksi citra
data report simpan
Aktor melakukan penyimpanan data.
data Data Ambil
Aktor melakukan pengambilan data
data
Data
report
Gambar IV-14
Diagram urutan A1. Ekstraksi data
Aktor mengambil citra untuk dimasukkan ke dalam sistem. Aktor memasukkan nilai batas dan melakukan pemisahan antara objek dan latar berdasarkan nilai yang ia berikan. Berdasarkan perintah ekstraksi dari aktor, sistem akan mengekstraksi data dari parameter objek yang ia temukan di dalam basis data. Data dapat disimpan untuk diambil kembali berdasarkan keinginan aktor.
IV.3.1.2.
Kasus Guna A2. Analisis Korelasi
Bagian analisis korelasi akan otomatis dipanggil bila terjadi perubahan dalam data pada penyimpanan data, seperti pada Gambar IV-15 dan Gambar IV-16.
66
Antar Muka Pengguna
Ekstraksi Data
Penyimpanan Data
Analisis Korelasi
Gambar IV-15
Kasus guna A2. Analisis korelasi
Perintah analisis korelasi akan dipanggil setiap kali terjadi perubahan pada data yang disimpan, misal, ketika aktor melakukan ekstraksi data. Ini dilakukan agar pengguna selalu mendapatkan informasi terakhir tentang hubungan antara parameter ukur dan kualitas objek yang ia dapatkan.
Antar Muka Pengguna
Aktor melakukan ekstraksi citra
Ekstraksi Data
Penyimpanan Data
Analisis Korelasi
Ekstraksi data Calc
report
Result simpan Aktor melakukan penyimpanan data. data data Data Ambil Aktor melakukan pengambilan data
Ambil Data data
Calc Result report
Gambar IV-16
Diagram urutan A2. Analisis korelasi
67
Sebagai contoh, aktor melakukan penambahan data objek berdasarkan citra yang ia miliki. Setelah penambahan dilakukan, sistem akan melakukan kalkulasi ulang nilai terhadap hubungan antara parameter ukur dan parameter kualitas yang ia miliki. Data korelasi tersebut akan disimpan bersama dengan data objek. Pada waktu ia mengambil data objek baru, terhadap data objek tersebut dilakukan perhitungan korelasi.
IV.3.1.3.
Kasus Guna A3. Pelatihan Sistem Pakar
Antar muka pengguna menerima masukan dari pengguna untuk mengubah perilaku dari bagian jaringan syaraf tiruan. Pelatihan dan pengujian jaringan syaraf tiruan memanfaatkan data yang telah terkumpul, seperti pada Gambar IV-17 dan Gambar IV-18.
Antar Muka Pengguna
Jaringan Syaraf Tiruan
Penyimpanan Data
Gambar IV-17
Kasus guna A3. Pelatihan sistem pakar
Aktor berkomunikasi dengan sistem melalui antar muka untuk mengatur semua parameter yang dibutuhkan dalam pelatihan jaringan syaraf tiruan. Jaringan syaraf tiruan yang dibangun memiliki struktur sesuai dengan yang dijabarkan pada halaman 5.
68
Antar Muka Pengguna
Jaringan Syaraf Tiruan
Penyimpanan Data
indeks Aktor memasukkan indeks parameter ukur
Ambil Aktor mengambil data latih
Ambil data
data
target iterasi akurasi Aktor memasukkan target iterasi dan akurasi
Latih Aktor memberikan perintah pelatihan
request data data report
Aktor menyimpan data beban
simpan beban beban data
Aktor mengambil data beban
ambil beban request beban beban data
Aktor mengeksekusi data uji
uji request data data report
Gambar IV-18
Diagram urutan A3. Pelatihan sistem pakar
Tahapan pelatihan sistem pakar yang diberikan merupakan penjabaran dari tahapan pelatihan jaringan syaraf tiruan yang diberikan pada Lampiran 8. Tambahan yang diberikan adalah bahwa aktor dapat memilih parameter yang ia gunakan.
IV.3.1.4.
Kasus Guna T1. Ekstraksi Data
Bagian ekstraksi data bagian terapan adalah penyederhanaan dari bagian analisis; parameter yang dipakai adalah parameter yang optimal, dan nilai treshold yang optimal telah diketahui. Secara struktural, bagian ini sama dengan bagian ekstraksi data pada bagian analisis, seperti pada Gambar IV-19 dan Gambar IV-20.
69
Antar Muka Pengguna
Ekstraksi Data
Penyimpanan Data
Gambar IV-19
Kasus guna T1. Ekstraksi data
Pengguna melakukan ekstraksi data dengan cara memasukkan citra objek ke dalam sistem. Sistem akan mengekstraksi parameter objek yang terdapat di dalam citra dan memasukkannya ke dalam basis data. Perbedaan dengan bagian analisis adalah tidak diperlukan pengaturan banyak parameter seperti indeks parameter yang digunakan.
Tahapan ekstraksi data pada bagian terapan merupakan penyerdehanaan terhadap tahapan yang digunakan pada bagian analisis.
70
Antar Muka Pengguna
Ekstraksi Data
Penyimpanan Data
citra
Aktor mengambil citra
Ekstraksi Aktor melakukan ekstraksi citra
data report simpan
Aktor melakukan penyimpanan data.
data Data Ambil
Aktor melakukan pengambilan data data Data report
Gambar IV-20
IV.3.1.5.
Diagram urutan T1. Ekstraksi data
Kasus Guna T2. Pelatihan Sistem Pakar
Bagian pelatihan sistem pakar pada bagian terapan sedikit banyak sebangun dengan pada bagian analisis, minus bahwa ia hanya menggunakan parameter yang telah ditentukan, seperti pada Gambar IV-21 dan Gambar IV-22.
Antar Muka Pengguna
Jaringan Syaraf Tiruan
Penyimpanan Data
Gambar IV-21
Kasus guna T2. Pelatihan sistem pakar
71
Aktor berkomunikasi dengan sistem melalui antar muka untuk mengatur semua parameter yang dibutuhkan dalam pelatihan jaringan syaraf tiruan. Jaringan syaraf tiruan yang dibangun memiliki struktur sesuai dengan yang dijabarkan pada halaman 5. Tidak seperti pada bagian analisis, beberapa parameter masukan yang diperlukan dari pengguna dihilangkan.
Antar Muka Pengguna
Jaringan Syaraf Tiruan
Penyimpanan Data
Ambil
Aktor mengambil data latih
Ambil data
data
target iterasi akurasi Aktor memasukkan target iterasi dan akurasi
Latih Aktor memberikan perintah pelatihan request data data report simpan beban Aktor menyimpan data beban
beban data
ambil beban Aktor mengambil data beban request beban beban
data
uji Aktor mengeksekusi data uji
request data data report
Gambar IV-22
Diagram urutan T2. Pelatihan sistem pakar
Pelatihan sistem pakar yang digunakan merupakan penjabaran dari yang telah dijelaskan pada Lampiran 7.
IV.3.1.6.
Kasus Guna T3. Penerapan Sistem Pakar
Bagian ini merupakan penerapan dari jaringan syaraf tiruan yang telah dilatih, ia mengambil informasi dari citra yang dimasukkan dan memberikan kesimpulan berdasarkan citra tersebut, seperti pada Gambar IV-23 dan Gambar IV-24.
72
Antar Muka Pengguna
Jaringan Syaraf Tiruan
Ekstraksi Data
Gambar IV-23
Kasus guna T3. penerapan sistem pakar
Penerapan sistem pakar dilakukan dengan tujuan agar pengguna dapat langsung mengetahui informasi parameter mutu objek dalam citra yang ia berikan berdasarkan parameter ukur di dalamnya dan keputusan yang diambil oleh bagian jaringan syaraf tiruan.
Antar Muka Pengguna
Ekstraksi Data
Jaringan Syaraf Tiruan
citra
Aktor mengambil citra
Ekstraksi Aktor melakukan ekstraksi citra Calc report
Gambar IV-24
Diagram urutan T3. Penerapan sistem pakar
Sistem dirancang agar setiap aktor memasukkan citra ke dalam sistem, ia dapat mengetahui kelas mutu objek pada citra tersebut. Pada prakteknya, ekstraksi citra dilakukan otomatis setiap dilakukan pengambilan citra.
73
IV.3.2. Diagram Kasus Guna Keseluruhan Diagram kasus guna keseluruhan adalah seperti pada Gambar IV-25. Pada diagram tersebut, kelas jaringan syaraf tiruan, analisis korelasi dan kelas ekstraksi data merupakan sebuah kelas kontrol dari sistem yang akan dibangun. Kelas penyimpanan data akan tersusun atas beberapa kelas entitas. Antar muka pengguna diwakili oleh kelas dengan nama yang sesuai.
Antar Muka Pengguna
Jaringan Syaraf Tiruan
Penyimpanan Data
Ekstraksi Data
Analisis Korelasi
Gambar IV-25
Diagram kasus guna keseluruhan
IV.3.3. Kelas Analisis Pembagian kelas dalam tahap analisis adalah seperti pada tabel. Atribut dan tanggung jawab masing – masing kelas diberikan pada Tabel IV-5 dan Tabel IV-6.
74
Tabel IV-5
Tabel IV-6
Jenis kelas analisis Nama Kelas
Jenis
Antar Muka Pengguna
Antar Muka
Analisis Korelasi
Kontrol
Ekstraksi Data
Kontrol
Jaringan Syaraf Tiruan
Kontrol
Penyimpanan Data
Entitas
Atribut dan metode kelas analisis
Nama Kelas
Atribut
Metode
Antar Muka
private Bitmap gambar;
[Kontrol Antar Muka]
Pengguna
private boolean[][] tresholdmap; private boolean[][] checkmap; private DaftarParameter rincian; private ListTeh datateh; private JaringanSyarafTiruan jaring; [Komponen Antar Muka]
Analisis Korelasi
private int banyakelemen
public double correlationcoefficientParameter(int indeks,
private int banyakelemenarget
int indekstarget)
private ElemenDaftarParameter[] elemen private ElemenDaftarParameter[] elementarget private void findTeh()
Ekstraksi Data
private void addTeh(int i, int j) private void addTitik(/** @ref */ ListTitik list, int i, int j) Jaringan Syaraf
[Struktur Jaringan Syaraf Tiruan]
Tiruan
[Struktur data latih]
Penyimpanan
[Struktur Data]
[Operasi Jaringan Syaraf Tiruan]
[Operasi Data]
Data
IV.3.4. Paket Analisis IV.3.4.1.
Identifikasi Paket Analisis
Untuk bagian analisis dan bagian terapan, pembagian paket yang dilakukan adalah seperti pada Gambar IV-26.
75
Analisis Teh
Paket Antar Muka
Paket Kontrol
Antar Muka Pengguna
Ekstraksi Data
Paket Entitas
Penyimpanan Data
Analisis Korelasi Jaringan Syaraf Tiruan Gambar IV-26
IV.3.4.2.
Struktur Paket Analisis
Identifikasi Kelas Analisis setiap Paket
Untuk bagian analisis dan bagian terapan, identifikasi kelas analisis setiap paket adalah seperti pada Tabel IV-7.
Tabel IV-7
Identifikasi kelas analisis paket Nama Paket
Nama Kelas
Jenis
Antar Muka
Antar Muka Pengguna
Antar Muka
Kontrol
Analisis Korelasi
Kontrol
Ekstraksi Data
Kontrol
Jaringan Syaraf Tiruan
Kontrol
Penyimpanan Data
Entitas
Entitas
IV.3.5. Deskripsi Arsitektur Arsitektur perangkat keras yang digunakan merupakan arsitektur mandiri. Ketergantungan terhadap sistem lain ditiadakan. Arsitektur pengambilan citra dijabarkan pada metode penelitian.
76
IV.4. Model Perancangan IV.4.1. Realisasi Kasus Guna Tahap Perancangan Kasus guna pada tahap perancangan merupakan gambaran umum siap implementasi terhadap kasus guna tahap analisis. Setiap kasus guna pada tahap perancangan memiliki pasangan kasus guna pada tahapan analisis.
IV.4.1.1.
Kasus Guna A1. Ekstraksi Data
Ekstraksi data bagian analisis dilakukan dengan menggunakan kelas dan urutan kerja seperti pada Gambar IV-27 dan Gambar IV-28. Struktur penyimpanan data tidak dijabarkan untuk tujuan kemudahan pembacaan.
FormEkstraksiData
EkstraksiData -checkmap -datateh -gambar -rincian -tresholdmap +addTeh() +addTitik() +AmbilGambar() +BacaData() +checkStatus() +findTeh() +isPinggir() +isTepi() +searchLatar() +Treshold() +TulisData() +updateRincian() +ValidasiNilaiTreshold()
+initializeComponent()
Penyimpan an Data
Gambar IV-27
Diagram Kelas A1. Ekstraksi Data
77
FormEkstraksiData
EkstraksiData
PenyimpananData
getGambar()
Aktor mengambil citra
Treshold()
Aktor memasukkan nilai treshold
Treshold() Aktor melakukan treshold getTresholdMap()
findTeh() Aktor melakukan ekstraksi citra
addTeh() Report()
TulisData() Aktor melakukan penyimpanan data. Data()
Data
BacaData() Aktor melakukan pengambilan data Data() Data Report()
Gambar IV-28
IV.4.1.2.
Diagram urutan tahap perancangan A1. Ekstraksi Data
Kasus Guna A2. Analisis Korelasi
Analisis korelasi bagian analisis dilakukan dengan menggunakan kelas dan urutan kerja seperti pada Gambar IV-29 dan Gambar IV-30. Bagian struktur data tidak dijabarkan untuk tujuan kemudahan pembacaan. Meskipun kelas elemen daftar parameter diberikan di diagram kelas, namun karena tidak memiliki fungsi spesifik tidak dimasukkan ke dalam diagram urutan.
78
FormEkstraksiData
EkstraksiData -checkmap -datateh -gambar -rincian -tresholdmap +addTeh() +addTitik() +AmbilGambar() +BacaData() +checkStatus() +findTeh() +isPinggir() +isTepi() +searchLatar() +Treshold() +TulisData() +updateRincian() +ValidasiNilaiTreshold()
+initializeComponent()
Penyimpan an Data
DaftarParameter -banyakelemen -banyakelemen -elemen -elementarget +TulisData() +UrutNaikKorelasi() +UrutTurunKorelasi()
ElemenDaftarParameter -banyaktarget -indeks -korelasi -maksimum -minimum -nama
Gambar IV-29
Diagram Kelas A2. Analisis Korelasi
FormEkstraksiData
EkstraksiData
PenyimpananData
DaftarParameter
findTeh() Aktor melakukan ekstraksi citra
addTeh() correlationcoefficientParameter()
report
Report() TulisData() Aktor melakukan penyimpanan data. Data() Data() Data BacaData() Aktor melakukan pengambilan data
BacaData() Data Data()
correlationcoefficientParameter() Report() Report()
Gambar IV-30
Diagram urutan tahap perancangan A2. Analisis Korelasi 79
IV.4.1.3.
Kasus Guna A3. Pelatihan Sistem Pakar
Pelatihan sistem pakar dilakukan dengan menggunakan kelas dan urutan kerja seperti pada Gambar IV-31 dan Gambar IV-32. Bagian struktur data tidak dijabarkan untuk tujuan kemudahan pembacaan.
FormLatihJST +initializeComponent()
Penyimpan an Data
Gambar IV-31
JaringanSyarafTiruan -akurasi -banyaknodekeluaran -banyaknodemasukan -banyaknodetersembunyi -bebankeluaran -bebanmasukan -dataparameter -deltakeluaran -deltamasukan -indeksparameter -iterasi -keluaran -lajupembelajaran -masukan -target -targetakurasi -targetiterasi -tersembunyi -totalakurasi +BacaBeban() +calculateAkurasi() +calculateDelta() +calculateWeight() +IterasiBatasAkurasi() +IterasiBatasIterasi() +IterasiBatasIterasidanAkurasi() +IterasiDatum() +IterasiLatih() +Propagasi() +TulisBeban() +TulisIsiLaporanLatihan() +TulisJudulLaporanLatihan()
Diagram Kelas A3. Pelatihan sistem pakar
80
FormLatihJST
JaringanSyarafTiruan
PenyimpananData
getIndeks() Aktor memasukkan indeks parameter ukur
BacaDataLatih() Aktor mengambil data latih
BacaDataLatih() Data()
data
getTargetIterasi(), getTargetAkurasi() Aktor memasukkan target iterasi dan akurasi
IterasiLatih() Aktor memberikan perintah pelatihan
getListData() Data() Report() TulisBeban()
Aktor menyimpan data beban
Beban() data BacaBeban()
Aktor mengambil data beban
BacaBeban() Beban() data Propagasi()
Aktor mengeksekusi data uji
getListData() Data() Report()
Gambar IV-32
Diagram urutan tahap perancangan A3. Pelatihan sistem pakar
IV.4.1.4.
Kasus Guna T1. Ekstraksi Data
Ekstraksi data bagian terapan dilakukan dengan menggunakan kelas dan urutan kerja seperti pada Gambar IV-33 dan Gambar IV-34. Bagian struktur data tidak dijabarkan untuk tujuan kemudahan pembacaan.
81
FormEkstraksiData
EkstraksiData -checkmap -datateh -gambar -rincian -tresholdmap +addTeh() +addTitik() +AmbilGambar() +BacaData() +checkStatus() +findTeh() +isPinggir() +isTepi() +searchLatar() +Treshold() +TulisData() +updateRincian() +ValidasiNilaiTreshold()
+initializeComponent()
Penyimpan an Data
Gambar IV-33
Diagram Kelas T1. Ekstraksi Data
FormEkstraksiData
EkstraksiData
PenyimpananData
getGambar()
Aktor mengambil citra
findTeh() Aktor melakukan ekstraksi citra
addTeh() Report()
TulisData()
Aktor melakukan penyimpanan data.
Data() Data
BacaData()
Aktor melakukan pengambilan data
Data()
Data
Report()
Gambar IV-34
IV.4.1.5.
Diagram urutan tahap perancangan T1. Ekstraksi Data
Kasus Guna T2. Pelatihan Sistem Pakar
Pelatihan sistem pakar bagian terapan dilakukan dengan menggunakan kelas dan urutan kerja seperti pada Gambar IV-35 dan Gambar IV-36. Bagian struktur data tidak dijabarkan untuk tujuan kemudahan pembacaan.
82
FormLatihJST +initializeComponent()
Penyimpan an Data
Gambar IV-35
JaringanSyarafTiruan -akurasi -banyaknodekeluaran -banyaknodemasukan -banyaknodetersembunyi -bebankeluaran -bebanmasukan -dataparameter -deltakeluaran -deltamasukan -indeksparameter -iterasi -keluaran -lajupembelajaran -masukan -target -targetakurasi -targetiterasi -tersembunyi -totalakurasi +BacaBeban() +calculateAkurasi() +calculateDelta() +calculateWeight() +IterasiBatasAkurasi() +IterasiBatasIterasi() +IterasiBatasIterasidanAkurasi() +IterasiDatum() +IterasiLatih() +Propagasi() +TulisBeban() +TulisIsiLaporanLatihan() +TulisJudulLaporanLatihan()
Diagram Kelas T2. Pelatihan sistem pakar
83
FormLatihJST
Jaringan Syaraf Tiruan
PenyimpananData
BacaData()
Aktor mengambil data latih
BacaData() Data()
data
getTargetIterasi(), getTargetAkurasi() Aktor memasukkan target iterasi dan akurasi
IterasiLatih() Aktor memberikan perintah pelatihan getListData() Data() Report() TulisBeban() Aktor menyimpan data beban
Beban() data
BacaBeban() Aktor mengambil data beban BacaBeban() Beban()
data
Propagasi() Aktor mengeksekusi data uji
getListData() Data() Report()
Gambar IV-36
Diagram urutan tahap perancangan T2. Pelatihan Sistem Pakar
IV.4.1.6.
Kasus Guna T3. Penerapan Sistem Pakar
Penerapan sistem pakar dilakukan dengan menggunakan kelas dan urutan kerja seperti pada Gambar IV-37 dan Gambar IV-38.
84
FormEkstraksiData +initializeComponent()
EkstraksiData -checkmap -datateh -gambar -rincian -tresholdmap +addTeh() +addTitik() +AmbilGambar() +BacaData() +checkStatus() +findTeh() +isPinggir() +isTepi() +searchLatar() +Treshold() +TulisData() +updateRincian() +ValidasiNilaiTreshold()
Gambar IV-37
JaringanSyarafTiruan -akurasi -banyaknodekeluaran -banyaknodemasukan -banyaknodetersembunyi -bebankeluaran -bebanmasukan -dataparameter -deltakeluaran -deltamasukan -indeksparameter -iterasi -keluaran -lajupembelajaran -masukan -target -targetakurasi -targetiterasi -tersembunyi -totalakurasi +BacaBeban() +calculateAkurasi() +calculateDelta() +calculateWeight() +IterasiBatasAkurasi() +IterasiBatasIterasi() +IterasiBatasIterasidanAkurasi() +IterasiDatum() +IterasiLatih() +Propagasi() +TulisBeban() +TulisIsiLaporanLatihan() +TulisJudulLaporanLatihan()
Diagram Kelas T3. Penerapan sistem pakar
FormEkstraksiData
EkstraksiData
JaringanSyarafTiruan
getGambar()
Aktor mengambil citra
findTeh() Aktor melakukan ekstraksi citra addTeh() Report()
Gambar IV-38
Diagram urutan tahap perancangan T3. Penerapan Sistem Pakar
85
IV.4.2. Diagram Kelas Keseluruhan Keseluruhan diagram kelas diberikan pada Gambar IV-39. Penjabaran dari paket penyimpanan data diberikan pada Gambar IV-40.
FormPembuka
Program
+initializeComponent() +PilihanForm()
+main()
FormEkstraksiData
FormTerapan
FormLatihJST
+initializeComponent()
+initializeComponent()
+initializeComponent()
EkstraksiData
JaringanSyarafTiruan
-checkmap -datateh -gambar -rincian -tresholdmap +addTeh() +addTitik() +AmbilGambar() +BacaData() +checkStatus() +findTeh() +isPinggir() +isTepi() +searchLatar() +Treshold() +TulisData() +updateRincian() +ValidasiNilaiTreshold()
-akurasi -banyaknodekeluaran -banyaknodemasukan -banyaknodetersembunyi -bebankeluaran -bebanmasukan -dataparameter -deltakeluaran -deltamasukan -indeksparameter -iterasi -keluaran -lajupembelajaran -masukan -target -targetakurasi -targetiterasi -tersembunyi -totalakurasi +BacaBeban() +calculateAkurasi() +calculateDelta() +calculateWeight() +IterasiBatasAkurasi() +IterasiBatasIterasi() +IterasiBatasIterasidanAkurasi() +IterasiDatum() +IterasiLatih() +Propagasi() +TulisBeban() +TulisIsiLaporanLatihan() +TulisJudulLaporanLatihan()
Penyimpan an Data
DaftarParameter -banyakelemen -banyakelemen -elemen -elementarget +TulisData() +UrutNaikKorelasi() +UrutTurunKorelasi()
ElemenDaftarParameter -banyaktarget -indeks -korelasi -maksimum -minimum -nama
Gambar IV-39
Diagram Kelas Keseluruhan
86
ListTeh
Titik
-first -last +BacaData() +correlationcoefficientParameter() +Count() +cubicsumParameter() +cubicsumTarget() +DelAll() +InsertFirst() +isEmpty() +maxParameter() +maxTarget() +minParameter() +minTarget() +sumParameter() +sumParameterTarget() +sumTarget() +TulisData()
-banyakparameter -datatitik -statustitik -xaxis -yaxis +computeHSLS() +computeHSVS() +computeHue() +DeltaB() +DeltaG() +DeltaMaxMin() +DeltaR() +Indeks() +Max() +Min() +Pemetaan()
ElementListTeh
ElementListTitik
-info -next -previous
-info -next -previous
Parameter -besar -nama
Teh
ListTitik
-banyakparameter -banyaktarget -datateh -rincian -target +computeKebulatan() +computeKompleksitasBentuk() +rerataWarna()
-first -last -bantuPanjang -Count -CountEdge -DelAll -InsertFirst -isEmpty -Panjang -sumMassax -sumMassaxSquared -sumMassay -sumMassaySquared -sumParameter -xMax -xMin -yMax -yMin
Gambar IV-40
Penjabaran struktur penyimpanan data
87
IV.4.3. Kelas Perancangan IV.4.3.1.
Hubungan antara Kelas Analisis dan Kelas Perancangan
Hubungan antara kelas analisis dan kelas perancangan pada bagian analisis dan perancangan digambarkan seperti pada Gambar IV-41.
Kelas Perancangan Program FormPembuka FormAmbilData Kelas Analisis
FormLatihJST
Antar Muka Pengguna
FormTerapan
Ekstraksi Data
EkstraksiData
Analisis Korelasi
DaftarParameter
Jaringan Syaraf Tiruan
ElementDaftarParameter
Penyimpanan Data
JaringanSyarafTiruan ListTeh ElementListTeh Teh ListTitik ElementListTitik Titik Parameter
Gambar IV-41
Hubungan antara kelas analisis dan kelas perancangan
88
IV.4.3.2.
Operasi dan Atribut
Operasi dan atribut setiap kelas yang terlibat dalam sistem diberikan pada tabel – tabel yang diberikan pada Lampiran 9. Hanya kelas dengan fungsi – fungsi utama yang dijabarkan. 1. Tabel 0-3 Operasi dan atribut kelas EkstraksiData 2. Tabel 0-4 Operasi dan atribut kelas JaringanSyarafTiruan 3. Tabel 0-5 Operasi dan atribut kelas DaftarParameter 4. Tabel 0-6 Operasi dan atribut kelas Teh 5. Tabel 0-7 Operasi dan atribut kelas Titik
IV.4.3.3.
Algoritma dan Kueri
Algoritma yang telah dipaparkan dalam lampiran diterapkan dalam perangkat lunak sesuai rangkaian tabel yang diberikan pada Lampiran 10. Hanya algoritma yang berkaitan dengan dasar teori yang akan ditampilkan di sini. 1. Tabel 0-8 Algoritma treshold 2. Tabel 0-9 Algoritma penambahan objek ke dalam basis data 3. Algoritma pelatihan jaringan syaraf tiruan, dibagi atas tabel – tabel berikut. a. Tabel 0-10
Algoritma pelatihan jaringan syaraf tiruan,
bagian propagasi b. Tabel 0-11
Algoritma pelatihan jaringan syaraf tiruan,
bagian perhitungan delta c. Tabel 0-12
Algoritma pelatihan jaringan syaraf tiruan,
bagian propagasi balik 4. Tabel 0-13
Algoritma perhitungan korelasi parameter
5. Tabel 0-14
Algoritma perhitungan nilai titik
6. Tabel 0-15
Algoritma perhitungan parameter ukur fisik
IV.4.3.4.
Diagram Status
Kelas – kelas dalam sistem akan melewati beberapa fase bentuk sebagai berikut.
89
1. Untuk kelas yang termasuk kelas antarmuka, fase bentuk dari objek kelas adalah seperti pada Gambar IV-42. Kelas yang dibangun dengan bentuk ini adalah sebagai berikut. a. FormPembuka b. FormAmbilData c. FormLatihJST d. FormTerapanSistemPakar 2. Untuk kelas yang termasuk kelas kontrol, fase bentuk dari objek kelas adalah seperti pada Gambar IV-43. Kelas yang dibangun dengan bentuk ini adalah sebagai berikut. a. EkstraksiData b. DaftarParameter dan ElemenDaftarParameter c. JaringanSyarafTiruan 3. Untuk kelas yang termasuk kelas entitas, fase bentuk dari objek kelas adalah seperti pada Gambar IV-44. Kelas yang dibangun dengan bentuk ini adalah setiap kelas yang merupakan bagian dari struktur data.
Idle
menerima input key
re-draw
Gambar IV-42
Diagram status kelas antar muka
create
Persisted
Delete
Gambar IV-43
Diagram status kelas kontrol
90
create
Persisted
Update
Delete
Gambar IV-44
Diagram status kelas entitas
IV.4.4. Perancangan Antar Muka Kelas – kelas antar muka yang akan dibangun di dalam sistem adalah sebagai berikut. 1. FormPembuka. Kelas ini berfungsi sebagai menu utama, kelas apa saja yang dapat dipilih oleh pengguna. Pilihan yang dapat dilakukan untuk rancangan form ini adalah sebagai form induk atau sebagai form utama. 2. FormAmbilData. Peran form ini adalah sebagai form untuk pengambilan data objek yang akan diekstraksi. Bentuk form diberikan seperti pada Gambar IV-45. Form terdiri atas PictureBox untuk gambar, citra biner hasil treshold, dan citra piksel hasil penelaahan. Report berisi log data yang telah diekstrak dari gambar. 3. FormLatihJST. Form ini digunakan untuk membangun dan melatih suatu jaringan syaraf tiruan sebagai tulang punggung dari sistem pakar keseluruhan. Bentuk form diberikan seperti pada Gambar IV-46. Pada bagian terapan, masukan untuk indeks parameter ditiadakan; sistem hanya akan menggunakan parameter yang telah ditentukan. 4. FormTerapanSistemPakar. Form ini merupakan kulminasi dari keseluruhan sistem, dengan menggunakan sistem pakar yang telah ditentukan, sistem mengenali objek pada gambar dan mengambil kesimpulan kelas mutu objek berdasarkan jaringan syaraf tiruan. Bentuk form diberikan seperti pada Gambar IV-47.
91
Form Ambil Data
Load Gambar Treshold Save Data Load Data Reset Data
Add Tea Data
Rmin
Rmax
Gmin
Gmax
Bmin
Bmax
Nama Target Kelas
Nilai Target Kelas
Count
Report
Gambar IV-45
Form Ambil Data
Form Latih JST Input Node Hidden Node Output Node
Pilihan Indeks Parameter Target Iterasi Target Akurasi Load Data Latih
Latih
Load Data Uji
Uji
Report
Reset Data
Gambar IV-46
Form Latih JST
92
Form Terapan Sistem Pakar Report
Load Gambar
Gambar IV-47
Form Terapan Sistem Pakar
IV.4.5. Diagram Pelepasan Sistem dilepaskan sebagai suatu sistem mandiri, sehingga ketergantungan kepada pengaruh dari luar dapat diminimasi, seperti pada Gambar IV-48. Hanya bagian terapan yang akan diterima oleh pengguna.
Sistem
Analisis Teh
Gambar IV-48
Diagram pelepasan sistem
93
IV.5. Implementasi IV.5.1. Implementasi Kelas Kelas yang diimplementasikan sesuai dengan Tabel IV-8. Bentuk dasar ini berlaku baik untuk perangkat lunak analisis maupun perangkat lunak terapan.
Tabel IV-8 Nomo
Implementasi Kelas Nama Kelas
Nama File Fisik
Padanan
r
Keterangan
Perancangan
1
Program
Program.java
Program
2
FormPembuka
FormPembuka.java
FormPembuka
3
FormAmbilData
FormAmbilData
FormAmbilData
4
FormPelatihanJaringanSyarafTi
FormPelatihanJaringanSyarafTiruan
FormLatihJST
ruan
.java
5
FormTerapanAnalisis
FormTerapanAnalisis.java
FomTerapan
6
EkstraksiData
EkstraksiData.java
EkstraksiData
7
PelatihanJaringanSyarafTiruan
PelatihanJaringanSyarafTiruan.java
Ditambahka n untuk mempermud ah pengendalia n jaringan syaraf tiruan
8
TerapanAnalisis
TerapanAnalisis.java
Ditambahka n sebagai pengendali penerapan sistem pakar
9
JaringanSyarafTiruan
JaringanSyarafTiruan.java
JaringanSyarafTiruan
10
DaftarParameter
DaftarParameter.java
DaftarParameter
11
ElemenDaftarParameter
ElemenDaftarParameter.java
ElementDaftarParam
12
ListTeh
ListTeh.java
ListTeh
13
ElemenListTeh
ElemenListTeh.java
ElementListTeh
14
Teh
Teh.java
Teh
15
ListTitik
ListTitik.java
ListTitik
16
ElemenListTitik
ElemenListTitik.java
ElementListTitik
17
Titik
Titik.java
Titik
18
Parameter
Parameter
Parameter
eter
Penambahan kedua kelas tersebut dilakukan untuk melengkapi kelas kontrol terhadap setiap antar muka yang diterapkan. Ini untuk memperlakukan jaringan syaraf tiruan sebagai sebuah entitas yang dikendalikan oleh kontrol yang
94
menjembatani antara antar muka dan entitas, bukan jaringan syaraf tiruan sebagai kontrol itu sendiri, seperti pada tahap perancangan. Perlakuan ini merupakan tuntutan lingkungan pemrograman.
IV.5.2. Implementasi Antar Muka Untuk perangkat lunak analisis, antar muka yang diterapkan adalah seperti pada rangkaian gambar berikut. Perangkat lunak penerapan merupakan modifikasi dan penyederhanaan dari antar muka analisis. 1. Gambar IV-49
FormPembuka
2. Gambar IV-50
FormAmbilData
3. Gambar IV-51
FormPelatihanJaringanSyarafTiruan
4. Gambar IV-52
FormTerapanAnalisis
Gambar IV-49
FormPembuka
FormPembuka diterapkan baik untuk perangkat lunak analisis maupun perangkat lunak terapan. Fungsi satu – satunya form ini adalah untuk memanggil form lain yang dibutuhkan.
95
Gambar IV-50
FormAmbilData
Untuk dapat menerima masukan kelas mutu yang lebih dari satu parameter, bentuk masukan parameter diubah, dari sebuah textbox menjadi rangkaian listbox. Untuk perangkat lunak terapan, karena nilai treshold yang dibutuhkan telah diketahui, bagian masukan nilai treshold dapat dihilangkan, begitu pun bagian pemasukan target kelas mutu. Tombol blocky treshold ditambahkan untuk memudahkan pengamatan hamparan teh.
Gambar IV-51
FormPelatihanJaringanSyarafTiruan
Metode pemasukan parameter diubah dari perancangan agar dapat menerima lebih dari satu masukan parameter ukur pelatihan. Untuk perangkat lunak terapan,
96
bagian pemasukan parameter pelatihan dapat dihilangkan karena parameter pelatihan telah diketahui.
Gambar IV-52
FormTerapanAnalisis
Form ini digunakan untuk mengsimulasikan bagaimana jaringan syaraf tiruan diterapkan. Komponen tombol ambil data beban dan ambil data parameter, treshold, dan blocky treshold dapat dihilangkan untuk perangkat lunak penerapan karena komponen yang dibutuhkan dapat langsung dimasukkan sebagai kode pada perangkat lunak.
IV.6. Pengujian IV.6.1. Rencana Pengujian Pengujian dilakukan dengan metode kotak putih sebagai bagian dari proses pengembangan (pengembangan dilakukan berbasis pengujian), dan pengujian juga dilakukan dengan metode kotak hitam melalui setiap antar muka yang digunakan.
Pengujian kotak putih dilakukan selama pengembangan, dan pengujian kotak hitam dilakukan setelah keseluruhan perangkat lunak telah selesai dikembangkan. Dalam pengujian ini, sasaran yang dikejar adalah pemenuhan kebutuhan perangkat lunak. Pengujian performa perangkat lunak diujikan sebagai bagian dari penelitian, dan diberikan dalam Bab VI.3.
97
Di antara semua kelas yang dibangun, hanya kelas antar muka yang melakukan interaksi langsung dengan pengguna. Pengujian kotak hitam hanya dilakukan terhadap perintah kendali yang diberikan dalam kelas antar muka.
Pengujian mengikuti komponen pengujian seperti pada Tabel IV-9.
Tabel IV-9 Kasus Uji
Ekstraksi Data
Rencana pengujian Kelas Antar Muka Terkait
Butir Uji
Identifikasi
FormPembuka
Pengujian Pemanggilan Antar Muka
0.1
FormAmbil Data
Pengujian pengambilan citra yang
1.1
Form Terapan Analisis
tersimpan di dalam basis data Pengujian pemberian nilai treshold
1.2
Pengujian pemberian perintah treshold
1.3
Pengujian pemberian perintah ekstraksi citra
1.4
Pengujian pemberian perintah penyimpanan
1.5
data Pengujian pemberian perintah pengambilan
1.6
data Analisis Korelasi
FormAmbilData
Pengujian pemberian perintah ekstraksi citra
2.1
FormPelatihanJaringanSyarafTiruan
Pengujian pemberian perintah penyimpanan
2.2
FormTerapanAnalisis
data Pengujian pemberian perintah pengambilan
2.3
data Pelatihan Sistem
FormPelatihanJaringanSyarafTiruan
Pengujian pemasukan indeks parameter ukur
3.1
dan mutu yang dipakai
Pakar
Pengujian pemberian perintah pengambilan
3.2
data latih Pengujian pemberian perintah pelatihan
3.3
Pengujian pemasukan target iterasi dan
3.4
akurasi yang digunakan Pengujian pemberian perintah penulisan
3.5
beban Pengujian pemberian perintah pembacaan
3.6
beban Pengujian pemberian perintah eksekusi data
3.7
uji Penerapan Sistem
FormTerapanAnalisis
Pengujian pemberian perintah ekstraksi citra
Pakar
98
4.1
IV.6.2. Kasus Uji Pengujian validatif yang dilakukan terhadap perangkat lunak memberikan hasil seperti pada Lampiran 11. Beberapa spesifikasi yang diberikan pada tahap analisis diimplementasikan secara berbeda di dalam tahap implementasi bila dibandingkan dengan perancangan atas tuntutan lingkungan pengembangan.
99