Implementasi Metode Forward Chaining Sebagai Penentuan Jenis Makanan Pada Game Memasak

IMPLEMENTASI METODE FORWARD CHAINING
SEBAGAI PENENTUAN JENIS MAKANAN
PADA GAME MEMASAK

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

SIDIK FIRDAUS
10110603

PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2014

C-1

BIODATA PENULIS

1. DATA PRIBADI

Nama

: Sidik Firdaus

Tempat/ Tanggal Lahir

: Bandung, 1 Juli 1991

Agama

: Islam

Kewarganegaraan

: Indonesia

Status

: Belum Menikah


Anak ke

: 1 dari 2 bersaudara

Alamat

: Jl. Rancaloa 003/002 Bandung 40292

Nomor Telepon

: 085722758641

Email

: mygalmin2@gmail.com

2. RIWAYAT PENDIDIKAN
1. Sekolah Dasar
1997 – 2003


: SD Cisaranten Kidul Bandung

2. Sekolah Menengah Pertama
2003 – 2007

: SMPN 18 Bandung

3. Sekolah Menengah Atas
2007 – 2009

: MAN 2 Bandung

4. Perguruan Tinggi
2010 – 2014

: Program Sarjana (S-1) Teknik Informatika
Universitas Komputer Indonesia Bandung

Demikian riwayat hidup ini saya buat dengan sebenar-benarnya dalam
keadaan sadar dan tanpa paksaan.

Bandung, 22 Agustus 2014

( Sidik Firdaus )

DAFTAR ISI

ABSTRAK ................................................................................................................... i
ABSTRACT ................................................................................................................. i
KATA PENGANTAR ................................................................................................iii
DAFTAR ISI ................................................................................................................ v
DAFTAR GAMBAR .................................................................................................viii
DAFTAR TABEL ........................................................................................................ x
DAFTAR SIMBOL...................................................................................................... xii
DAFTAR LAMPIRAN ................................................................................................ xi
DAFTAR PUSTAKA .................................................................................................. 52
BAB 1 PENDAHULUAN ........................................................................................... 1
1.1.

Latar Belakang Masalah .................................................................................... 1


1.2.

Perumusan Masalah .......................................................................................... 2

1.3.

Maksud dan Tujuan ........................................................................................... 2

1.4.

Batasan Masalah................................................................................................ 2

1.5.

Metodologi Penelitian ....................................................................................... 3

1.6.

Sistematika Penulisan ....................................................................................... 5


BAB 2 LANDASAN TEORI ........................................................................................ 7
2.1

Kecerdasan buatan (Artificial Intelligence) .................................................... 7

2.2

Algoritma ........................................................................................................ 8

2.3

Pemrograman terstruktur .............................................................................. 11

2.3.1

DFD (Data Flow Diagram) ........................................................................... 11
v

2.3.2


Komponen Terminator/Entitas Luar ............................................................. 12

2.3.3

Komponen Proses ......................................................................................... 12

2.3.4

Komponen Data Store ................................................................................... 12

2.3.5

Komponen Data Flow/Alur Data.................................................................. 13

2.4

Pengujian Perangkat Lunak .......................................................................... 13

2.4.1.


Pengujian Black box ...................................................................................... 13

2.4.2.

Pengujian White Box ..................................................................................... 14

BAB 3 ANALISIS DAN PERANCANGAN ............................................................. 15
3.1.

Analisis Masalah .......................................................................................... 15

3.2.

Analisis Game .............................................................................................. 15

3.2.1.

Analisis Game yang Akan Dikembangkan ................................................... 16

3.4.


Analisis Masukan ......................................................................................... 17

3.5.

Analisis Metode ............................................................................................ 20

3.5.1.

Inferensi Forward Chaining Berdasarkan Rule............................................. 23

3.5.2.

Analisis Rules................................................................................................ 24

3.6.

Spesifikasi Kebutuhan Perangkat Lunak ...................................................... 25

3.6.1.


Analisis Kebutuhan Non Fungsional ............................................................ 26

3.6.2.

Analisis Kebutuhan Perangkat Keras............................................................ 26

3.6.3.

Analisis Kebutuhan Perangkat Lunak ........................................................... 26

3.6.4.

Analisis Kebutuhan Pengguna ...................................................................... 26

3.7.

Analisis Kebutuhan Fungsional.................................................................... 27

3.7.1.


Entity Relationship Diagram ........................................................................ 27

3.7.1.

Diagram Konteks .......................................................................................... 27

3.7.2.

Data Flow Diagram ....................................................................................... 28

3.7.5.

Perancangan Struktur Menu .......................................................................... 33
vi

3.7.6.

Perancangan Antar Muka .............................................................................. 33

3.7.8.

Jaringan Semantik ......................................................................................... 35

3.7.9.

Perancangan Prosedural ................................................................................ 36

BAB 4 PENGUJIAN DAN IMPLEMENTASI SISTEM ........................................... 41
4.1.

Implementasi Sistem .................................................................................... 41

4.2.

Perangkat Pendukung yang digunakan ......................................................... 41

4.3.

Implementasi Aplikasi .................................................................................. 42

4.4.

Pengujian Sistem .......................................................................................... 43

4.4.1.

Rencana Pengujian ........................................................................................ 43

4.4.2.

Kasus dan Hasil Pengujian............................................................................ 44

4.4.3.

Pengujian Metode Forward Chaining .......................................................... 44

4.4.4.

Kasus dan Pengujian WhiteBox.................................................................... 46

BAB 5 KESIMPULAN DAN SARAN ...................................................................... 51
5.1. Kesimpulan ........................................................................................................ 51
5.2. Saran .................................................................................................................. 51
DAFTAR PUSTAKA ................................................................................................. 52

vii

DAFTAR GAMBAR
Gambar 1.1 Ilustrasi Model Waterfall ......................................................................... 4
Gambar 2.1 Alur Forward Chaining ............................................................................. 9
Gambar 3.1 Chicken Roll............................................................................................ 16
Gambar 3.2 Area Draggable ....................................................................................... 18
Gambar 3.3 Realisasi Objek Draggable ..................................................................... 19
Gambar 3.4 Realisasi Hasil Akhir Nasi Goreng ......................................................... 20
Gambar 3.5 Skema Forward Chaining ....................................................................... 21
Gambar 3.6 Penelusuran Tree Nasi Goreng ................................................................ 23
Gambar 3.7 Penelusuran Tree Jus Strawberry ............................................................ 23
Gambar 3.8 Alur penerapan rule pada resep 1 ............................................................ 24
Gambar 3.9 Alur penerapan rule pada resep 2 ............................................................ 24
Gambar 3.10 Entity Relationship Diagram ................................................................. 27
Gambar 3.11 Diagram Konteks................................................................................... 28
Gambar 3.12 Data Flow Diagram Game Memasak .................................................... 28
Gambar 3.13 Skema Relasi ......................................................................................... 32
Gambar 3.14 Perancangan Struktur Menu .................................................................. 33
Gambar 3.15 Perancangan Antar Muka Halaman Utama ........................................... 34
Gambar 3.16 Perancangan Antar Muka Resep 1 ........................................................ 35
Gambar 3.17 Perancangan Antar Muka Resep 2 ........................................................ 35
Gambar 3.18 Jaringan Semantik ................................................................................. 36
Gambar 3.19 Flowchart mengecek alat ...................................................................... 37
Gambar 3.20 Flowchart mengecek bahan .................................................................. 38
Gambar 3.21 Flowchart Forward Chaining ............................................................... 39
Gambar 4.1 Implementasi Antar Muka Halaman Utama............................................ 42
Gambar 4.2 Implementasi Halaman Forward Chaining Bekerja ............................... 43
Gambar 4.3 Flowgraph Forward Chaining ................................................................. 48

viii

DAFTAR TABEL
Tabel 2.1 Karakteristik Forward Chaining................................................................. 10
Tabel 3.1 Fitur Game .................................................................................................. 16
Tabel 3.2 GamePlay .................................................................................................... 17
Tabel 3.3 Tabel Premis ............................................................................................... 21
Tabel 3.4 Deskripsi Rule Game Memasak .................................................................. 22
Tabel 3.5 SKPL User Requirement ............................................................................. 25
Tabel 3.6 SKPL System Requirement ......................................................................... 25
Tabel 3.7 SKPL Non-Fungsional ................................................................................ 25
Tabel 3.8 Spesifikasi Kebutuhan Perangkat Keras ..................................................... 26
Tabel 3.9 Spesifikasi Kebutuhan Perangkat Lunak .................................................... 26
Tabel 3.10 Spesifikasi Kebutuhan Pengguna ............................................................. 27
Tabel 3.11 Spesifikasi Proses...................................................................................... 29
Tabel 3.12 Kamus Data ............................................................................................... 31
Tabel 3.13 Struktur Tabel Makanan............................................................................ 32
Tabel 3.14 Struktur Tabel Tahapan ............................................................................. 32
Tabel 4.1 Spesifikasi Perangkat Keras Pengujian ....................................................... 41
Tabel 4.2 Spesifikasi Perangkat Lunak Pengujian ...................................................... 42
Tabel 4.3 Rencana Pengujian ...................................................................................... 44
Tabel 4.4 Kasus dan Hasil Pengujian .......................................................................... 44
Tabel 4.5 Pengujian Metode Forward Chaining ........................................................ 45
Tabel 4. 6 Pseudocode Forward Chaining .................................................................. 46
Tabel 4.7 Graph Matriks ............................................................................................. 50

ix

DAFTAR LAMPIRAN
Lampiran A Implementasi Antarmuka ............................................................ A-1
Lampiran B Listing Program ........................................................................... B-1
Lampiran C Surat Hak Eksklusif ..................................................................... C-1

x

DAFTAR PUSTAKA
[1] Susdyastama, Y., Muslim, M. A., & Naba, A. (2013). Game Chicken Roll dengan
Menggunakan Metode Forward Chaining. Jurnal EECCIS Vol. 7, No. 1.
[2] M. S. A. Saffidine, "High Speed Forward Chaining for General Game Playing," p.
[3] I. M. J. Funge, Artificial Inteligence For Games second edition, 30 Corporate
Drive, Suite 400, Burlington, MA 01803, USA: Morgan Kauffman Publisher, 2009.
[4] Ladjamudin, al bahra , "Rekayasa Perangkat Lunak" yogyakarta : Graha Ilmu
2006
[5] Kristanto, A. (2004). Kecerdasan Buatan. Yogyakarta: Graha Ilmu.
[6] Pressman, R. S. (2010). Software engineering : a practitioner’s approach 7th ed.
McGraw Hill.
[7]Sugiyono, 2009, Metode Penelitian Kuantitatif Kualitatif dan R&D, Alfabeta,
Bandung.

50

KATA
PENGANTAR

Segala Puji dan syukur penulis panjatkan bagi Tuhan Yang Maha Esa
karena atas segala rahmat dan karunia-Nya yang memberikan kesehatan dan
hikmat kepada penulis sehingga penelitian ini dapat diselesaikan dengan baik
sesuai dengan waktu yang direncanakan.
Skripsi yang berjudul “Implementasi Metode Forward Chaining Sebagai
Penentuan Jenis Makanan Pada Game Memasak” disusun untuk memperoleh
gelar Sarjana Teknik Informatika, Fakultas Teknik dan Ilmu Komputer
Universitas Komputer Indonesia.
Pada kesempatan ini penulis hendak menyampaikan terima kasih kepada :
1. Alloh SWT atas kasih karunia-Nya sehingga penulis mampu menyelesaikan
tugas akhir ini.
2. Ibunda dan Ayahanda, terima kasih yang tak terhingga atas segala kasih
sayang, segala dukungan dan doa restu yang tidak henti-hentinya bagi penulis.
3. Keluarga besar penulis, terutama mamah ayah dan ade yang selalu memberikan
dukungan dan motivasi.
4. Ibu Tati Harihayati M.,S.T.,M.T selaku dosen pembimbing skripsi yang telah
banyak memberikan bimbingan dan saran-saran kepada penulis sejak awal
penelitian sampai dengan selesainya penulisan skripsi ini.
5. Ibu Nelly Indriani W, S.Si., M.T. selaku dosen reviewer yang telah
memberikan masukan dan saran-saran dalam penyusunan penelitian skripsi
ini..
6. Bapak Irawan Afrianto, M.T selaku ketua program studi Teknik Informatika
Universitas Komputer Indonesia
7. Ibu Kania Evita Dewi, S.Pd., M.Si. selaku dosen wali yang telah memberikan
dukungan positif terhadap penulis yang begitu berperan penting selama 8
semester ini.

iii

iv

8. Mr. Philip Morris yang sudah memberikan dukungan berupa motivasi dan
semangat yang mengkonversi rasa malas menjadi sesuatu yang bermanfaat
9. Teman-teman seperjuangan, Informatic Squad 14 dan Point Squad
10. Sara Barrailes, Ellie Goulding dan Mary Elizabeth Winstead yang sudah
memberikan dukungan maksimal yang telah menemani hari-hari yang begitu
berliku – liku tapi berakhir dengan sukacita.
11. Seluruh pihak yang telah memberikan kontribusi dan bantuannya bagi
penulis, namun tidak sempat dicantumkan namanya satu per satu.
Penulis telah berupaya dengan semaksimal mungkin dalam penyelesaian
skripsi ini, namun penulis menyadari masih banyak kelemahan baik dari segi isi
maupun tata bahasa, untuk itu penulis mengharapkan kritik dan saran yang
bersifat membangun dari pembaca demi kesempurnaan skripsi ini. Tak lupa
penulis memohon maaf apabila dalam penulisan laporan tugas akhir ini, penulis
telah menyinggung perasaan atau telah menyakiti hati semua orang, baik yang
disengaja maupun yang tidak disengaja. Kiranya isi skripsi bermanfaat dalam
memperkaya khasanah ilmu pendidikan dan juga dapat dijadikan sebagai salah
satu sumber referensi bagi peneliti selanjutnya yang berminat meneliti hal yang
sama.

Bandung, Juli 2014
Penulis

iii

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

45

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033

IMPLEMENTASI METODE FORWARD CHAINING SEBAGAI
PENENTUAN JENIS MAKANAN
PADA GAME MEMASAK
Sidik Firdaus
Universitas Komputer Indonesia
Jalan Dipatiukur No.144
sydviciously182@gmail.com

ABSTRAK
Penentuan jenis makanan pada
game
memasak merupakan bagian storyline dari sebuah
game. Masalah yang dihadapi dalam game
memasak, pemain perlu mempersiapkan alat-alat
dan bahan terlebih dahulu lalu prosesnya bisa
dimulai, berdasarkan hal tersebut kombinasi apa saja
yang dipilih dalam membuat suatu olahan sehingga
dapat mencapai goal state yaitu suatu jenis makanan.
Maksud dari penentuan jenis makanan ialah
menelusuri rule yang ditentukan sehingga
menghasilkan kesimpulan yang konsekuen dengan
menggunakan mesin inferensi tree dari forward
chaining.
Metode forward chaining merupakan
algoritma yang diimplementasikan pada penentuan
jenis makanan. Karakteristik dari metode diterapkan
pada parameter yang berupa alat dan bahan sehingga
menghasilkan output suatu makanan. Metode ini
bekerja berdasarkan rule yang dibuat berdasarkan
ketetapan rules yang mengharuskan pemain untuk
mengikuti rules yang telah dibuat, dengan
menggunakan pemodelan secara terstruktur yaitu
DFD (data flow diagram), setiap alur data yang
mengalir didalam sistem tergambar secara kongkrit.
Berdasarkan hasil pengujian yang dilakukan
pada implementasi metode ini ialah dengan
menggunakan metode pengujian metode Black box
dan White Box, keduanya menelusuri rule sehingga
menghasilkan jenis makanan yang diharapkan oleh
pemain.
Kata kunci : Metode forward chaining, black box
white box, Rules forward chaining, game memasak

1. PENDAHULUAN
Penerapan AI (artificial intelligence) yang baik pada
sebuah game adalah ketika sebuah karakter atau pola
didalam permainan menunjukan perilaku yang
realistis dan mirip dengan pemikiran manusia.
Metode forward chaining adalah metode yang
berbasiskan pada fakta yang ada sehingga
menghasilkan sebuah kesimpulan atau konsekuen,
hasil pengujian menunjukan bahwa nilai validitas
mencapai 100%. Hasil tersebut
didapat dari

komparasi data antara rules dan hasil pengujian yang
didapat saat bermain game. Metode forward
chaining biasanya dipakai pada sistem pakar atau
sistem pendukung keputusan, Forward chaining
adalah sebuah metode yang dititikberatkan pada
pendekatan yang dimotori data masukan. Suatu
perkalian inferensi yang menghubungkan suatu
permasalahan dengan solusinya yang disebut dengan
rantai.

2. Analisis Masalah
Analisis masalah yang dalam penelitian ini adalah
bagaimana menerapkan metode forward chaining
sebagai penentuan jenis makanan pada game
memasak. Analisis masalah sangat penting dalam
suatu penelitian, karena pada tahapan ini merupakan
salah satu proses mengidentifikasi masalah-masalah
yang berkaitan dengan bagaimana suatu sistem akan
melakukan proses peninjauan terhadap jenis
makanan berdasarkan penelusuran metode inferensi
forward chaining dengan penelusuran tree.
2.1 Analisis Masukan
Masukan yang diberikan terdapat 2 yaitu
daerah draggable dan daerah droppable. Keduanya
memiliki peranan penting dalam mengoptimasi
metode forward chaining dalam penentuan jenis
makanan yang ada pada game memasak
1. Area Draggable
Daerah ini berperan sebagai tempat dimana itemitem yang diperlukan untuk melakukan proses
memasak mulai dari mengumpulkan alat dan
bahan, area ini terdapat data masukan yaitu, kecap,
nasi, teplon, garam, gula, telur, minyak dan lain
sebagainya. Macam-macam objek tersebut di
inisialisasikan kedalam simbol P , untuk dilihat alur
kerja dari forward chaining pada tahap Analisis
Rules berikutnya, seperti yang ditunjukan pada
Gambar 1

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

46

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033
Masukan informasi ke
dalam working memory

Periksa Aturan
Pertama
Periksa aturan
berikutnya

Gambar 1 Area Draggable
2. Area Droppable
Area droppable merupakan daerah penentuan
yaitu kesimpulan atau output yang dihasilkan
oleh metode forward chaining dimunculkan pada
daerah droppable,seperti yang ditunjukan pada
gambar 2

Tambahkan
kondisi ke
working memory

Premis dicocokan
dengan working
memory

Aturan
berikutnya

berhenti

Gambar 3 Alur kerja
Berikut premis yang digunakan dalam game
memasak
Tabel 1 Premis
Variabel

Premis

P1

Memilih nasi sebanyak dua kali

P2
P3
P4
P5
P6

Memilih kecap satu kali
Memilih telur 2 kali
Memilih wajan satu kali
Memilih minyak satu kali
Memilih garam satu kali
Mendapatkan Goal suatu Nasi
Goreng
Memilih blender sebanyak satu
kali
Memilih es batu sebanyak 2 kali
Memilih strawberry sebanyak satu
kali
Mendapatkan Jus Strawberry
Game selesai
Game selesai

P7
Gambar 2 Area Droppable

P8
P9

2.1 Analisis Metode
Metode forward chaining adalah metode yang
bergerak dari gejala menuju kesimpulan, pertama
yang harus dilakukan adalah membuat suatu tabel
premis atau pernyataan yang berisi suatu gejala
gejala yang berpengaruh terhadap
proses
pengecekan kedua hal tersebut untuk penentuan
jenis makanan, pertama dimulai dari alur kerja
forward chaining yang diperlihatkan pada gambar
3.5

P10
P11
P12
P13

2.2 Inferensi forward chaining berdasarkan rules
Inferensi dari forward chaining yang ditunjukan
pada Gambar 4 ini dibuat berdasarkan IF-THEN
Rules yang di deskripsikan pada Tabel 3.5

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

47

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033
G1
1

0

G2
1

G3
1

G4

G5

1

1

G6

G7

0

Kecap
Bawang
putih
Bawang
Bombay
Air
Es Batu
Minyak
Nanas
Strawberry
Kecap
Sawi
Nasi
Susu

G6

©

G7

©

G8
G9
G10
G11
G12
G13
G14
G15
G16
G17

©
©
©
©
©
©
©
©

1

G8

2.3 Entity Relationship Diagram
ERD ini menggambarkan relasi atau hubungan dari
beberapa file atau beberapa tabel. Hubungan antar
entitas yang terjadi dalam game memasak, ERD
diperlihatkan pada Gambar 5

G9

1

1

G10

G11
Nama_makanan
id_makanan

0

id

1
id

value

G12

G13

1

Makanan

Tahapan

parameter

Gambar 5 Entity Relationship Diagram
2.4. Diagram Konteks
Diagram konteks adalah aliran-aliran informasi dari
DFD tingkat atas atau top level. Entitas yang terlibat
dalam simulasi antara lain adalah pengguna dan file
.Sql. Adapun Diagram Konteks dapat dilihat pada
Gambar 6. Berikut merupakan diagram Konteks
Implementasi Metode Forward Chaining Sebagai
Penentuan Jenis Makanan pada Game Memasak

1

G16

G17

JS

Data alat untuk memasak
Data bahan untuk diolah

Gambar 4 Penelusuran Tree Forward Chaining
Pemain

Tabel 2 Gejala terhadap jenis makanan

Kompor
Wajan
Panci
Blender
Bawang
merah

n

urutan

G15

1

Alat

Memilki

1

G14

NG

1

Simbol
G1
G2
G3
G4
G5

Makanan dan Minuman
Nasi Goreng
Jus
(NG)
Strawberry
(JS)
©
©
©
©

Info alat memasak
Info bahan untuk diolah

Game Memasak
Forward Chaining

Gambar 6 Diagram Konteks
2.5. Data Flow Diagram
Data flow diagram berfungsi untuk
menjelaskan aliran data yang terdapat di game
memasak forward chaining yang ditunjukan pada
gambar 7

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

48

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033
Data alat memasak
Data bahan olah

Info alat masak
Pemain

3
Forward
Chaining

Info hasil inferensi forward chaining
Data alat masak
Data bahan olah
Info bahan olah
1
Mengecek
Alat

2
Mengecek
Bahan

Data alat masak
Data bahan olah
Info alat masak

Tahapan

Nama
Proses

Mengecek Bahan

Source

Pemain

Input

Data bahan olah

Output

Info bahan olah

Destination

Pemain

Logika
Proses

Info bahan olah

1.
2.

Makanan

3.
Gambar 7 DFD Level 1
2.6 Spesifikasi Proses
Spesifikasi proses berfungsi untuk menjelaskan
proses yang terdapat pada game memasak forward
chaining. Berikut spesifikasi proses dapat dilihat
pada tabel 3
Tabel 3 Spesifikasi Proses

4.

5.
No.
Proses
Proses Mengecek Alat
No. Proses 1

Keterangan
6.

Nama
Proses

Mengecek Alat

Source

Pemain

Input

Data alat masak

Output

Info alat masak

Destination

Pemain

Logika
Proses

1.
2.
3.

1
4.

5.

6.

Proses Mengecek Bahan
2
No. Proses 2

Memilih jenis alat
Sistem mengecek
alat yang dipilih
Sistem mengecek
apakah urutan dari
alat yang diambil
sudah sesuai
Sistem mengecek
apabila alat yang
sudah dipilih maka
tidak bisa
dikembalikan
Sistem mengecek
keadaan rules
sudah terpenuhi
Sistem
menampilkan alat
yang dipilih
ditempat yang telah
ditentukan

Memilih
bahan
olah
Sistem mengecek
bahan yang dipilih
Sistem mengecek
apakah urutan dari
bahan yang diambil
sudah sesuai
Sistem mengecek
apabila alat yang
sudah dipilih maka
tidak bisa
dikembalikan
Sistem mengecek
keadaan rules
sudah terpenuhi
Sistem
menampilkan alat
yang dipilih
ditempat yang telah
ditentukan

Proses Forward Chaining
No. Proses 3
Nama
Proses

Forward Chaining

Source

Pemain

Input

1. Data alat masak
2. Data bahan olah
Info hasil inferensi Forward
Chaining
Pemain

Output
Destination

3

Logika
Proses

1.

2.

3.

4.

Sistem menerima
masukan alat
masak
Sistem menerima
masukan bahan
olah
Sistem mengecek
keadaan Rule
apakah berada
dalam keadaan
TRUE
Sistem mengecek
keadaan Rule
apakah berada
dalam keadaan
FALSE

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

49

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033
5.

6.

Sistem akan
menampilkan hasil
inferensi forward
chaining jika
kondisi TRUE
sudah terpenuhi
Sistem tidak akan
menampilkan hasil
inferensi forward
chaining jika
kondisi sistem
dalam keadaan
FALSE

2.6 Kamus Data
Kamus data merupakan sebuah daftar yang tersusun
dari elemen data yang berhubungan dengan sistem.
Kamus data dibuat berdasarkan arus data yang ada
di data flow diagram. Berikut kamus data dapat
dilihat pada tabel 4
Tabel 4 Kamus Data

Struktur data
Penjelasan
struktur data

mesin inferensi forward
chaining
ID+Parameter1+parameter2
+value
ID
[0..9]
Parameter1 [0..9]
Parameter2 [0..9]
Value
[0..9]

2.7 Skema Relasi
Skema relasi yang diperlihatkan pada gambar 8
digunakan untuk melihat relasi antar tabel yang
digunakan oleh Game Memasak Forward Chaining
Tahapan

Makanan
PK

PK

id_makanan

id
id_makanan FK
value
parameter
urutan

nama_makanan

Gambar 8 Skema Relasi
N
o

Proses
Nama
Where
used/how used
Deskripsi

1
Struktur data
Penjelasan
struktur data

Keterangan
Data alat masak
Mengecek alat masak

2.8 Perancangan AntarMuka
T02

1. Klik Back pada browser
untuk kembali ke halaman
awal
2. Pilih item alat dan bahan
untuk mengolah alat dan bahan
sehingga menjadi nasi goreng
3. Jika proses penyusunan
berhasil maka akan
memunculkan hasil akhir
berupa nasi goreng

Data yang digunakan untuk
mengecek alat apa yang
dipilih oleh pemain untuk
diproses lebih lanjut
Id1+parameter1+value1
id
[0..9]
parameter
[0..9]
value
[0..9]

Resep berikutnya

Gambar 9 Antar muka resep 1
Nama
Where
used/how used
Deskripsi

2
Struktur data
Penjelasan
struktur data

Nama
Where
used/how used
3
Deskripsi

Data bahan olah
Mengecek bahan olah
Data yang digunakan untuk
mengecek bahan apa yang
dipilih oleh pemain untuk
diproses lebih lanjut
Id2+parameter2+value2
Id2
[0..9]
Parameter2
[0..9]
Value2
[0..9]

Data alat masak dan data
bahan olah
Mengecek alat masak dan
bahan olah
Data yang digunakan ketika
mengecek alat masak dan
bahan olah yang kedua hal
tersebut akan diproses oleh

2.9 Jaringan Semantik
Pada bagian ini akan membahas tentang
perancangan form yang akan dibuat kemudian
diperlihatkan hubungan navigasi antara form-form
tersebut dan pesan-pesan yang akan muncul pada
setiap bagian form. Perancangan jaringan semantik
dapat dilihat dalam Gambar 3.18
T01

T02

T03

Gambar 10 Jaringan Semantik

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

50

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033
box

Utama
2.10 Perancangan Prosedural
Perancangan procedural pada Gambar
menjelaskan metode forward chaining bekerja

3.21

Gambar 11 Prosedural Forward Chaining
3.1 Pengujian Sistem
Pengujian sistem adalah bagian penelusuran
dalam rangka menemukan kesalahan pada sistem
yang dibangun. Tujuan utama pengujian sistem
adalah untuk mencari kesalahan pada sistem yang
dibangun sebelum sistem digunakan oleh pengguna.
3.2. Rencana Pengujian
Rencana pengujian perangkat lunak ini dibagi
menjadi 1 bagian yaitu pengujian black box box.
Pengembangan
kode-kode
program
selalu
memungkinkan terjadinya alur program yang tidak
tereksekusi dan kesalahan typography yang sulit
ditemukan kalau tidak dijalankan. Pengujian ini
dilakukan hanya pada lingkungan developer.
Pengujian black box dilakukan untuk mencari
fungsi-fungsi program yang tidak benar atau hilang.
Kesalahan lain yang mungkin terjadi dalam
pembuatan program adalah kesalahan dalam struktur
data, kesalahan antar muka, inisialisasi dan akhir
program dan kesalahan performansi.
Tabel 5 Rencana Pengujian
No.
Komponen
yang

1

Diuji
Halaman

Detail
Pengujian

Jenis
Uji

Menu mulai

Black

2

Resep 1

Nasi Goreng

3

Resep 2

3

Metode
Forward
Chaining

Strawberry
Smoothie
Metode
Forward
Chaining

Black
box
Blackbox
Black
box

3.3 Kasus dan Hasil Pengujian
Kasus dan hasil uji (data normal)
N Kasus / Skenario Hasil yang
Hasil
o
diuji
uji
diharapka Pengujia
n
n
1. Halama Memilih
Masuk
[√]
n utama menu
kedalam
berhasil
mulai
halaman
[
]
simulator
gagal
2. Resep 1 Memulai
Berhasil
[√]
proses
membuat
berhasil
memasak nasi
[ ] gagal
pembuata goreng
n nasi
goreng
3. Resep 2 Memulai
Berhasil
[√]
proses
membuat
berhasil
Membuat strawberry
[ ] gagal
Strawberr smoothie
y
Smoothie
Tabel 6 Pengujian Metode Forward Chaining

N
o

1.

Kasus dan hasil uji (data normal)
Rule
Skenario
Hasil
Hasil
yang
uji
yang
Penguji
digunak
diharapk an
an
an
P1
Menyusu
Berhasil
[√]
P2
n urutan
menyusun berhasil
P3
mulai dari mulai dari
[ ]
P4
tahap
P1 sampai gagal
P5
menyiapk dengan P7
P6
an alat
P7
dan bahan
sampai
selesai
1. Teplo
n
2. Minya
k
3. Telor
4. Nasi
5. Gara
m
6. Kecap
7. Nasi
goren

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

51

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033
9
10

g
2.

P1
P2
P3
P4
P5

Menyusu
n urutan
mulai dari
tahap
menyiapk
an alat
dan bahan
sampai
selesai
1.
Blender
2. Es Batu
3.
Strawberr
y
4. Susu
5.
Strawberr
y
Smoothie

Berhasil
menyusun
mulai dari
P1 sampai
dengan
hasil akhir
P5

[√]
berhasil
11
[]
gagal
12

13
14
15

16
17
18

19
Dengan jumlah pengujian sebanyak 2 kali, dan 2
pengujian valid maka :
Persentasi validitas = jumlah valid / jumlah
pengujian x 100%
20
= 2/2 x 100%
= 100%
Perhitungan nilai validitas didasarkan pada
perhitungan pengujian terhadap rules pada metode
forward chaining pada game memasak. Hal ini
21
membuktikan bahwa metode forward chaining pada
game memasak sebagai penentuan jenis makanan
telah berhasil diimplementasikan.

if(msg[urutan] === value){
status = true;
log.push(value + " berhasil
ditambahkan");
if(countDrop==7)
{
$("#hasil").show();
}
}
else
{
log.push(value + " gagal ditambahkan");
status = false;
}
var buf = "";
for(var i = log.length-1; i > -1; i--){
buf += log[i] + "\n";
}
$("#txtlog").text(buf);
}
});
return status;
}
$(".kompor").droppable({

3.3 Kasus dan Pengujian WhiteBox
Di bawah ini merupakan kasus metode Forward
Chaining untuk menguji perangkat lunak yang sudah
dibangun dengan menggunakan whitebox
a. Metode forward chaining

onDrop:function(e,source){
var item = $(source).clone();
item.addClass("clone");
item.appendTo('.kompor');
if(validate(countDrop,item.attr("id"))){
adonan.push(item.attr("id"));
}else{
countDrop--;
item.remove();
}
countDrop++;
}

Tabel 7 Pseudocode Forward Chaining
});
1
2
3
4
5
6
7
8

var countDrop = 0;
function validate(urutan, value){
var status = false;
$.ajax({
url : "api.php",
type:"get",async: false,
data:{"id":44,"cat":"getawal"},
success: function (response) {
var msg =
jQuery.parseJSON(response);

Jurnal Ilmiah Komputer dan Informatika (KOMPUTA)

52

Edisi. .. Volume. .., Bulan 20.. ISSN : 2089-9033
b.

FlowGraph
d.
1

Kesimpulan

Berdasarkan hasil pengujian dihasilkan nilai
Cyclomatic Complexity yang sama yaitu 5, maka
dapat disimpulkan bahwa pada proses inferensi
denngan metode forward chaining berjalan dengan
baik, karena setiap pengujian menghasilkan nilai
yang sama.

23

4

21

3. PENUTUP
5678
19 20

9
18

10

17

11
16

12

3.1 Kesimpulan
Berdasarkan hasil penelitian, analisis,
perancangan sistem, dan implementasi serta
pengujian yang telah dilakukan, maka dapat
diperoleh kesimpulan yaitu tujuan dari implementasi
forward chaining ini adalah melakukan proses
peninjauan jenis makanan berdasarkan terhadap
rules yang ditelusuri.
3.2 Saran
Forward chaining pada dasarnya bukan hanya bisa
berperan sebagai penentuan jenis makanan saja,
namun bisa juga dipakai pada karakter NPC,
sehingga bisa membuat game menjadi lebih menarik
dan interaktif

15

DAFTAR PUSTAKA
[1] Susdyastama, Y., Muslim, M. A., & Naba, A.
(2013). Game Chicken Roll dengan Menggunakan
Metode Forward Chaining. Jurnal EECCIS Vol. 7,
No. 1.

13

14

Gambar 12 Flowgraph Forward Chaining
Cycloma

b.
tic Complexity (V(G))

E (jumlah busur) = 26 , N (jumlah simpul) = 22
V(G) = E – N + 2
V(G) = 26– 22 + 2
V(G) = 6
c.

Independent Path
Path 1 = 1-2-3-4-5-6-7-8-9-10-11-12-13-14-1516-17-18-19-20-21
Path 2 = 1-2-3-4-5-6-7-8-9-10-5-6-7-8-9-1011-12-13-14-15-16-17-18-19-20-21
Path 3 = 1-2-3-4-5-6-7-8-9-10-11-12-11-12-1314-15-16-17-18-19-20-21
Path 4 = 1-2-3-4-5-6-7-8-9-10-11-12-13-14-1516-18-19-20-21
Path 5 = 1-2-3-4-5-6-7-8-9-10-11-12-13-14-1314-15-16-17-18-19-20-21
Path 6 = 1-2-3-4-5-6-7-8-9-10-11-12-13-14-1516-17-18-19-15-16-17-18-19-20-21

[2] M. S. A. Saffidine, "High Speed Forward
Chaining for General Game Playing," p.
[3] I. M. J. Funge, Artificial Inteligence For Games
second edition, 30 Corporate Drive, Suite 400,
Burlington, MA 01803, USA: Morgan Kauffman
Publisher, 2009.
[4] Ladjamudin, al bahra , "Rekayasa Perangkat
Lunak" yogyakarta : Graha Ilmu 2006
[5] Kristanto, A. (2004). Kecerdasan Buatan.
Yogyakarta: Graha Ilmu.
[6] Pressman, R. S. (2010). Software engineering : a
practitioner’s approach 7th ed. McGraw Hill.
[7]Sugiyono, 2009, Metode Penelitian Kuantitatif
Kualitatif dan R&D, Alfabeta, Bandung.