ANALISIS DAN PERANCANGAN SISTEM
3.2 Perancangan Sistem 1 Diagram use-case
Use case menggambarkan bagaimana seorang pengguna akhir yang berinteraksi dengan sistem yang berada di bawah sejumlah situasi dan kondisi yang sifatnya spesifik. Use case selalu didefenisikan dari sudut pandang aktor-aktor yang berinteraksi dengan sistem/perangkat lunak yang sedang dikembangkan (Pressman, 2010). Diagram use case untuk sistem pengenalan telapak kaki bayi dapat dilihat seperti pada Gambar 3.3:
Gambar 3.3 Use case Sistem Pengenalan Telapak Kaki Bayi
Selanjutnya tiap use case yang terdapat pada Gambar 3. 2 dijelaskan pada dokumentasi naratif pada Tabel 3.1 dan 3.2
Tabel 3.1 Dokumentasi naratif dari use case pelatihan Nama Use case Pelatihan
Aktor Programmer dan user
Deskripsi Use case ini mendekripsikan pelatihan dengan metode SOM Kohonen
Pra Kondisi Sudah masuk dalam tampilan antarmuka Pelatihan
Bidang Khas Aksi Aktor Respon Sistem
1. Aktor menekan tombol Load Citra
2. Sistem menampilan citra cap telapak kaki bayi
3. Aktor menekan tombol Resize citra
4. Sistem mengubah ukuran citra dan menampilkan citra hasil resize
5. Aktor menekan tombol Grayscale
6. Sistem mengubah citra asli menjadi citra grayscale
32
7. Aktor menekan tombol sharpening
8. Sistem melakukan penajaman citra dan menampilkannya dalam axes 9. Aktor menekan tombol
deteksi tepi
10. Sistem mendeteksi tepi citra 11. Aktor menekan
tombol Train
12. Sistem mengubah ukuran matriks citra dan melakukan Pelatihan Kohonen
Bidang Alternatif
1. Aktor memilih menu Exit
2. Keluar dari aplikasi
Post Kondisi Sistem menyimpan bobot baru
Tabel 3.2 Dokumentasi naratif dari use case pengujian Nama Use case Pengujian
Aktor Programmer dan user
Deskripsi Use case mendeskripsikan proses pengujian dengan metode Kohonen
Pra Kondisi Sudah masuk dalam tampilan antarmuka Pengujian
Bidang Khas Aksi Aktor Respon Sistem
1. Aktor menekan tombol Pilih Gambar
2. Sistem menampilan dialog memilih file citra
3. Aktor memilih citra yang akan diuji
4. Sistem menampilkan citra yang akan diuji ke dalam axes
6. Sistem mengubah ukuran citra 7. Sistem mengubah citra mengubah citra menjadi citra grayscale
8. Sistem melakukan penajaman citra dan deteksi tepi serta pengujian dengan metode Kohonen
Bidang Alternatif
1. Aktor memilih menu Exit
2. Keluar dari aplikasi
3.2.2 Diagram sekuensial
Diagram sekuensial atau sequence diagram adalah diagram yang menunjukkan model logika dari sebuah use case dengan menggambarkan interaksi pesan diantara objek-objek dalam urutan-urutan waktu (Whitten, 2007). Oleh sebab itu, perlu diketahui objek-objek yang dimiliki oleh suatu proses. Sequence diagram dari proses pelatihan seperti pada Gambar 3.3 berikut:
Gambar 3.4 Sequence diagram untuk pelatihan
Gambar 3.5 Sequence diagram untuk pengujian
3.2.3 Diagram aktivitas
Diagram aktivitas (activity diagram) melengkapi use case yang telah dibuat sebelumnya dengan memberikan representasi grafis dari aliran-aliran interaksi di
34
dalam suatu skenario yang sifatnya spesifik. Mirip dengan diagram alir, suatu diagram aktivitas menggunakan sebuah kotak bersisi lengkung untuk menggambarkan fungsi tertentu yang ada dalam suatu sistem, sedangkan tanda panah menggambarkan aliran di dalam sistem, bentuk intan digunakan untuk menggambarkan keputusan-keputusan bercabang, dan garis horizontal tebal mengindikasikan bahwa aktivitas- aktivitas paralel dalam perangkat lunak sedang terjadi (Pressman, 2010).
Diagram aktivitas untuk use case pelatihan dan pengujian dapat dilihat seperti pada Gambar 3.6 dan Gambar 3.7:
Gambar 3.7 Diagram aktivitas use case pengujian
3.2.4 Pseudocode
Pseudocode adalah salah satu bentuk penulisan algoritma dengan menggunakan bahasa yang dapat dimengerti oleh manusia. Pseudocode tidak dapat dijalankan atau dibaca oleh mesin. Tidak ada aturan baku dalam penulisan pseudocode.
a) Pseudocode proses pelatihan
citra_latih read(nama_file)
citra_latih2 resize(citra_Latih [100,50])
citra_gray rgb2gray(citra_Latih2)
citra_sharp sharpening (citra_gray)
36
vek_input reshape_matriks (citra biner [1,5000])
set : matriks bobot_acak[10,5000]
epoch 0;
input: double (alpha)
while alpha>0 and alpha < 1 and epoch<=1000 loop
for i 1 to 30 for j 1 to 10 d(j)0; for k 1:5000 d(j)= d(j)+(bobot_acak [j k]-vek_input [i k]))^2 endfor endfor for j 1 to 10 if d(j)== nilai_min(d);
change j value to j_new; endif
endfor
bobot[j_new ; allcoulumns)=bobot (j_new; allcooulumns)+ alpha*
(vek_input [i; allcoulumns] – bobot [j_new; allcoulumns])
endfor
alpha alpha* 0,2;
epoch epoch +1;
endwhile
b) Pseudocode proses pengujian Read bobot_new citra_uji openfile(citra) gambar imresize(citra_uji,[100,50]); citra_uji_gray rgb2gray(gambar); citra_uji2 filter(citra_uji_gray,Sharp); gb1 edge(citra_uji2,'canny'); uji1 double(reshape(gb1,1,5000)); for i 1 to 1 for k 1 to 9 d(k)0; for j 1 to 5000 d(k) d(k)+(bobot_new(k,j)- uji1(i,j)).^2; endfor endfor endfor for k 1 to 9 if d(k)==value_min(d)
made cluster value from k; endif
endfor
38
3.2.5 Flowchart sistem
Adapun flowchart sistem baik proses pelatihan maupun pengujian dapat dilihat pada Gambar 3.8 dan 3.9 :
40
3.2.6 Perancangan antarmuka sistem
Gambar 3.10 Rancangan antarmuka beranda
Keterangan untuk gambar rancangan antarmuka beranda dijelaskan pada tabel 3.3: Tabel 3.3 Keterangan rancangan antarmuka beranda
NO Keterangan
1 Menu beranda
2 Menu Pelatihan untuk memasuki antarmuka proses pelatihan 3 Menu Pengujian untuk menuju antarmuka proses pengujian
4 Menu Help untuk menampilkan bantuan serta petunjuk kepada pengguna 5 Menu Exit untuk keluar dari aplikasi
6 Label yang berfungsi menampilkan nama aplikasi
7 Axes yang berfungsi menampilkan logo fakultas
8 Label yang berfungsi untuk menampilkan nama dan nim pembuat aplikasi
Gambar 3.11 Rancangan antarmuka pelatihan
Penjelasan tiap elemen pada Gambar 3.11 terdapat pada tabel 3.4 dibawah ini:
Tabel 3.4 Keterangan rancangan antarmuka pelatihan
NO Keterangan
1. Label nama form pelatihan
2. Axes untuk menampilkan citra yang akan dilatih
3. Text box untuk menginputkan nilai learning rate
4 Text box untuk menampilkan lama proses training
5 Button untuk membaca dan menampilkan citra yang akan dilatih
6 Button untuk mengubah Ukuran citra menjadi 100 x 50 pixel
7 Button untuk mengubah citra menjadi citra grayscale
8 Button untuk memfilter citra (penajamaan citra)
9 Button untuk melakukan deteksi tepi pada citra
42
Gambar 3.12 Rancangan antarmuka pengujian
Keterangan dari rancangan antarmuka pengujian dijelaskan dalam tabel 3.5 Tabel 3.5 Keterangan Rancangan Antarmuka Pengujian
NO Keterangan
1 Label untuk menampilkan nama form pelatihan 2 Axes untuk menampilkan citra uji
3 Button untuk memilih gambar citra yang akan diuji 4 Button untuk memulai proses identifikasi/ menguji citra 5 Label untuk menampilkan nama pemilik cap telapak kaki
Gambar 3.13 Rancangan antarmuka help
Untuk penjelasan dari gambar rancangan form help dapat dilihat dalam Tabel 3.6 Tabel 3.6 Keterangan gambar rancangan antarmuka help
No Keterangan
1 Label untuk menampilkan nama form help
2 Label berisi yang memberisi informasi cara menggunakan sistem
BAB 4