Otomatisasi Indeks Ebook Algorithms Dengan Menggunakan Algoritma Knuth-Morris- Pratt Dan Algoritma Quicksort Chapter III V

11

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem
Sistem merupakan kumpulan elemen – elemen yang saling terkait dan bekerja sama
untuk memproses masukan (input) yang ditujukan kepada sistem tersebut dan
mengolah masukan tersebut sampai menghasilkan keluaran (output) yang diinginkan..
Analisis sistem adalah suatu kumpulan atau himpunan dari unsur atau variabel yang
saling terorganisasi, saling berinteraksi dan saling bergantung satu sama lain. (Fatta
2007). Berikut adalah diagram ishikawa otomatisasi indek ebook alghoritms.

MATERIAL

HUMAN
user membutuhkan
sistem dalam mencari dan
mensortir setia kata


algoritma KMP dan Quicksort
akan mencari dan menyortir
kata tersebut.

Dapat memilih buku
apa saja yang berformat
PDF

Belum adanya suatu sistem
yang dapat mencocokkan
Setiap kata yang dicari
dan menyortir kata tersebut

ALGORITHMS

Otomatisasi Indeks
Ebook Alghoritms

MACHINE


Gambar 3.1 Diagram Ishikawa Untuk Analisis Masalah

Masalah utama yang diangkat dari penelitian ini adalah bagaimana
membangun sebuah aplikasi yang dapat menyortir dan mengurutkan kata serta
menghitung waktu pencarian algoritma berdasarkan huruf sampai dengan angka yang

Universitas Sumatera Utara

12

diberikan oleh seorang user kepada sistem dengan menggunakan algoritma KnuthMorris-Pratt dan algoritma Quicksort.

Aplikasi indeks ebook yang akan dibangun ini menggunakan algoritma KnuthMorris-Pratt dan algoritma Quicksort dengan menggunakan software Netbeans yang

memberikan kemudahan bagi seorang user dalam melakukan pencarian kata.

Analisis sistem diperlukan untuk mengetahui permasalahan dan kebutuhan
yang diperlukan dalam pengembangan sistem. Analisis terdiri dari analisis
permasalahan dan analisis kebutuhan sistem.


3.2. Analisis Permasalahan

Analisis sistem dibangun dengan tujuan untuk mengetahui permasalahan dan juga
kebutuhan

yang diperlukan dalam membuat sebuah sistem aplikasi ini. Aplikasi

indeks ebook yang dibangun adalah sistem yang menyortir kata-perkata, hurufperhuruf sampai dengan angka-angka, setelah melakukan penyortiran sistem juga akan
menganalisis waktu pencarian algoritma tersebut dengan satuan waktu microsecond
sehingga nantinya kita akan dapat menyimpulkan apakah algoritma yang diangkat
dalam penelitian kali ini adalah algoritma yang termasuk cepat ataukah lambat.

Dari analisis permasalahan tersebut, dibangunlah sebuah aplikasi yang mampu
mencari kata dari user berserta waktu pencariannya kepada user . Di mana sistem ini
nantinya dapat membantu seseorang mempermudah dalam melakukan pencarian kata
dalam sebuah ebook yang berformat PDF. Aplikasi yang dibangun berbasis bahasa
Java dengan menggunakan software Netbeans IDE. Sehingga siapapun dapat memakai
aplikasi tersebut. Perancangan aplikasi yang dibangun, di rancang secara sederhana
dan mudah dipahami, dan juga user memberikan sebuah petunjuk cara pemakaian
aplikasi, sehingga user ataupun pengguna lainnya akan cepat mengerti menggunakan

aplikasi tersebut, dan hasilnya akan sangat bermanfaat untuk seseorang dalam
melakukan pekerjaannya.

3.3. Analisis Kebutuhan Sistem

Universitas Sumatera Utara

13

Sebagai langkah awal dari proses analisis kebutuhan sistem ini, akan diuraikan
kembali tujuan penelitian ini seperti bab sebelumnya yaitu untuk membuat sebuah
aplikasi berbasis Bahasa Java dengan menggunakan algoritma Knuth-Morris-Pratt
dan algoritma Quicksort. Maka sistem ini akan menjadi suatu aplikasi yang sederhana
untuk melakukan pencocokan dan penyortiran kata serta menghitung waktu
pencariannya sehingga akan sangat mempermudah pembaca dalam melakukan
pencarian keberadaan kata tersebut yang dinyatakan dalam indeks di dalam ebook
yang berformat PDF tersebut.

Untuk membangun sebuah sistem, perlu dilakukan sebuah tahap analisis
kebutuhan sistem. Analisis kebutuhan sistem dapat dikelompokkan menjadi 2 bagian

yaitu: kebutuhan fungsional dan kebutuhan nonfungsional.

3.3.1. Kebutuhan Fungsional

Kebutuhan fungsional adalah jenis kebutuhan yang berisi informasi dan proses apa
saja yang harus dilakukan oleh sistem.

Kebutuhan fungsional yang pertama sistem yang akan dibangun harus mampu
menerima inputan sebagai berikut :
1. User diminta untuk menginput username dan password pada form Login
sebelum masuk ke halaman menu.
2. User mengupload sebuah ebook yang berekstensi PDF yang dalam penelitian
kali ini hanya mengambil buku “Algorithms” sebagai contoh yang ada di
frame Bacabuku.

3. User diminta untuk memasukkan kata yang ingin dicari keberadaannya di
dalam ebook.

Kebutuhan fungsional yang kedua sistem yang akan dibangun harus mampu
melakukan proses sebagai berikut:

1.

Sistem harus mampu menampilkan ebook yang di upload oleh user yang dalam
penelitian ini hanya menggunakan format PDF kedalam Netbeans.

Universitas Sumatera Utara

14

2.

Sistem harus mampu melakukan pencarian kata yang diinputkan oleh user

3.

Sistem harus mampu menyortir huruf berdasarkan abjad dari yang terkecil sampai
dengan yang terbesar.
Kebutuhan fungsional yang ketiga sistem yang akan dibangun harus mampu

memberikan output sebagai berikut:

1.

Sistem harus mampu memberikan hasil pencarian kata berupa keberadaan kata
tersebut dalam ebook tersebut berserta waktu pencarian algoritmanya

2.

Sistem harus mampu mengurutkan kata dari abjad yang terkecil sampai dengan
yang terbesar, sehingga user mendapatkan informasi yang jelas dan tersusun
secara rapi.

3.3.2 Kebutuhan Non-Fungsional

Analisis kebutuhan non fungsional dilakukan untuk mengetahui spesifikasi kebutuhan
untuk

sistem.

Spesifikasi


kebutuhan

melibatkan

analisis

perangkat

keras/hardware,analisis perangkat lunak/software,analisis pengguna/user . Namun
dalam penelitian ini penulis tidak begitu banyak melibatkan komponen dari hardware,
karena yang dihasilkan hanyalah sebuah sistem sederhana yang dibangun melalui
software Netbeans IDE dengan menggunakan bahasa java. Sistem ini lebih banyak
melibatkan software dan user, maka dari itu kebutuhan non-fungsional dalam
penelitian ini adalah untuk mendukung kebutuhan yang sudah ditentukan. Adapun
kebutuhan non-fungsional yang menjadi pendukung sistem dapat dikelompokkan
berdasarkan:
1. Performance
Sistem ini diharapkan mampu memberikan kemudahan dan mempersingkat
waktu pencarian algoritma.
2. Information

Sistem ini diharapkan mampu memberikan informasi keberadaan kata dengan
jelas dan dapat dengan mudah dimengerti oleh user.

3. Control

Universitas Sumatera Utara

15

Sistem ini hanya dapat digunakan oleh user sendiri, sehingga tidak dapat
digunakan oleh pihak yang tidak berwenang.
4. Service
Sistem diharapkan untuk didesign sedemikian mudah yang berguna untuk
dapat segera dimengerti cara penggunaannya oleh user.
5. Eficiency
Sistem yang dibangun bertujuan untuk mempermudah user dalam melakukan
pencarian kata yang diinput oleh user. Dan apabila user sedang di dalam
sebuah pekerjaan dan menggunakan sistem ini untuk menyelesaikan tugasnya,
diharapkan mampu berkerja dengan cepat.


3.4. Perancangan Sistem

Penulis akan menguraikan tentang pemodelan sistem yang akan dirancang yang
bertujuan untuk menggambarkan kondisi dan bagian-bagian yang berperan dalam
sistem yang dirancang. Pemodelan sistem yang dilakukan adalah dengan membuat
perancangan flowchart, use-case diagram, activity diagram dan sequence diagram.

3.4.1. Perancangan Flowchart

Universitas Sumatera Utara

16

Ya

Gambar 3.2. Flowchart Sistem Aplikasi
Keterangan :
Pada gambar 3.2 dijelaskan mengenai Menu utama aplikasi otomatisasi indeks ebook
Algorithms dengan menggunakan algoritma Knuth-Morris-Pratt dan Quicksort. User


dapat masuk melalui halaman menu utama, namun terlebih dahulu user harus Login.
Setelah user Login dan masuk ke menu utama, user bisa langsung memilih buku untuk
dibaca dan menguploadnya kedalam aplikasi ini, yang tentunya dalam penelitian kali
ini kita memakai ebook Algorithms saja. Setelah diupload, akan ada sebuah button
pencarian kata yang akan mengarahkan user langsung ke form pencarian kata, di
dalam form tersebut user akan diminta untuk memasukkan kata yang ingin dicari,
setelah kata di masukkan maka sistem akan menginformasikan kepada user di mana
saja letak kata tersebut dengan menggunakan algoritma Knuth-Morris-Pratt, karena
kita mencari indeks maka sistem memperbolehkan user untuk mencari kata lebih dari

Universitas Sumatera Utara

17

satu kali pencarian. Hasil pencarian tersebut akan dimasukkan kedalam data,
kemudian data tersebut akan disortir berdasarkan abjad dari yang terkecil sampai
dengan yang terbesar dengan menggunakan algoritma Quicksort dan juga akan
menampilkan waktu pencariannya dari keseluruhan kata yang ada didalam data,
kemudian akan menampilkannya kedalam sebuat teks area yang telah disediakan oleh
user agar kita bisa mengetahui berapa lama waktu pencariannya.

3.4.2. Use-Case Diagram

Use-case diagram adalah diagram yang menggambarkan aktor, use case dan

relasinya sebagai suatu urutan tindakan yang memberikan nilai terukur untuk aktor
(Haviluddin : 2011). Sebuah use case digambarkan sebagai elips horizontal dalam
suatu diagram UML use case. Use case memiliki dua istilah, yaitu:
1. Sistem use case; interaksi dengan sistem.
2. Business use case; interaksi bisnis dengan konsumen atau kejadian nyata

,Gambar 3.3 Use case Sistem Aplikasi

Use case pada gambar 3.3 menjelaskan tentang segala sesuatu yang dapat

dilakukan user di dalam sistem aplikasi, mulai dari Login, cara menggunakan aplikasi,
informasi tentang algoritma, memilih buku apa saja yang berformat PDF, input kata

Universitas Sumatera Utara

18

yang ingin di cari, sampai dengan waktu pencarian algoritmanya. Seperti pada tabel
3.1 :
Tabel 3.1. Use case
UC ID
UC-1
UC-2
UC-3
UC-4
UC-5
UC-6
UC-7

Use case

Login
Menu
Baca buku
Help
Tentang algoritma
Profil
Pencarian kata dan hasil pencarian

1.1.1
1.1.2

3.4.3. Skenario Use case

ID
Nama Use case
Deskripsi
Pre-kondisi

: SC-01
: Login
: Terlebih dahulu sebelum masuk ke dalam sisem aplikasi, user
diminta untuk mengisi nama dan password.
:
Tabel 3.2. Scenario-01

Aktor/User
Skenario Normal
1. Login

Reaksi Sistem

2. Menampilkan interface desktop untuk
Login
3. Isi nama dan password
4. Memeriksa nama dan password
5. Masuk ke halaman utama sistem aplikasi.
Skenario Alternatif
1. Login
2. Tidak dapat masuk ke halaman yang lain
selain hanya di halaman menu.
ID
Nama Use case
Deskripsi

Pre-kondisi

: SC-02
: Form Menu
: Setelah user Login ke dalam sistem, user akan diarahkan
langsung oleh sistem ke halaman menu. Form menu adalah
form yang dapat menghubungkan ke seluruh form yang lain.
Atau dengan kata lain form menu form adalah form utama dari
sistem aplikasi ini.
:

Universitas Sumatera Utara

19

Tabel 3.3. Scenario-02
Aksi Aktor
Skenario Normal
1. Form menu

Reaksi Sistem

2. Masuk ke halaman Tentang algoritma
3. Masuk ke halaman pencarian kata dan hasil
pencarian.
4. Masuk ke halaman help
Skenario Alternatif
1. Form Menu
2. Dapat masuk ke halaman apa saja
ID
Nama Use case
Deskripsi

Pre-kondisi

: SC-03
: Baca buku
: User diminta utuk mengupload file berformat PDF ke dalam
sistem aplikasi dengan cara mengklik button upload file lalu
pilih file kemudian klik file tersebut kemudian klik open.
: User hanya diperbolehkan untuk mengupload file berformat
PDF saja.
Tabel 3.4. Scenario-03

Aksi Aktor
Skenario Normal
1. Baca buku

Reaksi Sistem

2. Upload file berformat PDF
3. Menampilkan file PDF ke dalam sistem
4. klik cari kata untuk mencari kata tersebut
dan berapa lama waktu pencariannya.
Skenario Alternatif
1. Baca buku
2. Tidak bisa menampilkan file yang
berformat lain selain file PDF.
ID
Nama Use case
Deskripsi
Pre-kondisi

: SC-04
: Help
: Di dalam form ini, user akan diberitahu langkah-langkah
ataupun panduan dalam menggunakan sistem aplikasi.
:
Tabel 3.5. Scenario-04

Aksi Aktor
Skenario Normal
1. Help

Reaksi Sistem

2. Menampilkan panduan mengupload file

Universitas Sumatera Utara

20

3. Menampilkan panduan cara mencari kata
Skenario Alternatif
1. Help
2. Tidak dapat menampilkan sekaligus cara
mengupload file dan pencarian kata.
ID
Nama Use case
Deskripsi
Pre-kondisi

: SC-05
: Tentang algoritma
: User akan diberitahu algoritma apa yang digunakan oleh
sistem aplikasi ini.
: Tidak dapat menampilkan informasi dari kedua algoritma
dalam sekali klik.
Tabel 3.6. Scenario-05

Aksi Aktor
Skenario Normal
1. Tentang algoritma

Reaksi Sistem

2. Menampilkan pengertian algoritma KMP
3. Menampilkan pengertian algoritma
Quicksort
Skenario Alternatif
1. Tentang algoritma
2. Menampilkan sesuai algoritma apa yang di
klik, tidak dapat di lakukan hanya dalam
sekali klik.

ID
Nama Use case
Deskripsi
Pre-kondisi

: SC-06
: Profile
: Disini user akan menampilkan biodata dari penulis.
:
Tabel 3.7. Scenario-06

Aksi Aktor
Skenario Normal
1. Profile

Reaksi Sistem

2. Menampilkan biodata penulis
Skenario Alternatif
1. Profile

ID
Nama Use case

: SC-07
: Pencarian kata dan hasil pencarian.

Universitas Sumatera Utara

21

Deskripsi

Pre-kondisi

: User akan memperoleh hasil dari kata yang ingin dicari baik
itu dengan menggunakan algoritma KMP yang melakukan
pencarian berdasarkan kata yang diinputkan maupun Quicksort
yang berkerja untuk mengurutkan indeks dari huruf-huruf
maupun angka terkecil sampai dengan yang terbesar.
:User belum mengetahui apakah algoritma ini cepat atau
lambat.
Tabel 3.8. Scenario-07

Aksi Aktor
Skenario Normal
1. Help

Reaksi Sistem

2. Menampilkan panduan mengupload file
3. Menampilkan panduan cara mencari kata
Skenario Alternatif
1. Help
2. Tidak dapat menampilkan sekaligus cara
mengupload file dan pencarian kata.

3.4.4. Activity Diagra m

Mendeskripsikan aktifitas-aktifitas, objek, state, transisi state dan event. Atau dapat
kita sebut sebagai alur kerja yang berfungsi untuk menggambarkan proses dari suatu
sistem (Haviluddin : 2011).

Universitas Sumatera Utara

22

Gambar 3.4 Activity Diagram Sistem Aplikasi

Activity diagram pada gambar 3.4 berfungsi sebagai langkah dan proses suatu

program aplikasi otomatisasi indeks ebook algorithms dari mulai login kemudian
proses pengurutan dan penyortiran kata sampai dengan hasil pencarian algoritma
tersebut.

3.4.5. Sequence Diagram

Sequence diagram merupakan interaksi objek yang telah dirancang berdasarkan

kepada urutan maupun aturan waktu. Sederhananya adalah gambaran tahap demi
tahap, termasuk dengan kronologi urutan secara logis yang berfungsi menghasilkan
sesuatu sesuai dengan use case diagram (Haviluddin : 2011). Berikut adalah gambar
dari sequence diagram aplikasi indeks ebook :

Universitas Sumatera Utara

23

Gambar 3.5 Sequence Sistem Aplikasi

3.5. Analisis Proses

Dalam melakukan pencarian kata, sistem aplikasi ini menggunakan 2 kali tahap
penyortiran, yang pertama mencocokkan kata yang diinputkan dengan kata yang ada
di dalam teks dengan menggunakan algoritma Knuth-Morris-Pratt, kemudian semua
kata yang diinputkan oleh user diurutkan kembali berdasarkan angka atau huruf yang
terkecil sampai dengan yang terbesar dengan menggunakan algoritma Quicksort.
Untuk mengetahui bagaimana algoritma ini bekerja dalam sistem aplikasi ini, kita
jelaskan dalam perincian analisis proses.

3.5.1. Analisis proses algoritma Knuth-Morris-Pratt

Tahap-tahap yang akan dilakukan oleh algoritma Knuth-Morris-Pratt adalah sebagai
berikut:
1. Kata yang diinputkan oleh user disebut dengan pattern.
2. Pattern akan mencocokkan kata dengan teks yang berformat PDF di dalam
software Netbeans dengan bergerak melalui kiri ke kanan.

Universitas Sumatera Utara

24

3. Kemudian mulai mencocokkan huruf perhuruf dengan teks, apabila huruf di
indeks pertama sama dengan huruf yang ada di dalam teks, algoritma akan
bergeser ke indeks berikutnya, kemudian mencocokkan dengan huruf yang ada
di teks, begitu seterusnya algoritma ini mencocokkan indeks sepanjang kata
ataupun kalimat yang diinputkan oleh user .
4. Apabila semua kata yang diinputkan user sama dengan bagian teks yang ada di
ebook Algorithms, maka sistem akan menginformasikan keberadaan kata

ataupun kalimat tersebut.
5. Apabila tidak sama, maka sistem akan mencari lagi sampai di akhir teks.

3.5.2. Analisis proses algoritma Quicksort

Setelah semua kata yang diinputkan oleh user sudah selesai, maka sistem akan
melakukan proses penyortiran kata-kata tersebut, berikut adalah langkah-langkahnya :
1. Semua kata yang diinputkan oleh user disimpan kedalam sebuah database,
yang nantinya akan disortir kembali dengan algoritma Quicksort.
2. Semua kata tersebut akan diurutkan, mulai dari angka yang terkecil atau huruf
yang terkecil sampai dengan angka atau huruf yang terbesar.
3. Dalam penyortiran huruf, apabila terdapat lebih dari satu huruf yang sama,
maka huruf yang berada diindeks yang ke-2 akan disortir kembali dan mencari
di mana huruf yang terkecilnya, begitu seterusnya sampai dengan selesai.
4. Kemudian sistem akan menginformasikan waktu pencarian algoritmanya,
mulai dari penyortiran tahap awal sampai dengan akhir dalam satuan waktu
microsecond.

3.6. Perancangan Antarmuka Sistem (Interface)

Sistem yang akan dibangun menggunakan Netbeans IDE, desktop digunakan
menampilkan antar muka tempat aplikasi yang akan dijalankan. Antar muka tersebut
menggunakan 4 form yaitu Login, menu, help (menjelaskan tentang bagaimana cara
menggunakan aplikasi) dan baca buku (upload file).

Universitas Sumatera Utara

25

3.6.1. Halaman Login

Rancangan halaman utama adalah rancangan tampilan awal pertama kali ketika sistem
aplikasi dijalankan. Rancangan tampilan awal ini adalah form Login,yang di mana
form Login hanya terdiri dari 3 label, 2 diantaranya bernama user name dan password
dan yang satunya lagi digunakan untuk menampung file gambar, 2 text area dan 2
button Login dan cancel. Tujuan dibangunnya form Login sebagai menghindari

penyalahgunaan untuk orang yang tidak berwenang yang dalam penelitian ini hanya
admin sendiri yang diperbolehkan untuk masuk. Berikut tampilan pada gambar 3.6:

1

2

4

3

5

6

7

Gambar 3.6 Rancangan Login

Keterangan dari rancangan halaman utama dapat dilihat pada tabel 3.9 :

Tabel 3.9. Keterangan Bagian-Bagian Rancangan Halaman Utama
NO.

Jenis Objek

Keterangan

1

Label Gambar

Foto user /admin

2

Label username

Sebagai tanda untuk memberitahukan bahwa text
area

yang

berada

disampingnya

menandakan

user name dari user

3

Label Password

Sebagai tanda untuk memberitahukan bahwa text
area

yang

berada

disampingnya

menandakan

password dari user
4

Text Area

Untuk tempat mengisikan username

Universitas Sumatera Utara

26

Username

5

Password Field

Untuk mengisikan password dari username

6

Button Login

Apabila sudah benar user name dan password maka
sistem akan mengarahkan user ke menu.

7

Button Cancel

Untuk keluar dari sistem aplikasi

3.6.2. Rancangan Menu

Rancangan halaman menu merupakan tahap awal pada penggunaan aplikasi ini

Gambar 3.7 Rancangan Halaman Menu

Pada gambar 3.7 merupakan rancangan halaman menu yang di mana dari halaman ini
dapat menghubungkan ke sistem aplikasi penyortiran kata. Keterangan dari rancangan
menu dapat dilihat pada tabel 3.10 :

Tabel 3.10. Keterangan Bagian-Bagian Rancangan Halaman Menu
NO.
1

2

Jenis Objek
JMenu Menu

JMenu Baca buku

Keterangan
Merupakan form dari menu itu sendiri dan juga
form tentang algoritma yang menjelaskan tentang
algoritma yang berkerja pada sistem aplikasi.
Merupakan form untuk mengarahkan user untuk

Universitas Sumatera Utara

27

3.

JMenu Help

4.

JMenu Log out

6

Button Baca buku

7

Button Hasil
Pencarian

8

Button Tentang
Algoritma

9

Button Log out

10

Label gambar

mengupload ebook berformat pdf dan juga
memperbolehkan user untuk melakukan pencarian
kata dan waktu pencarian.
Memberikan
panduan
kepada
user
cara
menggunakan aplikasi
Untuk keluar dari system
Button ini akan mengarahkan user ke form baca
buku dan meminta user untuk mengupload file
untuk di baca
Button ini akan mengarahkan anda ke form
pencarian kata dan waktu pencarian yang ada di
JMenu baca buku
Button ini akan mengarahkan anda ke form tentang
algoritma yang menjelaskan tentang pengertian dan
fungsi dari algoritma Knuth-Morris-Pratt dan
algoritma Quicksort yang ada di dalam JMenu
menu.
Button ini berfungsi untuk keluar dari aplikasi.

Sebuah label yang berfungsi untuk menampung
sebuah gambar yang bertujuan untuk menghias
form.

3.6.3. Rancangan Halaman Baca Buku

Rancangan halaman baca buku ialah rancangan halaman yang berisi tentang ebook
yang diupload oleh user dan juga user melakukan pencarian kata sesuai dengan
permintaan dari user itu sendiri dan sistem akan memberikan informasi berupa lokasi
kata dan waktu yang dibutuhkan.

Universitas Sumatera Utara

28

Gambar 3.8 Rancangan Halaman Baca Buku

Pada gambar 3.8 terlihat rancangan halaman baca buku yang di mana user diberikan
kebebasan dalam melakukan upload buku apa saja yang berformat PDF. Keterangan
dari rancangan baca buku dapat dilihat pada tabel 3.11 :

Tabel 3.11. Keterangan Bagian-Bagian Rancangan Halaman Baca buku
NO. Jenis Objek
1
Teks area
2
3
4

Keterangan
Lokasi ebook untuk ebook ketika dimasukkan kedalam
form aplikasi
Meminta user untuk mengupload file pdf

Button
Upload File
Button Cari
Mengarahkan user ke form pencarian kata untuk
kata
mendapatkan informasi hasil pencarian dan waktunya.
Button
Untuk mengembalikan ke form menu
Kembali ke
menu

3.6.4. Rancangan Halaman Pencarian Kata

Rancangan halaman pencarian kata merupakan rancangan halaman yang berisikan
tentang informasi hasil pencarian kata yang diinputkan oleh user dan waktu pencarian
algoritma dalam satuan waktu microsecond.

Universitas Sumatera Utara

29

Gambar 3.9 Rancangan Halaman Pencariankata

Pada gambar 3.9 terlihat rancangan halaman pencarian kata untuk melakukan
pencarian kata. Keterangan dari rancangan halaman pencarian kata dapat dilihat pada
tabel 3.12:

Tabel 3.12. Keterangan Rancangan Halaman Pencarian Kata
NO.
1

Jenis Objek
Teks area

Keterangan
Meminta kepada user untuk memasukkan kata yang
ingin dicari.

2

Teks area

Untuk melihat hasil pencarian kata yang di mana
merupakan informasi keberadaan kata tersebut.

3

Button

kata
4

Button

kata

cari Merupakan sebuah button untuk memulai program
pencarian kata yang diinputkan oleh user .
Sortir Merupakan sebuah button untuk menyortir semua hasil
dari lokasi pencarian kata, kemudian mengurutkannya
berdasarkan urutan yang terendah sampai dengan yang
tertinggi.

5

Teks area

Hasil dari waktu pencarian algoritma KMP.

6

Teks area

Hasil dari waktu penyortiran kata algoritma Quicksort.

7

Button

Merupakan sebuah button yang akan mengarahkan user

Kembali

untuk kembali membaca.

Universitas Sumatera Utara

30

Membaca
8

Merupakan sebuah button untuk mengarahkan user

Button

Kembali

ke kembali ke menu awal.

menu

9

Merupakan teks area yang menjadi tempat untuk

Teks

Area

untuk

hasil menampilkan

penyortiran

hasil

penyortiran

kata-kata

yang

diinputkan.

katanya.
10

Teks

area

Merupakan teks area yang menjadi tempat untuk

untuk

menampilkan semua kata yang telah diinputkan oleh

menampilkan

user yang memiliki nilai hasil pencarian algoritma KMP

semua

isi berupa posisi dari kata tersebut yang dinyatakan di

dalam

dalam indeks.

database

11

Button

untuk Merupakan sebuah button

yang berfungsi untuk

memanggil

memanggil seluruh isi data dalam field “kata” dan

database

menampilkannya ke dalam teks area.

3.6.5. Rancangan Halaman Help

Rancangan halaman help merupakan rancangan halaman yang menjelaskan tentang
bagaimana cara menggunakan sistem aplikasi ini, hanya saja rancangan halaman help
ini hanya menjelaskan tentang inti dari penggunaan aplikasi, bukan untuk menjelaskan
dari awal penggunaan masuk sampai dengan akhir.

Universitas Sumatera Utara

31

Gambar 3.10 Rancangan Halaman Help

Pada gambar 3.10 terlihat rancangan halaman cek gejala untuk memberikan petunjuk
membuka file sampai dengan melakukan penyortiran dan pencarian kata. Keterangan
dari rancangan help dapat dilihat pada tabel 3.13:
Tabel 3.13. Keterangan Rancangan Halaman Help
NO.
1

Jenis Objek
Button

cara

Keterangan

untuk Button

ini

akan

menjelaskan

kepada

user

memasukkan file PDF bagaimana cara untuk memasukkan file PDF ke
dalam sistem aplikasi.
2

Button pencarian kata

Button ini berfungsi untuk menjelaskan kepada
user bagaimana sistem melakukan pencarian dan

penyortiran
kepada

user

kata

beserta

hasil

menginformasikan

pencarian

dan

waktu

pencariannya.
3

Teks ini sebagai keterang dari button nomor 1 dan

Teks area

2.
4

Button

kembali

ke

Mengembalikan user ke halaman menu.

menu.

5

Button keluar

Untuk keluar dari sistem.

Universitas Sumatera Utara

32

BAB 4

IMPLEMENTASI DAN PENGUJIAN

4.1. Implementasi

Tahap implementasi adalah tahap yang dimana sistem telah digunakan oleh pengguna.
Namun sebelum itu pengguna wajib telah mengetahui cara menggunakannya, dan
sistem haruslah melalui tahap pengujian yang bertujuan untuk menjamin tidak adanya
kesalahan ketika pengguna menggunakan sistemnya. (Fatta, H.A 2007)

Sistem aplikasi otomatisasi indeks ebook algorithms ini dibangun dengan
menggunakan

Bahasa

pemrograman

java,

yang dimana

dalam

melakukan

perancangan dan listing pemrogramannya menggunakan software Netbeans IDE
dengan interface running programnya berbasis desktop. Sistem aplikasi otomatisasi
indeks ebook Algorithms ini dibangun dengan menggunakan algoritma Knuth-MorrisPratt yang berfugsi untuk mencari kata yang diinputkan oleh user kemudian akan

disamakan dengan yang ada di dalam teks, kemudian menyortir kata kata yang
diinputkan tersebut berdasarkan abjad yang terkecil sampai dengan yang terbesar
dengan menggunakan algoritma Quicksort, dan tentunya sistem akan menghitung
waktu pencariannya dalam satuan waktu microsecond.

4.1.1 Tampilan Halaman Utama

Tampilan halaman yang utama adalah tampilan awal yang pertama kali muncul ketika
program dirunningkan atau dijalankan. Tampilan halaman utama adalah tampilan form
login yang meminta kepada user untuk memasukkan user name dan password untuk
bisa masuk ke halaman menu. Berikut adalah tampilan halaman utama sistem aplikasi
otomatisasi indeks ebook Algorithms dapat dilihat pada gambar 4.1.

Universitas Sumatera Utara

33

Gambar 4.1. Tampilan Halaman Utama

4.1.2. Tampilan Halaman Menu

Halaman menu merupakan halaman yang dapat menghubungkan ke semua halaman
form sistem aplikasi. Dan juga dari tampilan halaman menu disediakan menutab

tambahan yaitu form tentang informasi algoritma yaitu form yang akan menjelaskan
algoritma apa yang digunakan dan profile dari penulis. Berikut tampilan halaman
menu dapat dilihat pada gambar 4.2.

Gambar 4.2 Tampilan Halaman Menu

Universitas Sumatera Utara

34

4.1.3. Tampilan Halaman Baca buku

Pada halaman baca buku ini disediakan 2 menutab, yaitu Pilih Buku yang merupakan
form yang meminta user untuk mengupload file berupa PDF ke dalam sistem dan form
Cari Kata yang merupakan form yang akan mencari kata apa saja yang diinputkan

oleh user di dalam ebook Alghoritms. Berikut adalah tampilan pilih buku sebelum file
PDF diupload pada Gambar 4.3.

Gambar 4.3. Tampilan Halaman Pilih File Sebelum Upload File
.
Kemudian halaman pilih file seteleh file dipilih kemudian diupload, dapat dilihat pada
Gambar 4.4

Gambar 4.4 Tampilan Halaman Baca Buku Setelah File diupload

Universitas Sumatera Utara

35

Kemudian adalah menutab cari kata yang merupakan halaman tempat kerjanya
algoritma Knuth-Morris-Pratt dan algoritma Quicksort. Pada halaman ini sistem
meminta kepada user untuk mengetikkan kata yang ingin dicari kemudian mengklik
tombol cari, kemudian sistem akan mencari kata tersebut dengan menggunakan
algoritma Knuth-Morris-Pratt berserta waktu pencariannya, kemudian hasilnya akan
ditampilkan di teks box yang ada di bawahnya, kemudian klik tombol sortir kata,
maka algoritma Quicksort akan menjalankan tugasnya yaitu menyortir kata tersebut
dan kemudian menampilkan hasil dan waktu pencariannya. Berikut adalah tampilan
awal menutab Cari Kata sebelum menampilkan hasil dari pencariannya. Tampilan
dapat dilihat pada Gambar 4.5.

Gambar 4.5 Tampilan Halaman Sebelum Melakukan Proses Pencarian Kata

4.1.4. Tampilan Halaman Hasil

Halaman hasil adalah halaman dari sistem otomatisasi indeks ebook algorithms
dengan menggunakan algoritma Knuth-Morris-Pratt dan Quicksort, dan dihalaman ini
user dapat melihat hasil pencarian dari suatu kata yaitu posisi kata yang dinyatakan

dalam indeks dan waktu pencarian algoritma dalam satuan waktu microsecond.
Tampilan halaman hasil dapat dilihat dalam gambar 4.6 :

Universitas Sumatera Utara

36

Gambar 4.6. Tampilan Halaman Hasil

4.1.5. Tampilan Halaman Help

Berikut adalah halaman help yang merupakan halaman yang memandu user dalam
memakai ataupun menggunakan sistem aplikasi dari awal penggunakan sampai
dengan selesai. Berikut adalah tampilan halaman help dapat dilihat pada Gambar 4.7.

Gambar 4.7. Halaman Help

Universitas Sumatera Utara

37

4.2. Pengujian

Pengujian sistem merupakan tahap akhir dalam perancangan dan juga pengembangan
dari sebuah sistem aplikasi, dan merupakan sebuah proses yang paling banyak
memakan waktu proses analisa pengembangan sampai dengan matang. Pemahaman
konsep pengujian ini sangatlah penting dimulai dari bagaimana algoritma mencari,
seperti apa karakteristiknya, memahami perbedan dari setiap kondisi, pengujian dari
sistem, kemudian memperhatikan dan menganalisa teknik prosedur dan juga tool yang
di gunakan dalam perancangan dan pengembangan aplikasi ini. Hal ini tentu saja
sangat membantu pengguna menyadari setiap masalah yang akan diberikan kepada
user dari penguji sistem serta sangat dibutuhkannya pengujian sistem. (Fatta, H.A

2007)

Tahap pengujian sistem dilakukan untuk menguji hasil dari pencarian
algoritma KMP dan Quicksort yang dihitung berdasarkan satuan waktu microsecond.

4.2.1. Pengujian Sistem Algoritma Knuth-Morris-Pratt

Tahap pengujian sistem ini merupakan sebuah lanjutan dari sebuah tahap penginputan
data yang diinputkan oleh user , yang dimana setiap kata yang diinputkan oleh user
yang memiliki hasil berupa indeks akan disimpan kedalam database, kemudian waktu
dari pencarian algoritma ini juga akan dihitung dari berapa banyak aplikasi yang
terbuka, kemudian banyaknya setiap huruf di dalam suatu kalimat yang diinputkan,
yang bertujuan untuk melihat apakah waktunya semakin lebih cepat atau lebih lambat.

Pertama-tama di dalam database, tidak ada satupun kata yang terdapat dalam
field database kata. Seperti terlihat pada gambar berikut:

Universitas Sumatera Utara

38

Gambar 4.8 Isi Dalam Database Sebelum Dilakukannya Proses
Penginputan

Jika seorang user menginput sebuah kata sebagai berikut:

Gambar 4.9 Input Data Sebelum Proses

Pada gambar 4.9 seorang user menginput sebuah kalimat yang berjumlah 3
huruf dan beberapa aplikasi terbuka, maka waktu yang dibutuhkan oleh algoritma ini
dalam melakukan pencocokan kata di dalam ebook alghoritms adalah sebesar
37872755 microsecond, seperti pada gambar 4.10 :

Universitas Sumatera Utara

39

Gambar 4.10 Proses Pencocokan Kata Dengan Beberapa Aplikasi Terbuka

Kemudian kita mencoba untuk menginputkan kata yang sama, hanya saja
beberapa aplikasi kita hilangkan. Maka waktu yang dibutuhkan algoritma ini dalam
melakukan pencocokan string adalah seperti gambar berikut :

Gambar 4.11 Proses Pencocokan Kata Dengan Beberapa Aplikasi Tertutup

Terlihat jelas di dalam percobaan kita di atas pada gambar 4.11 bahwa waktu
pencocokan string yang dilakukan algoritma ini semakin cepat. Waktu yang

Universitas Sumatera Utara

40

dibutuhkan algoritma ini sebesar 19700569, sedangkan ketika beberapa aplikasi
terbuka waktu pencariannya menjadi lebih lambat. Berikut perhitungan selisih waktu :
Waktu and (1)

= 37872755

microsecond

Waktu and (2)

= 19700569

microsecond

Selisih waktunya = 18172186

microsecond

Kemudian kita akan membandingkan waktu pencarian algoritma berdasarkan
jumlah huruf yang terdapat dalam sebuah kalimat. Dalam percobaan ini kalimat
pertama yang kita ambil adalah dari kalimat sebelumnya, kemudian kita bandingkan
dengan jumlah huruf yang lebih banyak. Maka hasilnya adalah seperti gambar berikut:

Gambar 4.12 Proses Pencocokan Kata Dengan Jumlah Huruf Lebih Banyak

Pada gambar 4.12 diatas terlihat jelas bahwa waktu yang dibutuhkan algoritma
ini dalam melakukan pencocokan kata “where” yang berjumlah 5 huruf adalah sebesar
9976034, lebih cepat dari pencarian kata yang dilakukan hanya dari 3 huruf dari
percobaan yang dilakukan sebelumnya. Selisih waktu dari pencocokan string yang
dilakukan oleh algoritma ini adalah sebagai berikut :
Waktu pencarian kata “and”

= 19700569

microsecond

Waktu pencarian kata “where”

= 9976034

microsecond

Selisih waktunya adalah

= 9724535

microsecond

Dari percobaan yang kita lakukan diatas, maka kesimpulan yang diperolah berbanding
terbalik yaitu semakin banyak aplikasi yang berjalan saat melakukan proses pencarian

Universitas Sumatera Utara

41

string maka waktu yang dibutuhkan akan semakin lama, sedangkan semakin banyak

kata di dalam sebuah kalimat maka waktu pencarian stringnya akan semakin lebih
cepat.

4.2.2. Pengujian Sistem Algoritma Quicksort

Tahap pengujian sistem ini adalah sebuah tahap paling akhir dari sistem aplikasi
otomtisasi indeks ebook ini. Tahap ini adalah tahap yang akan menyortir kata mulai
dari huruf yang paling kecil sampai dengan huruf yang paling besar. Semua kata yang
ada di dalam database akan ditampilkan kembali ke dalam sistem kemudian disortir
dengan algoritma Quicksort. Tidak hanya tersortir di dalam aplikasi saja, akan tetapi
field di dalam database akan ikut tersortir juga. Berikut adalah isi database melalui

kata yang telah diinputkan melalui percobaan sebelumnya :

Gambar 4.13 Kata Yang Sudah Tersimpan di Dalam Database

Berikut tampilan ketika data di dalam database ditampilkan kembali di dalam aplikasi:

Universitas Sumatera Utara

42

Gambar 4.14 Kata Di dalam Database Yang Ditampilkan Di dalam Aplikasi

Kemudian kata yang ditampilkan tersebut disortir berdasarkan algoritma Quicksort.
Seperti pada gambar 4.15 :

Gambar 4.15 Kata Di dalam Database Yang Telah Tersortir

Hasil yang didapatkan ketika kata telah tersortir memerlukan waktu sebesar 109621
microsecond. Kata yang tersortir tidak hanya di dalam aplikasi saja, akan tetapi kata

yang terdapat di dalam database akan tersortir juga. Seperti gambar di bawah :

Gambar 4.16 Kata Di dalam Database Yang Telah Tersortir

Universitas Sumatera Utara

43

Penyortiran kata yang dilakukan oleh algoritma Quicksort adalah tidak langsung
menyortir huruf yang terkecil sampai dengan yang terbesar tetapi melainkan dengan
cara mengambil nilai dari setiap huruf yang di inputkan oleh user. Berikut adalah tabel
huruf dalam kode ASCII :

Gambar 4.17 Kode ASCII

Universitas Sumatera Utara

44

BAB 5
KESIMPULAN DAN SARAN

5.1. Kesimpulan

Kesimpulan yang mungkin dapat kita ambil dari sistem apikasi otomatisasi indeks
ebook Algorithms ini adalah sebagai berikut:
1. Sistem aplikasi ini akan sangat memberikan kemudahan bagi user ataupun
pembaca dalam melakukan pencarian kata di dalam buku apa saja yang
berformat pdf, disamping mempersingkat waktu juga meringankan beban bagi
seorang yang berkerja yang berhubungan dengan fungsi dari sistem aplikasi
ini.
2. Algoritma Knuth-Morris-Pratt dan algoritma Quicksort dalam melakukan
pencarian kata berkerja dengan sangat baik dan cepat, hal ini telah dibuktikan
dalam pengukuran waktu yang kita lakukan melalui aplikasi dalam satuan
waktu microsecond.
3. Proses pencarian algoritma KMP memberikan waktu yang lebih cepat ketika
kata yang diinputkan lebih banyak, semakin banyak kata yang diinputkan
maka semakin cepat proses pencariannya.
4. Algoritma KMP akan berkerja semakin lama apabila saat menjalankan sistem
ini banyak aplikasi yang berjalan. Gambar tidak dapat terbaca melalui sistem
aplikasi, sehingga gambar tidak akan diproses oleh sistem.
5. Informasi yang diperoleh terlihat jelas dan tersusun secara rapi melalui sistem.

5.2. Saran
Saran yang dapat diberikan oleh penulis setelah penelitian ini dilakukan adalah :
1. Sistem yang dirancang oleh peneliti seharusnya bisa digunakan untuk semua
tipe file, bukan hanya sekedar file pdf saja.
2. Diharapkan mampu untuk menampilkan gambar yang ada di dalam ebook
tersebut sehingga akan menampilkan isi di dalam interface yang sama persis
dengan yang ada dalam ebook tersebut.

Universitas Sumatera Utara

45

3. Dapat memberikan masukan kata seperti halnya yang dilakukan oleh google.
4. Dapat dikembangkan lebih luas lagi yang bukan hanya sekedar melalui PC,

bahkan juga bisa melalui smartphone seperti windowsphone, android,
blackberry maupun iphone.

5. Menambahkan bebera fungsi yang dapat dikoneksikan dengan internet.

DAFTAR RIWAYAT HIDUP

Nama

: Muhammad TP Fazil

Alamat

: Jln. Sakti Lubis No 104 Medan Maimun

Tanggal Lahir

: Tanjungbalai 07 april 1992

Jenis Kelamin

: Laki-laki

No Handphone

: 082166593576

Email

: oncyfazil@gmail.com

Pendidikan Formal
2014 – 2016

: S1 Ilmu Komputer Universitas Sumatera Utara

2011 – 2014

: DIII Teknik Informatika Universitas Sumatera Utara

2007 – 2010

: SMA Negeri 1 Tanjungbalai

2004 – 2007

: SMP Negeri 1 Tanjungbalai

1998 – 2004

: SD N 132406(5) Tanjungbalai

Keahlian
Ms.Office, Java (android), Visual Basic, movie maker

Universitas Sumatera Utara