Aplikasi Diagnosa Kerusakan Pada Sepeda Motor Berbasis Handphone Menggunakan J2ME (Java 2 MIcro Edition)

(1)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

HASBY FACHRUL HAQQI AN-NAHROWI

10105106

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG


(2)

i

APLIKASI DIAGNOSA KERUSAKAN PADA SEPEDA MOTOR

BERBASIS HANDPHONE MENGGUNAKAN

J2ME (JAVA 2 MICRO EDITION)

Oleh

Hasby Fachrul Haqqi An-Nahrowi 10105106

Tugas Akhir ini membahas tentang “Aplikasi Diagnosa Kerusakan Pada Sepeda Motor Berbasis Handphone Menggunakan J2ME (Java 2 Micro Edition)”. Aplikasi dibagi menjadi tiga bagian yaitu : Diagnosa, Bantuan dan Tentang. Pengguna berinteraksi dengan aplikasi melalui ponsel. Fungsionalitas yang disediakan untuk pengguna adalah menu Diagnosa untuk menampilkan macam-macam jenis kerusakan dan memilih jenis kerusakan untuk memulai proses diagnosis, menu Bantuan untuk menampilkan informasi bagaimana menggunakan menu-menu dalam aplikasi diagnosa kerusakan pada sepeda motor ini dan menu Tentang untuk menampilkan informasi tentang pembuat aplikasi diagnosa kerusakan pada sepeda motor ini.

Aplikasi diagnosa yang dibuat ini mampu mendiagnosa jenis kerusakan yang dialami sebagai diagnosa awal. Aplikasi diagnosa ini akan memberikan informasi kepada pengguna berupa kemungkinan penyebab sebagai hasil diagnosa dan saran tindakan yang dapat dilakukan untuk mengatasi kemungkinan penyebabnya.

Aplikasi ini juga dilengkapi dengan elemen-elemen multimedia seperti teks, dan gambar. Pengujian aplikasi menggunakan dua metode yaitu pengujian fungsionalitas aplikasi yang dilakukan oleh pengembang aplikasi menggunakan emulator J2ME dan ponsel yang mendukung teknologi Java. Perangkat lunak untuk membangun aplikasi menggunakan Netbeans 6.8.


(3)

ii

By

Hasby Fachrul Haqqi An-Nahrowi 10105106

This final project discusses about "Motorcycle’s Damage Diagnosis Application Based On Handphone Using J2me (Java 2 Micro Edition)." Applications are divided into three sections : Diagnosis, Help and About. Users interact with applications via mobile phone. Functionality provided to users is to display the Diagnostics menu different types of damage and select the type of damage to begin the process of diagnosis, the Help menu to display information on how to use the menus in the application of damage diagnosis on this bike and menu About to display information about the maker diagnostic applications of damage on this bike.

Applications made this diagnosis can diagnose the type of damage experienced as an early diagnosis. This diagnostic application will provide information to users in the form of probable cause as a result of the diagnosis and suggestions for actions that can be done to overcome the possible causes.

This application is also equipped with multimedia elements such as text, and images. Testing applications using two methods: the application functionality testing performed by application developers use J2ME emulator and the phones that support Java technology. Software to build applications using Netbeans 6.8.


(4)

vi

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... vi

DAFTAR GAMBAR ... x

DAFTAR TABEL ... xii

DAFTAR LAMPIRAN ... xvii

BAB I PENDAHULUAN 1.1 Latar Belakang ... 1

1.2 Rumusan Masalah... 2

1.3 Maksud dan Tujuan ... 3

1.4 Batasan Masalah ... 3

1.5 Metodologi Penelitian... 4

1.6 Sistematika Penulisan ... 7

BAB II LANDASAN TEORI 2.1 Java 2 Micro Edition (J2ME) ... 9

2.1.1 Pengertian J2ME ... 9

2.1.2 Connected Limited Device Configuration (CLDC) ... 12

2.1.3 Connected Device Configuration (CDC) ... 12

2.2 Profil ... 13

2.2.1 Mobile Information Device Profile (MIDP) ... 14

2.3 MIDlet ... 16

2.3.1 Daur Hidup MIDlet ... 16

2.4 UML (Unified Modelling Language) ... 18

2.4.1 Use Case Diagram... .... 19


(5)

vii

2.4.7 Component Diagram... .... 21

2.4.8 Deployment Diagram... .... 21

2.4.9 Tujuan Perancangan UML ... 21

2.5 Kecerdasan Buatan ... 22

2.5.1 Pengertian Kecerdasan Buatan ... 22

2.5.2 Klasifikasi Program Kecerdasan Buatan ... 23

2.6 Sistem Pakar ... 24

2.6.1 Pengertian Sistem Pakar ... 24

2.6.2 Ciri-ciri Sistem Pakar ... 25

2.6.3 Keuntungan dan Kelemahan Sistem Pakar ... 26

2.6.3.1 Perbandingan Pakar Dengan Sistem Pakar ... 27

2.6.4 Komponen Sistem Pakar ... 27

2.6.5 Representasi Pengetahuan ... 30

2.6.6 Aturan (Rule) ... 31

2.7 Metode Inferensi Backward Chaining ... 32

2.8 Telepon Selular ... 32

2.9 Sepeda Motor ... 33

2.9.1 Prinsip Kerja Mesin Sepeda Motor ... 33

2.9.2 Bagian Penting Mesin Sepeda Motor ... 34

2.9.3 Prinsip Kerja Mesin 4 Langkah/Tak ... 36

2.9.4 Sistem Bahan Bakar ... 37

2.9.5 Fungsi Karburator ... 38

2.9.5.1 Fungsi Dari Bagian Karburator ... 38

BAB III ANALISIS DAN PERANCANGAN 3.1 Analisis Sistem ... 40


(6)

viii

3.3.3 Spesifikasi Pengguna (user) ... 44

3.4 Analisis Manajemen Memori ... 44

3.5 Analisis Perbandingan Metode Forward Chaining dengan Backward Chaining... 45

3.6 Analisis Kebutuhan Fungsional ... 47

3.7 Perancangan UML (Unified Modelling Language) ... 48

3.7.1 Use Case Diagram ... 48

3.7.1.1 Definisi Use Case ... 49

3.7.2 Skenario Use Case... 49

3.7.3 Realisasi Use Case Tahap Analisis ... 52

3.7.3.1 Kelas Analisis Use Case Konsultasi Kerusakan ... 53

3.7.3.2 Kelas Analisis Use Case Bantuan ... 53

3.7.3.3 Kelas Analisis Use Case Profil ... 54

3.7.4 Sequence Diagram ... 54

3.7.5 Activity Diagram ... 56

3.7.6 Class Diagram ... 60

3.8 Perancangan Basis Pengetahuan ... 60

3.9 Perancangan Arsitektur Menu ... 89

3.10Perancangan Antarmuka ... 89

3.11.1 Perancangan Antarmuka Halaman Splash screen ... 89

3.11.2 Perancangan Antarmuka Halaman Utama ... 90

3.11.3 Perancangan Antarmuka Konsultasi Kerusakan ... 91

3.11.4 Perancangan Antarmuka Halaman Pertanyaan ... 92

3.11.5 Perancangan Antarmuka Halaman Penyebab ... 93

3.11.6 Perancangan Antarmuka Halaman Bantuan... 94

3.11.7 Perancangan Antarmuka Halaman Profil ... 95


(7)

ix

4.4 Implementasi Antarmuka ... 100

4.4.1 Tampilan Splash Screen ... 101

4.4.2 Tampilan Menu Utama ... 101

4.4.3 Tampilan Konsultasi ... 102

4.4.4 Tampilan Bantuan ... 103

4.4.5 Tampilan Profil ... 104

4.5 Pengujian Sistem ... 105

4.5.1 Rencana Pengujian ... 106

4.5.2 Kasus dan Hasil Pengujian ... 106

4.5.3 Kesimpulan Hasil Pengujian Alpha ... 108

4.5.4 Pengujian Betha ... 108

4.5.5 Kesimpulan Hasil Pengujian Betha ... 112

4.6 Kesimpulan Pakar ... 113

BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan ... 114

5.2 Saran ... 114


(8)

(9)

(10)

1 1.1 Latar Belakang Masalah

Orang membutuhkan komunikasi untuk menjaga hubungan dengan temannya, peralatan dan layanan-layanan telepon lainnya. Di antara peralatan elektronik yang banyak orang miliki dan gunakan adalah telepon selular yang sering dibawa kemanapun mereka berada.

Telepon Seluler atau Ponsel adalah salah satu alat komunikasi yang dapat dibawa kemana saja oleh pengggunanya. Dengan adanya perkembangan teknologi yang sangat pesat, ponsel saat ini tidak hanya digunakan untuk komunikasi suara, tetapi juga dapat membeli tiket, mencari berita, perbankan, mendiagnosa sesuatu dan digunakan untuk berselancar di Internet, bahkan untuk mengoperasikan peralatan tertentu.

Boleh dikatakan suatu saat nanti kemampuan telepon selular akan dapat menyamai kemampuan komputer yang ada saat ini. Dengan kemampuan CPU dan memory yang makin meningkat, semakin dimungkinkan bagi developer untuk mengembangkan aplikasi-aplikasi pada telepon selular. Sehingga suatu saat nanti telepon selular betul-betul merupakan suatu peralatan multifungsi yang selain untuk komunikasi juga untuk mengendalikan peralatan, mengkoordinasi peralatan dan lain sebagainya.


(11)

Pada saat ini orang-orang sudah tidak asing lagi dan sangat bergantung dengan telepon selular dan kendaraan khususnya sepeda motor, dikarenakan dengan menggunakan sepeda motor kita dapat menghemat waktu dan biaya menuju tempat tujuan. Namun demikian, sering terjadi kendala dari sepeda motor yang menyebabkan kerusakan sehingga dapat mengganggu aktifitas yang akan dilakukan.

Banyak pengendara sepeda motor yang tidak mengetahui kendala yang dialami oleh sepeda motor tersebut. Maka, dari permasalahan tersebut perlu adanya sebuah aplikasi yang akan membantu pengendara sepeda motor untuk mendiagnosa kerusakan pada sepeda motor dengan memanfaatkan perkembangan teknologi telepon selular.

Dari permasalahan di atas, penulis akan membangun sebuah aplikasi

yaitu “Aplikasi Diagnosa Kerusakan Pada Sepeda Motor Berbasis

HandPhone Menggunakan J2ME (Java 2 Micro Edition)”.

1.2 Rumusan Masalah

Berdasarkan latar belakang dan judul yang telah dijabarkan diatas, maka pokok permasalahan yang dapat disimpulkan adalah :

“Bagaimana Membangun Aplikasi Diagnosa Kerusakan Pada Sepeda Motor Berbasis HandPhone Menggunakan J2ME (Java 2 Micro Edition)?”.


(12)

1.3 Maksud dan Tujuan

Maksud dari penulisan ini untuk membangun Aplikasi Diagnosa Kerusakan Pada Sepeda Motor Berbasis HandPhone Menggunakan J2ME (Java 2 Micro Edition).

Tujuan yang akan dicapai dalam pembuatan aplikasi ini adalah :

1. Memberi kemudahan informasi kepada pengendara sepeda motor dalam

mendeteksi kerusakan pada sepeda motor.

2. Memanfaatkan perkembangan teknologi telepon selular untuk membangun

aplikasi diagnosa kerusakan pada sepeda motor.

1.4 Batasan Masalah/Ruang Lingkup kajian

Untuk memudahkan dalam penyelesaian masalah agar terarahnya penyusunan skripsi ini, maka penulis akan membatasi ruang lingkup masalah dan yang akan dibahas adalah :

1. Aplikasi yang dibangun adalah untuk mendiagnosa kerusakan pada sepeda

motor bebek 4 tak yang tahun perakitannya diatas tahun 1990.

2. Aplikasi ini hanya dapat mendiagnosa kerusakan pada sepeda motor yang menggunakan sistem kerja karburator.

3. Pemakai yang melakukan interaksi dengan aplikasi ini diasumsikan

mengetahui beberapa komponen dalam sepeda motor.

4. Interaksi yang dimaksud adalah menjawab pertanyaan yang diberikan aplikasi dengan jawaban “ya” atau “tidak”.


(13)

5. Aplikasi ini dapat digunakan pada ponsel yang mendukung bahasa pemrograman Java.

6. Model proses menggunakan metode Waterfall.

7. Menggunakan metode inferensi Backward Chaining.

8. Bahasa pemrograman menggunakan J2ME (Java 2 Micro Edition).

1.5 Metodologi Penelitian

Metodologi yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut :

1. Metodologi Pengumpulan Data

Metode pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut :

a. Observasi

Melakukan pengamatan langsung ke lapangan untuk mengumpulkan informasi yang dibutuhkan dalam hal ini bagian informasi proses mendiagnosa kerusakan pada sepeda motor.

b. Studi Literatur

Melakukan penelusuran pustaka dan sumber lainnya mengenai segala sesuatu yang dibutuhkan dalam pembangunan Aplikasi Diagnosa Kerusakan Pada Sepeda Motor Berbasis HandPhone Menggunakan J2ME (Java 2 Micro Edition).

c. Wawancara (Interview)

Data akan diperoleh dengan melakukan tanya jawab dengan pihak-pihak yang diharapkan dapat mengetahui permasalahan apa saja yang


(14)

dibutuhkan seperti mekanik dan lain sebagainya yang berhubungan dengan sepeda motor yang mengetahui permasalahan dalam pembangunan aplikasi diagnosa kerusakan awal yang berhubungan dengan sepeda motor. Data wawancara ini juga akan digunakan sebagai bahan referensi untuk pembangunan aplikasi diagnosa kerusakan pada sepeda motor.

2. Metodologi Pengembangan Perangkat Lunak.

Metodologi yaitu kesatuan metode-metode atau aturan-aturan pekerjaan yang digunakan oleh suatu ilmu pengetahuan. Sedangkan metode adalah suatu cara atau teknik yang sistematik untuk mengerjakan

sesuatu. Dalam pengembangan perangkat lunak ini digunakan metode The

Classic Life Cycle (Paradigma Waterfall). Pada metode ini terdapat 5 tahap untuk mengembangkan suatu perangkat lunak. Kelima tahapan itu tersusun dari atas kebawah, diantaranya : Analysis, Design, Coding, Testing, Maintenance. Dimana konsep dari metode ini adalah bagaimana melihat suatu masalah secara sistematis dan terstruktur dari atas ke bawah.

Tahap-tahap pengembangan perangkat lunak metode waterfall dapat dilihat pada gambar :


(15)

System Engineering

System Analysis

System Design

System Maintenance System

Testing System

Coding

Feedback

Gambar 1.1. Metode The Classic Life Cycle / Waterfall

a. System / Information Engineering

Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya kedalam pembentukan perangkat lunak.

b. Analysis adalah tahap menganalisa hal-hal yang diperlukan dalam pelaksanaan proyek pembuatan atau pengembangan aplikasi.

c. Design adalah tahap penterjemah dari keperluan-keperluan yang dianalisis ke dalam bentuk yang lebih mudah dimengerti oleh pemakai. d. Coding adalah tahap penterjemah data/pemecahan masalah aplikasi


(16)

ditentukan. Pada tahap ini bahasa pemograman yang digunakan dalam pembuatan aplikasi menggunakan J2ME (Java 2 Micro Edition).

e. Testing adalah tahap pengujian terhadap program yang telah dibuat. Pengujian ini dimulai dengan membuat suatu uji kasus untuk setiap fungsi pada perangkat lunak, kemudian dilanjutkan dengan pengujian terhadap modul-modul dan terakhir pada tampilan antar muka untuk memastikan tidak ada kesalahan dan semua berjalan dengan baik dan

input/output yang diberikan hasilnya sesuai dengan yang diinginkan. f. Maintenance adalah perangkat lunak yang telah dibuat dapat

mengalami perubahan sesuai permasalah yang terjadi.

1.6 Sistematika Penulisan

Sistematika penulisan tugas akhir penelitian ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB I PENDAHULUAN

Bab ini menguraikan tentang latar belakang masalah, rumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian dan sistematika penulisan.

BAB II. LANDASAN TEORI

Bab ini membahas teori yang digunakan dalam perancangan sistem. Bahasan ini mencakup penjelasan teori sistem pakar, teori tentang perangkat


(17)

keras yang menjadi bahan penelitian dan penjelasan tentang aplikasi yang akan dibangun.

BAB III. ANALISIS DAN PERANCANGAN MASALAH

Bab ini akan membahas tentang tahap analisis sistem, analisis masalah, analisis data, representasi pengetahuan, metode inferensi yang digunakan, identifikasi masukan, identifikasi keluaran, analisis kebutuhan non fungsional dan fungsional, perancangan antar muka dan perancangan pemodelan data. BAB IV. IMPLEMENTASI DAN PENGUJIAN

Bab ini akan menjelaskan tentang imlpementasi program dan pengujian terhadap aplikasi yang telah dibangun.

BAB V. KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan yang diperoleh dari topik tugas akhir yang akan dibahas secara keseluruhan dan saran-saran untuk pengembangan program aplikasi yang telah dibangun.


(18)

9

2.1Java 2 Micro Edition (J2ME)

2.1.1 Pengertian J2ME

Java2 Micro Edition atau yang biasa disebut J2ME adalah lingkungan pengembangan yang didesain untuk meletakkan perangkat lunak Java pada barang elektronik beserta perangkat pendukungnya. Pada J2ME, jika perangkat lunak berfungsi baik pada sebuah perangkat maka belum tentu juga berfungsi baik pada perangkat yang lainnya. J2ME membawa Java ke dunia informasi, komunikasi, dan perangkat komputasi selain perangkat komputer desktop yang biasanya lebih kecil dibandingkan perangkat komputer desktop. J2ME biasa digunakan pada telepon selular, pager, Personal Digital Assistants (PDA) dan sejenisnya.

J2ME adalah bagian dari J2SE, karena itu tidak semua library yang ada pada J2SE dapat digunakan pada J2ME. Tetapi J2ME mempunya beberapa library

khusus yang tidak dimiliki J2SE. Arsitektur J2ME dapat dilihat pada gambar berikut :


(19)

Gambar 2.1 Arsitektur J2ME

Teknologi J2ME juga memiliki beberapa keterbatasan, terutama jika diaplikasikan pada ponsel. J2ME sangat tergantung pada perangkat (device) yang digunakan, bisa dari segi merk ponsel, maupun kemampuan ponsel dan dukungannya terhadap teknologi J2ME. Misalnya, jika sebuah ponsel tidak memiliki kamera, maka jelas J2ME pada ponsel tersebut tidak dapat mengakses kamera. Keterbatasan lainnya adalah pada ukuran aplikasi, karena memori pada ponsel sangat terbatas. Sebagian besar ponsel tidak mengijinkan aplikasi J2ME menulis pada file karena alasan keamanan.

Configuration merupakan Java library minimum dan kapabilitas yang dipunya oleh para pengembang J2ME, yang maksudnya sebuah mobile device

dengan kemampuan Java akan dioptimalkan untuk menjadi sesuai. Configuration

hanyalah mengatur hal-hal tentang kesamaan sehingga dapat dijadikan ukuran kesesuaian antar device. Misalnya sebuah lampu sepeda dirancang sedemikian sehingga dapat digunakan oleh berjenis-jenis sepeda. Dalam J2ME telah didefinisikan dua buah konfigurasi yaitu CLDC (Connected Limites Device


(20)

Configuration) untuk perangkat kecil dan CDC (Connected Device Configuration) untuk perangkat yang lebih besar. Lingkup CLDC dan CDC dapat dilihat pada gambar di bawah ini :

Gambar 2.2 Lingkup Configuration

Profile berbeda dengan configuration, profile membahas sesuatu yang spesifik untuk sebuah perangkat. Sebagai contoh misalnya, sebuah sepeda dengan merk tertentu, tentunya mempunyai ciri spesifik dengan sepeda lain.

Dalam gambar J2ME terdapat dua buah profile yaitu MIDP dan

Foundation Profile. Keterhubungan antara configuration dan profile yang ada pada J2ME beserta jenis mesin virtualnya dapat dilihat pada gambar berikut :


(21)

2.1.2 Connected Limited Device Configuration (CLDC)

Gambar 2.4 Arsitektur CLDC

CLDC atau Connected Limited Device Configuration adalah perangkat dasar dari J2ME, spesifikasi dasar yang berupa library dan API yang diimplemetasikan pada J2ME, seperti yang digunakan pada telepon selular, pager dan PDA. Perangkat tersebut dibatasi dengan keterbatasan memori, sumber daya dan kemampuan memproses. Spesifikasi CLDC pada J2ME adalah spesifikasi minimal dari package, kelas dan sebagian fungsi Java Virtual Machine yang dikurangi agar dapat diimplementasikan dengan keterbatasan sumber daya pada alat-alat tersebut, JVM yang digunakan disebut KVM (Kilobyte Virtual Machine). Posisi CLDC pada arsitektur J2ME dapat dilihat pada gambar di atas.

2.1.3 Connected Device Configuration (CDC)

CDC atau Connected Device Configuration adalah spesifikasi dari konfigurasi J2ME. CDC merupakan komunitas proses pada Java yang mempunyai standardisasi. CDC terdiri dari virtual machine dan kumpulan library


(22)

adalah source code yang menyediakan sambungan dengan macam-macam

platform.

Perbedaan antara CDC dan CLDC dapat dilihat dari tabel dibawah ini

Tabel 2.1 Tabel Perbandingan Antara CDC dan CLDC

CLDC CDC

Mengimplementasikan subset dari J2SE Mengimplementasikan seluruh fitur pada J2SE

JVM yang digunakan dikenal dengan nama KVM

JVM yang digunakan dikenal dengan nama CVM

Digunakan pada perangkat handled dengan ukuran memori terbatas (160 – 512 Kbytes)

Digunakan pada perangkat handled dengan ukuran memori minimal 2 Mbytes

Prosesor : 16 Bit atau 32 Bit Prosesor : 32 Bit

2.2 Profil

Profil merupakan bagian perluasan dari konfigurasi, yaitu sekumpulan kelas yang terdapat pada konfigurasi, terdapat juga kelas-kelas spesifik yang didefinisikan lagi di dalam profil. Dengan kata lain, profil akan membantu secara fungsional yaitu dengan menyediakan kelas-kelas yang tidak terdapat di level konfigurasi. Berikut ini adalah profil J2ME yang tersedia saat ini yaitu :

1. MIDP (Mobile Information Device Profile)

MIDP adalah profil yang disediakan oleh Sun Microsystems. MIDP menyediakan librari-librari Java untuk implementasi dasar antarmuka (GUI), implementasi jaringan (networking), database, dan timer. MIDP dirancang khususnya untuk wireless phone dan pager.


(23)

2. PDAP (Personal Digital Assistant Profile)

Yaitu profil untuk PDA yang memperluas fungsi-fungsi pada konfigurasi CLDC dan digunakan khusus untuk menambahkan kemampuan-kemampuan lebih apabila dibandingkan dengan penggunaan profil MIDP.

3. Foundation Profile

Yaitu profil yang digunakan untuk konfigurasi CDC. Profil ini menambahkan beberapa kelas dari J2SE ke dalam konfigurasi CDC, dan berperan juga sebagai pondasi untuk membentuk profil baru lainnya.

4. Personal Profile

Yaitu profil yang mendefinisikan ulang PersonalJava sebagai profil yang dapat digunakan sebagai profil dalam J2ME. Profil ini merupakan hasil perluasan dari Foundation Profile.

5. RMI Profile

Yaitu profil yang menambahkan dukungan RMI (Remote Method Invocation) ke dalam konfigurasi CDC.

2.2.1 Mobile Information Device Profile (MIDP)

MIDP atau Mobile Information Device Profile adalah spesifikasi untuk sebuah profil J2ME. MIDP memiliki lapisan di atas CLDC, API tambahan untuk daur hidup aplikasi, antarmuka, jaringan dan penyimpanan persisten. Pada saat ini terdapat MIDP 1.0 dan MIDP 2.0. Fitur tambahan MIDP 2.0 dibanding MIDP 1.0 adalah API untuk multimedia. Pada MIDP 2,0 terdapat dukungan memainkan tone, tone sequence dan file WAV walaupun tanpa adanya Mobile


(24)

Media API (MMAPI). Posisi MIDP pada arsitektur J2ME dapat dilihat pada gambar di atas. Berikut adalah perbandingan MIDP 1.0 dan MIDP 2.0 :

Tabel 2.2 Perbandingan MIDP 1.0 dan MIDP 2.0

Spesifikasi MIDP 1.0 MIDP 2.0

Display 96 x 54 96 x 54

Kedalaman Display

1 -bit 1 -bit

Bentuk piksel (rasio aspek)

Mendekati 1:1 Medekati 1:1

Input Keyboard dan touch screen Keyboard dan touch screen Memori 128 KB memori non-volatile untuk

komponen MIDP.

8 KB memori non-volatile untuk data persistence yang dibuat oleh aplikasi.

32 KB memori volatile untuk JRE.

256 KB memori non-volatile untuk komponen MIDP.

8 KB memori non-volatile untuk data persistence yang dibuat oleh aplikasi.

128 KB memori volatile untuk JRE. Jaringan Dua arah, tanpa kabel (wireless) Dua arah, tanpa kebel (wireless)

Library J2ME

yang bukan merupakan

library J2SE

javax.microedition.lcdui, javax.microedition.midlet, javax.microedition.rms javax.microedition.lcdui, javax.microedition.midlet, javax.microedition.rms, javax.microedition.lcdui.game, javax.microedition.media, javax.microedition.pki

Multimedia Memiliki kemampuan untuk

memainkan file multimedia (suara dan video)

MIDP User Interface API memiliki API level tinggi dan level rendah. API level rendah berbasiskan penggunaan dari kelas abstrak Canvas, sedangkan kelas API level tinggi antara lain Alert, Form, List dan TextBox yang merupakan eksistensi dari kelas abstrak Screen. API level rendah lebih memberikan kemudahan kepada pengembang untuk memodifikasi sesuatu dengan kehendaknya, sedangkan API level tinggi biasanya hanya memberikan pengaksesan yang terbatas. Arsitektur antarmuka MIDP dapat dilihat pada gambar di bawah ini:


(25)

Gambar 2.5 MIDP User Interface

2.3 MIDlet

MIDlet adalah bagian dari kelas javax.microedition.midlet.MIDlet yang didefinisikan pada MIDP. MIDlet berupa sebuah kelas abstrak yang merupakan sub kelas dari bentuk dasar aplikasi sehingga antarmuka antara aplikasi J2ME dan aplikasi manajemen pada perangkat dapat terbentuk.

2.3.1 Daur Hidup MIDlet

MIDlet terdiri dari beberapa metode yang harus ada, yaitu construktor() protected void startApp() throws MIDletStateChangeException, protected void pauseApp(), protected void destroyApp(boolean unconditional) throws MIDletStateChangeException. Alur hidup MIDlet dapat dilihat pada gambar 2.6.


(26)

Gambar 2.6 Alur Hidup MIDlet

Ketika MIDlet dijalankan maka akan diinisialisasi dengan kondisi pause

dan dijalankan pauseApp(), kondisi berikutnya adalah fungsi MIDlet dijalankan, yaitu pada startApp(). Metode tersebut diimplementasikan sebagai protected

dengan maksud agar MIDlet lain tidak dapat memanggil metode tersebut.

Ketika keluar dari MIDlet, maka metode destroyApp() akan dijalankan sebelum MIDlet benar-benar tidak berjalan lagi. DestroyApp() akan memanggil

notifyDestroyed(), dan notifyDestroyed() akan memberitahu platform untuk menterminasi MIDlet dan membersihkan semua sumber daya yang mengacu pada MIDlet.

Dalam implementasinya, MIDlet memiliki struktur direktori antara lain sebagai berikut :


(27)

1. src

menyimpan source code untuk MIDlet dan kelas lain yang diperlukan. 2. res

Menyimpan sumber daya yang dibutuhkan oleh MIDlet, seperti misalnya gambar icon.

3. lib

menyimpan file JAR atau ZIP yang berisi library tambahan yang dibutuhkan MIDlet.

4. bin

menyimpan file JAR, JAD dan file manifest yang berisi muatan komponen MIDlet.

2.4 UML (Unified Modelling Language)

Unified Modelling Language (UML) adalah sebuah bahasa untuk menentukan, visualisasi, konstruksi, dan mendokumentasikan artifacts dari sistem

software, untuk memodelkan bisnis, dan sistem nonsoftware lainnya. Artifacts

adalah sepotong informasi yang digunakan atau dihasilkan dalam suatu proses rekayasa software. Artifacts dapat berupa model, deskripsi, atau software.

Untuk membuat suatu model, UML memiliki diagram grafis yang diberi nama berdasarkan sudut pandang yang berbeda-beda terhadap sistem dalam proses analisa atau rekayasa. Diagram grafis tersebut antara lain :

1. Use case diagram


(28)

3. Behavior diagram :

a. Statechart diagram

b. Activity diagram

c. Interaction diagram :

1. Sequence diagram

2. Collaboration diagram

4. Implementation diagram :

a. Component diagram

b. Deployment diagram

2.4.1 Use Case Diagram

Use case diagram menjelaskan manfaat sistem jika dilihat menurut pandangan orang yang berada diluar sistem (actor). Diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem berinteraksi dengan dunia luar.

2.4.2 Class Diagram

Class diagram membantu dalam visualisasi struktur kelas-kelas dari suatu sistem dan merupakan tipe diagram yang paling banyak dipakai. Class diagram

memperlihatkan hubungan antarkelas dan penjelasan detail tiap-tiap kelas didalam model desain dari suatu sistem .

Selama proses analisis, class diagram memperlihatkan aturan-aturan dan tanggung jawab entitas yang menentukan perilaku sistem. Selama tahap desain,


(29)

class diagram berperan dalam menangkap struktur dari semua kelas yang membentuk arsitektur sistem yang dibuat.

2.4.3 Statechart Diagram

Statechart diagram dapat digunakan untuk memodelkan perilaku dinamis satu kelas atau objek. Statechart diagram juga dapat memperlihatkan urutan keadaan sesaat (state) yang dilalui sebuah objek, kejadian yang menyebabkan sebuah transisi dari satu state atau aktivitas kepada yang lainnya, dan aksi yang menyebabkan perubahan satu state atau aktivitas.

2.4.4 Activity Diagram

Activity diagram memodelkan alur kerja sebuah proses bisnis dan urutan aktivitas dalam suatu proses. Diagram ini sangat mirip dengan flowchart karena dapat memodelkan sebuah alur kerja satu aktivitas ke aktivitas lainnya atau dari satu aktivitas ke dalam keadaan sesaat (state). Seringkali bermanfaat bila membuat sebuah proses activity diagram terlebih dahulu dalam memodelkan sebuah proses untuk membantu memahami proses secara keseluruhan.

2.4.5 Sequence Diagram

Sequence diagram menjelaskan interaksi objek yang disusun dalam suatu urutan waktu. Diagram ini secara khusus berasosiasi dengan use case. Sequence diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk menghasilkan sesuatu didalam use case.


(30)

2.4.6 Collaboration Diagram

Collaboration diagram melihat pada interaksi dan hubungan terstruktur antarobjek. Tipe diagram ini menekankan pada hubungan antarobjek, berbeda dengan sequence diagram yang menekankan pada urutan kejadian. Collaboration diagram digunakan sebagai alat untuk menggambarkan interaksi yang mengungkapkan keputusan mengenai perilaku sistem.

2.4.7 Component Diagram

Component diagram menggambarkan alokasi semua kelas dan objek ke dalam komponen-komponen dalam desain fisik sistem software. Diagram ini memperlihatkan pengaturan dan kebergantungan antara komponen-komponen software, seperti source code, binary code, dan komponen tereksekusi (executable components).

2.4.8 Deployment Diagram

Deployment diagram memperlihatkan pemetaan software kepada hardware. Setiap model hanya memiliki satu diagram deployment.

2.4.9 Tujuan Perancangan UML

Perancangan UML mempunya beberapa tujuan utama. Tujuan-tujuan tersebut adalah sebagai berikut :

1. Menyediakan bahasa pemodelan visual yang ekspresif dan siap pakai untuk pengembangan dan pertukaran model-model yang berarti.


(31)

2. Menyediakan mekanisme perluasan dan spesifikasi untuk memperluas konsep inti.

3. Mendukung spesifikasi independen pada bahasa pemrograman dan proses pengembangan tertentu.

4. Menyediakan basis formal untuk bahasa pemodelan.

5. Mendukung konsep-konsep pengembangan level tinggi, seperti komponen, kolaborasi, framework dan pattern.

2.5 Kecerdasan Buatan

2.5.1 Pengertian Kecerdasan Buatan

Kecerdasan buatan adalah suatu ilmu yang mempelajari cara membuat komputer melakukan sesuatu seperti yang di lakukan oleh manusia. Kecerdasaan buatan (Artificial Intelegence) merupakan kawasan penelitian, aplikasi dan instruksi yang terkait dengan pemprograman komputer yang melakukan sesuatu hal dalam pandangan manusia adalah cerdas. Kecerdasan buatan (AI) sebagai sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia.

Ada tiga tujuan kecerdasan buatan, yaitu membuat komputer lebih cerdas, mengerti tentang kecerdasan dan membuat mesin lebih berguna. Yang dimaksud kecerdasan adalah kemampuan untuk belajar atau mengerti dari pengalaman, memahami pesan yang kontradiktif dan ambigu, menanggapi dengan cepat dan baik atas situasi yang baru. Menggunakan penalaran dalam memecahkan masalah serta menyelesaikan dengan efektif.


(32)

2.5.2 Klasifikasi Program Kecerdasan Buatan

Makin pesatnya perkembangan teknologi menyebabkan adanya perkembangan dan perluasan lingkup yang membutuhkan kehadiran kecerdasan buatan, karakteristik cerdas mulai dibutuhkan diberbagai disiplin ilmu dan teknologi. Kecerdasan tidak hanya dominan dibidang ilmu komputer (informatika), namun juga sudah merambah di berbagai disiplin ilmu yang lain. Enam golongan dasar dalam kecerdasan buatan adalah :

1. Sistem Pakar (Expert System)

Disini komputer digunakan sebagai sarana untuk menyimpan pengetahuan para pakar. Dengan demikian komputer akan memiliki keahlian untuk menyelesaikan permasalahan dengan meniru keahlian yang dimiliki oleh pakar.

2. Pengolahan Bahasa ALami (Natural Language Proccesing) dan Peniruan Sematik ( Sematik Modeling) Seperti penerjemah dari suatu bahasa kebahasa lain.

3. Pembuktian Teorema (Theorem Proving) dan Penalaran Terotomatisasi (Automatic Reasoning), Seperti program Simon’s Logic Theorist yang bermanfaat untuk membuktikan suatu dalil matematis dari sejumlah aksioma.

4. Robotika (Robotics) dan perencanaan (Planning) seperti robot-robot dalam industri

5. Peniruan perilaku manusia (Human Performance Modeling), perangkat lunak yang dapat meniru perilaku manusia dewasa ini dipahami oleh para


(33)

psikolog untuk menganalisa teori Freud dan berbagai teori psikologi lainnya.

6. Permainan game cerdas (Game Playing), seperti permainan catur.

2.6 Sistem Pakar

2.6.1 Pengertian Sistem Pakar

Sistem pakar adalah sistem berbasis komputer yang menggunakan pengetahuan, fakta dan teknik penalaran dalam memecahan masalah. Yang biasanya hanya dapat dipecahkan oleh seorang pakar dalam bidang tersebut.

Pada dasarnya sistem pakar diterapkan untuk mendukung aktivitas pemecahan masalah. beberapa pemecahan masalah yang dimaksud antara lain : pembuatan keputusan (decicion making), pemaduan pengetahuan (knowledge fusing), pembuatan desain (designing), perencanaan (planning), prakiraan

(forecasting), pengaturan (regulating), pengendalian (controlling), diagnosis

(diagnosing), perumusan (prescribing), penjelasan (explaining), pemberian nasihat (advising), dan pelatihan (tutoring). Selain itu sistem pakar juga dapat berfungsi sebagai asisten yang pandai dari seorang pakar.

Sistem pakar dibuat pada wilayah pengetahuan tertentu untuk suatu kepakaran tertentu yang mendekati kemampuan manusia disalah satu bidang. Sistem pakar mencoba mencari solusi yang memuaskan sebagaimana yang dilakukan seorang pakar. Selain itu sistem pakar juga dapat memberikan penjelasan terhadap langkah yang diambil dan memberikan alasan atas saran atau kesimpulan yang ditemukan.


(34)

Biasanya sistem pakar hanya digunakan untuk memecahkan masalah yang sulit untuk dipecahkan dengan pemrograman biasa, mengingat biaya yang diperlukan untuk membuat sistem pakar jauh lebih besar dari pembuatan sistem biasa. Lebih jelas mengenai konsep dasar sistem pakar ini dapat dilihat pada gambar :

Gambar 2.7 Konsep Dasar Fungsi Sistem Pakar

2.6.2 Ciri – Ciri Sistem Pakar

Sistem pakar memiliki ciri- ciri sebagai berikut : 1. Terbatas pada bidang yang terpilih

2. Dapat memberikan penalaran untuk data – data yang tidak lengkap atau tidak pasti.

3. Dapat mengemukakan rangkaian alasan yang diberi hanya dengan cara yang dapat dipahami.


(35)

5. Dirancang untuk dapat dikembangkan secara bertahap. 6. Outputnya bersifat nasihat atau anjuran.

7. Output tergantung dari dialog dengan user 8. Knowledge base dan inference engine terpisah.

2.6.3 Keuntungan dan Kelemahan Sistem Pakar

a. Keuntungan Sistem Pakar :

1) Memungkinkan orang awam dapat mengerjakan pekerjaan para ahli.

2) Dapat melakukan proses secara berulang secara otomatis. 3) Menyimpan pengetahuan dan keahlian para pakar.

4) Meningkatkan output dan produktivitas. 5) Meningkatkan kualitas.

6) Memiliki kemampuan untuk mengakses pengetahuan. 7) Meningkatkan kapabilitas dalam penyelesaian masalah. 8) Menghemat waktu dalam pengambilan keputusan. b. Kelemahan Sistem Pakar :

1) Biaya mahal.

2) Sulit dikembangkan.


(36)

2.6.3.1 Perbandingan Pakar dengan Sistem Pakar

Tabel 2.3 Perbandingan antara pakar dengan sistem pakar.

2.6.4 Komponen Sistem Pakar

Sistem pakar disusun oleh dua bagian utama, yaitu :

1. Lingkungan pengembangan (development environment), yaitu digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar. 2. Lingkungan konsultasi (consultation environment), yaitu digunakan oleh

pengguna yang bukan pakar guna memperoleh pengetahuan pakar. Komponen-komponen sistem pakar dapat dilihat pada gambar :


(37)

Gambar 2.8 Komponen-komponen Sistem Pakar

a. Knowledge Base

Knowledge base (basis pengetahuan) adalah sebuah basis data yang menyimpan aturan-aturan tentang suatu domain knowledge/pengetahuan tertentu. Knowledge base merupakan inti dari program sistem pakar karena basis pengetahuan itu merupakan presentasi pengetahuan (knowledge presentation).

Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi, dan penyelesaian masalah. Komponen sistem pakar ini disusun atas dua elemen dasar, yaitu fakta dan aturan.

b. Working Memory

Working memory adalah bagian yang mengandung fakta-fakta, yaitu : 1. Fakta awal pada saat sistem beroperasi.


(38)

Sistem akan mencocokkan fakta yang diperoleh dengan pengetahuan yang ada di basis pengetahuan untuk mencari fakta berikutnya ataupun untuk mendapatkan suatu kesimpulan.

c. Inference Engine

Inference engine (mesin inferensi) mengandung mekanisme pola pikir dan penalaran yang digunakan oleh pakar dalam menyelesaikan suatu masalah. Mesin inferensi adalah program komputer yang memberikan metodologi untuk penalaran tentang informasi yang ada dalam basis pengetahuan dan dalam workplace/working memory, dan untuk memformulasikan kesimpulan.

Inference engine (mesin inferensi) adalah prosesor dalam sistem pakar yang bertugas untuk mencocokkan fakta yang diperoleh working memory dan domain knowledge base untuk mengahasilkan suatu kesimpulan. Mesin memulai pelacakannya dengan mecocokkan kaidah-kaidah dalam basis pengetahuan dengan fakta-fakta yang ada dalam basis data. Terdapat dua teknik inferensi, yaitu :

1. Penalaran maju (forward chaining), yaitu pencocokkan premise-premise yang ada untuk menghasilkan kesimpulan.

2. Penalaran mundur (backward chaining), yaitu mencari fakta berdasarkan kesimpulan untuk membuktikan bahwa kesimpulan adalah benar.


(39)

d. Interface

Interface (antarmuka) merupakan mekanisme yang digunakan oleh pengguna dan sistem pakar untuk berkomunikasi. Antarmuka menerima informasi dan pemakai dan mengubahnya ke dalam bentuk yang dapat diterima oleh sistem. Selain itu antarmuka menerima informasi dari sistem dan menyajikannya ke dalam bentuk yang dapat dimengerti oleh pemakai.

2.6.5 Representasi Pengetahuan

Menurut Turban, ada beberapa tipe pengetahuan yang bisa dikategorikan dalam bentuk keahlian, yaitu :

1. Teori-teori yang mendasari suatu permasalahan.

2. Aturan-aturan baku dan prosedur-prosedur yang berkaitan dengan permasalahan tertentu.

3. Aturan-aturan (heuristik) tentang apa yang harus dikerjakan dalam suatu permasalahan yang diberikan.

4. Strategi-strategi global untuk pemecahan dari tipe-tipe ini. 5. Meta knowledge (pengetahuan dari pengetahuan).

6. Fakta atau bukti tentang suatu permasalahan.

Dalam sistem pakar, pengetahuan yang telah diuraikan direpesentasikan ke dalam bentuk yang dapat diproses oleh komputer. Ada empat jenis representasi pengetahuan, yaitu :

1. Logika

2. Jaringan Semantik

3. Frame


(40)

2.6.6 Aturan (Rules)

Rules merupakan pengetahuan prosedural yang menghubungkan informasi yang diberikan dengan tindakan (action). Struktur rule, secara logika menghubungkan satu atau lebih antecendent (premis) yang berada pada bagian

IF, dengan satu atau lebih consequent (konklusi) pada bagian THEN. Contoh :

IF warna baju itu biru THEN saya suka baju itu.

Sebuah rule dapat mempunyai multiple premise yang tergabung dengan menggunakan operasi logika (AND, OR). Bagian konklusi dapat berupa kalimat tunggal atau gabungan dengan menggunakan operasi logika (AND) dan dapat pula memiliki kalimat ELSE. Contoh : IF baju warna biru AND harga baju murah, THEN saya akan beli baju itu.

Aturan (rules) terdiri dari beberapa jenis, yaitu : relationship/hubungan, rekomendasi, strategi, heuristik, interpretasi, analisis, dan desain. Representasi pengetahuan jenis aturan (rules) memiliki beberapa keunggulan dan keterbatasan, yaitu :

1. Keunggulan

a. Modifikasi dan perawatan relatif mudah. b. Uncertainty dapat dikombinasikan dengan rules.

c. Tiap rules biasanya independent dari yang lainnya. 2. Keterbatasan

a. Pengetahuan yang kompleks membutuhkan rules yang sangat banyak. b. Sistem dengan banyak rules mempunyai keterbatasan dalam proses


(41)

2.7 Metode Inferensi Backward Chaining

Backward chaining adalah suatu rantai yang dilintasi dari suatu hipotesa kembali ke fakta yang mendukung hipotesa tersebut. Pokok permasalahan

backward chaining adalah untuk mendapatkan suatu rantai yang menghubungkan fakta-fakta ke hipotesis.

Dalam backward chaining, sistem bekerja dari tujuan/hipotesis kemudian menghubungkan fakta yang diperoleh dengan aturan yang ada untuk mencocokkan dengan tujuan yang diharapkan. Gambar 2.9 memperlihatkan konsep dari backward chaining.

Gambar 2.9 Konsep Backward Chaining

2.8 Telepon Selular

Handphone atau dengan nama lain telepon selular merupakan sebuah perangkat telekomunikasi elektronik yang mempunyai kemampuan dasar yang sama dengan telepon fixed line yang konvensional, namun dapat dibawa ke mana-mana (portable) dan tidak perlu disambungkan dengan jaringan telepon


(42)

menggunakan kabel (nirkabel, wireless). Indonesia mempunyai dua jaringan telepon selular nirkabel saat ini, yaitu Global System for Mobile Telecommunication (GSM) dan Code Division Multi Access (CDMA).

Telepon selular selain berfungsi untuk melakukan dan menerima panggilan, umumnya juga mempunya fungsi pengiriman dan penerimaan pesan singkat atau Short Message Service (SMS). Telepon selular juga beredar di pasaran dengan harga yang cukup tinggi karena adanya tambahan fitur, seperti kamera, layanan internet, Bluetooth dan lain sebagainya. Selain itu juga terdapat

manufacture telepon selular di beberapa negara yang menyiadakan layanan generasi ketiga (3G) yang menambahkan jasa video call maupun televisi online di ponsel mereka.

Selain kelebihan tersebut, kebanyakan Vendor telepon selular telah menyertakan fasilitas Java Enable pada produknya. Dengan adanya fitur Java Enable pada telepon selular, memungkinkan pengguna telepon selular tersebut semakin mudah untuk menambahkan sendiri aplikasi-aplikasi berbasisi Java 2 Micro Edition (J2ME).

2.9 Sepeda Motor

2.9.1 Prinsip Kerja Mesin Sepeda Motor

Sistem kerja yang baik pada sebuah mesin kendaraan sangat di tentukan oleh beberapa faktor. Berikut ini adalah beberapa hal yang harus dilakukan agar mesin kendaraan sepeda motor dapat bekerja dengan baik :

1) Mengisap bahan bakar (campuran bensin dengan udara) masuk kedalam ruang bakar.


(43)

2) Menaikkan tekanan gas campuran bensin dan udara agar diperoleh tekanan hasil

3) pembakaran yang cukup tinggi.

4) Meneruskan gaya tekan hasil pembakaran sahingga dapat digunakan sebagai tenaga penggerak.

5) Membuang gas hasil pembakaran keluar dari ruang pembakaran. Pada sepeda motor tenaga didapat dari hasil pembakaran bensin bercampur udara di dalam suatu ruang baker yang kemudian akan menimbulkan panas. Panas ini kemudian di ubah menjadi tenaga gerak/tenaga mekanis di dalam suatu mesin yang disebut “Motor Bakar”.

2.9.2 Bagian Penting Mesin Sepeda Motor

1) Silinder

Adalah sebagai tempat pembakaran campuran bahan bakar dengan udara untuk mendapatkan tekanan dan temperature yang tinggi. Silinder pada umumnya dibuat dari bahan baja tuang untuk mesin besar dan untuk mesin kecil terbuat dari bahan logam alumuniun paduan yang di bagian dalamnya dipasangkan tabung dari bahan baja yaitu pada bagian tempat bergeraknya torak.

2) Kepala Silinder

Terbuat dari bahan alumunium paduan, Untuk menghindari terjadinya kebocoran gas terutama pada saat langkah kompresi, maka pemasangan paking dan pengencangan baut untuk merapatkan kepala silinder terhadap silindernya haruslah seteliti mungkin.


(44)

3) Bak Mesin

Bak mesin merupakan tempat silinder, poros engkol, dan gigi transmisi, terbuat dari bahan alumunium paduan.

4) Torak/Piston

Terbuat dari bahan alumunium paduan yang mempunyai sifat : a) Ringan

b) Penghantar panas yang baik c) Pemuaian kecil

d) Tahan terhadap keausan akibat gesekan dan

e) Kekuatan yang tinggi terutama pada temperature tinggi 5) Cincin Torak

Fungsinya untuk mempertahankan kerapatan antara torak dangan dinding silinder agar tidak ada kebocoran gas dari ruang bakar kedalam bak mesin. Cincin torak ada dua macam, yakni cincin kompresi dan cincin pelumasan.

6) Pena Torak

Berfungsi untuk mengikat torak terhadap batang penggerak, selain itu juga berfungsi sebagai pemindah tenaga dari torak ke batang penggerak agar gerak bolak balik dari torak agar dapat di ubah menjadi gerak berputar pada poros enggkol.

7) Batang Penggerak


(45)

8) Poros Engkol

Pada umumnya poros engkol terbuat dari bahan baja 9) Roda Gaya/Roda Penerus

Berputarnya poros engkol secara terus menerus itu adalah akibat adanya tenaga gerak (energi kinetis) yang di simpan pada roda penerus sebagai kelebihan pada saat langkah kerja. Roda penerus atau disebut juga roda gila dalam pembuatannya harus di balancing dengan teliti agar putaran mesin rata betul tanpa getaran – getaran. Pada mesin sepeda motor umumnya roda gila berfungsi juga sebagai rotor generator.

10) Katup.

Untuk mesin 4 langkah pemasukan bahan bakar dan pembuangan gas sisa pembakaran dilakukan melalui katup masuk dan katup buang.

2.9.3 Prinsip Kerja Mesin 4 Langkah/Tak

1) Langkah Isap

a) Torak dari TMA ke TMB

b) Katup masuk terbuka, katup buang tertutup

c) Campuran bahan bakar dengan udara yang telah tercampur di dalam karburator, masuk dan di isap ke dalam silinder.

d) Saat torak berada di TMB katup masuk akan tertutup 2) Langkah kompresi atau penekanan

a) Torak bergerak dari TMB ke TMA

b) Katup masuk dan katup buang kedua-duanya tertutup sehingga gas yang telah di isap tadi tidak dapat keluar pada waktu di tekan oleh


(46)

torak yang mengakibatkan tekanan gas akan naik sambil mengeluarkan panas.

c) Beberapa saat sebelum torak mencapai TMA busi mengeluarkan bunga api listrik.

d) Gas/bahan bakar yang telah mencapai tekana tinggi tadi terbakar e) Akibat pembakaran bahan bakar tadi, tekanan akan naik menjadi

kira-kira tiga kali lipat. 3) Langkah kerja/ekpansi

a) Saat ini kedua katup masih dalam keadaan tertutup

b) Gas yang terbakar tadi dengan temperature dan tekanan yang tinggi akan mengembang kemudian menekan dan memaksa torak turun dari TMA ke TMB

c) Saat inilah pertama kali tenaga poros (kalori) di ubah menjadi tenaga bergerak/mekanis. Tenaga ini disalurkan belalui batang penggerak, selanjutnya oleh poros engkol di ubah menjadi gerak putar

4) Langkah pembuangan

a) Katup buang terbuka, katup masuk tertutup. b) Torak bergerak dari TMB ke TMA.

c) Gas sisa pembakaran terdorong oleh torak keluar melalui katup buang menuju udara bebas.

2.9.4 Sistem Bahan Bakar

Tenaga yang timbul di dalam suatu motor bakar adalah akibat adanya pembakaran campuran bensin dan udara. Bensin tidak akan mudah terbakar tanpa


(47)

adanya oksigen yang tepat di dalam udara. Dengan demikian peranan udara di sini adalah untuk mempermudah pembakaran bensin.

2.9.5 Fungsi Karburator.

Berikut ini adalah fungsi dari karburator :

a) Mencampur perbandingan udara dengan bensin dalam perbandingan yang tepat pada setiap putaran mesin.

b) Memasukkan campuran bensin dengan udara ke dalam ruang bakar dalam bentuk kabut.

2.9.5.1 Fungsi Dari Bagian Karburator

1) Katup gas

Mengatur jumlah campuran bensin dengan udara yang akan di masukkan ke dalam ruang bakar. Bentuk lekukan (coakan) pada bagian bawah katup gas yang mengarah lubang pemasukan udara saat posisi menutup akan berfungsi sebagai penutup saluran udara.

2) Jarum penyiram

Untuk mengatur jumlah campuran bensin dengan udara yang mengalir melalui saluran penyiram dari ¼ sampai dengan ¾ pembukaan katup. 3) Penyiram stasioner

Untuk mengatur jumlah bensin yang digunakan pada waktu stasioner. 4) Penyiram utama

Untuk mengatur jumlah bensin yang digunakan pada waktu putaran tinggi.


(48)

5) Ruang pelampung

Sebagai tempat menampung sementara bensin yang akan di alirkan ke ruang bakar.

6) Pelampung

Untuk mempertahankan tinggi permukaan bensin di dalam ruang pelampung agar selalu tetap dan tepat.

7) Sekrup penyetel udara

Untuk mengatur jumlah udara yang akan bercampur dengan bensin. 8) Sekrup penyetel gas

Untuk mengatur posisi pembukaan katup pada dudukan terendah untuk menentukan putaran stasioner.

9) Cuk

Untuk menutup saluran udara agar terjadi percampuran yang kaya dengan sementara apabila menghidupkan mesin pada waktu mesin dan cuaca dalam keadaan dingin.

10) Penyiram udara

Untuk mengontrol udara yang menuju penyiram utama dan kedua agar terjadi percampuran kaya pada kecepatan tinggi dan percampuran miskin pada kecepatan rendah.


(49)

40

3.1 Analisis Sistem

Analisis sistem (systems analysis) dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan-permasalahan, kesempatan- kesempatan, hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikannya. Analisis sistem ini diperoleh melalui wawancara dan observasi yang akan ditemukan beberapa data dan fakta yang akan dijadikan bahan uji dan analisis menuju penerapan dan pembangunan sebuah aplikasi yang diusulkan.

3.2 Analisis Masalah

Sebagian besar masyarakat sekarang telah menjadikan sepeda motor sebagai sarana transportasi utama. Menggunakan sepeda motor dapat menghemat waktu dan biaya menuju tempat tujuan. Namun demikian, sering terjadi kendala dari sepeda motor yang menyebabkan kerusakan sehingga dapat mengganggu aktifitas yang akan dilakukan. Banyak pengendara sepeda motor yang tidak mengetahui kendala kerusakan yang dialami oleh sepeda motor tersebut.

Masalah bagi pengendara yang tidak mengetahui Jenis kerusakan, akan sangat fatal apabila Jenis kerusakan tersebut tidak segera ditangani. Alasan pengendara tidak segera menangani Jenis kerusakan dikarenakan pengendara


(50)

tidak mengetahui kerusakan yang dialami dan pengendara malas untuk datang ke bengkel.

Aplikasi yang akan dibuat ini akan membantu mendiagnosa kerusakan yang terjadi pada sepeda motor. Tetapi aplikasi ini tidak menuntun menjadi seorang mekanik bagi para pengguna. Apa yang diberikan aplikasi ini adalah menunjukkan kerusakan yang terjadi pada sepeda motor serta memberikan saran. Aplikasi yang akan dibuat ini memberikan saran-saran praktis menangani kerusakan, sehingga menumbuhkan kemandirian di saat yang tepat.

3.2.1 Jenis Jenis Kerusakan Sepeda Motor

Dari permasalahan diatas, terdapat beberapa jenis kerusakan yang sering terjadi pada sepeda motor. Berikut beberapa jenis kerusakan yang dibahas oleh aplikasi ini :

Tabel 3.1 Jenis Kerusakan

No Jenis Kerusakan

1 Mesin mati

2 Mesin tidak dapat di starter 3 Mesin tidak bekerja dengan halus 4 Mesin hidup tidak normal

5 Mesin tiba-tiba mati 6 Mesin cepat panas

7 Mesin tidak dapat menghasilkan daya penuh 8 Mesin susah hidup

9 Akselerasi kurang

10 Pedal gas tidak dapat kembali ke posisi semula 11 Minyak pelumas cepat menjadi encer

12 Keluar asap berwarna hitam dari knalpot 13 Keluar asap berwarna putih dari knalpot 14 Terdengar bunyi tidak wajar dari mesin


(51)

15 Terdengar suara tembakan dari knalpot pada saat turun gas 16 Terdengar bunyi pada saat pengereman

17 Ada rembesan pelumas pada bagian mesin 18 Speedometer tidak berfungsi

19 Klakson tidak berfungsi 20 Lampu sorot mati

21 Lampu rem belakang mati 22 Lampu sein mati

23 Lampu sein menyala tapi tidak berkedip 24 Motor terasa goyang pada saat dikendarai

3.3 Analisis Kebutuhan Non Fungsional

3.3.1 Spesifikasi Perangkat Lunak

Perangkat lunak digunakan dalam sebuah sistem merupakan perintah-perintah yang diberikan kepada perangkat keras agar bisa saling berinteraksi diantara keduanya. Perangkat lunak yang dibutuhkan untuk membangun aplikasi diagnosa kerusakan pada sepeda motor ini adalah sebagai berikut :

1. Sistem Operasi Windows XP SP2.

2. J2SE SDK (Java2 Standart Edition Software Development Kit) versi 1.6.0. 3. J2MEWTK (Java2 Micro Edition Wireless Toolkit) versi 2.5.2 dengan

MIDP 2.1,

4. Netbeans versi 6.8.

Program ini dirancang dengan menggunakan MIDP1.0 dan MIDP2.0 pada J2ME dengan menggunakan kelas – kelas standar untuk aplikasi GUI pada level tinggi dan level rendah. Jadi aplikasi ini dapat digunakan ke semua jenis

handphone yang mendukung J2ME dengan spesifikasi MIDP1.0 dan MIDP2.0. Oleh karena itu dalam pengujiannya, program ini menggunakan beberapa jenis


(52)

emulator handphone untuk membandingkan hasilnya. Sehingga ditentukanlah perangkat handphone yang sangat cocok untuk menjalankan aplikasi ini dengan baik.

3.3.2 Spesifikasi Perangkat Keras

Komputer dan handphone atau ponsel terdiri dari perangkat keras dan perangkat lunak yang saling berinteraksi. Perangkat lunak memberikan instruksi-instruksi kepada perangkat keras untuk melakukan suatu tugas tertentu, sehingga dapat menjalankan suatu sistem di dalamnya.

Pada aplikasi diagnosa kerusakan pada sepeda motor ini, perangkat keras yang digunakan untuk menuliskan kode program adalah sebagai berikut :

a. AMD Athlon XP 1800+ b. RAM 1 GB

c. VGA 256 MB d. Hardisk 80 GB e. Monitor

f. Mouse dan Keyboard

g. Handphone (yang mendukung teknologi Java)

Sedangkan perangkat keras yang digunakan untuk menguji langsung hasil dari aplikasi ini adalah mobile device yang mendukung teknologi Java.


(53)

3.3.3 Spesifikasi Pengguna (user)

Tabel 3.2 Spesifikasi pengguna

Syarat User

Mengerti oprasional Handphone

Dapat mengoprasikan aplikasi

Memiliki handphone yang suppot java

3.4 Analisis Manajemen Memori

Pada pemrograman MIDP tidak dikenal adanya penyimpanan data ke dalam file. Hal ini disebabkan pada umumnya device tidak memiliki sistem file.

MIDP telah menyediakan sebuah mekanisme penyimpanan data secara persisten (tetap) di memori device yang berupa kumpulan-kumpulan record. Mekanisme penyimpanan seperti ini dinamakan dengan RMS (Record Management System).

Record yang telah ditempatkan di dalam ruang penyimpanan selanjutnya dapat diambil kembali untuk kemudian digunakan sesuai dengan kebutuhan. Ruang penyimpanan yang tetap (persistent storage) adalah sebuah tempat non-volatil untuk menyimpan data-data dalam sebuah aplikasi. Di sinilah tempat

record-record akan disimpan. Kita harus dapat menggunakan ruang penyimpanan ini secara efisien, karena mengingat keterbatasan memori yang terdapat di dalam


(54)

Sebenarnya, untuk melakukan penyimpanan data lokal secara default, kita dapat menempatkan data tersebut sebagai atribut dari file JAD atau JAR yang dibuat. Data yang disimpan dengan cara ini nilainya bersifat read-only atau hanya dapat dibaca. Artinya, tidak dapat mengganti nilai tersebut pada saat aplikasi dijalankan.

Selain itu, kita juga dapat membundel/membungkus satu atau beberapa file

dan direktori di dalam file JAR. Sebagai contoh, apabila kita ingin menyimpan lima buah file gambar dalam aplikasi yang dibuat, maka kita dapat menempatkan

file-file tersebut ke dalam direktori /res. Pada saat kompilasi, file-file tersebut akan terbungkus ke dalam file JAR yang terbentuk. Sebagai konsekuensinya, file JAR yang dihasilkan tentu akan membengkak ukurannya sesuai dengan ukuran dari masing-masing file gambar yang disertakan ke dalam aplikasi. Sama halnya seperti data biasa, file dalam kasus ini juga akan bersifat read-only.

3.5 Analisis Perbandingan Metode Forward Chaining dengan Backward

Chaining

Sistem berbasis rule terdiri dari fakta yang benar, daftar rule untuk inferensi fakta-fakta baru dan rule interpreter untuk mengontrol proses inferensi. ada dua macam cara untuk memproses inferensi rule : Forward Chaining dan

Backward Chaining. Forward Chaining (Runut maju) merupakan metode pencarian yang memulai proses pencarian dari sekumpulan data atau fakta, dari fakta-fakta tersebut dicari suatu kesimpulan yang menjadi solusi dari permasalahan yang dihadapi. Mesin inferensi mencari kaidah-kaidah dalam basis


(55)

pengetahuan yang premisnya sesuai dengan fakta-fakta tersebut, kemudian dari aturan-aturan tersebut diperoleh suatu kesimpulan. Forward Chaining (runut maju) memulai proses pencarian dengan data sehingga strategi ini disebut juga

data-driven.

Backward Chaining (runut balik) merupakan metode pencarian yang arahnya kebalikan dari runut maju. Proses pencarian dimulai dari tujuan, yaitu kesimpulan yang menjadi solusi dari permasalahan yang dihadapi. Mesin inferensi mencari aturan-aturan dalam basis pengetahuan yang kesimpulannya merupakan solusi yang ingin dicapai, kemudian dari aturan-aturan yang diperoleh, masing-masing kesimpulan dirunut balik jalur yang mengarah ke kesimpulan tersebut. Jika informasi-informasi atau nilai dari atribut-atribut yang mengarah ke kesimpulan tersebut sesuai dengan data yang diberikan maka kesimpulan tersebut merupakan solusi yang dicari, jika tidak sesuai maka kesimpulan tersebut bukan merupakan solusi yang dicari. Backward Chaining (runut balik) memulai proses pencarian dengan suatu tujuan sehingga strategi ini disebut juga goal driven.

Tabel 3.3 Panduan untuk memilih sistem inferensi

Forward Chaining Backward Chaining

1) Ada banyak hal yang hendak dibuktikan

1) Hanya akan membuktikan fakta (hipotesis) tunggal

2) Hanya sedikit fakta awal yang dipunyai

2) Terdapat banyak fakta awal 3) Ada banyak aturan berbeda yang

dapat memberikan kesimpulan yang sama

3) Jika terdapat banyak aturan yang memenuhi syarat untuk dipicu (fire) pada suatu siklus


(56)

Tabel 3.4 Karakteristik Forward dan Backward chaining

Forward chaining Backward chaining

1) Perencanaan,monitoring, kontrol 1) Diagnosis

2) Disajkan untuk masa depan 2) Disajikan untuk masa lalu 3) Antecedent ke konsekuen 3) Konsekuen ke antecedent 4) Data memandu, penalaran dari

bawah ke atas

4) Tujuan memandu, penalaran dari atas ke bawah

5) Bekerja ke depan untuk mendapatkan solusi apa yang mengikuti fakta

5) Bekerja ke belakang untuk mendapatkan fakta yang mendukung hipotesis

6) Breadth first search dimudahkan 6) Depth first search dimudahkan

7) Antecedent menentukan pencarian 7) Konsekuen menentukan

pencarian

8) Penjelasan tidak difasilitasi 8) Penjelasan difasilitasi

Sehingga dari kesimpulan yang diambil dari analisis perbandingan metode tersebut, aplikasi yang akan dibangun menggunakan metode backward chaining

(runut mundur) dan dalam merepresentasikan pengetahuan menggunakan tabel keputusan.

3.6 Analisis Kebutuhan Fungsional

Dalam membangun aplikasi diagnosa kerusakan pada sepeda motor ini digunakan metode peracangan berorientasi objek. Pada dasarnya perancangan berorientasi objek memberikan kemudahan dalam hal perawatan atau maintance


(57)

Selain itu, perancangan aplikasi sistem ini menggunakan metode perancangan berorientasi objek dengan menggunakan UML (Unified Modeling Language) untuk menentukan, visualisasi, konstruksi, dan mendokumentasikan informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan sistem.

Berdasarkan analisis yang telah dilakukan dalam pembuatan aplikasi ini, maka dapat dilihat apa yang menjadi masukan (input), keluaran (output), metode yang digunakan, dan antar muka sistem yang dibuat, sehingga sistem yang dibuat sesuai yang diharapkan.

Hasil perancangan berupa gambaran umum mengenai aplikasi secara keseluruhan yang akan menjelaskan proses implementasi dari sistem. Pada penelitian ini, perancangan aplikasi diagnosa kerusakan pada sepeda motor ini dapat dibagi menjadi beberapa sub bagian, yaitu :

1. Perancangan UML (Unified Modelling Language) 2. Perancangan Basis Pengetahuan

3. Perancangan Antarmuka

3.7 Perancangan UML (Unified Modify Language)

3.7.1 Use Case Diagram

Use case diagram aplikasi sistem pakar untuk diagnosa awal gangguan kesehatan berbasis mobile device dapat dilihat pada gambar 3.1


(58)

Daftar gejala Konsultasi kerusakan

Bantuan ACTOR

Profil

<<include>>

Gambar 3.1 Use Case Diagram 3.7.1.1 Definisi Use Case

Definisi Use Case berfungsi untuk menjelaskan proses yang terdapat pada setiap Use Case. Definisi Use Case dapat dilihat dari tabel 3.3.

Tabel 3.5 Definisi Use Case

No. Use Case Deskripsi

1 Konsultasi Kerusakan Proses untuk memulai mendiagnosa kerusakan berdasarkan Jenis.

2 Bantuan Proses untuk melihat keterangan bagaimana menggunakan aplikasi ini.

3 Profil Proses untuk melihat informasi tentang pembuat aplikasi

3.7.2 Skenario Use Case

Skenario Use Case berfungsi untuk menjelaskan lebih detail mengenai modul-modul yang terdapat dalam Aplikasi Diagnosa Kerusakan Pada Sepeda


(59)

Motor, Dengan penjelasan mengenai keterangan tabel Skenario Use Case adalah sebagai berikut :

1. Ringkasan merupakan deskripsi mengenai kegunaan atau fungsi modul. 2. Rasional merupakan deskripsi dari Use Case.

3. Pengguna menggunakan deskripsi mengenai pengguna Use Case. 4. Prekondisi merupakan deskripsi keadaan sebelum modul dijalankan. 5. Aliran dasar merupakan alur kerja pengguna.

6. Aliran alternatif merupakan aliran dasar lain.

7. Postkondisi merupakan deskripsi keadaan setelah modul dijalankan.

Untuk Skenario Use Case untuk Use Case lain dapat dilihat dari tabel 3.6 sampai 3.8.

Tabel 3.6 Skenario Use Case Konsultasi kerusakan Identifikasi

Nomor 1

Nama Konsultasi kerusakan

Tujuan Mengetahui penyebab kerusakan yang dialami berdasarkan Jenis

Deskripsi Proses untuk memulai mendiagnosa kerusakan berdasarkan Jenis.

Aktor User

Skenario Utama

Kondisi Awal Pengguna membuka halaman utama Aksi Aktor Reaksi Sistem

1. Memilih menu konsultasi kerusakan

2. Sistem merespon dengan cara menampilkan daftar Jenis 3. Memilih salah satu Jenis 4. Sistem merespon dengan cara


(60)

kerusakan memberikan beberapa pertanyaan yang berhubungan dengan Jenis kerusakan yang dipilih hingga menampilkan kemungkinan penyebab

5. Memilih saran 6. Sistem merespon dengan cara menampilkan penjelasan tentang tindakan awal yang dapat dilakukan Kondisi Akhir Pengguna dapat melihat kemungkinan penyebab dan

saran yang dapat dilakukan dari suatu kerusakan

Tabel 3.7 Skenario Use Case Bantuan Identifikasi

Nomor 2

Nama Bantuan

Tujuan Dapat menampilkan bantuan menggunakan aplikasi sistem pakar ini

Deskripsi Proses untuk menampilkan bantuan

Aktor User

Skenario Utama

Kondisi Awal Pengguna membuka halaman utama Aksi Aktor Reaksi Sistem

1. Memilih menu bantuan 2. Sistem merespon dengan cara menampilkan penjelasan menggunakan aplikasi

Kondisi Akhir Pengguna dapat melihat bantuan menggunakan aplikasi sistem pakar ini


(61)

Tabel 3.8 Skenario Use Case Profil Identifikasi

Nomor 3

Nama Profil

Tujuan Mengetahui informasi tentang pembuat aplikasi ini Deskripsi Proses untuk melihat informasi tentang pembuat

aplikasi

Aktor User

Skenario Utama

Kondisi Awal Pengguna membuka halaman utama Aksi Aktor Reaksi Sistem

1. Memilih menu profil 2. Sistem merespon dengan cara menampilkan informasi tentang pembuat aplikasi

Kondisi Akhir Pengguna dapat melihat informasi tentang pembuat aplikasi sistem pakar ini

3.7.3 Realisasi Use Case Tahap Analisis

Realisasi Use Case menjelaskan tentang kelas analisis dalam setiap use case. Dalam aplikasi sistem pakar ini kelas analisis dibagi menjadi beberapa bagian, yaitu :


(62)

3.7.3.1 Kelas Analisis Use Case Konsultasi Kerusakan

Gambar 3.2 Kelas Analis Use Case Konsultasi Kerusakan

Setelah user memilih menu konsultasi kerusakan, user akan diberikan pilihan untuk memilih Jenis kerusakan yang dialami. User akan menjawab pertanyaan-pertanyaan yang berhubungan dengan Jenis yang di alami. Kemudian user mendapat kemungkinan penyebab dan saran yang dapat dilakukan.

3.7.3.2 Kelas Analisis Use Case Bantuan

Gambar 3.3 Kelas Analis Use Case Bantuan

user

bantuan

infoAplikasi sd kelas analisis bantuan


(63)

User memilih menu bantuan, lalu sistem akan muncul halaman info bantuan yang menjelaskan tentang keterangan setiap menu yang terdapat dalam aplikasi sistem pakar ini.

3.7.3.3 Kelas Analisis Use Case Profil

Gambar 3.4 Kelas Analis Use Case Bantuan

User memilih menu profil. Kemudian sistem akan muncul halaman tentang info pembuat aplikasi sistem pakar ini.

3.7.4 Sequence Diagram

Sequence diagram aplikasi diagnosa kerusakan pada sepeda motor berbasis handphone ini dibagi menjadi beberapa sub bagian, yaitu :

1. Konsultasi Kerusakan

Sequence diagram untuk konsultasi kerusakan dapat dilihat pada gambar 3.5 sd kelas analisis Profil

user

profil


(64)

: user : user

konsultasi kerusakan konsultasi kerusakan

gejala

gejala pertanyaanpertanyaan penyebab dan

saran penyebab dan

saran

1: pilih konsultasi

2: pilih gejala

3: jawab pertanyaan

4: jawaban

5: mencari penyebab dan saran

6: menampilkan penyebab dan saran

Gambar 3.5Sequence diagram untuk konsultasi kerusakan

2. Bantuan

Sequence diagram menu bantuan dapat dilihat pada gambar 3.6

: user : user

bantuan

bantuan info aplikasiinfo aplikasi

1: memilih bantuan

2: melihat bantuan 3: tampil info aplikasi


(65)

3. Profil

Sequence diagram menu profil dapat dilihat pada gambar 3.7

: user : user

profil

profil info pembuatinfo pembuat

1: memilih profil

2: melihat info pembuat 3: tampil info pembuat

Gambar 3.7Sequence diagram menu profil

3.7.5 Activity Diagram

Activity diagram atau diagram aktifitas digunakan untuk menggambarkan aliran kejadian dalam use case sistem dengan tujuan untuk memudahkan mengkomunikasikan langkah-langkah dalam aliran kejadian. Activity diagram

tidak perlu dibuat untuk setiap aliran kejadian, tetapi akan sangat berguna untuk aliran kejadian yang komplek dan melebar.

1. Activity Diagram Konsultasi Kerusakan


(66)

mencari penyebab dan saran konsultasi

tampil pertanyaan

pilih gejala

tampil pertanyaan

jawab pertanyaan

tampil penyebab dan saran

menerima request konsultasi

menampilkan gejala

menerima request gejala

menampilkan pertanyaan

menerima request jawaban

Aplikasi User


(67)

2. Activity Diagram Bantuan

Activity diagram menu bantuan dapat dilihat pada gambar 3.9

bantuan

tampil bantuan

menerima request menu bantuan

menampilkan bantuan

Aplikasi User


(68)

3. Activity Diagram Profil

Activity diagram menu profil dapat dilihat pada gambar 3.10

profil

tampil profil

menerima request menu profil

menampilkan profil Aplikasi User


(69)

3.7.6 Class Diagram

Class diagram aplikasi sistem pakar diagnosa awal gangguan kesehatan berbasis mobile device dapat dilihat pada gambar 3.11.

SPMOTOR uikonsultasi() uibantuan() uiprofil() bantumenu exit() profilmenu exit() tanya tanya : string jmltanya : int ya()

tidak() exit() pakar

penyebab : string saran : string exit()

gejala gejala : string pilih()

kembali()

<<Interface>>

Gambar 3.11Class diagram

3.8 Perancangan Basis Pengetahuan (Knowledge Base)

Basis pengetahuan merupakan inti dari program sistem pakar karena basis pengetahuan itu merupakan presentasi pengetahuan (knowledge presentation). Dalam perancangan basis pengetahuan ini direpsentasikan berbasis rule atau aturan. Basis pengetahuan dari Aplikasi Diagnosa Kerusakan Pada Sepeda Motor


(70)

Berbasis HandPhone ini adalah hanya berupa fakta Jenis kerusakan dan fakta hasil diagnosis yang berupa kemungkinan penyebab dan saran tindakan.

Fasilitas akuisisi pengetahuan merupakan perangkat lunak yang menyediakan fasilitas dialog antara pakar dengan sistem. Fasilitas akuisisi ini digunakan untuk memasukkan fakta-fakta dan kaidah-kaidah sesuai dengan perkembangan ilmu. Mekanisme inferensi merupakan perangkat lunak yang melakukan penalaran dengan menggunakan pengetahuan yang ada untuk menghasilkan suatu kesimpulan atau hasil akhir. Fasilitas penjelasan berguna dalam memberikan penjelasan kepada pengguna mengapa aplikasi meminta suatu informasi tertentu dari pengguna dan dasar apa yang digunakan aplikasi sehingga dapat menyimpulkan suatu kondisi.

Agar pengetahuan dapat digunakan dalam sistem, pengetahuan harus di representasikan dalam format tertentu yang kemudian dihimpun dalam suatu basis pengetahuan. Cara sistem pakar merepresentasikan pengetahuan akan mempengaruhi perkembangan dan efisiensi.

Pengetahuan atau knowledge terdiri dari fakta konsep, teori, prosedur, dan hubungan. Pengetahuan juga berarti informasi yang sudah terorganisir dan teranalisa, yang menjadikannya mudah dimengerti dan dapat diaplikasikan dalam pemecahan masalah atau pengambilan keputusan. Salah satu cara representasi knowledge (pengetahuan) adalah melalui rule. Kumpulan rule yang saling terkait disebut juga sebagai rule set. Kaidah menyediakan cara formal untuk merepresentasikan rekomendasi, arahan atau strategi. Kaidah produksi dituliskan dalam bentuk umum rule sebagai berikut :


(71)

R1 = IF P1 OR P2 AND P3 AND P4 AND P5 AND P6 THEN K1 R2 = IF P7 AND P8 AND P9 AND P10 OR P11 THEN K2

R3 = IF P12 AND P13 OR P14 OR P15 AND P16 AND P17 THEN K3 R4 = IF P18 OR P19 AND P20 AND P21 AND P22 THEN K4

R5 = IF P1 OR P23 AND P24 AND P25 AND P26 AND P27 THEN K5 R6 = IF P11 OR P28 OR P29 AND P30 THEN K6

R7 = IF P31 AND P32 AND P33 OR P34 AND P35 AND P36 THEN K7

R8 = IF P19 OR P28 OR P37 AND P38 AND P39 AND P40 AND P41 THEN K8

R9 = IF P34 OR P42 AND P43 AND P44 OR P45 AND P46 AND P47 AND P48 THEN K9

R10 = IF P49 AND P50 AND P51 AND P52 THEN K10 R11 = IF P11 OR P28 OR P45 AND P53 THEN K11 R12 = IF P54 AND P55 AND P56 AND P57 THEN K12

R13 = IF P32 OR P58 AND P59 AND P60 AND P61 AND P62 THEN K13 R14 = IF P14 OR P15 AND P63 AND P64 AND P65 AND P66 OR P97 THEN K14

R15 = IF P19 OR P67 AND P68 AND P69 OR P97 THEN K15 R16 = IF P70 AND P71 AND P72 AND P73 THEN K16 R17 = IF P45 OR P74 AND P75 OR P76 AND P77 THEN K17 R18 = IF P78 AND P79 AND P80 AND P81 OR P97 THEN K18

R19 = IF P82 AND P83 OR P84 AND P85 AND P86 OR P97 THEN K19 R20 = IF P87 AND P88 AND P89 AND P90 AND P91 THEN K20 R21 = IF P84 OR P92 AND P93 AND P94 AND P95 THEN K21 R22 = IF P84 OR P96 AND P98 THEN K22

R23 = IF P84 OR P99 AND P100 AND P101 THEN K23

R24 = IF P102 AND P103 AND P104 AND P105 AND P106 THEN K24

Perancangan basis pengetahuan dibuat untuk masing-masing jenis kerusakan, dapat dilihat pada tabel basis pengetahuan sebagai berikut :


(72)

Tabel 3.9 Fakta Pertanyaan Jenis Kerusakan Mesin Mati

No. Pertanyaan

1. Apakah bahan bakar/bensin pada tangki masih ada? 2. Apakah ada percikan api pada busi?

3. Apakah usia busi sudah lebih dari 3 bulan? 4. Apakah ada kompresi pada sepeda motor anda? 5. Apakah ada arus/percikan api pada koil?

6. Apakah kabel-kabel pada CDI terpasang dengan baik dan sesuai?

Tabel 3.10 Fakta Penyebab dan Saran Jenis Kerusakan Mesin Mati

No. Penyebab dan Saran

1. Penyebab : Bahan bakar/bensin pada sepeda motor anda habis.

Saran : Segeralah membeli bahan bakar/bensin di SPBU terdekat. 2. Penyebab : Terjadi kerusakan pada mesin yang disebabkan bocor pada

bagian kompresi.

Saran : Ganti paking pada bagian silinder dan kepala silinder lalu kencangkan baut untuk merapatkan kepala silinder terhadap silindernya haruslah seteliti mungkin, atau segera bawa ke bengkel.

3. Penyebab : Busi pada sepeda motor anda sudah tidak berfungsi.

Saran : Segera beli busi yang sesuai untuk motor anda di bengkel terdekat dan pasang pada sepeda motor anda.

4. Penyebab : Pemasangan kabel-kabel pada koil tidak sesuai atau ada yang terlepas.


(73)

Saran : Urutkan kembali kabel-kabel pada koil dengan benar, atau segera bawa ke bengkel.

5. Penyebab : Kemungkinan motor mengalami kerusakan yang cukup berat.

Saran : Segeralah bawa ke bengkel untuk pengecekan secara lebih menyeluruh.

6. Penyebab : Pemasangan kabel-kabel pada CDI tidak sesuai atau ada yang terlepas.

Saran : Urutkan kembali kabel-kabel pada CDI dengan benar, atau segera bawa ke bengkel.

Tabel 3.11 Fakta Pertanyaan Jenis Kerusakan Terdengar Suara Tembakan Dari Knalpot Pada Saat Turun Gas

No. Pertanyaan

1. Apakah setingan pada karburator sesuai? 2. Apakah terdapat selang AIS pada karburator?

3. Apakah selang AIS tersebut terpasang dengan baik dan sesuai? 4. Apakah ada percikan api dari busi?

5. Apakah percikan api pada busi berwarna biru?


(74)

Tabel 3.12 Fakta Penyebab dan Saran Jenis Kerusakan Terdengar Suara Tembakan Dari Knalpot Pada Saat Turun Gas

No. Penyebab dan Saran

1. Penyebab : Setingan karburator tidak sesuai, lebih tepatnya setingan pada bagian beban angin tidak sesuai.

Saran : Seting kembali pada bagian beban angin karburator sepeda motor anda.

2. Penyebab : Kemungkinan selang AIS pada sepeda motor anda kotor atau tersumbat.

Saran : Bersihkan atau keluarkan kotoran yang menyumbat pada selang AIS dengan menggunakan kompresor.

3. Penyebab : Busi sepeda motor anda sudah tidak dapat berfungsi dengan baik.

Saran : Segera beli busi yang sesuai untuk motor anda di bengkel terdekat dan pasang pada sepeda motor anda.

4. Penyebab : Jarak kerenggangan elektroda pada busi sepeda motor anda tidak sesuai.

Saran : Sesuaikan jarak kerenggangan elektroda busi sepeda motor anda atau beli busi baru yang sesuai untuk motor anda.

5. Penyebab : Penyebab kerusakan belum dapat terdiagnosa oleh aplikasi ini.

Saran : Bawalah ke bengkel resmi sepeda motor anda.

Tabel 3.13 Fakta Pertanyaan Jenis Kerusakan Mesin Tidak Dapat di Starter

No. Pertanyaan

1. Apakah sebelumnya tombol starter berfungsi? 2. Apakah tercium bau hangus pada dinamo starter?


(75)

3. Apakah melakukan perawatan batere secara teratur? 4. Apakah menggunakan batere standar pabrik/original?

Tabel 3.14 Fakta Penyebab dan Saran Jenis Kerusakan Mesin Tidak Dapat di Starter

No. Penyebab dan Saran

1. Penyebab : Kemungkinan tombol starter/sakelar tidak berfungsi karena kotor/karat.

Saran : Buka tombol starter/sakelar lalu bersihkan dari kotoran dan karat yang menempel dengan menggunakan bensin.

2. Penyebab : Terjadi hubungan arus pendek/korslet pada gulungan dinamo starter.

Saran : Ganti dinamo starter pada sepeda motor anda dengan yang sesuai rekomendasi pabrikan.

3. Penyebab : Kemungkinan batere pada sepeda motor anda sudah tidak berfungsi.

Saran : Ganti batere dengan yang sesuai, lalu pasang kembali dengan benar.

4. Penyebab : Kemungkinan arus pada batere kurang yang disebabkan karena sel batere ada yang rusak/air accu pada batere tidak sesuai.

Saran : Lakukan perawatan batere dengan menambah air accu pada batere sesuai dengan batas yang ditentukan/charge kembali batere anda.

5. Penyebab : Kemungkinan batere pada sepeda motor anda tidak sesuai. Saran : Ganti batere yang sesuai dengan standar pabrik sepeda


(76)

Tabel 3.15 Fakta Pertanyaan Jenis Kerusakan Keluar Asap Putih Dari Knalpot

No. Pertanyaan

1. Apakah memasukan pelumas/oli kedalam knalpot?

2. Apakah usia sepeda motor anda sudah/lebih dari 3 tahun? 3. Apakah sudah pernah melakukan servis besar?

4. Apakah ada rembesan pelumas/oli pada bagian mesin? 5. Apakah sudah pernah mengganti piston set?

6. Apakah menggunakan pelumas/oli yang sesuai?

Tabel 3.16 Fakta Penyebab dan Saran Jenis Kerusakan Keluar Asap Putih Dari Knalpot

No. Penyebab dan Saran

1. Penyebab : Terdapat pelumas/oli pada knalpot yang terbakar

Saran : Bersihkan bagian dalam knalpot dari pelumas/oli atau biarkan setelah pelumas/oli terbakar habis akan hilang.

2. Penyebab : Sil katup/klep sudah rusak.

Saran : Ganti sil katup/klep yang sesuai dengan sepeda motor anda

3. Penyebab : Ring piston sepeda motor anda telah mengalami keausan. Saran : Ganti piston set yang sesuai dengan standar pabrik sepeda

motor anda atau segera bawa ke bengkel.

4. Penyebab : Pelumas/oli masuk ke ruang bakar.

Saran : Segera bawa ke bengkel untuk dilakukan servis besar.

5. Penyebab : Kemungkinan karena kegagalan dari pabrik. Saran : Segera bawa ke bengkel resmi sepeda motor anda.


(1)

DAFTAR SIMBOL

UML (Unified Modelling Language) 1. Diagram Use Case Proses

No. Simbol Keterangan

1. Aktor

Menunjukan user yang akan menggunakan sistem baru

2. Use Case

Menunjukan proses yang terjadi pada sistem baru

3. Unidirectional Association

Mnunjukan hubungan antara actor dengan dan use case atau antar use case

2. DIAGRAM ACTIVITY

No. Simbol Keterangan

1 Kondisi Awal

Menunjukan awal dari suatu diagram aktivitas

Kondisi Akhir

Menunjukan akhir dari suatu diagram aktivitas

Kondisi transisi

Menunjukan kondisi transisi antar aktivitas


(2)

Swimlane

Menunjukan aktor dari diagram aktivitas yang dibuat

Aktivitas

Menunjukan aktivitas-aktivitas yang terdapat pada diagram aktivitas

Pengecekan kondisi

Menunjukan pengecekan terhadap suatu kondisi

3. DIAGRAM SEQUENCE

No. Simbol Keterangan

1 Objek

Menunjukan objek yang yang terdapat di diagram sequence

Pesan ke Objek sendiri

Menunjukan pesan yang diproses pada objek itu sendiri

Pesan Objek

Menunjukan pesan yang disampaikan ke objek lain dalam diagram sequence


(3)

4. DIAGRAM CLASS

No. Simbol Keterangan

1 Class

Menunjukan class-class yang dibagung berdasarkan proses-proses sebelumnya (diagram sequence)

Unidirectional Association

Mnunjukan hubungan antara class pada diagram class


(4)

xxix

DAFTAR LAMPIRAN

LAMPIRAN A IMPLEMENTASI ANTARMUKA ...A-1 LAMPIRAN B LISTING PROGRAM ...B-1 LAMPIRAN C TABEL KEPUTUSAN ...C-1 LAMPIRAN D HASIL KUISONER ...D-1


(5)

116

DAFTAR PUSTAKA

[1] Budi Raharjo & Imam Heryanto, 2007. Tuntunan Pemrograman Java Untuk

Handphone, Informatika, Bandung

[2] Kusumadewi, S., 2003. Artificia Intelligence (Teknik dan Aplikasinya), Yogyakarta, Graha Ilmu.

[3] Martin Fowler, 2005, UML Distilled Edisi 3, Andi, Yogyakarta


(6)

BIODATA PENULIS

Data Pribadi

Nama Lengkap : Hasby Fachrul Haqqi An-Nahrowi

Tempat / Tgl. Lahir : Bandung/ 03 Mei 1988

Jenis Kelamin : Laki-laki

Agama : Islam

Bangsa/Suku : Indonesia/Sunda

Alamat : Cihaurgeulis no.46/144B RT.03/RW.03

Bandung Jawa Barat 40122

No.Telpon : 081322261651

Alamat e-mail : hasby.fachrul@gmail.com

Pendidikan Formal

2005 - 2010 Universitas Komputer Indonesia, Teknik Informatika.

2002 - 2005 SMA Pasundan 2 Bandung

1999 - 2002 SMPN 40 Bandung

1993-1999 SDN Cihaurgeulis II Bandung

Demikian Riwayat hidup ini saya buat dengan sebenarnya.

Bandung, Agustus 2010 Hormat saya,

Hasby Fachrul Haqqi An-Nahrowi