25
3.2 Analisis Kebutuhan Sistem
Analisis Kebutuhan Sistem meliputi analisis kebutuhan fungsional sistem dan analisis kebutuhan non-fungsional sistem.
3.2.1 Kebutuhan fungsional sistem
Kebutuhan fungsional yang harus dimiliki oleh sistem prediksi harga minyak mentah dunia adalah:
1. Sistem dapat membaca masukan berupa data harga minyak mentah dunia selama tiga tahun terakhir.
2. Sistem dapat menghasilkan jaringan saraf tiruan dengan kinerja maksimal. 3. Sistem dapat melakukan memprediksi harga minyak mentah dalam jangka waktu
beberapa bulan mendatang 4. Sistem dapat menampilkan hasil prediksi yang akurat dan menampilkan error
yang kurang dari batas toleransi terhadap data sebenarnya.
3.2.2 Kebutuhan non-fungsional sistem
Untuk mendukung kinerja sistem, sistem sebaiknya dapat berfungsi sebagai berikut: 1. Waktu respon sistem cepat, sehingga dapat mengefektifkan waktu pengguna sistem.
2. Tampilan antarmuka sistem dapat dengan mudah dimengerti oleh pengguna sistem. 3. Data yang terdapat pada sistem berupa data yang relevan, sehingga menghasilkan
pengenalan yang tepat. 4. Sistem yang dibuat dapat dikembangkan dengan mudah, sehingga sistem tidak
cepat usang.
3.3 Pemodelan
Pada penelitian ini digunakan UML sebagai bahasa pemodelan untuk mendesain dan merancang sistem prediksi harga minyak mentah dunia. Model UML yang digunakan
adalah use case diagram, activity diagram dan sequence diagram.
Universitas Sumatera Utara
26
3.3.1 Use case diagram
Untuk mengetahui aktor dan use case yang akan digunakan, maka dilakukan identifikasi aktor dan identifikasi use case. Setelah mendapatkan aktor dan use case,
maka use case diagram dapat digambarkan. Pengidentifikasian aktor dan use case pada sistem ini dilakukan dengan menjawab pertanyaan-pertanyaan berikut:
1. Siapa yang menggunakan sistem? Jawaban: Pengguna
2. Siapa yang diperlukan untuk melaksanakan fungsi pada sistem? Jawaban: Pengguna dan programmer
3. Apa saja yang dapat dilakukan pengguna pada sistem? Jawaban: Melakukan pelatihan JST, melakukan prediksi harga minyak mentah dunia
dan melihat hasil prediksi.
Use case diagram secara grafis yang menggambarkan interaksi antara sistem dan pengguna. Dengan kata lain, secara grafis mendeskripsikan siapa yang akan
menggunakan sistem dan dalam cara apa pengguna mengharapkan interaksi dengan sistem itu. Use case diagram berdasarkan aktor dan use case ditampilkan pada
Gambar 3.3.
Universitas Sumatera Utara
27
Sistem Prediksi Harga Minyak Mentah
Prediksi JST Pemrogram
Pengguna
«extends»
Pelatihan JST
Cek Data Harga
Gambar 3.3 Use Case Diagram Sistem Prediksi Harga Minyak Mentah Dunia
3.3.1.1 Use case cek data harga
Tabel 3.3 merupakan tabel dokumentasi naratif dari use case cek data harga minyak mentah dunia.
Tabel 3.3 Dokumentasi Naratif Use Case Cek Data Harga
Nama Use case Cek Data
Aktor Pengguna
Deskripsi Use case ini mendeskripsikan proses men-cek harga
minyak mentah dunia Prakondisi
Sudah masuk dalam tampilan Cek Data
Bidang khas Kegiatan pengguna
Respon sistem
1. Klik popup menu untuk memilih bulan dan tahun
yang akan dilihat datanya 1. Menampilkan data 20
harga minyak perhari dari bulan dan tahun yang
dipilih juga menampilkan data dalam bentuk grafik
Bidang Alternatif
1. Tekan tombol ke Pelatihan
2. Tekan tombol Menu Utama
1. Menuju antar muka pelatihan
2. Kembali ke antarmuka Menu Utama
Universitas Sumatera Utara
28 Post-kondisi
Sistem menampilkan harga minyak dalam bentuk angka dan grafik berdasarkan bulan dan tahun yang dipilih
Activity diagram untuk use case cek data harga minyak diperlihatkan pada Gambar 3.4.
Pilih Bulan dan Tahun
Tampilan Harga Minyak dalam angka
Tampilan Harga Minyak dalam grafik
Gambar 3.4. Activity Diagram Data Cek Harga
3.3.1.2 Use case pelatihan JST
Tabel 3.4 menunjukkan dokumentasi naratif dari use case pelatihan JST.
Tabel 3.4 Dokumentasi Naratif Use Case Latih JST
Nama Use case Pelatihan JST
Aktor Programmer
Deskripsi Use case ini mendeskripsikan proses pelatihan JST
Prakondisi Sudah masuk dalam tampilan antarmuka Pelatihan dan
data harga minyak mentah sudah ada sebagai input-an
Bidang khas Kegiatan pengguna
Respon sistem 1. Isi nilai Learning
rate 2. Isi nilai
Momentum 3. Isi nilai
Maksimum error 4. Isi nilai
Maksimum jumlah epoch
5. Klik tombol Latih 6. Klik tombol
1. Input nilai learning rate ke dalam sistem
2. Input nilai momentum ke dalam sistem
3. Input nilai maksimum error ke dalam sistem
4. Input nilai learning rate ke dalam sistem
5. Melakukan pelatihan, menampilkan grafik dan
menampilkan mse
Universitas Sumatera Utara
29 Simpan
7. Klik tombol Tampil
6. Menyimpan bobot ke dalam excel
7. Menampilkan data pelatihan dalam figure lain
Bidang Alternatif
1. Tekan tombol ke Prediksi
2. Tekan tombol Menu Utama
1. Menuju antar muka prediksi 2. Kembali ke antarmuka Menu
Utama Post-kondisi
Sistem menampilkan grafik hasil pelatihan
Activity diagram untuk use case pelatihan harga minyak diperlihatkan pada Gambar 3.5.
Universitas Sumatera Utara
30
Masukkan learning rate
Masukkan momentum
Masukkan Max. Epoch
Masukkan Max. Error
Klik tombol Latih
Pelatihan kurang dari max error yg ditetapkan?
Klik tombol tampil Pelatihan
Menampilkan grafik
Klik tombol simpan Pilih data pelatihan
Ya tidak
Gambar 3.5. Activity Diagram Pelatihan JST
Universitas Sumatera Utara
31
3.3.1.3 Use case prediksi JST
Berikut ini merupakan tabel dokumentasi naratif dari use case prediksi JST.
Tabel 3.5 Dokumentasi Naratif Use Case Prediksi JST
Nama Use case Prediksi Harga Minyak
Aktor Pengguna
Deskripsi Use case ini mendeskripsikan proses memprediksi harga
minyak mentah dunia Prakondisi
Sudah masuk dalam tampilan antarmuka Prediksi
Bidang khas Kegiatan pengguna
Respon sistem 1. Pilih dari popup menu
bulan dan tahun yang akan diprediksi
1. Menampilkan bulan dan tahun yang dipilih untuk
diprediksi 2. Klik tombol prediksi
2. Menampilkan data hasil prediksi dalam bentuk
grafik dan table serta jumlah error mse
Bidang Alternatif
1. Tekan tombol ke Keluar
2. Tekan tombol Menu Utama
1. Menutup Aplikasi 2. Kembali ke
antarmuka Menu Utama
Post-kondisi Sistem menampilkan hasil prediksi yang akan
dibandingkan dengan data aktual
Activity diagram untuk use case prediksi harga minyak diperlihatkan pada Gambar 3.6.
Universitas Sumatera Utara
32
Pilih Data Minyak
Klik Prediksi
Tampilkan Hasil Akhir Prediksi JST melakukan prediksi
sesuai kah dengan data aktual?
Ya Tampilkan hasil prediksi
tidak
Gambar 3.6. Activity Diagram Prediksi Harga Minyak
3.3.2 Analisis proses sistem
Berikut dijelaskan proses yang terjadi pada sistem dengan menggunakan sequence diagram. Sequence diagram adalah diagram yang memodelkan logika sebuah use case
dengan cara menggambarkan interaksi pesan diantara objek-objek dalam rangkaian waktu.
3.3.2.1 Proses pelatihan jaringan saraf tiruan
Sistem dimulai dengan pengecekan data untuk mengetahui jangka waktu data-data yang akan dilatih. Data dimasukkan ke dalam sistem menggunakan sekumpulan daftar
harga minyak, diambil dari data yang tersimpan dalam excel. Proses input data dilakukan dengan memilih data harga minyak yang akan dilatih menggunakan
perintah xlsread.
Universitas Sumatera Utara
33 Tahapan selanjutnya pengguna memasukkan parameter pelatihan seperti laju
pembelajaran, nilai error maksimal dan besar momentum. Lalu dilakukan pelatihan terhadap jaringan saraf tiruan dengan parameter yang ditentukan oleh pengguna dan
masukan berupa matriks normalisasi. Hasil pembelajaran berupa bobot dan bias yang
akan disimpan dan digunakan pada proses prediksi.
Sebelum dilakukan pelatihan dengan backpropagation, terlebih dahulu dilakukan normalisasi terhadap input pelatihan. Proses normalisasi dilakukan dengan
bantuan mean dan standar deviasi. Fungsi prestd akan membawa data ke bentuk normal dengan mean = 0 dan standar deviasi = 1.
Terakhir dilakukan pelatihan terhadap jaringan saraf tiruan dengan parameter yang ditentukan oleh pengguna dan masukan yang telah diubah bentuknya menjadi
matriks normalisasi. Hasil pembelajaran berupa bobot dan bias setelah pelatihan yang akan disimpan dan digunakan pada proses prediksi. Proses tampil hasil menampilkan
selisih dalam bentuk tabel dan simpan hasil untuk menyimpan data hasil pelatihan. Berikut ini sequence diagram untuk proses pelatihan diperlihatkan pada Gambar 3.7.
Latih Tampil Hasil
Simpan Hasil
Proses latih Simpan bobot
output,target input hasil pelatihan
Input bobot awal Sistem Pelatihan
Input parameter
inputP,T, normaslisasi Input Parameter
baca parameter
RMSE
selisih output-target
Gambar 3.7 Sequence Diagram Proses Pelatihan JST
Universitas Sumatera Utara
34
Berikut adalah pseudocode dari proses pelatihan jaringan saraf tiruan pada sistem prediksi harga minyak.
Proses Pelatihan Jaringan Saraf Tiruan INPUT PARAMETER
function parameter_CallbackhObject, eventdata, handles nameParameter=str2numgetnameProperties,’String’;
handles.nameParameter=nameParameter; guidatahObject,handles;
xlswrite‘Name_fileExcel’,’nameParameter’,’sheet’,’xlrange’; INPUT DATA
function latih_CallbackhObject, eventdata, handles Input_dataHarga;
nameParameter= handles.nameParameter; target=gethandles.popupmenu1,’Value’;
switch target
case number input -[P,T]
[pn,meanp,stdp,tn,meant,stdt]=prestdP,T; -normalisasi preprocessing
net=newffinput, Target,[S1 S2...SN-l],{TF1 TF2...TFN-l}, BTF
[net,tr]
← train net,input, target; Bobot=net.IW{1,1} -start
Bias=net.b{1} -start end
PROSES LATIH net.trainParam.nameParameter=namePreperties;
net.trainnet,pn,tn; input to xl - [bobot,bias]
an=simnet,pn; a=poststdan.meant,stdt; -normalisasi postprocessing
handles.a=a; [y,Pf,Af,e,Perf]=simnet,P,[],[],T;
3.3.2.2 Proses prediksi jaringan saraf tiruan
Pada proses prediksi digunakan masukan berupa data harga minyak pada rentang waktu tertentu. Sama seperti proses pelatihan, input kemudian dinormalisasi kedalam
bentuk matriks antara [-1,1]. Normalisasi pada tahap prediksi ini juga menyertakan hasil dari tahap pelatihan seperti mean dan standar deviasi.
Universitas Sumatera Utara
35 Kemudian dilakukan pengambilan data hasil dari pelatihan berupa bobot yang
sudah dilatih. Bobot tersebut sebelumnya disimpan di excel. Kemudian ketika dilakukan proses prediksi dengan menggunakan xlsread, bobot dibaca oleh sistem.
Setelah dilakukan prediksi yaitu disebut proses feedforward karena tidak dilakukan pelatihan mundur untuk mengubah bobot. Hasil prediksi berupa informasi mengenai
prediksi harga minyak pada periode mendatang yang telah diketahui sehingga dapat diukur tingkat validasinya. Sequence diagram proses prediksi jaringan saraf tiruan
dipaparkan pada Gambar 3.8.
Kontrol Prediksi Input Harga
Normalisasi Identifikasi bobot
Feedforward
Proses Normalisasi Proses input
input bobot akhir Input hasil pelatihan
Proses prediksi Hasil prediksi
Input harga
Gambar 3.8 Sequence Diagram Proses Prediksi JST
Berikut adalah pseudocode dari proses prediksi jaringan saraf tiruan pada sistem prediksi harga minyak.
Proses Prediksi JST INPUT DATA
function prediksi_CallbackhObject, eventdata, handles Input_dataHarga;
target=gethandles.popupmenu1,’Value’; switch target
case number input -[Q,TQ]
end IDENTIFIKASI BOBOT
input_dataNormalisasi -[meanp,stdp,meant,stdt]
Universitas Sumatera Utara
36
Qn=trastdQ,meanp,stdp; net=newffinput, Target,[S1 S2...SN-l],{TF1 TF2...TFN-l}, BTF
[net,tr] ← train net,input, Target;
net.IW{1,1}=xlsread‘Name_fileExcel’,’sheet’,’xlrange’; -start net.b{1}= xlsread‘Name_fileExcel’,’sheet’,’xlrange’; -start
bn=simnet,Qn; b=poststdbn,meant,stdt;
UJI JST BACKPROPAGATION [y,Pf,Af,e,Perf]=simnet,P,[],[],T;
3.4 Perancangan Antarmuka