5
Bab 2
Tinjauan Pustaka
1.6
Penelitian Sebelumnya
Agus Koswara pada penelitiannya yang berjudul Pembangunan
Aplikasi Sistem Pakar untuk Membantu Menyelesaikan Masalah
Kerusakan dan Perawatan Mobil menyebutkan bahwa Tak dapat
dipungkiri lagi, bahwa mobil pada masa sekarang ini telah menjadi sebuah
alat transportasi atau alat yang sangat dibutuhkan oleh masyarakat. Pada
masa kini, banyak orang yang memiliki mobil sendiri atau dia sebagai
supir. Tapi amat disayangkan kurangnya pengetahuan seorang pengemudi
untuk dapat menyelesaikan masalah-masalah yang ada pada mobil.
Terkadang para mekanik bengkel lupa akan mekanisme kerja pada mobil
yang sedang diperbaiki oleh para mekanik tersebut. Sistem pakar ini
dibuat untuk mendiagnosa kerusakan serta perawatan pada mobil dan
sistem pakar ini dapat memberikan informasi mengenai solusi kerusakan
dan perawatan pada mobil. Pembangunan sistem pakar ini terdiri dari
beberapa tahap yaitu perancangan basis pengetahuan dan
direpresentasikan dalam bentuk aturan yang berlaku, kemudian
dilanjutkan dengan perancangan basis data dan perancangan antar muka,
kemudian basil perancangan dituangkan ke dalam bahasa pemrograman
Microsoft Visual Basic 6.0 dan basis datanya Microsoft Access. Sistem
pakar ini akan dipergunakan sebagai pedoman bagi mekanik untuk
menyelesaikan masalah-masalah yang dihadapi. Sistem pakar ini dapat
pengetahuan oleh orang-orang yang membutuhkan informasi perawatan
serta perbaikan mobil.(Koswara, 2006).
Uky Yudatama pada penelitiannya yang berjudul Sistem Pakar
untuk Diagnosa Kerusakan Mesin Mobil Panther Berbasis Mobile
menyebutkan bahwa kerusakan pada mesin mobil terjadi akibat kelalaian
dalam melakukan perawatan. Pemilik mobil baru menyadari kerusakan
setelah mobil tidak dapat beroperasi sebagaimana mestinya. Oleh karena
itu dalam penggunaan mobil kemungkinan besar membutuhkan perawatan
berkala. Dengan cara mendeteksi kerusakan apa yang terjadi pada mobil.
Penyampaian informasi pun dilakukan menggunakan perangkat mobile
dengan meminta request dari user. Request tersebut akan diproses dalam
sistem kemudian hasilnya akan dikirim lagi ke user dengan ditampilkan
pada layar perangkat mobile. Diharapkan sistem ini mampu memberikan
informasi yang optimal dari timbal balik user dan sistem (Yudatama,
2008).
Berdasarkan paparan penelitian terdahulu, pada penelitian ini
mengambil beberapa hal yang penting sehingga dapat menjadi tujuan.
Beberapa hal yang dapat diambil adalah bahwa sistem pakar dapat
menjadi penasehat atau panduan di dalam pengambilan keputusan.
Informasi yang telah ada, diolah menggunakan sistem pakar sehingga
menjadi sebuah perangkat yang satu kesatuan dan dapat digunakan untuk
1.7
Sistem Pakar
Sistem pakar adalah sistem yang berusaha mengadopsi
pengetahuan manusia ke komputer yang dirancang untuk menyelesaikan
masalah seperti layaknya seorang pakar. Sistem pakar diharapkan dapat
bekerja selayaknya pakar pada bidang yang menjadi tujuan sistem tersebut
(Arhami, 2005).
Menurut Turban (2005), keahlian dipindahkan dari pakar ke suatu
program komputer. Pengetahuan ini kemudian disimpan di dalam
komputer. Pada saat pengguna menjalankan komputer untuk mendapatkan
informasi, sistem pakar menanyakan fakta-fakta dan dapat membuat
penalaran (inferensi) dan sampai pada suatu kesimpulan. Kemudian,
sistem pakar memberikan penjelasan (memberikan kesimpulan atas hasil
konsultasi yang telah dilakukan sebelumnya).
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.
Pada dasarnya sistem pakar diterapkan untuk mendukung aktivitas
pemecahan masalah. Beberapa aktivitas pemecahan yang dimaksud seperti
pembuatan keputusan (decision making), pemandu pengetahuan
2.2.1 Sejarah Sistem Pakar
Sistem pakar mulai dikembangkan pada pertengahan tahun 1960
oleh Artificiall Intelligence Corporation. Periode penelitian kecerdasan buatan ini didominasi oleh suatu keyakinan bahwa nalar yang
digabungkan dengan komputer canggih akan menghasilkan pakar atau
bahkan manusia super. Suatu usaha kea rah ini adalah General Purpose
Problem Solver (GPS) yang dikembangkan oleh Allen Newell, John Cliff Shaw dan Herbert Alexender Simon. GPS merupakan sebuah percobaan
untuk menciptakan mesin yang cerdas.
Sistem pakar untuk melakukan diagnose kesehatan telah
dikembangkan sejak pertengahan tahun 1970 yang untuk pertama kali
dibuat oleh Bruce Buchanan dan Edward Shortliffe di Standford
University diberi nama MYCIN. MYCIN merupakan program interaktif
yang melakukan diagnose penyakit meningitis dan infeksi becremia serta
memberikan rekomendasi terapi antimikrobia. MYCIN mampu
memberikan penjelasan atas penalarannya secara detail. Dalam uji coba,
program ini mampu menunjukkan kemampuan seperti seorang spesialis
(Dhany, 2009).
2.2.2 Keuntungan Sistem Pakar
Sistem pakar merupakan paket perangkat lunak atau paket program
komputer yang ditujukan sebagai penyedia nasihat dan saran bantu dalam
memecahkan masalah di bidang-bidang spesialisasi tertentu seperti bisnis,
perekayasaan, matematika, kedokteran, pendidikan dan sebagainya.
Ada beberapa keunggulan sistem pakar, diantaranya dapat:
1. Menghimpun data dalam jumlah yang sangat besar.
2. Menyimpan data tersebut untuk jangka waktu yang panjang
dalam suatu bentuk tertentu.
3. Mengerjakan perhitungan secara cepat dan tepat dan tanpa
jemu mencari kembali data yang tersimpan dengan kecepatan
tinggi.
Sementara kemampuan sistem pakar di antaranya adalah:
1. Menjawab berbagai pertanyaan yang menyangkut bidang
keahliannya.
2. Bila diperlukan dapat menyajikan asumsi dan alur penalaran
yang digunakan untuk sampai ke jawaban yang dikehendaki.
3. Menambah fakta kaidah dan alur penalaran sahih yang baru ke
dalam otaknya.
Selanjutnya ada banyak keuntungan bila menggunakan sistem
pakar, diantaranya:
1. Menjadikan pengetahuan dan nasihat lebih mudah didapat.
2. Meningkatkan output dan produktivitas.
3. Menyimpan kemampuan dan produktivitas.
4. Meningkatkan penyelesaian masalah - menerusi paduan pakar,
penerangan, sistem pakar khas.
5. Meningkatkan realibilitas.
6. Memberikan respons (jawaban) dengan cepat.
7. Merupakan panduan yang cerdas.
8. Dapat bekerja dengan informasi yang kurang lengkap dan
9. Sistem pakar dapat digunakan untuk mengakses basis data
secara cerdas.
Selain keuntungan-keuntungan di atas, sistem pakar seperti halnya
sistem lainnya, juga memiliki kelemahan, diantaranya adalah:
1. Masalah di dalam mendapatkan pengetahuan di mana
pengetahuan tidak selalu bisa didapatkan dengan mudah.
Karena kadangkala pakar dari masalah yang kita buat tidak ada,
dan kalaupun ada kadang-kadang pendekatan yang dimiliki
oleh pakar berbeda-beda.
2. Untuk membuat suatu sistem pakar yang benar-benar
berkualitas tinggi sangatlah sulit dan memerlukan biaya yang
sangat besar untuk pengembangan dan pemeliharaannya.
3. Boleh jadi sistem tak dapat membuat keputusan.
4. Sistem pakar tidaklah 100% menguntungkan, walaupun
seseorang tetap tidak sempurna atau tidak selalu benar. Oleh
karena itu perlu dikaji ulang secara teliti sebelum digunakan.
Dalam hal ini peran manusia tetap merupakan faktor dominan.
Kelemahan-kelemahan sistem pakar tersebut bukanlah sama sekali
tidak bisa diatasi, tetap dengan terus melakukan perbaikan dan pengolahan
berdasarkan pengalaman yang telah ad maka hal itu diyakini akan dapat
diatasi, walaupun dalam waktu yang panjang dan terus menerus.
2.2.3 Ciri-ciri Sistem Pakar
Sistem pakar merupakan program-program praktis yang
menggunakan strategi heuristic yang dikembangkan oleh manusia untuk
keheuristikannya dan sifatnya yang berdasarkan pada pengetahuan, maka
umumnya sistem pakar bersifat:
1. Memiliki informasi yang handal, baik dalam menampilkan
langkah-langkah antara maupun dalam menjawab
pertanyaan-pertanyaan tentang proses penyelesaian.
2. Mudah dimodifikasi, yaitu dengan menambah atau menghapus
suatu kemampuan dari basis pengetahuannya.
3. Heuristic dalam menggunakan pengetahuan (yang sering kali
tidak sempurna) untuk mendapatkan penyelesaiannya.
4. Dapat digunakan dalam berbagai jenis komputer.
5. Memiliki kemampuan untuk beradaptasi.
Sistem pakar saat ini telah dibuat untuk memecahkan berbagai
macam permasalahan dalam berbagai bidang seperti matematika, teknik,
kedokteran, kimia, farmasi, sains komputer, bisnis, hokum, pendidikan
sampai pertahanan. Secara umum ada beberapa kategori dan area
permasalahan sistem pakar, yaitu:
1. Interpretasi, yaitu pengambilan keputusan atau deskripsi
tingkat tinggi dari sekumpulan data mentah, termasuk di
antaranya juga pengawasan, pengenalan ucapan, analisis citra,
interpretasi sinyal dan beberapa analisis kecerdasan.
2. Proyeksi, yaitu memprediksi akibat-akibat yang dimungkinkan
dari situasi-situasi tertentu. Diantaranya peramalan, prediksi
demografis, peramalan ekonomi, prediksi lalulintas, estimasi
hasil, militer, pemasaran, atau peramalan keuangan.
3. Diagnosis,yaitu menentukan sebab malfungsio dalam situasi
diataranya medis, elektronis, mekanis dan diagnosis perangkat
lunak.
4. Desain, yaitu menentukan konfigurasi komponen-komponen
sistem yang cocok dengan tujuan-tujuan kinerja tertentu yang
memenuhi kendala-kendala tertentu, diantaranya layout sirkuti
dan perancangan bangunan.
5. Perencanaan, yaitu merencanakan serangkaian tindakan yang
akan dapat mencapai sejumlah tujuan dengan kondisi awal
tertentu. Diantaranya perencanaan keuangan, komunikasi
militer, pengambangan produk, routing dan manajemen proyek.
6. Monitoring, yaitu membandingkan tingkah laku suatu sistem yang teramati dengan tingkah laku yang diharapkan darinya
diataranya CAMS (Computer Aided Monitoring System).
7. Debugging dan repair, yaitu menentukan dan mengimplementaiskan cara-cara untuk mengatasi malfungsi di
antaranya memberikan resep obat terhadap suatu kegagalan.
8. Instruksi, yaitu mendeteksi dan mengoreksi defisiensi dalam
pemahaman domain subjek, di antaranya melakukan instruksi
untuk diagnosis, debugging, dan perbaikan kerja.
9. Pengendalian, yaitu mengatur tingkah laku suatu environment
yang kompleks seperti kontrol terhadap
interpretasi-interpretasi, prediksi, perbaikan dan monitoring kelakukan
sistem.
10.Seleksi, mengidentifikasi pilihan terbaik dari sekumpulan
kemungkinan.
11.Simulasi, pemodelan interaksi antara komponen-komponen
2.2.4 Dasar Pembuatan Sistem Pakar
Ada beberapa alasan mendasar mengapa sistem pakar dikembangkan
untuk menggantikan seorang pakar, diantaranya:
1. Dapat menyediakan kepakaran setiap waktu dan di berbagai
lokasi.
2. Secara otomatis mengerjakan tugas-tugas rutin yang
membutuhkan seorang pakar.
3. Seorang pakar akan pensiun atau pergi.
4. Seorang pakar mahal harganya.
5. Kepakaran dibutuhkan juga pada lingkungan yang tidak
bersahabat (hostile environment).
2.2.5 Perbedaan Sistem Pakar dengan Konvensional
Tabel 2.1. Perbedaan sistem konvensional dan sistem pakar (Arhami, 2005)
Sistem Konvensional Sistem Pakar Informasi dan pemrosesan
umumnya digabung dalam satu program sekuensial
Basis pengetahuan dari mekanisme pemrosesan (inferensi)
Program tidak pernah salah (kecuali pemrogramnya yang salah)
Program bisa saja melakukan kesalahan
Tidak menjelaskan mengapa input dibutuhkan atau bagaimana hasil yang diperoleh
Penjelasan (explanation)
merupakan bagian dari sistem pakar
Membutuhkan semua input data Tidak harus membutuhkan semua
input data atau fakta Perubahan pada program
merepotkan
Perubahan pada kaidah dapat dilakukan dengan mudah
Sistem bekerja jika sudah lengkap Sistem dapat bekerja hanya dengan
kaidah yang sedikit
Eksekusi secara algoritmik Eksekusi dilakukan secara heuristic
dan logis Manipulasi efektif pada database
yang besar
Manipulasi efektif pada basis pengetahuan yang besar
Data kuantitatif Data kualitatif
Representasi dalam numeric Representasi pengetahuan dalam
simbolik Menangkap, menambah dan mendistribusi data numerik atau informasi
Menangkap, menambah dan mendistribusi pertimbangan dan pengetahuan
2.2.6 Struktur Sistem Pakar
Sistem pakar disusun oleh dua bagian utama, yaitu lingkungan
pengembangan (development environment) dan lingkungan konsultasi
(consultation environment). Lingkungan pengembangan sistem pakar digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan
sistem pakar. Sedangkan lingkungan konsultasi digunakan oleh pengguna
yang bukan pakar untuk memperoleh pengetahuan pakar (Arhami, 2005).
Komponen-komponen sistem pakar terdiri dari User Interface
(antarmuka pengguna), basis pengetahuan, akuisisi pengetahuan, mesin
inferensi, fasilitas penjelasan dan perbaikan pengetahuan.
Antarmuka pengguna merupakan mekanisme yang digunakan
oleh pengguna dan sistem pakar untuk berkomunikasi. Antarmuka
menerima informasi dari pemakai dan mengubahnya ke dalam bentuk
yang dapat diterima oelh sistem. Selain menerima informasi, antarmuka
juga menyajikan informasi ke dalam bentuk yang dapat dimengerti oleh
pemakai.
Basis pengetahuan mengandung pengetahuan untuk pemahaman,
formulasi dan penyelesaian masalah. Komponen ini disusun berdasarkan
dua elemen dasar yaitu fakta dan aturan. Fakta merupakan informasi
obyek dalam area permasalahan tertentu, sedangkan aturan merupakan
informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang
Akuisisi pengetahuan adalah akumulasi atau transfer atau
transformasi keahlian untuk menyelesaikan masalah dari sumber
pengetahuan ke dalam program komputer. Dalam tahap ini engineer
berusaha untuk mentransfer pengetahuan ke dalam program komputer.
Pengetahuan dapat diperoleh dari pakar, dan dapat dikuatkan oleh
pengetahuan lain yang berasal dari buku, basis data, laporan penelitian dan
pengalaman pemakai.
Terdapat tiga metode yang dapat digunakan untuk melakukan
akuisisi pengetahuan yaitu metode wawancara yang paling banyak
digunakan. Metode ini melibatkan pembicaraan secara langsung dengan
pakar. Metode yang kedua adalah analisis protocol. Pada metode ini pakar
diminta untuk melakukan pekerjaan dan mengungkapkan proses
pemikirannya dengan menggunakan kata-kata. Pekerjaan tersebut
direkam, dituliskan dan dianalisis. Metode ketiga adalah observasi. Pada
metode ini, pengakuisisi cukup melihat apa yang dilakukan pakar untuk
direkam dan diobservasi.
Mesin Inferensi, komponen ini mengandung mekanisme pola
pikir dan penalaran yang digunakan oleh pakar dalam menyelesaikan
suatu masalah. Mesin inferensi memberikan metodologi penalaran
informasi yang ada di dalam basis pengetahuan untuk memformulasikan
kesimpulan.
Terdapat dua pendekatan untuk mengontrol inferensi dalam sistem
pakar berbasis aturan yaitu pelacakan ke belakang (backward chaining)
dan pelacakan ke depan (forward chaining). Pelacakan ke belakang
dimulai dari tujuan untuk selanjutkan dilakukan pelacakan aturan yang
Pelacakan ke depan adalah pendekatan yang dimotori data. Dalam
pendekatan ini pelacakan dimulai dari informasi masukan dan selanjutnya
akan dicoba menggambarkan kesimpulan. Pelacakan ke depan mencari
fakta yang sesuai dengan bagian IF dari aturan IF-THEN.
Fasilitas penjelasan, adalah komponen sistem pakar yang akan
membuat sistem pakar tersebut menjadi lebih bermanfaat dengan cara
meningkatkan penalaran pemakai. Fasilitas penjelasan dapat menjelaskan
perilaku sistem pakar. Bagaimana sistem pakar digunakan? Mengapa
muncul pertanyaan-pertanyaan tertentu? Mengapa suatu alternative
ditolak? Bagaimana mendapatkan kesimpulan?
Perbaikan pengetahuan, komponen terakhir di dalam sistem
pakar. Pakar memiliki kemampuan untuk menganalisis kinerja serta
belajar dari kinerja. Kemampuan tersebut penting dalam pembelajaran
terkomputerisasi sehingga program dapat menganalisis penyebab
kesuksesan atau kegagalan yang dialami.
1.8
Java
Java adalah bahasa pemrograman yang dapat dijalankan di
berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat
oleh James Gosling saat masih bergabung di Sun Microsystems. Saat ini
merupakan bagian dari Oracle dan dirilis pada Tahun 2005. Bahasa ini
banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun pada
sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras
bawah yang minimal. Aplikasi-aplikasi berbasis Java umumnya
dikompilasi ke dalam bytecode dan dapat dijalankan pada Mesin Virtual
(JVM). Java merupakan bahasa yang bersifat umum untuk keperluan
2.3.1 Kelebihan
Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di
beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis
sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup
menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang
dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya
dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini
memungkinkan sebuah program berbasis java dikerjakan diatas operating
system Linux tetapi dijalankan dengan baik di atas Microsoft Windows.
Platform yang didukung sampai saat ini adalah Microsoft
Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah setiap
sistem operasi menggunakan programnya sendiri-sendiri (yang dapat
diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
Perpustakaan Kelas Yang Lengkap, Java terkenal dengan
kelengkapan library/perpustakaan (kumpulan program program yang
disertakan dalam pemrograman java) yang sangat memudahkan dalam
penggunaan oleh para pemrogram untuk membangun aplikasinya.
Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas
Java yang besar yang terus menerus membuat perpustakaan-perpustakaan
baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.
Bergaya C++, memiliki sintaks seperti bahasa
pemrograman C++ sehingga menarik banyak pemrogram C++ untuk
pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar
adalah pemrogram C++ yang pindah ke Java. Universitas-universitas
di Amerika Serikat juga mulai berpindah dengan mengajarkan Java
dan dapat berguna juga bagi mereka yang bukan mengambil jurusan
komputer.
Pengumpulan sampah otomatis, memiliki fasilitas pengaturan
penggunaan memori sehingga para pemrogram tidak perlu melakukan
pengaturan memori secara langsung (seperti halnya dalam bahasa C++
yang dipakai secara luas).
2.3.2 Kekurangan
Tulis sekali, jalankan di mana saja - Masih ada beberapa hal yang
tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE,
misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi
pada Mac OS X.
Mudah didekompilasi. Dekompilasi adalah proses membalikkan
dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi
Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat
tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama
juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma
yang digunakan program akan lebih sulit disembunyikan dan mudah
dibajak/direverse-engineer.
Penggunaan memori yang banyak. Penggunaan memori untuk
program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi
generasi sebelumnya seperti C/C++ danPascal (lebih spesifik
lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah
bagi pihak yang menggunakan teknologi terbaru (karena trend memori
terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih
harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.
2.3.3 Konsep Pemrograman Berorientasi Obyek
Selama hampir lima belas tahun belakangan ini telah
diperkenalkan paradigman pemrograman baru yang dikenal dengan
konsep Pemrograman Berorientasi Obyek (PBO) atau Object Oriented
Programming (OOP). Konsep ini membagi program menjadi objek-objek yang saling berinteraksi satu sama lain.
Objek adalah kesatuan entitas yang memiliki sifat dan tingkah
laku. Dalam kehidupan sehari-hari, objek adalah benda, baik benda
berwujud nyata seperti manusia, hewan, mobil, komputer, handphone,
pena maupun benda yang tidak nyata atau konsep, seperti tabungan bank,
sistem antrian, sistem internet banking dan sebagainya.
Keuntungan OOP paling tidak terdapat enam sebagai berikut:
1. Alami (natural)
2. Dapat diandalkan (reliable)
3. Dapat digunakan kembali (reusable) 4. Mudah untuk dimaintain (maintainable) 5. Dapat diperluas (extendable)
6. Efisiensi waktu
1.9
XML
XML (Extensible Markup Language) adalah bahasa markup untuk
keperluan umum yang disarankan oleh W3C untuk membuat dokumen
markup keperluan pertukaran data antar sistem yang beraneka
ragam. XML merupakan kelanjutan dari HTML (HyperText Markup
XML didesain untuk mempu menyimpan data secara ringkas dan
mudah diatur. Kata kunci utama XML adalah data (jamak dari datum)
yang jika diolah bisa memberikan informasi.
XML menyediakan suatu cara terstandarisasi namun bisa
dimodifikasi untuk menggambarkan isi dari dokumen. Dengan sendirinya,
XML dapat digunakan untuk menggambarkan sembarang view database,
tetapi dengan suatu cara yang standar.
2.4.1 Tipe XML
XML memiliki tiga tipe file :
• XML, merupakan standar format dari struktur berkas (file).
• XSL, merupakan standar untuk memodifikasi data yang diimpor
atau diekspor.
• XSD, merupakan standar yang mendefinisikan struktur database
dalam XML.
2.4.2 Keunggulan XML
Keunggulan XML bisa diringkas sebagai berikut :
• Pintar (Intelligence). XML dapat menangani berbagai tingkat (level) kompleksitas.
• Dapat beradaptasi. Dapat mengadaptasi untuk
membuat bahasa sendiri. Seperti Microsoft membuat bahasa
MSXML atau Macromedia mengembangkan MXML.
• Mudah pemeliharaannya.
• Sederhana. XML lebih sederhana.
• Mudah dipindah-pindahkan (Portability). XML mempunyai
2.4.3 Perbedaan XML dan HTML
Secara singkat perbandingan XML dan HTML adalah:
• HTML menyatakan bagaimana teks ditampilkan pada jendela
browser sedangkan XML menyatakan apa arti dari setiap kata.
• HTML memiliki sintaks yang lebih leluasa sedang XML lebih
kaku.
• Tag HTML dibatasi tetapi XML tidak.
• Pencarian HTML mengembalikan sejumlah besar data dan
dokumen, sedangkan XML ditujukan untuk mengembalikan data
yang tepat yang diinginkan user.
2.4.4 Kebutuhan Penggunaan XML
Dari perspektif bisnis hampir semua tipe data bisa
direpresentasikan sebagai XML, dengan suatu grammar yang
mendeskripsikan strukturnya. Terdapat sejumlah lapangan bisnis yang
akan mendapatkan keuntungan secara langsung dari penggunaan XML,
yaitu:
• E-commerce
Dalam domain bisnis terdapat bahasa XML yang spesifik untuk
menyatakan pesanan, transaksi, inventory dan billing. Bahasa XML
terbuka tersebut akan memungkinkan produsen, pengecer, dan konsumen
serta sistem perbankan dan akuntansi untuk berbagi data yang sama.
• Platform independence
Jika data dikodekan ke dalam xml, dengan mendeskripsikan makna
dari isi sebenarnya, customer bisa menemukan produk atau layanan, dan
membelinya, tanpa tergantung dari platform yang melayani data, atau
• Kemampuan pengaksesan data
Dokumen XML bisa dikodekan ke tipe data informasi dan
relasinya yang terdapat di database. Informasi database bisa diakses
dengan XML lewat web. Web server di masa depan akan
mengikutsertakan prosessor XML untuk mengakses data dari database dan
sistem file, dan mengembalikan sebagai HTML atau XML.
• Penyederhanaan aplikasi
Pada saat ini konsumsi aplikasi pada disk dan memori banyak
disebabkan oleh format file yang beragam. Aplikasi seringkali harus
membaca dan menulis banyak format gambar dan teks yang berbeda. Sifat
XML yang terbuka dan extensible memungkinkan kita untuk
merepresentasikan semua kegunaan format yang berbeda dalam satu XML
yang spesifik dengan domain grammar tertentu. Suatu aplikasi bisa dengan
mudah membaca dan menulis XML untuk domainnya.
• Memungkinkan sharing data lewat internet
Sejak data aktual dikodekan dan bukan tampilannya maka bisa
ditampilkan ke setiap perangkat keluaran dari PC dengan browser sampai
ponsel dan PDA. Browser dan aplikasi akan menjadi lebih XML-aware.
XML membuka kesempatan akses pada end user ke data dan kemampuan
membuat pilihan yang cerdas. XML akan jauh lebih mempercepat koneksi
antara bisnis dengan konsumen.
Alasan penggunaan XML adalah XML memiliki format yang
mudah dibaca dari berbagai bahasa pemrograman. Tujuannya adalah
ketika data sudah dibuat dalam format xml, untuk pengembangan berbasis
1.10
XOM
XOM (XML Object Model) adalah sebuah api berbasis Java yang
menyediakan kemampuan untuk melakukan pemrosesan berkas XML.
XOM didesain agar mudah digunakan, mudah dipelajari dan memiliki
performa yang bagus. XOM merupakan salah satu api yang sangat melihat
korektivitas dari berkas XML. XOM tidak akan memberikan toleransi
terhadap berkas XML yang memiliki format tidak well-formed.
Dengan menggunakan XOM, kita cukup berfokus pada aplikasi
yang akan dibangun. Kita tidak perlu memikirkan bagaimana cara
melakukan pengambilan data-data di dalam XML. Kita juga tidak perlu
memikirkan bagaimana cara menuliskan berkas XML.
XOM cukup unik karena memiliki fasilitas streaming. Setiap
cabang diambil secara berurutan dan tidak harus menunggu semua cabang
telah diambil. Hal ini memungkinkan XOM untuk beroperasi dengan cepat
seperti layaknya parser secara lokal. Kita tidak perlu menunggu dokumen harus benar-benar diparsing secara total sebelum kita memulai bekerja
terhadap dokumen tersebut.
XOM menggunakan memori dengan sangat efisien. Jika kita
membaca dokumen ke dalam memori, XOM akan mengatur penggunaan
memori sesedikit mungkin. Lebih penting lagi, XOM memungkinkan kita
untuk melakukan penyaringan dokumen. Sehingga kita tidak harus
mengambil cabang-cabang data yang tidak kita inginkan. Kita cukup
mengambil yang diperlukan saja. Kita bahkan dapat memproses berkas
secara sepotong-sepotong dokumen dan membuang setiap bagian ketika
kita sudah selesai terhadap hal tersebut. XOM telah diuji untuk