• Tidak ada hasil yang ditemukan

Bab ini berisi kesimpulan dari hasil perancangan program aplikasi secara keseluruhan dari bab-bab sebelumnya dan saran-saran yang mungkin untuk pengembangan lebih lanjut.

7 BAB II

TEORI PENUNJANG

2.1 Pengertian Sistem Pakar

Sistem pakar dapat didefinisikan sebagai sebuah program komputer berbasis pengetahuan yang dapat menarik kesimpulan setingkat pakar dalam bidang tertentu yang hasil pemecahannya mirip dengan pemecahan yang diberikan oleh pakar yang sesungguhnya. Basis pengetahuan diperoleh dari pengalaman seorang pakar maupun teori-teori yang ada pada bidang yang spesifik saja, oleh karena itu sistem pakar memiliki keterbatasan.

2.2 Sejarah Sistem Pakar

Sistem pakar mulai dikembangkan pada pertengahan tahun 1960-an oleh perhimpunan Artificial Intelligence Corporation yang ditandai dengan dikembangkannya GPS (General Purpose Problem Solver) oleh Newell dan Simon dari Logic Theorist, yang merupakan sebuah percobaan untuk menciptakan sebuah mesin cerdas. GPS merupakan sebuah cikal bakal menuju sistem pakar. Perkembangan selanjutnya ditandai dengan terjadinya pergantian dari program yang bersifat serba guna (General Purpose) ke program yang bersifat khusus (Spesial Purpose). Ini ditandai dengan dikembangkannya DENDRAL oleh E. Feigenbaum dari Universitas Stanford, yang kemudian diikuti dengan perkembangan MYCIN.

Beberapa sistem pakar mulai muncul pada pertengahan tahun 1970. Kemudian tahun 1980, teknologi sistem pakar yang semula dibatasi hanya di lingkungan akademis, mulai muncul sebagai aplikasi komersil, khususnya XCON, XSEL, dan CATS-1.

Beberapa contoh sistem pakar dapat dilihat pada Tabel 2.1. Tabel 2.1. Contoh Sistem Pakar dan Kegunaannya

Sistem Pakar Kegunaan

DENDRAL Mengidentifikasi struktur molekular campuran yang tak dikenal

MYCIN Diagnosa Penyakit

XCON & XSEL Membantu konfigurasi sistem komputer besar SOPHIE Analisis sirkuit elektronik

Prospector Digunakan di dalam geologi untuk membantu mencari dan menemukan deposit

FOLIO Membantu memberikan keputusan bagi seseorang manager dalam hal stok broker dan investasi

DELTA Pemeliharaan lokomotif listrik disel

2.3 Pengenalan Sistem Pakar 2.3.1 Konsep Dasar Sistem Pakar

Menurut Efraim Turban, konsep dasar sistem pakar mengandung enam hal yaitu keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan[1].

a. Keahlian

Keahlian adalah suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman.

9 b. Ahli

Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan, menyusun kembali pengetahuan jika dipandang perlu, memecah aturan-aturan jika dibutuhkan, dan menentukan relevan tidaknya keahlian mereka.

c. Pengalihan keahlian

Tujuan dari sistem pakar adalah mengalihkan keahlian dari seorang pakar ke komputer dan kemudian ke manusia lain yang bukan ahli. Pengetahuan yang disimpan dalam komputer disebut basis pengetahuan (knowledge base). Pengetahuan ini dibedakan menjadi dua, yaitu fakta dan aturan.

d. Inferensi/menarik kesimpulan

Keahlian-keahlian yang sudah tersimpan dalam komputer sebagai basis pengetahuan, maka sistem pakar harus diprogram agar dapat menarik kesimpulan. e. Aturan (Rule)

Kebanyakan sistem pakar adalah sistem berbasis rule. Pengetahuan disimpan dalam bentuk rule-rule sebagai prosedur pemecahan masalah.

f. Kemampuan menjelaskan (Explanation Capability)

Keistimewaan lain dari sistem pakar adalah kemampuan menjelaskan darimana asal sebuah solusi/rekomendasi diperoleh.

2.3.2 Arsitektur Sistem Pakar

Komponen utama yang harus ada dalam sebuah sistem pakar adalah knowledge base (basis pengetahuan), inference engine (mesin penarik kesimpulan), explanation subsystem (subsistem penjelas output) dan user interface[2]. Secara umum arsitektur sistem pakar dapat dilihat pada gambar 2.1

Gambar 2.1. Arsitektur Sistem Pakar

a. Basis Pengetahuan (Knowledge Base)

Knowledge base adalah kumpulan informasi atau pengetahuan pakar mengenai suatu bidang yang spesifik. Knowledge base terdiri dari dua bagian yaitu fakta seperti yang terdapat pada buku atau fakta yang diperoleh dari pakar dan aturan (rule) yang digunakan oleh seorang pakar untuk menarik kesimpulan. b. Inference Engine

Inference Engine merupakan bagian dari sistem pakar yang bertugas untuk menentukan solusi yang tepat dari sejumlah solusi yang tersedia. Proses yang dilakukan dalam inference engine adalah bagaimana mengambil keputusan terhadap proses yang terjadi dan proses penalaran pada basis pengetahuan yang

11 dimilikinya.

Penentuan sistem pendukung keputusan dan metode pelacakan sangat penting dalam rangka menarik kesimpulan. Inference engine merupakan otak dari sistem pakar. Komponen ini pada dasarnya berupa suatu program komputer yang menyediakan suatu metodologi untuk mengolah informasi dalam knowledge base dan merumuskan kesimpulan.

Adapun untuk mendapatkan sebuah kesimpulan terdapat dua metode penalaran, yaitu metode backward chaining dan metode forward chaining.

c. Explanation Subsystem

Explanation Subsystem merupakan kemampuan untuk memberikan penjelasan atas sebuah kesimpulan yang diberikan.

d. User Interface

User Interface merupakan bagian dari sistem pakar yang berfungsi sebagai pengendali input output. User interface melayani user selama proses konsultasi mulai dari tanya jawab untuk mendapatkan fakta-fakta yang dibutuhkan inference engine sampai menampilkan output yang merupakan kesimpulan/rekomendasi yang dihasilkan oleh inference engine.

e. Certainty Factor

2.3.3 Kategori Sistem Pakar

Banyak sekali bidang yang menggunakan sistem pakar sebagai bantuan sehingga sistem pakar itu sendiri dapat dikelompokkan menjadi[2] :

a. Interpretasi

Memberikan gambaran tentang sekumpulan data mentah yang biasanya diperoleh melalui sensor. Contoh: pengenalan kata/ucapan, pembuatan peta.

b. Prediksi

Memberikan dugaan mengenai akibat yang mungkin ditimbulkan dari sejumlah situasi yang diberikan. Contoh: perkiraan cuaca, ramalan panen.

c. Diagnosa

Menentukan penyebab gagalnya suatu sistem dalam situasi yang kompleks yang didasarkan pada observasi terhadap gejala-gejala yang dapat diamati. Contoh: diagnosa penyakit pada bidang kedokteran.

d. Desain

Menentukan konfigurasi yang cocok dari komponen-komponen yang ada dalam sebuah sistem sehingga unjuk kerja yang memuaskan dapat diperoleh walaupun di dalamnya terdapat sejumlah keterbatasan. Contoh: penyusunan anggaran belanja, desain arsitektur rumah.

e. Perencanaan

Mendapatkan urutan tindakan yang harus dilakukan untuk mencapat sasaran yang ditentukan sebelumnya dari suatu kondisi awal tertentu. Contoh:

13 perencanaan strategi manajemen.

f. Pengawasan (Monitoring)

Membandingkan perilaku yang diamati pada suatu sistem dengan perilaku yang diharapkan untuk mengenali lebih banyak variasi perilaku di dalamnya. Contoh: manajemen pengawasan, pengendalian instalasi nuklir

g. Pelacakan dan Perbaikan (Debugging and Repairing)

Penentuan dan implementasi perbaikan/pertolongan pada kegagalan suatu sistem. Contoh: uji coba software komputer, reparasi mesin, pelacakan kerusakan hardware komputer.

h. Instruksi

Mendeteksi dan memperbaiki kekurangan perilaku siswa dalam memahami suatu bidang tertentu. Contoh: program untuk tutorial.

i. Klasifikasi

Menentukan kategori dari sejumlah kriteria yang diberikan. Contoh: penentuan jabatan seorang pegawai.

j. Kontrol

Pengaturan perilaku kerja dalam suatu lingkungan yang kompleks, termasuk di dalamnya penafsiran, perkiraan dan perbaikan perilaku kerja sistem tersebut. Contoh: pengawasan jadwal penerbangan.

2.3.4 Peranan Manusia Dalam Sistem Pakar

Dalam pengembangan sebuah sistem pakar, peranan manusia ikut menentukan keberhasilan dari sistem pakar tersebut. Adapun peranan manusia yang di maksud ialah[3]:

1. Pakar (Domain Expert)

Pakar adalah seseorang yang mempunyai pengetahuan khusus, pendapat, keahlian dan metode serta kemampuan untuk menggunakannya. Pakar dapat memberikan nasehat dan memecahkan masalah. Tugasnya menyediakan pengetahuan tentang bagaimana cara melaksanakan tugasnya untuk kemudian diserap dan diimplementasikan ke dalam sistem pakar.

2. Perancang (Knowledge Engineer)

Knowledge Engineer adalah pihak yang membantu dalam pembuatan sebuah sistem pakar. Knowledge Engineer ini bertugas menyerap pengetahuan yang dimiliki oleh para pakar dan mengimplementasikannya ke dalam software sistem pakar. Tugas ini cukup sulit karena knowledge engineer tidak boleh memasukkan perkiraan atau perasaannya ke dalam pengetahuan yang diperoleh. Selain itu seorang knowledge engineer harus pandai mengorek pengetahuan pakar karena ada kalanya seorang pakar tidak dapat menceritakan atau menjelaskan keahliannya.

3. Pemakai (End User)

15 2.3.5 Keuntungan-keuntungan Dari Sistem Pakar

Beberapa keuntungan yang diperoleh dari penggunaan sistem pakar adalah[1]:

1. Membuat seseorang yang awan dapat bekerja layaknya seorang pakar.

2. Membuat peralatan yang kompleks lebih mudah dioperasikan karena sistem pakar dapat melatih pekerja yang tidak berpengalaman.

3. Menyediakan nasihat yang konsisten dan dapat mengurangi tingkat kesalahan. 4. Membantu memecahkan masalah yang kompleks.

5. Menghemat waktu dalam pengambilan keputusan. 6. Meningkatkan output dan produktivitas.

7. Meningkatkan kualitas.

2.3.6 Faktor Kepastian (Certainty Factor)

Dalam kenyataan sehari-hari, para pakar seringkali berurusan dengan data-data yang tidak menentu dan tidak pasti. Ketidakpastian disebabkan oleh 2 faktor, yaitu aturan yang tidak pasti dan jawaban pengguna yang tidak pasti atas suatu pertanyaan yang diajukan oleh sistem[4]. Misalnya jika seseorang mengalami sakit kepala, demam dan bersin-bersin ada kemungkinan orang tersebut terserang penyakit flu, tetapi bukan berarti apabila seseorang mengalami gejala tersebut pasti terserang penyakit flu.

ketidakpastian tersebut. Salah satu teknik yg digunakan adalah dengan penggunaan faktor kepastian. Faktor kepastian menggambarkan tingkat keyakinan terhadap permasalahan yang sedang dihadapi. Angka yang diberikan dalam jangkauan antara 0 (sangat tidak yakin) sampai 1 (sangat yakin). Jangkauan nilai CF dapat dilihat pada Gambar 2.2.

Sangat TidakYakin Tidak Yakin Tidak Tahu Yakin Sangat Yakin

0,5 0,8 1

0 0,2

CF

Derajat Ketidakpercayaan Derajat Kepercayaan

Gambar 2.2 Jangkauan Nilai CF

Ada 2 macam faktor kepastian yang digunakan, yaitu:

1. Faktor kepastian yang diisikan oleh pakar bersama dengan aturan. 2. Faktor kepastian yang diberikan oleh pengguna.

Faktor kepastian yang diisikan oleh pakar menggambarkan kepercayaan pakar terhadap hubungan antara premis dan hipotesis pada aturan kaidah produksi. Sementara itu faktor kepastian dari pengguna menunjukkan besarnya kepercayaan terhadap keberadaan masing-masing elemen dalam premis.

2.3.6.1 Menentukan CF Pararel

CF Pararel merupakan CF yang diperoleh dari beberapa premis pada sebuah aturan. Besarnya CF pararel dipengaruhi oleh CFUser masing-masing premis berdasarkan operator yang digunakan.

17 Rumus 2.1 digunakan jika antar premis menggunakan operator AND. Misalnya IF x AND y THEN H.

CF (x,y) = Min(CF(x), CF(y)) (2.1)

Rumus 2.2 digunakan jika antar premis menggunakan operator OR. Misalnya IF x OR y THEN H.

CF (x,y) = Max(CF(x), CF(y)) (2.2)

Rumus 2.4 digunakan jika premis menggunakan operator NOT. Misalnya IF not x THEN H.

CF(Tidak x) = -CF(x) (2.3)

2.3.6.2 Menentukan CF Sequensial

CF sekuensial diperoleh dari hasil perhitungan CF pararel dari semua premis dalam satu aturan dengan CF aturan yang diberikan oleh pakar. Adapun rumus untuk melakukan perhitungan CF Sekuensial ditunjukkan pada Rumus 2.4.

CF(Rn) = CF(x,y) * CF(X,Y) (2.4)

CF(Rn) : CF sequensial aturan ke n dari premis x dan y CF(x,y) : CF paralel dari premis x dan y

2.3.6.3 Menentukan CF Gabungan

CF Gabungan merupakan penggabungan dari beberapa CF sequential. CF akhir dari suatu aturan dengan aturan yang lain digabungkan untuk mendapatkan nilai CF konklusi. Adapun rumus untuk melakukan perhitungan CF gabungan ditunjukkan pada Rumus 2.5, 2.6, dan 2.7

)) ( * ) ( ( ) ( ) ( ) (H CF R CF R 1 CF R CF y CF = n + n+n CF(Rn) > 0 dan CF(Rn-1) > 0 (2.6) ))) ) ( , ) ( ( ( 1 ( ) ( ) ( ) ( 1 1 − + = n n n n R CF R CF Min R CF R CF H CF CF(Rn) < 0 atau CF(Rn-1) < 0 (2.7) ))) ( 1 ( * ) ( ( ) ( ) (H CF Rn CF Rn 1 CF Rn CF = + + CF(Rn) < 0 dan CF(Rn-1) < 0 (2.8)

2.4 Konsep Backward Chaining

Berikut akan dijelaskan mengenai konsep penalaran yang terdapat dalam inference engine.

2.4.1 Backward Chaining

Dalam konsep backward chaining, proses pencarian dimulai dari kesimpulan yang menjadi solusi 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

19 tersebut sesuai dengan data yang diberikan maka kesimpulan tersebut merupakan solusi yang dicari, jika tidak sesuai maka kesimpulan tersebut bukan merupakan solusi yang dicari. Runut balik memulai proses pencarian dengan suatu tujuan sehingga strategi ini disebut juga goal-driven.

Dalam menganalisa masalah, maka komputer berusaha memenuhi syarat dari posisi “JIKA” pada rule yang konklusinya merupakan goal atau premise dari rule lain. Sebagai contoh asumsikan listing berikut ini valid, masing-masing variabel dari setiap rule menginginkan nilai benar (true) dan goal-nya adalah variabel G:

R1 : JIKA A DAN C MAKA E; R2 : JIKA D DAN C MAKA H; R3 : JIKA B DAN E MAKA F; R4 : JIKA B DAN C;

R5 : JIKA F MAKA G;

Langkah-langkah dari komputer adalah sebagai berikut :

1. Komput er mencari rule dengan konklusi G dan menemukan rule R5.

2. Pada rule R5, pada posisi JIKA terdapat F. Kemudian komputer mencari nilai F pada memori. Karena tidak menemukan, maka komputer mencari rule dengan konklusi F dan menemukan pada rule R3.

3. Pada rule R3, ada B dan E pada posisi JIKA. Komputer mencari nilai dan rule dengan konklusi B dan tidak dapat menemukannya, kemudia komputer menanyakan nilai B pada user (diasumsikan benar). Setelah itu komputer mencari

nilai dari E dan tidak dapat menemukannya. Komputer kemudian menemukan rule dengan konklusi E pada rule R1.

4. Pada rule R1, ada A dan C pada posisi JIKA. Komputer mencari nilai dan rule dengan konklusi A dan tidak dapat menemukannya, kemudian komputer menanyakan nilai A kepada user (diasumsikan jawaban benar). Setelah itu komputer mencari nilai dari C dan tidak dapat menemukannya. Komputer menemukan rule dengan konklusi C paad rule R4.

5. Konklusi C pada rule R4 terpenuhi dan inputkan ke memory karena B pada posisi JIKA terpenuhi dengan nilai yang ada di memori. Kemudian sistem akan kembali pada rule R1 konklusi E di input-kan ke memori karena A dan C terpenuhi semua. Setelah itu sistem akan kembali ke rule R3, dimana pada rule R3, dimana pada rule R3 F akan di input-kan ke memori karena B dan E terpenuhi. Dan akhirnya komputer kembali ke rule R5, konklusi G di input-kan ke memori karena F terpenuhi. Goal dari basis pengetahuan tersebut tercapat dengan adanya nilai G.

2.4.2 Keuntungan metode Backward Chaining

Keuntungan dengan menggunakan metode backward chaining ialah:

1. Backward chaining terfokus pada goal yang diberikan. Prosedur ini akan menanyakan hal-hal yang perlu saja dan ini merupakan kenyamanan bagi user. 2. Backward chaining mencoba menyelesaikan masalah dengan mencari basis

21 mencoba semua kemungkinan dari informasi yang ada,.

3. Backward chaining merupakan pendekatan yang baik untuk menyelesaikan masalah diagnostik, prekripsi, dan debugging.

2.5 Knowledge Acquisition

Knowledge acquisition adalah proses mendapatkan pengetahuan baru seorang pakar dan biasanya ditampilkan oleh pengolah pengetahuan (Knowledge engineer). Pengolah pengetahuan mewawancarai pakar-pakar dan mengumpulkan pengetahuan yang ada dari manusia. Pengetahuan atau data-data yang dikumpulkan disebut sebagai knowledge base.

2.5.1 Tahap-tahap Dalam Knowledge Acquisition

Proses knowledge acquisition dibagi menjadi lima tahapan, yaitu [2]: 1. Identifikasi

Merupakan tahap mengidentifikasi permasalahan dan karakteristik utamanya. 2. Konseptualisasi

Merupakan tahap penentuan konsep, informasi dan relasi yang digunakan serta menentukan bagaimana bentuk representasi yang akan digunakan.

3. Formalisasi

Merupakan tahap perancangan struktur. Untuk mengorganisasikan pengetahuan dan merepresentasikannya ke knowledge base.

4. Implementasi

Merupakan tahap pengkodean pengetahuan yang telah diolah ke dalam komputer. 5. Pengujian

Merupakan tahap pengujian kebenaran dari pengetahuan yang telah dibentuk.

2.5.2 Metode Dalam Knowledge Acquisition

Terdapat beberapa cara untuk mendapatkan pengetahuan yang nantinya akan diolah ke dalam suatu knowledge base, antara lain:

a. Kuisioner

Metode kuisioner ini dilakukan dengan cara membagikan kertas pertanyaan di mana jawabannya dikategorikan dan dikelompokkan.

b. Observasi

Metode observasi yang dilakukan untuk beberapa kasus adalah penelitian terhadap pakar di tempat, dimana pakar itu bekerja. Metode inipun memiliki kesulitan-kesulitan karena tiap kali pakar melakukan observasi atau penelitian secara berkala dan terus menerus, karena secara tidak langsung akan membuat tersendat kegiatan rutinitas dari pakar sendiri. Sehingga pemikiran dan analisis dari pakar tidak sepenuhnya tercurah dan terkonsentrasi pada observasi atau pada penelitian. c. Analisa Dokumen

Pengetahuan yang akan diambil untuk sistem pakar dapat bersumber dari dokumen. Dokumen yang didapatkan oleh knowledge engineer akan dipelajari

23 kemudian dianalisa.

d. Wawancara

Dalam melakukan wawancara, ada dua bagian penting yang perlu diketahui. Pertama, Walkthrough method dan yang kedua adalah readthrough method. Walkthrough method adalah pakar bertindak sebagai seorang guru dan knowledge engineer bertindak sebagai seorang murid. Readthrough method adalah pakar diminta mengajarkan knowledge engineer membaca dan menerjemahkan dokumen yang ada. Wawancara dibagi menjadi dua bagian yaitu:

1. Wawancara tidak terstruktur

Biasanya wawancara bagian ini adalah tidak dilakukan pencatatan sebelumnya. Wawancara ini bersifat langsung dan mulai dari hal-hal yang bersifat umum. 2. Wawancara terstruktur

Wawancara bagian ini adalah melakukan pencatatan terlebih dahulu, kemudian menanyakan hal-hal yang bersifat mendetail dan terperinci mengenai suatu permasalahan.

2.6 J2ME

Sejak dimulai pengembangannya pada tahun 1995, bahasa pemrograman Java sampai saat ini terus dikembangkan dengan tetap memegang prinsip write once, run anywhere™ yang berarti dapat dijalankan pada berbagai macam platform dan arsitektur komputer yang mendukung Java Virtual Machine[5]. Dengan konsep

berbasis objek yang matang, bahasa Java sangat mendukung pengembangan produksi software yang lebih baik.

Java dikeluarkan oleh sebuah perusahaan yang bernama Sun Microsystem dalam tiga edisi yaitu:

Standard Edition (J2SE) : Didesain untuk dijalankan pada personal computer.

● Enterprise Edition (J2EE) : Dengan fitur built in untuk servlet, JSP, dan XML, edisi ini didesain untuk aplikasi berbasis server.

Micro Edition (J2ME) : Didesain untuk device yang memiliki keterbatasan memori, tampilan dan proses seperti handphone atau PDA (personal digital assistent)

2.6.1 Configuration

Configuration adalah spesifikasi yang mendefinisikan software environment pada beberapa varian device yang tergantung dari[6]:

● Tipe dan jumlah memori yang tersedia.

● Tipe processor dan kecepatannya.

● Koneksi network yang didukung.

Configuration digunakan sebagai platform minimal untuk suatu device tanpa adanya fitur tambahan. Pada J2ME configuration dibagi menjadi[6] :

Connected Limited Device Configuration (CLDC)

25 - Memiliki memori 32 kilobyte untuk pengalokasian memori pada saat

runtime.

- Keterbatasan user interface. - Biasanya memakai tenaga baterai.

- Memiliki network connectivity yang bersifat wireless, terbatas dan dengan bandwidth kecil.

Connected Device Configuration (CDC)

- Memiliki minimal 128 kilobytes untuk menjalan Java.

- Memiliki minimal 256 kilobyte untuk pengalokasian memori pada saat runtime.

- Memiliki network connectivity yang bersifat persistent dan dengan bandwidth besar.

Sebagai contoh, pada CLDC 1.0 tidak dikenal tipe data float sedangkan pada CLDC 1.1 mulai diperkenalkan tipe data float. Tipe data float akan sangat banyak membantu programmer untuk melakukan perhitungan dengan hasil yang lebih tepat.

2.6.2 Profile

Profile menambahkan class tambahan yang mendukung fitur-fitur yang diperlukan pada device tertentu atau pada segmen pasar yang berbeda. Kedua configuration yang ada mempunyai satu atau lebih profile dimana kadang suatu profile digunakan untuk mendukung profile lainnya[6]. Beberapa profile yang ada

antara lain :

Mobile Information Device Profile (MIDP)

Profile ini menyediakan kemampuan untuk networking, penyimpan data, dan component user interface. Karena MDIP didefinisikan untuk lingkungan yang serba terbatas maka user interface dan koneksi networking yang didukung sangatlah sederhana.

● PDA profile (PDAP)

PDA profile didefinisikan untuk PDA yang memiliki spesifikasi sedikit lebih tinggi dari pada MIDP. Aplication Programming Interface (API) yang disediakan digunakan pada segmen komputer kecil seperti Palm.

MIDP versi 1.0 sekalipun cukup membantu dalam membuat software yang bebas platform, ternyata masil kurang memuaskan para pengembang software handphone. Perkembangan teknologi handphone yang begitu pesatnya memacu para pengembang software untuk membuat software yang khusus digunakan untuk suatu merk dan tipe tertentu. MIDP 1.0 awalnya ditujukan untuk mengatasi problematika ini, namun kenyataannya masih belum cukup dapat mendukung penggunaan fitur-fitur khusus handphone.

Pada pertengahan November 2003, Sun mengeluarkan versi baru yaitu versi 2.0 yang lebih lengkap dibandingkan versi sebelumnya. Di samping masih mengandalkan beberapa fitur lama yang cukup stabil, misalnya dalam penanganan user interface dan record management dalam versi yang terbaru, beberapa fitur lama

27 diperbaharui dan diperlengkapi.

2.6.3 GUI Package

CLDC yang menyediakan class-class dasar bagi handphone java enabled tidak menyediakan fitur untuk Graphical User Interface (GUI). Class-class untuk user interface yang umum dipakai pada J2ME disediakan oleh Java Community Process (JCP) dan tergabung dalam Mobile Information Device Profile (MIDP). Class-class untuk GUI pada MIDP tidak dibangun dari Abstract Window Toolkit (AWT) yang merupakan class GUI pada J2SE[6].

● AWT didesain dan dioptimasikan untuk desktop computer

AWT dapat menangani banyak jenis input-an dari user seperti mouse dan keyboard sedangkan handphone hanya memiliki keypad untuk inputannya.

● Banyak fitur yang disediakan oleh AWT dan semua berbasis pada computer desktop. Contohnya, AWT banyak memiliki kemampuan untuk melakukan penanganan window seperti resize windows yang tidak diperlukan pada handphone.

● Saat user melakukan interaksi pada software yang dibangun dengan menggunakan AWT, objek akan dibuat secara dinamic dan akan tetap ada sampai tidak diperlukan lagi dan akan di proses oleh Garbage Collector yang akan me-release memori. Hal ini tidak dapat dilakukan pada handphone karena keterbatasan memori.

2.7 Penyakit Hepatitis[7]

Penyakit Hepatitis adalah penyakit yang disebabkan oleh beberapa jenis virus yang menyerang dan menyebabkan peradangan serta merusak sel-sel organ hati manusia. Hepatitis diketegorikan dalam beberapa golongan, diantaranya hepetitis A,B,C,D,E,F dan G. Di Indonesia penderita penyakit Hepatitis umumnya cenderung lebih banyak mengalami golongan hepatitis B dan hepatitis C.

2.7.1 Hepatitis A

Hepatitis A adalah golongan penyakit Hepatitis yang ringan dan jarang sekali menyebabkan kematian. Penyebaran virus hepatitis A melalui kotoran/tinja penderita yang penularannya melalui makanan dan minuman yang terkomtaminasi, bukan melalui aktivitas sexual atau melalui darah. Sebagai contoh, ikan atau kerang yang berasal dari kawasan air yang dicemari oleh kotoran manusia penderita.

Penyakit Hepatitis A memiliki masa inkubasi 2 sampai 6 minggu sejak penularan terjadi, barulah kemudian penderita menunjukkan beberapa tanda dan

Dokumen terkait