2.1.2 Sistem Pakar

advertisement
BAB 2
LANDASAN TEORI
2.1
Teori-Teori Umum
2.1.1 Kecerdasan Buatan (Artificial Intelligence)
Definisi kecerdasan buatan menurut Rich dan Knight (2009, p3), kecerdasan
buatan merupakan sebuah studi tentang bagaimana membuat komputer melakukan halhal yang pada saat ini dapat dilakukan lebih baik oleh manusia. Menurut Kusumadewi
(2003, p1), kecerdasan buatan (Artificial Intelligence) adalah ilmu yang mempelajari
cara membuat komputer melakukan sesuatu seperti yang dilakukan manusia.
Pada awal diciptakannya, komputer hanya difungsikan sebagai alat hitung saja.
Namun seiring perkembangan zaman, maka peran komputer semakin mendominasi
kehidupan umat manusia. Komputer tidak lagi hanya digunakan sebagai alat hitung,
komputer diharapkan dapat diberdayakan untuk mengerjakan segala sesuatu yang bisa
dikerjakan oleh manusia. Agar komputer dapat bertindak seperti dan sebaik manusia,
maka komputer harus diberi bekal pengetahuan dan kemampuan untuk menalar. Oleh
karena itu, dalam kecerdasan buatan terdapat beberapa metode untuk membekali
komputer dengan kedua komponen tersebut agar komputer bisa menjadi mesin yang
pintar.
Adapun lingkup utama dalam kecerdasan buatan (Kusumadewi, 2003), yaitu:
1. Sistem Pakar (Expert System)
6
7
Sistem pakar adalah program penasihat berbasis komputer yang mencoba meniru
proses berpikir dan pengetahuan dari seorang pakar dalam menyelesaikan masalahmasalah spesifik.
2. Pengaturan Bahasa Alami (Natural Language Processing)
Natural Language Processing atau biasanya disingkat dengan NLP merupakan
teknologi yang memberikan kemampuan kepada komputer untuk memahami bahasa
manusia sehingga pengguna komputer dapat berkomunikasi dengan komputer
dengan menggunakan bahasa sehari-hari.
3. Pengenalan Ucapan (Speech Recognition)
Melalui pengenalan ucapan diharapkan manusia dapat berkomunikasi dengan
komputer menggunakan suara.
4. Robotika dan Sistem Sensor (Robotics and Sensory Systems)
Sistem sensor, seperti sistem vision, sistem tactile, dan sistem pemrosesan sinyal
jika dikombinasikan dengan AI dapat dikategorikan ke dalam suatu sistem yang luas
yang disebut sistem robotik.
5. Game Playing
8
Gambar 2.1 Lingkup Utama Kecerdasan Buatan
(Valentine, 2010)
Rangkuman singkat sejarah perkembangan kecerdasan buatan (Usber, 2012):
1206 Robot humanoid pertama karya Al-Jazari
1796 Boneka penuang teh dari Jepang bernama Karakuri
1941 Komputer elektronik pertama
1949 Komputer dengan program tersimpan pertama
1956 Kelahiran dari Artificial Intelligence pada konferensi Dartmouth
9
1958 Bahasa LISP dibuat
1963 Penelitian intensif departemen pertahanan Amerika
1970 Sisem pakar pertama diperkenalkan secara luas
1972 Bahasa Prolog diciptakan
1986 Perangkat berbasis AI dijual luas mencapai $425 juta
1994 AC berbasis neuro fuzzy dijual
2010 Sistem kecerdasan buatan untuk pesawat komersial BOEING 900-ER
ramai digunakan
2011 Service Robot untuk restoran berhasil dibuat di Indonesia (Budiharto et
al., 2011)
2012 Sistem pakar troubleshooting komputer berbasis fuzzy dan self learning
(Bassil, 2012)
2012 Sistem imun pada deteksi spam diciptakan (Bhuvaneswari, 2012)
Dengan perkembangan teknologi dan penyediaan fasilitas yang semakin baik
dewasa ini, maka bukan tidak mungkin AI akan terus meningkat sampai pada akhirnya
benar-benar menyamai kemampuan manusia sehingga akan menggantikan pekerjaan
manusia. Tinggal nanti bagaimana kita sebagai akademisi dan masyarakat luas
menyikapi pemanfaatan AI sebagai asisten manusia sampai batas tertentu agar tidak
mengancam keberadaan manusia itu sendiri (Usber, 2012).
2.1.2 Sistem Pakar
2.1.2.1 Definisi Sistem Pakar
Menurut Tolle (2008), sistem pakar (expert system) merupakan sebuah program
komputer yang dirancang untuk memodelkan kemampuan menyelesaikan masalah-
10
masalah spesifik seperti layaknya seorang pakar (humam expert). Seorang pakar adalah
seorang individu yang memiliki kemampuan pemahaman yang superior dari suatu
masalah, contohnya seorang dokter, penasihat keuangan, pakar mesin mobil, teknisi
komputer, dan sebagainya.
Sistem pakar biasa disebut dengan knowledge-based system. Sistem ini bekerja
dengan pengetahuan (knowledge) dan metode analisis yang telah didefinisikan terlebih
dahulu oleh pakar yang sesuai dengan bidang keahliannya.
Sistem ini disebut dengan sistem pakar karena fungsi dan perannya sama seperti
seorang ahli yang harus memiliki pengetahuan dan pengalaman dalam memecahkan
sebuah permasalahan ataupun persoalan.
Gambar 2.2 Perbandingan Human Expert dengan Expert System
(Tolle, 2008)
Menurut Turban (2005), keahlian dipindahkan dari pakar ke suatu komputer.
Pengetahuan ini kemudian disimpan dalam komputer. Pada saat pengguna menjalankan
komputer untuk mendapatkan informasi, sistem pakar menanyakan fakta-fakta dan dapat
membuat penalaran sampai pada sebuah kesimpulan.
11
Dengan sistem pakar ini, orang awam pun dapat menyelesaikan masalahnya atau
hanya sekedar mencari suatu informasi berkualitas yang sebenarnya hanya dapat
diperoleh dengan bantuan para ahli di bidangnya. Sistem pakar ini juga dapat membantu
aktivitas para pakar sebagai asisten yang mempunyai pengetahuan yang dibutuhkan.
2.1.2.2 Tujuan Sistem Pakar
Tujuan dari sistem pakar adalah untuk memindahkan pengetahuan dari seorang
ahli atau sumber keahlian lain ke dalam komputer dan kemudian memindahkan dari
komputer kepada pengguna yang tidak ahli (bukan pakar) (Tolle, 2008). Aktivitas utama
yang dilakukan untuk proses pemindahan kepakaran, yaitu:
1. Akuisi pengetahuan (knowledge acquisition) adalah kegiatan mencari dan
mengumpulkan pengetahuan dari para ahli atau sumber keahlian yang lain.
2. Representasi pengetahuan (knowledge representation) adalah kegiatan menyimpan
dan mengatur penyimpanan pengetahuan yang diperoleh ke dalam komputer.
3. Inferensi pengetahuan (knowledge inferencing) adalah kegiatan melakukan inferensi
berdasarkan pengetahuan yang telah disimpan dalam komputer.
4. Pemindahan pengetahuan (knowledge transfering) adalah kegiatan pemindahan
pengetahuan dari komputer ke pemakai yang tidak ahli.
2.1.2.3 Ciri-Ciri Sistem Pakar
Menurut Kusumadewi (2003, p122), ciri-ciri sistem pakar, yaitu:
1. Mudah dimodifikasi, yaitu dengan menambah atau menghapus suatu
pengetahuan dari basis pengetahuannya
2. Memiliki kemampuan untuk beradaptasi
12
3.
Terbatas pada bidang spesifik
4. Output tergantung dialog dengan pengguna (user)
5. Knowledge base dan inferensi terpisah.
2.1.2.4 Struktur Dasar Sistem Pakar
Struktur dasar sistem pakar terdiri dari knowledge base, working memory, dan
inference engine (Tolle, 2008). Berikut merupakan gambar perbandingan antara human
expert (Gambar 2.3) dan expert system (Gambar 2.4). Terlihat bahwa sistem pakar
mengadopsi cara berpikir human expert sehingga menghasilkan sebuah keputusan atau
solusi.
Gambar 2.3 Human Expert Problem Solving
(Tolle, 2008)
Gambar 2.4 Expert System Problem Solving
(Tolle, 2008)
13
-
Knowledge Base
Knowledge base merupakan bagian dari sistem pakar yang berisi fakta-fakta
masalah yang ditemukan dalam suatu sesi. Berisi pengetahuan yang
dibutuhkan untuk memahami, merumuskan, dan menyelesaikan masalah.
Knowledge base terdiri dari dua elemen dasar, yaitu:
1. Fakta, situasi masalah dan teori yang terkait
2. Heuristik
khusus
atau
rules,
yang
langsung
menggunakan
pengetahuan untuk menyelesaikan masalah khusus.
-
Working Memory
Working memory merupakan bagian dari sistem pakar yang berisi fakta-fakta
masalah yang ditemukan dalam suatu sesi. Berisi fakta-fakta tentang suatu
masalah yang ditemukan dalam proses konsultasi.
-
Inference Engine
Inference engine merupakan processor pada sistem pakar yang mencocokan
fakta-fakta yang ada pada working memory dengan domain pengetahuan
yang terdapat pada knowledge base, untuk menarik kesimpulan dari masalah
yang dihadapi.
Komponen-komponen yang biasanya terdapat dalam sebuah sistem pakar (Dhani,
2009), yaitu:
1. Antarmuka Pengguna (User Interface)
14
Pada komponen ini terjadi interaksi antara program dan pengguna. Sistem
menerima input berupa informasi dan instruksi dari pengguna dan sistem
memberikan output berupa informasi kepada pengguna.
2. Basis Pengetahuan (Knowledge Base)
Knowledge base (basis pengetahuan) merupakan bagian dari sistem pakar
yang berisi domain pengetahuan yang dibutuhkan untuk memahami,
merumuskan, dan menyelesaikan masalah. Pengetahuan merupakan
kemampuan membentuk model mental yang menggambarkan objek dengan
tepat dan mempresentasikannya dalam aksi yang dilakukan terhadap objek.
Basis pengetahuan yang merupakan inti program sistem pakar adalah
representasi pengetahuan dari seorang pakar.
3. Akuisisi Pengetahuan (Knowledge Acqusitition)
Akuisisi
pengetahuan
merupakan
transformasi
keahlian
dalam
menyelesaikan masalah dari sumber pengetahuan ke dalam program
komputer.
4. Mesin Inferensi
Mesin inferensi merupakan otak dari sistem pakar yang mengandung
mekanisme fungsi berpikir dan pola-pola penalaran sistem yang digunakan
oleh seorang pakar. Mesin inferensi bertindak sebagai penarik kesimpulan
dan pengontrol mekanisme dari sistem pakar.
5. Memori Kerja (Working Memory)
Working memory merupakan bagian dari sistem pakar yang berisi faktafakta masalah yang ditemukan dalam suatu sesi ataupun dalam proses
konsultasi. Mesin inferensi (inference engine) merupakan processor pada
15
sistem pakar yang mencocokan fakta-fakta yang ada pada working memory
dengan domain pengetahuan yang terdapat pada knowledge base untuk
menarik kesimpulan dari masalah yang dihadapi.
6. Subsistem Penjelasan (Explanation Subsystem)
Komponen ini merupakan komponen tambahan yang akan meningkatkan
kemampuan sistem pakar. Komponen ini menggambarkan penalaran sistem
kepada pemakai dengan cara menjawab pertanyaan-pertanyaan.
7. Perbaikan Pengetahuan
Pakar memiliki kemampuan untuk menganalisa dan meningkatkan kinerja
serta kemampuannya untuk belajar dari kinerjanya.
2.1.2.5 Representasi Pengetahuan
Pengetahuan dapat direpresentasikan dalam bentuk sederhana atau kompleks,
tergantung dari permasalahannya (Kusrini, 2006). Ada beberapa model representasi
yang penting, yaitu logika (logic), jaringan semantik (semantic nets), bingkai (frame),
dan kaidah produksi (production rule).
a. Logika
Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran,
sistem kaidah, dan prosedur yang membantu proses penalaran. Bentuk logika
komputasional ada dua macam, yaitu:

Logika Proposional
Logika proposional merupakan suatu pernyataan yang menyatakan benar
(TRUE) atau salah (FALSE) yang dihubungkan dengan menggunakan operator
16
logika
seperti
konjungsi
(AND),
disjungsi
(OR),
negasi
(NOT),
implikasi/kondisional (IF…THEN), equivalensi atau bikondisional (IF AND
ONLY IF).
Berikut contoh model representasi logika proposional:
Jika hujan turun maka saya tidak akan ke pasar
dapat ditulis dalam bentuk p→q.

Logika Predikat
Logika predikat merupakan suatu logika yang seluruhnya menggunakan konsep
dan kaidah proporsional yang sama, disebut juga kalkulus predikat, yang
memberi tambahan kemampuan untuk mempresentasikan pengetahuan dengan
sangat cermat dan rinci.
Contoh model representasi pengetahuan logika predikat:
X = Anton
Y = Tina
dapat ditulis dalam bentuk Suka(X,Y).
b. Jaringan Semantik
Jaringan semantik merupakan representasi yang menggambarkan grafis dari
pengetahuan yang memperlihatkan hubungan hierarkis dari objek-objek yang terdiri
atas simpul (node) dan penghubung (link).
c. Bingkai (Frame)
Bingkai berupa ruang (slots) yang berisi atribut untuk mendeskripsikan
pengetahuan berupa kejadian, lokasi, situasi, ataupun elemen-elemen lain. Berikut
contoh model representasi pengetahuan bingkai (frame).
17
Tabel 2.1 Representasi Bingkai pada Penyakit
Ruang (slots)
Isi (fillers)
Nama
Flu
Gejala
a. Bersin
b. Pusing
c. Demam
Obat
a. Ultraflu
b. Mixagrip
d. Kaidah atau Aturan Produksi
Kaidah
produksi
menyediakan
cara
formal
untuk
mempresentasikan
rekomendasi, arahan, atau strategi dalam bentuk jika-maka (IF-THEN) yang
menghubungkan anteseden dengan konsekuensi.
Contoh model representasi pengetahuan kaidah produksi:
JIKA pusing DAN bersin MAKA terserang flu.
2.1.2.6 Pohon Keputusan (Decision Tree)
Pohon keputusan digunakan dalam sistem pakar diagnosis sebagai representasi
pengetahuannya. Sebuah pohon keputusan adalah sebuah struktur yang dapat digunakan
untuk membagi kumpulan data yang besar menjadi himpunan-himpunan record yang
lebih kecil dengan menerapkan serangkaian aturan keputusan. Dengan masing-masing
18
rangkaian pembagian, anggota himpunan hasil menjadi mirip dengan yang lain (Berry
dan Linoff, 2004).
Menurut Han et al. (2012, p330), pohon keputusan (decision tree) merupakan
salah satu metode klasifikasi yang menggunakan representasi struktur pohon (tree) yang
setiap
internal
node
(non-leaf
node)
merepresentasikan
atribut,
cabangnya
merepresentasikan nilai dari atribut, dan daun (leaf node atau terminal node)
merepresentasikan kelas. Node yang paling atas dari decision tree disebut sebagai root.
Decision tree merupakan metode klasifikasi yang paling populer digunakan.
Selain karena pembangunannya relatif cepat, hasil dari model yang dibangun mudah
untuk dipahami. Pada decision tree terdapat 3 jenis node (Cahyono, 2010), yaitu :
a. Root Node
Root node merupakan node paling atas, pada node ini tidak ada input dan bisa
tidak mempunyai output atau mempunyai output lebih dari satu.
b. Internal Node
Internal node merupakan node percabangan, pada node ini hanya terdapat satu
input dan mempunyai output minimal dua.
c. Leaf Node atau Terminal Node
Leaf node atau terminal node merupakan node akhir, pada node ini hanya
terdapat satu input dan tidak mempunyai output.
19
Contoh dari pohon keputusan dapat dilihat di gambar 2.5 berikut ini,
Gambar 2.5 Model Pohon Keputusan (Hamidah, 2012)
2.1.2.7 Metode Inferensi
Menurut Kusrini (2006), secara umum ada dua macam metode inferensi, yaitu:
a. Forward Chaining (Pelacakan ke Depan)
Forward chaining adalah suatu strategi pengambilan keputusan yang dimulai
dari bagian premis (fakta) menuju konklusi (kesimpulan akhir) (Kusrini, 2006).
Forward chaining merupakan grup dari multipel inferensi yang melakukan
pencarian dari suatu masalah kepada solusinya. Jika klausa premis sesuai dengan
situasi (bernilai TRUE), maka proses akan meng-assert konklusi. Pelacakan ke
depan mencari fakta yang sesuai dari bagian IF dari aturan IF-THEN.
20
Gambar 2.6 Proses Forward Chaining
(Kusrini, 2006)
b. Backward Chaining (Pelacakan ke Belakang)
Backward chaining adalah suatu strategi pengambilan keputusan dimulai dari
pencarian solusi dari kesimpulan kemudian menelusuri fakta-fakta yang ada hingga
menemukan solusi yang sesuai dengan fakta-fakta yang diberikan pengguna
(Kusrini, 2006).
Pelacakan ke belakang adalah pendekatan yang dimotori oleh tujuan. Dalam
pendekatan ini pelacakan dimulai dari tujuan, selanjutnya dicari aturan yang
memiliki tujuan tersebut untuk membuat kesimpulannya.
21
Gambar 2.7 Proses Backward Chaining
(Kusrini, 2006)
2.1.2.8 Contoh Sistem Pakar
Contoh-contoh sistem pakar (Usber, 2012), yaitu:
a. Eliza
Eliza merupakan program yang dibuat oleh Joseph Weizwenbaum (1967).
Program ini dapat melakukan terapi terhadap pasien dengan mengajukan
beberapa pertanyaan.
b. Parry
Parry adalah sistem pakar yang juga paling awal dikembangkan di Stanford
University oleh seorang psikiater, Kenneth Colby, yang menstimulasikan
seorang paranoid.
c. Logic Theorist
Logic Theorist diperkenalkan saat konferensi Dartmouth. Program ini dapat
membuktikan teorema-teorema matematika.
22
d. NetTalk
NetTalk adalah sebuah program yang belajar mengucapkan teks bahasa
Inggris yang ditulis dengan menjadi teks yang ditampilkan sebagai masukan
dan pencocokan transkripsi fonetik untuk perbandingan.
e. Sad Sam
Program ini dibuat oleh Robert K. Lindsay. Program ini dapat mengetahui
kalimat-kalimat sederhana yang ditulis dalam bahasa Inggris dan mampu
memberikan jawaban dari fakta-fakta yang didengar dalam sebuah
percakapan.
2.1.3 Entity Relationship Diagram (ERD)
Menurut
Pressman
(2002,
p353),
Entity
Realtionship
Diagram
(ERD)
menggambarkan hubungan antara objek data. ERD adalah notasi yang digunakan untuk
melakukan aktivitas pemodelan data. Atribut dari masing-masing objek data yang
dituliskan pada ERD dapat digambarkan dengan menggunakan deskripsi objek data.
Notasi pada ERD yaitu:
1. Objek Data
Representasi dari hamper semua informasi gabungan yang harus dipahami oleh
perangkat lunak.
2. Atribut
Menentukan property suatu objek data
3. Hubungan
Objek data disambungkan satu dengan lainnya dengan berbagai cara.
23
ERD sangat berguna bagi aplikasi di mana data dan hubungan yang mengatur data
sangat kompleks.
2.2
Teori Khusus
2.2.1 Android
2.2.1.1 Pengenalan Android
Menurut Burnette (2009, p12), Android merupakan toolkit perangkat lunak open
source baru untuk perangkat mobile masa depan, Android sendiri diciptakan oleh
perusahaan Google yang bekerja sama dengan Open Handset Alliance.
2.2.1.2 Kelebihan dan Kekurangan Android
Kelebihan-kelebihan Android dibandingkan dengan mobile platform yang ada di
pasaran, yaitu :
1. Merupakan pengembang platform bebas yang berbasis linux dan open source.
2. Sebuah komponen berbasis arsitektur yang terinspirasi oleh mashup internet.
Bagian dari satu aplikasi dapat dikembangkan, digantikan, ditingkatkan
komponennya sesuai dengan versi yang diinginkan sehingga dapat memunculkan
berbagai kreativitas pada mobile application.
3. Memiliki layanan berbasis lokasi menggunakan GPS atau triangulasi menara sel
untuk menyesuaikan lokasi Anda berada.
4. Memungkinkan Anda untuk memanfaatkan kekuatan penyimpanan lokal untuk
berhubungan dengan komputasi dan sinkronisasi.
5. Android dioptimalkan untuk perangkat daya rendah dan rendah memori, yang ada
pada platform sebelumnya tidak terpikirkan.
24
6. Mendukung grafis dan suara berkualitas tinggi dan lebih halus.
7. Memiliki probabilitas diberbagai perangkat keras saat ini dan masa depan.
8. Program yang terisolasi dapat memberikan tingkat stabilitas sistem yang tidak
terlihat sebelumnya pada smartphone.
9. Android menawarkan berbagai cara untuk berinteraksi dengan mobile application
bersama dengan dasar-dasar teknis untuk membuatnya.
10. Dalam pengembangannya, hanya diperlukan satu komputer yang ter-install SDK
Android dan emulator.
Adapun kekurangan-kekurangan Android adalah sebagai berikut:
1. Handset Android dibuat oleh banyak vendor dengan ukuran layar yang berbeda,
sebagian menggunakan keyboard fisik, sebagian lagi hanya menggunakan touch
screen. Versi Android yang terpasang di handset juga berbeda-beda, hal ini
menyebabkankan pengalaman pemakai Android tidak seragam, hal ini juga
sekaligus menyulitkan programmer dalam membuat program, karena apabila
versi sistem operasi tidak sama, program tersebut tidak bisa di-install.
2. Android adalah produk open source dari Google dan Open Handset Alliance,
karena itu aplikasi yang ada dalam Android sangat menyatu dengan layanan
Google, contohnya email menggunakan Gmail, kalender menggunakan Google
Calender, bahkan sampai contact pun disimpan di Gmail Contact. Bagi
penggemar Google ini merupakan keunggulan sendiri, namum bagi pengguna
yang tidak familiar dengan produk Google, hal in cukup merepotkan karena
mereka harus menyesuaikan keadaan.
3. Android cukup aktif dikembangkan, hampir tiap tahun mereka merilis sistem
operasi baru, pada tahun 2010 Google merilis Froyo (2.2), Gingerbread (2.3) dan
25
Honeycomb (3.0), pada tahun 2011 merilis Ice Cream Sandwich (4.0). Namun
dari sisi vendor atau operator, update ke user membutuhkan waktu berbulanbulan, sebagai contoh, Froyo dirilis pada Mei 2010, namun pengguna Android
kebanyakan baru meng-update setelah September.
2.2.2 Komputer
2.2.2.1 Definisi Komputer
Menurut Dipanegara (2011, p1), komputer adalah alat yang dipakai untuk
mengolah data menurut prosedur yang telah dirumuskan. Kata komputer semula
digunakan untuk menggambarkan orang yang pekerjaannya melakukan perhitungan
aritmatika, dengan atau tanpa alat bantu, tetapi arti kata ini kemudian dipindahkan
kepada mesin itu sendiri. Secara umum, komputer dapat diartikan sebagai mesin yang
mengolah informasi.
2.2.2.2 Bagian-bagian Komputer
Komputer terdiri atas dua bagian besar, yaitu perangkat lunak (software) dan
perangkat keras (hardware) (Dipanegara, 2011).
2.2.2.2.1 Perangkat Keras Komputer

CPU sebagai unit yang mengolah data

Memory RAM, tempat penyimpanan data sementara

Hard drive, media penyimpanan semi permanen
26

Perangkat masukan, media yang digunakan untuk memasukkan data untuk
diproses oleh UPS, seperti mouse, keyboard dan tablet

Perangkat keluaran, media yang digunakan untuk menampilkan hasil keluaran
pemrosesan CPU, seperti monitor dan printer.
2.2.2.2.2 Perangkat Lunak Komputer

Sistem Operasi
Program dasar pada komputer yang menghubungkan pengguna dengan hardware
komputer. Sistem operasi yang biasa digunakan adalah Linux, Windows, dan
Mac OS. Tugas sistem operasi, yaitu mengatur eksekusi program di atasnya,
koordinasi input, output, pemrosesan, memori, serta instalasi software.

Program Komputer
Program komputer merupakan aplikasi tambahan yang dipasang sesuai dengan
sistem operasinya.
2.2.3 Troubleshooting Perangkat Keras Komputer
Troubleshooting adalah sebuah istilah dalam bahasa Inggris, yang merujuk
kepada sebuah bentuk penyelesaian sebuah masalah. Troubleshooting merupakan
pencarian sumber masalah secara sistematis sehingga masalah tersebut dapat
diselesaikan. Pada umumnya, troubleshooting digunakan dalam berbagai bidang, seperti
dalam bidang komputer, administrasi sistem, dan juga bidang elektronika dan kelistrikan
(Putra, 2011).
27
Komputer adalah sebuah mesin yang dapat mengalami kegagalan dalam
menjalankan fungsinya. Komputer tidak “burn out” tetapi “wear out” baik oleh cara
penggunaan manusia yang salah ataupun oleh ketahanan komponen yang memang hanya
memiliki kemampuan terbatas (Sasongko, 2007).
Masalah yang ditimbulkan oleh komputer kadangkala merupakan masalah kecil
yang tidak memerlukan tingkat pengetahuan yang tinggi mengenai komputer. Untuk
menyelesaikan hal itu, mungkin bisa diselesaikan oleh seorang yang mempunyai
pengetahuan sangat dasar tentang komputer. Tetapi kadangkala masalah-masalah
tersebut juga membutuhkan tingkat kemampuan yang tinggi tentang komputer dan
komponen-komponen sehingga memerlukan seorang teknisi khusus untuk perbaikannya.
Aplikasi ini akan membantu dalam menyelesaikan masalah-masalah yang
berkaitan dengan troubleshooting atau penyelesaian masalah perangkat keras (hardware)
komputer secara cepat.
2.2.4 Java
Menurut Hakim dan Sutarto (2009, p1), Java bermula dari proyek penelitian
perusahaan Sun Microsystems dengan nama sandi Green pada tahun 1991. Terdapat
prediksi bahwa mikroprosesor akan digunakan secara luas pada peralatan-peralatan
elektronik. Karena adanya bermacam-macam tipe mikroprosesor, maka dibutuhkan
sebuah bahasa pemrograman yang dapat berjalan di semua mikroprosesor.
Dengan demikian, terciptalah sebuah bahasa pemrograman baru oleh James
Gosling, yaitu salah satu orang yang berperan besar dalam proyek tersebut, yang diberi
nama Oak. Namun, karena sudah ada bahasa pemrograman dengan nama Oak, maka
namanya pun diubah menjadi Java. Sun Microsystems mengumumkan kehadiran bahasa
28
Java secara resmi pada tahun 1995. Bahasa ini mulai disambut hangat masyarakat luas
seiring dengan meledaknya era internet.
Java merupakan sebuah bahasa pemrograman berorientasi objek yang dapat
berjalan di platform yang berbeda, baik di Windows, Linux, serta sistem operasi lainnya.
Sun Microsystems menyediakan paket instalasi sesuai dengan kebutuhan dalam
membangun suatu aplikasi. Berikut sedikit penjelasan mengenai paket aplikasi yang
tersedia (Hakim dan Sutarto, 2009):
a. J2ME (Java Micro Edition)
Paket instalasi ini digunakan untuk mengembangkan software yang berjalan pada
perangkat yang memiliki memori dan sumber daya yang kecil, seperti pada telepon
selular, PDA, dan smartcard.
b. J2SE (Java 2 Standard Edition)
Paket instalasi ini digunakan untuk mengembangkan aplikasi desktop.
c. J2EE (Java 2 Enterprise Edition)
Paket instalasi ini digunakan untuk mengembangkan aplikasi pada lingkungan
internet maupun aplikasi skala enterprise.
Download