bab 2 tinjauan pustaka 2.1 landasan teorilibrary.binus.ac.id/ecolls/ethesisdoc/bab2/2013-1-01026-if...

35
8 BAB 2 TINJAUAN PUSTAKA 2.1 Landasan Teori Pada pembuatan skripsi ini, penulis menggunakan teori-teori yang bermanfaat dalam perancangan aplikasi diantaranya adalah pengertian artificial intelligence atau kecerdasan buatan, pengertian expert system atau sistem pakar, metode forward-chaining, sistem operasi Android, dan hal-hal yang terkait dalam dalam penulisan skripsi ini. 2.1.1 Perangkat Lunak 2.1.1.1 Definisi Perangkat Lunak Menurut Pressman (2010, p4), definisi dari perangkat lunak dapat diartikan sebagai berikut: 1. Instruksi (program komputer) saat dieksekusi dapat menyediakan features, fungsi, dan performa yang sesuai dan diinginkan oleh pengguna. 2. Struktur data yang memungkinkan sebuah program dapat memanipulasi informasi dengan baik. 3. Informasi deskriptif berupa hard copy dan bentuk virtual yang dapat menggambarkan operasi dan kegunaan dari suatu program. 2.1.1.2 Karakteristik Perangkat Lunak Karakteristik perangkat lunak menurut Pressman (2010, p4), jauh berbeda bila dibandingkan dengan perangkat

Upload: tranxuyen

Post on 07-Feb-2018

217 views

Category:

Documents


1 download

TRANSCRIPT

8

BAB 2

TINJAUAN PUSTAKA

2.1 Landasan Teori

Pada pembuatan skripsi ini, penulis menggunakan teori-teori yang

bermanfaat dalam perancangan aplikasi diantaranya adalah pengertian

artificial intelligence atau kecerdasan buatan, pengertian expert system atau

sistem pakar, metode forward-chaining, sistem operasi Android, dan hal-hal

yang terkait dalam dalam penulisan skripsi ini.

2.1.1 Perangkat Lunak

2.1.1.1 Definisi Perangkat Lunak

Menurut Pressman (2010, p4), definisi dari perangkat

lunak dapat diartikan sebagai berikut:

1. Instruksi (program komputer) saat dieksekusi dapat

menyediakan features, fungsi, dan performa yang

sesuai dan diinginkan oleh pengguna.

2. Struktur data yang memungkinkan sebuah program

dapat memanipulasi informasi dengan baik.

3. Informasi deskriptif berupa hard copy dan bentuk

virtual yang dapat menggambarkan operasi dan

kegunaan dari suatu program.

2.1.1.2 Karakteristik Perangkat Lunak

Karakteristik perangkat lunak menurut Pressman

(2010, p4), jauh berbeda bila dibandingkan dengan perangkat

9

keras. Karakteristik yang dimiliki perangkat lunak sebagai

berikut:

1. Perangkat lunak dapat dikembangkan dan direkayasa,

tidak di produksi dalam pengertian klasik.

2. Perangkat lunak tidak pernah kadaluwarsa.

3. Meskipun industri-industri melakukan perakitan

berbasis komponen, hampir semua perangkat lunak

tetap dibangun secara tradisional.

2.1.2 Rekayasa Perangkat Lunak

2.1.2.1 Definisi Rekayasa Perangkat Lunak

Menurut Fritz Bauer [NAU69], rekayasa perangkat

lunak adalah pembuatan dan penggunaan prinsip-prinsip

rekayasa untuk memperoleh perangkat lunak yang ekonomis

dan dapat bekerja secara efisien dan handal pada suatu

komputer.

IEEE [IEE93a] mengembangkan definisi rekayasa

perangkat lunak menjadi lebih komprehensif, definisi rekayasa

perangkat lunak adalah sebuah studi dan aplikasi dari sebuah

penerapan kuantifiabel secara sistematis, disiplin, dan

sistematis terhadap pengembangan, operasi dan pemeliharaan

perangkat lunak yang merupakan aplikasi rekayasa berkaitan

dengan semua perangkat lunak.

Pressman (2010, p14) memberikan definisi rekayasa

perangkat lunak menjadi beberapa lapisan yang terdiri dari:

1. Fokus pada kualitas (A quality focus)

Setiap pendekatan rekayasa (termasuk rekayasa

perangkat lunak) harus memiliki komitmen terhadap

kualitas produk yang dihasilkan. Budaya inilah yang

10

dapat mendukung rekayasa perangkat lunak adalah

focus pada kualitas.

2. Proses (Process)

Dasar dari rekayasa perangkat lunak adalah lapisan

proses. Proses mendefinisikan framework untuk suatu

Key Process Areas (KPAs) yang harus dibentuk untuk

melakukan pengiriman teknologi rekayasa perangkat

lunak agar berjalan efektif.

3. Metode (Method)

Pada lapisan metode menerangkan secara teknis

bagaimana cara membangun perangkat lunak. Metode

ini memiliki tahapan yang mencakup analisis

kebutuhan (requirement analysis), desain (design),

pembuatan program (program construction), pengujian

(testing), dan pemeliharaan perangkat lunak

(maintenance).

4. Alat (Tools)

Alat dalam rekayasa perangkat lunak memberikan

otomatis dan semi-otomatis dalam proses dan metode.

Sebuah sistem untuk mendukung dalam pengembangan

perangkat lunak disebut Computer-Aided Software

Engineering (CASE). Case dapat menggabungkan

perangkat lunak, perangkat keras dan database untuk

membangun lingkungan rekayasa perangkat lunak

dengan CAD/CAE (Computer-Aided Design/

Engineering) untuk perangkat keras.

11

Gambar 2.1: Lapisan Rekayasa Perangkat Lunak

2.1.2.2 Kerangka Proses (A Process Framework)

Sebuah kerangka proses menetapkan dasar untuk

rekayasa perangkat lunak secara lengkap. Proses dilakukan

dengan mengidentifikasi sejumlah kecil aktifitas framework

yang berlaku untuk semua proyek perangkat lunak, tanpa

memperhatikan ukuran maupun kompleksitasnya. Selain itu,

kerangka proses mencakup serangkaian kegiatan umbrella

activities yang berlaku pada proses perangkat lunak secara

keseluruhan. Sebuah kerangka proses generic untuk rekayasa

perangkat lunak meliputi lima kegiatan:

1. Komunikasi (Communication)

Pada kerangka kerja ini, melibatkan komunikasi dan

kolaborasi dengan pelanggan (dan stackholder lain

nya). Tujuan dari komunikasi ini adalah memahami

tujuan dari stackholder dan mengumpulkan

persyaratan yang membantu mendefinisikan features

dan fungsi dari perangkat lunak.

2. Perencanaan (Planning)

Pada kerangka kerja ini, perencanaan digunakan untuk

mendefinisikan pekerjaan rekayasa perangkat lunak

dengan menjelaskan tugas-tugas teknis yang akan

dilakukan, risiko yang mungkin terjadi, sumber daya

yang akan diperlukan, hasil produk kerja, dan jadwal

kerja.

aa ““qquuaalliittyy”” ffooccuuss

pprroocceessss mmooddeell mmeetthhooddss

ttoooollss

12

3. Pemodelan (Modelling)

Pada kerangka kerja ini, tentang pembuatan model

yang memungkinkan pengembang (developer) dan

client untuk lebih memahami kebutuhan perangkat

lunak (software requirement) dan desain untuk

mencapai atau memenuhi requirement tersebut.

4. Konstruksi (Construction)

Pada kerangka kerja ini, menggabungkan coding (baik

manual maupun otomatis) dan melakukan pengujian

(testing) yang diperlukan untuk mengungkap kesalahan

dalam kode.

5. Deployment

Perangkat lunak (sebagai entitas lengkap atau selesai

sebagian) diberikan kepada client dimana client yang

akan mengevaluasi dan memberikan umpan balik

hasil evaluasi tersebut.

2.1.2.3 Model Proses Air Terjun

Menurut Pressman (2010, p39), model proses air terjun

(the waterfall process model) sering disebut juga dengan

classic life cycle, menawarkan pendekatan yang sistematis

dan sekuensial. Untuk pengembangan perangkat lunak diawali

dengan pengumpulan spesifikasi pelanggan (requirement), lalu

ke proses perencanaan (planning), pemodelan (modelling),

konstruksi (construction) dan penyebaran (deployment) secara

bertahap hingga perangkat lunak selesai.

13

Gambar 2.2: Model Proses Waterfall

2.1.2.4 Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah bahasa

standar yang digunakan untuk menulis blueprint dalam

pembuatan perangkat lunak. UML dapat digunakan untuk

memvisualisasikan, menentukan, membangun, dan

mendokumentasikan artefak dari sebuah sistem perangkat

lunak secara intensif. Seperti seorang arsitek, mereka membuat

blueprint pembangunan yang digunakan untuk melakukan

konstruksi bangunan, sedangkan pembuat perangkat lunak

membuat UML untuk membantu pengembang perangkat lunak

agar dapat mengembangkan perangkat lunak tersebut. Jika

anda memahami UML, maka anda dapat dengan mudah

mengerti dan dapat menentukan sistem dan menjelaskan

desain sistem suatu perangkat lunak kepada orang lain. UML

2.0 menyediakan 13 diagram yang berbeda untuk digunakan

dalam pemodelan perangkat lunak. UML juga menyediakan

pilihan-pilihan sehingga anda dapat mengungkapkan aspek-

aspek penting yang ada di sebuah sistem. Anda akan memiliki

fleksibilitas untuk menekan bagian dari diagram yang tidak

relevan dengan aspek yang dimodelkan dalam rangka untuk

menghindari kekacauan diagram dengan rician yang tidak

relevan.

Sejarah UML cukup panjang. Pada tahun 1990 terdapat

puluhan metodologi pemodelan berorientasi objek telah

bermunculan. Metodologi tersebut diantaranaya adalah:

metodologi Booch, metodologi Coad, metodologi OOSE,

metodologi OMT, metodologi Shlaer-Mellor, metodologi

Wirfs-Brock, dan lain-lain. Pada saat itu, terkenal dengan masa

perang metodologi (method war) dalam bidang desain

metodologi berorientasi objek. Setiap metodologi memiliki

14

notasi yang berbeda, dan mengakibatkan timbulnya masalah

baru apabila kita melakukan kerja sama dengan suatu

grup/perusahaan lain yang menggunakan metodologi yang

berbeda.

Gambar 2.3: Metodologi UML

Pada bulan Oktober 1994 Booch, Rumbaugh dan

Jacobson menjadi pelopor usaha untuk menyatukan

metodologi desain berorientasi objek. Pada tahun 1995 UML

pertama di release dengan versi 0.8. Sejak tahun 1996

pengembangan dikoordinasikan oleh Object Management

Group (OMG), dan pada tahun 1997 muncul UML dengan

versi 1.1. Bulan Maret 2003 muncul UML versi 1.5 menjadi

versi terbaru hingga saat ini.

Object Management Group (OMG) merupakan

organisasi international yang dibentuk pada tahun 1989, yang

memiliki lebih dari 800 anggota, terdiri dari perusahaan sistem

informasi, software developer, dan pengguna sistem komputer.

Organisasi ini bertugas membuat spesifikasi “manajemen

objek” untuk menetapkan kerangka bersama dalam rekayasa

perangkat lunak.

Tujuan dari OMG adalah membantu mengembangkan

teknologi orientasi objek dan mengarahkannya dengan

15

mendirikan Object Management Architecture (OMA). OMA

bertugas untuk menentukan infrastruktur konseptual yang

didasarkan pada seluruh spesifikasi dari OMG, setelah itu

OMG akan mengeluarkan UML. Dengan adanya UML,

diharapkan dapat mengurangi kekacauan dalam bahasa

pemodelan selama ini. UML juga dapat menjawab masalah

penotasian dan mekanisme penukaran model yang terjadi.

2.1.2.5 Activity Diagram

Activity diagram seperti diagram state, merupakan

diagram yang dapat digunakan untuk memahami alur kerja

dari objek/komponen yang dilakukan. Activity diagram dapat

digunakan untuk memvisualisasikan interelasi dan interaksi

antara use case yang berbeda, serta sering dipakai untuk

mengasosiasikan dengan class yang berbeda. Kekuatan

diagram activity adalah mempresentasikan concurrent activity.

Activity diagram merupakan state diagram khusus,

dimana sebagian besar state adalah action dan sebagian besar

transisi di-trigger saat state sebelumnya selesai (internal

processing). Oleh karena itu activity diagram tidak

menggambarkan perilaku 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.

Sama dengan flowchart, activity diagram

menggunakan bentuk kotak yang agak bundar digunakan

untuk menampilkan fungsi, garis panah untuk menampilkan

16

arah jalannya sistem, bentuk diamond untuk menampilkan

cabang pilihan, dan garis lurus digunakan untuk menunjukkan

aktivitas yang terjadi secara paralel.

2.1.2.6 Use-Case Diagrams

Use-Case Diagrams merupakan salah satu bentuk dari

diagram UML yang dihasilkan dari analisis use-case dan

bertujuan untuk memberi gambaran secara umum tentang

keseluruhan fungsionalitas suatu sistem dengan adanya aktor,

aktivitas, dan ketergantungan. Interaksi antar setiap pelaku

tidak ditampilkan pada diagram use-case. Jika interaksi

penting untuk mendeskripsikan perilaku yang di inginkan,

maka sistem atau batas use-case harus diperiksa kembali dan

interaksi antara pelaku dapat menjadi bagian dari use-case

tersebut. Blok pada use-case diagrams yang digunakan antara

lain:

1. Blok use-case

Sebuah use-case menggambarkan suatu urutan

tindakan yang dapat memberikan sesuatu yang bernilai

terukur untuk aktor dan digambarkan dengan bentuk

elips.

2. Aktor

Aktor merupakan orang, organisasi, pelaku, atau sistem

eksternal yang memiliki satu atau lebih interaksi

dengan sistem.

3. Blok batasan sistem

Blok batasan sistem digunakan untuk menunjukkan

ruang lingkup sebuah sistem. Semua bagian yang ada

di dalam blok mewakili fungsi yang ada di dalam

lingkup sistem.

Aktor Use case

17

Tabel 2.1: Use-Case Diagrams

2.1.2.7 Sequence Diagrams

Sequence Diagrams adalah diagram yang

menunjukkan urutan dari pertukaran pesan antar objek, tugas

yang dilakukan dan merupakan diagram yang menjelaskan

urutan kejadian dari sebuah sistem (Timoty C, 2002).

Sequence Diagrams biasa digunakan untuk

menggambarkan skenario atau rangkaian langkah-langkah

yang dilakukan sebagai respon dari sebuah event untuk

menghasilkan sebuah output tertentu. Diawali dari aktivitas

apa yang dijalankan, proses dan perubahan apa saja yang

terjadi secara internal dan output apa yang dihasilkan.

Objek-objek yang memiliki sifat khusus, standar

UML mendefinisikan icon khusus untuk objek boundary,

controller dan persistent entity.

Gambar 2.4: Sequence Diagrams

18

2.1.3 Kecerdasan Buatan

Kecerdasan buatan atau sering dikenal dengan Artificial

Intelligence merupakan sebuah bidang di dunia teknologi modern.

Menurut Robert I. Levine, Diane Drang, dan Barry Edelson(1991, p3)

Kecerdasan buatan secara sederhana merupakan cara membuat

komputer berpikir cerdas layaknya manusia. Hal ini dapat

diimplementasikan dengan pembelajaran cara manusia berpikir untuk

membuat pilihan dan memecahkan masalah.

2.1.3.1 Pengertian Kecerdasan Buatan

Menurut Stuart Russell dan Peter Norvig (2010, p2)

Kecerdasan buatan dapat dibagi menjadi 4 pendekatan, yaitu :

1. Think Humanly (berpikir layaknya manusia),

otomatisasi dari aktifitas yang kita hubungkan dengan

pemikiran manusia, seperti membuat keputusan,

pemecahan masalah, dan pembelajaran

(Bellman,1978).

2. Think Rationally (berpikir secara rasional), Sebuah

pembelajaran mengenai komputasi yang

memungkinkan untuk mempersepsikan, membuat

alasan, dan melakukan tindakan secara rasional.

(Winston, 1992)

3. Acting Humanly (bertindak layaknya manusia), Sebuah

pembelajaran tentang bagaimana membuat komputer

dapat melakukan tugas layaknya manusia. (Rich and

Knight,1991)

19

4. Acting Rationally (bertindak secara rasional),

berhubungan dengan kecerdasan manusia.

(Nilsson,1998)

Dalam kecerdasan buatan, dapat kita ketahui bahwa

untuk melakukan pekerjaan yang rumit, banyak yang harus

dikerjakan. Dibutuhkan beberapa kemampuan-kemampuan

seperti :

1. Natural Languange Processing digunakan untuk

mengerti dan memahami bahasa manusia dan

kemudian di lakukan pemrosesan di dalam sebuah

aplikasi.

2. Knowledge Representation untuk menampung

pengetahuan dari manusia yang di simpan dalam

sebuah database.

3. Automated Reasoning untuk menggunakan informasi

yang tertampung untuk menjawab pertanyaan-

pertanyaan dan menarik sebuah kesimpulan baru.

4. Machine Learning untuk beradaptasi dengan

lingkungan baru dan mendeteksi serta memprediksi

kemungkinan-kemungkinan.

2.1.3.2 Latar Belakang Kecerdasan Buatan

Menurut Stuart Russell dan Peter Norvig (2010)

Temuan pertama yang diakui sebagai Artificial Intellingence

dibuat oleh Warren McCulloch dan Walter Pitts (1943).

Mereka menggunakan tiga sumber: Pengetahuan dasar

fisiologi dan fungsi neuron pada otak; analisis logis

proporsional berdasarkan Russell dan Whitehead; dan

komputasi Turing. Mereka mengajukan sebuah model dari

neuron buatan dimana tiap neuron di karakteristikan saling

20

terkait sesuai dengan respon dari beberapa neuron lainnya.

Sebagai contoh, Apa pun fungsi yang dapat terkomputasi

dapat dihitung dengan menggunakan jaringan dari neuron–

neuron yang saling terhubung, dan semua logika yang di

gunakan saling berhubungan (seperti contoh: and, or, not )

dapat diimplementasikan dengan struktur jaringan sederhana

atau Simple Net Structure. Pada tahun 1949, Donald Hebb

mendemonstrasikan aturan sederhana untuk merubah kekuatan

hubungan antar neuron yang sampai saat ini kita dengan

pembelajaran Hebbian atau Hebbian learning. Lalu pada tahun

1956, John McCarthy tertarik degnan teori automata, neural

nets atau jaringan neural, dan pembelajaran tentang

kecerdasan. John McCarthy berupaya untuk mencari cara

menciptakan sebuah mesin yang dapat menggunakan bahasa

manusia, membuat abstraksi dan konsep, memecahkan

masalah yang pada saat itu hanya dapat dipecahkan oleh

manusia, dan meningkatkan kecerdasan nya sendiri. Dengan

konsep yang dicetuskan muncul sebuah teori bahwa

kecerdasan buatan tidak hanya dapat memecahkan masalah

yang berhubungan dengan angka atau aritmatika saja, namun

dapat memecahkan masalah layaknya manusia. Dengan

muncul nya beragam konsep baru pada jaman tersebut

muncullah sebuah pemikiran bahwa perlunya kecerdasan

buatan untuk dibuat menjadi sebuah bidang khusus.

Yang membedakan antara sebuah program yang

terintegrasi dengan kecerdasan buatan dengan program biasa

adalah program biasa hanya memberikan hasil tanpa adanya

diagnosis yang lebih dalam. Sedangkan program yang

terintegrasi dengan kecerdasan buatan dapat menimbang dan

memberikan solusi terbaik sesuai dengan aturan yang sudah

ditentukan, sehingga jawaban atau hasil yang didapat oleh

pengguna akan berbeda satu sama lain sesuai dengan kondisi

pengguna.

21

Terdapat beberapa bidang kecerdasan buatan yang

sering dikenal oleh masyarakat luas, antara lain :

1. Sistem Pakar atau Expert System merupakan

kecerdasan buatan yang dapat memproses pilihan dan

memecahkan masalah layaknya seorang pakar.

2. Computer Vision merupakan kecerdasan buatan untuk

membuat komputer dapat melihat benda dan dapat

membedakan bentuk seperti mata pada manusia.

3. Natural Language Processing merupakan kecerdasan

buatan untuk memproses bahasa manusia sehingga

komputer dapat berinteraksi dengan manusia layaknya

percakapan normal.

4. Speech Recognition merupakan kecerdasaan buatan

untuk memproses pembicaraan manusia.

5. Neuro Computing merupakan bidang kecerdasan

buatan untuk membuat komputer dapat berpikir dan

belajar dari pilihan atau jawaban yang sudah pernah

dilakukan untuk meningkatkan ketepatan dalam

memecahkan masalah.

6. Robotics meurpakan kecerdasan buatan untuk suatu

komputer yang diberi sensor untuk dapat meniru

layaknya manusia.

7. Theorm Proving Merupakan metode untuk

membuktikan atau memverifikasi sistem model.

22

Gambar 2.5: Ruang Lingkup Kecerdasan Buatan

2.1.4 Sistem Pakar

Menurut Joseph Giarratano dan Gary Riley(1998, p2), Sistem

Pakar adalah sebuah cabang dari Artificial Intelligence yang

menggunakan perpanjangan dari pengetahuan secara khusus untuk

memecahkan masalah yang bisa dipecahkan oleh seorang pakar.

Seorang pakar adalah seseorang yang memiliki keahlian di satu

bidang. Seorang pakar dapat memecahkan suatu masalah dimana

kebanyakan orang tidak memecahkan masalah tersebut dan juga dapat

memecahkan masalah tersebut dengan lebih efisien. Pengetahuan

yang digunakan pada sistem pakar bisa berasal dari keahlian

seseorang ataupun pengetahuan umum yang didapat dari buku dan

majalah.

23

Gambar 2.6: Proses Sistem Pakar

Gambar di atas menunjukkan konsep dari sistem pakar

berbasis pengetahuan. User memberikan fakta - fakta serta informasi

lain kepada sistem, dan menerima pemecahannya sebagai gantinya.

Secara internal, Sistem pakar terdiri dari dua komponen utama.

Knowledge base berisi pengetahuan, sedangkan inference engine

menarik kesimpulan. Kesimpulan ini merupakan respon dari sistem

pakar untuk pertanyaan- pertanyaan yang diberikan oleh user.

Pengetahuan dari sebuah sistem pakar dapat ditampilkan

dengan berbagai cara, dapat dikemas aturan - aturan dan objek. Salah

satu metode yang sering digunakan dalam menampilkan knowledge

adalah dalam bentuk aturan if-then, seperti yang paling sederhana

adalah, "Jika lampu merah maka kita harus berhenti". Jika fakta

bahwa muncul lampu merah terjadi, maka rule terpenuhi dan akan

melakukan action berhenti.

Sistem pakar berbeda dengan program lainnya, karena

masalah - masalah yang terjadi biasanya tidak memiliki solusi - solusi

pasti dan bergantung pada keputusan pakar agar mendapatkan solusi

yang masuk akal. Perlu diingat bahwa solusi yang diambil merupakan

yang terbaik yang dapat kita harapkan jika tidak memiliki algoritma

yang mampu membantu kita untuk mendapatkan hasil yang optimal.

24

Sebuah sistem pakar biasanya didesain untuk mempunyai

karakteristik - karakteristik sebagai berikut:

1. Memiliki peforrma tinggi

Kualitas dari nasihat yang diberikan oleh sistem pakar harus

berada di dalam tingkat yang sangat tinggi.

2. Waktu respon yang memadai

Sistem pakar harus dapat merespon dengan jumlah waktu yang

masuk akal, sebanding atau lebih baik dari waktu yang

dibutuhkan seorang pakar untuk mencapai sebuah keputusan.

3. Dapat diandalkan

Sistem pakar harus dapat diandalkan dan tidak mudah untuk

mengalami crash yang bisa membuatnya tidak terpakai.

4. Mudah untuk dimengerti

Sistem pakar harus bisa dijelaskan langkah - langkahnya untuk

tiap langkah yang diambil sehingga membuatnya dapat

dipahami.

5. Fleksibilitas

Sebuah sistem pakar akan menyimpan knowledge dari pakar

dalam jumlah besar, maka sangatlah penting untuk

mempunyai mekanisme yang efisien untuk menambah,

mengurangi, dan mengganti knowledge tersebut.

2.1.4.1 Chain

Kumpulan dari keputusan - keputusan yang

menghubungkan sebuah masalah dengan solusinya, disebut

juga dengan chain. Sebuah chain yang metode nya menelusuri

dari sebuah masalah lalu ke solusinya adalah forward chain.

Cara lain untuk menjelaskan forward chain adalah

pengambilan keputusan dari fakta - fakta yang ada menjadi

sebuah kesimpulan. Sedangkan, sebuah chain yang ditelusuri

dari hipotesa nya lalu dilihat kembali ke fakta - fakta yang ada

disebut juga dengan backward chain. Ada sebuah ilustrasi

untuk membuat kita lebih mengerti konsep mengenai forward

25

dan backward chain ini. Suatu hari, Budi sedang

mengemudikan mobilnya dan tiba - tiba datanglah seorang

polisi mengendarai motor dengan keadaan sirinenya sedang

menyala berada di belakang mobil Budi. Melalui forward

chaining, kita bisa mengambil kesimpulan bahwa polisi

tersebut ingin memberhentikan mobil Budi ataupun orang lain.

Fakta munculnya polisi, mendukung dua kemungkinan

kesimpulan tersebut. Jika pada akhirnya polisi memotong jalan

atau melambaikan tangannya ke arah Budi, kesimpulan

selanjutnya yang dapat diambil adalah, polisi tersebut ingin

memberhentikan kita ketimbang orang lain. Berdasarkan cara

kerja hipotesis ini, kita dapat mengatakan bahwa ini termasuk

backward chaining untuk mempertanyakan kenapa itu terjadi.

Berikut ini adalah perbedaan karakteristik antara

Forward Chaining dan Backward Chaining:

Forward Chaining Backward Chaining

Perencanaan,Pengotrolan Pendiagnosaan

Kejadian sekarang ke kejadian

masa depan

Kejadian sekarang ke kejadian

masa lalu

Melihat dari penyebab ke akibat Melihat dari akibat ke

penyebab

Bottom-up reasoning Top-down reasoning

Bergerak maju untuk mencari

solusi dari fakta - fakta yang

dimiliki

Bergerak mundur untuk

mencari fakta - fakta yang

mendukung hipotesa.

Breadth-first search Depth first search

Tidak terdapat penjelasan Ada penjelasan

Tabel 2.2: Perbedaan Forward dan Backward Chaining

26

2.1.4.2 Forward-Chaining

Seperti disebutkan sebelumnya, forward-chaining

merupakan metode penelusuran yang menelusuri

permasalahannya terlebih dahulu lalu kemudian didapatkanlah

kesimpulan. Forward-chaining yang baik memiliki ciri - ciri

tree-nya lebar dan tidak terlalu mendalam dikarenakan

forward-chaining menggunakan metode pencarian breadth -

first.

Gambar 2.7: Tree Forward Chaining

Sebagai contoh dari pemakaian forward chaining, kita

akan mengambil sebuah kasus dimana kita ingin mencari

kesimpulan warna dari sebuah celana panjang. Diberikan

aturan dasar terdiri dari 4 aturan if-then sebagai berikut :

1. Jika Y terbuat dari bahan jeans maka Y adalah celana

panjang

2. Jika Y terbuat dari bahan katun maka Y adalah celana

pendek

3. Jika Y adalah celana panjang maka Then Y berwarna

hitam

4. Jika Y adalah celana pendek maka Y berwarna coklat

Pada contoh kasus diatas, "jika Y terbuat dari bahan

27

jeans" direpresentasikan sebagai antecendent, sedangkan

"Maka Y berwarna hitam" direpresentasikan sebagai

consequent. Sehingga dari aturan diatas, didapatkan bahwa

celana panjang memiliki warna hitam.

2.1.4.3 Backward-Chaining

Menurut Joseph Giarattano dan Gary Riley(1998,p143)

backward-chaining merupakan metode penelusuran yang

dimulai dari hipotesis lalu kemudian dicari fakta-fakta

pendukung dari hipotesa tersebut. Backward-chaining

merupakan metode yang berlawanan dengan forward-

chaining, karena metode ini menggunakan Depth first search.

Bentuk tree yang tepat untuk backward-chaining adalah

menyempit dan mendalam.

Gambar 2.8: Tree Backward Chaining

Kita gunakan contoh berupa kasus untuk menentukan

apakah Bob adalah seekor anjing menggunakan metode

backward chaining. Diberikan aturan dasar :

1. Jika X menggongong dan makan tulang maka X adalah

seekor anjing.

2. Jika X mengeong dan makan ikan maka X adalah

seekor kucing.

3. Jika X adalah seekor anjing maka X berwarna hitam.

28

4. JIka X adalah seekor kucing maka X berwarna putih.

Mari kita ilustrasikan backward chaining dengan

mengikuti pola dari sebuah komputer untuk mengevaluasi

aturan - aturan. Kita asumsikan fakta - fakta yang ada:

1. Bob menggongong

2. Bob makan tulang

3. Emy makan ikan

4. Emy mengeong

5. Emy berwarna putih

Dengan backward chaining, komputer dapat menjawab

pertanyaan ,"yang mana anjing?" dengan 4 langkah. Dalam

pemikirannya, komputer menggunakan pengumpamaan (disini

kita pakai simbol "?").

1. ? adalah seekor anjing.

berdasarkan aturan no. 1 , komputer dapat mengambil

kesimpulan :

2. ? menggongong dan makan tulang.

berdasarkan logika, komputer dapat mengambil

kesimpulan :

3. ? menggongong dan ? makan tulang.

berdasarkan fakta, komputer dapat mengambil

kesimpulan :

Bob menggongong dan Bob makan tulang.

Maka dapat disimpulkan bahwa Bob adalah seekor

anjing.

2.1.5 Sistem Operasi Android

Menurut Frank Ableson (2009) Android merupakan sebuah

sistem operasi open source yang lengkap berbasiskan pada Linux®

V2.6 kernel. Pada mulanya, target atau pangsa pasar dari Android

hanya meliputi telepon genggam saja seperti smartphone atau telepon

pintar, dan telepon genggam murah saja. Namun karena luasnya

29

pengembangan yang diberikan dan kaya akan fitur membuat Android

memiliki potensi untuk melampaui pasar telepon genggam saat ini.

2.1.5.1 Latar Belakang Android

Pada awalnya, Blackberry dengan sistem operasi

BlackberryOS dan iPhone dengan sistem operasi iOS

menguasai pasar smartphone, namun kedua sistem operasi

tersebut memiliki pangsa pasar yang berbeda dimana

BlackberryOS lebih ke arah pengguna bisnis dan iOS lebih ke

arah pengguna yang santai dan menginginkan fitur yang

“keren”. Android pada mulanya merupakan sistem operasi

yang baru dan belum dikenal masyarakat namun memiliki

potensi untuk memiliki kedua kelebihan dari sistem operasi

lainnya dan mungkin bisa dikatakan menjadi jembatan

penghubung antara pekerjaan dan kesenangan.

2.1.5.2 Sejarah Android

Android merupakan hasil produk dari Open Handset

Alliance, sebuah kelompok organisasi yang berkerja untuk

membuat telepon genggam menjadi lebih baik. Kelompok

tersebut meliputi Google, Operator telepon genggam, pabrik

pembuat telepon genggam, pabrik komponen telepon

genggam, pembuat software, dan perushaan periklanan. Yang

menjadi kelebihan dari sistem operasi ini dari sudut pandang

pengembang adalah Android merupakan sistem operasi

telepon genggam yang open source, yakni dalam

pengembangan nya tanpa dikenakan biaya dan siapapun dapat

mengembangkan sistem operasi ini.

Android pertama yang beredar di masyarakat adalah

G1 yang diproduksi oleh HTC dan di dukung oleh operator

30

telepon genggam T-Mobile. Pada saat peluncuran gadget ini,

tim Android mengeluarkan SDK V1.0, dari situ muncul

aplikasi-aplikasi untuk mendukung gadget tersebut. Pada saat

itu Google mengadakan kompetisi berhadiah jutaan dolar

untuk kontestan yang memenangkan aplikasi terbaik untuk

Android. Setelah beberapa bulan muncul lah Android Market

yang berfungsi untuk memperbolehkan pengguna untuk

mengunduh aplikasi langsung dari telepon genggamnya.

2.1.5.3 Arsitektur Android

Dengan luasnya kemampuan sistem operasi Android,

Android dibagi menjadi beberapa lapisan lingkungan

berdasarkan Linux kernel. Android memiliki browser yang

terintegrasi dengan WebKit, sistem yang digunakan juga pada

browser Safari dan Google Chrome. Android memiliki

konektivitas yang tinggi, meliputi WiFi, Bluetooth, data

melalu telepon selular (Seperti contoh 3G, GPRS, EDGE)

serta GPS yang berfungsi untuk mengetahui lokasi pengguna

yang terhubung dengan aplikasi Google Maps.

31

Gambar 2.9: Lapisan Lingkungan Arsitektur Android

Pemograman yang digunakan untuk pengembangan

aplikasi Android menggunakan Java. Android menggunakan

mesin virtual atau virtual machine yang bernama Dalvik

Virtual Machine, sebuah teknologi open source. Setiap

aplikasi yang dijalankan Android menggunakan Dalvik Virtual

Machine untuk menjalankan proses dari Linux kernel.

Gambar 2.10: Bentuk Lapisan Dalvik Virtual Machine

Sebuah Aplikasi Android harus memenuhi salah satu

atau lebih kriteria, yaitu :

1. Activities, sebuah aplikasi harus memiliki

tampilan atau User interface.

2. Services, sebuah servis harus dimiliki oleh

setiap aplikasi untuk jangka waktu yang

panjang seperti melakukan pembaruan atau

update dari sebuah aplikasi.

3. Content providers, sebuah aplikasi memerlukan

sebuah database atau pusat data. Kegunaan dari

Content provider adalah untuk memproses data

yang dimiliki. Bila membuat sebuah aplikasi

yang sederhana, pengembang tidak

memerlukan Content provider, namun bila

32

developer mengembangkan aplikasi yang rumit

dan kompleks, Content provider berguna untuk

mengakses dan memproses data yang sudah

ada.

4. Broadcast receivers, Sebuah aplikasi Android

mampu untuk merespon data yang masuk

seperti pada SMS.

Aplikasi Android beserta file yang disebut

AndroidManifest.xml akan masuk ke dalam sebuah

gadgetAndroid.AndroidManifest.xml berisi tentang nama kelas

atau class, kapan aplikasi dapat memproses, dan izin yang

diperlukan untuk menjalankan sebuah aplikasi. Seperti contoh,

sebuah aplikasi memerlukan jaringan internet untuk

mengunduh data, Izin untuk menggunakan jaringan internet

harus tertulis dan terdapat di dalam file manifest tersebut. Hal

ini berfungsi untuk meningkatkan keamanaan dari aplikasi-

aplikasi yang dapat merusak gadget Android pengguna.

2.1.6 Sepeda Motor

Sepeda motor adalah kendaraan transportasi beroda dua,

namun kendaraan lain yang memiliki kurang dari empat roda dan

menyentuh tanah dapat dikategorikan sebagai sepeda motor. Sepeda

motor modern didirikan pada tahun 1914 dan masih digunakan hingga

saat ini. Sistem dan struktur yang digunakan pada sepeda motor dapat

dibilang cukup sederhana. Hal tersebut meliputi mesin bertenaga

bensin untuk merubah tenaga pada piston yang terdapat dalam mesin

menjadi tenaga putar yang disalurkan ke roda, sistem transmisi,

pengendalian sepeda motor dengan pergerakan roda depan melalui

setir atau stang, dua tuas di kemudi untuk mengendalikan rem dan

kopling, serta dua tuas pada kai untuk mengendalikan rem belakang

dan pergantian gigi.

33

Perkembangan kendaraan roda dua atau sering kita kenal

dengan sepeda motor mengalami pertumbuhan yang sangat pesat

terutama di Indonesia. Hal ini terjadi karena banyak masyarakat yang

mengandalkan mobilitas dan kepraktisan dari mengendarai sepeda

motor. Selain itu sepeda motor juga memiliki keunggulan lain yaitu

hemat bahan bakar bila dibandingkan dengan kendaraan roda empat

atau sering dikenal dengan mobil.

2.1.6.1 Cara Kerja Sepeda Motor

Mesin pada sepeda motor memiliki kesamaan dengan

cara kerja pada mesin mobil. Kedua jenis kendaraan ini

menggunakan piston yang bergerak ke atas dan kebawah yang

digerakan dengan ledakan dari campuran udara dan bensin

yang di picu dengan percikan. Katup mengatur jalur masuk

nya bahan bakar sehingga pergerakan pada poros mesin terus

terjadi sehingga mengubah tenaga yang dihasilkan oleh piston

menjadi tenaga putar untuk memutar roda belakang pada

sepeda motor.

2.1.6.2 Sistem Transmisi Pada Sepeda Motor

Gambar 2.11: Bentuk Sederhana Dari Sistem Transmisi

Mesin pada sepeda motor dapat menghasilkan tenaga

yang cukup besar sehingga harus dibatasi agar kendaraan

34

dapat dikendalikan dengan baik. dengan ada nya sistem

transimisi maka tenaga yang dihasilkan tidak menjadi sia-sia

seperti contoh pada saat kita memasukan gigi satu pada

kendaraan maka kendaraan dapat melaju dengan lancar pada

awalnya, namun hanya terbatas pada kecepatan rendah, di sisi

lain bila kendaraan kita pacu langsung ke gigi empat, maka

kendaraan dapat bergerak sangant lamban pada awalnya dan

menghasilkan kecepatan tinggi pada saat waktu tertentu. Gigi

pada kendaraan bermotor adalah kumpulan dari gerigi atau

gear yang terdapat pada sistem transmisi.

Fungsi dari kopling adalah untuk mematikan sementara

tenaga yang dihasilkan dari mesinsehingga pengguna dapat

mengganti gigi transmisi. Tanpa kopling, salah satu cara untuk

membuat roda berhenti adalah dengan mematikan mesin

sepenuhnya, tentu cara ini tidaklah praktis dan mudah. Oleh

sebab itu kopling bertugas untuk memutus sementara transimis

dari poros mesin. Setelah pemilihan gigi baru sudah dipilih,

maka kopling bertugas untuk menyatukan kembali transmisi

degnan poros mesin.

2.1.6.3 CVT (Continuously Variable Transmission)

CVT atau Continuously Variable Transmission

merupakan sebuah struktur yang digunakan pada sepda motor

untuk membuat sepeda motor tidak perlu melakukan

pergantian transmisi secara manual. Tidak seperti transmisi

biasa, CVT tidak memerlukan pergantian gigi. CVT pada

sepeda motor biasanya menggunakan sistem pulley atau katrol

yakni memperbolehkan pergantian transmisi tanpa adanya

gigi. Pada CVT hanya terdiri dari 3 komponen inti, yaitu sabuk

karet, masukan atau input atau driving dari katrol dan output

atau keluaran atau driven dari katrol.

35

Gambar 2.12: Bentuk Sederhana Dari Sistem Pulley

Sabuk karet pada CVT atau yang sering dikenal dengan

V-Belt adalah suatu sabuk terbuat dari karet yang berbentuk

seperti huruf “V” yang berfungsi untuk meningkatkan gesekan

dari sabuk.

Saat kedua poros dari katrol terpisah jauh atau

diameter meningkat, sabuk berada lebih rendah dari alur, dan

lingkaran dari sabuk menjadi lebih kecil. Namun bila kedua

poros berdekatan atau diameter menurun, sabuk menjadi lebih

tinggi dari alurnyasehingga lingkaran dari sabuk menjadi lebih

besar. CVT menggunakan tekanan hidrolik untuk

menyesuaikan bagian pada katrol.

Katrol input disebut demikian karena katrol terhubung

dengan poros mesin disebut input karena dari situlah tenaga

dari mesin dialirkan ke transmisi. Katrol output disebut

demikian karena energi yang dihasilkan dari katrol input

dialirkan ke katrol output.

Saat salah satu katrol meningkatkan diameter dari

porosnya, katrol lain mengimbangkan dengan menurunkan

diameter dari poros untuk membuat sabuk tetap tegang (tidak

longgar). Hal ini menyebabkan gigi yang tidak terbatas karena

pergantian transmisi terjadi dari poros katrol. Seperti contoh

pada saat katrol output mengecil maka akan menghasilkan

36

“gigi” yang rendah sedangkan pada saat katrol output

memembesar maka akan menghasilkan “gigi” yang tinggi.

Gambar 2.13: Bentuk Dari Katrol Pada CVT

2.2 Related works

2.2.1 An Expert System for Fault Diagnosis, Repairing and

Maintenance of Electrical Machines

Di dalam jurnal yang berjudul “An Expert System for Fault

Diagnosis, Repairing and Maintenance of Electrical Machines” (V.

Kontargyri, C.Tsirekis, S.Kabanaros, A.Sakarellos, A.Moronis,

N.Kolliopoulos, S.Kaminaris, 2007), menggunakan metode

knowledge based yang diaplikasikan dengan backward-chaining

reasoning. Dengan menggunakan bentuk tree, knowledge based untuk

mendiagnosis kerusakan dan perbaikan dibagi menjadi 3 bagian

utama.Pada bagian pertama, terdiri dari tipe - tipe mesin elektrik,

yang dapat diproses oleh sistem (i.e. generator). Di bagian kedua,

semua gejala-gejala kerusakan yang mengacu pada mesin tertentu

dituliskan. Di bagian ketiga, semua kemungkinan-kemungkinan

penyebab dari kerusakan sebelumnya ditentukan serta dicari tindakan

yang tepat untuk memperbaiki kerusakan pada mesin tersebut.

37

Sistem-sistem pencarian kerusakan dan perbaikan mesin yang

pernah ada, membutuhkan jumlah data yang besar untuk dapat

menentukan secara persis dimana letak kerusakan terjadi. Itu berarti,

dibutuhkan waktu yang lama untuk sistem agar dapat memprosesnya.

Software yang ada dalam jurnal ini, dirancang untuk dapat mencapai

waktu yang lebih efisien dalam pencarian kerusakan.

Software yang dibuat dalam paper ini, sudah dikembangkan

untuk penggunaan multi-user (user, power-user, administrator) dan

sudah mencapai waktu yang efisien dalam pemroresan datanya

dengan standar kenyamanan yang memuaskan. Dengan fitur evaluasi

otomatis, knowledge tree data structure dapat dimodifikasi

berdasarkan arsip data yang menyebabkan minimalisasi waktu dan

biaya perbaikan.

2.2.2 An Expert System for Car Failure Diagnosis

Jurnal yang berjudul “An Expert System for Car Failure

Diagnosis” (Ahmad T. Al-Taani, 2005), berisi tentang sistem pakar

yang digunakan untuk mendiagnosis kerusakan pada mobil. Dalam

jurnal ini, penulis menggunakan metode knowledge-based yang

diaplikasikan dengan metode forward-chaining. Empat komponen

penting dalam knowledge-based adalah : pusat pengetahuan, mesin

interfensi, alat rekayasa pengatahuan, dan tampilan pengguna. Dalam

kerusakan pada mobil, penulis membedakan kerusakan menjadi tiga

bagian yaitu :

1. Kondisi awal yakni masalah yang terjadi saat seseorang

mencoba menyalakan kendaraan . seperti contoh mesin

tidak bekerja, mesin menyala lalu mati kembali, atau

muncul suara saat ingin dinyalakan.

2. Kondisi menyala yakni masalah yang terjadi saat mesin

sudah menyala seperti contoh bau bahan bakar, muncul asap

hitam dari knalpot, atau suhu mobil yang tidak stabil.

38

3. Kondisi saat berjalan yakni masalah yang terjadi saat mobil

dijalankan. Kondisi ini meliputi masalah yang mencakup

sistem pengereman. Seperti contoh terdengar suara ketukan

saat mobil berjalan.

Pengembangan sistem pakar memiliki struktur dalam

pembuatannya. Dalam jurnal ini penulis menggunakan beberapa

tahapan yakni tampilan pengguna, penjelasan mengenai penyebab

masalah, pusat pengetahuan, dan mesin interfensi.

Gambar 2.14 : Struktur dari Sistem Diagnosis Kerusakan Pada Mobil

Gambar 2.15: Contoh Sistem Bila Aturan Pertama Ditolak

39

Gambar 2.16: Contoh Hubungan Antara Aturan yang Dibuat

Dari sistem yang dihasilkan mengharapkan bahwa penggunaan

sistem pakar dapat menjadi sangat bermanfaat dalam mendiagnosis

kerusakan pada mobil. Program yang penulis buat masih dapat

dikembangkan lagi dengan penambahan aturan-aturan baru sehingga

program yang dibuat dapat menghasilkan hasil yang lebih akurat.

Tampilan pengguna berisi tentang representasi dari menu

tampilan yang menampilkan pertanyaan kepada pengguna dan

pengguna memilih antara jawaban ya atau tidak. Aturan yang

digunakan dalam pembuatan program ini mencakup 150 rule atau

aturan untuk berbagai macam tipe kerusakan pada mobil. Dari hasil

percobaan, program tidak pernan memberikan diagnosis yang salah

(sesuai dengan rule yang telah ditetapkan). Dapat dikatakan sistem

yang dibangung memiliki karakteristik sistem pakar yang baik seperti

respon waktu yang cepat, mudah di mengerti, dan memiliki hasil yang

baik.

40

Gambar 2.17: Tampilan Menu

2.2.3 Perancangan Dan Pembuatan Sistem Pakar Kerusakan Sepeda

Motor Honda Supra Sebagai Media Penunjang Pembelajaran

Metode penelitian yang digunakan pada jurnal berjudul

“Perancangan Dan Pembuatan Sistem Pakar Kerusakan Sepeda Motor

Honda Supra Sebagai Media Penunjang Pembelajaran” (Ari

Suhartono, L. Anang Setiyo, 2013) adalah pengumpulan data, teknik

pengumpulan data yang digunakan dalam penelitian adalah observasi,

wawancara, dan dokumentasi. Metode yang digunakan dalam

software adalah metode basis pengetahuan yang direpresentasikan

sebagai perintah berpasangan atau sebagai IF kondisi THEN aksi dan

diaplikasikan dengan forward-chaining dimana user akan diberi

pertanyaan mengenai gejala yang paling umum dialami untuk semua

jenis kerusakan mesin. User diberikan pilihan jawaban, pilihan

jawaban “Iya” untuk representasi user mengalami gejala tersebut dan

jawaban “Tidak” untuk representasi user tidak mengalami gejala

tersebut. Sedangkan backward-chaining saat user diberikan pilihan

mengenai berbagai jenis kerusakan mesin pada Motor Honda Supra

yang dipilih untuk ditampilkan informasinya. Setelah kerusakan

dipilih, maka akan tertampil seluruh keterangan kerusakan, gejala dan

beserta solusinya.

Sistem Pakar Berbasis Web Untuk Analisis Kerusakan Sepeda

Motor Honda Supra sebagai Media Penunjang Pembelajaran pada

41

Teknik Sepeda Motor SMKN 1 Geger ini dirancang dan dibangun

dengan tujuan untuk memberikan informasi dan diagnosis mengenai

kerusakan yang mungkin terjadi dan dialami oleh pengguna atau

pemilik sepeda motor berdasarkan gejala-gejala dan pertanyaan-

pertanyaan yang diajukan.

Ada banyak keuntungan bila menggunakan sistem pakar

sebagai sarana bantu pengajaran, diantaranya adalah :

1. Menjadikan pengetahuan lebih mudah didapat.

2. Menyimpan kemampuan dan keahlian seorang pakar.

3. Meningkatkan penyelesaian masalah yang khusus.

4. Meningkatkan reliabilitas.

5. Memberikan response (jawaban) yang cepat.

6. Merupakan panduan yang cerdas.

7. Dapat bekerja dengan informasi yang kurang lengkap

dan mengandung ketidakpastian.

8. Sebagai basis data cerdas, bahwa sistem pakar dapat

digunakan untuk mengakses basis data dengan cara

cerdas.

Kekurangan Sistem Pakar Kerusakan Motor Sebagai Media

Pembelajaran: Selain keuntungan di atas, sistem pakar seperti halnya

system lainnya, juga memiliki kelemahan. Di antaranya adalah :

1. Masalah dalam mendapatkan pengetahuan di mana

pengetahuan tidak selalu bisa didapatkan dengan mudah

karena kadangkala pakar dari masalah yang kita buat

tidak ada, dan kalaupun ada kadang pendekatan yang

dimiliki oleh pakar berbeda-beda.

2. Untuk membuat suatu sistem pakar yang benar-benar

berkualitas tinggi dan cocok sebagai media pembelajaran

42

sangatlah sulit dan memerlukan biaya yang sangat besar

untuk pengembangan dan pemeliharaanya.

3. Sistem pakar tidaklah 100% menguntungkan, walaupun

seorang tetap tidak sempurna atau tidak selalu benar.

Oleh karena itu perlu diuji ulang secara teliti sebelum

digunakan sebagai media pembelajaran. Sehingga dalam

hal ini peran manusia tetap merupakan faktor yang

dominan.

Kelemahan-kelemahan atau kekurangan dari sistem pakar

tersebut bukanlah sama sekali tidak bisa diatasi, tetapi dengan terus

melakukan perbaikan dan pengolahan berdasarkan pengalaman yang

telah ada maka hal itu diyakini akan dapat diatasi, walaupun dalam

waktu yang panjang dan terus menerus sesuai kemajuan teknologi

komputerisasi.