BAB III - potensi utama repository

advertisement
BAB III
ANALISIS DAN PERANCANGAN
III.1. Analisis Masalah
Pada masa sekarang ini banyak produsen makanan yang berlomba lomba
menciptakan berbagai jenis makanan yang bervariatif, dari jenis makanan yang
hanya mampu bertahan 1 (satu) hari hingga jenis makanan yang mampu bertahan
hingga 1 (satu) tahun bahkan lebih. Hal ini tidak lepas dari peranan bahan kimia
dalam menentukan kemampuan makanan tersebut bertahan. Bahan kimia berperan
sebagai pengawet dalam makanan yang membuat makanan mampu bertahan
hingga berhari-hari bahkan berbulan-bulan.
Namun tidak semua bahan kimia yang dipakai sebagai pengawet bisa
digunakan dalam makanan, ada bahan kimia yang digunakan untuk pengawet
tetapi dilarang dimanfaatkan untuk makanan. Namun saat ini banyak produsen
makanan yang mengabaikan hal tersebut, dikarenakan tidak ingin mengalami
kerugian. Saat ini untuk mendeteksi kandungan bahan kimia pada makanan harus
dilakukan di Laboratorium Badan Pengawas Obat dan Makanan (BPOM) dan
menyebabkan konsumen tidak bisa mendeteksi sendiri, hal ini sangat diperlukan
suatu sistem yang dapat mendeteksi kandungan bahan kimia pada makanan yang
dapat digunakan oleh public.
III.2. Penerapan Metode Fuzzy Logic
Logika
fuzzy
merupakan
salah
satu komponen pembentuk soft
computing. Logika fuzzy pertama kali diperkenalkan oleh Prof. Lotfi A. Zadeh
31
32
pada tahun 1965. Dasar dari logika fuzzy adalah teori himpunan fuzzy. Pada
teori himpunan fuzzy,
keberadaaan
elemen
peranan
dalam
derajat
keanggotaan
suatu himpunan
sangatlah
sebagai penentu
penting.
Nilai
keanggotaan atau derajat keanggotaan atau membership function menjadi ciri
utama dari penalaran dengan logika fuzzy tersebut.
Solusi himpunan fuzzy diperoleh dengan cara mengambil nilai maksimum
atruan, kemudian menggunakannya untuk memodifikasi daerah fuzzy, dan
mengaplikasikannya ke output dengan menggunakan operator OR (union). Jika
semua proposisi telah dievaluasi, maka output akan berisi suatu himpunan fuzzy
yang merefleksikan kontribusi dari tiap tiap proposisi. Secara umum dapat
dituliskan :
μsf[xi] = max (μusf [Xi], μkf [Xi])
Dengan :μsf[Xi] =nilai keanggotaannya solusi fuzzy sampai aturan ke I μkf[Xi]
=nilai keanggotaan konsekuan fuzzy aturan ke i.
Misalkan ada 3 aturan (proposisi) sebagai berikut :
[R1] IF Biaya Produksi RENDAH and Permintaan NAIK THEN Produksi Barang
BERTAMBAH ;
[R2] IF Biaya Produksi STANDARTHEN Produksi Barang NORMAL ;
[R3] IF Biaya Produksi TINGGI And Permintaan TURUN THEN Produksi barang
BERKURANG;
Proses inferensi dengan menggunakan metode Max dalam melakukan
komposisi ini sering disebut dengan nama MAX-MIN atau MIN-MAX atau
MAMDANI.
33
Untuk proses perhitungan menggunakan algoritma Fuzzy logic dapat
dilihat pada tabel III.1berikut ini.
Tabel III.1. Tabel Himpunan Fuzzy
Himpunan Fuzzy Untuk Variabel Kandungan Beracun (X)
Beracun rendah(X)
1; X1<1
(30-X1)/29, 30≤X1≤30
0;X>30
Beracun sedang(X)
0, X31 atau X>70
(X-31)/14, 31
(70-X)/25, 45
Beracun tinggi(X)
0, X<71
(100-X)/29, 71
1, X>100
Himpunan Fuzzy Untuk Variabel Kandungan Reaktif (X)
Reaktif Rendah(Y)
1, Y<1
(50-Y)/49, 1Y
0, Y>50
Reaktif Tinggi(Y)
0, Y<51
(Y-51)/49, 1Y
1,≥100
Himpunan Fuzzy Untuk Variabel Kandungan Terbakar (Z)
Terbakar rendah(Z)
Terbakar sedang(Z)
Terbakar tinggi(Z)
1, Z<1
(30-Z)/29,1
0, Z>30
0, Z<31 atau Z>70
(Z-30)/14, 31
(70-Z)/25, 45
0, Z<71
(Z-71)/29, 71
1, Z>100
Ada empat (4) tahap proses fuzzy yang dilakukan pada aplikasi ini, yang
dimana 4 proses tersebut akan dijabarkan pada keterangan berikut ini, yaitu:
1.
Menggambarkan Proses Keanggotaan
Membership function atau kurva yang menunjukan nilai antar 0 dan 1,
dengan cara melakukan fungsi keanggotaan, kombinasi fungsi keanggotaan
34
segitiga dan trapesium, atau fungsi keanggotaan linear, sehingga ketika kita
memilih nilai kenaggotaan tinggi, maka bisa jadi 1 > tinggi, 1 < rendah atau 1 =
sedang. dengan nilai max rendah 1..30, nilai max sedang 31..70, dan nilai max
70..100.
2.
Proses Fuzzyfikasi
Fase pertama dari perhitungan fuzzy secara umum, yaitu perubahan nilai
tegas (30,70,100) ke nilai samar (fuzzy), dengan cara menginput nilai tegas lalu
dihitung (bisa manual/ melalui programming teknik), dilakukan secara
programming teknik, jadi inputan berasal dari konsumen melalui pertanyaan
(salah satu methode kualitas pelayanan) yang hanya dilakukan oleh manajer/
administrator. Untuk perhitungan menggunakan fungsi keanggotan segitiga dan
trapesium.
a.
Variabel Beracun
Berikut adalah cara untuk mendapatkan nilai keanggotan berdasarkan
variabel linguistik dan variabel numerik yang digunakan :
µ[x]RENDAH =
µ[x]SEDANG =
{
{
1;
x≤30
;
0;
30≤x≤71
x≥ 71
0;
x≤30 atau x≥70
;
30≤x≤71
;
71≤x≤100
35
µ[x]TINGGI =
{
0;
x≤71
;
71≤x≤100
1;
x≥100
Himpunan Fungsi :
a. Rendah 1..30
b. Sedang 31..70
c. Tinggi 71..100
Rendah
Sedang
Tinggi
30
70
100
1
b.
Variabel Reaktif
Berikut adalah cara untuk mendapatkan nilai keanggotan berdasarkan
variabel linguistik dan variabel numerik yang digunakan :
µ[y]RENDAH =
µ[y]TINGGI =
{
1;
{
0;
y≤50
;
0;
y≥ 100
y≤51
;
1;
51≤y≤100
51≤y≤100
y≥100
36
Himpunan Fungsi :
a. Rendah 1..50
b. Tinggi 51..100
Rendah
Tinggi
50
100
1
c.
Variabel Terbakar
Berikut adalah cara untuk mendapatkan nilai keanggotan berdasarkan
variabel linguistik dan variabel numerik yang digunakan :
µ[z]RENDAH =
µ[z]SEDANG =
µ[z]TINGGI =
{
{
{
1;
z≤30
;
0;
z≥ 70
0;
z≤30 atau z≥100
;
30≤z≤71
;
71≤z≤100
0;
z≤71
;
1;
30≤z≤71
71≤z≤100
z≥100
37
Himpunan Fungsi :
a. Rendah 1..30
b. Sedang 31..70
c. Tinggi 71..100
Rendah
Sedang
Tinggi
30
70
100
1
Untuk perhitungan secara manual, sebagai sample diambil 1 jenis bahan
bahan kimia. Misalkan bahan kimia tersebut Natrium Benzoat yang
inputan nilai nya 45 miligram, maka perhitungannya sebagai berikut :
1.
2.
Penghitungan untuk Beracun
µ[x]RENDAH =
=
= 0,6
µ[x]SEDANG =
=
= 0,3
Penghitungan untuk Reaktif
µ[y]RENDAH =
3.
=
= 0,1
Penghitungan untuk Terbakar
µ[z]RENDAH =
=
= 0,8
µ[z]SEDANG =
=
= 0,3
38
3.
Proses Fuzzyfikasi Query
Ini dia keuntungan menggunakan fuzzyfikasi query database, karena kita
masih memanfaatkan kueri standar RDBMS (Relational Database Management
System). Kueri standar nya ” SELECT * FROM [table-name] WHERE “, disini
memanfaatkan fungsi WHERE lebih dari 1 kondisi.
4.
Dasar Zadeh Untuk Operasi Himpunana Fuzzy
Dengan clausea AND atau OR yang sedang disebut dengan aturan Zadeh,
dimana nilai AND itu min dan nilai OR itu max dari hasil proses perhitungan
yang mendekati nilai 1. (Dwi Martha Sukandy ; 2011 ; 5)
III.3. Desain Sistem
Pada perancangan sistem secara menjelaskan mengenai rancangan yang
akan dikerjakan serta fitur-fitur yang akan dipakai pada aplikasi tersebut seperti
metode yang digunakan dalam rancangan, rancangan layar, dan lainnya. Untuk
menggambarkan proses sistem penulis menggambarkan dengan menggunakan
beberapa diagram, yaitu sebagai berikut.
III.3.1.Use Case Diagram
Use case diagram berfungsi untuk menggambarkan kegiatan aktor atau
pengguna aplikasi. Adapun use case diagram aplikasi
dilihat pada gambar III.1 berikut.
yang dirancang dapat
39
Gambar III.1. Use Case Diagram Sistem Yang Dirancang
Sesuai dengan gambar III.1. diatas maka sistem baru yang dirancang dapat
dijelaskan sebagai berikut:
1. Untuk dapat mengakses aplikasi admin melakukan login sehingga tampil
menu utama yang dapat menjalankan aplikasi dan admin dapat menginputkan
jenis makanan dan data bahan kimia.
2. Pengguna atau user masuk kedalam aplikasi dan dapat menggunakan aplikasi
untuk menentukan makanan mengandung bahan kimia atau tidak dengan
menginputkan jenis makanan.
III.3.2.Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem
yang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin
terjadi, dan bagaimana mereka berakhir. Activity diagram
juga dapat
menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
Activity diagram merupakan state diagram khusus, di mana sebagian besar state
40
adalah action dan sebagian besar transisi di-trigger
oleh selesainya state
sebelumnya (internal processing). Oleh karena itu
activity diagram tidak
menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem)
secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas
dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use
case atau lebih. Aktivitas menggambarkan proses yang berjalan , sementara use
case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan
aktivitas.
1.
Activity Diagram pengguna
Adapun activity diagram dalam proses sitem yang dibangun dapat dilihat
pada gambar III.2 penjelasan berikut.
Gambar III.2.
Activity Diagram Pengguna
41
2.
Activity Diagram Input Bahan Kimia
Adapun activity diagram dalam proses penginputan bahan kimia yang
dibangun dapat dilihat pada gambar III.3 berikut.
Gambar III.3.
3.
Activity Diagram Input Bahan Kimia
Activity Diagram Input Jenis makanan
Adapun activity diagram dalam proses penginputan jenis makanan yang
dibangun dapat dilihat pada gambar III.4 berikut.
42
Gambar III.4.
Activity Diagram Input Jenis makanan
III.3.3.Sequence Diagram
Adapun sequence diagram ini menjelaskan tentang penggunaan aplikasi
baik yang dilakukan oleh admin. Fungsi diantara dua aktor tersebut berbeda,
admin dapat menginputkan data yang diperlukan oleh pengguna yang dapat
dijelaskan dibawah ini.
1.
Sequence diagram Input Bahan Kimia
Sequence diagram tersebut menggambarkan aktifitas yang dilakukan oleh
admin dalam menginputkan bahan kimia pada makanan yang dapat dilihat pada
gambar III.5 berikut ini.
43
Gambar III.5. Sequence Diagram Input Bahan Kimia
2.
Sequence diagram Input Jenis makanan
Sequence diagram berikut ini merupakan gambaran yang terjadi dimana
pada saat admin melakukan penginputan jenis makanan. Sequence tersebut dapat
dilihat pada gambar III.6 berikut ini.
Gambar III.6. Sequence Diagram Input Jenis makanan
44
III.3.4.Class Diagram
Rancangan pada Class diagram digunakan untuk menampilkan kelas-kelas
dan paket-paket di dalam sistem. Class diagram memberikan gambaran sistem
secara statis dan relasi antar mereka. Untuk class diagram pada sistem yang
dirancang dapat dilihat pada gambar III.7 berikut ini.
Admin
Id_admin: *Varchar(5)
1
Username: Varchar(20)
Nama: Varchar(50)
Email: Varchar(50)
Alamat: text()
Telp: Varchar(15)
Pass: Varchar(32)
1
1
*
*
tbl_komposisi_kimia
Id_kimia: *Int(11)
Nama_kimia: Varchar(50)
*
*
tbl_fuzzy
tbl_Komposisi
Id: *Int(10)
Beracun_rendah: Int(10)
Berancun_sedang: Int(10)
Beracun_tinggi: Int(10)
Reaktif_rendah: Int(10)
Reaktif_tinggi: Int(10)
Terbakar_rendah: Int(10)
Terbakar_sedang: Int(10)
Terbakar_tinggi: Int(10)
Id_komposisi:*Type(11)
Nama_Komposisi:Varchar(50)
Keterangan:Varchar()
Id_kimia:int(11)
Berancun:int(11)
Reaktif:int(11)
Terbakar:int(11)
*
*
1
Proses
1
-Knowladge
1
+Proses
Gambar III.7. Class Diagram
III.4. Rancangan Database
Database merupakan komponen penting dalam pembangunan sebuah
aplikasi, karena menjadi tempat untuk menampung dan mengorganisasikan
seluruh data ke sistem, sehingga dapat dikembangkan untuk menyusun informasi
maupun data dalam berbagai bentuk.
45
III.4.1.Kamus Data
Kamus data merupakan suatu daftar komposisi elemen data, Pengisisan
data Dictionary dilakukan setiap saat selama proses pengembangan berlangsung,
ketika diketahui adanya data item atau saat diperlukan penambahan data item ke
dalam sistem. Berikut ini kamus data dari database yang dirancang.
Admin
= Id_Admin + Username + Nama + Email + Alamat + Telepon +
Pass.
Fuzzy
= Id + Beracun_rendah + Berancun_sedang + Beracun_tinggi +
Reaktif_rendah + Reaktif_tinggi + Terbakar_rendah +
Terbakar_sedang + Terbakar_tinggi.
Komposisi
= Id_komposisi + Nama_Komposisi + Keterangan + Id_kimia +
Berancun + Reaktif + Terbakar.
Bahan Makanan = Id_kimia + Nama_kimia.
III.4.2. Desain Tabel
Setiap database memiliki rancangan tabel yang digunakan untuk
penyimpanan atau pengolahan data. Sehingga dalam database terdapat tabel –
tabel dengan beberapa field yang mewakili sebuah klasifikasi data tertentu.
Berikut ini desai dari tabel yang dirancang oleh penulis
46
1. Tabel Admin
Tabel Kriteria berguna untuk input data Admin.
Tabel III.2. tb_Admin
Field name
Id_ admin
Username
Nama
Email
Alamat
Telp
Pass
Type
Varchar
Varchar
Varchar
Varchar
Text
Varchar
Varchat
Size
5
20
50
50
0
15
32
Index
Primary key
-
Description
Id admin
Username
Nama
Email
Alamat
Telepon
Pass
2. Tabel Fuzzy
Tabel Fuzzy berguna untuk input data bahan kimia yang terkandung pada
makanan.
Tabel III.3. tbl_fuzzy
Field name
Id
Beracun_rendah
Berancun_sedang
Beracun_tinggi
Reaktif_rendah
Reaktif_tinggi
Terbakar_rendah
Terbakar_sedang
Terbakar_tinggi
Type
Int
Int
Int
Int
Int
Int
Int
Int
Int
Size
10
10
10
10
10
10
10
10
10
Index
Primary Key
-
Description
Id
Beracun rendah
Berancun sedang
Beracun tinggi
Reaktif rendah
Reaktif tinggi
Terbakar rendah
Terbakar sedang
Terbakar tinggi
47
3. Tabel Komposisi
Tabel Komposisi berguna untuk input data Komposisi yang terkandung pada
makanan.
Tabel III.4. tbl_ komposisi
Field name
Id_komposisi
Nama_Komposisi
Keterangan
Id_kimia
Berancun
Reaktif
Terbakar
Type
Type
varchar
varchar
Int
Int
Int
Int
Size
11
50
0
11
11
11
11
Index
Prima
ry
Key
-
Description
Id komposisi
Nama Komposisi
Keterangan
Id_kimia
Berancun
Reaktif
Terbakar
4. Tabel Komposisi Bahan Kimia
Tabel komposisi bahan Kimia berguna untuk input komposisi bahan Kimia.
Tabel III.5. tbl_komposisi_kimia
Field name
Id_kimia
Nama_kimia
Type
Int
Varchar
Size
11
50
Index
Primary
Key
Description
Id kimia
Nama kimia
III.5. Desain Interface
Pada sub bab ini merupakan pembahasan mengenai rancangan pada
aplikasi yang akan dikembangkan. Adapun rancangan yang akan dijelaskan dan
digambarkan berikut ini merupakan suatu interface dari aplikasi yang akan
dirancang sehingga proses perancangan berjalan dengan baik dan sesuai dengan
yang diharapkan. Rancangan tampilan tersebut dapat dilihat sebagai berikut.
48
III.5.1.Design Interface User
Disain interface user menampilkan halaman yang dapat diakses oleh para
pengguna aplikasi. Untuk disain tersebut terdapat pada beberapa disain berikut ini.
1. Form Menu Utama User
Pada halaman ini berfungsi sebagai menu utama yang tersedia pada
aplikasi. Dalam halaman beranda, pengguna mengunputkan komposisi Dengan
menampilkan beberapa menu yang dapat difungsikan. Rancangan form menu
dapat dilihat pada gambar III.8 berikut ini.
Branda
Bahan Kimia Makanan
Help
About
Selamat Datang
Bahan Kimia :
Gambar III.8. Rancangan Form Menu Utama
2. Rancangan Form Input Jumlah Bahan
Pada halaman ini menampilkan rancangan form yang disediakan untuk
mengisi jumlah bahan agar aplikasi dapat diproses dan mengetahui hasilnya. Form
dapat dilihat digambar III.9 berikut ini.
49
Branda
Bahan Kimia Makanan
Help
About
Bahan Kimia :
No
Bahan Kimia
Jumlah
1
Xxx
0
2
Xxx
0
Proses
Gambar III.9.
Rancangan Form Input Jumlah Bahan
3. Rancangan Form Help
Pada halaman ini menampilkan rancangan form yang disediakan untuk
membantu pengguana aplikasi yang dapat dilihat pada gambar III.10 berikut ini.
Branda
Bahan Kimia Makanan
Help / Bantuan
Gambar III.10. Rancangan Form Help
Help
About
50
4. Rancangan Form About
Pada halaman ini menampilkan rancangan form About yang disediakan,
halaman ini merupakan halaman untuk membantu pengguana memberikan
penjelasan tentang aplikasi yang dirancang. Adapun rancangan form tersebut
dapat dapat dilihat pada gambar III.11 berikut ini.
Branda
Bahan Kimia Makanan
Help
About
About Program
Gambar III.11. Rancangan Form About
III.5.2.Design Interface Admin
Pada aplikasi yang dirancang akan memiliki tampilan-tampilan yang dapat
diakses oleh admin untuk menginputkan beberapa data yang dibutuhkan. Adapun
tampilan bagi admin dapat dilihat pada bebrapa bagian berikut.
1.
Interface Menu Login Admin
Tampilan menu login admin ini berfungsi untuk admin sehingga admin dapat
menginputkan data yang diperlukan, halaman tersebut dapat dilihat pada gambar
III.12. berikut
51
Username
Password
Login
Cancel
Gambar III.12. Rancangan Form Login
2.
Interface Data Admin
Rancangan form data admin ini merupakan tampilan yang mengediaan beberapa
menu yang dapat digunakan oleh admin yang dapat dilihat pada gambar III.13
dibawah ini.
Halaman Data Admin
Branda
Bahan Kimia
Makanan
Tamba
h
No
Xxx
Xxx
Xxx
Email
Xxx
Xxx
Xxx
Nama
Xxx
Xxx
Xxx
Alamat
Xxx
Xxx
Xxx
Telepon
Xxx
Xxx
Xxx
Log Out
Edit
Aksi
Tambah Edit
Tambah Edit
Tambah Edit
Gambar III.13. Rancangan Form Data Admin
52
3.
Interface Tambah Admin
Admin dapat menginputkan atau menambah admin dengan mengikuti
langkah-langkah yang tersedia yang dapat dilihat pada gambar III.14 berikut.
Halaman Tambah Admin
Branda
Bahan Kimia
Makanan
Log Out
Nama Lengkap :
Username :
Email :
Alamat :
Telepon :
Password :
Ulangi password :
Submit
Reset
Gambar III.14. Rancangan Form Tambah Admin
4.
Interface Bahan Kimia
Pada rancangan interface bahan kimia, merupakan tampilan bahan-bahan kimia
yang ada. Rancangan tampilan tersebut terdapat pada gambar III.15 berikut.
53
Halaman Data Bahan Kimia
Branda
Bahan Kimia
Tambah
No
Xxx
Xxx
Xxx
Nama Kimia
Xxx
Xxx
Xxx
Makanan
Log Out
Edit
Aksi
Tambah Edit
Tambah Edit
Tambah Edit
Gambar III.15. Rancangan Tampilan Bahan Kimia
5.
Interface Tambah Bahan Kimia
Rancangan tampilan bahan kimia terdapat pada gambar III.16 berikut, yang
merupakan form yang disediakan untuk admin dalam menambahkan bahan kimia
pada apikasi, yaitu :
Halaman Tambah Bahan
Kimia
Branda
Bahan Kimia
Makanan
Log Out
Nama Bahan :
Kimia :
Submit
Reset
Gambar III.16. Rancangan Tambah Bahan Kimia
54
6.
Interface Data Makanan
Rancangan interface data makanan merupakan tampilan yang menampilkan jenis
makanan yang tersedia yang dapat dilihat pada gambar III.17 berikut.
Halaman Data Komposisi
Branda
Bahan Kimia
Makanan
Tambah
No
Xxx
Xxx
Xxx
Jenis Makanan
Xxx
Xxx
Xxx
Keterangan
Xxx
Xxx
Xxx
Log Out
Edit
Aksi
Tambah
Tambah
Tambah
Edit
Edit
Edit
Gambar III.17. Rancangan Tampilan Data Makanan
7.
Interface Tambah Data Makanan
Untuk rancangan foem tambah data makanan merupakan tampilan yang berfungsi
untuk menginputkan jenis makanan yang baru. Tampilan tersebut dapat dilihat
pada gambar III.18 berikut.
55
Halaman Tambah Komposisi
Branda
Bahan Kimia
Makanan
About
Nama Makanan :
Keterangan :
No
Nama Kimia
Kandungan
Beracun/100mg
Kandungan
Kandungan
Reaktif/100mg Terbakar/100mg
Submit
Reset
Gambar III.18. Rancangan Tambah Data Makanan
Download