• Tidak ada hasil yang ditemukan

Bab 4 Hasil dan Pembahasan

N/A
N/A
Protected

Academic year: 2021

Membagikan "Bab 4 Hasil dan Pembahasan"

Copied!
14
0
0

Teks penuh

(1)

40

Bab 4

Hasil dan Pembahasan

1.14 Hasil Implementasi

Implementasi Aplikasi Sistem Pakar terdiri dari implementasi diagnosa kerusakan yang terdiri dari gejala, tempat yang diduga, diagnosa kerusakan dan pencarian hasil atau kesimpulan serta implementasi workplace.

4.1.1 Implementasi Gejala

Pada modul gejala, dilakukan implementasi dengan membaca berkas xml yang berisi daftar gejala yang disediakan oleh sistem pakar untuk kemudian ditampilkan ke dalam antarmuka pengguna aplikasi sistem pakar.

Kode Program 4.1. Menampilkan Daftar Gejala

1 XStream xstreamGejala = new XStream(new DomDriver());

2 xstreamGejala.alias("gejala", Gejala.class);

3 ArrayList<Gejala> listGejala = new ArrayList<Gejala>();

4 ObjectInputStream in;

5

6 model = new DefaultListModel();

7 lstGejala.setModel(model);

8 try {

9 in = xstreamGejala.createObjectInputStream(

10 new FileInputStream("gejala.xml"));

11 listGejala = (ArrayList<Gejala>) in.readObject();

12 for (Gejala g : listGejala) {

13 model.addElement(g);

14 }

15 } catch (Exception ex) {

16 Logger.getLogger(frmGejala.class.getName()).log(

17 Level.SEVERE, null, ex);

(2)

Kode Program 4.1 dapat dijelaskan pada baris 1 dibuat objek pustaka XStream yang dapat digunakan untuk membantu membaca berkas xml menjadi objek di dalam java. Pada baris 2, ditentukan class java yang akan menampung data xml yaitu class Gejala. Pada baris 3, dibuat list untuk menampung Gejala lebih dari satu menggunakan ArrayList.

Pada baris 6 dan 7 ditentukan model antarmuka yang menampilkan daftar gejala yaitu lstGejala. Baris 9 dan 10, ditentukan berkas xml yang akan dibaca oleh xstream yaitu gejala.xml. Pada baris 11, dibaca data xml dan dikonversi ke dalam bentuk ArrayList.

Pada baris 12-14, setiap data di dalam list dimasukkan ke dalam model yang akan mengubah tampilan menjadi berisi data-data gejala dari berkas xml. Selanjutnya baris 15-18 adalah baris yang akan dijalankan ketika terjadi kesalahan aplikasi.

4.1.2 Implementasi Tempat Yang Diduga

Berikutnya setelah pengguna memilih gejala tertentu, maka pengguna diharuskan untuk memilih tempat yang diduga. Data-data tempat yang diduga juga diambil berdasarkan berkas xml sesuai dengan Kode Program 4.2.

Kode Program 4.2. Implementasi Tempat Yang Diduga

1 XStream xstreamTYD = new XStream(new DomDriver());

2 xstreamTYD.alias("tempatYangDiduga", TempatYangDiduga.class);

3 ArrayList<TempatYangDiduga> listTYD =

4 new ArrayList<TempatYangDiduga>();

5 ObjectInputStream in;

6

7 model = new DefaultListModel();

8 lstTempatYgDiduga.setModel(model);

9 try {

10 in = xstreamTYD.createObjectInputStream(

11 new FileInputStream("tyd.xml"));

(3)

13 for (TempatYangDiduga tyd : listTYD) {

14 if (tyd.kodeGejala.equals(kodeGejala)) {

15 model.addElement(tyd);

16 }

17 }

18 } catch (Exception ex) {

19 Logger.getLogger(frmGejala.class.getName()).log(

20 Level.SEVERE, null, ex);

21 }

Kode Program 4.2 dapat dijelaskan pada baris 1 dibuat objek pustaka XStream yang dapat digunakan untuk membantu membaca berkas xml menjadi objek di dalam java. Pada baris 2, ditentukan class java yang akan menampung data xml yaitu class TempatYangDiduga. Pada baris 3, dibuat list untuk menampung TempatYangDiduga lebih dari satu menggunakan ArrayList.

Pada baris 6 dan 7 ditentukan model antarmuka yang menampilkan daftar tempatyang diduga yaitu lstTempatYangDiduga. Baris 9 dan 10, ditentukan berkas xml yang akan dibaca oleh xstream yaitu tyd.xml. Pada baris 11, dibaca data xml dan dikonversi ke dalam bentuk ArrayList.

Pada baris 13-17, setiap data di dalam list dimasukkan ke dalam model yang akan mengubah tampilan menjadi berisi data-data tempat yang diduge dari berkas xml. Pada baris 14 dilakukan pengecekan data tempat yang diduga yang dimasukkan adalah tempat yang diduge yang termasuk dalam gejala sesuai yang dipilih pengguna. Selanjutnya baris 18-21 adalah baris yang akan dijalankan ketika terjadi kesalahan aplikasi.

4.1.3 Implementasi Diagnosa Kerusakan

Berikutnya adalah diagnosa kerusakan yang akan menampilkan pertanyaan-pertanyaan sesuai dengan tempat yang diduga oleh pengguna sistem pakar. Implementasi Diagnosa Kerusakan terdapat di dalam Kode Program 4.3.

(4)

Kode Program 4.3. Implementasi Diagnosa Kerusakan 1 String kodeSelanjutnya = ""; 2 if (y) { 3 kodeSelanjutnya = solusi.kodeJawabOk; 4 } else { 5 kodeSelanjutnya = solusi.kodeJawabJelek; 6 } 7

8 Solusi solusiBerikutnya = null;

9 for(Solusi s:listSolusi) { 10 if (s.kode.equals(kodeSelanjutnya)) { 11 solusiBerikutnya = s; 12 break; 13 } 14 } 15 16 if (solusiBerikutnya == null) {

17 frmKesimpulan kesimpulan = new frmKesimpulan(

18 null, true, "Solusi Kerusakan Tidak Dapat Ditemukan!");

19 kesimpulan.setVisible(true);

20 this.dispose();

21 } else {

22 if (solusiBerikutnya.jenis.equals("Kesimpulan")) {

23 frmKesimpulan kesimpulan = new frmKesimpulan(

24 null, true, solusiBerikutnya.isi);

25 kesimpulan.setVisible(true);

26 this.dispose();

27 } else {

28 frmDiagnosaKerusakan nextForm = new frmDiagnosaKerusakan(

29 null, true, solusiBerikutnya);

30 nextForm.setVisible(true);

31 this.dispose();

32 }

33 }

Kode Program 4.3 dapat dijelaskan pada baris 1-6 dicek apakah yang dipilih pengguna jawaban Bagus atau Jelek. Jika jawaban bagus yang dipilih maka kode selanjutnya diambilkan kodeJawabOK dari solusi yang diberikan. Sedangkan jika pilihan jawaban adalah Jelek maka kode solusi berikutnya diambilkan dari kodeJawabJelek.

(5)

Pada baris 8-14 dilakukan pencarian solusi yang sesuai dengan kode selanjutnya yang didapatkan. Dari semua solusi dilakukan perulangan kemudian menggunakan if, akan didapatkan solusi yang sesuai dengan kode selanjutnya.

Pada baris 16-21 dicek apakah solusi berikutnya bernilai null. Jika solusi berikutnya bernilai null, artinya tidak ditemukan kesimpulan atau hasil yang cocok. Maka tampilkan FormKesimpulan dan diisi dengan kesimpulan “Solusi Kerusakan Tidak Dapat Ditemukan!”.

Pada baris 22-27, adalah kondisi ketika solusi tidak null dan solusi memiliki tipe sebagai kesimpulan. Maka tampilkan FormKesimpulan dengan isi dari isi solusi tersebut.

Pada baris 28-32 adalah kondisi ketika solusi tidak null dan solusi memiliki tipe bukan kesimpulan, maka tampilkan FormDiagnosaKerusakan dengan isi solusi yang didapatkan tersebut. Dengan perintah tersebut, maka sebelum solusi ditemukan akan terus ditampilkan pertanyaan-pertanyaan sampai didapatkan solusi berupa kesimpulan atau jika null berarti tidak ada solusi yang cocok dan solusi tidak ada.

4.1.4 Implementasi Kesimpulan

Berikutnya adalah implementasi Kesimpulan. Pada implementasi kesimpulan, memiliki inputan berupa isi kesimpulan yang ditampilkan ke dalam Textarea hasil kesimpulan tersebut.

Kode Program 4.4. Implementasi Kesimpulan

1 public frmKesimpulan(Frame parent, boolean modal, String kesimpulan) {

2 txtGejala.setText(kesimpulan);

(6)

4.1.5 Implementasi Workplace

Implementasi yang terakhir adalah workplace. Workplace akan menampilkan

Kode Program 4.5. Implementasi Workplace

1 xstreamWorkplace = new XStream(new DomDriver());

2 xstreamWorkplace.alias("workplace", Workplace.class);

3

4 model = (DefaultTableModel) tblData.getModel();

5 model.setRowCount(0);

6 try {

7 in = xstreamWorkplace.createObjectInputStream(

8 new FileInputStream("workplace.xml"));

9 listWorkplace = (ArrayList<Workplace>) in.readObject();

10 for (Workplace work : listWorkplace) {

11 model.addRow(new Object[]{

12 work, work.gejala,

13 work.tempatyangdiduga, work.kesimpulan});

14 }

15 } catch (Exception ex) {

16 Logger.getLogger(frmGejala.class.getName()).log(

17 Level.SEVERE, null, ex);

18 }

Kode Program 4.5 dapat dijelaskan pada baris 1-2 dilakukan inisialisasi xstream agar dapat membaca berkas xml berdasarkan class Workplace. Pada baris 4-5 didapatkan model dari tabel agar tabel dapat dimodifikasi isi datanya. Pada baris 6-15 dilakukan pembacaan data dari workplace.xml dilakukan loop setiap data dan dimasukkan ke dalam tabel melalui model. Pada baris 15-18 adalah kode program yang dijalankan apabila terjadi kesalahan program.

(7)

1.15 Pengujian Aplikasi

Pengujian aplikasi dilakukan dengan menguji modul utama sistem yaitu:

- Pengujian diagnosa kerusakan disamakan dengan manual. Jika urutan yang dilakukan sama dan menghasilkan kesimpulan yang sama, maka sistem pakar diagnosa kerusakan sudah dapat dikatakan berjalan dengan baik dan benar.

- Pengujian berikutnya adalah pada workplace. Setiap hasil pengujian seharusnya tersimpan ke dalam workplace dan dapat ditampilkan kembali dengan baik.

4.2.1 Pengujian Diagnosa Kerusakan (Sistem Pakar)

Pengujian diagnosa dilakukan dengan membandingkan antara urutan gejala, tempat yang diduga, pertanyaan yang muncul dan kesimpulan atau solusi yang didapatkan.

Gambar 4.1. Pengujian Input Nama Workplace

Awal mula ketika memulai diagnosa kerusakan kita akan diminta untuk memasukkan nama workplace sebagai penanda proses diagnosa. Nama yang dimasukkan kemudian nantinya akan dapat diakses melalui modul workplace.

(8)

Gambar 4.2. Pengujian Pemilihan Gejala

Ketika sudah memasukkan nama workplace maka selanjutnya adalah memilih gejala yang ditampilkan oleh sistem pakar. Seperti pada Gambar 4.2. kita memilih “Mesin tidak bisa berputar” sebagai gejala kerusakan.

(9)

Gambar 4.3. Pengujian Tempat Yang Diduga

Berikutnya akan muncul Form Tempat Yang Diduga yang akan mengharuskan pengguna untuk memilih tempat yang diduga mengalami kerusakan. Sesuai dengan Gambar 4.3. ditampilkan pilihan “Starter dan relay starter” dan “Rangkaian switch posisi parkir / netral”. Dua pilihan tersebut tampil karena pengguna memilih gejala “mesin tidak bisa berputar”.

Jika pengguna melakukan pemilihan gejala yang lain, maka daftar tempat yang diduga yang ditampilkan juga akan berbeda. Dibandingkan dengan manual, sudah sesuai urutan dari gejala yang dipilih ke daftar tempat yang diduga.

(10)

Gambar 4.4. Pengujian Diagnosa Kerusakan Melalui Pertanyaan

(11)

Gambar 4.6. Pengujian Diagnosa Kerusakan 3

(12)

Ketika pengguna sudah memilih tempat yang diduga tertentu, maka akan ditampilkan beberapa pertanyaan yang mengharuskan pengguna untuk melakukan pengecekan kondisi komponen tertentu. Pengguna cukup menjawab kondisi bagus (ok) atau kondisi jelek. Seperti pada Gambar 4.4. sampai pada Gambar 4.7 ditampilkan pertanyaan sesuai dengan kondisi hasil pengecekan pengguna. Sampai akhirnya didapatkan kesimpulan seperti pada Gambar 4.8 yaitu “Jika arus tidak seperti yang ditentukan, gant starter”. Berdasarkan hasil pengujian tersebut, maka dapat disimpulkan modul sistem pakar diagnosa kerusakan dapat berjalan dengan baik dan benar.

(13)

4.2.2 Pengujian Workplace

Pengujian berikutnya adalah pengujian workplace. Pengujian dilakukan dengan melihat daftar diagnosa yang telah dilakukan menggunakan sistem pakar, kemudian melihat detail dari jawaban sampai pada kesimpulan yang didapatkan.

Hasil pengujian workplace dapat dilihat pada Gambar 4.9, ditampilkan daftar penggunaan diagnosa kerusakan yang telah dilakukan sebelumnya:

Gambar 4.9. Pengujian Workplace

Pada Gambar 4.9, workplace berjalan dengan baik menampilkan hasil diagnosa yang telah tersimpan ketika pengguna menggunakan sistem pakar diagnosa kerusakan. Ketika di tekan tombol tampil akan muncul Gambar 4.10 dan hasil detail pada gambar tersebut menunjukkan bahwa penyimpanan proses dan hasil diagnosa berjalan dengan baik dan benar.

(14)

Gambar

Gambar 4.1. Pengujian Input Nama Workplace
Gambar 4.2. Pengujian Pemilihan Gejala
Gambar 4.3. Pengujian Tempat Yang Diduga
Gambar 4.4. Pengujian Diagnosa Kerusakan Melalui Pertanyaan
+5

Referensi

Dokumen terkait

Permasalahan yang akan diselesaikan pada penelitian tugas akhir ini adalah bagaimana cara pengendaliaan persediaan bahan baku pada PT PKG yang dapat meminimasi biaya

Hasil penelitian menunjukkan bahwa kelinci Rex dengan rataan kadar bobot karkas sebesar 42 % dari bobot potong dapat menghasilkan bobot daging sebesar 30 % dan bobot

Di dalam tabung pembakaran terjadi proses pindah panas secara konveksi, karena tekanan pada tabung pembakaran lebih besar daripada lingkungan sehingga asap yang terbentuk dari

International Monitoring Team (IMT) masuk kedalam proses perdamaian karena fasilitator sebelumnya kurang maksimal dalam tahapan implementasinya di lapangan.. Peran

The second interview was conducted after implementing classroom action research for the sake of finding the further information on Think-Pair-Share method used in class

Oleh karena itu, program bimbingan dan konseling untuk meningkatkan harga diri siswa sangat dibutuhkan bagi referensi guru bimbingan dan konseling ketika menemukan siswa

Dari penelitian ini dapat disimpulkan bahwa tingkat pengetahuan terhadap hubungan seksual berisiko tinggi memiliki pengaruh yang signifikan terhadap infeksi gonore,

Dalam hasil pembahasan penelitian untuk tahun 2013 belanja untuk penyediaan sarana prasarana penerangan jalan umum di kota Manado alokasinya hanya mencapai 15,80% namun hal ini