0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan41 halaman

Bab Ii

BAB 2 SISPAK THT FRAMEWORK CI

Diunggah oleh

Romy Aziz Risaldi
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan41 halaman

Bab Ii

BAB 2 SISPAK THT FRAMEWORK CI

Diunggah oleh

Romy Aziz Risaldi
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 41

BAB II

TINJAUAN PUSTAKA

A. Landasan Teori

1. Penerapan

Berdasarkan definisi yang diberikan oleh Kamus Besar Bahasa

Indonesia (KBBI). Penerapan berasal dari kata dasar terap yang berarti

proses, cara, perbuatan menerapkan. (Pusat Bahasa Departemen

Pendidikan Nasional : 2008)

Jadi, penerapan adalah sebuah cara untuk melakukan sesuatu

berdasarkan aturan atau metode tertentu. Dalam konteks ini, aturan yang

menjadi acuan adalah CodeIgniter Framework. Mengenai CodeIgniter

Framework akaan dijelaskan pada bagian berikutnya.

2. Framework

Framework dalam sistem berorientasi objek, merupakan kumpulan

class yang melambangkan bentuk abstrak untuk pemecahan sejumlah

masalah yang berhubungan.(Howe, 1995)

Framework adalah kumpulan perintah atau fungsi dasar yang

membentuk aturan – aturan tertentu dan saling berinteraksi satu sama lain

sehingga dalam pembuatan aplikasi web kita harus mengikuti aturan dari

framework tersebut.

7
8

Dengan framework (dalam hal ini framework PHP), kita tidak perlu

memikirkan kode perintah/fungsi dasar dari aplikasi website kita.

(Wardana ,2010)

Pada pemrograman web framework telah dikembangkan untuk

bahasa pemrograman antara lain PHP dan Java. Untuk PHP, framework

yang banyak digunakan misalnya Zend framework yang dikembangkan

oleh Zend Technologies, CodeIgniter yang dikembangkan oleh Ellislab

Inc, dan CakePHP yang dikembangkan oleh Cake Software Foundation.

Sebuah framework selain menyediakan lingkungan pengembangan

sendiri juga menyediakan berbagai macam fungsi siap pakai yang bisa kita

gunakan dalam pembuatan sebuah aplikasi berbasis web.

a. Zend Framework

Berdasarkan situs resminya https://framework.zend.com/, Zend

Framework adalah sebuah framework yang berbasis open source untuk

mengembangkan aplikasi web, dan layanan dengan PHP 5 berdasarkan

kesederhanaan, penerapan code berorientasi objek, lisensi yang

corporate-friendy, dan basis kode agile yang teruji secara ketat.

(Vaswani, 2010)

Framework ini menyediakan satu set alat yang komprehensif

untuk membangun aplikasi web yang berbasis PHP, dengan

menggunakan built-in API’s untuk fungsi-fungsi umum seperti

keamanan, validasi input, data caching,operasi database dan XML,

dan internasionalisasi.
9

Tidak seperti framework lainnya, Zend Framework

menggunakan arsitektur Loosely Coupled. Secara sederhana,

maksudnya adalah meskipun framework sendiri terdiri dari banyak

komponen, komponen ini sebagian besar independen dan memiliki

hubungan minimal untuk satu sama lain. Arsitektur Loosely Coupled

ini membantu dalam membangun aplikasi ringan, karena pengembang

dapat memilih untuk hanya menggunakan komponen spesifik yang

mereka butuhkan saja. Jadi,misalnya, pengembang ingin

menambahkan otentifikasi atau caching untuk aplikasi mereka bisa

langsung memanfaatkan Zend_Auth atau komponen Zend_Cache

tanpa perlu komponen lainnya.

b. CakePHP

Berdasarkan situs resmi CakePHP (https://cakephp.org/),

CakePHP adalah framework pengembangan cepat untuk PHP yang

menggunakan pola desain umum yang terkenal seperti Active Record,

Association Data Mapping, Front Controller, dan MVC. Tujuan

utamanya adalah untuk menyediakan framework yang terstruktur yang

memungkinkan pengguna PHP di semua tingkat untuk

mengembangkan aplikasi web yang handal secara cepat tanpa

kehilangan fleksibilitasnya (Bari, 2008).

CakePHP membuang proses monoton dalam pemgembangan

apliaksi web. CakePHP menyediakan sebuah alat bantu yang


10

diperlukan untuk memulai tugas coding yang perlu diselesaikan, yaitu

logika
10

aplikasi. Daripada membuat sesuatu yang baru setiap memulai proyek

baru, kita bisa meninjau unduhan CakePHP dan mulai focus kepada

logic aplikasi yang hendak dibangun.

c. CodeIgniter Framework

CodeIgniter adalah framework aplikasi web yang open source

untuk bahasa pemrograman PHP. CodeIgniter memiliki banyak fitur

yang membuatnya berbeda dengan framework lainnya. Tidak seperti

beberapa framework PHP lainnya, dokumentasi untuk framework ini

sangat lengkap, yang mencakup seluruh aspek dalam framework.

CodeIgniter juga mampu berjalan pada lingkungan shared hosting

karena memiliki ukuran yang sangat kecil, namun memiliki kinerja

yang sangat yang luar biasa.(Griffiths, 2010).

Dari sisi pemrograman, CodeIgniter kompatibel dengan PHP 4,

PHP 5 ,dan yang terbaru PHP 7. Sehingga akan berjalan dengan baik

pada web host yang banyak dipakai pada saat ini. CodeIgniter

menggunakan pola desain Model-View-Controller (MVC) yang

merupakan cara untuk mengatur aplikasi web ke dalam tiga bagian

yang berbeda yaitu Model –lapisan abstraksi dari database, Views –

file-file template tampilan depan, dan Controller –logika dari alur

proses aplikasi berjalan. Pada intinya, CodeIgniter juga membuat

penggunaan ekstensif dari pola desain Singleton. Maksudnya adalah

cara untuk me-load class sehingga jika class itu dipanggil dalam
10

beberapa kali, kejadian yang sama pada class tersebut akan digunakan

kembali. Hal ini


11

sangat berguna dalam koneksi database, karena kita hanya ingin

menggunakan satu koneksi setiap kali class itu digunakan (Griffiths,

2010).

CodeIgniter dikembangkan oleh Rick Ellis, dengan versi awal

yang dirilis pada tanggal 28 Februari 2006. Dari tahun itulah hingga

sekarang, telah banyak muncul versi CodeIgniter yang terus

berkembang dengan penambahan fitur baru dari versi sebelumnya.

Untuk versi terbaru dari CodeIgniter adalah versi 3.1.7 yang telah

mendukung PHP7.

Bagaimana suatu proses data mengalir pada sistem yang

menggunakan CodeIgniter Framework dapat diilustrasikan pada

gambar berikut (Basuki, 2010)

Gambar 2.1 Ilustrasi Pola Kerja CodeIgniter Framework

Keterangan :

1) Index.php berfungsi sebagai front controller, menginisialisasi base

resource untuk menjalankan CodeIgniter.

2) Routing memeriksa HTTP request untuk menentukan apa yang harus

dilakukan dengannya.
12

3) Jika Cache aktif, maka hasilnya akan langsung dikirimkan ke

browser dengan mengabaikan aliran data normal.

4) Security. Sebelum controller dimuat, HTTP request dan data yang

dikirimkan user akan difilter untuk keamanan.

5) Controller memuat model, core libraries, plugins, helpers, dan semua

resource yang diperlukan untuk memproses request.

6) Akhirnya View yang dihasilkan akan dikirim ke browser. Jika cache

aktif, maka view akan disimpan sebagai cache dahulu, sehingga pada

request berikutnya langsung ditampilkan.

d. Model View Controller (MVC)

Model-View-Controller(MVC) pertama kali diperkenalkan

peneliti Xerox PARC yang bekerja pada bahasa pemrograman

Smalltalk di akhir tahun 1970-an dan awal 1980-an. Smalltalk adalah

bahasa pemrograman yang berorientasi objek,bertipe dinamis dan

reflektif Smalltalk pertama kali digunakan dalam pembelajaran

edukasi, dan hal ini berbeda dari data mainframe dan struktur kontrol

dalam program Smalltalk yang terlibat pada Windowed User

Interfaces, konsep pemrograman berorientasi objek, pengantar pesan

antara komponen-komponen objek, dan kemampuan untuk memonitor

dan memodifikasi strukutr dan perilakunya sendiri. (Myer, 2008).


12

Singkatnya, Model-View-Controller (MVC), adalah pola desain

pemgembangan perangkat lunak. MVC adalah sebuah pendekatan

untuk
13

memisahkan aplikasi menjadi tiga segmen, yaitu Models, View, dan

Controller. MVC menstrukturisasi aplikasi dengan cara tersebut untuk

mempromosikan penggunaan kembali dari kode program (Griffiths,

2010)

Gambar 2.2 Penjelasan Konsep MVC

Berdasarkan gambar diatas dapat kita ketahui bahwa ketika

datang sebuah request dari user, maka permintaan tersebut akan

ditangani oleh Controller, kemudian Controller akan memanggil

Model jika memang diperlukan operasi database. Hasil Query oleh

Model kemudian akan dikembalikan ke Controller. Selanjutnya

Controller akan memanggil View yang tepat dan

mengkombinasikannya dengan hasil query Model. Hasil akhri dari

mekanisme tersebut akan ditampilkan ke browser yang selanjutnya

bisa dilihat oleh user.

1) Model
13

Model merupakan jenis data yang dapat digunakan oleh

aplikasi. Beberapa contoh data yang biasa digunakan adalah


14

database, RSS Feed, API calls, dan setiap tindakan lainnya yang

melibatkan pengambilan (retrieving), pengembalian (returning),

memperbaharui (updating), menghapus (removing) data. (Griffiths,

2010).

Tabel 2.1 Contoh File Instalasi Pertama pada Class Model

No Nama File Kegunaan

1 Index.html Mencegah user mengakses ke

folder class model langsung

lewat URL pada web browser.

2) View

File-file yang ditempatkan pada bagian ini bertugas untuk

menampilkan request hasil operasi dari class controller ke web

browser. Tidak ada alur logika pemrograman, tidak ada query

insert atau update yang harus dijalankan disini. File-file disini

hanya untuk menunjukan hasil dari dua bagian lainnya. Jadi kita

mengambil data dalam model dan menampilkan dalam view.

(Blanco, 2009).
15

Tabel 2.2 Contoh File Instalasi Pertama pada Folder View

No Nama File & Folder Kegunaan

1 Index.html Mencegah user mengakses

folder view langsung pada URL

web browser.

2 Welcome_Message.php Menampilkan halaman welcome

message pada instalasi pertama

CodeIgniter

3 Folder Errors Berisi file-file view untuk

menampilkan pesan error pada

proses CodeIgniter.

3) Controller

Controller adalah pusat logika dari framework web. File-

file yang berada disini akan melayani sebagai perantara antara

Model dan View. Controller akan merespon HTTP request dan

menghasilkan halaman web. Controller adalah inti dari framework

web karena bagian menentukan bagaimana HTTP request harus

ditangani. (Griffiths : 2010).


16

Tabel 2.3 Contoh File Instalasi Pertama pada Class Controller

No Nama File Kegunaan

1 Index.html Mencegah user mengakses

folder class controller langsung

pada URL web browser.

2 Welcome_message.php Membuat alur login admin dan

menjembatani proses antara

model dan view pada fungsi

login.

e. PHP

PHP (Hypertext Preprocessor) yaitu bahasa pemrograman web

server-side yang ditambahkan dalam HTML. (Kadir, 2004). PHP

merupakan script yang menyatu dengan HTML dan berada pada

server (server side HTML embedded scripting). PHP adalah script

yang digunakan untuk membuat halaman web yang dinamis. Dinamis

berarti halaman yang akan ditampilkan dibuat saat halaman itu

diminta oleh client. Mekanisme ini menyebabkan informasi yang

diterima client selalu yang terbaru. Semua script PHP dieksekusi pada

server dimana script tersebut dijalankan. Mekanisme ini menyebabkan

informasi yang diterima client selalu yang terbaru. Semua script PHP

dieksekusi pada
17

server dimana script tersebut dijalankan. Kelebihan PHP dari bahasa

pemrograman lain:

a. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak

melakukan sebuah kompilasi dalam penggunaanya.

b. Web Server yang mendukung php dapat ditemukan dimana- mana

dari mulai IIS sampai dengan apache, dengan configurasi yang relatif

mudah.

c. Dalam sisi pengembangan lebih mudah, karena banyaknya milis-

milis dan developer yang siap membantu dalam pengembangan.

d. Dalam sisi pemahamanan, php adalah bahasa scripting yang paling

mudah karena referensi yang banyak.

e. PHP adalah bahasa open source yang dapat digunakan di berbagai

mesin (linux, unix, windows) dan dapat dijalankan secara runtime

melalui console serta juga dapat menjalankan perintah-perintah

sistem.

f. XAMPP

XAMPP sebuah perangkat lunay yang berfungsi untuk

menjalankan website yang menggunakan bahasa pemrograman PHP

dan menggunakan pengolah basis data MySQL di komputer

local.Xampp berperan sebagai web server pada komputer lokal.

Xampp juga dapat disebut sebuah CPanel server virtual yang mana

dapat membatu melakukan preview sehingga dapat memodifikasi


17

website tanpa harus online atau terakses dengan internet

(Wicaksono,2008).
18

g. MySQL

MySQL Adalah sebuah program database server yang mampu

menerima dan mengirimkan datanya dengan cepat, multi user, serta

menggunakan standar Structured Query Language. (Rulianto, 2004).

Suatu perangkat lunak database relasi seperti halnya oracle,

postgreSQL, microsoft SQL,dan sebagainya.Yang paling utama kita

jangan disalah artikan dengan SQL, karena SQL sendiri didefinisikan

sebagai suatu sintak perintah-perintah tertentu yang digunakan untuk

mengelola suatu database. Dapat kita definisikan dari fungsi MySQL

antara lain:

a. Menyimpan data.

b. Mengaksesnya dengan cepat.

c. Mengubahnya (insert, update, delete) dengan melakukan itu

semua dengan mudah.

MySQL juga memiliki banyak fasilitas praktis yang

dikembangkan dalam kerja sama yang amat dekat dengan user-user

awalnya. MySQL mulanya dikembangkan untuk menangani basis data

yang sangat besar dan lebih cepat dari solusi-solusi yang ada dan telah

sukses digunakan dalam lingkungan produksi yang memiliki banyak

permintaan untuk beberapa tahun. Konektivitas, kecepatan dan

keamanan membuat MySQL amat sesuai untuk mengakses database

pada internet. MySQL memiliki banyak kontribusi software yang ada.


19

Anda akan menemukan bahwa bahasa pemrograman atau aplikasi

favorit Anda telah mendukung MySQL.

h. Sublime Text

Sublime Text adalah aplikasi editor untuk kode dan teks yang

dapat berjalan diberbagai platform operating system dengan

menggunakan teknologi Phyton API. Terciptanya aplikasi ini

terinspirasi dari aplikasi Vim, Aplikasi ini sangatlah fleksibel dan

powerfull. Fungsionalitas dari aplikasi ini dapat dikembangkan dengan

menggunakan sublime-packages. Sublime Text bukanlah aplikasi open

source dan juga aplikasi yang dapat digunakan dan didapatkan secara

gratis, akan tetapi beberapa fitur pengembangan fungsionalitas

(packages) dari aplikasi ini merupakan hasil dari temuan dan

mendapat dukungan penuh dari komunitas serta memiliki linsensi

aplikasi gratis.

Sublime Text mendukung berbagai bahasa pemrograman dan

mampu menyajikan fitur syntax highlight hampir di semua bahasa

pemrogramman yang didukung ataupun dikembangkan oleh

komunitas seperti; C, C++, C#, CSS, D, Dylan, Erlang, HTML,

Groovy, Haskell, Java, JavaScript, LaTeX, Lisp, Lua, Markdown,

MATLAB, OCaml, Perl, PHP, Python, R, Ruby, SQL, TCL, Textile and

XML. Biasanya bagi bahasa pemrograman yang didukung ataupun

belum terdukung secara default dapat lebih dimaksimalkan atau


19

didukung dengan menggunakan add-ons yang bisa didownload sesuai

kebutuhan user.
20

Gambar 2.3 Sublime Text 3

Berikut beberapa fitur yang diunggulkan dari aplikasi Sublime Text:

a. Goto Anything

Fitur yang sangat membantu dalam membuka file ataupun

menjelajahi isi dari file hanya dengan beberapa keystrokes.

b. Multiple Selections

Fitur ini memungkinkan user untuk mengubah secara interaktif

banyak baris sekaligus, mengubah nama variabel dengan mudah,

dan memanipulasi file lebih cepat dari sebelumnya.

c. Command Pallete

Dengan hanya beberapa keystorkes, user dapat dengan cepat

mencari fungsi yang diinginkan, tanpa harus menavigasi melalu

menu.

d. Distraction Free Mode

Bila user memerlukan fokus penuh pada aplikasi ini, fitur ini dapat

membantu user dengan memberikan tampilan layar penuh.


21

3. Rancang Bangun

Perancangan atau rancang bangun merupakan serangkaian

prosedur untuk menerjemahkan hasil analisa dan sebuah sistem ke dalam

bahasa pemrograman untuk mendeskripsikan dengan detail bagaimana

komponen-komponen sistem di implementasikan. Sedangkan pengertian

pembangunan / bangun sistem adalah kegiatan menciptakan sistem baru

maupun mengganti atau memperbaiki sistem yang telah ada baik secara

keseluruhan maupun sebagian. (Pressman, 2002).

Rancang bangun sangat berkaitan dengan perancangan sistem yang

merupakan satu kesatuan untuk merancang dan membangun sebuah

aplikasi. Perancangan sistem sendiri adalah penentuan proses dan data

yang diperlukan oleh sistem baru. Jika sistem itu berbasis computer,

rancangan dapat menyertakan spesifikasi jenis peralatan yang akan

digunakan (Tata Sutabri, 2005). Sedangkan menurut Jogiyanto (Jogiyanto,

2010) menjelaskan bahwa perancangan sistem dapat didefinisikan sebagai

gambaran, perencanaan, dan pembuatan sketsa atau pengaturan dari

beberapa elemen yang terpisahkan kedalam satu kesatuan yang utuh dan

berfungsi. Tujuan dari perancangan sistem yaitu untuk memenuhi

kebutuhan para pemakai sistem dan memberikan gambaran yang jelas dan

rancang bangun yang lengkap kepada programmer. Kedua tujuan ini lebih

berfokus pada perancangan atau desain sistem yang terinci yaitu

pembuatan rancang bangun yang jelas dan lengkap yang nantinya

digunakan untuk pembuatan aplikasi.


22

4. Sistem Pakar

Sistem pakar adalah suatu program komputer cerdas yang

menggunakan knowledge dan prosedur inferensi untuk menyelesaikan

masalah yang cukup sulit sehingga membutuhkan seorang yang ahli untuk

menyelesaikannya (Edward Fieganbaum, 1982).

Menurut Kusumadewi (2003), secara umum sistem pakar adalah

sistem 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, orang awam pun dapat menyelesaikan masalah yang

cukup rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan

para ahli. Bagi para ahli, sistem pakar ini juga dapat membantu

aktivitasnya sebagai asisten sebagai asisten yang sangat berpengalaman.

a. Konsep Sistem Pakar

Sistem pakar disusun oleh dua bagian yaitu lingkungan

pengembangan dan lingkungan konsultasi. Lingkungan pengembangan

sistem pakar digunakan untuk memasukan knowledge pakar ke dalam

lingkungan sistem pakar, sedangkan lingkungan konsultasi digunakan

oleh pengguna yang bukan pakar guna memperoleh knowledge pakar.

Komponen-komponen yang terdapat dalam sistem pakar yaitu

antarmuka pengguna, basis pengetahuan (knowledge-base), akuisisi


23

pengetahuan, mesin inferensi, workplace, fasilitas penjelasan,

perbaikan pengetahuan.

b. Antar Muka Pengguna (User Interface)

User Interface merupakan mekanisme yang digunakan oleh

pengguna dan sistem pakar untuk berkomunikasi. Sistem pakar

menampilkan pertanyaan-pertanyaan itu harus dijawab dengan benar

dan sesuai dengan masalah yang dihadapi pengguna.Antarmuka

menerima jawaban dari pengguna dan selanjutnya sistem pakar

mencari dan mencocokan ke dalam aturan sehingga diperoleh suatu

kesimpulan. Jadi antarmuka menerima input berupa jawaban dari

pemakai dan mengubahnya kedalam bentuk yang dapat dimengerti

oleh pemakai. (Mcloed, 1995).

c. Basis Pengetahuan (Knowledge-Base)

Basis pengetahuan tidak dapat dipisahkan dari mesin inferensi.

Basis pengetahuan (knowledge-base) mengandung pengetahuan untuk

pemahaman,formulasi,dan penyelesaian masalah. Komponen sistem

pakar ini disusun atas dua elemen dasar, yaitu fakta dan aturan. Fakta

merupakan informasi tentang obyek dalam area permasalahan tertentu,


24

sedangkan aturan merupakan informasi tentang cara bagaimana

memperoleh fakta baru dari fakta yang telah diketahui.

Dalam studi kasus pada sistem berbasis pengetahuan terdapat

beberapa karakteristik yang dibangun untuk membantu kita dalam

membentuk serangkaian prinsip-prinsip arsitekturnya.Prinsip tersebut

meliputi :

1) Pengetahuan merupakan kunci kekuatan sistem pakar

2) Pengetahuan sering tidak pasti dan tidak lengkap.

3) Pengetahuan sering miskin spesifikasi.

4) Amatir menjadi ahli secara bertahap.

5) Sistem pakar harus fleksibel.

d. Akuisisi Pengetahuan (Knowledge Acquisition)

Akuisisi knowledge adalah komulasi,transfer dan transformasi

keahlian dalam menyelesaikan masalah dari sumber pengetahuan

kedalam program komputer. Dalam tahap ini peneliti berusaha

menyerap knowledge untuk selanjutnya ditransfer ke dalam basis

pengetahuan (knowledge-acquisition) yang diperoleh dari pakar

dilengkapi dengan buku, basis data, laporan penelitian dan

pengalaman pemakai. Menurut turban (1998, 1) terdapat tiga metode

utama dalam akuisis pengetahuan yaitu :


25

1) Wawancara

Wawancara adalah metode akuisisi yang paling banyak

digunakan. Dalam metode ini melibatkan pembicaraan dengan

pakar secara langsung dalam suatu wawancara. Terdapat bentuk

wawancara yang dapat digunakan, masing-masing bentuk

wawancara tersebut mempunyai tujuan yang berbeda.

2) Analisis Protokol

Dalam metode akusisi ini,pakar diminta untuk melakukan

suatu pekerjaan dan mengungkapkan suatu pekerjaan dan

mengugkapkan proses pemikiran dengan menggunakan kata-kata.

Pekerjaan tersebut direkam, dituliskan dan dianalisis.

3) Observasi Pada Pekerjaan Pakar

Dalam metode ini,pekerjaan dalam bidang tertentu yang

dilakukan pakar direkam dan diobservasi.

4) Induksi Aturan dari Contoh

Metode ini dibatasi untuk sistem berbasis aturan metode

ini dibatasi untuk sistem berbasis aturan. Induksi adalah suatu

proses penalaran dari kasus ke umum. Suatu sistem induksi aturan

diberi contoh-contoh dari suatu masalah yang hasilnya telah

diketahui setelah diberikan beberapa contoh-contoh dari suatu

masalah yang hasilnya telah diketahui. Setelah diberikan beberapa

contoh, Sistem induksi aturan tersebut dapat membuat aturan

yang benar
26

untuk kasus-kasus contoh selanjutnya aturan dapat digunakan

untuk menilai kasus lain yang hasilnya tidak diketahui.

e. Mesin Inferensi

Komponen ini mengandung mekanisme pola pikir dan

penalaran yang digunakan oleh pakar dalam menyelesaikan

masalah.Mesin inferensi adalah program komputer yang memberikan

metodologi untuk penalaran tentang informasi yang ada dalam basis

pengetahuan (knowledge-Base) dan dalam workplace,dan untuk

menformulasikan kesimpulan (turban, 1995). Kebanyakan sistem

pakar berbasis aturan menggunakan strategi inferensi yang dinamakan

modus ponens. Jika terdapat aturan”IF A THEN B”,dan jika diketahui

bahwa A benar maka dapat disimpulkan bahwa B juga benar.

Terdapat dua pendekatan untuk mengontrol inferensi dalam

sstem pakar berbasis aturan, yaitu pelacakan kedepan (forward

chaining) dan pelacakan kedepan (backward chaining) adalah

pendekatan yang dimotori tujuan (goal driven). dalam pendekatan ini

pelacakan mulai dari tujuan,selanjutnya dicari aturan yang memiliki

tujuan tersebut untuk kesimpulannya. Selanjutnya proses pelacakan

menggunakan premis aturan tersebut sebagai tujuan baru dan mencari

aturan lain dengan tujuan baru sebagai kesimpulannya.


26

Pelacakan ke depan (forward chaining) adalah pendekatan

yang dimotori data (data-driven).dalam pendekatan ini pelacakan

dimulai
27

dari informasi masukan,dan selanjutnya mencoba menggambarkan

kesimpulan. Pelacakan kedepan mencari fakta yang sesuai dengan

bagian IF dari aturan IF-THEN. Sedangkan contoh dari pendekatan

pelacakan ke depan yaitu apabila seseorang mempunyai gejala

penyakit pusing, bersin dan demam yang di sebabkan oleh virus flu

dan membutuhkan obat mixagrif, ultraflu maka dapat dipastikan

bahwa seseorang terkena penyakit flu

5. Faktor Kepastian (Certainty Factor)

Certainty Factor adalah suatu metode untuk membuktikan apakah

suatu fakta itu pasti atau tidak pasti yang berbentuk metric yang biasanya

digunakan dalam sistem pakar. Metode ini sangat cocok untuk sistem

pakar yang mendiagnosis sesuatu yang belum pasti (Kusrini, 2008).

Faktor kepastian (Certainty Factor) diperkenalkan oleh Shortliffe

Buchanan dalam pembuatan MYCIN Certainty Factor (CF) merupakan

nilai parameter klinis yang diberikan MYCIN untuk menunjukan besarnya

kepercayaan. Certainty Factor didefinisikan sebagai persamaan:

CF(H,E) = MB(H,E) – MD(H,E)

CF(H,E) : Certainty Factor dari hipotesis H yang dipengaruhi oleh gejala

(evidence) E. Besarnya CF berkisar antara -1 sampai 1. Nilai -1

menunjukan ketidakpercayaan mutlank sedangkan nulai 1 menunjukan

kepercayaan mutlak.
28

MB(H,E) : Ukuran tingkat kepercayaan (Measure of Believes) terhadap h

ipotesis H yang dipengaruhi oleh gejala E.

MD(H,E) : Ukuran ketidakpercayaan (measure of increase disbelief)

terhadap evidence H, jika diberikan evidence E(antara 0 dan 1)

Bentuk dasar rumus certainty factor sebuah aturan JIKA E MAKA H

adalah seperti ditunjukan oleh persamaan 2 berikut :

CF(H,e) = CF(E,e) * CF(H,E)

Dimana:

CF(E,e) : certainty factor evidence E yang dipengaruhi oleh evidence e.

CF(H,E) : certainty factor hipotesis dengan asumsi evidence diketahui

dengan pasti, yaitu ketika CF(E,e) = 1.

CF(H,e) : certainty factor hipotesis yang dipengaruhi oleh evidence e.

Jika semua evidence pada antecedent diketahui dengan pasti maka

persamaanya akan menjadi:

CF(H,e) = CF(H,E)

Dalam aplikasinya, CF(H,E) merupakan nilai kepastian yang diberikan

oleh pakar terhadap suatu aturan, sedangkan CF(E,e) merupakan nilai

kepercayaan yang diberikan oleh pengguna terhadap gejala yang

dialaminya.
29

6. Penyakit Telinga, Hidung, dan Tenggorokan (THT)

Menurut Efiaty A Dkk(2007), THT sebenarnya merupakan salah

satu cabang ilmu kedokteran yang khusus menangani masalah penyakit di

bagian telinga, hidung dan tenggorokan. Sejarah di bidang ini dimulai

tahun 1851 dimana salah satu ahlinya yaitu Helmholz telah dapat melihat

bagian-bagian dari telinga, hidung dan tenggorokan. Pada tahun 1854 ahli

lain yakni Garein sudah dapat melihat laring (bagian dari saluran

pernapasan). Pada tahun 1890 Killian dan Kusmal telah menyempurnakan

alat yang dapat digunakan untuk melihat esophagus (bagian dari saluran

makanan) dan bronkus (bagian dari saluran pernapasan).

Manusia seringkali telah mengetahui tubuhnya mengalami

gangguan kesehatan, tetapi tidak tahu persis penyakit apa yang sedang

menyerangnya serta bagaimana cara mengobatinya, sehingga untuk

mengetahui dan mengatasi penyakit yang sedang menyerang tubuh

manusia dibutuhkan seorang ahli yang memahami masalah kesehatan

(dokter, bidan, atau perawat). Penyakit di sekitar telinga, hidung,

tenggorokan (THT) biasanya disebabkan oleh infeksi kuman (George L,

2012). Tetapi banyak pula yang diakibatkan oleh kelainan penrkembangan

sel tubuh, yang kemudian menjadi tumor atau kanker. Ironisnya, sebagian

besar pasien masih menganggap remeh gejala awal penyakit yang semakin

meningkat di Indonesia sejak lima tahun terakhir. Akibatnya, ketika

memeriksakan diri ke dokter, barulah diketahui itu sudah terlambat dan

penyakitnya sudah memasuki stadium lanjut.


30

7. Database

Database merupakan kumpulan data yang terintegrasi dan diatur

sedemikian rupa sehingga data tersebut dapat dimanipulasi, diambil, dan

dicari secara cepat. (Raharjo Budi, 2011). Dalam model relasional, tabel-

tabel yang terdapat dalam suatu database idealnya harus saling berelasi.

a. Tabel (table)

Tabel adalah suatu entitas yang tersusun atas kolom dan baris.

Dalam dunia database kolom disebut field dan baris disebut record.

Relasi antara tabel satu dengan yang lain dibentuk menggunakn kolom

yang terdapat pada tabel-tabel bersangkutan, melalui pendefinisian

Constraint. Constraint adalah suatu aturan atau batasan yang

mendefinisikan nilai atau data yang dapat disimpan di dalam database,

baik melalui operasi insert, update maupun delete.Constraint

dibedakan menjadi empat, yaitu:

1) Primary key

Primary key adalah suatu aturan yang berguna untuk

memastikan bahwa setiap barisan data di dalam suatu tabel bersifat

unik (berbeda antara barisan yang satu dengan yang lainnya).


31

2) Foreign key

Foreign key berguna untuk mendefinisikan kolom – kolom

pada suatu tabel yang nilainya mengacu ke tabel yang lain.

3) Unique

Fungsi unique untuk memastikan bahwa setiap baris data

yang terdapat dalam suatu tabel bersifat unik (tidak sama).

8. UML (Unified Modelling Language)

Pada perkembangan teknik pemrograman berorientasi objek,

muncul sebuah standarisasi bahasa pemodelan untuk pembangunan

perangkat lunak yang dibangun dengan menggunakan teknik

pemrograman berorientasi objek yaitu Unified Modeling Language

(UML). UML merupakan bahasa visual yang menjadi standar untuk

menspesifikasikan, menggambarkan, membangun dan dokumentasi dari

sistem perangkat lunak (Sugiarti, 2013).

Menurut M. Shalahudin dan Rosa A.S (2013), UML (Unified

Modeling Language) adalah standar bahasa yang digunakan didunia

industri untuk mendefinisikan requirement, membuat analisis dan desain.

UML merupakan bahasa visual untuk pemodelan dan komunikasi

mengenai sebuah sistem dengan menggunakan diagram dan teks

pendukung.

a. Use Case Diagram


31

Menurut Rosa dan Shalahuddin (2013). Use case merupakan

pemodelan untuk kelakuan (behavior) sistem informasi yang akan


32

dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau

lebih aktor dengan sistem. Adapun simbol-simbol yang digunakan

dalam use case adalah sebagai berikut:

Tabel 2.4 Simbol-simbol Use case Diagram


33

b. Class Diagram

Menurut Rosa dan Shalahuddin (2013). Class diagram

menggambarkan struktur sistem dari segi pendefinisian kelas-kelas

yang akan dibuat untuk membangun sistem. 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.

Adapun simbol-simbol yang digunakan dalam class diagram

adalah sebagai berikut:


34

Tabel 2.5 Simbol-simbol Class Diagram

No Simbol Nama Deskripsi

1 Class Kelas pada stuktur

sistem.

2 Interface Sama dengan konsep

interface dalam

pemrograman

berorientasi objek.

3 Association Relasi antar kelas dengan

makna umum, asosiasi

biasanya juga disertai

dengan multiplicity.

4 Directed Relasi antar kelas dengan

association makna kelas yang satu

digunakan oleh kelas

yang lain.

5 Generalization Relasi antar kelas dengan

makna generalisasi-

spesialisasi (umum

khusus).
35

6 Dependency Relasi antar kelas dengan

makna kebergantungan

antar kelas.

7 Aggregation Relasi antar kelas dengan

makna semua bagian

(whole-part).

c. Activity Diagram

Menurut Rosa dan Shalahuddin (2013), 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. Adapun simbol-simbol

yang digunakan dalam activity diagram adalah sebagai berikut:

Tabel 2.6 Simbol-simbol Activity Diagram

No Simbol Nama Deskripsi

1 Status awal Status awal aktivitas sistem,

sebuah diagram aktivitas

memiliki sebuah status awal.


36

2 Aktivitas Aktivitas yang dilakukan

sistem, biasanya diawali dengan

kata kerja.

3 Decision Asosiasi percabangan dimana

jika ada pilihan aktivitas lebih

dari satu.

4 Join Asosiasi penggabungan dimana

lebih dari satu aktivitas

digabungkan menjadi satu.

5 Status akhir Status akhir yang dilakukan

sebuah sistem, sebuah diagram

aktivitas memiliki sebuah status

akhir.

6 Swimlane Memisahkan organisasi bisnis

yang bertanggung jawab

terhadap aktivitas yang terjadi.

d. Sequence Diagram

Menurut Rosa dan Shalahuddin (2013). Sequence diagram

menunjukkan urutan event kejadian dalam suatu waktu. Komponen

Sequence diagram terdiri atas obyek yang dituliskan dengan kotak segi

empat bernama. Adapun simbol-simbol yang digunakan dalam

Sequence diagram adalah sebagai berikut:


37

Tabel 2.7 Simbol-simbol Sequence Diagram

No Simbol Nama Deskripsi

1 An Actor Menggambarkan orang

yang sedang berinteraksi

dengan sistem.

2 Entity Class Menggambarkan

hubungan kegiatan yang

akan dilakukan.

3 Boundary Menggambarkan sebuah

Class penggambaran dari form.

4 Control Class Menggambarkan

penghubung antara

boundary dengan tabel.

5 A focus of Menggambarkan tempat

control mulai dan berakhirnya

sebuah message (pesan).

6 A line of life Spesifikasi dari

komunikasi antar objek

yang memuat informasi-

informasi tentang aktifitas

yang terjadi.
38

B. Penelitian Sebelumnya

Fahmiyanto Ekajaya, Nurul H (2008). Mengambil judul “Diagnosis

Penyakit THT Menggunakan Metode Fuzzy Tsukamoto Berbasis Android”.

Tujuan dari penelitian ini adalah untuk membantu masyarakat ketika

mendapati penyakit THT guna mendiagnosa dan memberikan informasi

lengkap kepada masyarakat. Adapun hasil dari “Sistem Pakar Diagnosis

Penyakit THT Menggunakan Metode Fuzzy Tsukamoto Berbasis Android”

yaitu sistem pakar berbasis android yang berisi beberapa layout diagnosa dan

hasil diagnosa.

Wahyu Prabowo, Muhammad Arief Widyananda (2008). Mengambil

judul “Sistem Pakar Berbasis Web Diagnosa Awal Penyakit THT”. Tujuan

dari penelitian ini adalah merancang sistem pakar penyakit THT berbasis web

untuk membantu dokter maupun pasien ketika mendiagnosa penyakit THT.

Adapun hasil dari “Sistem Pakar Diagnosa Penyakit THT ” yaitu sistem pakar

berbasis web dengan metode certainty factor.

Faris Abdi El Hakim, Nurul Hidayat (2016). Mengambil judul “Sistem

Pakar Diagnosa Penyakit Telinga Hidung Tenggorokan (THT) Menggunakan

Metode Naïve Bayes”. Penelitian ini bertujuan untuk membangun sistem

pakar yang dapat membantu dokter dan masyarakat dalam mendiagnosa

penyakit THT. Adapun hasil dari “Sistem Pakar Diagnosa Penyakit THT

Menggunakan Metode Naive Bayes Berbasis Android” yaitu sistem pakar

berbasis android dengan metode Naïve Bayes.


38

Jadiaman Parhusip, Viktor H. Pranatawijaya (2012). Mengambil judul

“Sistem Pakar Diagnosa Penyakit Jantung (THT) Menggunakan Metode

Certainty Factor”. Penelitian ini bertujuan untuk membangun sistem pakar

yang dapat membantu dokter dan masyarakat dalam mendiagnosa penyakit

jantung. Adapun hasil dari “Sistem Pakar Diagnosa Penyakit Jantung

Menggunakan Metode Certainty Factor Berbasis Web” yaitu sistem pakar

penyakit jantung dengan bentuk aplikasi web dan metode Certainty Factor.

Anda mungkin juga menyukai