70
3.6.4 Class diagram
Class diagram adalah sebuah spesifikasi yang dapat menghasilkan sebuah objek dan merupakan inti dari desain berorientasi objek. Class diagram dapat
dilihat pada gambar berikut.
gui_modul_main
+ menu + modulDatabase
+ modulFCM + modulPengujian
+ main
gui_modul_fcm
- data - jumlah_data
- cluster_n - max_iterasi
- min_impro - expo
- U - U_new
- center - iterasi
- obj_fcn - error_minimum
+ setting + proses
+ randomu + hitungfcm
+ jarakfcm + hitungfungsiobjektif
+ hitungubaru + databasechord
+ carikelas
gui_modul_collecting_frekuen si
- f - f2
- jumlah_file - h
- y - amplitudo
- nilai_maksimal - amplitudo_normalisasi
- M - N
- data_blocking - P
- deviasi - index_awal
- index_akhir - index_sinyal
- amplitudo_sinyal - magnitudo
- peakind
+ proses_threading + proses
+ normalisasisinyal + blocking
+ cariindexawal + cariindexterakhir
+ hitungfft + detect_peaks
gui_modul_pengujian
- center - sinyal_bersih
- time - amplitudo_normalisasi
- index_awal - index_akhir
- amplitudo_sinyal - magnitudo
- mph - peakind
- frekuensi_peak
+ cari + proses
+ normalisasisinyal + blocking
+ cariindexawal + cariindexakhir
+ hitungfft + detect_peaks
+ databasechord + prediksichord
1 1
1 1
1 1
1
1 1
1
1
Gambar 3. 18 Class diagram
3.6.5 Sequence diagram
Berikut ini adalah sequence diagram dari pembangunan aplikasi pengenalan akor.
71
Penguji gui_modul_main
1 : main
gui_modul_collecting_frekuensi
2 : modulDatabase
Menyimpan hasil preprocessing 4 : proses
5 : normalisasisinyal 6 : blocking
7 : cariindexawal 8: cariindexakhir
9 : hitungfft 10 : detect_peaks
Folder_WAV
Data latih hasil preprocessing Data latih
3. proses_threading
lokasi_folder_csv_png
create
Gambar 3. 19 Sequence diagram Collecting Database
Penguji gui_modul_main
1 : main
gui_modul_collecting_frekuensi
2 : modulDatabase
Melakukan normalisasi, frame blocking, windowing, powering,
thresholding, fast fourier transform, dan detect peaks
4 : proses 5 : normalisasisinyal
6 : blocking 7 : cariindexawal
8: cariindexakhir 9 : hitungfft
10 : detect_peaks
Folder_WAV
Data latih 3. proses_threading
Gambar 3. 20 Sequence diagram Preprocessing Collecting Database
72
Penguji gui_modul_main
1 : main
gui_modul_pengujian
2 : modulPengujian
4: normalisasisinyal 5: blocking
6: cariindexawal 7: cariindexakhir
8: hitungfft 9: detect_peaks
Lokasi Data Uji
2 : cari Data Uji
3: proses
Melakukan normalisasi, frame blocking, windowing, powering,
thresholding, fast fourier transform, dan detect peaks
Gambar 3. 21 Sequence Diagram Preprocessing Chord Recognition
Penguji gui_modul_main
1 : main
gui_modul_fcm
2 : modulFCM 3 : setting
5 : randomu 6 : hitungfcm
7 : jarakfcm 8 : hitungfungsiobjektif
9 : hitungubaru 10 : databasechord
lokasi_folder_csv_png
4: proses Data latih
11 : cari kelas Proses Pelatihan Fuzzy C-
Means
Gambar 3. 22 Sequence diagram Pelatihan Fuzzy C-Means
73
Penguji gui_modul_main
1 : main
gui_modul_fcm
2 : modulFCM
Menyimpan center akhir hasil pelatihan Fuzzy C-Means
3 : setting 5 : randomu
6 : hitungfcm 7 : jarakfcm
8 : hitungfungsiobjektif 9 : hitungubaru
10 : databasechord
lokasi_folder_csv_png
4: proses Data latih
11 : cari kelas create
Center akhir
Gambar 3. 23 Sequence Diagram Menyimpan Center Akhir
Penguji gui_modul_main
1 : main
gui_modul_pengujian
2 : modulPengujian
4: normalisasisinyal 5: blocking
6: cariindexawal 7: cariindexakhir
8: hitungfft 9: detect_peaks
Lokasi Data Uji
2 : cari Data Uji
3: proses
Menampilkan hasil deteksi akor 10: databasechord
11: prediksichord
Gambar 3. 24 Sequence Diagram Chord Recognition