commit to user
i
SISTEM PENDUKUNG KEPUTUSAN MEMILIH PRODUK PONSEL BERBASIS WEB
TUGAS AKHIR
Diajukan Untuk Memenuhi Salah Satu Syarat Mencapai Gelar Ahli Madya Program Diploma III Teknik Informatika Fakultas Matematika dan Ilmu
Pengetahuan Alam Universitas Sebelas Maret
Disusun Oleh:
DAVID YOSUANTO
NIM.M3309012
PROGRAM DIPLOMA III TEKNIK INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
commit to user
DAVID YOSUANTO, 2012. SISTEM PENDUKUNG KEPUTUSAN MEMILIH
PRODUK PONSEL BERBASIS WEB. Program Diploma III Teknik Informatika, Fakultas
Matematika dan Ilmu Pengetahuan Alam, Universitas Sebelas Maret Surakarta.
Di tahun 2012 diprediksikan volume ponsel di Indonesia akan menembus angka 4,5 juta unit/bulan. Dengan persentasi pertumbuhan mencapai 10 – 15 persen. Oleh sebab itu maka dibutuhkan sebuah sistem menggunakan metode fuzzy yang membatu user menentukan keputusan dalam memilih produk ponsel dengan hasil akhir berupa peringkat rekomendasi dalam persentase dari ponsel yang sesuai dengan kriteria user.
Metode pengembangan sistem yang digunakan Sistem Pendukung Keputusan Memilih Produk Ponsel Berbasis Web dengan mode pengembangan SDLC (System Development Cycle) menurut teori Ladjamudin (2005), yang berfungsi untuk menggambarkan tahap-tahap utama dan langkah-langkah dari setiap tahap yang secara garis besar terbagi dalam tiga kegiatan utama, yaitu analisis, desain dan implementasi. Sistem ini dibuat dengan bahasa pemrograman PHP dan DBMS MySQL untuk memanajemen databasenya.
Hasil yang telah dicapai dari dibuatnya Sistem Pendukung Keputusan Memilih Produk Ponsel Berbasis Web yaitu terbantunya masyarakat dalam menentukan keputusan memilih produk ponsel dan mendapatkan informasi mengenai detail produk ponsel.
ABSTRACT
DAVID YOSUANTO, 2012. WEB BASED DECISION SUPPORT SYSTEM TO
CHOOSE MOBILE PHONE PRODUCT. Diploma III Information Engineering Program,
Faculty of Mathematics and Natural Sciences,Universitas Sebelas Maret.
In 2012 it was predicted that the volume of mobile phones in Indonesia would break the 4.5 million units / month. With the percentage growth achieved 10-15 per cent. Therefore it is necessary to build a system using fuzzy method that petrified user determining the decision in choosing mobile products with the end result of the recommendations in the percentage ranking of the mobile phone according to user criteria.
System development method used was development of SDLC (System Development Cycle) method according to the theory Ladjamudin (2005). SDLC which serves to illustrate the major stages and steps of each stage that are broadly divided into three main activities, namely analysis, design and implementation. The system was created by PHP programming language and MySQL Database Management System to manage its database.
commit to user
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Perkembangan teknologi informasi telah membawa sejumlah perubahan
dalam kehidupan masyarakat dunia, tidak terkecuali masyarakat di Indonesia.
Berdasarkan survei dari Nielsen, dibandingkan dengan negara - negara di Asia
Tenggara, persentase pengguna ponsel di Indonesia meningkat paling besar, yaitu
dari 23 persen menjadi 53 persen dalam empat tahun terakhir (Gunawan,
www.tribunnews.com/2011/05/31/pengguna-ponsel-naik-menjadi-53-persen,
akses 10 Mei 2012).
Dengan begitu banyaknya pengguna ponsel hal ini berpengaruh terhadap
jumlah ponsel yang beredar di masyarakat. Di tahun 2012 diprediksikan volume
ponsel di Indonesia akan menembus angka 4,5 juta unit/bulan. Dengan persentasi
pertumbuhan mencapai 10 – 15 persen. Selain pengguna ponsel dan volume
ponsel yang bertambah para produsen ponsel pun berlomba - lomba untuk
membuat ponsel sesuai kriteria konsumen.
Berbagai variasi produk ponsel yang beredar, dari ponsel kelas low-end
hingga high-end, akan menimbulkan masalah tersendiri bagi konsumen.
Konsumen tidak jarang merasa bingung dalam menentukan keputusan untuk
memilih ponsel yang sesuai dengan keinginan dan kemampuan mereka. Alasan
tersebut diataslah yang mendorong penulis memilih “Sistem Pendukung
Keputusan Memilih Produk Ponsel Berbasis Web” sebagai judul Tugas Akhir.
1.2 Perumusan Masalah
Berdasarkan latar belakang di atas dapat diambil perumusan masalah sebagai
berikut:
1. Bagaimana membuat website yang menyediakan informasi mengenai
commit to user
2. Bagaimana membuat website yang dapat membandingkan antara produk
ponsel satu dengan yang lainnya.
3. Bagaimana membuat website yang membatu user menentukan keputusan
dalam memilih produk ponsel.
1.3 Batasan Masalah
Berdasarkan rumusan masalah di atas dapat diambil batasan masalah sebagai
berikut:
1. Data sampel brand yang digunakan yaitu HTC, Motorola, Nokia, Samsung
dan Sony Ericsson.
2. Menyajikan informasi detail spesifikasi ponsel seperti brand, type,
simcard, network band, announced, price, formfactor, height, width,
thickness, volume, weight, cardslotcapability dll.
3. Fasilitas perbandingan (compare) digunakan untuk membadingkan 2 (dua)
ponsel yang berbeda.
4. Metode DSS yang digunakan adalah metode fuzzy tahani.
5. Variabel – variabel yang termasuk dalam variabel fuzzy yaitu
batmusicplay, batstandby, battalktime, cameraresolution,
cardslotcapability, cpuspeed, displaypixeldensity, displaysize, price,
thickness, volume, weight.
6. Menggunakan 3 (tiga) himpunan fuzzy di tiap variabelnya (variabel
fuzzy).
1.4 Tujuan
Penulisan ini bertujuan untuk mengimplementasikan sebuah sistem
commit to user
1.5 Manfaat
Manfaat dari adanya website ini diharapkan masyarakat terbantu dalam
menentukan keputusan memilih produk ponsel dan mendapatkan informasi
mengenai detail produk ponsel.
1.6 Metodologi Pengembangan Sistem
Proses/fase dalam metodologi pengembangan Sistem Pendukung Keputusan
Memilih Produk Ponsel Berbasis Web yaitu :
1. Analisa
Pada fase analisa meliputi:
a. Analisa kebutuhan system
a) Kebutuhan Fungsional
b) Kebutuhan Non Fungsional
2. Desain dan Perancangan
Pada fase analisa meliputi:
a. Perancangan Database
a) Membuat Context Diagram, Data Flow Diagram
b) Membuat EntityRelationship Diagram
c) Membuat Tabel relasi, Struktur Tabel
b. Desain Interface
a) Desain Interface halaman user
b) Desain Interface halaman admin
3. Implementasi
Pada fase implementasi meliputi:
a. Membuat database
b. Membuat query
c. Pemrograman
commit to user
4. Maintenance
Pada fase ini sistem yang dibuat akan diperbaiki dan ditingkatkan
sehingga menghasilkan sistem yang lebih teruji.
1.7 Sistematika Penulisan
Terdapat 5 bab yang masing - masing akan diuraikan secara singkat dalam
sistematika penulisan sebagai berikut: BAB I PENDAHULUAN, bab ini
merupakan bab awal dalam laporan penelitian ini. Bab ini berisi latar belakang
masalah, perumusan masalah, batasan masalah, tujuan dan manfaat, metodologi
penelitian, serta sistematika penelitian. BAB II LANDASAN TEORI, bab ini
memuat tinjauan pustaka teori-teori yang disajikan dalam landasan teori
hanyalah teori yang mendukung pembuatan Sistem Pendukung Keputusan
Memilih Produk Ponsel Berbasis Web. BAB III DESAIN DAN
PERANCANGAN, bab ini memuat data - data yang diperlukan dalam
perancangan sistem, yaitu context diagram, data flow diagram, entity
relationshp diagram, tabel relasidan desain interface. BAB IV IMPLEMENTASI
DAN ANALISA, bab ini memuat informasi mengenai bagaimana sistem dibuat
dan analisa yang disajikan dalam gambar. BAB IV PENUTUP, bab ini berisi
commit to user
5
BAB II
LANDASAN TEORI
2.1HTML dan CSS
HTML singkatan dari Hypertext Markup Language. HTML digunakan untuk
membuat halaman web. Sebuah file dokumen yang ditulis dalam format HTML
akan dibaca dan diterjemahkan oleh web browser untuk kemudian disajikan
dalam bentuk web. File – file yang ditulis dalam format HTML disimpan dengan
ekstensi .htm atau .html. File – file tersebut dapat ditulis dengan berbagai macam
teks editor, misalnya Notepad, Wordpad, dan lain sebagainya. (Ramadhan, 2006)
CSS (Cascading Style Sheet) digunakan untuk mempercantik halaman web.
Seperti halnya Javascript, CSS merupakan bahasa yang disipkan pada tag HTML
(Sutisna, 2008).
2.2SQL
SQL merupakan singkatan dari Structure Query Language. SQL merupakan
bahasa komputer standar ANSI (American National Standards Institute). Dengan
SQL pemakai dapat mengakses database, menjalankan query untuk mengambil
data dari database, menambahkan data ke database, menghapus data di dalam
database, dan meng-update data di dalam database.
Menurut Suja (2005), SQL tersedia dalam banyak versi. MS Access, DB2,
Informix, MS SQL Server, Oracle, Sybase, MySql, dan sebagainya. Masing -
masing memiliki versi sendiri karena memiliki ekstensi sendiri sebagai tamahan
terhadap SQL ANSI. Bahasa SQL seperti yang didefinisikan oleh ANSI tersusun
atas 3 kelompok pernyataan berdasarkan fungsinya.
1. Data Definition Language (DDL) terdiri atas perintah perintah SQL yang
secara langsung membuat obyek database seperti tabel dan indeks. Namun
commit to user
ketika proses, tidak dimasukkan dalam kelompok DDL. Contoh Peintah
SQL yang masuk kategori ini adalah SELECT.
2. Data Manupulation Language (DML) terdiri atas perintah – perintah yang
beroperasi pada data di dalam database. Ini mencapup pernyataan -
peryataan untuk menambahkan data ke dalam tabel atau pernyataan yang
dipakai untuk melakukan query terhadap database.
3. Data Control Language berisi perintah – perintah dalam kelompok yang
merupakan perintah yang dipakai untuk pengaturan keamanan.
2.3PHP dengan MySql
Database merupakan kumpulan data yang di dalamnya terdapat tabel – tabel.
Jika kita berbicara mengenai database, sebenarnya mengacu pada bentuk data
relational yang terdiri dari baris (row/record) dan kolom (column/field).
Perangkat lunak PHP mendukung perangkat lunak Database konventional
(database tunggal). Hingga database modern (database server) (Supardi, 2010).
Database MySQL tergolong database server, PHP sangat serasi dengan
server web apache dan database MySql. Beberapa perintah penting di database
server MySql antara lain :
1. create databae
2. use
3. create Table
4. inser Into
5. select
Masih banyak lagi perintah – perintah MySql. PHP mempunyai beberapa
fungsi yang penting untuk mengakses database server MySql, fungsi – fungsi
tersebut antara lain:
1. mysql_connect()
2. mysql_select_db()
3. mysql_query()
commit to user
2.4CD (Context Diagram)
Menurut Rosari (2007), CD adalah bagian dari Data Flow Diagram (DFD)
yang berfungsi memetakan model lingkungan, yang dipresentasikan dengan
lingkaran tunggal yang mewakili keseluruhan sistem. CD menyoroti sejumlah
karakteristik penting sistem yaitu :
1. Kelompok pemakai, organisasi atau sistem lain dimana sistem melakukan
komunikasi (sebagai terminator).
2. Data masuk yaitu data yang diterima sistem dari lingkungan dan harus
diproses dengan cara tertentu.
3. Data keluar, yaitu data yang dhasilkan sistem dan diberikan ke dunia luar.
4. Penyimpanan data (storage) yaitu digunakan secara bersama antara sistem
dengan terminator. Data itu dapat dibuat oleh sistem dan digunakan oleh
lingkungan atau sebaliknya.
5. Batasan antara sistem dengan lingkungan.
Pada perancangan database menentukan entity dan relasi dibutuhkan analisa
data sehingga saat salah satu data di-update maka data lain akan ikut ter-update.
Maka dari itu pada struktur data dan relasi antar file seharusnya ada atribut (field)
yang dipilih untuk dijadikan kunci utama atribut (primary key) maupun Foreign
Key (Rosari, 2007).
1. Primary Key adalah satu atribut mengidentifikasi suatu entity secara unik,
spesifik dan dapat mewakili setiap kejadian dari suatu entity dan
menyeluruh terhadap entity yang ada.
2. Foreign Key adalah satu atribut yang melengkapi sebuah relasi tabel yang
menunjuk kepada induk tabelnya. Hubungan antara induk dan anak tabel
commit to user 2.5DFD (Data Flow Diagram)
DFD merupakan salah satu komponen dalam serangkaian pembuatan
perancangan sebuah sistem komputerisasi. DFD menggambarkan aliran data dari
sumber pemberi data (input) ke penerima data (output). Aliran data itu perlu
diketahui agar pembuat sistem tahu persis kapan sebuah data harus disimpan,
kapan harus ditanggapi (proses), dan kapan harus didistribusikan ke bagian lain
(Riyadi, 2010).
Komponen-komponen DFD ditunjukkan pada gambar 2.1:
atau
Terminator Proses Alur Data Penyimpan Data (data store)
Gambar 2.1 Komponen-komponen DFD
1. Terminator, terminator dapat disebut juga ‘Kesatuan Luar’ yaitu suatu unit
kerja/ jabatan, atau sejenisnya yang berada di luar sistem tetapi memberi
andil atas pemberian atau penerimaan data dari sistem secara langsung.
Terminator dapat pula disebut dengan ‘Sumber Pemberi Data (input),’
maupun ‘Tujuan Pemberian Data (output)’.
2. Proses, proses adalah suatu tindakan yang akan diambil terhadap data yang
masuk. Karena proses adalah tindakan, maka proses berisi kata kerja,
Proses diberikan identifikasi (nomor) agar mempermudah sekuen untuk
diagram detilnya.
3. Alur Data, alur data menggambarkan data yang mengalir dari terminator
ke proses atau dari proses ke proses lainnya. Data yang dibawa oleh alur
data harus disebutkan dan diletakkan di atas lambang alur data dan bila
alur data digambar panjang, sebaiknya penulisan data mendekati lambang
anak panahnya.
4. Penyimpan Data (Data Store), data yang akan disimpan perlu ditempatkan
commit to user
manual maupun data digital. Untuk data digital, penyimpan data tersebut
kelak akan dijadikan file data di komputer. Alur data yang anak panahnya
menuju penyimpan data, kegiatannya adalah ‘menulis/merekam’ data,
sehingga isi file data akan berubah karenanya. Sedangkan alur data yang
anak panahnya menuju ke proses dari penyimpan data, kegiatannya adalah
‘membaca’ data, sehingga isi file data tidak akan berubah karenanya.
2.6ERD (Entity Relation Diagram)
ERD merupakan model data berupa notasi grafis dalam pemodelan data
konseptual yang menggambarkan hubungan antara penyimpan. Model data sendiri
merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang
hubungannya satu sama lain, semantiknya, serta batasan konsistensi. Model data
terdiri dari model hubungan entitas dan model relasional (Kristanto, 2004).
2.9Logika Fuzzy
Logika fuzzy merupakan salah satu komponen pembentuk soft computing.
Logika fuzzy pertama kali diperkenalkan oleh Prof. Lotfi A. Zadeh pada tahun
1965. Dasar logika fuzzy adalah teori himpunan fuzzy, peranan derajat
keanggotaan sebagai penentu keberadaan elemen dalam suatu himpunan sangatlah
peting. Nilai keanggotaan atau derajat keanggotaan atau membership function
menjadi ciri utama dari penalaran dengan logika fuzzy tersebut (Kusumadewi dan
Purnomo, 2010).
Menurut Kusumadewi dan Purnomo (2010), dalam banyak hal, logika fuzzy
digunakan sebagai suatu cara untuk memetakan permasalahan dari input menuju
ke output yang diharapkan. Beberapa contoh yang dapat diambil antara lain :
1. Manajer pergudangan mengatakan pada manajer produksi seberapa
banyak persediaan barang pada akhir inggu ini, kemudian manajer
produksi akan menetapkan jumlah barang yang harus diproduksi esok hari.
2. Seseorang pegawai melakukan tugasnya dengan kinerja yang sangat baik,
kemudian atasan akan memberikan reward yang sesuai dengan kinerja
commit to user
Salah satu contoh pemetaan suatu input output dalam bentuk grafis seperti
terlihat pada gambar.
Gambar 2.2 Contoh Pemetaan Input-Output (Gelley, 2000)
Logika fuzzy dapat dianggap sebagai kotak hitam yang menghubungkan
antara ruang input menuju ke ruang output (Gelley, 2000). Kotak hitam tersebut
berisi cara atau metode yang dapat digunakan untuk mengolah data input menjadi
output dalam bentuk informasi yang baik (Kusumadewi dan Purnomo, 2010).
2.9.1 Himpunan Fuzzy
Menurut Kusumadewi dan Purnomo (2010), pada himpunan tegas (crisp),
nilai kesnggotaan suatu item x dalam suatu himpunan A, yang sering ditulis
dengan µA(x), memiliki dua kemungkinan, yaitu :
· Satu (1), yang berarti bahwa suatu item menjadi anggota dalam suatu
himpunan, atau
· Nol (0), yang berarti bahwa suatu item tidak menjadi anggota dalam suatu
himpunan.
Contoh 1:
S = {1,2,3,4,5,6}
A = {1,2,3}
commit to user
Bisa dikatakan bahwa :
· Nilai keanggotaan 2 pada himpunan, µA(2)=1.
· Nilai keanggotaan 3 pada himpunan, µA(3)=1.
· Nilai keanggotaan 4 pada himpunan, µA(4)=0.
· Nilai keanggotaan 2 pada himpunan, µB(2)=0.
· Nilai keanggotaan 3 pada himpunan, µB(3)=1.
Contoh 2:
Misalkan variabel umur dibagi menjadi 3 kategori, yaitu:
a. MUDA umur < 35 tahun
b. PAROBAYA 35 < umur < 55 tahun
c. TUA umur > 55 tahun
Gambar 2.3 Himpunan: MUDA, PAROBAYA, dan TUA
· Apabila seseorang berusia 34 tahun, maka ia dikatakan MUDA,
(µMUDA(34)=1).
· Apabila seseorang berusia 35 tahun, maka ia dikatakan TIDAK MUDA
(µMUDA(35)=0).
· Apabila seseorang berusia 35 tahun kuang 1 hari, maka ia dikatakan
MUDA (µMUDA(35th – 1hr)=0).
· Apabila seseorang berusia 35 tahun, maka ia dikatakan PAROBAYA
commit to user
· Apabila seseorang berusia 34 tahun, maka ia dikatakan TIDAK
PAROBAYA (µPAROBAYA(34)=0).
· Apabila seseorang berusia 55 tahun, maka ia dikatakan PAROBAYA
(µPAROBAYA(55)=1).
· Apabila seseorang berusia 35 tahun kurang 1 hari, maka ia dikatakan
TIDAK PAROBAYA (µPAROBAYA(35th – 1hr)=0).
Dari sini bisa dikatakan bahwa pemakaian himpun crisp untuk menyatakan
umur sangat tidak adil, adanya perubahan kecil saja pada suatu nilai
mengakibatkan perbedaan kategori yang cukup signifikan (Kusumadewi dan
Purnomo, 2010).
Himpunan fuzzy digunakan untuk mengantisipasi hal tersebut. Seseorang
dapat masuk dalam 2 himpunan yang berbeda, MUDA dan PAROBAYA,
PAROBAYA dan TUA, dsb. Seberapa besar eksistensinya dalam himpunan
tersebut dapat dilihat pada nilai keanggotaannya (Kusumadewi dan Purnomo,
2010). Gambar dibawah menunjukkan himpunan fuzzy untuk variabel umur.
Gambar 2.4 Himpunan Fuzzy untuk Variabel Umur
Pada gambar diatas dapat dilihat bahwa:
· Seseorang yang berumur 40 tahun, termasuk dalam himpunan MUDA dengan µMUDA(40) = 0,25; namun dia juga termasuk dalam himpunan
commit to user
· Seseorang yang berumur 50 tahun, termasuk dalam himpunan MUDA
dengan µTUA(50) = 0,25; namun dia juga termasuk dalam himpunan
PAROBAYA dengan µPAROBAYA(50)=0,5.
Kalau pada himpunan crisp, nilai keanggotaan hanya ada 2 kemungkinan,
yaitu 0 atau 1, pada himpunan fuzzy nilai keanggotaan terletak pada rentang 0
sampai 1. Apabila x memiliki nilai keanggotaan fuzzy µA(x)=0 berarti x tidak
menjadi anggota himpunan A, demikian pula apabila x memiliki nilai
keanggotaan fuzzy µA(x)=1 berarti x menjadi anggota penuh pada himpunan A
(Kusumadewi dan Purnomo, 2010).
Terkadang kemiripan antara keanggotaan fuzzy dengan probabilitas
menimbulkan kerancuan. Keduanya memiliki nilai pada interval [0,1], namun
interpretasi nilainya sangat berbeda antara kedua kasus tersebut. Kenganggotaan
fuzzy memberikan suatu ukuran terhadap pendapat atau keputusan, sedangkan
probabilitas mengindikasikan proporsi terhadap keseringan suatu hasil bernilai
benar dalam jangka panjang (Kusumadewi dan Purnomo, 2010).
Menurut Kusumadewi dan Purnomo (2010), himpunan fuzzy memiliki 2
atribut, yaitu :
a. Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau
kondisi tertentu denganmenggunakan bahasa alami, seperti : MUDA,
PAROBAYA, TUA.
b. Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suati
variabel seperti : 40, 25, 50, dsb.
Menurut Kusumadewi dan Purnomo (2010), ada beberapa hal yang perlu
diketahui dalam memahami sistem fuzzy, yaitu:
a. Variable fuzzy, variabel fuzzy merupakan variabel yang hendak dibahas
dalam suatu sistem fuzzy. Contoh : umur, temperatur, permintaan, dsb.
b. Himpunan fuzzy, himpunan fuzzy merupakan suatu grup yang mewakili
commit to user
c. Semesta Pambicaraan, semesta pembicaraan adalah keseluruhan nilai yang
diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Semesta
pembicaraan merupakan himpunan bilangan real yang senantiasa
naik(bertambah) secara monoton dari kiri ke kanan. Nilai semesta
pembicaraan dapat berupa bilangan positif maupun negatif. Adakalanya
nilai semesta pembicaraan ini tidak dibatasi batas atasnya.
d. Domain, domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan
dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan
fuzzy. Seperti alnya semesta pembicaraan, domain merupakan himpunan
bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke
kanan. Nilai domain dapat berupa bilangan positif maupun negatif.
2.9.2 Fungsi Keanggotaan
Menurut Kusumadewi dan Purnomo (2010), fungsi Keanggotaan
(membership function) adalah suatu kurva yang menunjukkan pemetaan titik -
titik input data ke dalam nilai keanggotaannya(sering juga disebut dengan derajat
keanggotaan) yang memiliki inyerval antara 0 sampai 1. Salah satu cara yang
dapat digunakan untuk mendapatkan nilai keanggotaan dalah dengan melalui
pendekatan fungsi. Ada beberapa fungsi yang bisa digunakan :
a. Representasi Linear
Pada representasi linear, pemetaan input ke derajat kenaggotaannya
digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana dan
menjadi pilihan yang baik untuk mendekati suatu konsep yang kurang
jelas. (Kusumadewi dan Purnomo, 2010).
Ada 2 keadaan himpunan fuzzy yang linear. Pertama, kenaikan
himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan
nol (0) bergerak ke kanan menuju ke nilai domain yang memiliki derajat
commit to user
Gambar 2.5 Representasi Linear Naik
Gambar 2.6 Fungsi Keanggotaan Kurva Linear Naik
Ke dua, merupakan kebalikan yang pertama. Garis lurus dimulai dari
nilai domain dengan derajar keanggotaan tertinggi pada sisis kiri,
kemudian bergerak menurun ke nilai domain yang memiliki derajar
keanggotaan lebih rendah.
commit to user
Gambar 2.8 Fungsi Keanggotaan Kurva Linear Turun
b. Representasi Kurva Segitiga
Kurva segitiga pada dasarnya merupakan gabungan antara 2 garis
(linear) (Kusumadewi dan Purnomo, 2010).
Gambar 2.9 Kurva Segitiga
Gambar 2.10 Fungsi Keanggotaan Kurva Segitiga
c. Representasi Kurva Trapesium
Kurva Segita pada dasarnya seperti bentuk segitiga, hanya saja ada
beberapa tititk yang memiliki nilai keanggotaan 1 (Kusumadewi dan
commit to user
Gambar 2.11 Kurva Trapesium
Gambar 2.12 Fungsi Keanggotaan Kurva Trapesium
d. Representasi Kurva Bentuk Bahu
Daerah yang terletak di tengah-tengah suatu variabel yang
direpresentasikan dalam benyuk segitiga, pada sisi kanan dan kirinya akan
naik dan turun (misalkan : DINGIN bergerak ke SEJUK bergerak ke
HANGAT dan bergerak ke PANAS). Tetapi terkadang salah satu sisi dari
variabel tersebut tidak mengalami perubahan (Kusumadewi dan Purnomo,
commit to user
Gambar 2.13 Daerah Bahu pada Variabel TEMPERATUR
e. Representasi Kurva-S
Kurva PERTUMBUHAN dan PENYUSUTAN merupakan kurva-S
atau sigmoid yang berhubungan dengan kenaikan dan penurunan
permukaan secara tak linear.
Gambar 2.14 Karakteristik Fungsi Kurva-S
f. Representasi Kurva Bentuk Lonceng (Bell Curve)
Menurut Kusumadewi dan Purnomo, (2010), untuk merepresentasikan
commit to user
bebrbentuk lonceng ini terbagi atas 3 kelas, yaitu himpunan fuzzy PI, beta
dan Gayss. Perbedaan kurva ini terletak pada gradiennya.
1. Kurva PI
Menurut Cok (1994) dalam Kusumadewi dan Purnomo (2010),
kurva PI berbentuk lonceng dengan derajat keanggotaan 1 terletak pada pusat dengan domain (γ), dan lebar kurva (β).
Gambar 2.15 Karakteristik Fungsional Kurva PI
2. Kurva BETA
Menurut Cok (1994) dalam Kusumadewi dan Purnomo (2010),
seperti halnya kurva PI, kurva BETA juga berbentuk lonceng namun
commit to user
Gambar 2.16 Karakteristik Fungsional Kurva BETA
3. Kurva GAUSS
Menurut Cok (1994) dalam Kusumadewi dan Purnomo (2010), jika kurva PI dan kurva BETA menggunakan 2 parameter yaitu (γ) dan (β), kurva GAUSS juga menggunakan (γ) untuk menunjukkan nilai domain pada pusat kurva, dan (k) yang menunjukkan lebar kurva.
commit to user 2.9.3 Operator Dasar Zadeh
Menurut Cok (1994) dalam Kusumadewi dan Purnomo (2010), seperti halnya
himpunan konvensional, ada beberapa operasi yang didefinikan secara khusus
untuk mengkombinasikan dan memodifikasi himpunan fuzzy. Nilai
keanggotaannya sebagai hasil dari operasi 2 himpunan sering dikenal dengan nama fire strength atau α-predikat. Ada 3 operator dasar yang diciptakan oleh Zadeh, yaitu :
1. Operator AND
Operator ini berhubungan dengan operasi interseksi pada himpunan. α
-predikat sebagai hasil operasi dengan operator AND diperoleh dengan
mengambil nilai keanggotaan terkecil antarelemen pada
himpunan-himpunan yang bersangkutan.
µAnB = min(µA(x), µB(y))
2. Operator OR
Operator ini berhubungan dengan operasi union pada himpunan, α
-predikat sebagai hasil operasi dengan operator OR diperoleh dengan
mengambil nilai keanggotaan terbesaar antarelemen pada
himpunan-himpunan yang bersangkutan.
µAuB = max(µA(x), µB(y))
3. Operator NOT
Operator ini berhubungan dengan operasi komplemen pada himpunan. α
-predikat sebagai hasil operasi dengan operator NOT diperoleh dengan
mengurangkan nilai keanggotaan elemen pada himpunan yang
bersangkuan dari 1.
commit to user
2.9.4 Fuzzy Database
Basisdata (database) merupakan kumpulan dari data yang saling
berhubungan satu dengan yang lainnya, tersimpan di perangkat keras komputer
dan digunakan perangkat lunak untuk memanipulasinya. Sistem basisdata
(database system) adalah suatu sistem informasi yang mengintegrasikan
kumpulan data yang saling berhubungan satu dengan yang lainnya dan
membuatnya tersedia untuk beberapa aplikasi dalam suatu organisasi
(Kusumadewi dan Purnomo, 2010).
Basisdata yang umumnya digunakan, memiliki data yang lengkap dalam
setiap tabelnya. Demikian pula, apabila hendak dibuat suatu query, maka query
itupun harus menggunakan data yang ada pada tabel dan kata-kata kunci yang
berlaku si SQL. Apabila kita memiliki data yang kurang lengkap, mengandung
ketidakpastian dan ambigu, maka penggunaan basisdata sulit untuk dilakukan.
Dari sinilah dapat dimanfaatkan logika fuzzy untuk mengantisipasi
pemanipulasian data dalam basisdata yang mengandung ketidakpastian, baik dari
sisi data maupun query-nya .
2.9.4.1Metode Fuzzy Database Model Tahani
Pada Akhir abad ke-19 hingga akhir abad ke-20, teori probabilitas memegang
peranan penting untuk penyelesaian masalah ketidakpastian. Teori ini terus
berkembang, hingga akhirnya pada tahun 1965, Lotfi A. Zadeh memperkenalkan
teory himpunan fuzzy, yang secara tidak langsung mengisyaratkat bahwa tidak
hanya teori probabilitas saja yang dapat digunakan untuk merepresentasikan
masalah ketidakpastian. Pada teori himpunan fuzzy, komponen utama yang
sangat berpengaruh adalah fungsi keanggotaan. Fungsi keanggotaan
merepresentasikan derajat kedekatan suatu objek terhadap atribut tertentu
(Kusumadewi dan Purnomo, 2004).
Database adalah kumpulan dari data yang saling berhubungan satu dengan
yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat
commit to user
adalah suatu sistem informasi yang mengintegrasikan kumpulan data yang saling
berhubungan satu dengan yang lainnya dan membuatnya tersedia untuk beberapa
aplikasi dalam suatu organisasi. Pada kenyataannya seseorang terkadang
membutuhkan informasi dari data-data yang bersifat ambiguous. Apabila hal ini
terjadi, maka bisa digunakan basis data fuzzy. Selama ini, sudah ada beberapa
penelitian tentang basis data fuzzy, salah satu diantaranya adalah Model Tahani.
Basis data fuzzy model tahani masih tetap menggunakan relasi standar, hanya saja
model ini menggunakan teori himpunan fuzzy untuk mendapatkan informasi pada
query-nya.
Fuzzy database model tahani ini masih tetap menggunakan relasi standar,
hanya saja model ini menggunakan teori himpunan fuzzy untuk mendapatkan
informasi pada query-nya. Tahani mendeskripsikan suatu metode pemrosesan
query fuzzy dengan didasarkan atas manipulasi bahasa yang dikenal dengan nama
SQL.
Dalam sistem logika fuzzy query ini berupaya mencapai sebuah kelenturan
(flexibility) dari sebuah DBMS yang mana mempunyai aspek-aspekvariasi (motro,
1988) seperti koreksi kesalahan secara otomatis, pencarian fleksibel, kemampuan
menghindari respon kosong, kemungkinan dari ketepatan (fuzzy) istilah ucapan
atau sebutan dalam sebuah query. Pendekatan pertama dalam fuzzy query ke
DBMS adalah Tahani (1997). Ide dari Sistem Basis Data Fuzzy Model Tahani
adalah mendefinisikan konsep dari relasi fuzzy dalam sebuah DBMS dengan
commit to user
52 BAB IV
IMPLEMENTASI DAN ANALISA
4.1 Implementasi
Imlementasi sistem dilakukan dengan beberapa tahap pengerjaan.
Tahapan-tahapan tersebut yaitu tahap membuat database, tahap membuat query, dan tahap
pemrograman/coding.
4.1.1 Membuat Database
Pembuatan database dilakukan dengan menggunakan aplikasi DBMS
MySQL 5.1.41 pada XAMPP version 1.7.3. Database dibuat melalui user
interface dari XAMPP yang diakses melalui web browser Mozilla Firefox 12.
Database dibuat dengan nama mobilephone. Dalam database mobilephone
terdapat 26 tabel yang digunakan untuk meny-9impan data-data yang dibutuhkan
dalam sistem, yaitu tabel admin, tabel availability, tabel brand, tabel cardslottype,
tabel comment, tabel cpucore, tabel dataspeed, tabel displaycolor, tabel
displayresolution, tabel displaytechnology, tabel dolike, tabel edge, tabel
formfactor, tabel fuzzyrule, tabel fuzzyset, tabel gprs, tabel image, tabel
keypadtype, tabel membershipdegree, tabel message, tabel news, tabel opinions,
tabel os, tabel phone, tabel simcard, tabel touchscreen ditunjukkan pada gambar
commit to user
Gambar 4.1 Halaman phpmyadmin Database mobilephone
4.1.2 Membuat Query
Ada banyak query yang digunakan untuk memanipulasi data-data yang
tersimpan dalam database Sistem Pendukung Keputusan Memilih Produk Ponsel
Berbasis Web. Query-query tersebut diantaranya digunakan untuk:
1. Menampilkan data ponsel tertentu :
SELECT * FROM `phone` WHERE `brand` = 'Nokia' AND `type` =
'C2-05'.
2. Menampilkan data hasil pencarian ponsel :
SELECT * FROM `phone` INNER JOIN `membershipdegree` ON
phone.type = membershipdegree.type WHERE phone.simcard = '2 GSM
sims' AND membershipdegree.weight1 > 0 AND phone.os = 'Windows
commit to user 4.1.3 Pemrograman
Pemrograman dilakukan dengan metode prosedural, bahasa pemrograman
yang digunakan adalah PHP 5.3.1 dengan web server Apache 2.2.14 dan software
pendukung Adobe Dreamweaver CS5.
4.2 Analisa
4.2.1 Fitur Administrator
Di dalam Sistem Pendukung Keputusan Memilih Produk Ponsel Berbasis
Web terdapat beberapa fungsi yang bertugas mengendalikan dan mengontrol
sistem di antaranya adalah kemampuan dalam menangani data news/berita, data
ponsel, data image ponsel, data batasan himpunan fuzzy, data himpunan fuzzy dan
fuzzifikasi. Berikut adalah penjelasan beberapa fitur yang disediakan bagi
administrator:
1. Write Post, fitur yang digunakan untuk menambahkan news/berita baru,
yang akan ditampilkan pada halaman home user.
2. View comment, fitur yang digunakan untuk menampilkan komentar user
terhadap news tertentu.
3. Add phone, fitur yang digunakan untuk menambahkan ponsel baru ke
dalam database.
4. View opinions, fitur yang digunakan untuk menampilkan opini user
terhadap ponsel tertentu.
5. View image, fitur yang digunakan untuk menampilkan image-image
untuk ponsel tertentu.
6. Add image, fitur yang digunakan untuk menambahkan satu image
maupun banyak image sekaligus untuk ponsel tertentu.
7. Membership Degree, fitur yang digunakan untuk menampilkan derajat
commit to user
8. Fuzzy Set, fitur yang digunakan untuk menampilkan maupun
memanipulasi variabel linguistik.
9. Fuzzy Rule, fitur yang digunakan untuk menampilkan maupun
memanipulasi batasan batasan himpunan fuzzy.
10. Fuzzification, fitur yang digunakan untuk melakukan perhitungan derajat
keanggotaan tiap ponsel berdasarkan variabelnya.
4.2.2 Fitur User
Di dalam Sistem Pendukung Keputusan Memilih Produk Ponsel Berbasis
Web terdapat beberapa fitur untuk user, diantaranya:
1. Home, dalam menu home user dapat melihat news/berita terbaru, user
juga dapat memberikan komentar terhapat news tertentu.
2. Product, dalam menu product user dapat melihat daftar ponsel
berdasarkan brand-nya. User juga dapat melihat detail ponsel mulai dari
spesifikasi, image. User dapat juga memberikan opini maupun
melakukan voting terhadap ponsel tertentu.
3. Compare, dalam menu compare user dapat membandikan 2 produk
ponsel yang berbeda.
4. Find Out, dalam menu find out user dapat melakukan pencarian ponsel
berdasar keinginan user. Pencarian dilakukan dengan metode fuzzy
tahani.
5. Contact, dalam menu contact user dapat mengirimkan pesan kepada
admin.
4.2.3 Fuzzifikasi
Fuzzifikasi atau perhitungan derajat keanggotaan akan melibatkan data
ponsel (tabel phone) dan data batasan himpunan (tabel fuzzyrule). Data ponsel
yang ada dalam tabel phone tidak semua digunakan, namun hanya data-data yang
termasuk dalam variabel fuzzy, yaitu batmusicplay, batstandby, battalktime,
commit to user
price, thickness, volume, weight. Dalam sistem yang dibuat fuzzifikasi dilakukan
dengan menggunakan pendekatan fungsi kurva bahu.
Admin melalui menu fuzzification dapat melakukan perhitungan derajat
keanggotaan yang nantinya akan menghasilkan nilai derajat keanggotaan yang
akan disimpan dalam tabel membershipdegree, proses tersebut terlihat dalam
gambar 4.3. Tabel membershipdegree digunakan ketika terjadi proses pencarian
ponsel oleh user.
Gambar 4.2 Flowchart Alur Fuzzifikasi oleh Admin
Sebagai contoh dipilih data Sony Ericsson Xperia PLAY dari sampel ponsel
yang ada. Pada sistem yang sudah berjalan, ponsel Sony Ericsson Xperia PLAY
mempunyai derajat keanggotaan 0,469231 untuk variabel price. Hal ini terlihat
[image:30.595.165.436.247.504.2]pada gambar 4.3.
[image:30.595.115.511.629.669.2]commit to user
Untuk mendapatkan derajat keanggotaan 0,469231 untuk variabel price
sistem melakukan fuzzifikasi (perhitungan derajar keanggotaan) dengan alur
seperti terlihat pada gambar4.2. Dalam proses fuzzifikasi sistem membutuhkan
batasan himpunan untuk variabel price yang sudah dimasukkan oleh admin
[image:31.595.112.513.223.493.2]sebelumnya. Terlihat pada gambar 4.4.
Gambar 4.4 Batasan himpunan untuk variabel price
Bila digambarkan dalam bentuk kurva, batasan himpunan untuk variabel
price akan terlihat seperti gambar 4.5.
Gambar 4.5 Representasi kurva bahu untuk variabel price
Untuk mendapatkan hasil fuzzifikasi. Sistem melakukan perhitungan derajat
keanggotaan dengan menggunakan fungsi keanggotaan representasi kurva bahu.
4.2.4 Alur Pencarian dengan Metode Fuzzy Tahani
Fungsi utama dari Sistem Pendukung Keputusan Memilih Produk Ponsel
Berbasis Web adalah membatu user menentukan keputusan dalam memilih
commit to user
terhadap ponsel tertentu pada field-field yang tersedia. Proses pencarian dengan
[image:32.595.153.496.155.487.2]metode fuzzy tahani terlihat dalam gambar 4.6.
Gambar 4.6 Flowchart Pencarian Ponsel
Ketika user mengeksekusi, proses pencarian akan dilakukan oleh sistem yang
melibatkan data pada tabel phone dan tabel membershipdegree. Untuk variabel
variabel non-fuzzy sistem akan melakukan pencarian pada tabel ponsel
menggunakan query SQL like. Apabila terdapat variabel fuzzy dalam kriteria user
maka pencarian akan melibatkan tabel membershipdegree.
4.2.5 Query Pencarian dan Hasil Pencarian
Sebagai contoh disimulasikan user mengisikan kriteria untuk price memilih
commit to user
Gambar 4.7 Kriteria user untuk price - cheap dan untuk weight – light
Ketika user mengesekusi proses pencarian, maka sistem akan membuat query
pencarian sesuai dengan kriteria user seperti terlihat pada gambar 4.8.
Gambar 4.8 Query dan hasil pencarian
Sistem kemudian akan menampilkan hasil pencarian sesuai dengan derajat
keanggotaan tiap variabel. Untuk mendapatkan nilai rekomendasi dalam
persentase sistem menggunakan operator min terhadap variabel price dan weight.
Sebagai contoh diambil data dari ponsel Sony Ericsson Cedar. Ponsel Sony
commit to user
seperti terlihat pada gambar 4.9 dan derajat keanggotaan weight – light sebesar 1
[image:34.595.111.515.180.486.2]seperti terlihat pada gambar 4.10.
Gambar 4.9 Derajat keanggotaan Sony Ericsson Cedar untuk variabel price – cheap
Gambar 4.10 Derajat keanggotaan Sony Ericsson Cedar untuk variabel weigth – light
Untuk ,endapatkan nilai rekomendasi sebesar 90% sistem melakukan
perhitungan dengan operator min untuk derajat keanggotaan variabel price –
cheap dan weight – light. Kemudian akan dikalikan 100.
µpricecheap∩ µweightlight = min(µpricecheap[55],µweightlight[84])
4.2.6 Kelemahan Sistem
Dari metode yang digunakan diketahui bahwa Sistem Pendukung Keputusan
Memilih Produk Ponsel Berbasis Web ini menggunakan 3 (tiga) himpunan fuzzy
di tiap variabelnya. Sehingga hasil yang diberikan kurang akurat dibandingan jika
commit to user
61
BAB V
PENUTUP
5.1Kesimpulan
Sistem Pendukung Keputusan Memilih Produk Ponsel Berbasis Web dibuat
menggunakan bahasa pemrograman PHP dan menggunakan DBMS MySQL.
Kemampuan dari sistem ini, yaitu menyediakan informasi mengenai detail produk
ponsel, dapat digunakan untuk membandingkan antara produk ponsel satu dengan
yang lainnya dan membatu user menentukan keputusan dalam memilih produk
ponsel.
5.2 Saran
Sistem Pendukung Keputusan Memilih Produk Ponsel Berbasis Web dapat
dikembangkan lagi agar lebih memenuhi kebutuhan user. Beberapa diantaranya
dengan menambahkan lebih banyak lagi himpunan fuzzy di tiap variabelnya
sehingga hasil pencariannya menjadi lebih akurat dan menambahkan detail