bab 2 - library.binus.ac.idlibrary.binus.ac.id/ecolls/ethesisdoc/bab2/2014-1-00123-if...
TRANSCRIPT
7
BAB 2
Tinjauan Pustaka
2.1 Teori yang berkaitan dengan Software Engineering
2.1.1 Software engineering
2.1.1.1 Pengertian Software Engineering
Menurut Roger S. Pressman (2010: 4) perangkat
lunak (software) didefinisikan sebagai berikut :
1. Instruksi (program komputer) yang ketika dijalankan
memberikan fitur, fungsi dan unjuk kerja.
2. Struktur data yang memungkinkan program untuk
mengolah informasi
3. Informasi deskriptif dalam bentuk nyata dan maya
yang menjelaskan tentang operasi dan kegunaan
program.
Software juga memiliki karakteristik yang berbeda
dengan hardware antara lain:
1. Software direkayasa atau dirancang, tidak diproduksi
atau dimanufaktur
2. Software tidak dapat usang.
3. Software biasanya dibangun secara khusus dari
komponen-komponen software yang dapat
digunakan ulang.
Menurut IEEE yang dikutip oleh Roger S. Pressman
(2010: 13) software engineering merupakan penerapan
pendekatan yang sistematik, teratur dan terukur pada
perkembangan, operasi serta pemeliharaan software.
Sedangkan menurut Ian Sommerville (2010: 6)
software merupakan program komputer dan dokumentasi
program yang dikembangkan dengan tujuan menyediakan
fungsi dan unjuk kerja kepada user serta dapat diandalkan,
digunakan dan dipelihara.
8
Karakteristik software yang baik menurut Ian
Sommerville (2010: 8) diantara lain:
1. Maintainability
Software harus dapat berubah sesuai dengan
perubahan kebutuhan dari user.
2. Dependability and security
Software harus dapat diandalkan untuk tidak
menyebabkan kerusakan fisik dan ekonomi saat
sistem gagal. Software juga tidak dapat diakses atau
dirusak oleh user berbahaya.
3. Efficiency
Software efisien dalam penggunaan sumber daya.
4. Acceptability
Software harus dapat sesuai dan dimengerti oleh
user yang menggunakan software tersebut.
Menurut Ian Sommerville (2010: 7) software
engineering merupakan disiplin perancangan yang
berhubungan dengan seluruh aspek penghasilan software
dari tahap spesifikasi sistem sampai dengan pemeliharaan
sistem.
Kesimpulan kami adalah software merupakan
sekumpulan instruksi yang dibaca oleh perangkat keras
computer yang memiliki ciri-ciri maintainability,
dependability, acceptability, efficiency dan solid security.
Sedangkan software engineering merupakan proses
sistematik, teratur dan terukur dalam perancangan software.
2.1.1.2 Metodologi Scrum
Scrum merupakan salah satu pendekatan atau
metodologi agile software development model. Scrum
menggunakan suatu pola proses yang mencakup
pengumpulan kebutuhan software, analisa kebutuhan yang
terkumpul, design software, perubahan software sesuai
kebutuhan, dan penyampaian software (Pressman, 2010:82).
9
Gambar 2.1 Metodologi Scrum
Metodologi Scrum terlihat pada gambar 2.1
menitikberatkan pada penggunaan satu set pola proses
software yang terbukti sangat berguna untuk proyek dengan
waktu singkat dan kebutuhan yang sering berubah. Dalam
setiap pola proses terdapat beberapa aktivitas
pengembangan software (Pressman, 2010: 83) antara lain:
1. Backlog
Backlog merupakan daftar kebutuhan proyek atau
fitur yang akan dibuat dalam software. Kebutuhan
dapat berubah terus sehingga dapat bertambah atau
berkurang.
2. Sprint
Sprint merupakan tahap pengubahan kebutuhan
proyek yang sudah ditentukan menjadi software
sesuai dengan batas waktu yang sudah ditentukan
umumnya tiga puluh hari. Batas waktu sprint
bervariasi sesuai dengan backlog dan kesepakatan
tim pengembang software. Beberapa daftar backlog
yang digunakan dalam sprint disebut dengan sprint
backlog.
10
3. Scrum meeting
Scrum meeting merupakan tahap pembahasan
mengenai sejauh mana pengerjaan dalam tahap
sprint, masalah apa yang ditemukan dalam tahap
sprint, dan apa yang akan selesai dikerjakan di
scrum meeting berikutnya. Scrum meeting umumnya
dilakukan setiap hari dan berdurasi 15 menit.
4. Demos
Demos merupakan tahap penyampaian hasil dari
sprint yang akan dievaluasi. Sprint akan dilanjutkan
atau dihentikan sesuai dengan hasil evaluasi
umumnya akan dihentikan jika semua fitur dalam
backlog sudah selesai.
2.1.2 Interaksi Manusia dan Komputer
2.1.2.1 Pengertian Interaksi Manusia dan Komputer
Menurut Shneiderman dan Plaisant (2010: 22)
interaksi manusia dan komputer adalah perpaduan antara
ilmu desain dan ilmu komputer dengan menerapkan prinsip
desain yang baik kedalam komputer melalui alat-alat
komputer canggih.
2.1.2.2 Lima Faktor Manusia Terukur
Menurut Shneiderman dan Plaisant (2010: 32)
terdapat lima faktor manusia terukur yang harus
dipertimbangkan dalam perancangan antarmuka antara lain:
1. Waktu belajar
Jumlah waktu yang diperlukan oleh user untuk
mempelajari melakukan sejumlah aksi yang
diperlukan dalam menyelesaikan suatu tugas.
2. Kecepatan kinerja
Kecepatan user dalam menyelesaikan suatu tugas.
3. Tingkat kesalahan user
Jumlah dan jenis kesalahan yang dilakukan oleh user
dalam menyelesaikan suatu tugas.
11
4. Daya ingat
Kemampuan user dalam mengingat pengetahuan
tentang antarmuka setelah satu jangka waktu tertentu.
5. Kepuasan subjektif
Kepuasan masing-masing individu terhadap semua
aspek yang ada dalam antarmuka.
2.1.2.3 Delapan Aturan Emas
Shneiderman dan Plaisant (2010: 88)
mengemukakan bahwa ada delapan prinsip dalam
perancangan antarmuka yang disebut sebagai “Eight Golden
Rules”. Eight Golden Rules tersebut antara lain:
1. Berusaha untuk konsisten
Konsisten dalam menggunakan warna, tata
letak objek dalam layar, penggunaan huruf kapital,
penggunaan jenis font dan berbagai unsur lainnya
yang terdapat dalam antarmuka.
2. Penyesuaian penggunaan secara universal
Rancangan antarmuka harus mudah digunakan
oleh berbagai golongan usia, kemampuan atau
pekerjaan, dan kemampuan teknologi baik pemula
atau ahli.
3. Menyediakan umpan balik informatif
Setiap tindakan yang dilakukan oleh user harus
diberikan umpan balik informasi agar user
mengetahui perubahan yang terjadi atas tindakan
tersebut.
4. Merancang dialog untuk akhir keadaan
Memberikan dialog konfirmasi dari sejumlah
aksi dari user dari suatu tahap sebelum melanjutkan
ke tahap berikutnya agar user dapat melihat hasil
tindakannya dan mencegah kesalahan yang tidak
sengaja dilakukan oleh pengguna.
12
5. Mencegah kesalahan
Sistem yang dirancang harus dapat mencegah
kesalahan serius dari user dengan memberikan
peringatan atas kesalahan yang akan terjadi agar dapat
ditangani oleh user.
6. Memungkinkan pengembalian suatu tindakan
dengan mudah
Sistem harus dirancang semaksimal mungkin
agar tindakan dapat dikembalikan dengan mudah agar
user tidak khawatir jika melakukan kesalahan yang
tidak diinginkan.
7. Mendukung pusat kendali internal
User memiliki kuasa penuh atas antarmuka dan
antarmuka tersebut dapat memberikan hasil yang
dikehendaki oleh user atas tindakannya.
8. Mengurangi beban ingatan jangka pendek
Rancangan antarmuka harus dapat membantu
user dalam mengingat informasi yang sudah diberikan
user sebelumnya untuk dapat digunakan kembali pada
waktu mendatang. Prinsip rancangan ini bermaksud
agar pengguna cepat dalam melakukan suatu tindakan
dan cepat untuk beradaptasi kembali dengan
antarmuka.
2.1.2.4 Kategori Pengguna
Shneiderman dan Plaisant (2010: 81) mengemukakan
bahwa ada tiga kategori pengguna yang harus
dipertimbangkan dalam perancangan antarmuka antara lain:
1. Novice Users
Pengguna pemula yang sedikit atau belum
memiliki pengalaman penggunaan antarmuka dan
konsep antarmuka secara umum. Rancangan
antarmuka harus sederhana untuk dapat berhasil
digunakan oleh novice users menyelesaikan suatu
tindakan tertentu.
13
2. Knowledgable Intermittent Users
Pengguna yang sudah memiliki pengalaman
penggunaan dan pengetahuan konsep antarmuka
secara umum. Rancangan antarmuka harus memiliki
terminologi konsisten dan menu yang terstruktur
untuk dapat digunakan oleh knowledgable intermittent
users.
3. Expert Frequent Users
Pengguna yang sudah sering menyelesaikan
tugas dengan antarmuka dan memiliki konsep
antarmuka yang kuat sehingga selalu ingin mencari
cara untuk mempercepat penyelesaian tugas.
Rancangan antarmuka harus memiliki macro,
shortcut, dan command-line untuk digunakan oleh
expert frequent users.
2.1.3 Unified Modeling Language (UML)
Unified Modeling Language merupakan sebuah set model yang
digunakan dalam menggambarkan sebuah sistem perangkat lunak
berbasis objek (Whitten dan Bentley, 2007: 371). UML dapat dibagi
menjadi:
2.1.3.1 Use Case Diagram
Menurut Whitten dan Bentley use case diagram
merupakan diagram yang menggambarkan interaksi sistem
dengan penggunna. Diagram ini menggambarkan siapa
yang menggunakan sistem dan cara apa user (aktor)
berinteraksi dengan sistem. Use case diagram
mengrepresentasikan satu tujuan tunggal dari sistem dan
mendefinisikan urutan dari aktivitas dan interaksi user
dalam mencapai tujuan tersebut. Use case diagram juga
digunakan bersamaan dengan use case narrative yang
berupa deskripsi teks bagaimana user berinteraksi dengan
sistem untuk menyelesaikan suatu tugas (2007: 246).
Berikut gambar 2.2 contoh use case diagram sederhana:
14
Gambar 2.2 Use Case Diagram
Use case diagram juga dilengkapi dengan use case
description. Menurut Satzinger, Jackson, dan Burd, use case
description merupakan sebuah deskripsi yang menampilkan
daftar rinci proses dalam sebuah use case (2009 :171).
Berikut tabel 2.1 contoh use case description menurut
Satzinger, Jackson, dan Burd (2009:174):
Tabel 2.1 Tabel Use Case Description
Use Case Name
Create New Order
Scenario Create new Web Order Triggering Event
Customer logs on to the RMO and request purchase item
Brief Description
Customer logs on and request the new order form, purchase item from catalog and enter credit card information
Actors Customer Related Use Case
Includes: Register new customer, check item availability
Preconditions Catalog, products, and inventory items must exist for requested items
Postconditions Order and order line items must be created Order transaction must be created for the order payment Inventory items updated
Flow of Events
Actor System 1. Customer connects to RMO homepage and links to the order page
15
2.a If this is a new customer, then customer links to the customer account page and add information to establish a customer account. 2.b If existing customer, customer logs on. 3. Customer search-es catalog. 4. Customer re-quests item to be added to the order.
2a.1 Create new customer record. 2b.1 Validate customer account 3.1 Display products from catalog 4.1 Add item to shopping cart order
Exception Condition
4.1 If an item is not in stock, then customer can a. choose not to purchase item, or b. request item be added as a back-ordered item.
Use case diagram memiliki beberapa komponen
penting (Whitten dan Bentley, 2007: 246) antara lain:
1. Use Case
Use case merupakan suatu skenario (langkah yang
dilakukan dalam sistem) untuk menyelesaikan sebuah
tugas bisnis (Whitten dan Bentley, 2007: 246). Berikut
gambar 2.3 contoh notasi use case:
Gambar 2.3 Use Case Symbol
2. Aktor
Use case diinisiasi atau dimulai oleh pengguna
eksternal yang disebut dengan aktor. Aktor memulai
aktivitas sistem, sebuah use case dengan tujuan untuk
menyelesaikan sebuah tugas bisnis (Whitten dan
16
Bentley, 2007 : 247). Berikut gambar 2.4 contoh notasi
aktor:
Gambar 2.4 Actor Symbol
3. Relasi
Relasi merupakan suatu hubungan yang digambarkan
sebagai garis antar dua notasi pada diagram use case.
Relasi dapat berbeda tergantung pada penggambaran
garis dan tipe notasi apa yang dihubungkan dengan
garis tersebut (Whitten dan Bentley, 2007 : 248).
Berikut merupakan jenis-jenis relasi:
a. Association
Association merupakan hubungan antara aktor dan
use case. Association dengan bentuk panah
mengindikasikan bahwa use case tersebut dilakukan
oleh aktor tersebut. Association dengan bentuk garis
mengindikasikan bahwa aktor tersebut menerima
hasil dari use case tersebut (Whitten dan Bentley,
2007 : 248). Berikut gambar 2.5 contoh Association
Relation:
Gambar 2.5 Association Relation
b. Extend
Extend merupukan hubungan antar use case yang
terbentuk dari penjabaran suatu use case yang
17
kompleks menjadi beberapa use case yang lebih
sederhana dan mudah dipahami (Whitten dan
Bentley, 2007 : 248). Berikut gambar 2.6 contoh
Extend Relation:
Gambar 2.6 Extend Relation
c. Uses (Includes)
Uses merupakan relasi yang terbentuk dari dua atau
lebih use case yang bekerja dalam langkah yang
hampir sama dan dibentuk satu use case yang dapat
digunakan kembali untuk mengurangi redudansi
suatu use case (Whitten dan Bentley, 2007 : 249).
Berikut gambar 2.7 contoh Uses or Include
Relation:
Gambar 2.7 Uses or Includes Relation
18
d. Depends On
Depends on merupakan relasi antar use case yang
menunjukan ketergantungan satu use case dengan
use case yang lain. Use case yang depends on use
case lain tidak dapat dijalankan sebelum use case
lain tersebut sudah dijalankan (Whitten dan
Bentley, 2007 : 249). Berikut gambar 2.8 contoh
Depends On Relation:
Gambar 2.8 Depends On Relation
e. Inheritance
Inheritance merupakan suatu relasi yang terbentuk
karena adanya dua atau lebih aktor yang mengakses
use case yang sama sehingga dibentuk satu aktor
baru untuk mengurangi redudansi komunikasi
dalam sistem (Whitten dan Bentley, 2007 : 250).
Berikut gambar 2.9 contoh Inheritance Relation:
Gambar 2.9 Inheritance Relation
19
2.1.3.2 Activity Diagram
Activity Diagram merupakan diagram grafis untuk
menggambarkan aliran proses bisnis, langkah-langkah dari
use case, atau alur logika berbasis objek (Whitten dan
Bentley, 2007: 390). Berikut gambar 2.10 contoh Activity
Diagram:
Gambar 2.10 Activity Diagram
Notasi yang digunakan dalam activity diagram antara lain:
1. Initial node
Initial node melambangkan permulaan suatu proses.
Berikut gambar 2.11 contoh Initial Node:
Gambar 2.11 Initial Node
2. Actions
Actions melambangkan serangkaian atau urutan aksi
yang dimuat kedalam suatu activity diagram. Berikut
gambar 2.12 contoh Actions:
20
Gambar 2.12 Actions
3. Flow
Flow melambangkan pergerakan antar notasi dalam
activity diagram. Berikut gambar 2.13 contoh Flow:
Gambar 2.13 Flow
4. Decision
Decision merupakan percabangan dari satu flow menjadi
dua flow. Berikut gambar 2.14 contoh Decision:
Gambar 2.14 Decision
5. Merge
Merge merupakan dua atau lebih flow yang bersatu
menjadi flow tunggal. Berikut gambar 2.15 contoh
Merge:
Gambar 2.15 Merge
21
6. Fork
Fork melambangkan percabangan dari satu flow
menjadi dua atau lebih flow yang berjalan secara paralel
atau bersamaan. Berikut gambar 2.16 contoh Fork:
Gambar 2.16 Fork
7. Join
Join melambangkan akhir dari proses fork dan
menyatukan flow yang ada menjadi flow tunggal.
Berikut gambar 2.17 contoh Join:
Gambar 2.17 Join
8. Activity final
Activity final melambangkan akhir dari suatu proses
dalam activity diagram. Berikut gambar 2.18 contoh
Activity Final:
Gambar 2.18 Activity Final
2.1.3.3 Sequence Diagram
Sequence diagram digunakan dalam penggambaran
model logika dari sebuah use case yang menunjukkan
interaksi antara aktor dengan sistem dengan urutan waktu
dan alur yang sistematis (Whitten dan Bentley, 2007: 394).
Berikut gambar 2.19 contoh sequence diagram:
22
Gambar 2.19 Sequence Diagram
2.1.3.4 Class Diagram
Class diagram merupakan gambaran yang
menampilkan struktur objek-objek (kelas) yang menyusun
suatu sistem dan hubungan antara kelas-kelas dalam
diagram tersebut (Whitten dan Bentley, 2007: 400). Berikut
gambar 2.20 contoh class diagram:
Gambar 2.20 Class Diagram
23
2.2 Teori yang terkait tema penelitian (tematik)
2.2.1 Sistem informasi
Sistem merupakan sekumpulan komponen yang saling
terhubung yang berfungsi bersama untuk mencapai hasil yang
diinginkan. Sedangkan sistem Informasi merupakan suatu susunan
dari orang, data, proses dan teknologi informasi yang berinteraksi
untuk mengumpulkan, mengolah, menyimpan dan memberikan hasil
informasi yang diperlukan untuk mendukung organisasi (Whitten dan
Bentley, 2007: 6).
2.2.2 Android
Android merupakan sebuah sistem operasi untuk perangkat
mobile yang menyediakan platform terbuka bagi para pengembang
untuk menciptakan aplikasi mobile mereka. Android pertama-tama
dibeli oleh Google dan berikutnya dikembangkan oleh Open Handset
Alliance yang merupakan persatuan dari tiga puluh empat perusahaan
peranti lunak, keras dan telekomunikasi (Safaat, 2014: 1). Berikut
merupakan karakteristik utama yang dimiliki oleh Android menurut
Open Handset Alliance, antara lain:
1. Terbuka
Android bersifat open source. Android dapat digunakan dan
dimodifikasi secara gratis bagi semua orang.
2. Semua aplikasi setara
Android memungkinkan semua aplikasi yang terbuat memiliki
akses kemampuan ponsel yang sama dalam menyediakan user
dengan aplikasi dan layanan yang luas.
3. Memecahkan batasan aplikasi
Android memungkinkan membangun aplikasi yang baru dan
inovatif dengan contoh pengembang dapat menggabungkan
informasi dari jaringan internet dengan data individu dalam
ponsel.
4. Pengembangan aplikasi yang cepat dan mudah
Android menyediakan akses ke berbagai macam libraries dan
tools berguna untuk dapat membangun aplikasi yang berbobot
dengan cepat dan mudah. Sebagai contoh Android
24
memungkinkan sesama ponsel untuk berkomunikasi dengan
aplikasi social peer-to-peer (2014).
Setelah aplikasi Android terbuat maka dapat diupload ke
Google Play yang merupakan website terbuka Google untuk menjual
dan mendistribusikan aplikasi Android. Pengembang aplikasi dapat
mengatur penerbitan dan frekuensi penerbitan aplikasinya. Google
Play juga dapat meningkatkan popularitas suatu penerbit aplikasi
dengan memberikan fitur seperti aplikasi terbaik mingguan dan tempat
untuk mempromosikan aplikasi baru. (Developer Android, 2014).
2.2.2.1 Versi Android
Telepon pertama memakai sistem operasi Android
pada tahun 2008. Dan pada tahun 2010 hampir semua
ponsel di dunia menggunakan sistem operasi Android.
Berikut merupakan versi Android dari perkembangan awal
sampai dengan sekarang (Safaat 2014: 10):
1. Android versi 1.1
Google merilis Android versi 1.1 pada tanggal 9
Maret 2009 yang dilengkapi dengan:
a. Pembaruan estetis aplikasi, jam, dan alarm.
b. Voice search.
c. Gmail dan e-mail notification.
2. Android versi 1.5 (Cupcake)
Google merilis Android Cupcake pada tanggal 30
April 2009 yang terdapat pembaruan dan penambahan
beberapa fitur antara lain:
a. Merekam dan menonton video.
b. Mengupload video ke Youtube dan gambar ke
Picasa.
c. Dukungan Bluetooth Advanced Audio
Distribution Profile yang dapat mentransmisi
audio secara wireless dari ponsel ke Bluetooth
headset atau system stereo.
d. Animasi layar dan keyboard layar yang dapat
disesuaikan dengan sistem.
25
3. Android versi 1.6 (Donut)
Google merilis Android Donut pada tanggal 15
September 2009 yang terdapat pembaruan dan
penambahan beberapa fitur antara lain:
a. Penampilan proses pencarian yang lebih baik.
b. Indikator dan penggunaan baterai.
c. Antarmuka galeri, kamera, dan camcorder yang
terintegrasi.
d. Gesture Framework.
e. Text to speech engine.
f. VPN, CDMA dan EVDO.
4. Android versi 2.0 (Eclair)
Google merilis Android 2.0 Eclair pada tanggal 26
Oktober 2009 yang terdapat pembaruan dan
penambahan beberapa fitur antara lain:
a. Pengoptimalisasian pada perangkat keras.
b. Peningkatan Google Maps 3.1.2.
c. Perubahan User Interface yang baru.
d. Browser dengan dukungan HTML 5.
e. Dukungan flash untuk kamera 3,2 Megapixel.
f. Digital zoom.
g. Bluetooth 2.1.
5. Android versi 2.2 (Froyo: Frozen Yogurt)
Google merilis Android Froyo pada tanggal 20 Mei
2010 yang terdapat pembaruan dan penambahan
beberapa fitur antara lain:
a. Kerangka aplikasi memungkinkan penggunaan
dan penghapusan komponen yang sudah
tersedia.
b. Memungkinkan grafik 2D dan 3D.
c. Mendukung berbagai format audio dan video.
d. Memungkinkan penggunaan Global Positioning
System dan kompas.
26
6. Android versi 2.3 (Gingerbread)
Google merilis Android Gingerbread pada tanggal 6
Desember 2010 yang terdapat pembaruan dan
penambahan beberapa fitur antara lain:
a. Memungkinkan penggunaan Near Field
Communications.
b. Penyediaan Gyroscope dan sensor.
c. Pengoptimalan fungsi-fungsi kamera.
d. Penyediaan efek audio yang bisa digabungkan.
e. Penyediaan download manager.
7. Android versi 3.0 (Honeycomb)
Google merilis Android Honeycomb pada tanggal 22
Februari 2011 yang dikhususkan untuk tablet
(Android, 2014) dengan beberapa pembaruan dan
penambahan fitur antara lain:
a. Dukungan tablet yang lebih baik.
b. Pembaharuan user interface.
c. Dukungan multi-core processor.
d. Ukuran widget yang dapat diubah.
8. Android versi 4.0 (Ice Cream Sandwich)
Google merilis Android 4.0.1 Ice Cream Sandwich
pada tanggal 19 Oktober 2011 dengan beberapa
pembaruan dan penambahan fitur (Android, 2014)
antara lain:
a. Rotasi layar dan pengisian text yang lebih mulus
b. User interface baru yang lebih minimalis.
c. Deteksi muka dan face unlock.
d. Tersedia Android Beam untuk bertukar data
dengan teknologi NFC.
9. Android versi 4.1 (Jelly Bean)
Google merilis Android Jelly Bean pada tanggal 9 Juli
2012 dengan beberapa pembaruan dan penambahan
fitur (Android, 2014) antara lain:
a. Pencarian dengan penggunaan suara.
27
b. Tersedia fitur multi-user untuk tablet.
c. Penambahan fitur kamera penangkapan citra
360 derajat dengan Photosphere.
d. Tersedia fitur Google Now dalam memberikan
informasi berguna kepada user tanpa searching.
e. Tersedia auto complete pada dial pad.
10. Android versi 4.4 (Kitkat)
Google merilis Android Kitkat pada tanggal 31
Oktober 2013 dengan beberapa pembaruan dan
penambahan fitur (Android, 2014) antara lain:
a. Tersedia deteksi suara “Ok Google” untuk
memulai pencarian.
b. Peningkatan kecepatan untuk multitasking.
c. Penambahan immersive mode (status dan
navigation bar akan auto hide saat
menggunakan smartphone). Status dan
navigation bar dapat dimunculkan kembali
dengan menyentuh ujung layar.
d. Tersedia Emoji untuk digunakan dan wireless
printing.
e. Terintegrasi dengan Google Drive.
f. Documents, spreadsheets dan presentation
dapat dibuat dan diubah dengan Quickoffice
yang baru.
11. Android versi 5.0 (Lollipop)
Android Lollipop merupakan versi Android terbaru
yang dirilis akhir-akhir ini pada tanggal 17 Oktober
2014 dengan pembaruan dan penambahan fitur
(Android, 2014) antara lain:
a. Android sudah bisa dijalankan di devices lain
tidak terbatas hanya tablet dan smartphone.
b. Fluid design pada semua jenis layar tampilan.
c. Tersedia pemblokiran notifikasi dari orang atau
aplikasi tertentu.
28
d. Penghematan penggunaan baterai dan fitur
penghematan energi smartphone yang baru.
e. Semua Android devices yang dimiliki dapat
saling terintegrasi.
f. Enam puluh delapan bahasa sudah tersedia
dalam Android Lollipop.
2.2.3 Android Software Development Kit
Android Software Development Kit (SDK) merupakan tools
Application Programming Interface yang diperlukan untuk memulai
mengembangkan aplikasi pada platform Android menggunakan
bahasa pemrograman Java. Sebagai platform yang gratis, Android
memberikan para pengembang aplikasi kesempatan untuk membuat
aplikasi yang diinginkan bukan aplikasi yang sudah ada dalam
Smartphone. Beberapa fitur Android yang penting (Safaat, 2014: 5)
adalah:
1. Framework aplikasi yang mendukung penggantian komponen
atau reusable.
2. Mesin virtual yang dioptimalkan untuk mobile.
3. Browser yang terintegrasi.
4. Grafis yang dioptimalkan dan didukung dengan libraries grafis
2D dan 3D.
5. SQLite untuk penyimpanan data.
6. Dukungan berbagai format audio, video, dan gambar.
7. Tersedia Bluetooth, EDGE, 3G, dan WiFi.
8. Kamera, Global Positioning System, kompas, dan
accelerometer.
9. Lingkungan pengembangan yang lengkap dan kaya termasuk
perangkat emulator, tools untuk debugging, profil dan kinerja
memori, dan plugin untuk Integrated Development
Environment Eclipse.
2.2.4 Android Developer Tools
Android Developer Tools (ADT) merupakan plugin yang
menyediakan sejumlah tools terintegrasi dengan Eclipse. ADT dapat
memberikan akses ke fitur-fitur yang dapat membantu dalam
29
pengembangan aplikasi Android. ADT dapat memberikan akses
design tool untuk pembangunan aplikasi dan prototyping yang cepat.
Berikut merupakan beberapa fitur yang disediakan ADT untuk
membantu pengembangan aplikasi (Developer Android, 2014):
1. Penyediaan Code dan Graphical Layout Editor untuk
mengubah code dan tampilan dengan cepat dan mudah.
2. Penyedian berbagai macam widget yang sudah siap dipakai
kedalam aplikasi.
3. Penyediaan emulator, debugging, dan packaging aplikasi.
2.2.5 Java
Java merupakan bahasa pemrograman yang pertama dirilis
oleh Sun Microsystems pada tahun 1995. Java sudah digunakan oleh
banyak aplikasi dan website yang tidak akan berfungsi jika tidak ada
instalasi java. Java versifat cepat, aman, dan dapat dipercaya. Java
dirancang untuk dapat menyediakan perkembangan aplikasi yang
berkinerja tinggi untuk platform komputasi yang luas. Aplikasi yang
terbuat dengan java dapat diakses di berbagai lingkungan yang
berbeda, memberikan lebih banyak layanan untuk bisnis,
meningkatkan produktivitas, komunikasi, kolaborasi, dan mengurangi
biaya antara user dan developer aplikasi.
Berikut beberapa keuntungan menggunakan bahasa
pemrograman Java (Java, 2014):
1. Pembuatan perangkat lunak di satu platform dapat dijalankan
secara virtual di platform lain.
2. Pembuatan program yang dapat berjalan dalam web browser
dan mengakses melalui web services.
3. Pengembangan aplikasi bagian server untuk berbagai
keperluan.
4. Menggabungkan berbagai macam aplikasi dan layanan yang
disediakan oleh Java.
5. Merancang aplikasi yang berbobot dan efisien untuk berbagai
macam devices.
30
2.2.6 Eclipse
Eclipse Project merupakan sebuah komunitas terbentuk dari
individual dan organisasi yang berkeinginan untuk berkolaborasi
dalam membentuk software yang open source. Eclipse Project
pertama kali didirikan oleh IBM pada November 2001 dan didukung
oleh persatuan vendor perangkat lunak. Eclipse Foundation terbentuk
pada Januari 2004 sebagai perusahaan independen dan non profit
untuk menciptakan komunitas yang terbuka dan transparan bagi
Eclipse Project. Eclipse berfungsi sangat baik untuk bahasa
pemrograman Java dan PHP (Eclipse, 2014).
2.2.7 JSON
JavaScript Object Notation (JSON) merupakan format
pertukaran data yang ringan berbasis JavaScript Programming
Language. JSON mudah untuk dibaca dan ditulis oleh manusia karena
format yang sederhana (JSON, 2014). Berikut contoh sebagian JSON
yang digunakan dalam aplikasi
{
"from":"CGK",
"to":"DPS",
"date":"2015-01-16",
"ret_date":"2015-01-17",
"adult":"1",
"child":"0",
"infant":"0"
}
2.2.8 PHP
Hypertext Preprocessor (PHP) merupakan bahasa yang banyak
digunakan dalam pengembangan halaman web. PHP mudah dipelajari
dan fleksibel untuk menciptakan halaman web yang dinamis dan
interaktif (w3schools, 2014). Berikut contoh sederhana PHP dalam
HTML:
31
<html>
<body>
<?php
echo "My first PHP script!";
echo “Wendijo Triyono Fingky”;
echo “Grup skripsi WTF”;
?>
</body>
</html>
2.2.9 HTML
HyperText Markup Language (HTML) merupakan markup
language untuk mendefinisikan halaman atau dokumen web. Markup
language merupakan bahasa yang dirancang untuk pemberian format
pada suatu teks yang biasanya disebut sebagai tags. HTML sudah
sangat umum untuk dipakai dalam mengatur tampilan suatu halaman
web yang dibuka oleh browser (w3school, 2014). Berikut contoh
HTML sederhana:
<html>
<head>
<title>Page Title</title>
</head>
<body>
<p>My first paragraph.</p>
<p>My second paragraph.</p>
<p>My third paragraph.</p>
<p>My fourth paragraph.</p>
</body>
</html>
2.2.10 MySQL
MySQL pertama kali dikembangkan di Sweden oleh David
Axmark, Allan Larsson, dan Michael “Monty” Widenius. MySQL
merupakan open source database software paling terkenal di dunia,
dengan lebih dari seratus juta salinan yang terdistribusi sampai
sekarang. MySQL menjadi pilihan untuk digunakan khususnya dalam
32
web karena kecepatan tinggi, dapat diandalkan, mudah digunakan, dan
mudah diadministrasi atau dikelola. Banyak organisasi besar
menggunakan MySQL untuk menghemat waktu dan biaya dalam
sistem bisnis, aplikasi serta website yang bervolume besar (MySQL,
2014).
2.3 Perbandingan Aplikasi Sejenis
Melihat ada beberapa aplikasi sejenis yang ada, maka dipilih empat
aplikasi untuk dijadikan pembanding dengan aplikasi yang akan
dikembangkan. Keunggulan dan kelemahan aplikasi diidentifikasi berdasarkan
fitur-fitur yang disediakan dan keterangan penggunaan. Empat aplikasi yang
dimaksud adalah sebagai berikut:
1. Wisata Jogja
Wisata Jogja merupakan aplikasi berbasis Android yang
menyediakan informasi wisata di kota Yogyakarta mulai dari informasi
hotel dan penginapan yang murah, dan jasa transportasi serta informasi
tempat wisata di Yogyakarta. Berikut gambar 2.21 tampilan awal
aplikasi Wisata Jogja:
Gambar 2.21 Wisata Jogja
(Sumber: https://play.google.com/store/apps/details?id=com.wisata.jogja)
2. Traveloka
Traveloka merupakan aplikasi yang menyediakan fitur
pemesanan tiket penerbangan serta penyewaan hotel seluruh Indonesia.
Aplikasi ini berjalan di platform Android dan iOS. Berikut gambar 2.22
tampilan awal aplikasi Traveloka:
33
Gambar 2.22 Traveloka
(Sumber: https://play.google.com/store/apps/details?id=com.traveloka.android)
3. Schedule Planner
Schedule Planner adalah sebuah aplikasi yang membantu
pengguna mengatur waktu, jadwal dan ingin memprioritaskan
pekerjaan. Schedule Planner dapat membuat agenda berdasarkan jadwal
yang telah disusun oleh pengguna. Berikut gambar 2.23 tampilan
aplikasi schedule planner:
Gambar 2.23 Schedule Planner
(Sumber: http://scheduleplannerapp.com)
4. Voice Agenda
Voice Agenda adalah aplikasi pengingat menggunakan suara
yang di rekam menjadi sebuah notification. Waktu aktif notification
suara dapat diatur sesuai dengan keinginan pengguna. Berikut gambar
2.24 tampilan aplikasi voice agenda:
34
Gambar 2.24 Voice Agenda
(Sumber: http://www.windowsphone.com/en-us/store/app/voice-
agenda/4a0580c8-fe83-4167-9e90-c9173db29adf)
Berikut merupakan tabel 2.2 berisi perbandingan antara aplikasi yang
dikembangkan dengan aplikasi Wisata Jogja, Traveloka, Schedule Planner, dan
Voice Agenda:
Tabel 2.2 Tabel Perbandingan Agenda Trip dengan Empat Aplikasi Sejenis
Agenda
Trip
Wisata
Jogja Traveloka
Schedule
Planner
Voice
Agenda
Pemesanan tiket pesawat V X V X X
Pemesanan tiket kereta api V X X X X
Penyewaan kamar hotel V V V X X
Rental mobil X V X X X
Informasi tempat wisata V V X X X
Pembuatan agenda V X X V V
Perhitungan biaya liburan V X X X X
Notification V X X V V
Voice Notification X X X X V
Chart Schedule X X X V X
Platform Android Android iOS dan
Android
iOS dan
Android
Windows
Phone
Ruang lingkup Indonesia Yogyakarta Indonesia International International
Bahasa Inggris Indonesia Indonesia Inggris Inggris