Pembangunan Aplikasi Pelatihan Menulis Huruf Hijaiyah Berbasis Android
Diajukan untuk Menempuh Ujian Akhir Sarjana
WANA GUSTADIPURA
10107025
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2014
(2)
v
ABSTRACT ... ii
KATA PENGANTAR ... iii
DAFTAR ISI ... v
DAFTAR GAMBAR ... ix
DAFTAR TABEL ... xi
DAFTAR SIMBOL ... xiii
DAFTAR LAMPIRAN ... xvi
BAB 1PENDAHULUAN ... 1
1.1 Latar Belakang Masalah ... 1
1.2 ... Identifikasi Masalah ... 2
1.3 Maksud dan Tujuan ... 2
1.4 Batasan Masalah ... 3
1.5 Metodologi Penelitian... 3
1.6 Sistematika Penulisan ... 5
BAB 2LANDASAN TEORI ... 7
2.1 Al-Qur’an ... 7
2.1.1 Huruf Hijaiyah ... 7
2.1.2 Menulis Huruf Hijaiyah ... 8
2.1.3 Khat……….. 8
2.1.4 Pengenalan Gesture touch ... 10
2.1.4.1Pengenalan Gesture Builder ... 11
(3)
vi
2.3.2 Versi Android ... 14
2.3.3 Anatomi Aplikasi Android ... 17
2.3.3.1 Linux Kernel ... 18
2.3.3.2 Libraries ... 18
2.3.3.3 Android Runtime ... 19
2.3.3.4 Application Framework ... 19
2.3.3.5 Application Layer ... 20
2.3.4 Komponen Aplikasi Android ... 20
2.3.4.1 Activities ... 21
2.3.4.2 Services ... 22
2.3.4.3 Intents ... 23
2.3.4.4 Broadcast Receiver ... 23
2.3.4.5 Content Providers ... 23
2.3.5 Tipe Aplikasi Android ... 24
2.3.6 Siklus Hidup Android ... 24
2.3.7 Kelebihan Android ... 25
2.4 Perancangan Berorientasi Objek ... 26
2.4.1 Unified Modelling Language (UML) ... 27
2.4.1.1 Use Case Diagram ... 27
2.4.1.2 Class Diagram ... 28
2.4.1.3 Behavior Diagram... 29
(4)
vii
2.5.3 Perkembangan Eclipse ... 33
2.6 Software Develpment Kit (SDK) ... 33
2.7 Java Development Kit (JDK) ... 34
2.8 Android Development Tools (ADT) ... 34
BAB 3ANALISIS DAN PERANCANGAN SISTEM ... 35
3.1 Analisis Masalah ... 35
3.1.1 Analisis Gesture touch ... 36
3.1.1.1Analisis Proses Recognition Gesture... 36
3.1.1.2Analisis Soal ... 38
3.1.2 Analisis Kebutuhan Non Fungsional ... 39
3.1.2.1Analisis dan Kebutuhan Pengguna ... 39
3.1.2.2Analisis dan Kebutuhan Perangkat Keras ... 39
3.1.2.3Analisis dan Kebutuhan Perangkat Lunak ... 40
3.1.3 Analisis dan Kebutuhan Fungsional ... 40
3.1.3.1Analisis Kebutuhan Sistem ... 40
3.1.3.2Analisis Kebutuhan Data ... 41
3.1.3.3Pemodelan Sistem ... 41
3.2 Perancangan Sistem ... 68
3.2.1 Perancangan Arsitektur ... 68
3.2.1.1Perancangan Struktur Menu ... 68
3.2.1.2Perancangan Grafis dan Antarmuka ... 68
(5)
viii
4.1.1 Perangkat Lunak Pembangunan ... 85
4.1.2 Perangkat Keras Pembangunan ... 85
4.1.3 Perangkat Lunak Penguji ... 86
4.1.4 Perangkat Keras Penguji ... 86
4.1.5 Implementasi Antarmuka ... 86
4.2 Pengujian Perangkat Lunak ... 97
4.2.1 Pengujian Alpha ... 97
4.2.1.1Skenario Pengujian ... 97
4.2.1.2Kasus dan Hasil Pengujian... 98
4.2.1.3Kesimpulan Pengujian Alpha ... 103
4.2.2 Pengujian Beta ... 103
4.2.2.1Kuesioner Pengujian Beta ... 103
4.2.2.2 Pengujian Beta di Madrasah………...110
4.2.2.3Kesimpulan Pengujian Beta ... 114
BAB 5KESIMPULAN DAN SARAN... 115
5.1 Kesimpulan ... 115
5.2 Saran ... 115
(6)
117
[2] M, Hendra (2014) “Rancang Bangun Aplikasi Pembelajaran Iqra Berbasis
Android.”
[3] Jamin, Hamdi (2013) “Pembangunan Aplikasi Pembelajaran Iqra Berbasis
Android”.
[4] BeLogix (2013) “Building App for Android Mobile Device”.
[5] Februari, 2014 , “http://www.ulilalbab.wen.ru”
[6] Februari, 2014 , “http://tifanstar.blogspot.coml”
[7] Februari, 2014, “http://developer.android.co/index.html”
[8] Februari, 2014, http://setuid.pl/podstawy-architektury-systemu-android/
[9] Kasman Dharma, Akhmad (2013). Aplikasi Mobile dengan PHP dan MySql.
Yogyakarta: Penerbit Lokomedia. · Siti mutmainah, Akhmad Dharma ( 2013). Kolaborasi Dahsyat Android dengan PHP & MYSQL.
[10] Salahudin , M ((2013). Rekayasa Perangkat Lunak. Bandung : Informatika
Bandung. M.Salahuddin, Rosa A.S (2013). Rekayasa Perangkat Lunak Terstruktur dan Orientasi objek.
[11] Media, Kana (2014), Islam Anak, Yogyakarta : Kana Media (2014). Cepat Pintar
Membaca & Menulis Huruf Hijaiyah.
[12] Pressman, Roger (2010)., Software Engineering A Practice Approach 7th Edition,
Mac Graw Hill
[13] Safaat H, Nazarudin (2012). Pemrograman Aplikasi Mobile Smartphone dan
Tablet PC Berbasis Android. Bandung: Informatika.
(7)
iii
Nya sehingga akhirnya skripsi ini dapat diselesaikan. Skripsi dengan judul
“PEMBANGUNAN APLIKASI PELATIHAN MENULIS HURUF
HIJAIYAH BERBASIS ANDROID”, yang diajukan untuk menempuh ujian akhir sarjana Program Strata 1 pada Jurusan Teknik Informatika, Universitas Komputer Indonesia.
Penulis menyadari bahwa segala usaha yang dilakukan dalam penulisan ini tida akan berhasil dengan baik tanpa bantuan dan saran dari berbagai pihak. Maka dalam kesempatan ini perkenankanlah penulis mengucapkan terima kasih kepada yang terhormat :
1. Keluarga tercinta yang selalu memberikan doa, kasih sayang, semangat,
motivasi dan dorongan moril maupun materil dengan penuh kasih sayang yang luar biasa kepada penulis selama menyelesaiakan studi ini.
2. Bapak Dr. Ir. Eddi Soeryanto Soegoto, M.Sc. selaku Rektor Universitas
Komputer Indonesia.
3. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc. selaku Dekan Fakultas
Teknik dan Ilmu Komputer Universitas Komputer Indonesia.
4. Bapak Irawan Afrianto, S.T., M.T. selaku Ketua Jurusan Teknik Informatika,
Fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia.
5. Bapak Iskandar Ikbal, S.T., M.Kom. selaku pembimbing yang telah
mengarahkan dan membimbing penulis dalam menyelesaikan penulisan skripsi ini.
6. Bapak Irfan Maliki, S.T., M.T. selaku penguji satu.
7. Bapak Eko Budi Setiawan, S.Kom., M.T. selaku dosen wali yang selalu
memberikan semangat dan motivasi dalam menyelesaikan perkuliahan.
8. Seluruh staf pengajar dan sekretariat Teknik Informatika, yang telah
(8)
iv
Bodi, Eko, Senja, Ipon, Saksono yang selalu memberikan semangat, masukan, ide brilian, kritik dan motivasi di saat penulis terjatuh serta canda dan tawa.
11. Rekan-rekan IF-1 angkatan 2007 terima kasih atas saran, dukungan serta
kebersamaanya.
12. Ateu Tia yang telah dengan sukarela memberikan fasilitas WIFI secara
cuma-cuma kepada penulis selama ini.
13. Anak – anak Tanziel Cipanas Cianjur yang memberi dukungan tiada henti.
14. Semua pihak yang telah membantu penulis dalam skripsi ini yang tidak bisa
penulis sebutkan satu persatu.
Penulis menyadari bahwa penulisan laporan ini masih jauh dari sempurna maka kritik dan saran dari semua pihak dibutuhkan untuk menambah wawasan penulis. Akhir kata semoga ALLAH SWT membalas segala kebaikan yang telah penulis terima dari semua pihak, dan harapan penulis semoga Laporan Skripsi ini dapat bermanfaat bagi pihak yang membutuhkan
Bandung, 21 Agustus 2014
Wana Gustadipura Penulis
(9)
Tempat, Tanggal Lahir : Cianjur, 28 Agustus 1989
Jenis kelamin : Laki - laki
Agama : Islam
Kewarganegaraan : Indonesia
Alamat : jl.sukarajin2 no 37 cikutra rw6rt12 cibenying
kidul, Bandung Kode Pos : 401919 No. Telp : 081312110624
E-mail : Wanna.gustadipura@gmail.com
2. RIWAYAT PENDIDIKAN
1994 – 1995 1995 – 2001
: :
Taman Kanak-kanak Wijaya Kusuma SDN Pacet 1
2001 – 2004 : SMPN 1 cipanas / Al-Khairiyah Ciherang
2004 – 2007 : SMA plus Adda’wah
2007 – 2014 : Fakultas Teknik dan Ilmu Komputer Jurusan Teknik
Informatika Universitas Komputer Indonesia Bandung
Demikian riwayat hidup ini saya buat dengan sebenar-benarnya dalam keadaan sadar dan tanpa paksaan.
Bandung, 21 Agustus 2014
(10)
1
BAB 1
PENDAHULUAN
1.1 Latar Belakang Masalah
Al-Qur’an adalah Kalam Allah yang merupakan mukzizat diturunkan (diwahyukan) kepada Nabi Muhammad SAW. Setiap mukmin mempunyai kewajiban dan tangung jawab terhadap kitab suci, diantara tanggung jawab itu
adalah mempelajari dan mengamalkan kitab suci Al-Qur’an, serta mempelajari
bagaimana menulis dan membaca Al-Qur’an yang baik. Sebelum mempelajari
bagaimana menulis dan membaca Al-Qur’an, seorang muslim diharuskan terlebih
dahulu mengenal terlebih dahulu huruf–huruf yang digunakan didalam Al-Qur’an.
Huruf hijaiyah adalah huruf yang digunakan dalam Al-Qur’an, terdiri dari dua
puluh sembilan huruf, terbagi menjadi dua bagian diantaranya Al-qomariyah
yang berarti jelas dan Al-syamsiyah yang berarti tidak jelas (samar) [6].
Banyak media yang bisa digunakan untuk mengenal huruf hijaiyah, Iqra
salah satunya yang biasa dipelajari di tempat-tempat belajar. Seperti sekolah, TPA (Taman Pendidikan Al-Qur’an), ataupun orang tua dirumah. Selain Iqra banyak buku latihan menulis huruf hijaiyah, akan tetapi jika digunakan berulang-ulang media akan mudah rusak dan menjadi kurang interaktif. Adapun masalah lain yang dihadapi ketika muslim ingin belajar mengenal huruf hijaiyah, Seperti anak merasa bosan, mengantuk dan menjadi malas untuk belajar ketika pergi ke Taman Pendidikan Al-Quran, karena setelah pulang sekolah mereka harus dituntut menimba ilmu lagi, atau tidak sempatnya orang dewasa pergi ketempat kursus karena kurangnya waktu luang yang dimiliki disebabkan aktifitas lebih seperti bekerja, sekolah, kuliah dan lain sebagainya.
Berdasarkan permasalahan yang telah dijelaskan maka dibutuhkannya suatu media pembelajaran lain dalam mengenal dan melatih menulis huruf hijaiyah.
(11)
Menggunakan sistem operasi android memiliki keuntungan sendiri karena
memiliki sifat terbuka (open source), dengan kata lain pengembang software bisa
memanfaatkan sistem operasi ini dengan membangun atau menciptakan aplikasi
baru, berdasarkan IDC (International Data Corporation) android merupakan
sistem operasi yang sedang populer saat ini dengan menguasai 80% lebih pasar ponsel di dunia [7], layak jika membuat aplikasi yang bisa bermanfaat untuk umat muslim sebagai alat bantu mengenal huruf hijaiyah, melatih menulis huruf hijaiyah, serta melakukan tes atau ujian menulis huruf hijaiyah dengan sistem yang melakukan penilaian, layak jika memanfaatkan sistem operasi android untuk
membangun sebuah aplikasi pelatihan menulis huruf hijaiyah yang dapat
digunakan berulang-ulang, sehingga pengguna akan lebih cepat mahir menulis ataupun mengenal huruf-huruf hijaiyah.
Berdasarkan uraian tersebut maka penelitian ini diberi judul “Pembangunan Aplikasi Pelatihan Menulis Huruf Hijaiyah Berbasis Android”. Dengan harapan bisa bermanfaat serta membantu permasalahan yang telah di jelaskan diatas.
1.2 Identifikasi Masalah
Berdasarkan penjelasan dari latar belakang yang ada, maka perumusan masalahnya sebagai berikut :
1. Bagaimana membangun aplikasi alternatif mobile yang dapat digunakan
untuk membatu latihan mengenal dan menulis huruf hijaiyah.
2. Bagaimana membangun aplikasi pelatihan menulis huruf hijaiyah yang
menarik dan interaktif.
1.3 Maksud dan Tujuan
Berdasarkan permasalahan yang diteliti, maka maksud dari penulisan tugas akhir ini adalah untuk membangun aplikasi bantu menulis huruf hijaiyah
sebagai media edukasi muslim berbasis Android.
(12)
1. Membangun aplikasi alternatif mobile sebagai alat bantu latih mengenal
dan menulis huruf hijaiyah.
2. Dengan memanfaatkan gesture touch pada android sebagai sarana latihan
menulis huruf hijaiyah sehingga lebih menarik dan interaktif.
1.4 Batasan Masalah
Dalam penelitian tugas akhir ini, ada beberapa batasan masalah yaitu sebagai berikut :
1. Aplikasi ini diimplementasikan pada smartphone dengan sistem operasi
Android 2.3 Gingger Bread sampai Android 4.2 jellybean.
2. Huruf yang diimplementasikan adalah huruf hijaiyah.
3. Menulis huruf hijaiyah yang diimplementasikan pada sebuah layar
(drawing screen) dengan memanfaatkan gesture touch.
4. Format gambar yang dipakai PNG (Portable Network Graphics) yang
mendukung tranparansi sangat baik dengan 24 bit RGB + alpha.
5. Paradigma Pemrograman sistem menggunakan Object Oriented
Programing (OOP) dengan Unified Modeling Language (UML).
6. Bahasa pemrograman yang digunakan membangun aplikasi adalah java.
7. Tools yang akan digunakan untuk pembuatan Gambar yang digunakan yaitu Adobe Photoshop CS3.
8. Tools pembangunan aplikasi yang digunakan atau Integrated Developmet Envirnment (IDE) adalah Eclipse 4.2 (juno), JDK 7 update 51, Android Development Tools (ADT) versi 22.3 update package.
1.5 Metodologi Penelitian
Metodologi yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut :
1. Tahap pengumpulan data
Tahap pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut :
(13)
Pengumpulan data dengan cara mengumpulkan literatur, jurnal, paper dan bacaan-bacaan yang ada kaitannya dengan judul penelitian.
b) Observation
Data yang dikumpulkan dengan cara mengadakan penelitian dan peninjauan langsung terhadap permasalahan yang diambil.
c) Interview
Data yang dikumpulkan dengan cara mengadakan tanya jawab secara langsung yang ada kaitannya dengan topik yang diambil.
2. Tahap pembuatan perangkat lunak.
Dalam pembuatan perangkat lunak menggunakan paradigma perangkat
lunak secara waterfall, yang meliputi beberapa proses diantaranya:
a. System / Information Engineering
Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya kedalam pembentukan perangkat lunak, menentukan kebutuhan fungsional ataupun non fungsional dalam pembangunan aplikasi, sepeti format gambar yang digunakan atau menetukan spesifikasi minimum perangkat keras.
b. Analysis
Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan
proyek pembuatan perangkat lunak seperti perancangan model use case, alur
kerja sistem, metode, dan algoritma yang dipakai dalam pembangunan aplikasi.
c. Design
Tahap penerjemahan dari data yang dianalisis kedalam bentuk yang mudah
dimengerti oleh user (user friendly), penentuan warna, penempatan tombol
menjadi perhatian dalam pembangunan aplikasi .
d. Coding
Tahap penerjemahan data atau pemecahan masalah yang telah dirancang keadalam bahasa pemrograman tertentu
(14)
Merupakan tahap pengujian terhadap perangkat lunak yang dibangun dimana tahapan ini bisa di sebut tahapan akhir dalam pembangunan aplikasi, setelah melakukan analisis, pengkodean, dan desain, maka aplikasi siap digunakan oleh user.
f. Maintenance
Tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat mengalami
perubahan–perubahan , penambahan sesuai dengan permintaan user atau bugs
yang ada dalam aplikasi.
1.6 Sistematika Penulisan
Sistematika penulisan tugas akhir ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :
(15)
BAB I PENDAHULUAN
Menguraikan tentang latar belakang masalah, identifikasi masalah, maksud dan tujuan dibuatnya aplikasi, metodologi penelitian yang digunakan, batasan masalah serta sistematika penulisan.
BAB II. LANDASAN TEORI
Membahas berbagai konsep dasar dan teori-teori yang berkaitan dengan “Pembangunan aplikasi pelatihan menulis huruf hijaiyahBerbasis Android”.
BAB III. ANALISIS MASALAH
Menganalisis masalah yang dihadapi dalam pembuatan tugas akhir yang
berjudul Pembangunan Aplikasi Pelatihan Menulis Huruf Hijaiyah Berbasis
Android.
BAB IV. PERANCANGAN DAN IMPLEMENTASI
Menjelaskan tentang perancangan dalam pembuatan sistem dan tahapan-tahapan yang dilakukan untuk menerapkan sistem yang telah dirancang
BAB V. KESIMPULAN DAN SARAN
Berisi kesimpulan dan saran yang sudah diperoleh dari hasil penulisan tugas akhir.
(16)
7
2.1 Al-Qur’an
Al-Quran berasal dari bahasa Arab yang berarti bacaan atau sesuatu yang
dibaca berulang-ulang. Umat islam percaya bahwa Al-Qur'an merupakan puncak
dan penutup wahyu Allah yang diperuntukkan bagi manusia, dan bagian dari
rukun iman, yang disampaikan kepada Nabi Muhammad Shallallahu ‘alaihi wa
sallam, melalui perantaraan Malaikat Jibril. Maka setiap muslim (beragama islam)
diwajibkan bisa untuk mempelajari serta mengamalkan Al-Quran, yang di
dalamnya terkandung bagaimana menjalani hidup di dunia dan mendapatkan surga (selamat dunia akhirat). Di indonesia sendiri terdapat beberapa metode
pembelajaran Al-Quran. Salah satunya dengan melatih menulis huruf – huruf
Al-Quran yaitu huruf hijaiyah [8].
2.1.1 Huruf Hijaiyah
Huruf hijaiyah adalah huruf yang digunakan dalam Al-Qur’an, terdiri dari
dua puluh sembilan huruf, terbagi menjadi dua bagian diantaranya Al-qomariyah
yang berarti jelas dan Al-syamsiyah yang berarti tidak jelas (samar) [6]. Banyak metode pelatihan atau pembelajaran membaca serta menulis huruf hijaiyah, salah satunya adalah iqra.
(17)
Gambar 2.1 Huruf hijaiyah [7] 2.1.2 Menulis Huruf Hijaiyah
Pelatihan atau pembelajaran baca-tulis al-Qur’an adalah kegiatan
pembelajaran membaca dan menulis yang ditekankan pada upaya memahami informasi, tetapi ada pada tahap menghafalkan (melesankan) lambang-lambang dan mengadakan pembiasaan dalam melafadkannya serta cara menuliskannya. Adapun tujuan dari pelatihan atau pembelajaran huruf hijaiyah yaitu huruf yang
digunakan dalam kitab suci al-Qur‟an ini adalah agar dapat membaca katakata
dengan kalimat sederhana dengan lancar dan tertib serta dapat menulis huruf dan lambang-lambang arab dengan rapi, lancar dan benar.
2.1.3 Khat
Definisi Kaligrafi dan Khat - Kaligrafi berasal dari bahasa Yunani. (kallos) berarti indah dan (graphe) yang artinya tulisan. Syaikh Syamsuddin Al Akhfani (Dalam Irsyad Al Qoshid, 2000) Kaligrafi adalah suatu ilmu yang memperkenalkan beberapa bentuk-bentuk huruf tunggal, letak-letaknya, dan beberapa cara merangkainya sehingga menjadi sebuah kalimat tersusun. Atau apa-apa yang ditulis di atas garis-garis, bagaimana cara menulisnya dan menentukan mana yang tidak perlu ditulis, mengubah ejaan yang perlu diubah dan menentukan cara bagaimana untuk mengubahnya.
(18)
Khat ialah perkataan Arab yang bermaksud garisan. Oleh itu, seni khat bermaksud garisan indah yang membentuk tulisan. Khat juga bermaksud tulisan-tulisan (kitabah ) yang terikat dengan peraturan dan kaedah yang telah dikaji dan ditentukan oleh mereka yang terlibat dengan kemajuan seni. Tulisan-tulisan Arab pula mempunyai nilai dan kaedah tertentu yang mempunyai estetika yang tinggi. etelah kehadiran Islam, penulisan Arab telah memasuki tahap perkembangan yang begitu cepat. Pada abad pertama dan kedua Hijrah, khat merupakan salah satu ciri untuk memperindah sesuatu penulisan. Melalui khat, sesuatu maksud dapat diungkapkan. Khat turut menjadi unsur penting daripada cabang-cabang kesenian yang masih terpelihara hingga ke hari ini.
Banyak jenis-jenis gaya khat Salah satunya adalah diwani salah satu gaya
khat yang diciptakan oleh masyarakat Turki Usmani. Peletak dasar-dasar kaidah dan ukuran huruf-hurufnya adalah Ibarhim Munif. Tulisan ini mulai popular setelah penaklukan kota Konstantinopel oleh Sultan Muhammad al-Fatih 875 H. Penamaan Diwani karena dinisbahkan kepada kantor-kantor pemerintahan dimana tulisan tersebut digunakan dan dewan-dewan pemerintah itulah khat ini menyebar keseluruh kalangan masyarakat. Karakter Diwani terkenal dengan putaranya sehingga tidak satu pun huruf yang tidak mempunyai lengkungan. Goresannya yang lentur dan lembut memudahkan Diwani beradaptasi dengan tulisan apapun. Diwani memiliki 3 macam bentuk.
1. Khat Diwani ‘Adi
Diwani ‘Adi merupakan gaya khat yang tampil biasa(„adi) sesuai struktur tulisan sehingga mudah dibaca. Cirri tampilannya tampak pada kali-kali tulisan yang umumnya berbaris datar dengan pucuk-pucuk huruf bergelombang dinamis.
2. Khat Diwani Murabbit
Gaya ini merupakan Diwani yang huruf-huruf dan rangkaian katanya saling menjalin atau bersilangan (murabbit) satu sama lain. Besar kemungkinan pola semacam ini merupakan hasil pengaruh khat Musalsal ciptaan Ibnu Bawab.
(19)
Dalam jenis Khat Diwani Murabbit ini, kaligrafer modern Gazian Bek dari Mesir merupakan tokohnya.
Gambar 2.2 Seni Khat
3. Khat Diwani Jali
Khat Diwani jali diciptakan oleh Syahlan Pasha dari Turki dan merupakan pengembangan dari Diwani „Adi. Jali artinya Jelas. Kejelasan tersebut tampak pada detail syakal dan hiasan yang penuh didalamnya. Tujuan diciptakan Diwani jali ialah untuk menuliskan peraturan-peraturan kesultanan dan surat-surat keluar negeri.
2.1.4 Pengenalan Gesture touch
Gestures touch biasanya digunakan dari gerakan atau pergeseran jari pada layar sentuh sensitif pada Android, yang diproses menggunakan package
android.gesture . Gerakan yang paling umum adalah tap, yang seperti klik mouse
pada komputer. Gesture tertentu juga terdeteksi melalui antarmuka
View.OnClickListener. Gerakan berikutnya adalah drag atau seret (seperti
menyeret dengan mouse pada komputer), sebagai contoh ketika pertama kali
(20)
pada Android dengan melakukan gerakan drag atau seret. contoh sederhananya
ketika Gesture package akan melaporkan urutan gerakan jari pada layar sentuh
secara penuh dan memungkinkan aplikasi untuk mendeteksi , misalnya, ketika membuat gerakan busur melengkung , ketika membuat gerakan searah jarum jam atau berlawanan dan jika gerakan itu lambat ataupun cepat . Aplikasi harus bisa mengkonversi titik koordinat X/Y dan waktu untuk mencari tahu apa
gerakannya, gerakan – gerakan tersebut bisa manfaatkan pada aplikasi - aplikasi
android,seperti pada game,widget,aplikasi menggambar dan sebagainya.
2.1.4.1Pengenalan Gesture Builder
Gesture Builder adalah sebuah tool yang digunakan untuk membuat suatu
library dari gesture. Ketika aplikasi menjalankan sebuah gesture, aplikasi akan
mencocokan gerakan tersebut ke GestureLibrary dan menentukan apakah gesture
itu cocok dengan salah satu gesture yang sudah ada di library.
2.1.4.2Pengenalan Gesture Library
Gesture Libary dibuat menggunakan tool yang di sediakan pengembang yaitu gesture builder, gesture library disimpan satu paket dengan aplikasi dan dipanggil dari raw resource dimana gesture library itu disimpan, dibawah ini adalah struktur dari gesture library.
(21)
2.2 Aplikasi
Aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media. Beberapa aplikasi yang digabung
bersama menjadi suatu paket kadang disebut suatu paket atau suite aplikasi
(Application Suite). Contohnya adalah Microsoft Office dan OpenOffice, yang menggabungkan suatu aplikasi pengolah kata, lembar kerja, serta beberapa aplikasi lainnya. Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan tiap aplikasi. Seringkali, mereka memiliki kemapuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya, suatu lembar kerja dapat dibenamkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah.
2.3 Android
(22)
Android adalah sistem operasi yang berbasis Linux untuk telepon seluler
seperti telepon pintar (Smartphone) dan komputer tablet. Android menyediakan
platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka
sendiri untuk digunakan oleh bermacam peranti begerak. Awalnya, Google Inc.
membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel.
Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance,
konsorsium dari 34 perusahaan piranti keras, piranti lunak dan telekomunikasi,
termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile dan Nvidia.
Bebrapa pengertian lain dari Android, yaitu :
1. Merupakan platform terbuka (Open Source) bagi para programmer untuk
membuat atau mengembangkan aplikasi.
2. Merupakan sistem operasi yang dibeli Google Inc dari Android Inc.
3. Bukan bahasa pemrograman, akan tetapi hanya menyediakan lingkungan
hidup atau runtime environment yang disebut DVM (Dalvik Virtual
Machine) yang telah dioptimasi untuk device dengan sistem memori yang kecil.
2.3.1 Sejarah Android
Pada Juli 2000, Google bekerjasama dengan Android Inc., perusahaan
yang berada di Palo Alto, California, Amerika Serikat. Para pendiri Android Inc.
bekerja pada Google, diantaranya Andy Rubin, Rich Miner, Nick Sears dan Chris
White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai
perangkat lunak pada telepon seluler. Sejak saat itu muncul rumor bahwa Google
hendak memasuki pasar telepon seluler. Di perusahaan Google, tim yang dipimpin
Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh
Kernel Linux. Hal ini menunjukan indikasi bahwa Google sedang bersiap
menghadapi persaingan dalam pasara telepon seluler. Versi android terbaru yaitu
versi 5.0. (KitKat). Android juga sudah bergabung dengan beberapa smart mobile
(23)
Sekitar September 2007 sebuah studi melaporkan bahwa Google
mengajukan hak paten aplikasi telepon seluler (akhirnya Google mengenalkan
Nexus One, salah satu jenis telepon pintar GSM yang menggunakan Android pada
sistem operasinya. Telepon seluler ini diproduksi oleh HTC Corporotaion dan
tersedia di pasaran pada 5 Januari 2010).
Pada Desember 2008, diumumkan anggota baru yang bergabung dalam
program kerja Android ARM Holdings, Atheros Communications, diproduksi oleh
Asustek Computer Inc. Garmin Ltd, Softbank, Sony Ericsson Toshiba Corp dan
Vodafone Group Plc. Seiring pembentukan Open Handset Alliance, OHA
mengumumkan produk perdana mereka, Android, perangkat bergerak (Mobile)
yang merupakan modifikasi kernel Linux 2.6. sejak Android dirilis telah dilakukan
berbagai pembaruan berupa perbaikan bug dan penambahan fitur baru.
2.3.2 Versi Android
Banyak smartphone dan PC Tablet menggunakan sistem operasi dengan
versi yang berbeda. Semakin tinggi versi, fiturnya semakin canggih dan banyak.
Telepon pertama yang memakai sistem operasi Android adalah HTC Dream yang
dirilis pada tanggal 22 Oktober 2008. Beberapa uraian versi android seperti
dibawah ini :
1. Android versi 1.1
Pada 9 Maret 2009, Google merilis Android versi 1.1. Android
versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm,
voice search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan Email.
2. Android versi 1.5 (Cupcake)
Pada pertengahan Mei 2009, Google kembali merilis telepon
seluler dengan menggunakan Android dan SDK (Software Development
Kit) dengan versi 1.5 (Cupcake). Terdapat beberapa pembaruan termasuk
juga penambahan beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video
(24)
ke Youtube dan gambar ke Picasa langsung dari telepon, dukungan
Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset bluetooth, animasi layar dan keyboard pada layar yang dapat disesuaikan dengan sistem.
3. Android versi 1.6 (Donut)
Donut (versi 1.6) dirilis pada September dengan menampilkan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan
baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang
memungkinkan pengguna untuk memilih foto yang akan dihapus pada
kamera, camcorder dan galeri yang diintegrasikan pada CDMA / EVDO,
802.1x, VPN, Gestures, dan Text-to-spech engine. Kemampuan dial
kontak teknologi text to change speech (tidak tersedia pada semua ponsel).
4. Android versi 2.0/2.1 (Eclair)
Pada 3 Desember 2009 kembali diluncurkan ponsel Android
dengan versi 2.0/2.1 (Eclair), perubahan yang dilakukan adalah
mengoptimalkan hardware, peningkatan Google Maps 3.1.2, perubahan
UI dengan browser baru dan dukungan HTML 5, daftar kontak yang baru, dukungan flash untuk kamera 3.2 MP, digital zoom, dan Bluetooth 2.1.
Untuk bergerak cepat dalam persaingan perangkat generasi berikut, Google melakukan investasi dengan mengadakan kompetisi aplikasi
mobile terbaik (killer apps-aplikasi unggulan). Kompetisi ini berhadiah $25,000 bagi setiap pengembang aplikasi terpilih. Kompetisi diadakan selama dua tahap yang tiap tahapnya dipilih 50 aplikasi terbaik.
Dengan semakin berkembangnya dan semakin bertambahnya
jumlah handset Android, semakin banyak pihak ketiga yang berminat
untuk menyalurkan aplikasi mereka kepada sistem operasi Android.
Aplikasi terkenal yang diubah ke dalam sistem operasi Android adalah
Shazam, Backgrounds dan WeatherBug.
Sistem operasi Android dalam situs internet juga dianggap penting
untuk menciptakan aplikasi Android asli, contohnya oleh MySpace dan
(25)
5. Android versi 2.2 (Froyo : Frozen Yoghurt)
Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan.
Perubahan-perubahan umumnya terhadap versi-versi sebelumnya antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, integrasi dengan V8 JavaScript engine yang dipakai Google Chrome yang mempercepat kemampuan rendering pada browser, pemasangan aplikasi dalam SD Card, kemampuan WiFi Hotspot portabel
dan kemampuan auto update dalam aplikasi Android Market.
6. Android versi 2.3 (Gingerbread)
Pada 6 Desember 2010, Android versi 2.3 (Gingerbread)
diluncurkan. Perubahan-perubahan umum yang didapat dari versi ini
antara lain peningkatan kemampuan permainan (gaming), peningkatan
fungsi copy paste, layar antarmuka (User Interface) didesain ulang,
dukungan format video VP8 dan WebM, efek audio baru (reverb,
equalization, headphone virtualization, dan bass boost), dukungan
kemampuan Near Field Communication (NFC) dan dukungan jumlah
kamera yang lebih dari satu. 7. Android versi 3.1 (Honeycomb)
Android Honeycomb dirancang khusus untuk tablet. Android versi
ini mendukung ukuran layar yang lebih besar. User Interface pada
Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb
juga mendukung multi prosesor dan juga akselerasi perangkat keras (hardware) untuk grafis. Tablet peratam yang dibuat dengan menjalankan
Honeycomb adalah Motorola Xoom. 8. Android versi 4.0 (Ice Cream Sandwich)
Diumumkan pada tanggal 19 Oktober 2011, membawa fitur
Honeycomb untuk smartphone dan menambahkan fitur baru termasuk membuka kunci dengan pengenalan wajah, jaringan data pemantauan penggunaan dan kontrol, terpadu kontak jaringan sosial, perangkat
tambahan fotografi, mencari email secara offline dan berbagi informasi
(26)
9. Android versi 4.1 (Jelly Bean)
Pada tanggal 27 Juni 2012 Google mengumumkan Android versi
4.1 (Jelly Bean) dalam konferensi Google I/O berdasarkan kernel Linux
3.0.31. Jelly Bean adalah pembaruan penting yang bertujuan untuk
meningkatkan fungsi dan kinerja antarmuak pengguna (User Interface).
Pembaruan ini diwujudkan dalam proyek Butter, perbaikan ini termasuk
antisipasi sentuh, triple buffering, perpanjangan waktu vsync dan
peningkatan frame rate hingga 60fps untuk menciptakan UI yang lebih
halus. Perangkat pertama yang menggunakan sistem operasi ini adalah tablet Nexus 7, yang dirilis pada 13 Juli 2012.
10. Android versi 4.4 (KitKat)
Android versi 4.4 (KitKat) direncanakan akan dirilis pada bulan Oktober 2013. Setelah sebelumnya beredar rumor bahwa Android versi
berikutnya setelah Jelly Bean diperkirakan akan diberi nomor 5.0 dan
dinamai Key Lime Pie.
2.3.3 Anatomi Aplikasi Android
Dalam paket sistem operasi Android tediri dari beberapa unsur seperti tampak pada gambar 2.1. Secara sederhana arsitektur Android merupakan sebuah
kernel Linux dan sekumpulan pustaka C / C++ dalam suatu Framework yang
(27)
Gambar 2.5 Detail Anatomi Android [9] 2.3.3.1Linux Kernel
Android dibangun di atas kernel Linux 2.6. Namun secara keseluruhan Android bukanlah linux, karena dalam Android tidak terdapat paket standar yang dimiliki oleh linux lainnya. Linux merupakan sistem operasi terbuka yang handal dalam manajemen memori dan proses. Oleh karenanya pada Android hanya terdapat beberapa pelayanan yang diperlukan seperti keamanan, manajemen
memori, manajemen proses, jaringan dan driver. Kernel linux menyediakan driver
layar, kamera, keypad, WiFi, Flash Memory, audio, dan IPC (Interprocess
Communication) untuk mengatur aplikasi dan lubang keamanan.
2.3.3.2Libraries
Android menggunakan beberapa paket pustaka yang terdapat pada C/C++
dengan standar Berkeley Software Distribution (BSD) hanya setengah dari yang
aslinya untuk tertanam pada kernel Linux. Beberapa pustaka diantaranya:
1. Media Library untuk memutar dan merekam berbagai macam format audio dan video.
(28)
3. Graphic Library termasuk didalamnya SGL dan OpenGL, untuk tampilan 2D dan 3D.
4. SQLite untuk mengatur relasi database yang digunakan pada aplikasi.
5. SSl dan WebKit untuk browser dan keamanan internet.
Pustaka-pustaka tersebut bukanlah aplikasi yang berjalan sendiri, namun hanya dapat digunakan oleh program yang berada di level atasnya. Sejak versi Android 1.5, pengembang dapat membuat dan menggunakan pustaka sendiri
menggunakan NativeDevelopmentToolkit (NDK).
2.3.3.3Android Runtime
Pada Android tertanam paket pustaka inti yang menyediakan sebagian besar fungsi Android. Inilah yang membedakan Android dibandingkan dengan
sistem operasi lain yang juga mengimplementasikan Linux. Android Runtime
merupakan mesin virtual yang membuat aplikasi Android menjadi lebih tangguh dengan paket pustaka yang telah ada. Dalam Android Runtime terdapat 2 bagian utama, diantaranya :
1. Pustaka Inti, Android dikembangkan melalui bahasa pemrograman Java,
tapi Android Runtime bukanlah mesin virtual Java. Pustaka inti Android menyediakan hampir semua fungsi yang terdapat pada pustaka Java serta beberapa pustaka khusus Android.
2. Mesin Virtual Dalvik, Dalvik merupakan sebuah mesin virtual yang
dikembangkan oleh Dan Bornstein yang terinspirasi dari nama sebuah perkampungan yang berada di Iceland. Dalvik hanyalah interpreter mesin
virtual yang mengeksekusi file dalam format Dalvik Executable (*.dex).
Dengan format ini Dalvik akan mengoptimalkan efisiensi penyimpanan dan pengalamatan memori pada file yang dieksekusi. Dalvik berjalan di
atas kernel Linux 2.6, dengan fungsi dasar seperti threading dan
(29)
2.3.3.4Application Framework
Kerangka aplikasi menyediakan kelas-kelas yang dapat digunakan untuk mengembangkan aplikasi Android. Selain itu, juga menyediakan abstraksi generik
untuk mengakses perangkat, serta mengatur tampilan User Interface dan sumber
daya aplikasi. Bagian terpenting dalam kerangka aplikasi Android adalah sebagai berikut:
1. Activity Manager, berfungsi untuk mengontrol siklus hidup aplikasi dan
menjaga keadaan ”Backstack“ untuk navigasi penggunaan.
2. Content Providers, berfungsi untuk merangkum data yang memungkinkan digunakan oleh aplikasi lainnya, seperti daftar nama.
3. ResuourceManager, untuk mengatur sumber daya yang ada dalam program. Serta menyediakan akses sumber daya diluar kode program, seperti karakter, grafik, dan filelayout.
4. LocationManager, berfungsi untuk memberikan informasi detail mengenai lokasi perangkat Android berada.
5. NotificationManager, mencakup berbagai macam peringatan seperti, pesan
masuk, janji, dan lain sebagainya yang akan ditampilkan pada statusbar.
2.3.3.5Application Layer
Puncak dari diagram arsitektur Android adalah lapisan aplikasi dan widget.
Lapisan aplikasi merupakan lapisan yang paling tampak pada pengguna ketika menjalankan program. Pengguna hanya akan melihat program ketika digunakan tanpa mengetahui proses yang terjadi dibalik lapisan aplikasi. Lapisan ini berjalan
dalam Android runtime dengan menggunakan kelas dan service yang tersedia
pada Framework aplikasi.
Lapisan aplikasi Android sangat berbeda dibandingkan dengan sistem
operasi lainnya. Pada Android semua aplikasi, baik aplikasi inti (native) maupun
aplikasi pihak ketiga berjalan diatas lapisan aplikasi dengan menggunakan
(30)
2.3.4 Komponen Aplikasi Android
Fitur penting Android adalah bahwa satu aplikasi dapat menggunakan elemen dari aplikasi lain (untuk aplikasi yang memungkinkan). Sebagai contoh,
sebuah aplikasi memerlukan fitur scroller dan aplikasi lain telah mengembangkan
fitur scroller yang baik dan memungkinkan aplikasi lain menggunakannya. Maka
pengembang tidak perlu lagi mengembangkan hal serupa untuk aplikasinya,
cukup menggunakan scroller yang telah ada.
Agar fitur tersebut dapat bekerja, sistem harus dapat menjalankan aplikasi ketika setiap bagian aplikasi itu dibutuhkan, dan pemanggilan objek java untuk bagian itu. Oleh karenanya Android berbeda dari sistem-sistem lain, Android tidak memiliki satu tampilan utama program seperti fungsi main() pada aplikasi lain. Sebaliknya, aplikasi memiliki komponen penting yang memungkinkan sistem untuk memanggil dan menjalankan ketika dibutuhkan.
2.3.4.1Activities
Activity merupakan bagian yang paling penting dalam sebuah aplikasi,
karena Activity menyajikan tampilan visual program yang sedang digunakan oleh
pengguna. Setiap Activity dideklarasikan dalam sebuah kelas yang bertugas untuk
menampilkan antarmuka pengguna yang terdiri dari Views dan respon terhadap
Event. Setiap aplikasi memiliki sebuah activity atau lebih. Biasanya pasti akan ada
activity yang pertama kali tampil ketika aplikasi dijalankan.
Perpindahan antara activity dengan activity lainnya diatur melalui sistem,
dengan memanfaatkan activity stack. Keadaan suatu activity ditentukan oleh
posisinya dalam tumpukan acitivity, LIFO (Last InFirst Out) dari semua aplikasi
yang sedang berjalan. Bila suatu activity baru dimulai, activity yang sebelumnya
digunakan maka akan dipindahkan ketumpukan paling atas. Jika pengguna ingin
menggunakan activity sebelumnya, cukup menekan tombol Back, atau menutup
activity yang sedang digunakan, maka activity yang berada diatas akan aktif
kembali. Memory Manager Android menggunakan tumpukkan ini untuk
menentukan prioritas aplikasi berdasarkan activity, memutuskan untuk mengakhiri
(31)
Ketika activity diambil dan disimpan dalam tumpukkan activity terdapat 4 kemungkinan kondisi transisi yang akan terjadi :
1) Active, setiap activity yang berada ditumpukan paling atas, maka dia akan terlihat, terfokus, dan menerima masukkan dari pengguna. Android akan
berusaha untuk membuat activity aplikasi ini untuk untuk tetap hidup
dengan segala cara, bahkan akan menghentikan activity yang berada
dibawah tumpukkannya jika diperlukan. Ketika activity sedang aktif, maka
yang lainnya akan dihentikan sementara.
2) Paused, dalam beberapa kasus activity akan terlihat tapi tidak terfokus pada kondisi inilah disebut paused. Keadaan ini terjadi jika activity
transparan dan tidak fullscreen pada layar. Ketika activity dalam keadaan
paused, dia terlihat active namun tidak dapat menerima masukkan dari
pengguna. Dalam kasus ekstrim, Android akan menghentikan activity
dalam keadaan paused ini, untuk menunjang sumber daya bagi activity
yang sedang aktif.
3) Stopped, ketika sebuah activity tidak terlihat, maka itulah yang disebut
stopped. Activity akan tetap berada dalam memori dengan semua keadaan dan informasi yang ada. Namun akan menjadi kandidat utama untuk dieksekusi oleh sistem ketika membutuhkan sumberdaya lebih. Oleh
karenanya ketika suatu activity dalam kondisi stopped maka perlu
disimpan data dan kondisi antarmuka saat itu. Karena ketika activity telah
keluar atau ditutup, maka dia akan menjadi inactive.
4) Inactive, kondisi ketika activity telah dihentikan dan sebelum dijalankan.
Inactive activity telah ditiadakan dari tumpukan activity sehingga perlu
restart ulang agar dapat tampil dan digunakan kembali.
Kondisi transisi ini sepenuhnya ditangani oleh manajer memori Android.
Android akan memulai menutup aplikasi yang mengandung activity inactive,
kemudian stopped activity, dan dalam kasus luar biasa paused activity juga akan
(32)
2.3.4.2Services
Suatu service tidak memiliki tampilan antarmuka, melainkan berjalan di
background untuk waktu yang tidak terbatas. Komponen service diproses tidak
terlihat, memperbarui sumber data dan menampilkan notifikasi. Service digunakan
untuk melakukan pengolahan data yang perlu terus diproses, bahkan ketika
Activity tidak aktif atau tidak tampak.
2.3.4.3Intents
Intens merupakan sebuah mekanisme untuk menggambarkan tindakan tertentu, seperti memilih foto, menampilkan halaman web, dan lain sebagainya.
Intents tidak selalu dimulai dengan menjalankan aplikasi, namun juga digunakan oleh sistem untuk memberitahukan ke aplikasi bila terjadi suatu hal, misal pesan masuk. Intents dapat eksplisit atau implisit, contohnya jika suatu aplikasi ingin
menampilkan URL, sistem akan menentukan komponen apa yang dibutuhkan oleh
Intents tersebut.
2.3.4.4Broadcast Receiver
Broadcast Receivers merupakan komponen yang sebenarnya tidak
melakukan apa-apa kecuali menerima dan bereaksi menyampaikan
pemberitahuan. Sebagian besar Broadcast berasal dari sistem misalnya, Batre
sudah hampir habis, informasi zona waktu telah berubah, atau pengguna telah
merubah bahasa default pada perangkat. Sama halnya dengan service, Broadcast
Receivers tidak menampilkan antarmuka pengguna. Namun, BroadcastReceivers
dapat menggunakan NotificationManager untuk memberitahukan sesuatu kepada
pengguna.
2.3.4.5Content Providers
ContentProviders digunakan untuk mengelola dan berbagi database. Data dapat disimpan dalam file sistem, dalam database SQLite, atau dengan cara lain
yang pada prinsipnya sama. Dengan adanya Content Provider memungkinkan
(33)
sebuah aplikasi membutuhkan data dari aplikasi lain, sehingga mudah dalam penerapannya.
2.3.5 Tipe Aplikasi Android
Terdapat tiga kategori aplikasi pada Android :
1. ForegroundActivity
Aplikasi yang hanya dapat dijalankan jika tampil pada layar dan tetap efektif walaupun tidak terlihat. Aplikasi dengan tipe ini pasti
mempertimbangkan siklus hidup activity, sehingga perpindahan antar
activity dapat berlangsung dengan lancar.
2. BackgroundService
Aplikasi yang memiliki interaksi terbatas dengan user, selain dari pengaturan konfigurasi, semua dari prosesnya tidak tidak tampak pada
layar. Contohnya aplikasi penyaringan panggilan atau sms autorespon.
3. IntermittentActivity
Aplikasi yang masih membutuhkan beberapa masukkan dari pengguna,
namun sebagian sangat efektif jika dijalankan di background dan jika
diperlukan akan memberi tahu pengguna tentang kondisi tertentu. Contohnya pemutar musik.
Untuk aplikasi yang kompleks akan sulit untuk menentukan kategori aplikasi tersebut apalagi aplikasi memiliki ciri-ciri dari semua kategori. Oleh karenanya perlu pertimbangan bagaimana aplikasi tersebut digunakan dan menentukan kategori aplikasi yang sesuai.
2.3.6 Siklus Hidup Android
Siklus hidup aplikasi Android dikelola oleh sistem, berdasarkan kebutuhan pengguna, sumberdaya yang tersedia, dan sebagainya. Misalnya Pengguna ingin
menjalankan browser web, pada akhirnya sistem yang akan menentukan
menjalankan aplikasi. Sistem sangat berperan dalam menentukan apakah aplikasi dijalankan, dihentikan sementara, atau dihentikan sama sekali. Jika pengguna
(34)
perioritas utama untuk aplikasi yang tersebut. Sebaliknya, jika suatu Activity tidak
terlihat dan sistem membutuhkan sumber daya yang lebih, maka Activity yang
prioritas rendah akan ditutup.
Android menjalankan setiap aplikasi dalam proses secara terpisah, yang
masing-masing memiliki mesin virtual pengolah sendiri, dengan ini melindungi
penggunaan memori pada aplikasi. Selain itu juga Android dapat mengontrol aplikasi mana yang layak menjadi prioritas utama. Karenanya Android sangat sensitive dengan siklus hidup aplikasi dan komponen-komponennya. Perlu adanya penanganan terhadap setiap kondisi agar aplikasi menjadi stabil. Gambar 2.2 menunjukkan prioritas dari aplikasi.
Gambar 2.6 Prioritas Aplikasi Berdasarkan Activity
2.3.7 Kelebihan Android
Sudah banyak platform untuk perangkat selular saat ini, termasuk didalamnya Symbian, iPhone, Windows Mobile, BlackBerry, Java Mobile Edition, Linux Mobile (LiM), dan banyak lagi. Namun ada beberapa hal yang menjadi kelebihan Android. Walaupun beberapa fitur-fitur yang ada telah muncul
sebelumnya pada platform lain, Android adalah yang pertama menggabungkan hal
(35)
1. Keterbukaan, Bebas pengembangan tanpa dikenakan biaya terhadap sistem
karena berbasiskan Linux dan open source. Pembuat perangkat menyukai
hal ini karena dapat membangun platform yang sesuai yang diinginkan
tanpa harus membayar royality. Sementara pengembang software
menyukai karena Android dapat digunakan diperangkat manapun dan
tanpa terikat oleh vendor manapun.
2. Arsitektur komponen dasar Android terinspirasi dari teknologi internet
Mashup. Bagian dalam sebuah aplikasi dapat digunakan oleh aplikasi lainnya, bahkan dapat diganti dengan komponen lain yang sesuai dengan aplikasi yang dikembangkan.
3. Banyak dukungan service, kemudahan dalam menggunakan berbagai
macam layanan pada aplikasi seperti penggunaan layanan pencarian
lokasi, database SQL, browser dan penggunaan peta. Semua itu sudah
tertanam pada Android sehingga memudahkan dalam pengembangan aplikasi.
4. Siklus hidup aplikasi diatur secara otomatis, setiap program terjaga antara
satu sama lain oleh berbagai lapisan keamanan, sehingga kerja sistem menjadi lebih stabil. Pengguna tak perlu kawatir dalam menggunakan aplikasi pada perangkat yang memorinya terbatas.
5. Dukungan grafis dan suara terbaik, dengan adanya dukungan 2D grafis
dan animasi yang diilhami oleh Flash menyatu dalam 3D menggunakan
OpenGL memungkinkan membuat aplikasi maupun game yang berbeda.
6. Portabilitas aplikasi, aplikasi dapat digunakan pada perangkat yang ada saat ini maupun yang akan datang. Semua program ditulis dengan
menggunakan bahas pemrograman Java dan dieksekusi oleh mesin virtual
Dalvik, sehingga kode program portable antara ARM, X86, dan arsitektur lainnya. Sama halnya dengan dukungan masukan seperti penggunaan
Keyboard, layar sentuh, trackball dan resolusi layar semua dapat disesuaikan dengan program.
(36)
2.4 Perancangan Berorientasi Objek
Teknologi objek menganalogikan sistem aplikasi seperti kehidupan nyata yang didominasi oleh objek. Didalam membangun sistem berorientasi objek akan menjadi lebih baik apabila langkah awalnya didahului dengan proses analisis dan perancangan yang berorientasi objek. Tujuannya adalah mempermudah
programmer didalam mendesain program dalam bentuk objek-objek dan hubungan antar objek tersebut untuk kemudian dimodelkan dalam sistem nyata.
Suatu perusahaan software yaitu Rational Software, telah membentuk konsarium
dengan berbagai organisasi untuk meresmikan pemakaian Unified Modelling
Language (UML) sebagai bahasa standar dalam ObjectOrientedAnalysistDesign
(OOAD).
2.4.1 Unified Modelling Language (UML)
UML dalam sebuah bahasa untuk menentukan visualisasi, konstruksi, dan
mendokumentasikan artifacts dari sistem software, untuk memodelkan bisnis, dan
sistem non-software lainnya. UML merupakan sistem arsitektur yang bekerja
dalam OOAD dengan satu bahasa yang konsisten untuk menentukan, visualisasi, konstruksi dan mendokumentasikan artifact yang terdapat dalam sistem. Artifact
adalah sepotong informasi yang digunakan atau dihasilkan dalam suatu proses rekayasa software. Artifact dapat berupa model, deskripsi atau software.
2.4.1.1Use Case Diagram
Use Case Diagram menjelakan manfaat sistem jika dilihat menurut pandangan orang yang berada diluar sistem (Aktor). Diagram ini menunjukan
fungsionalitas suatu sistem yang berinteraksi dengan dunia luar. Use Case
Diagram dapat digunakan selama proses analisis untuk menagkap requitment
(37)
Gambar 2.7 Use Case Diagram
2.4.1.2Class Diagram
Class Diagram menjelaskan dalam visualisasi struktur kelas-kelas dari
suatu sistem dan merupakan tipe diagram yang paling banyak dipakai. Class
Diagram memperlihatakan hubungan antar kelas dan penjelasan detail tiap-tiap
kelas dalam model desain dari suatu sistem. Selama proses analisis, class diagram
memperlihatkan aturan-aturan dan tanggung jawab entitas yang menentukan
prilaku sistem. Selama tahap desain, class diagram berperan dalam menagkap
(38)
Gambar 2.8 Class Diagram
2.4.1.3Behavior Diagram
Behavior diagram dapat dikelompokan menjadi tiga diagram, yaitu : 1. Statechart Diagram
Statechart Diagram berfungsi untuk memodelkan prilaku dinamis satu kelas satu objek.
2. Activity Diagram
Activity Diagram memodelkan alur kerja (work flow) sebuah proses bisnis dan urutan aktifitas dalam suatu proses.
3. InteractionDiagram
Interaction Diagram dibagi menjadi dua model diagram yaitu :
1. Sequence Diagram menjelaskan interaksi objek yang disusun dalam suatu urutan waktu. Diagram ini secara khusus bersosialisasi dengan
use case. Sequence diagram, memperlihatkan tahap demi tahap apa
(39)
Gambar 2.9 Sequence Diagram
2. Collaboration Diagram melihat pada interaksi dan hubungan terstruktur antar objek. Tipe diagram ini menekankan pada hubungan (relationship)
antar objek, sedangkan sequence diagram menekankan pada urutan
kejadian. Dalam collaboration diagram terdapat beberapa objek, link, dan
message.
(40)
2.4.1.4Implementation Diagram
Implementation diagram dibagi menjadi dua diagram, yaitu :
1. Component Diagram menggambarkan alokasi semua kelas dan objek
kedalam komponen-komponen dalam desain fisik sistem software.
Diagram ini memperlihatkan pengaturan dan kebergantungan antara
komponen-komponen software, seperti source code, binary code, dan
komponen tereksekusi (execute components)
Deployment Diagram memperlihatkan pemetaan software kepada
hardware. Dimana akan berjalan (di server/multitier, standalone atau lainnya), dan menggambarkan model koneksi dan kemampuan jaringan dan hal lainya yang bersifat fisik.
2.5 Eclipse
Eclipse adalah sebuah IDE (Integrated Development Environment) untuk
mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse:
1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
2. Multi-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.
3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya.
Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya popular adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan
(41)
2.5.1 Sejarah Eclipse
Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat
lunak IBM VisualAge forJava 4.0. Produk ini diluncurkan oleh IBM pada tahun
2001. Pada tahun 2003 platform Eclipse tumbuh dengan cepat sebagai aplikasi
open source dan commercial extensions, sehingga menjadi pengembang yang
terkenal. Pada tahun 2004 Eclipse Foundation yang merupakan sebuah organisasi
nonprofit dengan keprofesionalannya serta independent dapat mengambil alih
penuh platform Eclipse. Eclipse adalah pengembang java terkemuka, karena unik dan arsitektur yang dapat diperluas serta dapat digunakan untuk berbagai macam bahasa pemrograman.
2.5.2 Arsitektur Eclipse
Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang
mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya
adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse
yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang
membentuk RCP: 1. Core platform
2. OSGi
3. SWT (Standard Widget Toolkit)
4. JFace
5. Eclipse Workbench
Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development
Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan
program Java, dan PDE (Plug-in Development Environment) untuk
mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan
dalam bahasa pemrograman Java.
Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas
(extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan
(42)
dibutuhkan. Apabila ingin mengembangkan program C/C++ terdapat plug-in CDT
(C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal
yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat diagram
UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai
dengan keinginannya.
2.5.3 Perkembangan Eclipse
Sejak tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran
Eclipse secara rutin dan simultan yang dikenal dengan nama Simultaneous
Release. Setiap versi peluncuran terdiri dari Eclipse Platform dan juga sejumlah proyek yang terlibat dalam proyek Eclipse. Tujuan dari sistem ini adalah untuk menyediakan distribusi Eclipse dengan fitur-fitur dan versi yang terstandarisasi. Hal ini juga dimaksudkan untuk mempermudah deployment dan maintenance untuk sistem enterprise. Adapun versi Eclipse yang telah diluncurkan yaitu :
1. Eclipse 3.0 2. Eclipse 3.1 3. Callisto
4. Europa
5. Ganymede
6. Galileo
7. Helios
8. Indigo
9. Juno
10. Kepler
2.6 Software Develpment Kit (SDK)
Software Development Kit (SDK) adalah suatu kit atau library dari bahasa pemrograman untuk pengembangan atau pembangunan suatu perangkat lunak dan biasanya SDK terdiri dari kumpulan tools yang dibutuhkan. Misalnya bahasa
pemrograman java, mempunyai SDK yang berisi suatu library yang dapat
(43)
2.7 Java Development Kit (JDK)
Java Development Kit (JDK) adalah sekumpulan perangkat lunak yang dapat kamu gunakan untuk mengembangkan perangkat lunak yang berbasis Java, Sedangkan JRE adalah sebuah implementasi dari Java Virtual Machine yang benar-benar digunakan untuk menjalankan program java.Biasanya, setiap JDK berisi satu atau lebih JRE dan berbagai alat pengembangan lain seperti sumber kompiler java, bundling, debuggers, development libraries dan lain sebagainya.
Perbedaan JDK dengan SDK (Software Development Kit) yaitu JDK adalah
sebuah SDK tetapi sebuah SDK tidak harus menjadi sebuah JDK.
2.8 Android Development Tools (ADT)
Android Development Tools (ADT) adalah plugin untuk Eclipse
Intergrated Development Environment (IDE) yang dirancang untuk memberikan
lingkunganyang terpadu di mana untuk membangun aplikasi Android.
ADT memperluas kemampuan Eclipse untuk membiarkan para developer
lebih cepat dalam membuat proyek baru Android, membuat aplikasi UI,
menambahkan komponen berdasarkan Android Framework API, debug aplikasi
dalam pengunaan Android SDK, dan membuat file APK untuk mendistribusikan aplikasi.
Mengembangkan aplikasi di Eclipse dengan ADT sangat dianjurkan dan merupakan cara tercepat untuk memulai membuat aplikasi Android, karena
banyak kemudahan-kemudahan sebagai tools yang terintegrasi seperti, custom
XML editor, dan debug panel ouput. Selain itu ADT memberikan dorongan luar
(44)
35
Analisis dan perancangan sistem memerlukan tahapan yang sistematis untuk mendapatkan aplikasi yang baik dan bersesuaian dengan kegunaan dan tujuannya. Tahap awal dari analisis adalah menganalisis kebutuhan-kebutuhan sistem mulai dari kebutuhan pengguna, kebutuhan non fungsional dan kebutuhan fungsional. Sedangkan untuk tahap perancangan aplikasi yaitu perancangan antarmuka.
3.1 Analisis Masalah
Analisis masalah merupakan langkah pertama yang dilakukan dalam tahap analisis sistem. Masalah dapat didefinisikan sebagai suatu pertanyaan yang diinginkan untuk dipecahkan. Masalah inilah yang menyebabkan sasaran dari sistem tidak dapat dicapai. Oleh karena itu langkah pertama yang harus dilakukan pada tahap ini adalah mengidentifikasi terlebih dahulu masalah-masalah yang terjadi.
Dalam penggunaannya, latihan menulis huruf hijaiyah masih
menggunakan media konvensional berupa kertas atau buku. Dengan media konvesional tersebut, kebanyakan dengan seringnya dipakai atau penempatan yang tidak tepat, sehingga bisa membuat media menjadi rusak. Maka dari itu dibutuhkan media alternatif lain yang tidak mudah rusak dan mudah untuk dibawa kemana-mana berupa aplikasi aplikasi android, sehingga dapat menggunakannya dimanapun dan kapanpun dengan mudah serta lebih interaktif, dengan memanfaatkan gesture touch pada android tidak menutup kemungkina untuk membangun aplikasi pelatihan menulis huruf hijaiyah sebagai sarana latihan yang lebih interaktif.
(45)
3.1.1 Analisis Gesture touch
Analisis gesture touch mendeskripsikan kebutuhan sistem untuk dapat
menyediakan halaman menulis menggunakan jari pada layar sentuh smart phone
untuk mengambar garis-garis sehingga menjadi huruf-huruf hijaiyah. Dalam
penelitian ini sistem menggunakan gesture touch digunakan sebagai parameter
penilaian benar atau salah nya huruf yang ditulis dengan memanfaatkan gesture recognition dengan pembanding yang disimpan pada library.
3.1.1.1 Analisis Proses Recognition Gesture
Analisis proses recognition menggambarkan bagaimana sistem
membandingkan dan memanggil gesture yang ada pada library dimana stroke
yang diinputkan oleh pengguna valid atau sesuai dengan yang ada pada library.
Latihan menulis huruf hijaiyah
Aplication
Gesture Recognition
service
Gesture Classifier Gesture Recorder
Gesture Controlled
Android Aplication
(46)
Gesture Classifier mengimplementasikan algoritma dynamic time warp
dan bertanggung jawab untuk pelatihan dan gesture recognition. Lebih jauh lagi mengelola set pelatihan yang tersedia.
Gesture Recognition Service adalah layanan yang bisa digunakan oleh
semua aplikasi android. Gesture Recognition berjalan dilatar belakang dan
bereaksi pada gerakan baru dicatat oleh Gesture Recorder. Tergantung pada modus currrent, yang dapat diatur melalui antarmuka layanan ini, gerakan baru ditambahkan ke satu set pelatihan atau diklasifikasikan. Hasilnya dikirim ke aplikasi yang terdaftar sebagai listener.
Gambar 3.2 Stroke Gesture
Gesture yang diinputkan terdekteksi oleh android runtime akan di
recognition menggunakan metode prediction score, gerakan -gerakan yang terdeteksi menggambarkan jalur stroke yang merupakan isyarat, sistem
memprediksi inputan ke library menggunakan metode recognition (), dimana
dengan membandingkan bentuk inputan dengan yang ada pada library. Metode
recognition () mengembalikan sebuah objek ArrayList yang mengandung prediksi untuk setiap perbandingan yang dilakukan, daftar ini digolongkan dalam urutan dari yang paling cocok pada posisi 0 sampai yang terburuk, terkandung dalam
setiap objek prediksi adalah nama dari gesture yang sesuai dengan gesture library.
Sistem yang dibangun menggunakan metode dimana prediksi paling baik dimana daftar yang digolongkan dalam urutan dari yang paling cocok pada posisi nol.
(47)
Sistem akan mengembalikan nilai berupa nama gesture yang paling cocok dari
gesture library.
3.1.1.2Analisis Soal
Analisis soal dan metode recognition soal menggambarkan metode
recognition yang digunakan untuk pertanyaan yang ditampilkan pada aplikasi serta bagaimana cara membandingkan soal dengan jawaban sehingga
mendapatkan validasi bahwa gesture yang diinputkan oleh user atau pengguna
adalah benar atau salah.
Adapun soal yang ditampilkan bertipe data string, Soal inilah yang
dibandingkan dengan hasil recognition inputan pengguna atau user ke library,
soal dibandingkan dengan nama gesture yang ada pada library, jika Soal bernilai
sama maka hasil jawaban akan dinyatakan benar dan sebaliknya jika berbeda maka sitem akan menyatakan bahwa jawaban salah.
Pertanyaan Dalam Aplikasi TULISKAN HURUF
Ain
LIBRARY GESTURE
Nama Gesture
Gesture
Validasi benar atau salahnya penulisan huruf adalah dengan cara membandingkan
“Ain” pertanyaan dengan “Ain” dari nama
gesture yang terpanggil karena adanya inputan user yang menggambar gesture Ain.
(48)
3.1.2 Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional menggambarkan kebutuhan sistem yang menitikberatkan pada properti perilaku yang dimiliki oleh sistem,
diantaranya kebutuhan pengguna, perangkat keras, serta perangkat lunak sebagai
bahan analisiskekurangan dan kebutuhan yang harus dipenuhi dalam perancangan
sistem yangakan diterapkan.
3.1.2.1Analisis dan Kebutuhan Pengguna
Analisis pengguna sistem dimaksudkan untuk mengetahui siapa saja aktor yang terlibat dalam menjalankan sistem. Aplikasi pelatihan menulis huruf
hujaiyah ini sendiri menggunakan platform android.
Tabel 3.1 Karakteristik Pengguna Sistem Kategori
Pengguna Hak Akses Tingkat Keterampilan
Pengguna
Mengakses
konten-konten aplikasi
pelatihan menulis
huruf hijaiyah
-Minimal membuka aplikasi pada mobile android
-Minimal mengenal huruf
hijaiyah
3.1.2.2Analisis dan Kebutuhan Perangkat Keras
Berikut ini adalah spesifikasi perangkat keras minimum yang digunakan
dalam pembangunan aplikasi pelatihan menulis huruf hijaiyah dapat dilihat pada
Tabel.
Tabel 3.2 Spesifikasi Perangkat Keras Smartphone Smartphone
No. Spesifikasi
1 Dimensi Layar 3,5 inches 2 Resolusi 480 x 800 pixels 3 Memori 4GB
4 RAM 512 MB 5 CPU 1,2 GHz
(49)
3.1.2.3Analisis dan Kebutuhan Perangkat Lunak
Analisis perangkat lunak terdiri dari spesifikasi minimum perangkat yang dibutuhkan.
Berikut ini adalah spesifikasi perangkat lunak yang digunakan dalam
membangun dan mengimplementasikan aplikasi pelatihan menulis huruf hijaiyah
ini adalah seperti pada tabel.
Tabel 3.3 Spesifikasi Minimum Perangkat Lunak
Komputer
No. Perangkat Lunak
1 Sistem Operasi Windows 7 64bit 2 Aplikasi IDE Eclipse Juno
3 JDK versi 7 dan Android SDK Windows 4 ADT versi 22.3
3.1.3 Analisis dan Kebutuhan Fungsional
Analisis kebutuhan fungsional menggambarkan proses kegiatan yang akan diterapkan dalam sebuah sistem dan menjelaskan kebutuhan yang diperlukan sistem agar sistem dapat berjalan dengan baik serta sesuai dengan kebutuhan. Analisis kebutuhan fungsional ini meliputi analisis kebutuhan sistem, analisis kebutuhan data dan pemodelan sistem.
Pemodelan sistem dimodelkan dengan menggunakan UML (Unified
Modeling Language). Tahap-tahap pemodelan dalam analisis tersebut antara lain
Use Case diagram, Class Diagram, Activity Diagram, Sequence Diagram, Component Diagram dan DeploymentDiagram.
3.1.3.1Analisis Kebutuhan Sistem
Analisis kebutuhan sistem menjelaskan spesifikasi dari perangkat lunak yang dibutuhkan untuk menjalankan sistem agar sesuai aplikasi yang dirancang serta sesuai dengan kebutuhan pengguna. Sebelum melakukan perancangan sistem, terlebih dahulu dilakukan analisis kebutuhan system, dengan
(50)
memperhatikan cara penyampaian informasi buku ataupun media pembelajaran lainnya agar bisa aplikasikan dalam system yang akan dibangun. Adapun kebutuhan system yang diperlukan antara lain:
1. Menampilkan informasi pengenalan huruf hijaiyah, pelatihan menulis huruf
hijaiyah, serta tes menulis huruf hijaiyah sesuai kategori yang terdapat dalam sistem.
2. Menampilkan informasi pengenalan huruf hijaiyah yang terdiri dari gambar
dan teks.
3. Menampilkan informasi tes dan latihan menulis dengan gesture touch.
3.1.3.2Analisis Kebutuhan Data
Analisis kebutuhan data menggambarkan berbagai data yang digunakan
pada aplikasi pelatihan menulis huruf hijaiyah. Analisis ini bertujuan untuk
memudahkan dalam perancangan informasi. Adapun data yang digunakan dalam merancang sistem aplikasi terlihat pada tabel.
Tabel 3.4 Kebutuhan Data Aplikasi pelatihan menulis huruf hijaiyah
No Nama Data Keterangan
1 Data huruf hijaiyah
Data ini berisi huruf – huruf hijaiyah, berupa gambar maupun text yang akan ditampilkan aplikasi
2
Data librarry Merupakan file yang berisi library huruf hijaiyah yang akan di bandingkan dengan input gesture dari user dibuat menggunakan tool gesture builder (yang telah dimodifikasi oleh pembangun). 3 Data gambar Data berextensi png yang digunakan untuk background ataupun
menu dalam aplikasi
3.1.3.3Pemodelan Sistem A. Use Case Diagram
Diagram Use Case merupakan bagian tertinggi dari fungsionalitas yang dimiliki sistem yang akan menggambarkan bagaimana seseorang atau aktor akan menggunakan dan memanfaatkan sistem. Diagram ini juga mendeskripsikan apa
(51)
yang akan dilakukan oleh sistem. Use Case terdiri dari tiga bagian yaitu identifikasi aktor, identifikasi Use Case dan skenario Use Case
Gambar 3.4 Use Case Diagram
Dalam sistem ini terdapat satu aktor yaitu pengguna, berikut adalah penjelasannya :
1. Identifikasi Aktor
Tabel 3.5 Identifikasi Aktor
No. Aktor Definisi
1 Pengguna Merupakan aktor yang menggunakan aplikasi pelatihan menulis huruf hijaiyah
(52)
2. Identifikasi Use Case
Terdapat 14 Use Case dalam aplikasi ini. Setiap Use Case
menggambarkan operasi-operasi yang berbeda. Identifikasi Use Case yang
terdapat dalam sistem dapat dilihat pada Tabel 3.6 berikut :
Tabel 3.6 Identifikasi Use Case
No. Use Case Deskripsi
1 Pilih pengenalan Fungsionalitas untuk menampilkan informasi pengenalan huruf yang ada dalam aplikasi
2 Pilih latihan Fungsionalitas untuk menampilkan informasi latihan menulis huruf hijaiyah yang ada dalam aplikasi
3 Pilih tes Fungsionalitas untuk menampilkan informasi tes menulis huruf hijaiyah yang ada dalam aplikasi
4 Pilih Option Menu Fungsionalitas untuk menampilkan list pengaturan pilihan dan keterangan yang ada dalam aplikasi
5 Pilih huruf Fungsionalitas untuk menampilkan informasi huruf dan pengenalan huruf yag ada dalam aplikasi
6 Pilih level Fungsionalitas untuk menampilkan informasi item-item pilhan level tes menulis huruf yang ada dalam aplikasi
7 Pilh kategori
Fungsionalitas untuk menampilkan informasi item-item pilhan kategori latihan menulis huruf yang ada dalam aplikasi
8 Lihat about Fungsionalitas untuk menampilkan informasi dari pembuat aplikasi
9 Lihat bantuan Fungsionalitas untuk menampilkan informasi keterangan dalam menggunakan aplikasi
10 Tes Menulis Fungsionalitas untuk menampilkan informasi pertanyaan tes menulis huruf yang ada dalam aplikasi 11 Latihan Menulis Fungsional untuk mnampilkan informasi latihan menulis
yang ada dalam aplikasi
12 Pecocokan Gesture Proses yang dilakukan untuk pencocokan gesture suara dengan inputan.
13 Pengacakan soal Proses yang dilakukan untuk pengacakan soal. 14 exit Fungsionalitas untuk keluar dari aplikasi
(53)
3. Sekenario Use Case
Tabel 3.7 Skenario Use Case Pilih Pengenalan
Identifikasi
Nomor 1
Nama Pilih pengenalan
Tujuan menampilkan list daftar huruf yang ada dalam aplikasi
Deskripsi Pengguna melihat list daftar huruf yang akan dikenalkan pada aplikasi Aktor Pengguna
Skenario Utama
Kondisi Awal Aplikasi menampilkan list menu pilih huruf
Aksi Aktor Reaksi Sistem 1. Memilih menu pengenalan huruf
pada aplikasi
2. Menampilkan list daftar huruf pada aplikasi
3. Memilih list menu pillih huruf pada apliaksi
4. Menampilkan informasi semua listhuruf yang ada pada aplikasi Kondisi Akhir Menampilkan list huruf yang ada pada aplikasi
Tabel 3.8 Skenario Pilih Latihan
Identifikasi
Nomor 2
Nama Pilih latihan
Tujuan Menampilkan list menu kategori
Deskripsi Pengguna melihat semua informasi list menu kategori yang ada dalam aplikasi
Aktor Pengguna
Skenario Utama
Kondisi Awal Aplikasi menampilkan list latihan
Aksi Aktor Reaksi Sistem 1. Memilih Latihan pada aplikasi
(54)
2. Menampilkan semua lis kategori latihan dalam aplikasi
Kondisi Akhir Menampilkan list kategori latihan
Tabel 3.9 Skenario Use Case Pilih Tes
Identifikasi
Nomor 3 Nama Pilih Tes
Tujuan Menampilkan informasi list menu level
Deskripsi Pengguna melihat list menu tingkatan level yanga da dalam aplikasi Aktor Pengguna
Skenario Utama
Kondisi Awal Aplikasi menampilkan menu tes
Aksi Aktor Reaksi Sistem 1. Memilih tes pada aplikasi
2. Menampilkan list tingkatan level pada apliaksi
Kondisi Akhir Menampilkan informasu list tingkatal level tes pada aplikasi
Tabel 3.10 Skenario Use Case Option Menu Identifikasi
Nomor 4
Nama Pilih Option Menu
Tujuan menampilkan list pengaturan pilihan dan melihat keterangan yang ada pada aplikasi
Deskripsi Pengguna memilih pengaturan dan melihat keterangan yang ada dalam aplikasi
Aktor Pengguna
Skenario Utama
Kondisi Awal Aplikasi menampilkan menu Option Menu
Aksi Aktor Reaksi Sistem 1. Memilih option menu pada
(55)
2. Menampilkan pilihan seting dan pilihan keterangan
3. Memilih pilihan yang ada pada option menu
4. Menampilkan informasi pilihan yang dipilih pengguna
Kondisi Akhir Menampilkan aplikasi sesuai pilihan option menu
Tabel 3.11 Skenario Use Case Pilih Huruf
Identifikasi
Nomor 5
Nama Pilih Huruf
Tujuan Menampilkan daftar huruf pengenalan pada aplikasi
Deskripsi Pengguna melihat dan memilih huruf yang ada dalam aplikasi Aktor Pengguna
Skenario Utama
Kondisi Awal Menampilkan list menu pilih huruf
Aksi Aktor Reaksi Sistem 1. Memilih menu pilih huruf
2. Menampilkan list huruf yang ada dalam aplikasi
3. Memilih huruf yang ada dalam apliaksi
4. Menamplikan deskripsi huruf
Kondisi Akhir Menampilkan gambar dan deskripsi huruf yang dikenalkan pada aplikasi
Tabel 3.12 Skenario Use Case Pilih Level Identifikasi
Nomor 6
Nama Pilih Level
Tujuan Menampilkan list menu tingkatan
(56)
Aktor Pengguna
Skenario Utama
Kondisi Awal Aplikasi menampilkan menu level
Aksi Aktor Reaksi Sistem 1. Memilih menu level
2. Menampilkan tingkatan level yang ada pada aplikasi
Kondisi Akhir Menampilkan tingkatan level
Tabel 3.13 Skenario Use Case Pilih Kategori
Identifikasi
Nomor 7
Nama Pilih Kategori
Tujuan Menampilkan list menu pilih huruf
Deskripsi Pengguna dapat melihat dan memilih list menu kategori huruf yang ada pada aplikasi
Aktor Pengguna
Skenario Utama
Kondisi Awal Menampilkan Menu Kategori
Aksi Aktor Reaksi Sistem 1. Memilih Kategori huruf yang ada
dalam aplikasi
2. Menampilkan list menu pilihan kategori huruf
Kondisi Akhir Menampilkan list menu kategori huruf
Tabel 3.14 Skenario Use Case Pilih About Identifikasi
Nomor 8
Nama Pilih About
Tujuan Menampilkan informasi about
Deskripsi Menampilkan informasi dari pembuat aplikasi Aktor Pengguna
(1)
Jumlah 10 45
� =45
50 100 = 90%
Berdasarkan jawaban responden terhadap pertanyaan ketiga, hasil persentase diperoleh 84%. Maka dapat disimpulkan bahwa aplikasi pelatihan menulis huruf hijaiyah mudah digunakan bagi pengguna.
4. Menurut kamu, apakah aplikasi mempermudah anda dalam belajar menulis huruf hijaiyah?
A. Sangat Setuju D. Kurang Setuju B. Setuju E. Tidak Setuju C. Cukup Setuju
Tabel 4.19 Hasil Pengujian Kuesioner Soal Nomer 4
Pertanyaan No Keterangan Skala (N) Responden (R) N . R
4
1 Sangat Setuju 5 3 15
2 Setuju 4 4 16
3 Cukup Setuju 3 3 9
4 Kurang Setuju 2 0 0
5 Tidak Setuju 1 0 0
Jumlah 10 40
� =40
50 100 = 80%
Berdasarkan jawaban responden terhadap pertanyaan keempat, hasil persentase diperoleh 83,33%. Maka dapat disimpulkan bahwa dengan memanfatkan gesture touch dapat membantu pengguna belajar melatih menulis huruf hijaiyah.
5. Menurut kamu, apakah aplikasi pelatihan menulis huruf hijaiyah bisa dijadikan pengganti buku dalam berlatih menulis huruf hijaiyah yang mudah digunakan dimanapun?
(2)
114
A. Sangat Setuju D. Kurang Setuju B. Setuju E. Tidak Setuju C. Cukup Setuju
Tabel 4.20 Hasil Pengujian Kuesioner Soal Nomer 5
Pertanyaan No Keterangan Skala (N) Responden (R) N . R
5
1 Sangat Setuju 5 4 20
2 Setuju 4 4 16
3 Cukup Setuju 3 1 3
4 Kurang Setuju 2 0 0
5 Tidak Setuju 1 0 0
Jumlah 10 37
� =37
50 100 = 74%
Berdasarkan jawaban responden terhadap pertanyaan kelima, hasil persentase diperoleh 78,67%. Maka dapat disimpulkan bahwa pengnalan huruf dalam aplikasi sudah cukup interaktif.
4.2.2.3Kesimpulan Pengujian Beta
Berdasarkan hasil persentase pengujian beta pengguna aplikasi mobile pelatihan menulis huruf hijaiyah dapat ditarik kesimpulan bahwa pembanguna aplikasi pelatihan menulis huruf hijaiyah ini sudah sesuai dengan tujuan, yaitu mudah digunakan baik anak-anak maupun dewasa, bermanfaat dan bisa menjadi media altrenatif dalam berlatih menulis huruf hijaiyah dimanapun dan,kapanpun.
(3)
115 5.1 Kesimpulan
Kesimpulan dari penelitian yang berjudul : “Pembangunan Aplikasi Pelatihan Menulis Huruf Hijaiyah” adalah sebagai berikut :
1. Aplikasi yang dibangun dapat menjadi media alternatif dalam belajar mengenal, melatih menulis huruf hijaiyah serta mudah digunakan dimanapun dan kapanpun.
2. Dengan memanfaatkan gesture touch pada android, maka latihan menulis huruf hijaiyah menjadi lebih interaktif serta mudah digunakan bagi pengguna.
5.2 Saran
Aplikasi pelatihan menulis huruf hijaiyah ini masih jauh dari kata sempurna dan masih memiliki banyak kekurangan. Untuk itu, perlu dilakukan pengembangan dan penyempurnaan lebih lanjut. Adapun saran agar aplikasi ini bisa berjalan dengan lebih optimal dan lebih menarik sebagai berikut :
1. Aplikasi hanya dapat berjalan pada satu platform yaitu android, sebaiknya aplikasi juga dikembangkan di sistem operasi untuk platform lainnya agar memperluas pengguna yang menggunakan aplikasi ini.
2. Pemanfaatan gesture touch yang diterapkan pada sistem baru optimal saat menuliskan huruf hijaiyah, masih kurang optimal ketika melakukan validasi, serta belum adanya fitur ganti stroke ataupun warna stroke pada gesture.
3. Tampilan aplikasi tidak mendukung tampilan landscape, hanya mendukung tampilan portrait, sehingga perlu dikembangkan auto rotation agar tampilannya menarik.
4. Dapat digunakan pada smartphone atau tablet dengan dimensi layar selain 4.5 inches.
(4)
116
Demikian saran yang dapat diberikan, semoga saran tersebut bisa dijadikan sebagai bahan masukan yang dapat bermanfaat bagi pengembangan aplikasi ini.
(5)
(6)