Implementasi Algoritma Zhu-Takaoka Pada Aplikasi Terjemahan Al-Quran Berbasis Android Chapter III V
17
BAB III
ANALISIS DAN PERANCANGAN
3.1
Analisis Sistem
Analisis sistem adalah tahapan untuk memahami sistem dan komponen-komponen
bagian
dalam
sistem
dengan
maksud
mengidentifikasi
dan
mengevaluasi
permasalahan serta hambatan yang terjadi. Ada dua tahapan analisis dalam tugas
akhir ini yaitu: analisis masalah dan analisis kebutuhan. Tahap analisis masalah
adalah tahap untuk memahami dan mempelajari penyebab masalah dari sistem yang
digunakan. Kemudian dilanjutkan dengan tahap analisis kebutuhan yang menjelaskan
proses kerja fungsi-fungsi yang digunakan sistem.
3.1.1 Analisis Masalah
Permasalahan utama pada penelitian ini adalah banyaknya dokumen Al-Quran
menyebabkan umat islam di Indonesia kesulitan untuk mencari surah dan ayat yang
berhubungan dengan kata kunci yang sedang menjadi pusat perhatiannya pada
terjemahan Al-Quran secara manual.
Masalah-masalah pada penelitian ini diidentifikasikan dengan menggunakan
diagram Ishikawa. Diagram Ishikawa atau yang sering dikenal dengan Cause and
Effect
Diagram
adalah
diagram
yang
digunakan
untuk
memahami
dan
mengidentifikasi serta menggambarkan beberapa masalah yang terjadi pada sistem
dan akibat yang ditimbulkan oleh masalah.
Permasalahan pada penelitian ini secara umum dapat ditunjukkan pada gambar
3.1.
Universitas Sumatera Utara
Gambar 3.1 Diagram Ishikawa
3.1.2 Analisis Kebutuhan
Analisis kebutuhan sistem ini meliputi analisis persyaratan fungsional dan analisis
persyaratan nonfungsional.
3.1.2.1 Kebutuhan Fungsional
Kebutuhan fungsional adalah kebutuhan dimana sistem harus dapat melakukan
proses-proses termasuk dalam melakukan pelayanan yang disediakan sistem dan
reaksi sistem untuk mendapatkan hasil berdasarkan instruksi yang diberikan. Terdapat
beberapa hal yang menjadi syarat kebutuhan fungsional yang harus dipenuhi:
(Panggabean,2015)
1. Fungsi Pencarian Kata
Sistem dapat melakukan pencarian string pada aplikasi Terjemahan Al-Quran
agar mendapatkan terjemahan ayat yang mengandung string tersebut dengan
mengimplementasikan algoritma Zhu-Takaoka
2. Fungsi Pencatat Waktu dan Banyak Komparasi
Universitas Sumatera Utara
19
Dalam proses pencarian kata yang di inputkan, lama proses dan banyak
komparasi akan dicatat dan ditampilkan kepada user untuk memperlihatkan
kepada user seberapa cepat algoritma Zhu-Takaoka dalam menyelesaikan
proses kerja.
3.1.2.2 Kebutuhan Nonfungsional
Kebutuhan nonfungsional adalah kebutuhan yang mendeskripsikan sistem dari segi
karakterisitik, fitur dan batasan lainnya seperti performa, penggunaan, dan ekonomi.
Terdapat beberapa hal yang menjadi syarat kebutuhan nonfungsional antara lain:
(Panggabean, 2015)
1. Performa
Sistem yang akan dibangun harus dapat menampilkan hasil pencarian yang
sesuai dengan apa yang dicari.
2. Mudah dipelajari dan digunakan
Sistem yang akan dibangun harus memiliki interface yang user friendly
sehingga pengguna dapat mengakses sistem dengan mudah
3. Hemat biaya
Sistem yang dibangun tidak memerlukan perangkat tambahan ataupun
perangkat pendukung lainnya yang dapat mengeluarkan biaya.
3.2
Pemodelan
Pemodelan merupakan konsep penyederhanaan suatu masalah dalam suatu bahasa
tertentu.Sebelum merancang perangkat lunak, maka pada tahap pemodelan ini
dilakukan untuk memudahkan perancangan sistem selanjutnya.Bahasa pemodelan
yang digunakan pada penelitian ini adalah bahasa Unified Modeling Language
(UML). UML adalah bahasa yang digunakan untuk memberikan penjelasan mengenai
komponen-komponen untuk membangun sistem dan interaksi antar komponen sistem
(Pressman, 2010). Model diagram UML yang digunakan pada penelitian ini adalah
use-case diagram, sequence diagram, dan activity digaram.
Universitas Sumatera Utara
20
3.3.1 Use-Case Diagram
Use-case Diagram adalah gambaran skenario penggunaan aplikasi sistem tentang
bagaimana cara sistem bekerja dengan pengguna (Pressman, 2010). Use-case
Diagram membutuhkan identifikasi siapakah pengguna yang akan menggunakan
sistem tersebut. Pengguna tersebut dinamakan actor. Actor berperan untuk melakukan
komunikasi dengan sistem, dimana actor bekerja diluar dari sistem itu sendiri. Pada
penelitian ini actor menginputkan string yang ingin dicari kemudian sistem akan
melakukan pencarian dan menampilkan hasil pencarian.Hubungan antar actor dengan
use-case dihubungkan dengan garis lurus. Sedangkan hubungan dimana satu use-case
digunakan untuk meredudansi use-case lainnya digunakan garis putus-putus dengan
keterangan include. Untuk extend digunakan untuk mensimplifikasi satu use-case
dengan use-case lainnya
Gambar 3.2 Diagram Use-Case
Proses pencarian string pada aplikasi terjemahan Al-Quran, dapat dinyatakan dalam
Tabel 3.1.
Tabel 3.1. Tabel Use Case Pencarian string pada aplikasi terjemahan Al-Quran
menggunakan algoritma Zhu-Takaoka
Universitas Sumatera Utara
21
Name
Pencarian string pada terjemahan Al-Quran dengan
algoritma Zhu-Takaoka
Actors
User
Description
Use Case ini mendeskripsikan proses pencarian dengan
Algoritma Zhu-Takaoka
Basic Flow
User memasukkan string berupa satu kata atau lebih
Alternate Flow
User dapat melakukan pengaturan,loncat dan melihat log
pencarian serta tentang pada aplikasi terjemahan Al-Quran
Pre Condition
-
Post Condition
User mengetahui hasil pencarian string pada terjemahan
Al-Quran
Pada Proses Pencarian, dapat dinyatakan dalam Tabel 3.2.
Tabel 3.2. Tabel Use Case Proses Pencarian
Name
Proses Pencarian
Actors
User
Description
Use Case ini mendeskripsikan proses pencarian seluruh
string yang dicari
Basic Flow
User memasukkan satu kata atau lebih yang menjadi
perhatian
Alternate Flow
User dapat melihat terjemahan Al-Quran yang tersimpan
di database
Pre Condition
User dapat melihat menu awal
Post Condition
Sistem mendapatkan hasil pencarian
Pada Proses Hasil, dapat dinyatakan dalam Tabel 3.3.
Tabel 3.3. Tabel Use Case Proses Hasil
Name
Proses Hasil
Universitas Sumatera Utara
22
Actors
User
Description
Use Case ini mendeskripsikan proses menampilkan hasil
pencarian string pada aplikasi terjemahan Al-Quran
Basic Flow
User memilih menu caripada menu navigasi
Alternate Flow
User dapat melakukan pencarian, pengaturan,loncat dan
melihat log pencarian serta tentang pada aplikasi
terjemahan Al-Quran
Pre Condition
User dapat melihat menu awal lagi untuk kembali ke
terjemahan Al-Quran
Post Condition
User mengetahui hasil pencarian pada Terjemahan AlQuran tersebut tersebut
3.2.2
Sequence Diagram
Sequence Diagram adalah diagram yang menunjukkan hubungan yang terjadi antara
satu objek dengan objek lain. Diagram Sequences digunakan untuk mendekripsikan
pola komunikasi antar objek, dimana diagram Sequences ini menggambarkan urutan
waktu dari aliran pemanggilan pada suatu metode. Berikut diagram Sequence pada
penelitian ini dapat dilihat pada Gambar 3.3.
Gambar 3.3 Diagram Sequence
Universitas Sumatera Utara
23
Pada tahap ini, yang dilakukan adalah pengguna memasukkan string yang akan dicari,
kemudian menyimpan data yang dimasukkan ke database, kemudian database
membaca seluruh data dan proses pencarian dengan algoritma Zhu-Takaoka, sehingga
menampilkan hasil berupa terjemahan ayat yang memiliki string yang di masukkan.
3.2.3
Activity Diagram
Activity Diagram adalah diagram yang menggambarkan alur kerja proses sistem
menggunakan notasi nodes. Activity nodes digunakan untuk menjelaskan alur kontrol
kerja sistem seperti sinkronisasi dan keputusan dari awal sampai berakhirnya proses.
Nodes bulat penuh adalah nodes awal proses, sedangkan nodes bulat penuh ditengah
adalah akhir proses. Activity diagram pada sistem dapat ditunjukkan pada gambar 3.4
Universitas Sumatera Utara
24
Gambar 3.4
ActivityDiagram
3.3
Kamus Data
Kamus data merupakan sebuah daftar yang mengatur semua komponen data
yang berhubungan terhadap sistem dengan definisi singkat dan sejelas-jelasnya
sehingga pengguna dan analisis sistem dapat sama-sama mengerti tentang data
masukan, keluaran, komponen penyimpanan, dan kalkulasi lanjutan. Kamus
data pada sistem dapat dilihat pada Tabel 3.4 berikut.
Tabel 3.4 Kamus Data
Data
Kolom
Tipe
Deskripsi
Universitas Sumatera Utara
25
Data
Id
Integer
Identifier
Juz
Text
Teks nomor juz
Surat
Text
Teks nomor surat
Ayat
Text
Teks nomor ayat berdasarkan
surat
Terjemah
3.4
Text
Teks terjemahan Al-quran
Flowchartdan Pseudocode
Flowchart adalah bagan yang menunjukkan prosedur dan proses pemecahan masalah
sistem. Pseudocode adalah kode semu dari bahasa pemrograman yang digunakan agar
dapat dipahami dan dimengerti oleh stakeholder.
3.4.1 Flowchart System
Flowchart dari sistem yang akan dibangun dapat di lihat pada Gambar 3.5
Gambar 3.5 Flowchart System
Universitas Sumatera Utara
26
3.4.2 Flowchart Algoritma
Flowchart algoritma yang di gunakan dapat di lihat pada Gambar dibawah ini:
Universitas Sumatera Utara
27
Gambar 3.6 Flowchart Proses Pencarian Algoritma Zhu-Takaoka
Universitas Sumatera Utara
28
3.4.2.1 PseudocodeProses Pencarian Algoritma Zhu-Takaoka
void ZT() {
preZtBc()
preBmGs()
int j = 0
int i = 0
while (j
BAB III
ANALISIS DAN PERANCANGAN
3.1
Analisis Sistem
Analisis sistem adalah tahapan untuk memahami sistem dan komponen-komponen
bagian
dalam
sistem
dengan
maksud
mengidentifikasi
dan
mengevaluasi
permasalahan serta hambatan yang terjadi. Ada dua tahapan analisis dalam tugas
akhir ini yaitu: analisis masalah dan analisis kebutuhan. Tahap analisis masalah
adalah tahap untuk memahami dan mempelajari penyebab masalah dari sistem yang
digunakan. Kemudian dilanjutkan dengan tahap analisis kebutuhan yang menjelaskan
proses kerja fungsi-fungsi yang digunakan sistem.
3.1.1 Analisis Masalah
Permasalahan utama pada penelitian ini adalah banyaknya dokumen Al-Quran
menyebabkan umat islam di Indonesia kesulitan untuk mencari surah dan ayat yang
berhubungan dengan kata kunci yang sedang menjadi pusat perhatiannya pada
terjemahan Al-Quran secara manual.
Masalah-masalah pada penelitian ini diidentifikasikan dengan menggunakan
diagram Ishikawa. Diagram Ishikawa atau yang sering dikenal dengan Cause and
Effect
Diagram
adalah
diagram
yang
digunakan
untuk
memahami
dan
mengidentifikasi serta menggambarkan beberapa masalah yang terjadi pada sistem
dan akibat yang ditimbulkan oleh masalah.
Permasalahan pada penelitian ini secara umum dapat ditunjukkan pada gambar
3.1.
Universitas Sumatera Utara
Gambar 3.1 Diagram Ishikawa
3.1.2 Analisis Kebutuhan
Analisis kebutuhan sistem ini meliputi analisis persyaratan fungsional dan analisis
persyaratan nonfungsional.
3.1.2.1 Kebutuhan Fungsional
Kebutuhan fungsional adalah kebutuhan dimana sistem harus dapat melakukan
proses-proses termasuk dalam melakukan pelayanan yang disediakan sistem dan
reaksi sistem untuk mendapatkan hasil berdasarkan instruksi yang diberikan. Terdapat
beberapa hal yang menjadi syarat kebutuhan fungsional yang harus dipenuhi:
(Panggabean,2015)
1. Fungsi Pencarian Kata
Sistem dapat melakukan pencarian string pada aplikasi Terjemahan Al-Quran
agar mendapatkan terjemahan ayat yang mengandung string tersebut dengan
mengimplementasikan algoritma Zhu-Takaoka
2. Fungsi Pencatat Waktu dan Banyak Komparasi
Universitas Sumatera Utara
19
Dalam proses pencarian kata yang di inputkan, lama proses dan banyak
komparasi akan dicatat dan ditampilkan kepada user untuk memperlihatkan
kepada user seberapa cepat algoritma Zhu-Takaoka dalam menyelesaikan
proses kerja.
3.1.2.2 Kebutuhan Nonfungsional
Kebutuhan nonfungsional adalah kebutuhan yang mendeskripsikan sistem dari segi
karakterisitik, fitur dan batasan lainnya seperti performa, penggunaan, dan ekonomi.
Terdapat beberapa hal yang menjadi syarat kebutuhan nonfungsional antara lain:
(Panggabean, 2015)
1. Performa
Sistem yang akan dibangun harus dapat menampilkan hasil pencarian yang
sesuai dengan apa yang dicari.
2. Mudah dipelajari dan digunakan
Sistem yang akan dibangun harus memiliki interface yang user friendly
sehingga pengguna dapat mengakses sistem dengan mudah
3. Hemat biaya
Sistem yang dibangun tidak memerlukan perangkat tambahan ataupun
perangkat pendukung lainnya yang dapat mengeluarkan biaya.
3.2
Pemodelan
Pemodelan merupakan konsep penyederhanaan suatu masalah dalam suatu bahasa
tertentu.Sebelum merancang perangkat lunak, maka pada tahap pemodelan ini
dilakukan untuk memudahkan perancangan sistem selanjutnya.Bahasa pemodelan
yang digunakan pada penelitian ini adalah bahasa Unified Modeling Language
(UML). UML adalah bahasa yang digunakan untuk memberikan penjelasan mengenai
komponen-komponen untuk membangun sistem dan interaksi antar komponen sistem
(Pressman, 2010). Model diagram UML yang digunakan pada penelitian ini adalah
use-case diagram, sequence diagram, dan activity digaram.
Universitas Sumatera Utara
20
3.3.1 Use-Case Diagram
Use-case Diagram adalah gambaran skenario penggunaan aplikasi sistem tentang
bagaimana cara sistem bekerja dengan pengguna (Pressman, 2010). Use-case
Diagram membutuhkan identifikasi siapakah pengguna yang akan menggunakan
sistem tersebut. Pengguna tersebut dinamakan actor. Actor berperan untuk melakukan
komunikasi dengan sistem, dimana actor bekerja diluar dari sistem itu sendiri. Pada
penelitian ini actor menginputkan string yang ingin dicari kemudian sistem akan
melakukan pencarian dan menampilkan hasil pencarian.Hubungan antar actor dengan
use-case dihubungkan dengan garis lurus. Sedangkan hubungan dimana satu use-case
digunakan untuk meredudansi use-case lainnya digunakan garis putus-putus dengan
keterangan include. Untuk extend digunakan untuk mensimplifikasi satu use-case
dengan use-case lainnya
Gambar 3.2 Diagram Use-Case
Proses pencarian string pada aplikasi terjemahan Al-Quran, dapat dinyatakan dalam
Tabel 3.1.
Tabel 3.1. Tabel Use Case Pencarian string pada aplikasi terjemahan Al-Quran
menggunakan algoritma Zhu-Takaoka
Universitas Sumatera Utara
21
Name
Pencarian string pada terjemahan Al-Quran dengan
algoritma Zhu-Takaoka
Actors
User
Description
Use Case ini mendeskripsikan proses pencarian dengan
Algoritma Zhu-Takaoka
Basic Flow
User memasukkan string berupa satu kata atau lebih
Alternate Flow
User dapat melakukan pengaturan,loncat dan melihat log
pencarian serta tentang pada aplikasi terjemahan Al-Quran
Pre Condition
-
Post Condition
User mengetahui hasil pencarian string pada terjemahan
Al-Quran
Pada Proses Pencarian, dapat dinyatakan dalam Tabel 3.2.
Tabel 3.2. Tabel Use Case Proses Pencarian
Name
Proses Pencarian
Actors
User
Description
Use Case ini mendeskripsikan proses pencarian seluruh
string yang dicari
Basic Flow
User memasukkan satu kata atau lebih yang menjadi
perhatian
Alternate Flow
User dapat melihat terjemahan Al-Quran yang tersimpan
di database
Pre Condition
User dapat melihat menu awal
Post Condition
Sistem mendapatkan hasil pencarian
Pada Proses Hasil, dapat dinyatakan dalam Tabel 3.3.
Tabel 3.3. Tabel Use Case Proses Hasil
Name
Proses Hasil
Universitas Sumatera Utara
22
Actors
User
Description
Use Case ini mendeskripsikan proses menampilkan hasil
pencarian string pada aplikasi terjemahan Al-Quran
Basic Flow
User memilih menu caripada menu navigasi
Alternate Flow
User dapat melakukan pencarian, pengaturan,loncat dan
melihat log pencarian serta tentang pada aplikasi
terjemahan Al-Quran
Pre Condition
User dapat melihat menu awal lagi untuk kembali ke
terjemahan Al-Quran
Post Condition
User mengetahui hasil pencarian pada Terjemahan AlQuran tersebut tersebut
3.2.2
Sequence Diagram
Sequence Diagram adalah diagram yang menunjukkan hubungan yang terjadi antara
satu objek dengan objek lain. Diagram Sequences digunakan untuk mendekripsikan
pola komunikasi antar objek, dimana diagram Sequences ini menggambarkan urutan
waktu dari aliran pemanggilan pada suatu metode. Berikut diagram Sequence pada
penelitian ini dapat dilihat pada Gambar 3.3.
Gambar 3.3 Diagram Sequence
Universitas Sumatera Utara
23
Pada tahap ini, yang dilakukan adalah pengguna memasukkan string yang akan dicari,
kemudian menyimpan data yang dimasukkan ke database, kemudian database
membaca seluruh data dan proses pencarian dengan algoritma Zhu-Takaoka, sehingga
menampilkan hasil berupa terjemahan ayat yang memiliki string yang di masukkan.
3.2.3
Activity Diagram
Activity Diagram adalah diagram yang menggambarkan alur kerja proses sistem
menggunakan notasi nodes. Activity nodes digunakan untuk menjelaskan alur kontrol
kerja sistem seperti sinkronisasi dan keputusan dari awal sampai berakhirnya proses.
Nodes bulat penuh adalah nodes awal proses, sedangkan nodes bulat penuh ditengah
adalah akhir proses. Activity diagram pada sistem dapat ditunjukkan pada gambar 3.4
Universitas Sumatera Utara
24
Gambar 3.4
ActivityDiagram
3.3
Kamus Data
Kamus data merupakan sebuah daftar yang mengatur semua komponen data
yang berhubungan terhadap sistem dengan definisi singkat dan sejelas-jelasnya
sehingga pengguna dan analisis sistem dapat sama-sama mengerti tentang data
masukan, keluaran, komponen penyimpanan, dan kalkulasi lanjutan. Kamus
data pada sistem dapat dilihat pada Tabel 3.4 berikut.
Tabel 3.4 Kamus Data
Data
Kolom
Tipe
Deskripsi
Universitas Sumatera Utara
25
Data
Id
Integer
Identifier
Juz
Text
Teks nomor juz
Surat
Text
Teks nomor surat
Ayat
Text
Teks nomor ayat berdasarkan
surat
Terjemah
3.4
Text
Teks terjemahan Al-quran
Flowchartdan Pseudocode
Flowchart adalah bagan yang menunjukkan prosedur dan proses pemecahan masalah
sistem. Pseudocode adalah kode semu dari bahasa pemrograman yang digunakan agar
dapat dipahami dan dimengerti oleh stakeholder.
3.4.1 Flowchart System
Flowchart dari sistem yang akan dibangun dapat di lihat pada Gambar 3.5
Gambar 3.5 Flowchart System
Universitas Sumatera Utara
26
3.4.2 Flowchart Algoritma
Flowchart algoritma yang di gunakan dapat di lihat pada Gambar dibawah ini:
Universitas Sumatera Utara
27
Gambar 3.6 Flowchart Proses Pencarian Algoritma Zhu-Takaoka
Universitas Sumatera Utara
28
3.4.2.1 PseudocodeProses Pencarian Algoritma Zhu-Takaoka
void ZT() {
preZtBc()
preBmGs()
int j = 0
int i = 0
while (j