28
ANALISIS DAN PERANCANGAN
3.1 Analisis
3.1.1 Gambaran Umum Masalah
Distribuasi pengetahuan (knowledge) dalam kehidupan umum belum dapat dilakukan secara efektif. Kumpulan pengetahuan-pengetahuan yang ada dalam masyarakat (knowledge base) belum dapat diatur dan di manage
dengan baik, sehingga ketika seseorang ingin menggunakan atau memperoleh pengetahuan atau pun ingin menyebarkan atau mendistribusikan pengetahuannya, dia mungkin akan menemukan berbagai kendala. Pengetahuan-pengetahuan yang dimiliki sulit untuk diakusisikan, sehingga tidak bisa secara maksimal digunakan karena tidak ada media yang dapat digunakan secara bersama untuk mengakuisisi pengetahuan-pengetahuan tersebut. Hal ini juga memungkinkan terjadinya duplikasi ataupun pengulangan yang tidak diinginkan, misalkan saja ketika seorang dokter sudah menemukan solusi untuk penyakit tertentu, tetapi ditempat lain, ada dokter yang masih meneliti penyakit tersebut. Keinginan orang-orang untuk dapat memperoleh informasi pengetahuan dan solusi secara cepat dan tepat, dimana kumpulan pengetahuan dan solusi untuk masalah tersebut belum dapat dihadirkan ke subyek yang dibutuhkan secara mudah, merupakan masalah-masalah penting yang perlu di tindak lanjuti.
3.1.2 Usulan Pemecahan Masalah
Berdasarkan permasalahan tersebut, kami mengusulkan pemecahan masalah dengan mengembangkan aplikasi Knowledge Based System Generator. Dengan adanya Knowledge Management dan penerapannya dalam Knowledge Based System Generator diharapkan dapat membantu masyarakat secara umum baik itu dari pihak para pakar, maupun pengguna informasi atau pengetahuan untuk mengaktualisasikan potensi-potensi
knowledge secara efektif. Pentingnya manajemen terhadap knowledge
merupakan bagian penting dari penulisan ini, dengan adanya proses
knowledge management yang baik, diharapkan dapat membantu memberikan solusi yang efektif dan efisien dalam membentuk, memperoleh, memperbaharui, menyimpan, menangani, dan menyebarluaskan knowledge,
sehingga dapat selalu uptodate terhadap permasalahan yang ada. Dengan
Knowledge Based System Generator kita bisa memanfaatkan teknologi informasi dalam menyebarkan knowledge dan memperolehnya dimana dan kapan saja, dalam suatu media yang teroganisir (database). Dengan data yang bisa diperoleh dimana saja dan kapan saja tentu akan mempermudah para pakar dan pengguna informasi, dan dengan data yang selalu diperbaharui dan dinamis, akan sangat membantu perkembangan kualitas
knowledge yang disampaikan.
Knowledge Based System Generator merupakan sistem yang dirancang untuk memenuhi kebutuhan dalam pendistribusian dan
pengakuisisian knowledge atau pengetahuan. Knowledge Based System Generator didasarkan pada tiga tahapan :
a. System builder
Builder disini adalah suatu sistem yang dirancang untuk mengakuisisi pengetahuan yang akan di input oleh parah pakar atau profesional yang nantinya akan di masukkan kedalam kategori-kategori bidang permasalahan. Builder ini mempunyai dua tiga proses utama yaitu :
1. pembentukan category
category ditujuan untuk memilah topik-topik permasalahan menjadi bagian yang spesifik, untuk mempermudah pengorganisasian bidang permasalahan.
2. pembentukan statement
Statement disini adalah informasi dan pengetahuan yang diberikan pengguna builder untuk membentuk suatu rangkaian pertanyaan ataupun pernyataan, yang nantinya akan disimpan ke dalam suatu database. Rangkaian pertanyaan dan pernyataan tersebut diperlukan untuk membentuk suatu basis pengetahuan dan digambarkan dalam bentuk tree of statement. Dari tree of statement itu dapat dilihat semua statement yang dibuat oleh
builder. Nantinya statements ini akan di hubungkan satu sama lain melalui rules. Statement itu sendiri terdiri atas input-input yang berupa pilihan (choices), text, command button, variable dsb.
terhadap input-input yang dibentuk dalam statement melalui
variable.
3. pembentukan rule
Rule diperlukan untuk membuat hubungan antara satu statement
dengan statement yang lainnya. Berdasarkan rules inilah nantinya
Knowledge Based System Generator dapat memberikan konklusi ataupun jawaban terhadap pertanyaan dari client. Proses pembentukan rules dilakukan dengan cara mendefenisikan rule
(aturan) terhadap input-inputan dari pembentukan statement. Builder ini lah yang nantinya membentuk suatu database hasil akuisisi pengetahuan yang digunakan untuk client application yang berisi kumpulan statement dan rule yang dibuat tadi.
b. Client application
Client application diperlukan untuk kebutuhan end user. Data yang digunakan pada client application adalah data yang terbentuk oleh system builder. Pada client application end user dapat memilih kategori sesuai dengan keinginannya. Dengan aplikasi ini user diharapkan dapat menemukan konklusi terhadap permasalahannya, selain itu juga client application dirancang untuk melakukan archiving sehingga ada data
history penggunaan terhadap kategori itu berdasarkan masing-masing
c. Knowledge distribution
Diperlukan untuk proses distribusi knowlegde, dimana knowledge yang terakusisi dan terorganisir dalam bentuk kategori pada database dapat distribusikan dengan database lainnya. Disribusi yang dilakukan merupakan pemindahan atau penyalinan per kategori.
Knowledge Based System Generator dengan ini diharapkan untuk dapat menjadi suatu jembatan penghubung antara pengetahuan dan informasi antara para pakar ataupun profesional dengan user atau orang awam maupun antara sesama pakar, sehingga interaksi diantaranya dapat dilakukan dengan pengaruh yang relatif kecil akan waktu dan lokasi. Hal ini dimungkinkan karena informasi yang sudah ada dapat digunakan kapan saja dan dimana saja. Selain itu Knowledge Based System Generator juga dapat melakukan pendistribusian knowledge, sehingga dapat membantu agar knowledge itu selalu accessible, uptodate, dan accurate. Ini akan sangat membantu kedua sisi yaitu pakar dan khalayak umum untuk dapat memperoleh knowledge
3.2 Perancangan
3.2.1 Rancangan Umum Program
Perancangan knowledge sistem generator terbagi atas 3 modul / aplikasi utama :
1. Builder
Modul builder ditujukan terutama untuk para pakar atau pun profesional dibidangnya, contohnya dokter, mekanik, dsb. Disini pakar akan melakukan input ataupun modifikasi terhadap
knowledge yang diimplementasikan dalam pembentukan
statement dan rules pada IDE dari builder. Statement dan rules ini akan disimpan dalam database, yang nantinya akan dimanfaatkan oleh modul client dan distribution.
2. Client
Modul client ditujukan terutama untuk end user, contohnya khalayak umum yang membutuhkan knowledge mengenai bidang tertentu, misalnya masalah penyakit yang dideritanya. Client ini memanfaatkan data yang dibentuk oleh builder yang tersimpan dalam database. Dengan data ini aplikasi client dapat menjawab pertanyaan yang diajukan end user sesuai dengan kapasitas
knowledge yang ada didalam database tersebut. Modul client juga menyimpan archive terhadap setiap input yang dilakukan masing-masing user, sehingga dapat melihat history input yang sudah dilakukan user.
3. Distribution
Modul distribution ditujukan terutama untuk pakar dalam mendistribusikan knowledge nya. Pendistribusian ini dilakukan dengan cara meng copy, atau memindahkan knowledge yang sudah terkategorisasi (category) antara satu database ke database yang lainnya, dengan ini antara pakar dapat saling menambahkan
knowledge, sehingga knowledge diharapkan dapat selalu uptodate
dan accurate.
Masing-masing bagian berhubungan dengan knowledge database sebagai tempat penyimpanan utama dari knowledge (knowledge base). Penggunaan
builder dan distribution ditujukan terutama untuk pakar atau pun profesional, yaitu mereka yang sebagai sumber knowledge. Sedangkan client ditujukan untuk end user, dalam hal ini adalah khalayak umum. Hubungan diantaranya digambarkan pada Gambar 3.1.
Pakar End User Inpu t, m odify know ledg e
Distribute knowledge category
Use kno wledge Create, mod ify knowledge Add a nd m ove know ledge categ ory Ge t k no wle dge an d arc hiv e Builder Distribution KNOWLEDGE DATABASE Client
Gambar 3.1 Rancangan Model Sistem
3.2.2 Rancangan Proses
Perancangan proses terbagi atas dua bagian, yaitu hirarki proses yang menggambarkan hirarki proses dari masing-masing modul (builder, client, distribution) dan juga spesifikasi proses yang menjelaskan fungsi-fungsi penting yang terdapat pada aplikasi.
3.2.2.1 Hirarki Proses
Hirarki proses untuk modul builder dapat dilihat pada Gambar 3.2, sedangkan untuk modul client dapat dilihat pada Gambar 3.3, dan untuk modul distribution dapat dilihat pada Gambar 3.4.
main screen
new database open database
category list
add category edit category delete category
category information
+ statement list
add statement edit statement delete statement
blank statement
from template STATEMENTIDE FORM add rule delete rule
insert component component properties delete component
BUILDER PROCESS DIAGRAM
RULE SET IDE FORM pick category
Pada Gambar 3.2, user (dalam hal ini pakar sebagai pengguna builder) terlebih dahulu harus membuka atau membuat database. Setelah itu akan terlihat list dari kategori-kategori yang terdapat pada database itu, tentunya untuk database yang baru belum terdapat kategori. User kemudian dapat melakukan add
(menambahkan) kategori, atau melakuan edit (mengubah) atau
delete (menghapus) terhadap kategori yang sudah ada / dibuat.
Setelah itu user dapat memilih kategori yang dibuatnya untuk kemudian melakukan add (menambahkan) statement, ataupun melakukan edit (mengubah), atau delete (menghapus) terhadap
statement yang sudah dibuat / ada. User dapat menambahkan
statement yang baru atau membuatnya dari template yang sudah ada. Pengubahan statement dilakukan melalui form IDE statement, yang terdapat pada aplikasi builder dimana user dapat melakukan add (menambahkan) component, atau melakuan edit
(mengubah) component maupun property nya atau delete
(menghapus) terhadap component yang sudah ada / dibuat.
Component disini merupakan tipe input yang dibuat oleh user
dapat berupa groupbox, text, editbox, command button, radio button, checkbox, ataupun image. User kemudian membuat rule
terhadap masing-masing statement yang akan diterapkan pada
seperti editbox, command button, checkbox, ataupun radiobutton
yang dilakukan pada IDE Rule.
main + login screen
Choose Category and Starting Point
Menu Quit - End Program Knowledge Simulator Dialog
CLIENT
PROCESS DIAGRAM
Gambar 3.3 Hirarki Proses dari Client Module
Pada Gambar 3.3 proses yang terjadi adalah user ( dalam hal ini khalayak umum) terlebih dahulu login, login digunakan untuk menyimpan archive yang dilakukan oleh tiap-tiap user yang login
kedalam aplikasi. Setelah user login, akan ditampilkan pilihan kategori, user dapat memilih kategori yang dikehendakinya, atau dapat juga keluar dari program dengan menekan tombol quit. Jika
user sudah memilih kategori dan start statenya. Maka akan dilanjutkan ke simulator dialog, dimana user akan diminta
menjawab pertanyaan-pertannyaan yang ada dikategori tersebut, sampai kepada suatu kesimpulan dari hasil jawaban user.
DISTRIBUTION
PROCESS DIAGRAM
main screen open left / right databasefocus left side
database focus right sidedatabase
move category to right side move category to left side copy category to right side copy category to left side
delete category delete category
Gambar 3.4 Hirarki dari Distribution Module
Proses yang terjadi pada Gambar 3.4, yaitu user (dalam hal ini pakar yang akan melakukan pendistribusian knowledge) membuka dua buah database, yaitu database sumber dan database target. Bisa dilakukan pada dua pane, yaitu right pane dan left pane
category list dari database yang dibuka. Setelah itu user dapat melakukan peng copy-an atau pemindahan (move) terhadap
category list yang ada di database source ke database target, atau menghapus kategori yang ada baik pada database source atau target.
3.2.2.2 Spesifikasi Proses
Untuk menjelaskan proses dari modul-modul yang kami buat, yaitu untuk builder module dapat dilihat pada Gambar 3.5 s/d Gambar 3.6, sedangkan untuk client modul pada Gambar 3.7. Untuk lebih detail mengenai spesifikasi proses dapat dilihat pada lampiran.
Module TMainForm.MenuOpenClick Begin
Jalankan OpEndialog1 Jika Memilih File Begin
Buka GlobalModule.DatabaseConnection Berdasarkan OpEndialog1.FileName Aktifkan Menu Close
Aktifkan Menu Category Aktifkan Menu Statement Aktifkan Menu Rules NonAktifkan Menu Open NonAktifkan Menu New End
End
Module TMainForm.MenuCloseClick Begin
NonAktifkan Menu Close NonAktifkan Menu Category NonAktifkan Menu Statement NonAktifkan Menu Rules Aktifkan Menu Open Aktifkan Menu New
Hilangkan item FrmViewCategory.TreeViewStatementList Hilangkan item FrmViewCategory.TreeViewStatementTree Hilangkan Form FrmEditorRules
Hilangkan Form FrmEditorInput Close DatabaseConnection End
Module TMainForm.MenuOpenClick Begin
Jika Jalankan SaveDialog1 = True maka Begin
Copy dan rename file Database yang kosong disiapkan ke SaveDialog1.Filename
Buka GlobalModule.DatabaseConnection Berdasarkan OpEndialog1.FileName Aktifkan Menu Close
Aktifkan Menu Category Aktifkan Menu Statement Aktifkan Menu Rules NonAktifkan Menu Open NonAktifkan Menu New End
End
Module TGlobalModule.DatabaseConnectionAfterConnect Begin
Open FrmViewCategory.ADODataSetCategory, Query ambil kategori pada Viewer Aktifkan Menu NewCategory pada MainForm
End
Module TFrmViewCategory.ADODataSetCategoryAfterConnect Begin
Jika State ADODataSetCategory = browse dan FlagAddEdit = False maka Begin
Jika FrmEditorRules Ada maka Hilangkan FrmEditorRules
Jika FrmEditorInput <> nil maka Hilangkan FrmEditorInput
Buat item TreeViewStatementList tidak ada yang dipilih Buat item TreeViewStatementTree tidak ada yang dipilih Panggil Module CreateStatement
Panggil Module CreateStatementTree
Jika ADODataSetCategory tidak kosong maka Begin
Aktifkan Menu NewStatement pada MainForm
Aktifkan Menu NewFromTemplate pada MainForm End
End End
Module TFrmViewCategory.DataSourceADODataSetCategoryChange Begin
Jika ADODataSetCategory tidak kosong maka Begin
Jika ADODataSetCategory['IdCategory']='Template' maka Begin
NonAktifkan Menu EditCategory pada MainForm NonAktifkan Menu DeleteCategory pada MainForm End
Jika Tidak Begin
Aktifkan Menu EditCategory pada MainForm Aktifkan Menu DeleteCategory pada MainForm End
End End
Module TForm1.btnLoginClick Variabl module str1,str2:Variant Begin str1 = Edit1.Text str2 =Edit2.Text if str2 = '' then str2 = Null
Jika cari item ADODataSet1 'IdUser’= str1 dan Password =’str2’ ada maka Begin
FrmInput.UserId = Edit1.text
Tampilkan Form pilih kategory dan start point End
Else Begin
ShowMessage('Invalid UserId / Password ') End
End
Gambar 3.7 Client - User login
3.2.3 Rancangan Database
Menentukan kebutuhan informasi dan mengatur kelompok informasi ke dalam bentuk-bentuk yang mudah dibuat dan diidentifikasikan merupakan hal utama yang diperlukan dalam suatu perancangan sistem. Proses pengelompokkan informasi, menentukan atribut-atributnya serta menerangkan identitas informasi tersebut memerlukan analisa yang cukup dalam, agar kebutuhan informasi sistem dapat dipenuhi. Proses ini dilakukan dengan membentuk struktur tabel dan dengan bantuan metode ERD (Entity Relationship Diagram) yang selanjutnya menghasilkan
3.2.3.1 Struktur Tabel
Untuk menyimpan data yang dibutuhkan oleh aplikasi digunakan tabel-tabel
category, statement, rules, detailrules, input, user archive, dan user yang dapat dilihat pada Tabel 3.1 s/d Tabel 3.7.
Tabel 3.1 Tabel Category
Nama tabel : Category
Keterangan :
terdiri atas field-field kategori bidang permasalahan dan keterangannya
Primary Key : IdCategory
Field Tipe Data Keterangan
IdCategory Text id dari kategori
Keterangan Text Keterangan dari id kategori
Tabel 3.2 Tabel Statement
Nama tabel : Statement
Keterangan : terdiri atas field-field yang berhubungan dengan statement Primary Key : IdCategory, IdStatement
Field Tipe Data Keterangan
IdCategory Text id dari kategori
IdStatement Text keterangan dari id kategori Type Yes/No Menentukan start statement BackGroundColor Number warna latar belakang dari statement
Tabel 3.3 Tabel Rules
Nama tabel : Rules
Keterangan
: terdiri atas field-field yang berhubungan dengan rules Primary Key : IdCategory, IdStatement, IdRules
Field Tipe Data Keterangan
IdCategory Text id dari kategori IdStatement Text id dari statement IdRules Text id dari rules NoUrut Number No urut dari rules
Tabel 3.4 Tabel Detail Rules
Nama tabel : DetailRules
Keterangan :
terdiri atas field-field yang berhubungan dengan detail dari rules
Primary Key : IdCategory, IdStatement, IdRules, IdInput, Comparision, Value
Field Tipe Data Keterangan
IdCategory Text id dari kategori
IdStatement Text keterangan dari id kategori IdInput Text id dari input
Comparison Text menyimpan operator pembanding untuk perhitungan Value Text nilai pembanding untuk perhitungan
Parent Text pemilik component
Link Yes/No Menunjukkan component yang mempunyai link ke statement lain
Tabel 3.5 Tabel User Archive
Nama tabel : User Archive
Keterangan : terdiri atas field-field yang berhubungan dengan penyimpanan jawaban dari user Primary Key : IdCategory, IdStatement, IdRules, IdInput, Comparision, Value
Field Tipe Data Keterangan
IdUser Text id dari kategori
IdCategory Text keterangan dari id kategori IdStatement Text id dari input
IdInput Text menyimpan operator pembanding untuk perhitungan Value Text nilai input
Tabel 3.6 Tabel User
Nama tabel : User
Keterangan : terdiri atas field-field yang berhubungan dengan user
Primary Key : IdCategory, IdStatement, IdRules, IdInput, Comparision, Value
Field Tipe Data Keterangan
Password Text Password user Keterangan Text keterangan mengenai user
Tabel 3.7 Tabel Input
Nama tabel : Input
Keterangan : terdiri atas field-field yang berhubungan dengan input Primary Key : IdCategory, IdStatement, IdInput
Field Tipe Data Keterangan
IdCategory Text id dari kategori
IdStatement Text Keterangan dari id kategori IdInput Text id dari input
Menentukan tipe input, yaitu : 0 = variable 1 = GroupBox 11 = Label 21 = Edit 22 = Radio 23 = Check 31 = Button TypeInput Number 32 = Image
Text Text Untuk input memiliki text (string) FontName Text Nama font FontColor Number Warna font FontSize Number Ukuran font FontBold Yes/No Tipe font bold atau tidak FontItalic Yes/No Tipe font italic atau tidak FontUnderline Yes/No Tipe font underline atau tidak FontStrikeThrough Yes/No Tipe FontStrikeThrough atau tidak BackGroundColor Number Warna background
Stretch Yes/No Untuk memperbesar / memperkecil image Left Number Posisi kiri input
Top Number Posisi atas input
Width Number Lebar input Height Number Tinggi input Parent Text Pemilik input
Tipe input yang bisa diedit, yaitu : 0 = number 1 = long date 2 = short date 3 = time TypeEdit Number 4 = string
BrowseText Text Path pengambilan image
Default Value Text Nilai default/ nilai perhitungan, jika Nilai default berarti bisa diedit, jika merupakan nilai perhitungan nilai tidak bisa diedit
3.2.3.2 Entity Relationship Diagram
Adapun struktur hubungan antara tabel-tabel tersebut tampak dalam diagram hubungan antar entitas / Entity Relationship Diagram (ERD) seperti digambarkan pada Gambar 3.4 :
Gambar 3.8 ERD (Entity Relation Ship Diagram)
ERD adalah model diagram yang digunakan untuk menggambarkan hubungan antara tabel-tabel (relationship) dalam database. Terdapat beberapa entity yaitu tabel Category, Statement, Input, Rules, dan
DetailRules.
- tabel Category merupakan entity yang menjelaskan kategori-kategori yang dibuat.
- tabel Statement merupakan entity yang menjelaskan statement-statement yang dibuat dan mempunyai hubungan one to many dengan tabel
category dimana 1 category dapat mempunyai banyak statement. Tabel ini juga mempunyai hubungan one to many dengan tabel input dan tabel
rules.
- tabel Input merupakan entity yang menjelaskan input-input serta tipe dan
propertiesnya. Data untuk tabel ini diperoleh pada waktu user mendesain form di IDE statement, yang bisa berisi banyak jenis dan tipe input. Tabel ini juga mempunyai hubungan one to many dengan tabel detail rules
dimana untuk setiap input dapat diterapkan satu atau lebih rules.
- tabel Rules merupakan entity yang menjelaskan urutan rules yang diterapkan terhadap statement yang dibuat. Tabel ini berhubungan dengan tabel detail rules yang berisi detail dari tiap-tiap rules.
- tabel DetailRules merupakan entity yang menjelaskan detail dari tiap-tiap
rules yang dibuat.
- tabel User merupakan entity yang menjelaskan detail mengenai user pengguna modul client.
- tabel User Archive merupakan entity yang menjelaskan data yang di
3.2.4 Rancangan Layar
3.2.4.1 Rancangan Tampilan
Rancangan layar terdiri atas rancangan layar builder yang dapat dilihat pada Gambar 3.9 s/d Gambar 3.27, rancangan layar client yang dapat dilihat pada Gambar 3.28 s/d Gambar 3.30, dan rancangan layar distribution yang dapat dilihat pada Gambar 3.31. Pada tiap modul juga terdapat rancangan pesan kesalahan yang dapat dilihat pada Gambar 3.32.
Knowledge Builder File Category Statement Rules Window Help
Category Inspector Category list
Statement List :
Statement Tree View :
Rancangan layar utama dari builder (Gambar 3.9), dapat dilihat seperti Gambar 3.9. Pada menu terdapat pilihan File, Category, Statement Rules Window dan Help.
Fileterdiri atas :
- New, untuk membuat database baru (Gambar 3.10) - Open, untuk membuka database (Gambar 3.11) - Close, untuk menutup database
- Exit, untuk keluar dari program
Categoryterdiri atas :
- New, untuk membuat kategori baru (Gambar 3.12) - Edit, untuk mengedit kategori (Gambar 3.13)
- Delete, untuk menghapus kategori, sebelumnya ditampilkan dialog konfirmasi (Gambar 3.17)
Statementterdiri atas :
- New, untuk membuat statement baru (Gambar 3.14)
- Delete, untuk menghapus statemenet. sebelumnya ditampilkan dialog konfirmasi (Gambar 3.17)
- Save to template, untuk menyimpan statement sebagai template (Gambar 3.15)
Rulesterdiri atas :
- New, untuk membuat rule baru (Gambar 3.16)
- Delete, untuk menghapus rule, sebelumnya ditampilkan dialog konfirmasi (Gambar 3.17)
Windowterdiri atas :
- Minimize all, mengecilkan semua window
- Arrange all, menyusun semua window sekaligus maximize window - Windows list, menampilkan list window yang digunakan user Help
- Help, panduan mengenai aplikasi builder
- About, informasi aplikasi builder
Pada Gambar 3.9 juga terdapat Category Inspector yang menampilkan
category list, statement list, dan statement tree view.
Save As
Save Cancel Lookin
Open
Open Cancel Look in
Gambar 3.11 Rancangan Layar Builder, Open Database
New Category
Category Name
Note
Save Cancel
Gambar 3.12 Rancangan Layar Menu Builder - Category ->New Category
Edit Category Category Name
Note
Save Cancel
Category ID Statement ID Save Cancel Topic New Statement Starting Point
Gambar 3.14 Rancangan Layar Menu Builder - Statement ->New Statement
Pada rancangan new statement (Gambar 3.14), terdapat category id, yaitu nama dari kategori yang telah kita buat sebelumnya. Fungsinya agar user
tahu kategori dari statement yang dibuatnya dan tidak dapat diubah lewat layar ini. Starting point digunakan untuk menentukan bahwa statement
yang dibuat ini adalah merupakan start statement dari seluruh statement
pada kategori. Statement ID diisi dengan id dari statement, contohnya adalah k[x] untuk kesimpulan dimana k menyatakan kesimpulan dan x merupakan urutan penomeran kesimpulan, p[x] untuk pertanyaan, dan
start untuk start statement. Topic untuk penjelasan singkat mengenai
Category ID Statement ID
Save Cancel Topic
Save Statement to Template
Starting Point
Gambar 3.15 Rancangan Layar Menu Builder - Statement -> Save to Template Save Cancel Add Rule Category ID Statement ID Rules ID
Gambar 3.16 Rancangan Layar Menu Builder - Rule -> New
Pada rancangan Layar New Rule (Gambar 3.16), akan ditampilkan
Category ID yaitu nama kategori, dan Statement ID yaitu id dari statement pemilik rule yang akan dibuat. Category ID dan Statement ID
tidak dapat diubah, digunakan hanyak untuk memudahkan user untuk mengetahui pemilik rule tersebut. ID rule adalah nama / id dari rule yang dibuat, sebagai contoh ID yang dapat digunakan misalnya answer untuk
rule jawaban, atau go untuk rule yang akan dihubungkan dengan statement lain.
Dialog Konfirmasi
Confirm
Yes No
Gambar 3.17 Rancangan Layar Dialog Konfirmasi Untuk Penghapusan (Delete)
Knowledge Builder File Category Statement Rules Window Help
Category Inspector Template
Statement List :
Statement Tree View :
ID Statement
Properties Tool Box
Component View
Statement & Component Properties Tool Box 1 2 3 4 5 6 7 8
Pada rancangan layar IDE Statement (Gambar 3.18) terdapat toolbox, yang berisi komponen-komponen yang bisa digunakan dalam pembentukan statement. Komponen-komponen tersebut dapat di drag ke viewer, dan diubah sekehendak hati user. Untuk properti nya dapat diatur pada bagian
properties, dengan meng highlight komponen untuk melihat atau mengubah properti nya. Adapun komponen-komponennya adalah (sesuai urutan dalam gambar) :
Tabel 3.8 Tabel Komponen IDE Statement Nama Komponen Fungsi
Pointer sebagai pointer
GroupBox membentuk groupbox yang didalamnya dapat berisi komponen lain, yaitu picture, bit button, label, editbox, radio button dan check box
Picture komponen untuk memasukkan gambar
Bit Button komponen untuk input berupa button yang bisa di klik Label komponen untuk menampilkan text
EditBox komponen untuk input berupa text
RadioButton komponen berupa radio button, umumnya digunakan untuk multiple choice
CheckBox komponen berupa checkbox
Pada Properties Statement (Gambar 3.19), user dapat memberikan ketentuan pada ID Statement ( nama statement ), BackgoundColor untuk mengganti warna latar, ID Variable Input, yaitu variabel awal yang dapat dibuat, dan Expression untuk menentukan nilai variabel tersebut.
Pada rancangan layar properti Gambar 3.20 s/d Gambar 3.23 untuk penjelasan mengenai tiap-tiap properti componentStatement dapat dilihat pada Tabel 3.7 (Tabel Input).
Properties ID Input Text Background Color Font Color Left Height Top Input variabel Setting font
Gambar 3.20 Rancangan Layar Properties untuk Label, Checkbox, Groupbox dan
RadioButton dari Statement
Properties ID Input Text Font Color Left Height Top Width Input variabel Setting font
Picture File Browse
Gambar 3.21 Rancangan Layar Properties untuk Bitbutton dari Statement
Properties ID Input Left Height Top Width
Picture File Browse Strecth
Properties ID Input Text Background Color Font Color Left Height Top Width Input variabel Setting font Type Default value Input variabel
Knowledge Builder File Category Statement Rules Window Help
Category Inspector Template
Statement List :
Statement Tree View :
ID Rules
Component View Rules
Rule properties
Gambar 3.24 Rancangan Layar Builder, IDE Rules
Pada rancangan IDE Rules (Gambar 3.24), terdapat component view, yang menampilkan komponen-komponen yang dibuat pada saat pembuatan
statement. Rule properties merupakan properti dari rule yang diterapkan pada komponen.
Pada lancangan layar properti Gambar 3.25 s/d Gambar 3.27 untuk penjelasan mengenai tiap-tiap properti dari component Rules dapat dilihat pada Tabel 3.4 (Tabel DetailRules).
Rules
Input
Comparison Value ID Rules
Gambar 3.25 Rancangan Layar Properties untuk Checkbox dan RadioButton dari
Rules
Rules
Input Value
ID Rules
Gambar 3.26 Rancangan Layar Properties untuk BitButton dari Rules
Rules Input Comparison Value List ID Rules Value Add Save Delete Cancel
KNOWLEDGE SIMULATOR
User name Password
Login Quit
Gambar 3.28 Rancangan Layar Client - Simulator Login
1. Choose Category
Simulate Back
List of Category
2. Choose Starting Point
List of Starting Point
3. Go
Quit Dialog
Gambar 3.30 Rancangan Layar Client – Simulator Dialog
Dialog pada Gambar 3.30 merupakan dialog pertanyaan sampai kesimpulan yang diperoleh dari knowledge base berdasarkan kategori yang dipilih.
Open Dialog Delete About Dialog Info Open Delete
Left Panel Right Panel
Knowledge Distribution
Move
Copy
Gambar 3.31 Rancangan Layar Utama Distribution
Pada layar distribution (Gambar 3.31) terdapat 2 bagian utama yaitu left pane
dan right pane yang masing-masing mempunyai komponen open, yaitu untuk membuka database dan delete untuk menghapus kategori. Dialog akan menampilkan list kategori yang terdapat pada database. Perintah move untuk memindahkan kategori dan copy untuk menyalin ulang kategori, dari right pane ke left pane atau sebaliknya tergantung pada letak kategori yang dipilih, apabila kategori yang dipilih berada pada right pane, berarti perintah move
Parent Form
Error message
Ok
Gambar 3.32 Rancangan LayarPesan Kesalahan
Parent form pada Gambar 3.32 merupakan nama pemilik window pesan kesalahan, misalnya knowledge builder yang berarti pesan kesalahan dimiliki oleh knowledge builder. Error message merupakan pesan kesalahannya.
3.2.4.2 State Transition Diagram
Untuk melihat urutan dan variasi dalam layar yang muncul pada saat menggunakan aplikasi digunakan State Transition Diagram. Adapun untuk STD builder dapat dilihat pada Gambar 3.33 s/d Gambar 3.37, sedangkan untuk STD client dapat dilihat pada Gambar 3.38, dan untuk STD distribution dapat dilihat pada Gambar 3.39.
STD BUILDER – MAIN FORM
File - New ---Create new database
File - Open ---Browse for database
View Category and statement tree and list File – Close ---Close database MAIN FORM File Browser Category Inspector Category Detail
add_category_pressed ________________________ show_new_category_input back ________________ show_category_list delete_category_pressed ________________________ show_category_deleted back ________________ show_category_list
STD BUILDER – Category Detail
category_choosed ________________________ show_category_information_ and_statement_list category list new category delete category category Information And Statement list
STD BUILDER
Category Information and statement list
add_statement_pressed ________________________ show_new_statement_input statement_selected ________________________ show_EDIT_STATEMENT_state delete_statement_pressed ________________________ show_statement_deleted back ______________________ show_category_information_ and_statement_list back ______________________ show_category_information_ and_statement_list User_choose_from template ________________________ show_template browser User_choose_from blank ________________________ show_blank_statement category information and statement list add
statement STATEMENTEDIT statementdelete
template browser
blank statement
STD BUILDER
EDIT STATEMENT
STATEMENT_IDE_FORM_selected ________________________ show_STATEMENT_IDE_FORM RULE_IDE_FORM_focussed ______________ Show_RULE_SET_IDE_FORM add_rule_pressed ______________ show_add_rule_input delete_rule_pressed ______________ Show_deleted_rule Back ______________ show_EDIT_STATEMENT Back ______________ show_EDIT_STATEMENT STATEMENTIDE FORM add rule
RULE SET
IDE FORM delete rule EDIT
STATEMENT
STD BUILDER
STATEMENT IDE FORM
component_selected _________________ show_component_properties component_dragged _________________ insert component Component_deleted ______________ delete_component back __________________________ show_STATEMENT_IDE_FORM back __________________________ show_STATEMENT_IDE_FORM STATEMENT IDE FORM insert component component properties delete component
Enter Valid User Name & Password
Quit
STD CLIENT
Back ---Show main form
End Program
Pick Category and start statement - Simulate
---Show simulator dialog
Quit ---Show Category And Start Statement Menu MAIN + LOGIN FORM Category And Start Statement Menu Simulator Dialog Gambar 3.38 STD Client
Open (Left Pane) ---Database browser
Open (Right Pane) ---Database browser
copy move
STD DISTRIBUSI
Pick Category Pick Category
MAIN FORM Left Pane Category List Right Pane Category List
copy left category move leftcategory
copy move copy right category move right category Gambar 3.39 STD Distribusi