16 II.1. Sistem Pakar
Sistem pakar (expert system) adalah salah satu teknik kecerdasan buatan yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Sistem pakar yang baik dirancang agar dapat menyelesaikan suatu permasalahan tertentu dengan meniru kerja dari para ahli. Dengan sistem pakar ini, masyarakat awam pun dapat menyelesaikan masalah yang sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para ahli, sistem pakar ini juga akan membantu aktivitasnya sebagai asisten yang sangat berpengalaman (Sri Kusumadewi; 2003: 109).
Ada beberapa definisi tentang sistem pakar antara lain : b. Menurut Durkin
Sistem pakar adalah suatu program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah yang dilakukan seorang pakar.
c. Menurut Ignizio
Sistem pakar adalah suatu model dan prosedur yang berkaitan, dalam suatu domain tertentu, yang mana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar.
d. Menurut Giarratano dan Riley
Sistem pakar adalah suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar.
II.1.1. Konsep Dasar Sistem Pakar
Menurut Efraim Turban, konsep dasar sistem pakar mengandung keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan. Keahlian adalah suatu kelebihan penguasaan pengetahuan dibidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman. Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan, menyusun kembali pengetahuan jika diapandang perlu, memecahkan aturan – aturan jika dibutuhkan, dan menetukan relevan tidaknya keahlian mereka. Pengalihan keahlian dari para ahli ke komputer untuk kemudian dialihkan lagi ke orang lain yang bukan ahli, merupakan tujuan utama dari sistem pakar. Proses ini membutuhkan 4 aktivitas yaitu : tambahan pengetahuan (dari para ahli atau sumber – sumber lainnya), represetasi pengetahuan (komputer), inferensi pengetahuan dan pengalihan pengetahuan ke user. Pengetahuan yang disimpan di komputer disebut basis pengetahuan. Ada 2 tipe pengetahuan, yaitu : fakta dan prosedur (biasanya berupa aturan).
Salah satu fitur yang harus dimiliki oleh sistem pakar adalah kemampuan untuk menanalar. Jika keahlian – keahlian sudah tersimpan sebagai basis pengetahuan dan sudah tersedia program yang mampu mengakses basis data, maka komputer harus dapat deprogram untuk membuat inferensi. Proses inferensi
ini dikemas dalam bentuk inferensi (inference engine). Sebagian besar sistem pakar komersial dibuat dalam bentuk rule based systems, yang nama pengetahuan disimpan dalam bentuk aturan –aturan. Aturan tersebut biasanya berbentuk IF
THEN (Sri Kusumadewi; 2003 : 111).
II.1.2. Struktur Sistem Pakar
Sistem pakar terdiri dari dua bagian pokok, yaitu lingkungan pengembangan (development environtment) dan lingkungan konsultasi (consultation environtment). Lingkungan pengembangan sistem pakar digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar, sedangkan lingkungan konsultasi digunakan oleh pengguna yang bukan pakar guna memperoleh pengetahuan pakar(Sri Kusumadewi; 2003 : 113).
Komponen-komponen sistem pakar dalam kedua bagian tersebut terlihat dalam gambar II.1 :
Gambar II.1 : Struktur Sistem Pakar (Sumber : Sri Kusumadewi; 2003:114)
II.1.3. Ciri – Ciri Sistem Pakar
Sistem pakar yang baik harus memenuhi ciri-ciri sebagai berikut : 1. Memiliki fasilitas informasi yang handal.
2. Mudah dimodifikasi
3. Dapat digunakan dalam berbagai jenis komputer. 4. Memiliki kemampuan untuk belajar beradaptasi.
II.2. Penykit THT
Penyakit THT (Telinga, Hidung, dan Tenggorokan) merupakan penyakit yang bisa menyerang siapa saja, tidak memandang umur, jenis kelamin, status sosial, dan daerah tempat tinggal. Banyak faktor yang bisa menyebabkan penyakit THT, antara lain virus dan bakteri. misalnya pada penyakit
sinusitis. Penyakit ini merupakan sebuah kondisi peradangan yang terjadi di
sinus. Peradangan ini diakibatkan oleh infeksi virus maupun alergi, infeksi jamur dan bakteri juga bisa menjadi faktor penyebabnya. Sinusitis dapat terjadi ke salah satu dari 4 sinus yang dimiliki manusia, adapun keempat sinus tersebut yakni
etmoidalis, maksilaris, sfenoidalis, dan frontalis. Penyakit THT sinusitis ini dapat
bersifat akut, dengan ciri berlangsung dalam 3 minggu, bisa juga kurang. Juga dapat bersifat kronis, dengan ciri berlangsung dalam 3 hingga 8 minggu lamanya, namun bisa juga berlanjut terus sampai dengan berbulan-bulan, tak hanya itu bahkan ada yang hingga bertahun-tahun lamanya ( Siti Nursiah : 2003 ).
II.3. Teorema Bayes
Probabilitas Bayes merupakan salah satu cara untuk mengatasi ketidakpastian data dengan menggunakan formula Bayes yang dinyatakan dalam rumus sebagai berikut (Sri Kusumadewi; 2003: 92).
……….[1] Keterangan :
P(H | E) : probabilitas hipotesis H jika diberikan evidence E
P(E | H) : probabilitas munculnya evidence E, jika hipotesis H terjadi P(E) : probabilitas evidence E tanpa memandang apapun
P(H) : probabilitas hipotesis H tanpa memandang evidence apapun Contoh :
Diketahui, p(demam)=0,4 p(muntah)=0,3. p(demam|muntah)=0.75 a. Berapa nilai dari p(muntah|demam) ?
b. Berapa nilai dari p(muntah|demam) jika p(demam)=0,1 ?
Jawab :
P(muntah|demam)
=
0.56P(muntah|demam)
=
2.25Tetapi nilai probablitas harus antara 0 dan 1. Apa yang salah ?
Perhatikan bahwa : p(demam) harus lebih besar atau sama dengan p(demam muntah) p(demam) ≥ p(demam muntah).
p(demam muntah) = p(demam|muntah) x p(muntah) = 0.75 x 0.3 =0.225
Jadi, p(demam) ≥ 0.225
Untuk nilai p(demam) = 0.1 tidak memenuhi syarat sehingga menghasilkan perhitungan yang salah.
Dalam bidang kedokteran Teorema Bayes sudah dikenal tapi teorema ini lebih banyak diterapkan dalam logika kedokteran modern (Cutler: 1991). Teorema ini lebih banyak diterapkan pada hal-hal yang berkenaan dengan probabilitas serta kemungkinan dari penyakit dan gejala-gejala yang berkaitan.
II.4. UML (Unified Modelling Language)
UML singkatan dari Unified Modelling Language yang berarti bahasa pemodelan standar. Sebagai bahasa, berarti UML memiliki sintaks dan semantik. Ketika kita membuat model menggunakan konsep UML, ada aturan-aturan yang harus diikuti. Bagaimana elemen pada model-model yang kita buat berhubungan satu dengan lainnya harus mengikuti standar yang ada. UML bukan hanya sekedar diagram, tetapi juga menceritakan konteksnya. Ketika pelanggan memesan sesuatu dari sistem, bagaimana transaksinya? Bagaimana sistem mengatasi error yang terjadi? Bagaimana keamanan terhadap sistem yang kita buat? Dan sebagainya dapat dijawab dengan UML. (Prabowo Pudjo Widodo; 2011: 6)
UML diaplikasikan untuk maksud tertentu, biasanya antara lain: 1. Merancang perangkat lunak.
2. Sarana komunikasi antara perangkat lunak dengan proses bisnis.
3. Menjabarkan sistem secara rinci untuk analisa dan mencari apa yang diperlukan sistem.
(Prabowo Pudjo Widodo; 2011: 6)
II.4.1. Jenis-Jenis Diagram UML
Berikut ini adalah mengenai berbagai diagram UML serta tujuan dan simbol-simbolnya, yaitu:
1. Diagram Use Case (Use Case Diagram)
Diagram Use case merupakan pemodelan untuk kelakuan (behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu.
Berikut ini adalah simbol-simbol yang ada pada diagram use case ditunjukkan pada table II.1 :
Tabel II.1 Simbol-simbol Use case Diagram
Simbol Deskripsi
Use case Fungsionalitas yang disediakan sistem sebagai
unit-unit yang saling bertukar pesan antar unit atau aktor, biasanya dengan menggunakan kata kerja di awal frase nama use case.
Aktor/actor Orang, proses, atau lain yang berinteraksi dengan sistem informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah orang, tapi Nama
Nama actor
aktor belum tentu adalah orang, biaanya dinyatakan menggunakan kata benda di awal fase nama aktor.
Asosiasi/association Komunikasi antara aktor dan use case yang berpartisipasi pada use case atau use case miliki interaksi dengan actor
Ekstensi/extend
<<extend>>
Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu; mirip dengan prinsip inheritance pada pemrograman berorientasi objek; biasanya use case tambahan memiliki nama depan yang sama dengan use case yang di tambahkan, misal
<<extend>>
<<extend>>
Arah panah mengarah pada use case yang ditambahkan; biasanya use case yang menjadi
extend-nya merupakan jenis yang sama dengan use case yang menjadi induknya.
validasi user validasi username
validasi sidik jari
Include
<<include>>
Relasi use case tambahan sebuah use case di mana use case yang ditambahkan memerlukan
use case ini untuk menjalankan fungsinya atau
sebagai syarat dijalankan use case ini. Ada dua sudut pandang yang cukup besar mengenai
include di use case:
include berarti use case yang ditambahkan akan selalu di panggil saat use case tambahan dijalankan. Contoh:
<<include>>
Include berarti use case yang tambahan akan selalu melakukan pengecekan, missal pada kasus berikut:
<<include>>
Kedua interpretasi di atas dapat dianut salah satu atau keduanya tergantung pada pertimbangan dan interpretasi yang dibutuhkan.
2. Diagram Kelas (Class Diagram)
login validasi user name
ubah data validasi user
Diagram kelas atau class diagram menggambarkan struktur sistem dari pendefenisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi.
Atribut merupakan variable-variabel yang dimiliki suatu kelas.
Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas (Rosa A.S; 2013: 143).
Diagram kelas dibuat agar pembuat program atau programmer membuat kelas-kelas sesuai rancangan di dalam diagram kelas agar antara dokumentasi, perancangan, dan perangkat lunak sinkron (Rosa A.S; 2013: 144). Berikut ini adalah simbol-simbol yang ada pada class diagram ditunjukkan pada table II.2 :
Tabel II.2 Simbol-simbol Class Diagram
Simbol Deskripsi
Kelas Kelas pada struktur sistem
Antarmuka/interface
nama_interface
Sama dengan konsep interface dalam pemograman berorientasi objek
Asosiasi/association
Relasi antarkelas dengan makna umum, asosiasi biasanya juga disertai dengan
multiplicity
asosiasi satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity
Generalisasi Relasi antarkelas dengan makna
generalisasi-spesialisasi (umum-khusus)
Kebergantungan/dependency Relasi antarkelas dengan makna kebergantungan antarkelas
Agregasi/aggregiation Relasi antarkelas dengan makna semua-bagian (whole-part)
3. Diagram Aktivitas (Activity Diagram)
Diagram aktivitas atau Activity Diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. (Rosa A.S; 2013: 161)
4. Diagram Rangkaian (Sequence Diagram)
Diagram sekuen menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antarobjek. Oleh karena itu untuk menggambar diagram sekuen maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Membuat diagram sekuen juga dibutuhkan untuk melihat skenario yang ada pada use case. (Rosa A.S; 2013: 165)
II.6. Microsoft Visual Bacic 2010
Visual Basic dibuat oleh Microsoft, merupakan salah satu bahasa pemogramman berorientasi object yang mudah dipelajari. Selain menawarkan kemudahan, Visual Basic juga cukup andal untuk diguakan dalam pembuataqn aplikasi database. Visual Basic merupakan bahasa pemograman event drive, dimana program akan menunggu sampai respons dari user / pemakai program apliksi yang dapat berupa kejadian atau event, misalnya ketika mengklik tombol atau menekan Enter (Edi Winarto, dkk, 2010).
II.7. SQL Server 2008
SQL Server 2008 adalah sebua RDBMS (Relational Database Management System) yang didevelop oleh Microsoft, yang digunakan untuk
menyimpan dan mengolah data. Pada SQL Server 2008, kita bisa melakukan pengambilan dan modifikasi data yang ada dengan cepat dan efisien. Pada SQL
Server 2008, kita bisa membuat object- object yang sering digunakan pada
aplikasi bisnis, seperti membuat database, table, function, strated procedure,
trigger dan view. Selain object, kita juga menjalankan perintah SQL (Stucture Query Language) untuk mengambil data (Edi Winarto, dkk, 2010).