BAB 2 LANDASAN TEORI 2.1. Teori Dasar Teori dasar adalah teori yang akan menjadi landasan teori-teori lainnya yang digunakan pada penulisan skripsi ini. 2.1.1. Metode Perancangan Perangkat Lunak Dalam hal perancangan perangkat lunak diperlukan strategi agar perangkat lunak dapat dibuat dengan efektif. Aplikasi model perancangan tergantung dari sifat perangkat lunak yang akan dibuat, teknologi yang digunakan, dan kontrol yang akan dilibatkan dalam prosesnya (Pressman, 2010, p. 14). Waterfall model yang disebut juga model linear merupakan model perancangan yang paling sederhana. Model perancangan ini menghadirkan pola pengembangan yang berurutan. Urutan pengembangan perangkat lunak dimulai dari analisis, desain, code generation, pengetesan, dan dukungan. 2.1.1.1. Communication Tahap communication, adalah tahap awal pembuatan proyek. Pada tahap ini semua kebutuhan yang terkait dengan pengembangan perangkat lunak dikumpulkan. 2.1.1.2. Planning Tahap planning, merupakan tahap perencanaan atas pengerjaan proyek. Rencana yang dibuat meliputi deskripsi pekerjaan, resiko,
8
9 sumber daya yang dibutuhkan, produk yang akan dihasilkan, dan jadwal. 2.1.1.3. Modelling Pada tahap modelling, semua informasi kebutuhan yang sudah dianalisis direpresentasikan dalam bentuk model. Model dapat dibuat semakin detil bila dibutuhkan. 2.1.1.4. Construction Pada tahap construction, model yang sudah ada diterjemahkan ke dalam bahasa pemrograman yang dapat dimengerti oleh komputer dan dilakukan pengetesan untuk mengatasi error. 2.1.1.5. Deployment Pada tahap deployment, perangkat lunak didistribusikan kepada pengguna dan pengguna melakukan evaluasi terhadap perangkat lunak tersebut.
Gambar 2.1 Waterfall Model (Pressman, 2010, p. 39)
2.1.2. Database 2.1.2.1. Pengertian Database Database merupakan kumpulan data yang saling berhubungan (Connolly & Begg, 2010, p. 54). Untuk memelihara database diperlukan suatu perangkat lunak yang dapat mengatur dan
10 memberikan kontrol terhadap data-data pada database. Perangkat lunak tersebut adalah DBMS (Database Management System). 2.1.2.2. Database Management System (DBMS) DBMS adalah perangkat lunak yang berinteraksi dengan user dan database (Connolly & Begg, 2010, p. 66). Pada dasarnya suatu DMBS harus menyediakan fitur-fitur sebagai berikut (Connolly & Begg, 2010, p. 66): 1. Mengijinkan user untuk membuat database melalui Data Definition Language (DDL). 2. Mengijinkan user untuk menginput, mengubah, menghapus, dan mengambil data dari database menggunakan Data Manipulaion Language (DML). 3. Menyediakan akses terkontrol terhadap database, seperti: a. Security system, yang akan mencegah pengguna tak berwenang untuk mengakses database. b. Integrity system, yang akan memelihara konsistensi data yang tersimpan. c. Concurrency control system, yang mengijinkan akses bersama ke database. d. Recovery control system, yang akan mengembalikan database ke kondisi stabil semula apabila terjadi kerusakan hardware atau software.
11 e. User-accessible catalog atau yang disebut juga sebagai data dictionary atau metadata, merupakan data yang menjelaskan data lainnya (Connolly & Begg, 2010, p. 65). 2.1.2.3. SQLite SQLite
adalah
suatu
in-process
library
yang
mengimplementasikan SQL database engine yang self-contained, serverless, zero-configuration, dan transactional (SQLite, 2012). SQLite dapat digunakan secara bebas untuk tujuan apapun baik tujuan komersial ataupun tujuan pribadi. Berikut beberapa kelebihan menggunakan SQLite: 1. Transaksi bersifat atomic, consistent, isolated, dan durable (ACID). 2. Zero-configuration, dengan kata lain tidak memerlukan setup ataupun pendaftaran yang bersifat administrasi. 3. SQLite mengimplementasikan hampir seluruh SQL92. 4. Mendukung database dengan ukuran terabyte dan strings serta blobs berukuran gigabyte. 5. Self-contained, tidak memerlukan ketergantungan luar. 6. Cross-platform: mendukung Unix(Linux, Mac OS-X, Android, iOS) dan Windows(Win32, WinCE, WinRT) serta dapat dipindahkan ke sistem lain dengan mudah. 7. Sumber terdapat pada public domain. Dapat digunakan untuk tujuan apapun.
12 8. Dilengkapi dengan command-line interface(CLI) yang mandiri yang dapat digunakan untuk mengatur database SQLite.
2.1.3. Interaksi Manusia dan Komputer 2.1.3.1. Delapan Aturan Emas Delapan aturan emas dalam desain antar muka merupakan prinsip yang aplikatif untuk membuat antar muka yang baik (Shneiderman & Plaisant, 2010, p. 74). Delapan aturan emas tersebut ialah: 1. Konsistensi Konsistensi berkaitan dengan penggunaan terminologi dalam menu dan peringatan, penggunaan warna dalam bentuk desain. 2. Penggunaan yang Universal Penggunaan yang universal berkaitan dengan bermacam jenis pengguna baik pemula maupun ahli, rentang umur, dan keterbatasannya. Salah satu aplikasinya adalah pengggunaan fitur penjelasan untuk pengguna pemula dan fitur shortcut dan navigasi cepat untuk pengguna ahli. 3. Umpan Balik yang Informatif Umpan balik informatif memberikan umpan balik yang sesuai dengan aksi yang dilakukan oleh pengguna. Umpan balik untuk aksi yang sering dilakukan sebaiknya diberikan dengan tidak menonjol sedangkan untuk aksi yang penting membutuhkan umpan baik yang lebih menonjol.
13 4. Rancangan Dialog yang Memberikan Keadaaan Akhir Informasi yang disajikan harus terbagi menjadi awal, tengah, dan akhir. Hal ini memberikan kesempatan bagi pengguna untuk mengatur konsentrasi atas konten yang disajikan. 5. Pencegahan Kesalahan Sistem yang baik sebisa mungkin mencegah pengguna melakukan kesalahan yang fatal. Sistem harus menyediakan cara untuk memperbaiki kesalahan yang dilakukan oleh pengguna. 6. Memungkinkan untuk Pembalikan Aksi Pembalikan aksi memberikan kesempatan untuk memperbaiki kesalahan dan menyediakan kesempatan bagi pengguna untuk mempelajari dan menjelajahi antar muka tanpa rasa takut. 7. Pusat Kendali Internal Pusat
Kendali
Internal
menyediakan
kesempatan
bagi
pengguna untuk mengatur antar muka dan menyediakan cara bagi sistem untuk merespon pengaturan dari pengguna. 8. Mengurangi Beban Ingatan Jangka Pendek Keterbatasan ingatan manusia menuntut sistem agar dapat diingat
dengan
mudah.
Antar
muka
yang
sederhana
memberikan kesempatan bagi pengguna untuk mengingat urutan kerja sistem dengan lebih baik.
14 2.1.3.2. Lima Faktor Manusia Terukur Berikut ini adalah lima faktor manusia terukur (Shneiderman & Plaisant, 2010, p. 16) 1. Waktu Belajar Waktu belajar merupakan waktu yang dibutuhkan pengguna untuk mempelajari sebuah antar muka. 2. Kecepatan Performa Kecepatan
performa
adalah
berapa
lama
waktu
yang
dibutuhkan pengguna untuk melakukan sebuah tugas tertentu. 3. Tingkat Kesalahan Tingkat kesalahan menggambarkan kesalahan yang sering dilakukan oleh pengguna. 4. Daya Ingat Daya
ingat
menggambarkan
berapa
lama
pengguna
mempertahankan ingatan atas antar muka yang digunakan setelah jangka waktu tertentu. 5. Kepuasan Subyektif Kepuasan
subyektif
menggambarkan
seberapa
banyak
pengguna menyukai aspek-aspek dalam antar muka.
2.1.4. Multimedia 2.1.4.1. Pengertian Multimedia Multimedia merupakan kombinasi elemen teks, foto, gambar grafis, suara, animasi, dan video yang dimanipulasi dan
15 dipresentasikan melalui komputer ataupun media elektronik lainnya (Vaughan, 2011, p. 1). Multimedia yang baik akan mampu menarik dan mempertahankan minat orang-orang sehingga daya ingat akan informasi yang disampaikan akan meningkat. 2.1.4.2. Lima Elemen Multimedia Lima elemen multimedia menurut Vaughan (Vaughan, 2011, p. 11): 1. Teks Teks merupakan elemen multimedia yang terdiri dari kata-kata, kalimat,
paragraf,
atau
simbol
yang
berfungsi
untuk
menyampaikan informasi secara tertulis. Beberapa hal yang mempengaruhi kemudahan teks untuk dibaca adalah ukuran, warna, warna latar, style, dan leading. 2. Gambar Dua format gambar yang dihasilkan oleh komputer: a. Bitmaps Bitmaps merupakan matriks sederhana yang terdiri dari titiktitik kecil yang membentuk gambar. Bit didefinisikan dengan angka 1 dan 0 yang berarti benar atau salah, hitam atau putih, dan lainnya. Bitmaps digunakan untuk gambar realistik seperti foto dan gambar-gambar kompleks yang memerlukan detail yang baik.
16 b. Vector-Drawn Vector-drawn digunakan untuk gambar garis, kotak, lingkaran, poligon, dan bentuk grafis lainnya yang dapat diekspresikan secara matematika dalam hal sudut, koordinat, dan jarak. 3. Suara (Audio) Suara merupakan gelombang tekanan yang ditangkap oleh gendang telinga, dimana gelombang tersebut muncul akibat adanya getaran pada udara. Suara pada multimedia dapat berupa kata-kata, musik, dan efek suara lainnya. Penggunaan elemen suara pada multimedia dapat menegaskan informasi, menambah daya tarik, dan membuat komunikasi menjadi lebih efektif. Terdapat dua jenis audio yang dapat dihasilkan oleh komputer, yaitu: a. Digital Audio Digital audio merupakan hasil dari representasi karakteristik gelombang suara dalam bentuk angka, dimana proses representasi
ini
dinamakan
digitizing.
Digital
audio
diciptakan dengan cara mengambil sampel suara dari suatu sumber dan sampel suara tersebut akan disimpan sebagai informasi digital dalam bentuk bits dan bytes. b. MIDI (Musical Instrument Digital Interface) MIDI adalah komunikasi standar yang diciptakan pada awal tahun 1980 untuk instrumen musik elektrik dan komputer.
17 MIDI bukanlah digitized sound. MIDI adalah representasi musik yang disimpan dalam bentuk angka. MIDI dibuat dengan cara merekam tindakan musikal (contoh: menekan kunci piano) dan menyimpannya sebagai daftar perintah dalam komputer. 4. Animasi Animasi merupakan elemen multimedia
yang membuat
presentasi statis menjadi bergerak. Berikut beberapa cara menganimasikan sebuah gambar menggunakan teknologi komputer: a. Animasi Dua Dimensi (2-D) Pada animasi 2-D presentasi dan perubahan visual terjadi pada sumbu x dan sumbu y layar presentasi. b. Animasi Dua Setengah Dimensi (2 ½ -D) Animasi 2 ½ -D sama seperti animasi 2-D namun terdapat penambahan
fitur
shadowing
dan
highlighting
pada
presentasi visual. c. Animasi 3-D Pada animasi 3-D terdapat suatu dunia virtual yang terdiri dari tiga sumbu (sumbu x, y, dan z) sehingga presentasi visual memiliki tampak depan, belakang, samping kiri, samping kanan, atas, dan bawah.
18 5. Video Video adalah elemen multimedia yang menampilkan rangkaian gambar statis yang merepresentasikan adegan yang bergerak. Kualitas video ditentukan oleh banyaknya gambar (frame) per detik dan kedalaman warna (bits per pixel). Video dapat ditampilkan dengan cara interlace dan progressive. Video interlaced menampilkan frame dengan garis genap dan ganjil yang ditampilkan secara bergantian. Video progressive menampilkan frame utuh dalam satu waktu.
2.1.5. Antar Muka / Storyboard Storyboard adalah gambaran visualisasi dari aplikasi yang akan dibangun. Storyboard dapat digunakan untuk pembuatan film, games, media pembelajaran interaktif, website, dan aplikasi. Dalam tahap perancangan storyboard selain dapat menampilkan gambaran mengenai rancangan yang akan dibuat, storyboard juga dapat menampilkan elemen interaksi, suara, dan gerakan dari sebuah rancangan. Hal-hal yang harus dicantumkan dalam sebuah storyboard adalah sebagai berikut (Waryanto, 2005, pp. 1-3): 1.
Gambaran layar atau frame
2.
Warna, penempatan, dan ukuran grafik
3.
Teks asli
4.
Warna dan ukuran teks
5.
Narasi
6.
Animasi
19 7.
Audio
8.
Video
9.
Interaksi dengan penonton
10. Hal-hal lain yang perlu diketahui staf produksi
2.1.6. UML UML(Unified Modelling Language) merupakan standar yang digunakan untuk mengidentifikasikan objek-objek dalam lingkungan sistem dan mengidentifikasikan relasi antara objek-objek tersebut atau yang disebut juga pemodelan objek (Whitten & Bentley, 2007, p. 371). Terdapat 13 jenis diagram UML 2.0 yang dapat dipergunakan dalam proses pemodelan objek, yaitu: 1.
Use Case
8.
Communication
2.
Activity
9.
Interaction Overview
3.
Class
10. Timing
4.
Object
11. Component
5.
State Machine
12. Deployment
6.
Composite Structure
13. Package
7.
Sequence
Tidak semua jenis diagram harus dipakai dalam pemodelan objek bila pemakaian beberapa diagram saja telah menjelaskan keseluruhan deskripsi sistem.
20 2.1.6.1. Use Case Diagram Use case diagram mendeskripsikan interaksi yang terjadi antara sistem, sistem eksternal dan user (Whitten & Bentley, 2007, p. 246). Use case diagram akan menjelaskan siapa yang akan menggunakan sistem dan dengan cara apa user tersebut akan berinteraksi dengan sistem.
Gambar 2.2 Contoh Use Case Diagram (Whitten & Bentley, 2007, p. 246) Ada tiga buah komponen utama yang dipakai dalam use case diagram, yaitu: 1. Use Case Use case digambarkan dalam bentuk elips horisontal dengan nama dari use case tersebut yang dituliskan di atas, di bawah,
21 atau di dalam elips. Use case merepresentasikan tujuan dari sistem dan menjabarkan urutan aktivitas dan interaksi user dalam mencapai tujuan.
Gambar 2.3 Simbol Use Case (Whitten & Bentley, 2007, p. 246) 2. Actor Actor merupakan pengguna sistem yang direpresentasikan dengan menggunakan stick figure yang disertai dengan nama peran actor tersebut. Actor tidaklah harus manusia, actor dapat berupa perangkat luar seperti sensor dan hal lainnya.
Gambar 2.4 Simbol Actor (Whitten & Bentley, 2007, p. 247) 3. Relationships Relationships adalah garis yang menghubungkan antara dua buah simbol pada use case diagram. Arti dari relationships bergantung pada cara penggambaran garis relationships tersebut dan simbol apa yang saling dihubungkan. Jenis-jenis relationships yang ada antara lain:
22 a. Associations Associations merupakan relasi antara use case dan actor. Terdapat dua jenis garis dalam Association, yaitu garis yang memiliki arah panah pada ujungnya dan yang tidak memiliki arah panah. Associations
yang garisnya memiliki arah
panah menunjukkan bahwa aktivitas use case yang ditunjuk dilakukan oleh actor yang berada di ujung lain garis tersebut. Associations yang tidak memiliki arah panah menunjukkan terdapat interaksi yang terjadi antara use case dan external server atau reciever actor.
Gambar 2.5 Association pada Use Case (Whitten & Bentley, 2007, p. 248) b. Extends Use case yang sulit dimengerti karena mengandung beberapa langkah rumit dapat disederhanakan dengan cara mengekstraksi langkah-langkah tersebut ke use case baru yang disebut dengan extension use case. Relasi antara use case dan extension use case inilah yang disebut sebagai relasi extends.
23
Gambar 2.6 Extends pada Use Case (Whitten & Bentley, 2007, p. 249) c. Uses / Includes Untuk mengurangi redundansi antara dua atau lebih use case yang memiliki kesamaan langkah dapat digunakan bantuan abstract use case yang akan menggabungkan langkahlangkah use case yang sama. Uses atau includes merupakan relasi antara abstract use case dan use case yang menggunakan abstract use case tersebut.
Gambar 2.7 Uses pada Use Case (Whitten & Bentley, 2007, p. 249)
24 d. Depends On Relasi depends on menandakan bahwa suatu use case tidak dapat dijalankan sebelum suatu use case yang lain selesai dilakukan.
Gambar 2.8 Depends On pada Use Case (Whitten & Bentley, 2007, p. 250) e. Inheritance Untuk mengurangi komunikasi yang redundan antara sistem dengan dua atau lebih aktor yang mengakses use case yang sama dapat digunakan bantuan suatu abstract actor. Relasi inheritance adalah relasi antara abstract actor dan actor lain yang mewariskan sifatnya pada abstract actor tersebut.
25
Gambar 2.9 Inheritance pada Use Case (Whitten & Bentley, 2007, p. 250) 2.1.6.2. Use Case Narative Use case narative merupakan deskripsi tertulis berisi tentang penjelasan bagaimana pengguna akan berinteraksi dengan sistem untuk menyelesaikan suatu tugas. (Whitten & Bentley, 2007, p. 246). Komponen-komponen dalam use case narative: 1. Author Author adalah nama-nama individu yang berkontribusi dalam penulisan use case. 2. Date Date merupakan informasi tentang tanggal terakhir use case dimodifikasi. 3. Version Version merupakan informasi tentang versi use case sekarang.
26 4. Use Case Name Use case name harus merepresentasikan tujuan yang ingin dicapai oleh use case. Use case name harus diawali dengan kata kerja. 5. Use Case Type Use case type merupakan jenis dari use case yang menentukan hal apa yang akan dilakukan oleh use case tersebut. 6. Use Case ID Use
case
ID
merupakan
tanda
pengenal
yang
mengidentifikasikan use case secara unik. 7. Priority Priority menjelaskan tingkat kepentingan use case dalam tingkatan tinggi, sedang, atau rendah. 8. Source Source mendefinisikan hal-hal yang memicu pembuatan use case. Hal-hal tersebut dapat berupa syarat, dokumen spesifik, atau seorang stakeholder. 9. Primary Business Actor Primary
business
actor
merupakan
stakeholder
yang
diuntungkan secara utama dari eksekusi use cae dengan cara menerima sesuatu yang dapat diukut atau sesuatu yang nilainya dapat diobservasi.
27 10. Other Participating Actor Other participating actor merupakan aktor lain yang berpartisipasi dalam use case untuk mencapai tujuan use case tersebut. 11. Interested stakeholder(s) Interested stakeholder(s) merupakan seseorang yang memiliki ketertarikan pada tujuan dari use case. 12. Description Description merupakan ringkasan pendek yang terdiri dari beberapa kalimat yang menerangkan tujuan dari use case dan aktivitas dari use case tersebut. 13. Precondition Precondition merupakan suatu use case lain yang harus dieksekusi terlebih dahulu sebelum suatu use case tertentu dapat dieksekusi. 14. Trigger Trigger adalah suatu kondisi yang menginisiasi eksekusi dari suatu use case. Trigger biasanya berupa kondisi fisik atau waktu. 15. Typical Course of Events Typical course of events merupakan urutan aktivitas normal yang dilakukan oleh aktor dan sistem untuk mencapai tujuan dari use case. Hal ini mencakup interaksi antara sistem dan aktor serta aktivitas yang dilakukan oleh sistem sebagai
28 respon atas interkasi yang terjadi. Aktivitas yang dilakukan oleh aktor dicatat pada kolom sebelah kiri, sememtara aktivitas dari sistem dicatat pada kolom sebelah kanan. 16. Alternate Courses Alternate courses merupakan catatan tindakan-tindakan use case yang akan dilakukan apabila terjadi suatu pengecualian atau variasi terhadap suatu masalah tertentu. Hal ini dapat terjadi ketika suatu use case mencapai titik percabangan dimana suatu keputusan harus diambil dan memerlukan langkah-langkah tambahan. 17. Conclusion Conclusion menentukan kapan suatu use case berhenti dengan sukses, yaitu dimana ketika primary actor mencapai suatu hal yang bernilai. 18. Postcondition Postcondition merupakan batasan kondisi sistem setelah use case telah berhasil dieksekusi dengan baik. 19. Business Rules Business rules menentukan kebijakan dan prosedur bisnis yang harus dipatuhi oleh sistem baru. 20. Implementation Constraints and Specifications Implementation constraints and specifications menjelaskan kebutuhan-kebutuhan
non-fungsional
yang
dapat
29 mempengaruhi realisasi use case dan dapat membantu dalam perencanaan dan pelingkupan arsitektural. 21. Assumptions Assumptions merupakan asumsi-asumsi yang dibuat oleh pembuat saat mendokumentasikan use case. 22. Open Issues Open
issues
merupakan
pertanyaan-pertanyaan
atau
permasalahan yang perlu diselesaikan atau diselidiki sebelum use case dapat di selesaikan. 2.1.6.3. Class Diagram Class diagram menggambarkan struktur dari suatu sistem yang terdiri dari objek-objek sistem dan relasi yang terjadi di antara objek-objek tersebut (Whitten & Bentley, 2007, p. 382). Konsep-konsep penting yang digunakan dalam class diagram antara lain: 1.
Class Class adalah suatu set object instance yang memiliki kesamaan attribute dan behaviour (Whitten & Bentley, 2007, p. 373).
Gambar 2.10 Class (Whitten & Bentley, 2007, p. 374)
30 Class direpresentasikan dalam bentuk sebuah kotak yang memiliki 3 bagian, yaitu: a. Nama Class b. Attribute Attribute
merupakan
data
yang
merepresentasikan
karakteristik menarik dari suatu object. (Whitten & Bentley, 2007, p. 372) c. Behaviour Behaviour adalah hal-hal yang dapat dilakukan oleh object dan dapat bertindak terhadap data dari object (Whitten & Bentley, 2007, p. 372). 2.
Visibility Visibility merupakan tingkat akses suatu objek eksternal terhadap suatu attribute atau method (Whitten & Bentley, 2007, p. 650).
Gambar 2.11 Contoh Visibility (Whitten & Bentley, 2007, p. 651)
31 Jenis-jenis visibility: a. Private Private dilambangkan dengan simbol minus (-). Private attribut dan private behaviour dapat diakses dan dipakai oleh behaviour pada class dimana attribute dan behaviour tersebut didefinisikan. b. Protected Protected
dilambangkan
dengan
simbol
pagar
(#).
Protected attribut dan protected behaviour dapat diakses dan dipakai oleh behaviour pada class dimana attribute dan behaviour tersebut didefinisikan dan oleh behaviour subclass dari class tersebut. c. Public Public dilambangkan dengan simbol plus (+). Public attribut dan public behaviour dapat diakses dan dipakai oleh semua behaviour pada semua class dalam sistem. 3.
Multiplicity Multiplicity merupakan angka maksimum dan minimum kejadian yang dapat terjadi pada satu class karena dikenai satu buah kejadian class yang berhubungan dengan class tersebut (Whitten & Bentley, 2007, p. 378).
32
Gambar 2.12 Contoh Multiplicity (Whitten & Bentley, 2007, p. 377) Jenis-jenis multiplicity yang ada, yaitu: a. Tepat Satu Hubungan ini direpresentasikan dengan angka satu (1) atau tidak dituliskan sama sekali. b. Nol atau Satu Hubungan ini direpresentasikan dengan menuliskan 0..1 pada garis hubungan antar class. c. Nol atau Lebih Hubungan ini direpresentasikan dengan menuliskan 0..* atau * saja. d. Satu atau Lebih Hubungan ini direpresentasikan dengan menuliskan 1..* pada garis hubungan antar class. e. Rentang yang Spesifik Hubungan
ini
direpresentasikan
dengan
menuliskan
rentang angka secara spesifik pada garis hubungan antar class.
33 4.
Association Association
merupakan
garis
yang
merepresentasikan
hubungan antara class (Whitten & Bentley, 2007, p. 377). Jenis association yang ada yaitu: a. Unidirectional Uni-directional menunjukkan hubungan antar class yang terjadi satu arah saja. Penggambaran uni-directional menggunakan navigabillity, yaitu simbol anak panah yang akan menunjuk ke arah dimana pesan dapat dikirimkan (Whitten & Bentley, 2007, p. 650).
Gambar 2.13 Unidirectional (Whitten & Bentley, 2007, p. 650) b. Bidirectional Bidirectional menunjukkan hubungan antar class yang terjadi secara dua arah.
Gambar 2.14 Bidirectional (Whitten & Bentley, 2007, p. 652)
34 5.
Generalization / Specialization Generalization merupakan teknik dimana attribute-attribute dan behaviour-behaviour yang umum untuk beberapa tipe class dikelompokkan ke dalam class mereka sendiri (class superclass). Attribute dan behaviour dari supertype akan diwariskan ke berbagai subclass yang spesifik (Whitten & Bentley, 2007, p. 373). Subclass dapat memiliki attribute dan behaviour unik miliknya sendiri (Whitten & Bentley, 2007, p. 374).
Gambar 2.15 Contoh Generalization (Whitten & Bentley, 2007, p. 376)
35 6.
Aggregation Aggregation merupakan hubungan antar class, dimana terdapat satu buah class utuh (“whole” class) yang lebih besar mengandung satu atau lebih class bagian(“parts”) yang lebih kecil (Whitten & Bentley, 2007, p. 378).
Gambar 2.16 Contoh Aggregation (Whitten & Bentley, 2007, p. 379) 7.
Composition Composition merupakan relasi aggregation dimana “whole” class bertanggung jawah atas eksistensi dari “parts”-nya (Whitten
&
Bentley,
2007,
p.
378).
Composition
dilambangkan dengan wajik penuh.
Gambar 2.17 Contoh Composition (Whitten & Bentley, 2007, p. 379)
36 2.1.6.4. Activity Diagram Activity diagram menggambarkan urutan aliran dari suatu use case atau suatu proses bisnis (Whitten & Bentley, 2007, p. 382).
Gambar 2.18 Contoh Activity Diagram (Whitten & Bentley, 2007, p. 392) Komponen-komponen yang digunakan pada activy diagram adalah:
37 1.
Initial Node Initial node disimbolkan dengan sebuah lingkaran penuh yang menandakan awal dari proses.
Gambar 2.19 Initial Node (Whitten & Bentley, 2007, p. 392) 2.
Actions Actions disimbolkan dengan persegi panjang dengan sisi kiri dan kanan yang bulat. Actions merepresentasikan suatu langkah mandiri pada proses.
Gambar 2.20 Actions (Whitten & Bentley, 2007, p. 392) 3.
Flow Flow merupakan tanda panah yang menghubungkan satu komponen activiy diagram ke komponen activiy diagram yang lain. Flow
menunjukkan arah perkembangan proses
yang terjadi.
Gambar 2.21 Flow (Whitten & Bentley, 2007, p. 392) 4.
Decision Decision adalah simbol berbentuk wajik dengan satu flow mengarah masuk ke dalam dan dua atau lebih flow mengarah
38 ke luar. Decision melambangkan percabangan arah yang terjadi pada sistem akibat kondisi tertentu.
Gambar 2.22 Decision (Whitten & Bentley, 2007, p. 392) 5.
Merge Merge adalah simbol berbentuk wajik dengan dua atau lebih flow mengarah masuk ke dalam dan satu flow mengarah ke luar. Merge berfungsi untuk menggabungkan flow yang tadinya dipisahkan oleh decision.
Gambar 2.23 Merge (Whitten & Bentley, 2007, p. 392) 6.
Fork Fork adalah garis tebal berwarna hitam dengan satu flow mengarah ke dalam dan dua atau lebih flow mengarah ke luar. Fungsi dari fork adalah untuk menjelaskan terdapat dua atau lebih actions yang terjadi secara pararel.
Gambar 2.24 Fork (Whitten & Bentley, 2007, p. 392)
39 7.
Join Join adalah garis tebal berwarna hitam dengan dua atau lebih flow mengarah ke dalam dan satu flow mengarah ke luar. Semua proses pararel yang masuk ke join harus selesai sebelum proses dapat dilanjutkan.
Gambar 2.25 Join (Whitten & Bentley, 2007, p. 392) 8.
Activity Final Activity final adalah lingkaran penuh yang terdapat pada lingkaran kosong yang digambarkan untuk menunjukkan bahwa proses telah selesai.
Gambar 2.26 Activity Final (Whitten & Bentley, 2007, p. 392) 9.
Subactivity Indicator Subactivity indicator merupakan simbol yang diletakkan pada action untuk menunjukkan bahwa action tersebut akan dijabarkan lebih lanjut pada activity diagram lainnya.
Gambar 2.27 Subactivity Indicator pada Action (Whitten & Bentley, 2007, p. 393)
40 10. Connector Connector berbentuk lingkaran dimana di dalamnya terdapat sebuah
huruf.
Komponen
ini
berfungsi
untuk
menyambungkan komponen lainnya yang tidak dapat dihubungkan secara langsung.
Gambar 2.28 Connector (Whitten & Bentley, 2007, p. 393)
2.2. Teori Khusus 2.2.1. Android Android merupakan sistem operasi mobile yang dikembangkan di atas kernel Linux yang dimodifikasi. Android dikembangkan pertama kali oleh perusahaan bernama Android dan dibeli oleh Google pada tahun 2005. Android merupakan sistem operasi open source yang dirilis di bawah lisensi open source Apache (Lee, 2011, p. 2). 2.2.1.1. Android Version Berikut ini adalah versi Android yang sudah diluncurkan (Smith, 2011): 1.
Android 1.0 Merupakan versi pertama dari Android yang dirilis ke publik. Perangkat yang menggunakan Android 1.0 adalah HTC Dream atau disebut T-Mobile G1 di Amerika Serikat. Versi
41 ini sudah mendukung kamera dan aplikasi-aplikasi Google seperti Gmail, Google Maps, dan Google Contacts. 2.
Android 1.1 Merupakan pengembangan dari Android 1.0. Android 1.1 hanya disertakan pada perangkat T-Mobile G1 dan memiliki perbaikan dari bug yang ada di versi sebelumnya.
3.
Android 1.5 Android 1.5 (Cupcake) yang memiliki pengembangan fitur dan antar muka yang diperbaharui. Android 1.5 mendukung fitur widget, copy-paste dari aplikasi browser, dan merekam video berformat MPEG-4 dan 3GP.
4.
Android 1.6 Android 1.6 (Donut) memiliki fitur tambahan seperti aplikasi pencarian lewat teks atau suara. Android 1.6 sudah mendukung fitur gesture framework dan gesture builder yang memungkinkan pengembang membuat aplikasi berdasarkan gesture input dari touchscreen yang dibuat secara khusus untuk aplikasi yang dibangun.
5.
Android 2.0 dan Android 2.1 Android 2.0 dan Android 2.1 yang disebut juga dengan nama Eclair memiliki penambahan fitur seperti dukungan terhadap HTML5 di browser, optimasi terhadap kinerja perangkat keras, dan multitouch.
42 6.
Android 2.2 Android 2.2 (Froyo) merukan pengembangan dari Android 2.1. Android 2.1 memiliki optimasi terhadap penggunaan memori dan kecepatan proses perangkat. Android 2.2 merupakan salah satu versi Android yang paling banyak digunakan (Android Developer, 2012).
7.
Android 2.3 Android 2.3 (Gingerbread) memiliki tampilan antar muka pengguna yang diperbaharui dan dukungan terhadap layar perangkat yang lebih besar. Android 2.3 juga merupakan versi Android yang paling banyak digunakan selain Android 2.2.
8.
Android 3.0 Android 3.0 (Honeycomb) merupakan versi Android yang dikhususkan untuk perangkat tablet. Perangkat pertama yang menggunakan Android versi ini adalah Motorola Xoom (Patel, 2011). Android 3.0 memiliki desain antar muka yang berbeda dengan Android versi sebelumnya dan didesain khusus untuk mengakomodasi layar perangkat yang lebih besar di perangkat tablet.
9.
Android 4.0 Android 4.0 (Ice Cream Sandwich) merupakan versi Android terbaru yang dirilis ke publik. Google mengkonfirmasi bahwa perangkat yang menggunakan Android versi 2.3 dapat menggunakan Android 4.0 (Stevens, 2011). Android 4.0
43 memiliki penambahan fitur seperti dukungan terhadap widget yang dapat diubah ukurannya, kunci layar menggunakan teknologi face recognition, dan input suara yang telah diperbaharui. 10. Android 4.1 Android 4.1 (Jelly Bean) merupakan versi Android terbaru yang dirilis oleh Google. Android 4.1 mendukung reaksi sentuhan dan animasi yang lebih lancar dibandingkan dengan versi sebelumnya (Android Developer, 2012). 2.2.1.2. Komponen Antar Muka Android Berikut ini adalah komponen antar muka yang terdapat pada Android: 1.
Layout Layout digunakan untuk menentukan struktur antar muka yang ditampilkan pada layar. Berikut ini adalah jenis layout yang dapat digunakan pada Android (Android Developer, 2012): a. Linear Layout Linear layout menampilkan komponen di dalamnya dalam baris horisontal atau vertikal. Linear layout dapat menghasilkan scrollbar apabila tampilan yang ada melebihi ukuran layar.
44 b. Relative Layout Relative layout memungkinkan pengembang menentukan posisi relatif setiap komponen terhadap komponen lainnya. c. Web View Web view menampilkan halaman web pada aplikasi Android. d. List View List view menampilkan komponen – komponen pada antar muka dalam bentuk baris berkolom satu. e. Grid View Grid View menampilkan komponen – komponen pada antar muka dalam bentuk tabel dua dimensi. 2.
Input Control Input control merupakan komponen interaktif dalam antar muka Android. Berikut ini adalah jenis input control yang ada pada Android (Android Developer, 2012): a. Button Button merupakan komponen interaktif berupa tombol yang dapat ditekan oleh pengguna. b. Text Field Text field merupakan bidang teks yang dapat diisi oleh pengguna.
45 c. Checkbox Checkbox merupakan komponen interaktif berisi pilihan yang dapat dipilih oleh pengguna. Pengguna dapat memilih lebih dari satu pilihan pada checkbox. d. Radio Button Radio button merupakan komponen interaktif berisi pilihan yang dapat dipilih oleh pengguna dimana pengguna hanya dapat memilih satu pilihan. e. Toggle Button Toggle button merupakan tombol yang berisi dua pilihan. Apabila tombol ditekan pilihan yang sedang aktif akan diganti dengan pilihan yang lain. f. Spinner Spinner
merupakan
komponen
yang
menyediakan
beberapa pilihan dan pengguna hanya dapat memilih salah satu dari pilihan yang ada. g. Pickers Pickers merupakan komponen yang digunakan untuk memasukkan waktu dan tanggal. 3.
Imageview Imageview merupakan komponen antar muka yang dapat menampilkan gambar. Imageview menyediakan fasilitas pengubahan ukuran dan warna dari gambar yang ditampilkan (Android Developer, 2012).
46 4.
Dialog Dialog merupakan komponen berupa jendela kecil yang muncul pada layar. Dialog digunakan untuk memberikan informasi pada pengguna atau menerima tambahan informasi dari pengguna sebelum aplikasi meneruskan prosesnya. Dialog muncul tanpa memenuhi layar (Android Developer, 2012).
5.
Toast Toast merupakan komponen yang menampilkan umpan balik dalam bentuk popup yang kecil. Besar dari toast yang muncul tergantung dari isi di dalamnya dan selama toast muncul aplikasi tetap berjalan tanpa ada interupsi. Toast menghilang secara otomatis setelah jangka waktu yang ditentukan (Android Developer, 2012).
2.2.1.3. Java For Mobile (Architecture Language) Aplikasi Android ditulis dengan bahasa Java dan dieksekusi di Virtual Machine yang disebut Dalvik. Struktur arsitektur dalam Android dapat dibagi menjadi lima lapisan yaitu Linux Kernel, Native Libraries, Android Runtime, Application Framework, dan Application (Brahler, 2010, p. 4).
47
Gambar 2.29 Android Architecture (Brahler, 2010, p. 4) 1.
Linux Kernel Kernel dalam Android Linux Kernel yang dimodifikasi sesuai dengan kebutuhan Android. Kernel Android diperpanjang dengan keberadaan driver dan power management. Dalam kernel Android terdapat wake locks yang mencegah sistem masuk ke dalam keadaan sleep. Dalvik memiliki akses ke dalam wake locks melalui class power manager. Kernel Android juga memiliki memory management yang mengatur perubahan memori yang dilakukan oleh kernel.
2.
Native Libraries Native Libraries merupakan core libraries yang terdapat pada Android. Libraries yang terdapat pada application framework berjalan di atas native libraries. Native Libraries ditulis dengan menggunakan bahasa C/C++. Android menyediakan
48 Native Development Kit (NDK) untuk mengembangkan aplikasi menggunakan bahasa C/C++. 3.
Android Runtime Android Runtime terdiri dari Dalvik Virtual Machine dan Java core libraries. Seluruh aplikasi yang dijalankan di Android ditulis dalam bahasa Java dan dijalankan di Dalvik Virtual Machine. Kelebihan Dalvik dibandingkan dengan virtual machine yang lainnya adalah dukungan terhadap RAM yang kecil dan CPU yang lambat. Kapasitas minimum dari RAM yang dibutuhkan adalah 64MB.
4.
Application Framework Framework yang disediakan oleh Android adalah API yang meliputi jaringan, multimedia, GUI, power management, penyimpanan data, peta dan lokasi, pencarian, WebKit, speech, dan C2DM (Cloud to Device Messaging). Libraries dari framework berjalan di atas libraries utama dari Android yang merupakan enkapsulasi dari sistem native yang dimiliki oleh Android. Seluruh libraries yang ada dalam framework Android ditulis dengan bahasa Java.
5.
Application Aplikasi dalam Android ditulis dengan bahasa Java dan dijalankan di Dalvik Virtual Machine. Komponen aplikasi dalam Android meliputi Activity, Service, BroadcastReceiver, dan ContentProvider.
49 a. Activity Activity merupakan tampilan program yang sedang berjalan pada satu layar. Untuk menampilkan GUI untuk pengguna aplikasi harus memiliki komponen Activity. Fungsi penting dalan Activity adalah onCreate(), onDestroy(), onResume(), onPause(), dan onRestart(). b. Service Service merupakan komponen aplikasi yang berjalan di belakang (background) dan berjalan secara long-running operation. Fungsi yang ada dalam Service adalah startService() dan bindService(). c. BroadcastReceiver BroadcastReceiver merupakan komponen aplikasi yang berjalan
di
belakang.
BroadcastReceiver
dijalankan
tergantung dari trigger dan hanya dijalankan secara sesaat. d. ContentProvider ContentProvider menyediakan akses ke dalam struktur data, mengenkapsulasi, dan mendefinisikan sekuritas data. Terdapat lima jenis proses yang dikenal dalam sistem Android (Android Developers, 2012), yaitu: a. Foreground Proses yang dibutuhkan ketika pengguna menjalankan sesuatu. Hanya sedikit proses foreground yang berjalan dalam satu waktu. Proses foreground meliputi Activity
50 yang memanggil fungsi onResume(), Service yang berhubungan, dan BroadcastReceiver yang mengeksekusi onReceive(). b. Visible Proses yang tidak memiliki komponen foreground namun dapat berpengaruh terhadap pengguna. Proses visible meliputi Activity yang memanggil onPause() dan Service yang berhubungan dengan Activity tersebut. c. Service Merupakan
Service
yang
sudah
berjalan
dengan
memanggil fungsi startService(). d. Background Merupakan proses yang tidak berpengaruh pada pengguna proses tersebut dapat dimatikan sewaktu-waktu untuk menghemat memori. e. Empty Proses empty tidak menjalankan Activity apapun dan dijalankan hanya untuk keperluan caching. Proses tersebut dapat dimatikan sewaktu-waktu. 2.2.1.4. Tesseract (Optical Character Recognition Engine) Tesseract merupakan mesin Optical Character Recognition (OCR) yang dikembangkan oleh HP dan saat ini dirilis oleh Google sebagai proyek open source. Tesseract memiliki fungsi untuk
51 memindai gambar yang berisi teks dan mengubahnya menjadi teks (Kay, 2007). Tesseract menggunakan training data untuk mendeteksi karakter. Training data yang disediakan oleh Tesseract meliputi training data untuk Bahasa Jepang (Google, 2012). Tesseract dapat digunakan di aplikasi Android sebagai library. Tesseract ditulis dengan menggunakan bahasa pemrograman C++ sehingga untuk memasukkan Tesseract sebagai library di aplikasi Android yang menggunakan bahasa Java dibutuhkan Native Development Kit (Bhaskar, Lavassar, & Green, 2010, p. 2). Versi Android minimal yang dapat menggunakan Tesseract adalah Android versi 2.2. 2.2.2. Aplikasi Edukasi 2.2.2.1. Definisi Aplikasi edukasi adalah perangkat lunak yang membantu pengajaran pengguna dan dapat meliputi fungsi drill and practice, tutorial, simulasi, permainan, dan problem solving. Aplikasi edukasi dapat membantu pengguna untuk mengingat dalam jangka panjang, menyenangkan, dan memotivasi (Frank, 2008). 2.2.2.2. Instructional Design Beberapa prinsip harus diperhatikan dalam desain instruksional (Clark & Mayer, 2008, pp. 53-195). 1.
Multimedia Principle
52 Multimedia principle terkait dengan pengunaan teks dan grafis. Penggunaan grafis dalam informasi harus mendukung teks yang ada. Penggunaan grafis sekedar untuk dekorasi harus
dihindari.
Grafis
menggambarkan
bentuk
lebih
tepat
sebuah
digunakan
obyek,
untuk
menjelaskan
hubungan antar informasi baik kualitatif atau kuantitatif, menjelaskan perubahan suatu obyek, dan memvisualisasikan fenomena yang tidak terlihat. Penggunaan grafis yang tidak bergerak lebih baik daripada animasi karena memungkinkan pelajar mencerna proses secara aktif. 2.
Contiguity Principle Contiguity Principle terkait dengan teks yang menjelaskan sebuah
grafis.
Teks
yang
menjelaskan
grafis
harus
ditempatkan tanpa terpisah dengan grafis yang dijelaskan. Grafis dan teks harus ditempatkan dalam satu layar. Penggunaan
legenda
untuk
menerangkan
grafis
tidak
dianjurkan, cara yang lebih dianjurkan adalah penempatan nama dan sebagian deskripsi di dekat bagian grafis yang diterangkan. 3.
Modality Principle Modality Principle terkait dengan penggunaan audio dalam informasi. Penggunaan audio sebagai narasi dianjurkan bila memungkinkan. Penggunaan audio dan grafis akan akan membagi beban pembelajaran pada indera pendengaran dan
53 penglihatan. Penggunaan audio tidak disarankan untuk informasi yang kompleks seperti rumus matematika. 4.
Redundancy Principle Redundancy Principle terkait dengan penggunaan teks dan audio untuk informasi yang sama. Informasi tidak boleh disampaikan melalui teks dan audio yang memiliki isi yang sama. Hal ini menambah beban kognitif bagi pengguna karena pengguna akan membandingkan teks dengan audio.
5.
Coherence Principle Coherence principle terkait dengan penggunaan materi yang menarik namun tidak berhubungan dengan pembelajaran. Salah satu contohnya adalah penggunaan audio yang berlebihan yang membebani pelajar. Penggunaan teks berisi trivia tidak membantu pelajar memahami pelajaran yang diberikan.
6.
Personalization Principle Personalization principle terkait dengan gaya penyampaian informasi,
antara
formal
dan
bersifat
percakapan.
Penyampaian informasi dengan gaya percakapan karena membuat pengguna teribat dengan pengolahan kognitif yang lebih dalam karena berusaha mengerti inti percakapan. Penggunaan narasi disarankan menggunakan suara manusia bukan buatan, dimana suara wanita lebih disarankan.
54 7.
Segmenting and Pretraining Principle Segmenting principle terkait dengan memecah pelajaran menjadi bagian-bagian kecil. Informasi yang kompleks harus dipecah menjadi bagian-bagian untuk meringankan beban pelajar atas pelajaran. Mengurangi informasi tidak disarankan karena akan mengurangi akurasi pelajaran. Pretraining principle terkait dengan pemberian materi kunci sebelum materi detil diberikan. Hal ini mempersiapkan pelajar sebelum menghadapi informasi yang banyak.
Motivasi adalah hal yang mendorong seseorang untuk melakukan sesuatu. Motivasi yang dimiliki seseorang berbeda satu sama lain baik dalam hal besar maupun orientasi motivasinya. Motivasi intrinsik adalah motivasi untuk melakukan sesuatu yang secara melekat menarik untuk dilakukan bukan karena konsekuensi yang terpisah dari kegiatan tersebut. Motivasi intrinsik dianggap mampu menjadi motivasi yang mengarah pada pembelajaran dan kreativitas dengan kualitas tinggi (Ryan & Deci, 2000, pp. 54 56). Menurut
teori
desain
motivasi,
untuk
membuat
desain
instruksional yang menarik, efektif, dan efisien diperlukan empat elemen motivasi yang disebut ARCS (Balaban-Sali, 2008, pp. 150-151). 1.
Atttention
55 Pembelajaran harus menarik perhatian pelajar agar pelajar dapat fokus ke dalam isi pelajaran. Cara dari menarik perhatian adalah penggunaan partisipasi aktif dari pelajar, humor, variabilitas, dan contoh kasus yang spesifik. 2.
Relevance Penggunaan konteks yang relevan dengan pelajar membuat pelajar mampu memahami isi pelajaran dengan lebih baik. Bentuk
pembelajaran
yang
relevan
adalah
membagi
pengalaman, kegunaan ilmu di masa kini dan masa depan, dan menyediakan pilihan untuk menyelesaikan kasus. 3.
Confidence Desain instruksional yang baik menjadikan pelajar memiliki keinginan untuk sukses. Pemberian sasaran pembelajaran dapat meningkatkan motivasi pelajar untuk berhasil. Sukses yang diberikan harus memiliki makna bagi pelajar.
4.
Satisfaction Hasil dari pembelajaran harus memberikan kepuasan bagi pelajar. Pemberian umpan balik dapat membantu pelajar menemukan makna dari proses belajarnya. Hasil belajar harus dapat dirasakan sebagai hal yang berguna.
Game dapat digunakan untuk membantu proses pembelajaran. Game
dapat
digunakan
untuk
melatih
pengetahuan
dan
kemampuan yang sudah dipelajari, mengidentifikasi kelemahan pelajar,
meninjau
ulang
konten
yang
disediakan,
dan
56 mengilustrasikan konsep dan prinsip yang ada. Game membuat pelajar tetap tertarik dengan proses pembelajaran (Brown & Green, 2006, pp. 185 - 186). Penggunaan bahasa ibu sebagai bahasa pengantar pembelajaran bahasa asing terbukti lebih baik karena penggunaannya akan dikembalikan kepada arti dalam bahasa ibu penuturnya (Wu & Thierry, 2010). Efisiensi meningkat apabila pembelajaran bahasa asing menggunakan bahasa ibu sebagai bahasa pengantar.
2.2.3. Mobile Design Prinsip desain dalam mobile device adalah sebagai berikut (Ballard, 2007): 1.
Mobilize don’t Miniaturize Pemindahan sistem dari komputer desktop ke dalam mobile device sering menimbulkan ketidakoptimalan dalam aplikasinya dikarenakan oleh perbedaan dalam hal perangkat dan penggunaan perangkat tersebut (Ballard, 2007, pp. 71 - 81). Sistem dalam mobile device sebaiknya dirancang sebagai sistem yang ringkas namun dapat menghadirkan fungsi-fungsi yang dibutuhkan oleh pengguna sehingga memudahkan dalam hal kepraktisan. Penggunaan mobile device dengan layar yang lebih kecil membutuhkan desain antar muka yang memanfaatkan layar dengan efektif dan sistem harus dapat dioptimasikan untuk penggunaan perangkat menggunakan satu tangan. Keberadaan koneksi dengan jaringan internet harus didesain untuk mengantisipasi hilangnya koneksi dan selalu dapat terhubung dengan
57 internet selama koneksi ada. Sistem harus didesain dengan baik dan tidak menggunakan banyak sumber daya mengingat kebanyakan mobile device bergantung pada batere sebagai sumber daya. 2.
User Context Komputer desktop cenderung berada di satu tempat secara terus menerus sedangkan mobile device digunakan di banyak tempat. Secara pembuatan sistem, komputer desktop dapat menggunakan sistem yang tidak perlu memperhatikan dimana pengguna berada sedangkan sistem pada mobile device harus dapat menggunakan resource yang ada saat digunakan. Hal yang harus diperhatikan dalam sistem mobile device adalah penggunaan koneksi internet yang fleksibel, GPS, kamera, dan sensor gerak (Ballard, 2007, pp. 82 - 83).
3.
Handling Device Proliferation Perkembangan mobile device yang cepat membutuhkan sistem yang dapat beradaptasi. Sistem harus dibuat dengan target yang jelas antara perangkat desktop atau mobile device. Dalam kategori mobile device sendiri harus ada pembedaan antar platform. Apabila sistem yang dibuat menggunakan web, sistem yang dibuat harus dipastikan berjalan di mobile device karena standar web antara komputer desktop dan mobile device yang berbeda. (Ballard, 2007, pp. 83 - 90).
4.
Emulator and Simulator Penggunaan emulator dan simulator dalam pengembangan sistem berpengaruh pada hasil akhir sistem tersebut. Emulator dan simulator menyediakan tampilan program yang menyerupai aslinya namun
58 dengan
pengalaman
penggunaan
yang
berbeda.
Salah
satu
perbedaannya adalah keberadaan tombol fisik di emulator dan simulator yang tidak dapat digunakan secara langsung (harus diaktifkan dengan mouse atau keyboard). Selain itu perangkat yang menggunakan layar sentuh tidak dapat diemulasikan dengan optimal dikarenakan
oleh
komputer
desktop
yang
kebanyakan
tidak
menyediakan layar sentuh. Pengembangan sistem tetap harus melibatkan perangkat aslinya untuk menguji pengalaman penggunaan sistem dengan lebih nyata (Ballard, 2007). 5.
Detailed Design Recommendations Pembuatan sistem yang baik dapat dicapai dengan mengikuti standar yang disediakan oleh masing-masing platform. Misalnya adalah Windows Mobile Design Guidelines yang disediakan oleh Microsoft maupun API Guides yang disediakan untuk platform Android. Penggunaan sistem web dapat mengikuti standar yang ditetapkan oleh W3C(World Wide Web Consortium).
Desain aplikasi dalam perangkat Android sama seperti desain mobile device pada umumnya namun pengembang dihadapkan pada kebutuhan pengembangan open source dimana tidak terdapat eksklusivitas (Mutual Mobile, 2011, p. 3). Desain dalam Android dapat melibatkan elemen antar muka yang sudah disediakan oleh SDK Android. Elemen antar muka yang sering digunakan oleh pengembang untuk membuat aplikasi yang sesuai dengan standar Android adalah (Mutual Mobile, 2011, pp. 7-12).
59 1.
Tab Bar Tab bar adalah elemen antar muka berupa label yang biasanya diletakkan di bagian atas bawah layar untuk membagi informasi yang ditampilkan.
2.
Option Menu Option menu menampilkan aktivitas yang terkait dengan program yang sedang berjalan seperti fungsi untuk menyimpan, menampilkan setelan, dan mengubah tampilan program.
3.
Context Menu Context menu memiliki fungsi yang sama seperti klik kanan pada aplikasi
desktop.
Kegunaan
elemen
antar
muka
ini
adalah
menampilkan setelan dan opsi pada bagian konten tertentu. 4.
Dialog Boxes Dialog
boxes
menampilkan
informasi
yang
penting
dan
mengakibatkan proses di belakangnya berhenti untuk sesaat. Dialog boxes dapat digunakan untuk meminta input seperti color picker, pencarian, dan date picker. 5.
Alert Dialog Alert dialog digunakan untuk menampilkan peringatan, pesan, atau konfirmasi atas tindakan pengguna. Sebuah alert dialog dapat memuat tombol sampai sebanyak tiga buah.
60 6.
Progress Alert Progress alert menampilkan pesan proses yang sedang berjalan. Progress alert dapat ditampilkan untuk dua keadaan yaitu proses yang berjalan dengan durasi tidak tetap dan proses yang memilki durasi tetap.
7.
List View List view merupakan elemen antar muka Android yang digunakan untuk menampilkan informasi yang berupa daftar. Tampilan dari list view dapat dikustomisasi sesuai dengan kebutuhan program.
2.2.4. Bahasa Jepang Bahasa Jepang merupakan bahasa yang digunakan oleh kurang lebih 130.000.000 orang penduduk Jepang dan oleh imigran ataupun emigran negara tersebut. Bangsa Jepang diduga pertama kali memperoleh seni menulis pada tahun 405 AD ketika seorang cendekiawan Korea datang ke Jepang membawa buku-buku berbahasa China dan mengajarkan Bangsa Jepang cara membaca dan menulis aksara China (Suski, 2011, p. 1). Penulisan aksara Jepang memang didasari oleh aksara China, namun struktur tata bahasa kedua bahasa ini tidak sama. Dalam menuliskan hurufhuruf Jepang, urutan dan arah goresan pena sangat berpengaruh. Bahasa Jepang dituliskan dengan menggunakan kombinasi tiga buah aksara, yaitu:
61 2.2.4.1. Hiragana Hiragana(ひらがな) adalah salah satu dari dua sistem aksara Jepang (kana) yang merupakan hasil penyederhanaan aksara China. Hiragana dasar terdiri dari 46 huruf dimana masingmasing huruf mewakili bunyi yang ada dalam Bahasa Jepang. Fungsi dari hiragana adalah: 1. Sebagai partikel penguhubung antar kata atau kalimat. 2. Dituliskan di samping atau di atas kanji untuk menjelaskan cara membaca kanji tersebut. Hiragana dalam kasus ini disebut dengan furigana (Gilhooly, 2010, p. xii). 3. Sebagai kata-kata untuk percakapan non-formal. 4. Sebagai kata yang menunjukkan bunyi tertentu, misal suara detak jantung (どきどき, dokidoki). 5. Sebagai kata-kata pertama yang dipelajari oleh pemula atau anak-anak sebelum mempelajari kanji.
62 Tabel 2.1 Tabel Hiragana Dasar
s
a i u e o あ い う え お か き く け こ さ し す せ そ
t
た ち つ て と
k
n h
shi chi
tsu
な に ぬ ね の は ひ ふ へ ほ fu
m ま み む め も y や ゆ よ r ら り る れ ろ を w わ o
ん n/m
Ke-46 huruf hiragana dasar belum mewakili keseluruhan bunyi yang ada pada Bahasa Jepang. Masih ada lima buah konsonan yaitu g, z, d, b, dan p yang dibentuk dengan cara menambahkan dakuten (濁点) yang berbentuk dua buah garis seperti tanda petik dua ( ゛) dan handakuten (半濁点) yang berbentuk lingkaran kecil ( ゜) di atas huruf dasar konsonan k, s, t, dan h. Khusus untuk handakuten hanya dapat ditambahkan pada huruf konsonan h untuk membentuk bunyi konsonan b.
63
Tabel 2.2 Tabel Hiragana dengan Dakuten dan Handakuten a
i
u
e
o
kg が ぎ ぐ げ ご sz ざ じ ず ぜ ぞ ji
td
だ ぢ づ で ど ji
zu
hb ば び ぶ べ ぼ hp ぱ ぴ ぷ ぺ ぽ
Selain konsonan yang telah dijelaskan, hiragana dasar dapat digabungkan dengan huruf ya(や), yu(ゆ), dan yo(よ) kecil untuk membentuk konsonan dengan bunyi seperti kya, kyu, kyo, dan lainnya. Tabel 2.3 Tabel Hiragana dengan Kombinasi Ya, Yu, dan Yo Kecil ky
ya yu yo
sh
ch
ny
hy
my
ry
gy
j
by
py
sha
cha
nya
hya
mya
rya
gya
ja
bya
pya
kyu
shu
chu
nyu
hyu
myu
ryu
gyu
ju
byu
pyu
kyo
sho
cho
nyo
hyo
myo
ryo
gyo
jo
byo
pyo
きや しや ちや にや ひや みや りや ぎや じや びや ぴや kya きゆ しゆ ちゆ にゆ ひゆ みゆ りゆ ぎゆ じゆ びゆ ぴゆ きよ しよ ちよ によ ひよ みよ りよ ぎよ じよ びよ ぴよ
Jika terdapat tsu (つ) kecil diantara huruf hiragana, maka huruf yang terletak setelah つkecil tersebut harus diucapkan dengan hitungan dua suku kata. Pengucapan seperti ini disebut dengan soku on(そくおん) atau suara konsonan kembar. Contoh, まって (tunggu) akan menjadi matte (dibaca mat-te).
64 Perpanjangan bunyi vokal atau yang disebut dengan choo on (ちようおん) suatu huruf hiragana pada Bahasa Jepang dilakukan dengan menambahkan huruf a(あ), i(い), dan u(う). Perpanjangan bunyi ini sangat penting, karena kata yang memiliki perpanjangan bunyi (choo on) dan yang tidak memiliki perpanjangan bunyi (sei on atau vokal pendek) memiliki dua arti yang berbeda. Contoh, おばさん(obasan) memiliki arti tante sedangkan おばあさん (obaasan) memiliki arti nenek. Selain memperpanjang bunyi i, huruf i(い) juga dipergunakan untuk memperpanjang bunyi e. Huruf u(う) juga dipergunakan untuk memperpanjan bunyi o selain untuk bunyi u. Terkadang bunyi e dan o juga diperpanjang juga dengan menggunakan karakter Hiragana mereka sendiri, seperti pada おねえさん (oneesan/kakak perempuan) dan おおきい (ooki/besar), namun penggunaan seperti ini tidak banyak (Kim, 2012). 2.2.4.2. Katakana Katakana(カタカナ)merupakan salah satu dari dua sistem aksara Jepang (kana) selain hiragana. Dasar teori dari katakana pada intinya sama dengan hiragana. Perbedaan kedua aksara ini hanya terletak pada bentuk huruf dan fungsi dari aksara tersebut. Berikut fungsi katakana:
65 1. Sebagai representasi kata serapan dari bahasa asing. Contoh, アイスクリーム(aisukuriimu / ice cream). 2. Untuk menuliskan nama-nama asing, seperti nama negara atau nama orang. Contoh, マリア(Maria), アメリカ (Amerika). 3. Sebagai penekanan terhadap suatu kata (berfungsi sama seperti penggunaan italics, bold, atau capitals). 4. Sebagai kata yang menunjukkan bunyi tertentu, misal suara kucing (ニャー, nyaa), suara sapi (モー, moo), dan lainnya. 5. Untuk menuliskan nama produk, perusahaan, atau hal komerisal lainnya. Contoh, トヨタ(Toyota). 6. Untuk menuliskan nama klasifikasi tanaman dan hewan. Tabel 2.4 Tabel Katakana Dasar a
k s t n h m y r w
ア カ サ タ ナ ハ マ ヤ ラ ワ
i
イ キ シ shi チ chi ニ ヒ ミ リ
u
ウ ク ス ツ tsu ヌ フ fu ム ユ ル
e
エ ケ セ テ ネ ヘ メ レ
o
オ コ ソ ト ノ ホ モ ヨ ロ ヲ o
ン
n/m
66 Sama seperti hiragana, Katakana dasar dapat ditambahkan dengan dakuten (濁点) dan handakuten (半濁点) untuk membentuk konsonan g, z, d, b, dan p dari huruf dasar konsonan k, s, t, dan h.
Tabel 2.5 Tabel Katakana dengan Dakuten dan Handakuten a
kg sz td hb hp
ガ ザ ダ バ パ
i
ギ ジ ji ヂ ji ビ ピ
u
グ ズ ヅ zu ブ プ
e
ゲ ゼ デ ベ ペ
o
ゴ ゾ ド ボ ポ
Selain itu huruf katakana dasar juga dapat dikombinasikan dengan ya(ヤ), yu(ユ), dan yo(ヨ) kecil untuk membentuk huruf dengan bunyi seperti kya, kyu, dan kyo sama seperti kombinasi hiragana. Tabel 2.6 Tabel Katakana dengan Kombinasi Ya, Yu, dan Yo Kecil ky
ya yu yo
sh
ch
ny
hy
my
ry
gy
j
by
py
sha
cha
nya
hya
mya
rya
gya
Ja
bya
pya
kyu
shu
chu
nyu
hyu
myu
ryu
gyu
Ju
byu
pyu
kyo
sho
cho
nyo
hyo
myo
ryo
gyo
jo
byo
pyo
キヤ シヤ チヤ ニヤ ヒヤ ミヤ リヤ ギヤ ジヤ ビヤ ピヤ kya キユ シユ チユ ニユ ヒユ ミユ リユ ギユ ジユ ビユ ピユ キヨ シヨ チヨ ニヨ ヒヨ ミヨ リヨ ギヨ ジヨ ビヨ ピヨ
Karena keterbatasan bunyi pada Bahasa Jepang, maka dibuatlah kombinasi baru untuk katakana agar dapat merepresentasikan bunyi yang berasal dari bahasa asing seperti ti, tu, di, du, che, fa, fi, fe, fo, wi, we, wo, va, vi, vu, ve, dan vo.
67 Tabel 2.7 Tabel Katakana dengan Kombinasi a, i, u, e, dan o Kecil t
a i u e o
タ ta ティ トゥ テ ト ti
tu te
to
d
ダ ディ ドゥ デ ド da di
du de
do
ch
チヤ チ チユ チエ チヨ cha chi
chu che
cho
f
ファ フィ フ フェ フォ fa fi
fu fe
fo
w
ワ ウィ ウ ウェ ウォ wa wi
wu we
wo
v
ヴァ ヴィ ヴ ヴェ ヴォ va vi
vu ve
vo
Karena dalam sistem penulisan Bahasa Jepang tidak menggunakan spasi,
maka
terkadang
tanda
(・)
dipergunakan
untuk
menunjukkan spasi. Contoh, ロック・アンド・ロール (rock and roll). Bunyi konsonan kembar atau soku on (ソクオン) pada katakana dilambangkan dengan kehadiran huruf tsu (ツ) kecil di depan huruf yang akan diucapkan dengan hitungan dua suku kata. Contoh, ロック dibaca rokku (rock). Bunyi vokal panjang atau choo on (チヨーオン) pada katakana dilambangkan dengan tanda onbiki (ー). Contoh, アート dibaca aato (art), チースdibaca chiisu (cheese).
2.2.4.3.
Kanji Kanji merupakan aksara China yang dipergunakan dalam penulisan Bahasa Jepang. Beberapa Kanji memiliki arti dan cara
68 baca yang berbeda dengan huruf China yang memiliki bentuk yang sama dengan kanji tersebut. Cara baca kanji dengan cara China disebut dengan onyomi (
読み) sedangkan cara baca
Jepang disebut kunyomi (訓読み). Kanji yang penulisannya digabungkan dengan kanji lain akan dibaca dengan cara Onyomi, sementara apabila kanji yang berdiri sendiri atau yang diikuti oleh Okurignana (karakter hiragana yang mengikuti kanji) akan dibaca dengan cara kunyomi (Kim, 2012, p. 22). Contoh, 力 akan dibaca chikara (cara kunyomi) apabila berdiri sendiri atau bila diikuti dengan okurigana seperti 力ずくで (chikarazuku de), namun apabila digabungkan dengan Kanji lain seperti 腕力 (wanryoku) maka Kanji 力 akan dibaca ryoku (cara onyomi). Terdapat sekitar 40.000 Kanji, namun hanya sekitar 2.000 Kanji yang benar-benar dipergunakan dalam penggunaan Bahasa Jepang sehari-hari (Kim, 2012, p. 12). Kanji digunakan untuk membedakan homofon, dimana terdapat banyak aksara yang memiliki pengucapan yang sama namun memiliki arti yang berbeda (Kim, 2012, p. 12).