Skripsi-Sistem Pakar

  • View
    265

  • Download
    1

Embed Size (px)

Text of Skripsi-Sistem Pakar

Aplikasi Pendukung Keputusan Dengan Menggunakan Logika Fuzzy(Studi Kasus : Penentuan Spesifikasi Komputer Untuk Suatu Paket Komputer Lengkap)

SkripsiDiajukan kepada Fakultas Teknologi Informasi Untuk memperoleh Gelar Sarjana Komputer

Oleh : Martha Oktriani NIM : 672003146

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

ii

Salatiga, Januari 2008

ii

LEMBAR PENGESAHANJudul Tugas akhir : Aplikasi Pendukung Keputusan dengan Menggunakan Logika Fuzzy (studi kasus : Penentuan Spesifikasi Komputer untuk Suatu Paket Komputer Lengkap : Martha Oktriani : 672003146 : Teknik Informatika : Teknologi Informasi

Nama Mahasiswa NIM Program Studi Fakultas

Menyetujui,

Sri Yulianto J.P., S.Si, M.Kom Pembimbing 1

Indrastanti R.W., ST, MT Pembimbing 2

Mengesahkan

Ir. Danny Manongga, M.Sc., Ph.D. Dekan

Sri Yulianto J.P., S.Si, M.Kom Ketua Program Studi

Dinyatakan Lulus Ujian tanggal: 15 Januari 2008 Penguji: 1. Dr. Ir. Eko Sediyono, M.Kom ____________________ 2. 3. M.A. Ineke Pakereng, M.Kom Yessica Nataliani, S.Si, M.Kom i ____________________ ____________________

LEMBAR PERNYATAANSkripsi yang berikut ini : Judul : Aplikasi Pendukung Keputusan Dengan Menggunakan Logika Fuzzy (Studi Kasus : Penentuan Spesifikasi Komputer Pembimbing : Untuk Suatu Paket Komputer Lengkap) 1. Sri Yulianto J.P., S.Si, M.Kom 2. Indrastanti R.W., ST, MT adalah benar hasil karya saya : Nama NIM : : Martha Oktriani 672003146

Saya menyatakan tidak mengambil sebagian atau seluruhnya dari hasil karya orang lain kecuali sebagaimana tertulis pada daftar pustaka.

Pernyataan ini dibuat dengan sebenar-benarnya sesuai dengan ketentuan yang berlaku dalam penulisan karya ilmiah.

Salatiga, 16 November 2007

Martha Oktriani ii

KATA PENGANTAR

Puji syukur ke hadirat Tuhan Yesus Kristus atas berkat, rahmat, serta bimbingan-Nya sehingga penulis dapat menyelesaikan Skripsi yang berjudul Aplikasi Pendukung Keputusan Dengan Menggunakan Logika Fuzzy (Studi Kasus : Penentuan Spesifikasi Komputer Untuk Suatu Paket Komputer Lengkap), yang diajukan sebagai persyaratan dalam menyelesaikan Program Studi Strata Satu Teknik Informatika pada Fakultas Teknologi Informasi Universitas Kristen Satya Wacana. Terselesaikannya penulisan Skripsi ini juga didukung oleh berbagai pihak. Oleh karena itu, penulis mengucapkan terima kasih atas bantuan serta dukungan kepada : 1. 2. Bapak Ir. Danny Manongga, M.Sc., Ph.D selaku Dekan Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga. Bapak Kristoko Dwi Hartomo, M.Kom, selaku Koordinator KP/TA Fakultas Teknologi Informasi Unversitas Kristen Satya Wacana Salatiga 3. Bapak Sri Yulianto Joko Prasetyo, S.Si, M.Kom sebagai kaprogdi sekaligus pembimbing pertama atas kesabaran dalam memberikan bimbingan dan pengarahan selama penyusunan Skripsi ini. 4. Ibu Indrastanti R.W., ST, MT selaku pembimbing kedua, yang telah membimbing dengan sabar dan sangat membantu menyelesaikan Skripsi ini. 5. Pak Wiranto, Pak Erman, Pak Ari dan para dosen Fakultas Teknologi Informasi lainnya yang telah turut membantu penulis dalam menyelesaikan Tugas Akhir/ Skripsi ini. iii

6. 7.

Alm. Papa tercinta, Mama, dan Welly, yang telah memberikan dukungan dan doa yang sangat berarti bagi penulis. Teman-teman terbaikku (Henry Christianto, Lie Moy Fong, Erika Purnamasari, Tommy Bulyan) Thanks God I have friends like you.

8. 9. 10.

Teman-teman kost di Dipo 18 (Pongde, C.Inneke, C.erna, Bobo) thanks dah mau nemeni di saat kost lagi sepi-sepinya. Teman-teman FTI (Steny, Albert, Dedy, Daniel, Nobita, Andy, Ping-ping, Angkin, Fandy, Ivena, Hindarto, Lia) God bless you Teman - teman FTI, khususnya angkatan 2003 dan transferan yang telah membantu penulis baik secara langsung maupun tidak langsung.

11.

Dan pihak-pihak lain yang tidak bisa disebutkan satu per satu. Penulis menyadari bahwa penulisan Skripsi ini masih jauh

dari sempurna, oleh karena itu penulis berterima kasih apabila ada kritik dan saran demi penyempurnaan Skripsi ini. Akhir kata, penulis berharap agar laporan ini dapat bermanfaat bagi pembaca sekalian. TUHAN memberkati. Salatiga, 16 November 2007

Penulis

DAFTAR ISI

KATA PENGANTAR ................................................................... iv

i

DAFTAR ISI ................................................................................... vi DAFTAR TABEL .......................................................................... ix DAFTAR GAMBAR ...................................................................... x ABSTRACT.....................................................................................xii ABSTRAKSI ...................................................................................xiii BAB I PENDAHULUAN ............................................................... 1 1.1 1.2 1.3 1.4 1.5 1.6 Latar Belakang Masalah ...................................................... 1 Tujuan.. 2 Perumusan Masalah.. 3 Pembatasan Masalah....3 Metode Pelaksanaan. 4 Sistematika Penulisan... 7

BAB II LANDASAN TEORI.......................................... ................ 9 2.1 2.2 2.3 2.4 2.5 Tinjauan Pustaka.. 9 DSS (Decision Support System).. . 9 Arsitektur DSS (Decision Support System)..11 Konsep Dasar Logika Fuzzy......... 13 Karakteristik Logika Fuzzy .. 15 2.5.1 2.5.2 2.6 2.7 2.8 Himpunan Fuzzy....................................................... 15 Fungsi Keanggotaan (Membership Function)..........17

Operator Dasar Zadeh........... 20 Fuzzifikasi.......................... .. 21 Inferensi Fuzzy (Logika Pengambilan Keputusan).......22 2.8.1 2.8.2 2.8.3 Metode Tsukamoto................................................... 22 Metode Sugeno......................................................... 23 Metode Mamdani......................................................24 v

2.9

Tipe-Tipe Fuzzy............................................................28 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 Fuzzy Clustering....................................................... 28 Fuzzy Database................................ ........................ 29 Fuzzy Quantification Theory....................................29 Fuzzy Associative Memory (FAM)............................ 29 Fuzzy Linear Programming (FLP)...... ..................... 30

2.10 Fuzzy Database.............................................................30 2.10.1 Fuzzy Database Model Tahani................................. 31 2.10.2 Pembentukan Query.................................................. 31 BAB III METODOLOGI PERANCANGAN SISTEM...................33 3.1 3.2 Metode Pembangunan Software...........................................33 Analisis Sistem...................................................................... 35 3.2.1 3.2.2 3.2.3 3.3 3.3.1 Kebutuhan Input36 Proses Logika Fuzzy Pada Sistem. 36 Kebutuhan Output..... 37 UML (Unified Modelling System)..... 37 3.3.1.1 3.3.1.2 3.3.1.3 3.3.2 3.3.3 Use Case Diagram..... 38 Sequence Diagram..... 40 Activity Diagram.... 41

Perancangan Sistem .............................................................. 37

ERD Diagram....42 Perancangan Database.. 44 3.3.3.1 3.3.3.2 Struktur Tabel.....44 Relasi Antar Tabel ....56

3.3.4

Fungsi Keanggotaan..... 57 3.3.4.1 3.3.4.2 Variabel Kecepatan Prosesor..... 57 Variabel Kapasitas Memory....... 59 vi

3.3.4.3 3.3.4.4 3.3.4.5 3.3.4.6

Variabel Kapasitas Harddisk..... 61 Variabel Ukuran VGA 63 Variabel Ukuran Monitor....... 65 Variabel Kapasitas Power Supply.. 67

BAB IV IMPLEMENTASI DAN ANALISA SISTEM... ............... 70 4.1 Implementasi Sistem ............................................................ 70 4.1.1 4.1.2 4.1.3 Implementasi Tampilan Awal dan Menu Utama......71 Implementasi Setup Data..........................................73 Implementasi Pencarian Paket Komputer.................76 4.1.3.1 4.1.3.2 4.1.3.3 4.1.3.4 4.1.3.5 4.1.3.6 4.1.3.7 4.1.3.8 4.1.3.9 Cari Prosesor............. 77 Cari Mainboard............ ............................. 80 Cari Memory.............................................. 81 Cari VGA................. .................................. 81 Cari Casing................................................ 82 Cari PSA.................................................... 83 Cari Harddisk.............. .............................. 83 Cari Monitor.............................................. 84 Cari Optical................................................ 84

4.1.3.10 Cari Optical2.............................................. 85 4.1.3.11 Cari Keyboard............................................ 86 4.1.3.12 Cari Mouse................................................. 87 4.1.3.13 Form Prioritas............................................ 87 4.1.3.14 Form Konfirmasi....................................... 89 4.1.3.15 Form Hasil................................................. 90 4.1.3.16 Report Print Normal.................................. 91 4.1.3.17 Report Print Detail..................................... 92 4.2 Pengujian Sistem................................................................... 93 vii

BAB V KESIMPULAN DAN SARAN .......................................... 103 5.1 103 5.2 104 DAFTAR PUSTAKA . 105 LAMPIRAN Saran .................................................................................... Kesimpulan .........................................................................

viii

DAFTAR TABELTabel 3.1 Tabel 3.2 Tabel 3.3 Tabel 3.4 Tabel 3.5 Tabel 3.6 Tabel 3.7 Tabel 3.8 Tabel 3.9 Tabel 3.10 Tabel 3.11 Tabel 3.12 Tabel 3.13 Tabel 3.14 Tabel 4.1 Tabel 4.2 Tabel 4.3 Tabel 4.4 Tabel 4.5 Tabel T_ TypeID........................................ Tabel T_Merek........... Tabel TblBatas........... Tabel TblCasing............................................. Tabel TblHarddisk............. Tabel TblKeyboard............ Tabel TblMainboard.......................................... Tabel TblMemory.............. Tabel TblMonitor........... Tabel TblMouse............................................. Tabel TblOptical............ Tabel TblProsesor.......... Tabel TblPSA......................................... Tabel TblVGA................ Tabel Paket Hasil Rekomendasi Sampel Pertama............................................................... Tabel Paket Hasil Rekomendasi Sampel Kedua.................................................................. Tabel Paket Hasil Rekomendasi Sampel Ketiga.................................................................. Tabel Paket Hasil Rekomendasi Sampel Keempat.............................................................. Tabel Pengujian Tingkat Akurasi Terhadap 10 Sampel Pengguna ............................................... 44 45 45 46 47 48 49 50 51 51 52 53 54 55 98 99 100 101 101

ix

DAFTAR GAMBAR

Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 3.1 Gambar 3.2 Gambar 3.3

Komponen DSS (Decision Support System)........ Fungsi Keanggotaan Kurva Segitiga................... Fungsi Keanggotaan Kurva Bahu........................ Himpunan Fuzzy untuk Suatu Variabel............... Proses Defuzzifikasi............................ Pemodelan Waterfall........................................... Use Case Diagram Sistem yang Dibangun......... Use Case Diagram Sistem Fuzzy.... Gambar 3.4 Sequence Diagram.............................................. Activity Diagram. ERD Diagram..... Relasi Antar Tabel.............................................. Himpunan Fuzzy untuk Variabel Kecepatan Prosesor.............................................................. Himpunan Fuzzy untuk Variabel Kapasitas Memory.............................................................. Himpunan Fuzzy untuk Variabel Kapasitas Harddisk............................................................ Himpunan Fuzzy untuk Variabel Ukuran VGA................................................... Himpunan Fuzzy untuk Variabel Ukuran Monitor.............................................................. Himpunan Fuzzy untuk Variabel Kapasitas Power Supply..................................................... Tampilan Login Awal............ Tampilan Awal Program........... Tampilan Setup Prosesor.................................. Tampilan Data Batas Himpunan....................... Tampilan Data Merek........................... Tampilan Pencarian Prosesor........................... Tampilan Pencarian Mainboard....................... Tampilan Pencarian Memory............................ Tampilan Pencarian VGA................................ Tampilan Pencarian Casing.. Tampilan Pencarian PSA............................. x

12 18 19 20 27 35 38 39 40 41 42 56 57 59 61 63 65 67 71 71 74 74 75 77 80 81 81 82 83

Gambar 3.5 Gambar 3.6 Gambar 3.7 Gambar 3.8 Gambar 3.9 Gambar 3.10 Gambar 3.11 Gambar 3.12 Gambar 3.13 Gambar 4.1 Gambar 4.2 Gambar 4.3 Gambar 4.4 Gambar 4.5 Gambar 4.6 Gambar 4.7 Gambar 4.8 Gambar 4.9 Gambar 4.10 Gambar 4.11

Gambar 4.12 Gambar 4.13 Gambar 4.14 Gambar 4.15 Gambar 4.16 Gambar 4.17 Gambar 4.18 Gambar 4.19 Gambar 4.20 Gambar 4.21 Gambar 4.22 Gambar 4.23

Tampilan Pencarian Harddisk.......................... Tampilan Pencarian Monitor............ Tampilan Pencarian Optical............................. Messagebox...................................................... Tampilan Pencarian Optical2........................... Tampilan Pencarian Keyboard.......................... Tampilan Pencarian Mouse............................... Tampilan Form Prioritas................................... Tampilan Form Konfirmasi.................. Tampilan Form Hasil........................... Tampilan Report Print Normal......................... Tampilan Report Print Detail...........................

83 84 84 85 85 86 87 87 89 90 91 92

xi

ABSTRACTAplikasi Pendukung Keputusan Dengan Menggunakan Logika Fuzzy (Studi Kasus : Penentuan Spesifikasi Komputer Untuk Suatu Paket Komputer Lengkap) Fuzzy logic is a method to map an input into output. Fuzzy logic is used for supporting a dicey decision making. This method consist of three main process, there are fuzzification, fuzzy inferention, and defuzzification. The result of these processes depend on the limit of fuzzy compilation, fuzzy variable and non fuzzy variable. This paper study about scheme of application to produce a packet of computer specifications according to the wish of the consumer. This case of study gives result in the form of computer packet taken from fuzzy processes based on the limit values of fuzzy compilation, fuzzy variables and non-fuzzy variables. The sum of fuzzy variables and non-fuzzy variables processes will affect the result and the sum of recommendation values. Parameter taken as variable of fuzzy are speed of processor, capacity of memory, harddisk and power supply, size of monitor and vga, and price of each specification. The result of program testing by 10 sample of consumer is obtained about 68% of accuration. Keywords : fuzzy logic, fuzzification, defuzzification, fuzzy inferention, fuzzy variable, non fuzzy variable, fuzzy compilation limit

xii

ABSTRAKSIAplikasi Pendukung Keputusan Dengan Menggunakan Logika Fuzzy (Studi Kasus : Penentuan Spesifikasi Komputer Untuk Suatu Paket Komputer Lengkap) Logika fuzzy merupakan sebuah metode untuk memetakan suatu ruang input ke dalam ruang output. Logika fuzzy berguna untuk mendukung suatu pengambilan keputusan. Metode ini terdiri dari tiga proses utama, yaitu fuzzifikasi, inferensi fuzzy (logika pengambilan keputusan) dan defuzzifikasi. Hasil dari proses-proses tersebut tergantung dari batas himpunan fuzzy, variabel fuzzy dan variabel non fuzzy. Paper ini membahas tentang perancangan aplikasi untuk memudahkan dalam pencarian suatu paket komputer sesuai dengan keinginan pembeli. Studi kasus ini memberikan hasil berupa paket komputer hasil rekomendasi yang didapat dari proses-proses fuzzy berdasarkan nilai-nilai batas himpunan fuzzy, variabel-variabel fuzzy dan variabel-variabel non fuzzy. Parameter yang dijadikan sebagai variabel fuzzy adalah kecepatan prosesor, kapasitas memori, harddisk dan power supply, ukuran monitor dan vga, serta harga dari masing-masing spesifikasi komputer. Hasil dari pengujian terhadap sistem, dengan 10 orang sampel pengguna, didapatkan tingkat akurasi sebesar 68 %. Kata Kunci : logika fuzzy, fuzzifikasi, inferensi fuzzy, defuzzifikasi, batas himpunan fuzzy, variabel fuzzy, variabel non fuzzy.

xiii

BAB I PENDAHULUAN1.1 Latar Belakang MasalahSebuah toko komputer ingin membangun suatu database yang isinya tidak hanya komponen-komponen dasar komputer, tetapi juga informasi yang dapat membantu dalam memberikan pilihan data spesifikasi komputer untuk suatu paket komputer lengkap bagi para konsumen berdasarkan kriteria-kriteria yang dibutuhkan oleh konsumen. Pada proses perancangan aplikasi ini, diterapkan metode logika fuzzy dalam studi kasus pemilihan spesifikasi komputer berdasarkan kebutuhan konsumen. Hal tersebut berdasarkan banyak kasus selama ini, dimana konsumen banyak bertanya tentang spesifikasi komputer yang menjadi dasar pertimbangan mereka dalam pemilihan paket komputer lengkap. Biasanya pemilihan spesifikasi komputer pada suatu toko komputer dilakukan dengan berkonsultasi dengan para pegawai toko. Namun hal itu akan memakan waktu yang lama dan tidak praktis. Terdapat suatu metode yang lebih praktis, yaitu dengan membangun suatu aplikasi sistem pendukung keputusan pada penentuan spesifikasi komputer yang di dalamnya juga diterapkan metode logika fuzzy. Salah satu metode Kecerdasan Buatan yang digunakan sebagai alat prediksi adalah logika fuzzy. FDSS (Fuzzy Decision Support 1

2

System) menggunakan dasar pengetahuan dalam bentuk aturan if then untuk memproses informasi. Seperangkat aturan fuzzy menggambarkan seperangkat relasi fuzzy antara input fuzzy dan output fuzzy. Metode standar digunakan untuk membuat dasar pengetahuan fuzzy melibatkan identifikasi dari input dan output fuzzy, perluasan dari fungsi keanggotaan fuzzy untuk setiap input dan output tersebut, dan akhirnya konstruksi dari aturan fuzzy [1]. Sistem yang akan dibangun merupakan sistem database fuzzy (Fuzzy Database System), karena pada proses pengambilan keputusan menggunakan logika fuzzy dan menggunakan database dalam menyimpan dan mengambil data spesifikasi komputer. Model yang digunakan pada database fuzzy ini adalah model Tahani, yang masih menggunakan relasi database yang bersifat standar, dengan lebih menekankan penggunaan fuzzy pada beberapa field dalam tabel-tabel yang ada pada database tersebut dan pada perhitungan matematisnya [2].

1.2 TujuanTujuan dari pembuatan skripsi ini adalah: 1. Mendesain sistem menggunakan logika fuzzy untuk proses pendukung keputusan dalam penentuan spesifikasi komputer untuk suatu paket komputer lengkap, sesuai dengan kebutuhan masing-masing pembeli. 2. Membangun sistem aplikasi penentuan spesifikasi komputer untuk suatu paket komputer lengkap, sesuai dengan kebutuhan masing-masing pembeli.

3

1.3 Perumusan MasalahBerdasarkan latar belakang permasalahan pada subbab 1.1. maka masalah-masalah yang ada dapat dirumuskan sebagai berikut: 1. Bagaimana merancang sistem pendukung keputusan dengan menggunakan logika fuzzy. 2. Bagaimana mengimplementasikan pendekatan logika fuzzy pada penentuan spesifikasi komputer untuk suatu paket komputer lengkap, sesuai dengan kebutuhan masingmasing pembeli, baik dari segi merek maupun logika fuzzy seperti kecepatan prosesor, kapasitas harddisk, kapasitas memory, ukuran monitor, ukuran power supply, serta ukuran VGA.

1.4 Pembatasan MasalahDengan mengacu kepada subbab 1.2. maka ruang lingkup permasalahan dibatasi pada : 1. Desain sistem pendukung keputusan dibatasi dengan menggunakan metode logika fuzzy. 2. Implementasi dilakukan pada pengambilan keputusan dari beberapa data spesifikasi komputer yang tersedia pada database. 3. Implementasi dilakukan pada penentuan spesifikasi komputer yang tersedia pada database, hanya spesifikasi standard seperti prosesor, mainboard, memory, VGA, casing, PSA, harddisk, monitor, optical drive, keyboard

4

dan mouse. Sedangkan aksesoris lainnya tidak dimasukkan karena merupakan fasilitas pendukung saja, yang sifatnya tidak terlalu penting. 4. Tidak dilakukan proses pembandingan dengan algoritma lainnya.

1.5 Metode PelaksanaanMetode yang digunakan dalam pembuatan sistem aplikasi ini adalah : 1. Studi Pustaka Untuk mendukung pembuatan sistem aplikasi ini, dilakukan studi pustaka dengan mengumpulkan bahan dari beberapa sumber, seperti media internet, jurnal-jurnal, dan beberapa buku referensi yang membahas tentang logika fuzzy, seperti Artificial Inteligence, Fuzzy System. 2. Data Perancangan Sistem Penelitian dilakukan dengan menggunakan data-data spesifikasi komputer dari beberapa merek yang sudah ada, seperti Kingston dan Visipro untuk spesifikasi Memory, Asus dan Gigabyte untuk spesifikasi Mainboard, AMD dan Intel untuk spesifikasi Prosesor, Maxtor dan Seagate untuk spesifikasi Harddisk, dan lain sebagainya . 3. a. Langkah Perancangan Sistem Studi Pendahuluan

5

Melakukan studi pendahuluan dan analisis mengenai hal-hal yang berkaitan dengan penyelesaian masalah dan pembuatan sistem aplikasi. Seperti halnya daftar harga, merek-merek yang biasa digunakan atau yang penjualannya cukup sebagainya. b. Analisis dan Perancangan Sistem Merancang sistem aplikasi dengan menggunakan logika fuzzy, yang mudah dimengerti serta mudah dioperasikan. c. Pembuatan Program Mengimplementasikan hasil rancangan sistem ke dalam bahasa pemrograman. Klasifikasi perangkat keras yang digunakan adalah : AMD Athlon (tm)XP 2500+ 1.83 GHz RAM 512 MB Hard Disk 80 GB CD-ROM 52X baik, kebutuhan konsumen terhadap masing-masing spesifikasi komputer, dan lain

Sedangkan perangkat lunak yang digunakan adalah :

6

d.

Sistem Operasi Windows 98 dan Windows XP Microsoft Visual Basic 6.0 Microsoft Access 2003

Pengujian Program Menguji dan menganalisis program, berdasarkan input dari pengguna serta keakuratan output yang dihasilkan. Pengujian sistem pada aplikasi ini menggunakan enam variabel fuzzy dan beberapa variabel non-fuzzy. Parameter yang digunakan sebagai penilaian adalah : 1. Keakuratan proses fuzzifikasi dalam

mengelompokkan himpunan fuzzy pada suatu variabel fuzzy yang dibatasi dengan nilai batas himpunan. 2. Keakuratan dari proses inferensi fuzzy / pengambilan keputusan dalam suatu variabel fuzzy, berdasarkan nilai hasil dari proses fuzzifikasi. 3. Keakuratan proses defuzzifikasi dalam menghitung nilai rekomendasi untuk suatu paket komputer yang sesuai dengan kriteria.

e.

Kesimpulan

7

Menyimpulkan hal-hal yang dapat mempengaruhi hasil perancangan sistem.

1.6 Sistematika PenulisanSistematika penulisan dalam skripsi ini terdiri dari: BAB I PENDAHULUAN Merupakan gambaran umum mengenai latar belakang permasalahan yang ingin diselesaikan dengan pendekatan logika fuzzy, perumusan masalah, pembatasan masalah, tujuan penelitian, spesifikasi sistem, dan sistematika penyusunan laporan. BAB II LANDASAN TEORI Berisi dasar-dasar teori yang melandasi penyusunan dan perancangan dalam pengembangan sistem aplikasi ini. BAB III PERANCANGAN SISTEM Bab ini berisi analisa permasalahan dan rancangan sistem yang digunakan, meliputi diagram aliran data, perancangan database, dan desain antarmuka.

BAB IV IMPLEMENTASI DAN ANALISA SISTEM

8

Bab ini menjelaskan tentang penerapan rancangan program ke dalam bahasa pemrograman, analisis hasil, serta analisa mengenai kelebihan dan kekurangan sistem. BAB V KESIMPULAN Bab ini berisi tentang kesimpulan sesuai dengan hasil pengujian sistem yang telah dibangun dan saran pengembangan program.

BAB II LANDASAN TEORITinjauan PustakaSistem pengambilan keputusan menggunakan logika Fuzzy pada studi kasus pemilihan handphone dengan metode Fuzzy model Tahani, yang dibuat oleh Denny Cristiono, ditujukan untuk menangani pencarian handphone yang sesuai dengan kriteria-kriteria dari konsumen. Sedangkan pada sistem pemilihan spesifikasi komputer yang akan dibuat, terdapat pencocokan antara item yang satu dengan yang lain. Misalkan saja jika type jenis dari prosesor adalah Intel socket LGA 775, maka mainboard-nya pun juga harus dengan jenis yang sama. Dari berbagai macam item yang tersedia, akan dipilih sesuai dengan kriteria yang diinginkan, untuk selanjutnya digabungkan menjadi suatu paket yang utuh. Pada sistem pemilihan handphone, tidak terdapat penggabungan antar item, karena suatu handphone sendiri sudah merupakan satu kesatuan yang mempunyai berbagai macam variabel fuzzy seperti harga, dimensi (panjang, lebar dan tebal), berat, standby time, talk time dan games maupun variabel non-fuzzy seperti polyphonic, MMS, WAP, GPRS, bluetooth, infrared dan kamera [3].

9

10

DSS (Decision Support System)DSS (Decision Support System) adalah suatu sistem informasi yang mengevaluasi beberapa pilihan yang berbeda guna membantu seseorang memberikan keputusan terhadap masalahnya. Berdasarkan pada definisi yang bervariasi, DSS dapat dijelaskan sebagai sistem pembuat keputusan manusia-komputer interaktif berbasiskan komputer yang dapat: 1. Mendukung dalam pembuatan keputusan daripada

menggantinya dengan yang baru. 2. Memanfaatkan data dan model. 3. Memecahkan masalah dengan struktur yang derajatnya bervariasi: nonstruktur (unstruktur atau ill-struktur) semistruktur semistruktur dan unstruktur

4. Berpusat pada keefektifan daripada keefisienan dalam proses pemberian keputusan. Kecerdasan Buatan atau Artificial Intelligence (AI) merupakan salah satu bagian ilmu komputer yang membuat mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia. Agar komputer dapat bertindak seperti dan sebaik manusia, maka komputer juga harus diberi bekal pengetahuan, dan mempunyai kemampuan untuk menalar. Untuk itu AI memberikan beberapa

11

metoda untuk membekali komputer dengan kedua komponen tersebut agar komputer dapat menjadi mesin yang pintar. Untuk melakukan aplikasi kecerdasan buatan ada dua bagian utama yang sangat dibutuhkan, yaitu : a. Basis Pengetahuan (Knowledge Base), berisi fakta-fakta, teori, pemikiran dan hubungan antara satu dengan lainnya. b. Motor Inferensi (Inference Engine), yaitu kemampuan menarik kesimpulan berdasarkan pengalaman. FDSS (Fuzzy Decision Support System) merupakan sistem pembuat keputusan manusia-komputer untuk mendukung keputusan manajerial, dan intuisi untuk memecahkan masalah manajerial dengan memberikan informasi yang diperlukan, menghasilkan, mengevaluasi dan memberikan putusan alternatif [4].

Arsitektur DSS (Decision Support System)Langkah pertama pada proses pembuatan keputusan yaitu dengan membuat model pendukung keputusan. Interface subsistem user menjembatani untuk menuju ke DBMS (Database Management Systems) dan MBMS (Model-Based Management Systems). DBMS merupakan seperangkat program komputer yang membuat dan mengatur database. DBMS dapat menjadi salah satu program tersendiri atau disatukan dengan generator DSS yang mengijinkan user untuk membuat file database yang digunakan sebagai input pada DSS. MBMS merupakan seperangkat program komputer yang tersimpan dalam generator DSS yang mengijinkan user untuk

12

membuat, meng-edit, meng-update dan/atau menghapus model. User membuat beberapa model dan file relasi database untuk membuat keputusan yang spesifik. Model dan database yang telah dibuat disimpan di model utama dan database-nya di media penyimpan seperti hardisk. Dari sudut pandang user, subsistem interface user hanya merupakan bagian dari komponen DSS. Oleh karena itu, dalam memberikan interface user yang efektif harus mengambil beberapa persoalan penting sebagai bahan pertimbangan, termasuk pemilihan media input dan output, desain layar, penggunaan warna, format penyajian data dan informasi, penggunaan jenis interface yang berbeda, dan lain-lain.

13

Gambar 2.1 Komponen DSS (Decision Support System)

Konsep Dasar Logika FuzzyTeori himpunan fuzzy diperkenalkan pertama kali oleh Lotfi A. Zadeh pada tahun 1965. Ada beberapa alasan mengapa orang menggunakan logika fuzzy, antara lain : 1. Konsep logika fuzzy mudah dimengerti. Konsep matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti.

14

Logika fuzzy sangat fleksibel. 3. Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat. 4. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinear yang sangat kompleks. 5. Logika fuzzy dapat membangun dan mengaplikasikan pengalaman-pengalaman para pakar secara langsung tanpa harus melalui proses pelatihan. 6. Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara konvensional. 7. Logika fuzzy didasarkan pada bahasa alami. Dalam logika fuzzy dikenal berhingga keadaan dari nilai 0 sampai ke nilai 1. Logika fuzzy tidak hanya mengenal dua keadaan tetapi juga mengenal sejumlah keadaan yang berkisar dari keadaan salah sampai keadaan benar [5]. Ada beberapa hal yang perlu diketahui dalam memahami sistem fuzzy, yaitu : 1. Variabel Fuzzy Variabel Fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem Fuzzy. 2. Himpunan Fuzzy

15

Himpunan

Fuzzy

adalah

himpunan

yang

tiap

elemennya mempunyai derajat keanggotaan tertentu terhadap himpunannya. Himpunan Fuzzy memiliki dua atribut, yaitu : Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau kondisi tertentu dengan menggunakan bahasa alami. Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu variabel. 3. Semesta Pembicaraan Semesta pembicaraan adalah suatu keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel Fuzzy. Nilai semesta pembicaraan dapat berupa bilangan positif atau bilangan negatif. 4. Domain Domain himpunan Fuzzy adalah keseluruhan nilai yang diijinkan dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan Fuzzy. Nilai domain dapat berupa bilangan positif maupun bilangan negatif [6].

16

Karakteristik Logika FuzzyLogika Fuzzy memiliki beberapa karakteristik yaitu himpunan Fuzzy dan fungsi keanggotaan. Himpunan Fuzzy Pada logika boolean, sebuah individu dipastikan sebagai anggota dari salah satu himpunan saja, sedangkan pada himpunan fuzzy sebuah individu dapat masuk pada dua himpunan yang berbeda. Seberapa besar eksistensinya dalam himpunan tersebut dapat dilihat pada nilai keanggotaannya [6]. Himpunan fuzzy A pada semesta X dinyatakan sebagai himpunan pasangan berurutan (set of ordered pairs) baik diskrit maupun kontinu. (2.1) Dimana fungsi keanggotaan himpunan fuzzy A. Fungsi pada suatu nilai antara [0,1] (membership grade atau

keanggotaan memetakan setiap yang disebut derajat keanggotaan membership value).

Beberapa operasi pada himpunan fuzzy adalah sebagai berikut [7] :

17

Support

Support dari himpunan fuzzy A adalah kumpulan semua titik yang memberikan nilai Support(A) = Core , atau (2.2)

Core dari himpunan fuzzy A adalah kumpulan semua titik yang memberikan nilai Core(A) = Crossover , atau (2.3)

Titik crossover dari himpunan fuzzy A adalah titik dimana atau Crossover(A) = Fungsi Singleton (2.4)

Fungsi singleton adalah himpunan fuzzy yang memiliki support pada satu titik dengan .

18

Fungsi Keanggotaan (Membership Function) Fungsi keanggotaan adalah suatu kurva yang menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya (disebut juga dengan derajat keanggotaan) yang memiliki interval antara 0 sampai 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi [6]. Derajat keanggotaan dalam himpunan (degree of membership) dilambangkan dengan . Dalam sistem fuzzy banyak dikenal bermacam-macam fungsi keanggotaan (membership function). Beberapa fungsi keanggotaan yang sering digunakan adalah: Fungsi keanggotaan Linear 0; (x a) / (b - a); 1; (2.5) x a atau x c

[x] =

a x b x b

Fungsi keanggotaan segitiga 0; (x a) / (b - a); (c - x) / (c - b);

(2.6) x a atau x c

[x] =

a x b b x c

19

Fungsi Keanggotaan Trapesium 0 (x a) / (b - a)

(2.7) x a atau x d a < x< b b < x< c c < x< d

[x] =

1 (d - x) / (d - c)

Dalam kasus yang dibahas, fungsi keanggotaan yang dipakai adalah Representasi Kurva Segitiga dan Representasi Kurva Bahu. 1. Representasi Kurva Segitiga Kurva segitiga pada dasarnya merupakan gabungan antara dua garis.

1 Derajat keanggotaan [x]

0

a

b Domain

c

Gambar 2.2 Fungsi Keanggotaan Kurva Segitiga

20

Fungsi keanggotaan: 0; (x a) / (b - a); (c - x) / (c - b); x a atau x c

(2.8)

[x] =

a x b b x c

2. Representasi Kurva Bahu Kurva bahu merupakan daerah yang terletak di tengahtengah suatu variabel yang direpresentasikan dalam bentuk segitiga, pada sisi kanan dan sisi kirinya akan naik dan turun. Himpunan fuzzy bahu digunakan untuk mengakhiri variabel suatu daerah fuzzy. Bahu Kiri Bahu Kanan

1 Derajat keanggotaan [x]

0

a Domain

b

Gambar 2.3 Fungsi Keanggotaan Kurva Bahu

21

Fungsi keanggotaan pada kurva segitiga dan fungsi keanggotaan pada kurva bahu dapat dilihat pada gambar 2.4 Himp1 1 [x] Himp2 Himp3

0

1

5 Variabel Fuzzy

10

Gambar 2.4 Himpunan Fuzzy untuk Suatu Variabel

Operator Dasar Zadeh [2] Operator AND Operator ini berhubungan dengan operasi interseksi pada himpunan. Fire strength sebagai hasil operasi dengan operator AND diperoleh dengan mengambil nilai keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan.

A B = min ( A [ x ], B [ y ] )

(2.9)

22

Operator OR Operator ini berhubungan dengan operasi union pada himpunan. Fire strength sebagai hasil operasi dengan operator OR diperoleh dengan mengambil nilai keanggotaan terbesar antara elemen pada himpunan-himpunan yang bersangkutan.

A B = max ( A [ x ], B [ y ] ) Operator NOT

(2.10)

Operator ini berhubungan dengan operasi komplemen pada himpunan. Fire strength sebagai hasil operasi dengan operator NOT diperoleh dengan mengurangkan nilai keanggotaan elemen pada himpunan yang bersangkutan dari 1.

A1 = 1 A [ x ]

(2.11)

FuzzifikasiFuzzifikasi adalah pengubahan seluruh variabel input/output ke bentuk himpunan fuzzy. Rentang nilai variabel input dikelompokkan menjadi beberapa himpunan fuzzy dan tiap himpunan mempunyai derajat keanggotaan tertentu. Bentuk fuzzifikasi yang dipakai pada sistem ini adalah bentuk segitiga dan bentuk bahu. Bentuk fuzzifikasi menentukan derajat keanggotaan suatu nilai rentang input/output. Derajat keanggotaan

23

himpunan fuzzy dihitung dengan menggunakan rumus fungsi keanggotaan dari segitiga fuzzifikasi [5].

Inferensi Fuzzy (logika Pengambilan Keputusan)Setelah fungsi keanggotaan untuk variabel masukan dan keluarannya ditentukan, basis aturan pengendalian dapat dikembangkan untuk menghubungkan aksi keluaran pengendali terhadap kondisi masukannya. Tahap ini disebut sebagai tahap inferensi, yakni bagian penentuan aturan dari sistem logika fuzzy. Sejumlah aturan dapat dibuat untuk menentukan aksi pengendali fuzzy [8]. Pada basis aturan, aturan If-Then tersebut dapat

menghubungkan banyak variabel masukan dan keluaran. Masukan x dipetakan menjadi keluaran y. Aturan if-then diinterpretasikan sebagai implikasi fuzzy. Terdapat banyak sekali model interpretasi implikasi yang telah dikembangkan. Pada sistem ini, metode yang digunakan adalah Metode MAMDANI. Metode Tsukamoto Pada Metode Tsukamoto, setiap konsekuen pada aturan yang berbentuk If-Then harus direpresentasikan dengan suatu himpunan fuzzy dengan fungsi keanggotaan yang monoton. Sebagai hasilnya, output hasil inferensi dari tiap-tiap aturan diberikan secara tegas (crisp) berdasarkan -predikat (fire strength). Hasil akhirnya diperoleh dengan menggunakan rata-rata terbobot.

24

Metode Sugeno Penalaran dengan Metode Sugeno hamper sama dengan penalaran Mamdani, hanya saja output (konsekuen) sistem tidak berupa himpunan fuzzy, melainkan berupa konstanta atau persamaan linear. Metode ini diperkenalkan oleh Takagi-Sugeno Kang pada tahun 1985. a. Model Fuzzy Sugeno Orde-Nol Secara umum bentuk model fuzzy SUGENO Orde-Nol adalah : IF (x1 is A1) . (x2 is A2) . (x3 is A3) . .. . (xn is An) THEN z=k (2.12)

dengan Ai adalah himpunan fuzzy ke-i sebagai anteseden, dan k adalah suatu konstanta (tegas) sebagai konsekuen. b. Model Fuzzy Sugeno Orde-Satu Secara umum bentuk model fuzzy SUGENO Orde-Satu adalah : IF (x1 is A1) . .. . (xn is An) THEN z = p1 * x1 + .. + pn * xn + q (2.13)

dengan Ai adalah himpunan fuzzy ke-i sebagai anteseden, dan pi adalah suatu konstanta (tegas) ke-i dan q juga merupakan konstanta dalam konsekuen.

25

Metode Mamdani Metode Mamdani sering juga dikenal dengan nama Metode Max-Min. Metode ini diperkenalkan oleh Ebrahim Mamdani pada tahun 1975. Untuk mendapatkan output, diperlukan empat tahapan : 1. Pembentukan Himpunan Fuzzy Pada Metode Mamdani, baik variabel input maupun variabel output dibagi menjadi satu atau lebih himpunan fuzzy. 2. Aplikasi Fungsi Implikasi Pada Metode Mamdani, fungsi implikasi yang digunakan adalah Min. 3. Komposisi Aturan Tidak seperti penalaran monoton, apabila sistem terdiri dari beberapa aturan, maka inferensi diperoleh dari kumpulan dan korelasi antar aturan. Ada tiga metode yang digunakan dalam melakukan inferensi system fuzzy, yaitu max, additive dan probabilistic OR (probor). a. Metode Max (Maximum) Pada metode ini, solusi himpunan fuzzy diperoleh dengan cara mengambil nilai maksimum aturan, kemudian menggunakannya untuk memodifikasi

26

daerah fuzzy, dan mengaplikasikannya ke output dengan menggunakan operator OR (union). Secara umum dapat dituliskan : sf[xi] max (sf[xi], kf[xi]) dengan : sf[xi] = nilai keanggotaan solusi fuzzy sampai aturan ke-i; kf[xi] = nilai keanggotaan konsekuen fuzzy sampai aturan ke-i; Apabila digunakan fungsi implikasi MIN, maka metode komposisi ini sering disebut dengan nama MAX-MIN atau MIN-MAX atau MAMDANI. b. Metode Additive (Sum) Pada metode ini, solusi himpunan fuzzy diperoleh dengan cara melakukan bounded-sum terhadap semua output daerah fuzzy. Secara umum dituliskan : sf[xi] min (1, sf[xi] + kf[xi]) dengan : sf[xi] = nilai keanggotaan solusi fuzzy sampai aturan ke-i; (2.15) (2.14)

27

kf[xi] = nilai keanggotaan konsekuen fuzzy sampai aturan ke-i; c. Metode Probabilistik OR (probor) Pada metode ini, solusi himpunan fuzzy diperoleh dengan cara melakukan product terhadap semua output daerah fuzzy. Secara umum dituliskan : sf[xi] (sf[xi] + kf[xi]) - (sf[xi] * kf[xi]) dengan : sf[xi] = (2.16) nilai keanggotaan solusi fuzzy sampai aturan ke-i; kf[xi] = nilai keanggotaan konsekuen fuzzy sampai aturan ke-i; 4. Penegasan (defuzzy) Input dari proses defuzzifikasi adalah suatu himpunan fuzzy yang diperoleh dari komposisi aturan-aturan fuzzy, sedangkan output yang dihasilkan merupakan suatu bilangan pada domain himpunan fuzzy tersebut. Sehingga jika diberikan suatu himpunan fuzzy dalam range tertentu, maka harus dapat diambil suatu nilai crisp tertentu sebagai output seperti terlihat pada gambar 2.5

28

Daerah Fuzzy A

Output: Daerah Fuzzy D

Daerah Fuzzy B Nilai yang diharapkan

Daerah Fuzzy C

Gambar 2.5 Proses Defuzzifikasi. Ada beberapa metode defuzzifikasi pada komposisi aturan MAMDANI. Pada sistem ini proses defuzifikasinya menggunakan metode Mean Of Maximum (MOM). a. Metode Centroid (Composite Moment) Pada metode ini, solusi crisp diperoleh dengan cara mengambil titik pusat (z*) daerah fuzzy. b. Metode Bisektor Pada metode ini, solusi crisp diperoleh dengan cara mengambil nilai pada domain fuzzy yang memiliki nilai keanggotaan separuh dari jumlah total nilai keanggotaan pada daerah fuzzy.

29

c.

Metode Mean Of Maximum (MOM) Pada metode ini, solusi crisp diperoleh dengan cara mengambil nilai rata-rata domain yang memiliki nilai keanggotaan maksimum.

d.

Metode Largest Of Maximum (LOM) Pada metode ini, solusi crisp diperoleh dengan cara mengambil nilai terbesar dari domain yang memiliki nilai keanggotaan maksimum.

e.

Metode Smallest Of Maximum (SOM) Pada metode ini, solusi crisp diperoleh dengan cara mengambil nilai terkecil dari domain yang memiliki nilai keanggotaan maksimum.

Tipe-Tipe FuzzyAda beberapa macam tipe Fuzzy. Yang akan digunakan pada sistem ini adalah tipe Fuzzy Database. Fuzzy Clustering Fuzzy Clustering adalah salah satu teknik untuk menentukan cluster optimal dalam suatu ruang vektor yang didasarkan pada bentuk normal Euclidian untuk jarak antar vektor. Beberapa algoritma clustering data adalah :

30

1. 2.

Fuzzy C-Means (FCM) Fuzzy Subtractive Clustering Fuzzy Database Fuzzy Database dapat diartikan sebagai merepresentasikan, memasukkan, dan memanipulasi informasi yang tidak tepat dan tidak pasti. Fuzzy Database bertujuan untuk memecahkan setiap permasalahan yang berhubungan dengan representasi dan menangani informasi yang tidak tepat [9]. 1. 2. Fuzzy Database Model Tahani Fuzzy Database model Umano Fuzzy Quantification Theory Fuzzy Quantification Theory adalah metode untuk

mengendalikan data-data kualitatif dengan menggunakan teori himpunan Fuzzy. 1. 2. Fuzzy Quantification Theory I kualitatif) Fuzzy Quantification Theory II (analisis deskriptif kualitatif) Fuzzy Associative Memory (FAM) Fuzzy Associative Memory (FAM) merupakan suatu sistem fuzzy yang memetakan himpunan-himpunan fuzzy ke himpunanhimpunan fuzzy lainnya. (analisis regresi

31

1. 2.

Fuzzy HEBB FAM

Correlation minimum encoding Correlation product encoding Relasi Komposisi 3. Max-Min Composition Max-Product Composition

Superimposing FAM Rules Fuzzy Linear Programming (FLP) Fuzzy Linear Programming (FLP) merupakan suatu sistem fuzzy yang mencari suatu nilai z yang merupakan fungsi obyektif yang akan dioptimasikan sedemikian hingga tunduk pada batasan-batasan yang dimodelkan dengan menggunakan himpunan fuzzy.

Fuzzy DatabaseFuzzy Database dapat diartikan sebagai merepresentasikan, memasukkan, dan memanipulasi informasi yang tidak tepat dan tidak pasti. Query pada logika fuzzy dapat digunakan untuk pengambilan data yang diinginkan, tanpa memerlukan pendefinisian parameter yang pasti. Proses query fuzzy mencakup logika boolean yang hasil pencariannya berupa nilai benar atau salah dan juga akan menghasilkan nilai x% benar atau x% salah dari nilai keanggotaannya.

32

Fuzzy Database Model Tahani Dengan menggunakan database standar, kita bisa mencari datadata dengan spesifikasi tertentu dengan menggunakan query. Pada kenyataannya, seseorang kadang membutuhkan informasi dari data yang bersifat ambiguous. Dan jika hal tersebut terjadi maka dapat digunakan fuzzy database. Selama ini sudah ada beberapa penelitian tentang fuzzy database. Salah satu diantaranya adalah model Tahani. Fuzzy database model Tahani masih menggunakan relasi standar, tetapi model Tahani menggunakan teori himpunan fuzzy pada suatu variabel untuk mendapatkan informasi pada query-nya. Sehingga pada pencarian data menggunakan rumus dari derajat keanggotaan pada suatu variabel himpunan fuzzy. Dalam hal ini menggunakan rumus dari derajat keanggotaan segitiga, dengan representasi kurva segitiga dan representasi kurva bahu [2]. Pembentukan Query Suatu sistem query adalah semacam sistem pengembalian informasi yang digunakan untuk mendapatkan kembali obyek yang relevan dari suatu database [10]. Pembentukan query pada database sistem fuzzy digunakan pada proses fuzzifikasi dan proses defuzzifikasi.

33

Query digunakan untuk mencari data dari database serta menginput-kan data ke database. Seluruh nilai yang di-input-kan ke database merupakan nilai yang memenuhi kriteria dari fungsi derajat keanggotaan yang di-input-kan, dengan batas nilai antara 0 dan 1. SELECT FIELD_A, FIELD_B, FIELD_C FROM TABLE_A WHERE FIELD_A >= 0 AND FIELD_B >= 0 Sedangkan data-data nilai yang diambil merupakan hasil perhitungan dari rumus fungsi derajat keanggotaan yang disimpan ke database. Nilai-nilai tersebut merupakan hasil dari proses fuzzifikasi, yang berguna sebagai nilai input untuk proses defuzzifikasi.

BAB III METODOLOGI PERANCANGAN SISTEM3.1

Metode Pembangunan SoftwareMetode yang digunakan untuk pengembangan sistem yang

dibuat ialah dengan menggunakan Metode Waterfall. Model ini menawarkan cara pembuatan perangkat lunak secara lebih nyata. Langkah-langkah yang penting dalam model ini adalah : Penentuan dan analisis spesifikasi Jasa, kendala dan tujuan dihasilkan dari konsultasi dengan pengguna sistem. Kemudian semuanya itu dibuat dalam bentuk yang dapat dimengerti oleh user dan staf pengembang. Desain sistem dan perangkat lunak Proses desain sistem membagi kebutuhan-kebutuhan menjadi sistem perangkat lunak atau perangkat keras. Proses tersebut menghasilkan sebuah arsitektur sistem keseluruhan. Desain perangkat lunak termasuk menghasilkan fungsi sistem perangkat lunak dalam bentuk yang mungkin ditransformasi ke dalam satu atau lebih program yang dapat dijalankan.

34

35

Implementasi dan ujicoba unit Selama tahap ini desain perangkat lunak disadari sebagai sebuah program lengkap atau unit program. Uji unit termasuk pengujian bahwa setiap unit sesuai spesifikasi.

Integrasi dan ujicoba sistem Unit program diintegrasikan dan diuji menjadi sistem yang lengkap untuk menyakinkan bahwa persyaratan perangkat lunak telah dipenuhi. Setelah ujicoba, sistem disampaikan ke customer

Operasi dan pemeliharaan Normalnya, ini adalah phase yang terpanjang. Sistem dipasang dan digunakan. Pemeliharaan termasuk pembetulan kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru ditemukan.

36

Gambar 3.1 Pemodelan Waterfall

3.2 Analisis SistemSistem yang dibuat pada studi kasus pemilihan spesifikasi komputer ini, ditujukan untuk menangani pencarian spesifikasi paket komputer lengkap yang sesuai dengan kriteria-kriteria dari konsumen. Dari data-data spesifikasi komputer yang ada, maka digunakan untuk melakukan pencarian, paket komputer seperti apakah yang sesuai dengan kriteria-kriteria yang diinginkan konsumen. Sistem yang akan dibangun merupakan sistem basisdata fuzzy (Fuzzy Database System), dengan menggunakan model Tahani, yaitu dengan menggunakan relasi standar dalam database dan penekanan fuzzy pada beberapa field dalam tabel-tabel dalam database tersebut.

3.2.1 Kebutuhan Input

37

Kebutuhan input pada sistem ini digolongkan menjadi dua bagian input, yaitu input fuzzy dan input non fuzzy. 1. Input fuzzy, terdiri dari: Data-data spesifikasi komputer yang menyangkut prosesor, ukuran memory, kapasitas kecepatan

Harddisk, ukuran VGA, ukuran monitor, kapasitas power supply, dan harga. Batas bawah (parameter 1 untuk semua bentuk fungsi), batas atas (parameter 2 untuk fungsi berbentuk bahu dan parameter 3 untuk fungsi segitiga), dan nilai tengah (parameter 2 untuk fungsi segitiga) untuk variabel-variabel diatas. 2. Input non fuzzy, terdiri dari data-data spesifikasi komputer yang menyangkut merek dan kecocokan antara spesifikasi yang satu dengan yang lain. 3.2.2 Proses Logika Fuzzy Pada Sistem Pada sistem ini proses fuzzy meliputi: 1. Pengambilan nilai input fuzzy ataupun non fuzzy dari dalam database, sesuai dengan keterangan yang disebutkan oleh pembeli. 2. Proses kurva segitiga. 3. Proses logika pengambilan keputusan melalui pembentukan query. fuzzifikasi dari data input, dengan menggunakan rumus fungsi keanggotaan kurva bahu dan

38

4.

Menampilkan hasil rekomendasi sesuai dengan kriteria yang disebutkan oleh saksi.

3.2.3 Kebutuhan Output Output pada sistem ini berupa rekomendasi paket komputer lengkap yang sesuai dengan kriteria-kriteria yang diinginkan (diinput-kan) oleh para pengguna.

3.3 Perancangan SistemPerancangan sistem dibutuhkan untuk membantu proses pengembangan dan untuk dokumentasi perangkat lunak sistem. Pada perancangan sistem ini, akan diuraikan mengenai elemen-elemen pengembangan sistem yang digunakan, yaitu pengguna. 3.3.1 UML (Unified Modelling Language) UML adalah sebuah bahasa yang telah menjadi standar untuk visualisasi, merancang dan mendokumentasikan sistem peranti lunak. UML pada sistem yang dibangun ini terdiri dari use case diagram, sequence diagram dan activity diagram. UML (Unified Modelling System) dan perancangan antarmuka sistem dengan

3.3.1.1 Use Case Diagram

39

Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem.

Pengguna (Pembeli)

Pengguna (Administrator)

Login Administrator Login Pembeli

Masukkan Data Batas Himpunan Masukkan Spesifikasi Komp yang Diinginkan

Masukkan Data Spesifikasi Komputer

Paket Komputer Rekomendasi

Sistem Fuzzy

Gambar 3.2 Use Case Diagram Sistem yang Dibangun

3.3.1.1.1

Use Case Diagram Sistem Fuzzy

40

Hasil Pencarian Tiap Item

Prioritas Tiap Item

Penggabungan 3.3 Use Gambar Menjadi Paket-Paket Lengkap

Pengacakan dengan metode Case Diagram Sistem Fuzzy Selection Sort

Paket Hasil Rekomendasi

41

3.3.1.2 Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem berupa message yang digambarkan terhadap waktu.

: Pengguna (Administrator)

: Pengguna (Pembeli)

Batas Himpunan Fuzzy

Data Spesifikasi Komputer

Tampilan Inputan Fuzzy

Sistem Fuzzy

Tampilan Paket Rekomendasi

Masukkan Data Batas Himpunan Fuzzy

Masukkan Data Spesifikasi Komputer Proses Penghitungan Fuzzy

Masukkan Data Spesifikasi Komputer yang Diinginkan

Proses Penghitungan Fuzzy Berdasarkan Data Spesifikasi Komputer Yang Diinginkan Pembeli

Hasil Penghitungan Fuzzy

Tampilan Paket Rekomendasi

Gambar 3.4 Sequence Diagram

42

3.3.1.3 Activity Diagram Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir.

P n g n ( e b li) e g u a P me

A m isr t r d in t ao

S r tat

Lg o in A m is a r d in tr to

L g P me o in e b li B ta H p n n a s imu a Fz y uz

Ms k a S e if a i a u k n p s ik s K mu r y n D g k n o p te a g iin in a

T mila P k t a p n ae R k mn a i eo eds

Po e F z y r s s uz

Ed n

Gambar 3.5 Activity Diagram

43

3.3.2

ERD (Entity Relationship Diagram) Diagram ERD menggambarkan berbagai relasi antar entity

dalam suatu database.

44

T ypeID

ID D ata

T ypeID

IDD ata

T ypeID

ID D ata

T ypeID

ID Data

Monitor

H arddisk

Mainboard

Keyboard

TypeJenis

ID Merek

T ypeJenis

ID Merek

TypeJenis

ID Merek TypeID ID D ata

T ypeJenis

IDMerek T ypeID IDD ata M 1 Casing Pemasukka n data item TypeJenis IDMerek T ypeID T ypeID IDD ata TypeID Prosesor PSA TypeJenis IDMerek D ata Item T ypeJenis T ype Jenis ID Merek Optical IDMerek Batasan H arga (Murah, Normal, Mahal) M 1 TypeJenis IDMerek ID Data Memory ID Data ID Merek

T ypeID

ID Data VGA Mouse TypeJenis

T ypeJenis T ypeID

IDMerek IDD ata

TypeJenis

T ypeID

Batas Himpunan

M 1

Pemasukkan nilai batas himpunan dan data item ke dalam sistem Keterangan : : Entitas E ntity ( )

TypeJenis

Batasan Kecepatan/ U kuran/Kapasitas (Min, Middle, Max)

: Atribut Atributte ( ) : R elasi R elationship ( )

Pemasukkan TypeID masingmasing item

M 1

T ypeID

Kamus Data ERD

Gambar 3.6 ERD Diagram

BatasHimpunan : (TypeJenis, TypeID, Min, Middle, Max, Murah, Normal, Mahal) Casing : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Harga, PathGambar)

45

Memory Optical Mainboard Harddisk Monitor Keyboard Mouse

: (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Kapasitas, Harga, PathGambar) : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Harga, PathGambar) : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Harga, PathGambar) : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Ukuran, Harga, PathGambar) : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Ukuran, Harga, PathGambar) : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Harga, PathGambar) : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Harga, PathGambar)

PSA : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Kapasitas, Harga, PathGambar) VGA Prosesor Data Item Sistem Fuzzy : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Ukuran, Harga, PathGambar) : (IDData, TypeID, TypeJenis, IDMerek, SpesifikasiItem, Kecepatan, Harga, PathGambar) : (IDData, SpesifikasiItem, Ukuran/Kapasitas/Kecepatan, Harga) : (IDData, TypeJenis, MuUkuran/Kapasitas/Kecepatan, MuHarga) 3.3.3 Perancangan Database

46

Karena pada penelitian ini database-nya menggunakan model Tahani, maka struktur database yang digunakan adalah struktur database relasional. Ada empat belas tabel yang digunakan dalam penyelesaian penelitian ini. 3.3.3.1 Struktur Tabel 1. Tabel T_TypeID Tabel T_ TypeID digunakan untuk menyimpan data-data tentang nama IDType untuk masing-masing spesifikasi komputer, struktur tabelnya dapat dilihat pada tabel 3.1*) Kunci Primer

Tabel 3.1 Tabel T_ TypeID Tipe Data Text Text Siz e 20 20 Keterangan ID Type untuk masing-masing spesifikasi komputer Nama-nama spesifikasi komputer

Field TypeID(*) Nama 2.

Tabel T_Merek Tabel T_ Merek digunakan untuk menyimpan data-data tentang merek-merek pada masing-masing spesifikasi komputer, struktur tabelnya dapat dilihat pada tabel 3.2

*) Kunci Primer

Tabel 3.2 Tabel T_Merek Tipe Data AutoNumber Siz e Keterangan IDData untuk Tabel T_Merek

Field IDData

47

TypeID IDMerek (*) Merek 3.

Text Text Text

20 20 30

ID Type untuk masing-masing spesifikasi komputer ID Merek untuk masing-masing spesifikasi komputer Nama Merek untuk masingmasing spesifikasi komputer

Tabel TblBatas Tabel TblBatas digunakan untuk menyimpan data batas-batas himpunan fuzzy maupun non fuzzy untuk masing-masing spesifikasi komputer, struktur tabel TblBatas dapat dilihat pada tabel 3.3*) Kunci Primer

Tabel 3.3 Tabel TblBatas Tipe Data AutoNumber Text Size 20 Keterangan IDData untuk Tabel TblBatas ID Type untuk masing-masing spesifikasi komputer Jenis dari spesifikasi komputer yang digunakan sebagai batasan dalam menentukan batas himpunan Nilai batas himpunan untuk variabel harga Murah Nilai batas himpunan untuk variabel harga Normal Nilai batas himpunan untuk variabel harga Mahal Nilai batas himpunan untuk variabel Fuzzy Kecil Nilai batas himpunan untuk variabel Fuzzy Sedang

Field IDData TypeID TypeJenis (*) Murah Normal Mahal Min Middle

Text

50

Single Single Single Single Single

48

Max 4.

Single

Nilai batas himpunan untuk variabel Fuzzy Besar

Tabel TblCasing Tabel TblCasing digunakan untuk menyimpan data-data tentang spesifikasi dari item Casing. Struktur tabel TblCasing dapat dilihat pada tabel 3.4*) Kunci Primer

Tabel 3.4 Tabel TblCasing Tipe Data AutoNumber Text Text Text Text Text Yes / No Long Integer Yes / No Yes / No Yes / No Double Memo 20 20 50 50 20 Size Keterangan IDData untuk Tabel TblCasing ID Type untuk item Casing ID Merek untuk item Casing Type Jenis dari item Casing Nama dari masing-masing item Casing Rak CDRom dan Harddisk Ada / tidaknya PSU Kapasitas PSU (jika ada) Ada / tidaknya Front USB Ada / tidaknya Firewire Ada / tidaknya Audio Harga untuk masing-masing item Casing Data Gambar untuk masingmasing item Casing (jika ada)

Field IDData (*) TypeID IDMerek TypeJenisCasing NamaCasing Bays PSU KapasitasPSU FrontUSB Firewire Audio Harga Path_Gambar

5.

Tabel TblHarddisk

49

Tabel TblHarddisk digunakan untuk menyimpan data-data tentang spesifikasi dari item Harddisk. Struktur tabel TblHarddisk dapat dilihat pada tabel 3.5*) Kunci Primer

Tabel 3.5 Tabel TblHarddisk Tipe Data AutoNumbe r Text Text Text Text Long Integer Long Integer Long Integer Double Memo Size 20 20 50 50 Keterangan IDData untuk Tabel TblHarddisk ID Type untuk item Harddisk ID Merek untuk item Harddisk Type Jenis dari item Harddisk Nama dari masing-masing item Harddisk Kecepatan putar Harddisk Buffer untuk membaca isi Harddisk Kapasitas untuk masing-masing item Harddisk Harga untuk masing-masing item Harddisk Data Gambar untuk masingmasing item Harddisk (jika ada)

Field IDData (*) TypeID IDMerek TypeJenisHardd isk NamaHarddisk RPM L2Cache Kapasitas Harga Path_Gambar 6. Tabel TblKeyboard

Tabel TblKeyboard digunakan untuk menyimpan data-data tentang spesifikasi dari item Keyboard. Struktur tabel TblKeyboard dapat dilihat pada tabel 3.6

*) Kunci Primer

Tabel 3.6 Tabel TblKeyboard

50

Field IDData (*) TypeID IDMerek TypeJenisKeyboard NamaKeyboard JenisKeyboard JenisMouse PS2 USB OpticalMouse ScrollBallMouse BluetoothWireless Harga Path_Gambar

Tipe Data AutoNumber Text Text Text Text Text Text Yes / No Yes / No Yes / No Yes / No Yes / No Double Memo

Size 20 20 50 50 50 50

Keterangan IDData untuk Tabel TblKeyboard ID Type untuk item Keyboard ID Merek untuk item Keyboard Type Jenis dari item Keyboard (Keyboard / Keyboard+Mouse) Nama dari masing-masing item Keyboard Jenis dari item Keyboard Jenis dari item Mouse (jika TypeJenisKeyboard berupa Keyboard+Mouse) Jenis Kabel Jenis Kabel Jenis Optical Mouse Jenis Scrollball Mouse Mendukung Bluetooth Wireless / tidak Harga untuk masing-masing item Keyboard Data Gambar untuk masingmasing item Keyboard (jika ada)

7.

Tabel TblMainboard Tabel TblMainboard digunakan untuk menyimpan data-data tentang spesifikasi dari item Mainboard. Struktur tabel TblMainboard dapat dilihat pada tabel 3.7

*) Kunci Primer

Tabel 3.7 Tabel TblMainboard

51

Field IDData (*) TypeID IDMerek TypeJenisMai nboard Socket Nama Chipset SingleCore Core2Duo DualCore QuadCore TypeJenisMe mory MaxBusSpeed RAMSpeed ATA SATA VGA Audio LAN Wi-Fi USB RAID SlotVGA FSB Harga Path_Gambar

Tipe Data AutoNumber Text Text Text Text Text Text Yes / No Yes / No Yes / No Yes / No Text Long Integer Text Text Text Yes / No Yes / No Yes / No Yes / No Yes / No Yes / No Text Double Double Memo

Size 20 20 50 10 50 50

Keterangan IDData untuk Tabel TblMainboard ID Type untuk item Mainboard ID Merek untuk item Mainboard Type Jenis dari item Mainboard (AMD / Intel) Jenis socket dari item Mainboard Nama dari masing-masing item Mainboard Jenis chipset yang terdapat pada masing-masing item Mainboard Mendukung Single Core / tidak Mendukung Core2Duo / tidak Mendukung Dual Core / tidak Mendukung Quad Core / tidak Type Jenis Memory (DDR1 / DDR2) Bus Speed Batas Maksimum

10

20 20 20

RAM Speed (Dual Channel / tidak) Kemampuan transfer data Kemampuan transfer data Ada / Tidaknya VGA Ada / Tidaknya Audio Ada / Tidaknya Fasilitas LAN Ada / Tidaknya Fasilitas Wi-Fi Ada / Tidaknya Fasilitas USB Ada / Tidaknya Fasilitas RAID Jenis Slot VGA Kecepatan transfer data Harga untuk masing-masing item Mainboard Data Gambar untuk masing-masing item Mainboard (jika ada)

20

52

8.

Tabel TblMemory Tabel TblMemory digunakan untuk menyimpan data-data tentang spesifikasi dari item Memory. Struktur tabel TblMemory dapat dilihat pada tabel 3.8*) Kunci Primer

Tabel 3.8 Tabel TblMemory Tipe Data AutoNumber Text Text Text Text Text Text Long Integer Double Memo Size 20 20 10 50 5 5 Keterangan IDData untuk Tabel TblMemory ID Type untuk item Memory ID Merek untuk item Memory Type Jenis dari item Memory (DDR1 / DDR2) Nama dari masing-masing item Memory Nilai PC dari masing-masing item Memory Nilai Bus Speed dari masingmasing item Memory Nilai Kapasitas dari masingmasing item Memory Harga untuk masing-masing item Memory Data Gambar untuk masingmasing item Memory (jika ada)

Field IDData (*) TypeID IDMerek TypeJenisMemory NamaMemory PC BusSpeed Kapasitas Harga Path_Gambar 9. Tabel TblMonitor

Tabel TblMonitor digunakan untuk menyimpan data-data tentang spesifikasi dari item Monitor. Struktur tabel TblMonitor dapat dilihat pada tabel 3.9

53

*) Kunci Primer

Tabel 3.9 Tabel TblMonitor Tipe Data AutoNumber Text Text Text Text Text Long Integer Double Memo Siz e 20 20 20 50 20 Keterangan IDData untuk Tabel TblMonitor ID Type untuk item Monitor ID Merek untuk item Monitor Type Jenis dari item Monitor Nama dari masing-masing item Monitor Nilai Resolution dari masingmasing item Monitor Ukuran Monitor Harga untuk masing-masing item Monitor Data Gambar untuk masingmasing item Monitor (jika ada)

Field IDData (*) TypeID IDMerek TypeJenisMonitor NamaMonitor Resolution Ukuran Harga Path_Gambar 10. Tabel TblMouse

Tabel TblMouse digunakan untuk menyimpan data-data tentang spesifikasi dari item Mouse. Struktur tabel TblMouse dapat dilihat pada tabel 3.10*) Kunci Primer

Tabel 3.10 Tabel TblMouse Tipe Data AutoNumber Text Text Text Text Text Yes / No Siz e 20 20 20 50 50 Keterangan IDData untuk Tabel TblMouse ID Type untuk item Mouse ID Merek untuk item Mouse Type Jenis dari item Mouse Nama dari masing-masing item Mouse Jenis dari item Mouse Jenis konektor

Field IDData (*) TypeID IDMerek TypeJenisMouse NamaMouse JenisMouse PS2

54

USB Harga Path_Gambar 11. Tabel TblOptical

Yes / No Double Memo

Jenis konektor Harga untuk masing-masing item Mouse Data Gambar untuk masingmasing item Mouse (jika ada)

Tabel TblOptical digunakan untuk menyimpan data-data tentang spesifikasi dari item Optical Drive. Struktur tabel TblOptical dapat dilihat pada tabel 3.11*) Kunci Primer

Tabel 3.11 Tabel TblOptical Tipe Data AutoNumber Text Text Text Text Text Text Text Text Text Double Siz e 20 20 50 50 50 10 10 10 10 Keterangan IDData untuk Tabel TblOptical ID Type untuk item Optical Drive ID Merek untuk item Optical Drive Type Jenis dari item Optical Drive Konektor yang terdapat pada masing-masing item Optical Drive Nama dari masing-masing item Optical Drive Besarnya kecepatan dari item Optical Drive jenis CDR Besarnya kecepatan dari item Optical Drive jenis CDRW Besarnya kecepatan dari item Optical Drive jenis DVDR Besarnya kecepatan dari item Optical Drive jenis DVDRW Harga untuk masing-masing item Optical Drive

Field IDData (*) TypeID IDMerek TypeJenisOptical Connector NamaOptical CDR CDRW DVDR DVDRW Harga

55

Path_Gambar

Memo

Data Gambar untuk masingmasing item Optical Drive (jika ada)

12.

Tabel TblProsesor Tabel TblProsesor digunakan untuk menyimpan data-data tentang spesifikasi dari item Prosesor. Struktur tabel TblProsesor dapat dilihat pada tabel 3.12*) Kunci Primer

Tabel 3.12 Tabel TblProsesor Tipe Data AutoNumber Text Text Text Text Text Yes / No Yes / No Yes / No Yes / No Double Text Double 20 Siz e 20 20 30 50 20 Keterangan IDData untuk Tabel TblProsesor ID Type untuk item Prosesor ID Merek untuk item Prosesor Type Jenis dari item Prosesor Nama dari masing-masing item Prosesor Jenis Socket (AM2 / 939 / LGA 775) Adanya Fasilitas Single Core / tidak Adanya Fasilitas Core2Duo / tidak Adanya Fasilitas Dual Core / tidak Adanya Fasilitas Quad Core / tidak Besarnya kecepatan dari masingmasing item Prosesor Ukuran L2Cache dari masingmasing item Prosesor Besarnya kecepatan FSB dari masing-masing item Prosesor

Field IDData (*) TypeID IDMerek TypeJenisProsesor NamaProsesor Socket SingleCore Core2Duo DualCore QuadCore Kecepatan L2Cache FSB

56

Harga Path_Gambar 13. Tabel TblPSA

Double Memo

Harga untuk masing-masing item Prosesor Data Gambar untuk masingmasing item Prosesor (jika ada)

Tabel TblPSA digunakan untuk menyimpan data-data tentang spesifikasi dari item Power Supply. Struktur tabel TblPSA dapat dilihat pada tabel 3.13*) Kunci Primer

Tabel 3.13 Tabel TblPSA Tipe Data AutoNumber Text Text Text Text Long Integer Double Memo Siz e 20 20 10 50 Keterangan IDData untuk Tabel TblPSA ID Type untuk item Power Supply ID Merek untuk item Power Supply Type Jenis dari item Power Supply (AT / ATX) Nama dari masing-masing item Power Supply Besarnya kapasitas dari masingmasing item Power Supply Harga untuk masing-masing item Power Supply Data Gambar untuk masing-masing item Power Supply (jika ada)

Field IDData (*) TypeID IDMerek TypeJenisPSA NamaPSA Kapasitas Harga Path_Gambar 14. Tabel TblVGA

Tabel TblVGA digunakan untuk menyimpan data-data tentang spesifikasi dari item VGA. Struktur tabel TblVGA dapat dilihat pada tabel 3.14

57

*) Kunci Primer

Tabel 3.14 Tabel TblVGA Tipe Data AutoNumber Text Text Text Text Text Text Siz e 20 20 20 50 50 10 Keterangan IDData untuk Tabel TblVGA ID Type untuk item VGA ID Merek untuk item VGA Type Jenis dari item VGA (ATI / NVIDIA) Nama dari masing-masing item VGA Jenis chipset yang terdapat pada masing-masing item VGA Type Jenis Memory yang didukung oleh masing-masing item VGA Jenis Slot VGA (AGP 4x / AGP 8x / PCI-E 16x / Dual PCI-E 16x) Adanya Fasilitas Dual VGA / tidak Besarnya Ukuran VGA Harga untuk masing-masing item VGA Data Gambar untuk masingmasing item VGA (jika ada)

Field IDData (*) TypeID IDMerek TypeJenisVGA NamaVGA Chipset TypeJenisMemory

SlotVGA DualVGA Ukuran Harga Path_Gambar

Text Yes / No Long Integer Double Memo

20

58

3.3.3.2 Relasi Antar Tabel

59

Gambar 3.7 Relasi Antar Tabel

60

Keterangan : : relasi one to one : relasi one to many : relasi many to many

3.3.4 Fungsi Keanggotaan Pada kasus ini, setiap variabel fuzzy menggunakan fungsi keanggotaan bahu dan fungsi keanggotaan segitiga sebagai

61

pendekatan untuk memperoleh derajat keanggotaan suatu nilai dalam suatu himpunan fuzzy. 3.3.4.1 Variabel Kecepatan Prosesor Variabel kecepatan prosesor dibagi menjadi tiga himpunan fuzzy, yaitu min, middle dan max. Himpunan min dan max menggunakan pendekatan fungsi keanggotaan yang berbentuk bahu, sedangkan himpunan middle menggunakan pendekatan fungsi keanggotaan berbentuk segitiga. Min 1 Middle Max

[x1]

0

1,8

2,6

3

Kecepatan (GHz) Gambar 3.8 Himpunan Fuzzy untuk Variabel Kecepatan Prosesor

Keterangan dari gambar di atas adalah sebagai berikut : Min Middle Prosesor Berkecepatan Lambat Prosesor Berkecepatan Sedang

62

-

Max

Prosesor Berkecepatan Cepat

Fungsi keanggotaan pada variabel kecepatan prosesor dirumuskan sebagai berikut: 1 x1 1,8 1,8 x1 2,6 x1 2,6 x1 1,8 atau x1 3 1,8 x1 2,6 2,6 x1 3

KecepatanMin [x1]

(2,6x1) / (2,61,8) 0

0

KecepatanMiddle [x1]

(x11,8) / (2,61,8) (3-x1) / (32,6)

0

x1 2,6 2,6 x1 3 x1 3

KecepatanMax [x1]

(x1-,26) / (32,6) 1

(3.1) Keterangan dari rumusan di atas adalah sebagai berikut :

63

-

1,8 2,6 3

Batas Atas Himpunan Fuzzy untuk variabel Batas Tengah Himpunan Fuzzy untuk variabel Batas Bawah Himpunan Fuzzy untuk variabel

kecepatan prosesor kecepatan prosesor kecepatan prosesor 3.3.4.2 Variabel Kapasitas Memory Variabel kapasitas memory dibagi menjadi tiga himpunan fuzzy, yaitu min, middle dan max. Himpunan min dan max menggunakan pendekatan fungsi keanggotaan yang berbentuk bahu, sedangkan himpunan middle menggunakan pendekatan fungsi keanggotaan berbentuk segitiga.

Min 1

Middle

Max

[x2]

0

64

256 Kapasitas (MB)

512

Gambar 3.9 Himpunan Fuzzy untuk Variabel Kapasitas Memory Keterangan dari gambar di atas adalah sebagai berikut :

64

-

Min Middle Max Fungsi

Memory Berkapasitas Kecil Memory Berkapasitas Sedang Memory Berkapasitas Besar keanggotaan pada variabel kapasitas memory

dirumuskan sebagai berikut: 1 x2 64 64 x2 256 x2 256 x2 64 atau x2 512 64 x2 256 256 x2 512

KapasitasMin [x2]

(256 x2) / (256 64) 0

0

KapasitasMiddle [x2]

(x2 64) / (256 64) (512 - x2) / (512 256)

0

x2 256 256 x2 512 x2 512

KapasitasMax [x2]

(x2 - 256) / (512 256) 1

(3.2) Keterangan dari rumusan di atas adalah sebagai berikut :

65

-

64

Batas Atas Himpunan Fuzzy untuk variabel Batas Tengah Himpunan Fuzzy untuk variabel Batas Bawah Himpunan Fuzzy untuk variabel

kapasitas memory 256 kapasitas memory 512 kapasitas memory 3.3.4.3 Variabel Kapasitas Harddisk Variabel kapasitas Harddisk dibagi menjadi tiga himpunan fuzzy, yaitu min, middle dan max. Himpunan min dan max menggunakan pendekatan fungsi keanggotaan yang berbentuk bahu, sedangkan himpunan middle menggunakan pendekatan fungsi keanggotaan berbentuk segitiga. Min 1 Middle Max

[x3]

0

40

160 Kapasitas (GB)

400

Gambar 3.10 Himpunan Fuzzy untuk Variabel Kapasitas Harddisk Keterangan dari gambar di atas adalah sebagai berikut :

66

-

Min Middle Max

Harddisk Berkapasitas Kecil Harddisk Berkapasitas Sedang Harddisk Berkapasitas Besar

Fungsi keanggotaan pada variabel kapasitas Harddisk dirumuskan sebagai berikut: 1 x3 40 40 x3 160 x3 160 x3 40 atau x2 400 40 x3 160 160 x3 400

KapasitasMin [x3]

(160 x3) / (160 40) 0

0

KapasitasMiddle [x3]

(x3 40) / (160 40) (400 - x3) / (400 160)

0

x3 160 160 x3 400 x3 400

KapasitasMax [x3]

(x3 - 160) / (400 160) 1

(3.3) Keterangan dari rumusan di atas adalah sebagai berikut :

67

-

40

Batas Atas Himpunan Fuzzy untuk variabel Batas Tengah Himpunan Fuzzy untuk variabel Batas Bawah Himpunan Fuzzy untuk variabel

kapasitas Harddisk 160 kapasitas Harddisk 400 kapasitas Harddisk 3.3.4.4 Variabel ukuran VGA Variabel ukuran VGA dibagi menjadi tiga himpunan fuzzy, yaitu min, middle dan max. Himpunan min dan max menggunakan pendekatan fungsi keanggotaan yang berbentuk bahu, sedangkan himpunan middle menggunakan pendekatan fungsi keanggotaan berbentuk segitiga.

Min 1

Middle

Max

[x4]

0

64

256 Ukuran (MB)

512

Gambar 3.11 Himpunan Fuzzy untuk Variabel Ukuran VGA Keterangan dari gambar di atas adalah sebagai berikut :

68

-

Min Middle Max

VGA Berukuran Kecil VGA Berukuran Sedang VGA Berukuran Besar

Fungsi keanggotaan pada variabel ukuran VGA dirumuskan sebagai berikut: 1 x4 64 64 x4 256 x4 256 x4 64 atau x4 512 64 x4 256 256 x4 512

UkuranMin [x4]

(256 x4) / (256 64) 0

0

UkuranMiddle [x4]

(x4 64) / (256 64) (512 - x4) / (512 256)

0

x4 512 256 x4 512 x4 512

UkuranMax [x4]

(x4 - 256) / (512 256) 1

(3.4) Keterangan dari rumusan di atas adalah sebagai berikut :

69

-

64 VGA

Batas Atas Himpunan Fuzzy untuk variabel ukuran Batas Tengah Himpunan Fuzzy untuk variabel Batas Bawah Himpunan Fuzzy untuk variabel

256 ukuran VGA 512 ukuran VGA

3.3.4.5 Variabel Ukuran Monitor Variabel ukuran monitor dibagi menjadi tiga himpunan fuzzy, yaitu min, middle dan max. Himpunan min dan max menggunakan pendekatan fungsi keanggotaan yang berbentuk bahu, sedangkan himpunan middle menggunakan pendekatan fungsi keanggotaan berbentuk segitiga. Min 1 Middle Max

[x5]

0

15

19 Ukuran (inch)

22

Gambar 3.12 Himpunan Fuzzy untuk Variabel Ukuran Monitor Keterangan dari gambar di atas adalah sebagai berikut :

70

-

Min Middle Max

Monitor Berukuran Kecil Monitor Berukuran Sedang Monitor Berukuran Besar

Fungsi keanggotaan pada variabel ukuran Monitor dirumuskan sebagai berikut: 1 x5 15 15 x5 19 x5 19 x5 15 atau x5 22 15 x5 19 19 x5 22

UkuranMin [x5]

(19 x5) / (19 15) 0

0

UkuranMiddle [x5]

(x5 15) / (19 15) (22 - x5) / (22 19)

0

x5 19 19 x5 22 x5 22

UkuranMax [x5]

(x5 - 19) / (21 19) 1

(3.5) Keterangan dari rumusan di atas adalah sebagai berikut :

71

-

15 19 22

Batas Atas Himpunan Fuzzy untuk variabel ukuran Batas Tengah Himpunan Fuzzy untuk variabel Batas Bawah Himpunan Fuzzy untuk variabel

Monitor ukuran Monitor ukuran Monitor 3.3.4.6 Variabel Kapasitas Power Supply Variabel kapasitas power supply dibagi menjadi tiga himpunan fuzzy, yaitu min, middle dan max. Himpunan min dan max menggunakan pendekatan fungsi keanggotaan yang berbentuk bahu, sedangkan himpunan middle menggunakan pendekatan fungsi keanggotaan berbentuk segitiga. Min 1 Middle Max

[x6]

0

350

500 Kapasitas (Watt)

1000

Gambar 3.13 Himpunan Fuzzy untuk Variabel Kapasitas Power Supply Keterangan dari gambar di atas adalah sebagai berikut :

72

-

Min Middle Max

Power Supply Berkapasitas Kecil Power Supply Berkapasitas Sedang Power Supply Berkapasitas Besar

Fungsi keanggotaan pada variabel kapasitas power supply dirumuskan sebagai berikut: 1 x6 350 350 x6 500 x6 500 x6 350 atau x6 1000 350 x6 500 500 x6 1000

KapasitasMin [x6]

(500 x6) / (500 350) 0

0

KapasitasMiddle [x6]

(x6 350) / (500 350) (1000 - x6) / (1000 500)

0

x6 500 500 x6 1000 x6 1000

KapasitasMax [x6]

(x6 - 500) / (1000 500) 1

(3.6) Keterangan dari rumusan di atas adalah sebagai berikut :

73

-

350 500 1000

Batas Atas Himpunan Fuzzy untuk variabel Batas Tengah Himpunan Fuzzy untuk variabel Batas Bawah Himpunan Fuzzy untuk variabel

kapasitas Power Supply kapasitas Power Supply kapasitas Power Supply

BAB IV IMPLEMENTASI DAN ANALISA SISTEM4.1Implementasi SistemImplementasi sistem pengambilan keputusan menggunakan logika fuzzy untuk penentuan paket komputer sesuai dengan kriteria konsumen. Implementasi sistem tersebut menggunakan spesifikasi perangkat komputer sebagai berikut: 1. Perangkat Keras: - AMD Athlon (tm)XP 2500+ 1.83 GHz - RAM 512 MB - Hard Disk 80 GB - CD-ROM 52 X 2. Perangkat Lunak: - Sistem Operasi Windows 98 dan Windows XP - Microsoft Visual Basic 6.0 - Microsoft Access 2003 Implementasi sistem dibagi menjadi empat bagian, yaitu: 1. Implementasi tampilan awal dan menu utama 2. Implementasi setup data 3. Implementasi pencarian paket komputer 4. Implementasi menu tambahan.

74

75

4.1.1. Implementasi Tampilan Awal dan Menu Utama Bentuk implementasi halaman login dan tampilan awal program pada sistem adalah sebagaimana yang terdapat pada Gambar 4.1 dan Gambar 4.2

Gambar 4.1 Tampilan Login Awal

Gambar 4.2 Tampilan Awal Program

76

Pada form menu utama program terdapat tiga pilihan yang masing-masing terdiri dari beberapa sub menu, yaitu: 1. Menu File, terdiri dari dua sub menu, yaitu: Main Menu, untuk kembali ke form menu utama. Keluar, yang berfungsi untuk menutup aplikasi serta keluar dari program. 2. Menu Setup Data, terdiri dari tiga sub menu, yaitu: Data Spesifikasi Komputer, yang berfungsi untuk form setup dari masing-masing

menampilkan

spesifikasi komputer, form ini berfungsi untuk mengolah data masing-masing spesifikasi komputer yang akan digunakan sebagai variabel dalam proses fuzzy. Data Batas Himpunan, yang berfungsi untuk menampilkan form batas himpunan, form ini berfungsi untuk mengolah data batas himpunan fuzzy. Data Merek, yang berfungsi untuk menampilkan form merek, form ini berfungsi untuk mengolah data merek dari masing-masing spesifikasi komputer. 3. Menu Pencarian Paket Komputer, yang berhubungan dengan dua sub menu, yaitu: Pemilihan Spesifikasi Komputer, yaitu form untuk

pemilihan masing-masing spesifikasi komputer yang

77

akan digunakan untuk penentuan paket komputer rekomendasi. Tampilan Hasil Pencarian, yaitu form untuk hasil paket komputer yang menampilkan

direkomendasikan sesuai dengan kriteria yang sudah dimasukkan serta hasilnya dalam bentuk nilai. 4. Menu Info, yaitu: Info Program, yang berfungsi untuk menampilkan

form info program, yang berisi tentang informasi pembuat program serta informasi singkat mengenai program aplikasi yang dibangun. 4.1.2. Implementasi Setup Data Implementasi setup data berisi tentang pengolahan data dalam database yang akan digunakan dalam proses fuzzy. Setup data terdiri dari tiga bagian yaitu: 1. Data Spesifikasi Komputer, yang berfungsi untuk menambah, mengubah dan menghapus data-data masingmasing spesifikasi komputer. Terdiri dari berbagai macam menu setup dari masing-masing item spesifikasi komputer (Gambar 4.3).

78

Gambar 4.3 Tampilan Setup Prosesor

2.

Data batas himpunan, yang berfungsi untuk menambah, mengubah dan menghapus data-data batas himpunan fuzzy (Gambar 4.4).

Gambar 4.4 Tampilan Data Batas Himpunan

79

Pada form ini data yang diolah berupa type jenis batas himpunan serta nilai batas himpunan, yang ditampilkan pada textbox masing-masing. Keseluruhan data ditampilkan pada objek listview, yang dapat dipilih dengan memilih salah satu data pada listview. Data dapat ditambah dengan memilih tombol Tambah, kemudian disimpan dengan memilih tombol Simpan. Data dapat diubah dengan memilih tombol Ubah, kemudian disimpan dengan memilih tombol Simpan. Data dapat dihapus dengan memilih tombol Hapus. 3. Data Merek, yang berfungsi untuk menambah, mengubah dan menghapus data-data merek (Gambar 4.5).

Gambar 4.5 Tampilan Data Merek

80

Pada form ini data yang diolah berupa data merek dari masing-masing item spesifikasi komputer. Keseluruhan data ditampilkan pada objek listview, yang dapat dipilih dengan memilih salah satu data pada listview. Data dapat ditambah dengan memilih tombol Tambah, kemudian disimpan dengan memilih tombol Simpan. Data dapat diubah dengan memilih tombol Ubah, kemudian disimpan dengan memilih tombol Simpan. Data dapat dihapus dengan memilih tombol Hapus. 4.1.3. Implementasi Pencarian Paket Komputer Implementasi pencarian paket komputer berisi tentang proses fuzzy dalam proses pencarian paket komputer yang sesuai dengan kriteria yang di-input-kan. Implementasi pencarian paket komputer terdiri dari dua proses yaitu: 1. Pemilihan masing-masing spesifikasi komputer, yang berfungsi untuk memilih kriteria-kriteria yang sesuai dengan keinginan pemakai. Kriteria-kriteria tersebut berfungsi sebagai variabel fuzzy.

81

4.1.3.1.

Cari Prosesor

Gambar 4.6 Tampilan Pencarian Prosesor

Pada form ini data yang diolah yaitu, pada frame Data Prosesor terdapat TypeID, Merek Prosesor, Jenis Prosesor, Socket dan Core. Pada frame Kecepatan Prosesor, terdapat pemilihan kecepatan Kecil, Sedang atau Besar yang diolah dengan menggunakan objek option button. Pada frame Harga Prosesor, terdapat pemilihan harga Murah, Normal atau Mahal yang diolah dengan menggunakan objek option button. Pada frame Gambar Prosesor terdapat data gambar yang dapat tampil jika pengguna mengklik data pada listview. Pengguna dapat memulai pencarian dengan mengisi data pada frame Data Prosesor, frame Kecepatan Prosesor dan frame Harga Prosesor secara lengkap, dan kemudian tekan tombol Search. Maka keseluruhan hasil pencarian ditampilkan pada objek listview. Hasil

82

pencarian diurutkan sesuai dengan nilai MuRekomendasi, dari besar ke kecil. Adapun pemilihan kecepatan prosesor dan harga prosesor dideklarasikan dengan bentuk : If Me.ProsesorKecepatan = GRADE_MAX Then VarKecepatan = "MUMAX" ElseIf Me.ProsesorKecepatan = GRADE_MIDDLE Then VarKecepatan = "MUMIDDLE" Else VarKecepatan = "MUMIN" End If If Me.ProsesorHarga = VALUE_EXPENSIVE Then VarHarga = "MUMAHAL" ElseIf Me.ProsesorHarga = VALUE_INTERMEDIATE Then VarHarga = "MUNORMAL" Else VarHarga = "MUMURAH" End If Rumusan dari pencarian nilai fuzzy untuk variabel kecepatan prosesor adalah sebagai berikut:IIf(KECEPATAN=MIDDLE,0,((MIDDLEKECEPATAN)/ (MIDDLE-MIN))))) AS MuMin IIf((IIf(KECEPATAN=MAX, 0, (IIf(KECEPATAN>=MIN Or KECEPATAN=1, ((MAX-KECEPATAN) / (MAX-MIDDLE)), (IIf(KECEPATAN=MAX, 0, (IIf(KECEPATAN>=MIN Or KECEPATAN=MAX,1, (IIf(KECEPATAN=MURAH Or HARGA=1, ((MAHAL-HARGA)/(MAHAL-NORMAL)), (IIf(HARGA=MAHAL,0, (IIf(HARGA>=MURAH Or HARGA=MAHAL,1, (IIf(HARGA