bab 2 landasan teori 2.1 teori umum 2.1.1 interaksi...

60
9 BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi Manusia dan Komputer (IMK) 2.1.1.1 Pengertian IMK Menurut Shneiderman (2010) interaksi manusia dan komputer merupakan ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi yang mempelajari cara komunikasi antara komputer dan pengguna. 2.1.1.2 Kategori Pengguna Dalam merancang tampilan antarmuka, sebaiknya mempertimbangkan kategori pengguna yang akan menggunakan program tersebut karena tiap pengguna mempunya karakteristik yang berbeda. Berikut ini adalah tiga kategori pengguna menurut Shneiderman (2010): 1. Novice atau First-time users Novice atau First-time users adalah tipe pengguna yang bisa dibilang pemula dalam mengoperasikan program. Sehingga sebaiknya program dirancang dengan memperhatikan aspek- aspek kemudahan dalam penggunaan program dan juga

Upload: buiduong

Post on 07-May-2018

221 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

 

BAB 2

LANDASAN TEORI

2.1 Teori Umum

2.1.1 Interaksi Manusia dan Komputer (IMK)

2.1.1.1 Pengertian IMK

Menurut Shneiderman (2010) interaksi manusia dan komputer

merupakan ilmu yang berhubungan dengan perancangan, evaluasi,

dan implementasi yang mempelajari cara komunikasi antara

komputer dan pengguna.

2.1.1.2 Kategori Pengguna

Dalam merancang tampilan antarmuka, sebaiknya

mempertimbangkan kategori pengguna yang akan menggunakan

program tersebut karena tiap pengguna mempunya karakteristik

yang berbeda. Berikut ini adalah tiga kategori pengguna menurut

Shneiderman (2010):

1. Novice atau First-time users

Novice atau First-time users adalah tipe pengguna yang bisa

dibilang pemula dalam mengoperasikan program. Sehingga

sebaiknya program dirancang dengan memperhatikan aspek-

aspek kemudahan dalam penggunaan program dan juga

Page 2: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

10 

 

memberikan umpan balik maupun pesan kesalahan kepada

pengguna dengan bahasa yang mudah dimengerti.

2. Knowledgable intermittent users

Knowledgeable intermittent users adalah tipe pengguna yang

memiliki pengetahuan tentang berbagai macam sistem.

Pengguna seperti ini biasanya mengerti tentang struktur menu

dari suatu program, sehingga dapat dengan cepat

mengoperasikan suatu program.

3. Expert frequent users

Expert frequent users adalah tipe pengguna yang mengerti

tentang cara kerja suatu sistem atau program. Sehingga

pengguna dapat mempelajari dan menggunakan program

dengan lebih cepat dengan memanfaatkan command-line,

shortcut dan macro.

2.1.1.3 Lima Faktor Manusia Terukur

Lima faktor manusia terukur yang dikemukakan oleh Ben

Shneiderman (2010), yaitu:

1. Waktu Belajar

Merancang tampilan yang dapat dipelajari dengan cepat oleh

pengguna. Sehingga pengguna dapat dengan cepat mengerti

cara menggunakan aplikasi.

Page 3: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

11 

 

2. Kecepatan Kinerja

Merancang aplikasi dengan melihat kecepatan kerja aplikasi

pada saat menjalankan proses. Untuk mendapatkan kecepatan

yang baik dapat dilakukan dengan cara mengurangi

kompleksitas proses dalam aplikasi.

3. Tingkat Kesalahan

Merancang tingkat kesalahan yang terjadi dalam proses dan

memberikan penanganan kesalahan jika terjadi kesalahan yang

serius pada saat penggunaan aplikasi.

4. Daya Ingat

Tampilan dibuat agar mudah diingat oleh pengguna, sehingga

pengguna tidak membutuhkan waktu banyak untuk

mempelajari penggunaan aplikasi.

5. Kepuasan Subjektif

Dapat memenuhi kepuasan subjektif dari pengguna dari

berbagai aspek tampilan. Hal ini dapat dicapai dengan

melakukan interview dan survey kepada beberapa pengguna

untuk mendapat tingkat kepuasan.

2.1.1.4 Eight Golden Rules

Interaksi manusia dan komputer dalam skripsi ini berdasarkan

pada prinsip Delapan Aturan Emas yang dikemukakan oleh Ben

Shneiderman (2010), yaitu:

Page 4: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

12 

 

1. Konsistensi

Konsistensi urutan tindakan pada program, seperti : tampilan,

jenis tulisan, istilah-istilah yang digunakan pada prompt, menu,

serta bantuan pada program.

2. Memenuhi kegunaan yang universal

Kenali kebutuhan dari macam-macam pengguna dan membuat

desain yang dapat berubah sesuai kebutuhan konten.

Memahami perbedaan dari pengguna yang baru sampai ke ahli,

perbedaan umur, kondisi pengguna, dan teknologi yang

digunakan sebagai panduan membuat desain.

3. Memberikan umpan balik yang informatif

Memberikan sistem umpan balik pada saat operator melakukan

operasi. Umpan balik sebaiknya dibagi menjadi dua bagian

tergantung pada tingkat kepetingan dari suatu operasi. Jika

operasi yang sering dilakukan dan tidak terlalu penting, dapat

diberikan umpan balik yang sederhana. Sebaliknya, ketika

operasi yang dilakukan merupakan hal yang penting, maka

umpan balik yang diberikan sebaiknya lebih substansial.

Misalnya memberikan suara ketika terjadi kesalahan.

4. Merancang dialog untuk menghasilkan suatu penutupan

Urutan tindakan sebaiknya diorganisir menjadi beberapa bagian

seperti bagian awal, bagian tengah dan bagian akhir.

Memberikan umpan balik yang sesuai dengan hasil dari suatu

Page 5: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

13 

 

operasi, sehingga pengguna dapat mengetahui hasil

pengoperasian dan melanjutkan ketahapan selanjutnya.

5. Memberikan penanganan kesalahan

Seharusnya sistem dibuat agar pengguna tidak melakukan

kesalahan yang fatal. Jika terjadi kesalahan sistem dapat

mendeteksi dan memberikan mekanisme yang mudah dan

sederhana, sehingga mudah dimengerti oleh pengguna.

6. Mudah kembali ke tindakan sebelumnya

Sebaiknya sistem yang dibuat dalam mengulang ke tindakan

sebelumnya. Fitur ini meringankan kekhawatiran pengguna

ketika pengguna mengetahui terdapat kesalahan. Sehingga

pengguna dapat kembali ke tindakan sebelum kesalahan itu

terjadi.

7. Mendukung tempat pengendalian internal

Menjadikan pengguna sebagai pengontrol sistem bukan

sebaliknya, sehingga pengguna dapat dengan leluasa

menggunakan sistem. Merancang sistem sedemikian rupa,

sehingga pengguna menjadi inisiator daripada responden.

8. Mengurangi beban ingatan jangka pendek

Keterbatasan ingatan manusia membutuhkan tampilan yang

sederhana atau banyak tampilan halaman yang sebaiknya

disatukan, serta diberikan cukup waktu untuk pelatihan kode,

mnemonic, dan urutan tindakan.

Page 6: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

14 

 

Dilihat dari Delapan Aturan Emas di atas, dapat

disimpulkan bahwa rancangan antarmuka untuk pengguna

sebaiknya dibuat sesederhana mungkin tetapi mengikuti prinsip

Delapan Aturan Emas.

2.1.4 Aplikasi dan Piranti Lunak

2.1.2.1 Aplikasi

Mengacu pada pendapat Noviansyah (2008), aplikasi adalah

konsep yang diterapkan ke dalam suatu pembahasan. Dalam istilah

komputer, aplikasi diartikan sebagai program komputer yang dapat

melaksanakan tugas tertentu. Aplikasi yang dirancang untuk

penggunaan khusus, berdasarkan klasifikasinya aplikasi dibagi

menjadi dua, yaitu:

1. Aplikasi perangkat lunak spesialis, program dengan

dokumentasi yang dirancang untuk menjalankan suatu

tugas tertentu

2. Aplikasi paket, program dengan dokumentasi yang

dirancang untuk menyelesaikan suatu masalah tertentu

2.1.2.2 Piranti Lunak

2.1.2.2.1 Definisi Piranti Lunak

Menurut Pressman (2008), definisi dari piranti lunak

sebagai berikut:

Page 7: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

15 

 

a. Instruksi-instruksi (program-program komputer) yang

ketika dijalankan akan menghasilkan fungsi dan

performance yang diharapkan.

b. Struktur data yang memungkinkan program untuk

memanipulasi informasi.

c. Dokumen-dokumen yang menjelaskan operasi dan

penggunaan program.

Tiga karakteristik piranti lunak (Pressman, 2001), yaitu:

a. Piranti lunak dikembangkan atau dibuat, tidak dirakit

seperti perangkat keras.

Meskipun ada ikatan antara pengembangan piranti lunak

dan perangkat keras, kedua hal ini mempunyai dasar yang

berbeda. Pada piranti lunak, kualitas yang bagus didapat

dari perangkat keras yang bagus dan mendukung kinerja

piranti lunak. Kebutuhan untuk mendapatkan kualitas

piranti lunak yang baik dapat dipecahkan dengan merakit

perangkat keras secara tepat sesuai kebutuhan piranti

lunak.

b. Piranti lunak tidak dapat “habis”.

Tidak seperti perangkat keras, piranti lunak tidak dapat

“habis” oleh waktu karena tidak memiliki bentuk fisik.

Berbeda dengan perangkat keras yang memiliki bentuk

Page 8: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

16 

 

fisik. Perangkat keras mempunyai batas pemakaian ketika

dipakai terlalu sering dan seiring banyaknya waktu

operasional yang digunakan yang mengakibatkan

terjadinya kerusakan pada perangkat keras tersebut.

c. Piranti lunak dirancang bukan berdasarkan perakitan

komponen-komponen yang sudah ada.

Pada perangkat keras dibutuhkan komponen dasar untuk

membangun sebuah perangkat keras yang dapat

mengoperasikan sebuah proses. Sedangkan pada piranti

lunak, langkah awal untuk mengembangkan sebuah

piranti lunak dibutuhkan perangkat keras yang dapat

mengoperasikannya.

2.1.3 Koneksi

Menurut Franz Pardede (2008), pada dasarnya pengertian interkoneksi

adalah adannya keterhubungan antara satu objek dengan objek yang lain

sehingga terjadi komunikasi. Menurut Jack Febrian (2006) yang dikutip oleh

Franz Pardede (2008), pengertian dari koneksi atau connection adalah

hubungan antara dua entiti. Koneksi dapat terjadi antara host, antara

program-program yang berjalan atas host, serta antara program yang berjalan

atas host yang sama (diantara entitas-entitas pada lapisan jaringan yang

berbeda). Pada smartphone, koneksi yang terjadi didalam operasi biasanya

membutuhkan Mobile Connection atau Global Positioning System (GPS).

Page 9: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

17 

 

2.1.3.1 General Packet Radio Services (GPRS)

2.1.3.1.1 Pengertian GPRS

Koneksi pada smartphone saat ini, memungkinkan

pengguna dapat mengakses internet melalu telepon genggam.

Sistem minimum yang dapat menggunakan koneksi pada

smartphone sebagai internet harus mendukung teknologi

GPRS. Menurut Yulianto (2010), GPRS merupakan suatu

teknologi dimana telepon dapat melakukan transmisi data

dengan frekuensi tinggi melalui jaringan Global System for

Communication system (GSM) dan berbasis infrastruktur

jaringan nirkabel Time Division Multiple Access Telephony

Integration (TDMA).

2.1.3.1.2 Arsitektur GPRS

Arsitektur jaringan GPRS menggunakan arsitektur GSM

transmisi data suara. Dalam pengiriman data GPRS

menggunakan node tambahan dalam jaringan. Node tambahan

ini yang bertanggung jawab dalam pengiriman dan mengatur

rute aliran paket data antara Mobile Station (MS) dan Packet

Data Networks (PDN). Terdapat dua tipe node tambahan

dalam GPRS menurut Talukder et al (2010) yaitu:

Page 10: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

18 

 

1. Serving GPRS Support Node (SGSN)

SGSN merupakan node tambahan dalam jaringan GPRS

yang bertugas untuk mengatur rute paket data, packet

switching, transfer data, mobility management, logical

link management, dan fungsi autentikasi. SGSN

terhubung dengan system pusat dengan Frame Relay.

Frame Relay adalah standarisasi pada jaringan Wide

Area Network yang merupakan suatu metode pertukaran

data antara phsycal layer dan logical layer.

2. Gateway GPRS Support Node (GGSN) 

GGSN adalah node yang sebagai antarmuka antara GPRS

Backbone Network dan PDN. Fungsi GGSN seperti

router pada jaringan LAN. GGSN secara berkala

memonitori pertukaran informasi yang dibutuhkan dalam

Protocol Data Units (PDU) ke SGSN.

Selain dua tambahan komponen di atas yang digunakan

sebagai pendukung dalam GPRS, ada beberapa hal lagi yang

perlu ditingkatkan cara kerjanya seperti sistem stasiun dasar

termasuk Base Transceiver Station (BTS), register GPRS

dalam GSN, telepon genggam yang mendukung GPRS, node

pengiriman SMS yang mendukung transmisi melewati SGSN.

Page 11: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

19 

 

2.1.3.2 Global Positioning System (GPS)

2.1.3.2.1 Definisi GPS

Yulianto (2010) mendefinisikan, GPS adalah suatu

sistem navgiasi satelit yang berfungsi untuk menentukan

lokasi, kecepatan dan arah, melalui signal yang diterima lebih

dari 24-32 satelit yang berorbit 200.000 km (11.000 mil laut)

di atas bumi. Prinsip dasar dibalik GPS adalah pengukuran

jarak (distance/range) antara satelit dan receiver dari

transmisi signal radio. Sebuah GPS receiver memrlukan

empat atau lebih satelit untuk menghasilkan jarak penerima,

dan menggunakan informasi ini untuk menyimpulkan lokasi

penerima. Operasi ini disebut triangulation.

2.1.3.2.2 Cara Kerja GPS

Satelit-satelit GPS mentransmisikan signal radio ke

bumi yang mengadung informasi tentang satelit, contohnya

lokasi dan waktu saat pengambilan informasi,

menginformasikan pengguna secara tepat di mana satelit

berada dalam orbit mereka sementara GPS receiver secara

pasif menerima sinyal satelit tersebut. Semua satelit-saelit

GPS menyinkronisasikan operasi-operasi agak sinyal-sinyal

yang berulang ini di transmisikan pada waktu yang

bersamaan.

Page 12: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

20 

 

2.1.4 Unified Modeling Language (UML)

Mengacu pada Jason T.Roff (2003), Unified Modeling Language

(UML) adalah sebuah bahasa. UML adalah bukan cara merancang sebuah

sistem tetapi sebuah cara untuk memodelkan sebuah sistem. Pada UML

terdapat beberapa metode yang dapat digunakan untuk merancang UML

yang biasa disebut Rational Unified Process (RUP) atau Unified Process.

Dalam mengembangkan sebuah piranti lunak, terdapat beberapa fase yang

dilakukan. Dalam Unified Process fase tersebut dibagi empat, yaitu :

1. Inception

Mengidentifikasikan sistem yang akan dibuat termasuk konten

dan proses bisnis di dalamnya.

2. Elaboration

Merancang dan mengidentifikasikan dasar-dasar pada sistem.

3. Construction

Membuat piranti lunak yang sudah dirancang sebelumnya.

4. Transition

Memberikan sistem kepada pengguna dan meberikan jangka

waktu evaluasi untuk sistem.

2.1.4.1 Use Case Diagram

Menurut Jasson T. Roff (2003) use case diagram

mengandung use case dan aktor yang mengilustrasikan hubungan

antara keduanya. Use case diagram adalah titik awal dalam

menganalisis ketika merancang sebuah perangkat lunak. Diciptakan

Page 13: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

21 

 

oleh Ivar Jacobson, use case diagram adalah gabungan dari

hubungan antara aktor dalam system dengan keseluruhan struktur

system yang dapat digunakan untuk pengguna. Use case diagram

terbagi dalam empat komponen (Jasson T. Roff (2003)), yaitu :

1. Sistem

Sebuah sistem adalah dasar dari perangkat lunak yang

menghasilkan fungsi-fungsi perangkat lunak kepada pengguna.

Dalam use case diagram, aktor dan use case adalah bagian dari

sebuah sistem. Dalam merancang sebuah perangkat lunak, use

case diagram adalah bagian terbesar dalam sebuah sistem. Pada

use case diagram sebuah sistem dapat memiliki sebuah sub

sistem di dalam keseluruhan sistem.

2. Aktor

Dalam use case diagram aktor digunakan untuk menggambar

pengguna yang menggunakan sistem. Sebuah aktor dapat

menjadi seorang pengguna atau sistem lain. Aktor harus

diberikan nama yang mendeskripsikan fungsi dari aktor

tersebut dalam sistem.

Gambar 2.1 Aktor

Page 14: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

22 

 

Gambar di atas adalah sebuah aktor dalam use case diagram

yang diberi nama pengguna. Dimana fungsi dari aktor tersebut

adalah menjadi sebuah pengguna dalam sebuah sistem.

3. Use Cases

Use cases adalah beberapa aksi atau kegiatan yang dilakukan

aktor dalam sebuah sistem. Dengan memberikan aksi atau

kegiatan use cases menjadi sebuah fungsi dalam sistem yang

dibuat. Ada beberapa aturan dalam pembuatan sebuah use case

dalam use case diagram, seperti penamaan sebuah use case

yang merepresentasikan fungsi dari use case dan penamaan

dari use case harus terdiri dari huruf, angka, dan beberapa

tanda baca kecuali titik dua (:) yang digunakan untuk

mengindikasikan sebuah package dalam use case.

 

Gambar 2.2 Use case

Package adalah sebuah bagian dari sistem yang berhubungan

dengan use case secara fungsionalitasnya. Penamaan use case

dengan package adalah dengan memberikan nama package

diawal dan ditambah dua buah tanda titik dua lalu ditambahkan

nama use case dalam package tersebut.

Page 15: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

23 

 

 

Gambar 2.3 Package 

4. Relationship

Relationship atau hubungan dalam use case digambarkan

dengan garis yang berhubungan dengan aktor.

 

Gambar 2.4 Hubungan

Aktor dapat dihubungkan oleh beberapa use case dan use case

dapat dihubungkan oleh beberapa aktor.

5. Include Relationship

Include relationship adalah hubungan antara base use-case

dengan included use-case yang menggambarkan bagaimana

behaviour yang didefinisikan pada included use-case

ditambahkan ke dalam behaviour pada base use-case

Gambar 2.5 Notasi Include Relationship

Page 16: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

24 

 

6. Extend Relationship

Extend relationship merupakan hubungan antara extending use-

case dengan included use-case yang menggambarkan

bagaimana behaviour pada extended use-case dapat dijalankan

oleh base use-case pada kondisi tertentu.

Gambar 2.6 Notasi Exclude Relationship

7. Subsystem

Pemodelan yang sangat banyak dan besar yang dapat dipecah

menjadi beberapa bagian yang dapat dipelihara dapat

menggunakan sebuah subsystems.

Page 17: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

25 

 

 

Gambar 2.7 Subsystems 

Guru menggunakan subsystems Sistem Penilaian. Di dalam

Sistem Penilaian terdapat kegiatan penilaian yang dilakukan

oleh Guru, yaitu melihat, menyimpan dan memperbarui nilai.

2.1.4.2 Activity Diagram

Mengacu pada pendapat Jasson T. Roff (2003), Activity

diagram digunakan untuk menganalisa kegiatan yang ada dalam use

case dan menampilkan interaksi sistem dengan yang lainnya.

Acitivity diagram juga memberikan penjelasan tentang sebuah

sistem dan langkah kedepan dalam menganalisis sistem berdasarkan

use case diagram. Sebuah activity diagram memberikan pembaca

tentang eksekusi proses dari sebuah sistem. Dalam activity diagram

terdapat beberapa komponen yang menggambar suatu objek, yaitu :

Page 18: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

26 

 

1. Activites : Action States

Cara penulisan sebuah aktivitas adalah menggambarkan sebuah

persegi panjang dengan bulat dikedua sisinya.

 

Gambar 2.8 Action States

Activity mengindikasikan sebuah aksi sehingga perlu diberikan

nama yang menggambarkan aksi yang terjadi dalam activity

tersebut.

2. States

Sebuah state digambar seperti activity yaitu berupa persegi

panjang dengan keempat sudutnya berbentuk seperti potongan

seperempat lingkaran. Sebuah state diidentifikasikan dengan

sebuah kata atau frase yang mengindikasikan yang sedang

terjadi dalam sistem. Dalam UML terdapat dua state khusus,

yaitu start state dan end state.

 

Gambar 2.9 Start State dan End State

State state digambar dengan lingkaran hitam, sedangkan end

state digambarkan dengan sebuah lingkaran dengan lingkaran

Page 19: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

27 

 

hitam di tengahnya. Setiap activity diagram hanya boleh

memiliki satu start state tetapi boleh memiliki banyak end

state. Tetapi menurut Jason T. Roff (2003) jumlah end state

lebih baik disesuaikan dengan kebutuhan, karena tujuan dari

pembuatan activity diagram adalah untuk mempermudah

pengembang dalam analisis dan perancangan sistem. Karena

kompleksitas perancangan sistem dapat digambarkan dengan

jumlah end state didalam activity diagram.

3. Transitions

Transition digunakan untuk menunjukan kontrol aliran dari

suatu state ke state lainnya. Transition juga menunjukkan

aliran dari state ke activity, antara activity, dan antara state.

Transition digambarkan dengan tanda panah yang

menunjukkan alirannya. Notasi untuk suatu transisi adalah

panah terbuka yang menunjukkan arah aliran.

Memasukkan kartu ATM Pilih Menu

Ambil kartu ATM Selesai transaksi

 

Gambar 2.10 Transitions

Page 20: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

28 

 

4. Guards

Sebuah guards dinotasikan pada transitions antara dua aktivitas

atau states dan ditulis dalam tanda kurung tertutup.

Memasukkan PIN

Memulai transaksi Muncul pesan kesalahan

[PIN salah] [PIN sesuai] 

 

Gambar 2.11 Guards

Dalam contoh, aliran akan berjalan dari action state pertama ke

action state kedua jika kondisi [guards1] benar, namun aliran

akan berubah dari action state pertama ke action state kedua

jika [guards1] benar.

5. Decisions Points

Dalam kegunaannya decisions points hampir sama seperti

guards secara umum, tetapi decisions points membuat alur

aliran menjadi leebih rapi, khususnya ketika menggambar

diagram yang cukup besar dengan banyak kondisi yang

berbeda.

Page 21: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

29 

 

Mulai menyimpan nilai 

Pilih siswa

Memasukkan nilai siswa

Memasukkan nilai siswa[belum ada nilai] 

Membarui nilai siswa

[sudah ada nilai] 

Selesai menyimpan nilai   

Gambar 2.12 Decision Point

Pada decision points masih digunakan guards, tapi merupakan

percabangan dari transitions ke decision point.

2.1.4.3 Sequence Diagram

Mengacu pada pendapat Jasson T. Roff (2003), sequence

diagram digunakan untuk memperlihatkan interaksi antara aktor

dan objek serta objek yang lainnya. Pesan yang dikirim dari aktor

ke objek, objek ke objek, dan objek ke aktor untuk memperlihatkan

kontrol jaringan melalui sistem. Sequence diagram digunakan

merealiasasikan use case berdasarkan dokumentasi bagaimana use

Page 22: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

30 

 

case dipecahkan dengan desain sistem yang ada. Sequence diagram

dapat digunakan untuk menunjukkan setiap kemungkinan jalur

melalui interaksi, atau menunjukkan jalur tunggal melalui interaksi.

Sequence diagram mempunyai dua komponen utama, yaitu

active objects dan sistem hubungan antara active objects. Active

objects adalah objek yang mempunyai peran dalam sistem, dapat

menjadi sebuah objek maupun seorang aktor.

1. Active Objects

Objek digambarkan dengan kotak yang didalamnya tertuliskan

nama objek tersebut.

 

Gambar 2.13 Active Objects

Garis panjang putus-putus pada objek disebut dengan lifeline.

Lifeline digunakan untuk menggambarkan apa yang sedang

terjadi pada objek dalam kronologis kejadian.

Dalam sequence diagram memungkinkan untuk menggunakan

beberapa objek yang saling berinteraksi dan membuat diagram

Page 23: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

31 

 

dari beberapa objek tersebut untuk memulai sebuah sequence

diagram.

Mesin penjawab Server

 

Gambar 2.14 Beberapa Active Objects

Objek digambar dari kiri ke kanan, masing-masing mempunyai

lifeline. Pemodelan sequence diagram sebaiknya digambar

secara landscape mode dibanding menggambarnya dengan

potrait mode, sehingga mempunyai cukup ruang untuk

menggambar diagram.

2. Message

Message atau Pesan digunakan untuk menggambarkan

komunikasi antara active objects yang berbeda dari sebuah

sequence diagram. Pesan digunakan jika objek perlu untuk

keluar dari objek yang berbeda atau jika objek perlu untuk

memberikan informasi ke objek yang lain.

Page 24: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

32 

 

Pelanggan

Mesin penjawab Customer Service

Menelepon

Menghubungkan panggilan

 

Gambar 2.15 Pesan

Pesan digambarkan sebagai anak panah yang menghubungkan

lifeline dari active objects yang memanggil menuju ke active

objects penerima. Aktor juga dapat berperan dalam sequence

diagram. Aktor dapat memanggil objek dan objek dapat

memberitahu aktor.

2.1.4.4 Class Diagram

Menurut Jason T.Roff (2003) class diagram adalah diagram

statis yang terdiri dari bagian-bagian yang membentuk sistem atau

subsistem. Class diagram sangat penting pada pembuatan suatu

sistem yang bersifat object-oriented. Class diagram terdiri dari

attributes dan operations yang memungkinkan untuk menghasilkan

Page 25: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

33 

 

suatu keadaan (state) atau menyediakan fungsi. Class diagram

digunakan untuk menunjukkan detail lebih lanjut mengenai sistem.

Notasi-notasi yang terdapat dalam class diagram adalah :

1. Class

Class adalah representasi atau gambaran dari sekumpulan

object, misalnya sebuah mobil, sebuah tiket atau sebuah sistem.

Sebuah class harus meng-enkapsulasi informasi dan fungsi

yang hanya penting untuk class tersebut dan dalam konteks

sistem dimana class tersebut berada.

Gambar 2.16 Class

Gambar di atas adalah sebuah notasi dari class. Class

digambarkan dengan sebuah kotak yang terbagi menjadi 3

bagian. Bagian pertama adalah nama dari class. Bagian kedua

adalah atribut-atribut (data) dari class tersebut dan bagian

ketiga adalah operations atau fungsi yang dimiliki oleh class

tersebut. Pada suatu class terdapat tanda plus (+) dan minus (-)

yang menggambarkan visibility dari atribut dan operation yang

Page 26: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

34 

 

terdapat pada sebuah class. Visibility sebuah fitur menjelaskan

apakah sebuah class dapat digunakan oleh class lain. Tanda

plus (+) menunjukkan nilai visibility Public yang berarti class

yang diluar class dengan visibility ini dapat menggunakan fitur-

fiturnya. Tanda minus (-) menunjukkan nilai visibility Private

yang berarti hanya class ini sendiri yang dapat menggunakan

fitur-fiturnya. Selain itu terdapat nilai visibility Protected yang

berarti semua turunan dari class tersebut dapat menggunakan

fitur-fiturnya. Simbol yang digunakan adalah simbol #.

2. Relationship

Sebuah class dapat memiliki relationship atau hubungan

dengan class lainnya dan digambarkan dengan sebuah garis

yang di atasnya terdapat nama dari hubungan class tersebut.

Gambar 2.17 Contoh Hubungan antar Class

Gambar 2.17 menerangkan bahwa Guru mengajar sebuah

Kelas atau Kelas diajar oleh seorang Guru.

3. Multiplicity

Multiplicity adalah sebuah spesifikasi tentang kardinalitas yang

memungkinkan untuk dimiliki oleh sebuah object. Sebuah

multiplicity dapat berisi :

Page 27: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

35 

 

Exactly one(1), optional/zero or one(0..1), many/zero or more

(0..*), one or more (1..*), an exact number (n) ataupun

numerically specified (m..n).

Gambar 2.18 Contoh Multiplicity

Gambar 2.18 merupakan contoh multiplicity antara Guru dan

Kelas. Seorang Guru dapat mengajar satu hingga banyak Kelas.

Sedangkan sebuah Kelas hanya dapat diajar oleh seorang Guru.

4. Role

Pada sebuah hubungan antara class, role berguna untuk

menjelaskan peran dari suatu class terhadap class yang lain.

Gambar 2.19 Contoh Role

Sebagai contoh, Teacher memiliki dua buah peran (role)

yaitu sebagai instructor dan juga sebagai assistant untuk

sebuah class.

Page 28: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

36 

 

5. Attribute

Attribute merupakan property dari class yang

merepresentasikan tipe data yang dimiliki oleh instance suatu

class.

6. Operation

Operation merupakan kegiatan-kegiatan yang akan dilakukan

oleh suatu class.

7. Aggregation

Aggregation digunakan untuk menggambarkan hubungan

whole-part antara dua class dimana salah satu class dianggap

sebagai keseluruhan (whole), dan terdiri dari satu atau lebih

class yang menjadi bagiannya (part). Pada aggregation, class

yang menjadi bagian (part) dapat berdiri sendiri tanpa adanya

class yang menjadi objek keseluruhan (whole). Namun jika

class bagian (part) tersebut digabungkan, maka akan

membentuk sebuah whole class. Aggregation dapat

digambarkan sebagai berikut :

Page 29: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

37 

 

Gambar 2.20 Contoh Aggregation

Pada gambar 2.20 diilustrasikan bahwa class Computer terdiri

dari CPU, Display, Keyboard, Mouse dan Speaker. Class CPU,

selain menjadi bagian dari class Computer, juga merupakan

sebuah class yang terdiri dari class Fan dan Memory.

8. Composition

Composition adalah strong aggregation. Pada composition,

class yang menjadi bagian (part) tidak dapat berdiri sendiri

tanpa class keseluruhan (whole). Jadi, mereka terkait kuat

antara satu dengan yang lainnya.

Gambar 2.21 Contoh Composition

Page 30: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

38 

 

Pada gambar 2.21 Table dan Query adalah bagian dari

Database. Query dan Table tidak akan dapat berdiri sendiri

tanpa adanya basis data.

9. Generalization

Generalization merupakan sebuah hubungan

spesialisasi/generalisasi dalam model-model UML, dimana

object-object dari elemen yang dispesialisasikan (child) dapat

digantikan dengan object dari elemen yang digeneralisasikan

(parent). Dalam penerapannya, generalization merupakan

konsep inheritance dan dapat dikembangkan menjadi konsep

polymorphism.

Gambar 2.22 Generalization

10. Navigation

Navigasi umumnya mempunyai hubungan bidirectional yang

dapat diketahui dari hubungan satu class ke class yang lain dan

kembali melalui beberapa atribut yang dapat dilihat oleh

pengguna pada hubungan kedua class. Navigasi ditandai

dengan anak panah terbuka menunjuk pada class yang sedang

diakses.

Page 31: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

39 

 

+Kolom‐Hak akses+Baris

Tabel

‐Tabel

Baris TipeData

Pengguna

1

1

+Kolom1

1

1

‐Hak akses1

 

Gambar 2.23 Bidirectional

Pada contoh diatas, class Baris mempunyai hubungan

bidirectional dengan class Tabel. Class Tabel mempunyai

atribut public, yaitu Baris, yang memungkinkan navigasi ke

masing-masing objek pada class Baris. Class Baris mempunyai

atribut private, yaitu Tabel, yang memungkinkan class Baris

untuk melakukan navigasi kembali ke class Tabel gabungan.

Class Tabel menggunakan atribut hak akses yang bersifat

private untuk berhubungan dengan Pengguna. Hal yang sama

juga beraku untuk navigasi dari class Tabel menuju class

TipeData. Navigasi juga dapat terjadi unidirectional, dimana

satu class dapat mengenali tentang hubungan class lain, namun

class lainnya tidak dapat berlaku sebaliknya. Navigasi

Page 32: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

40 

 

digambarkan dengan anak panah terbuka yang menunjuk class

yang dapat dikenali dan hanya class yang dikenal yang

mempunyai multiplicity.

Pelanggan Produk

1

‐BarangyangDibeli

0..* 

Gambar 2.24 Unidirectional

Pada contoh, class Pelanggan mengetahui tentang jumlah

barang yang dibeli, tapi class Produk tidak mengetahui sama

sekali tentang class Pelanggan.

2.2 Teori Khusus

2.2.1 Augmented Reality (AR)

2.2.1.1 Pengertian AR

Bedasarkan Ronald T. Azuma yang dikutip oleh Jonathan

Barron (2010), “Augmented Reality” merupakan variasi dari Virtual

Environments(VE) atau lebih dikenal dengan Virtual Reality. VE

memposisikan pengguna ke dalam Synthetic Environtment. Di

dalam VE pengguna tidak dapat melihat dunia nyata disekitarnya.

Sedangkan pada Augmented Reality (AR), teknologi ini

memungkinkan pengguna untuk melihat dunia nyata dengan objek

Page 33: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

41 

 

yang ditambahkan kedalam dunia nyata. Pada intinya, teknologi AR

memungkinkan penggabungan antara dunia nyata dan dunia

virtual.

Sekarang ini mulai banyak perusahaan-perusahaan yang

bergerak di bidang Augmented Reality. Contohnya: Total

Immersion, perusahaan yang bergerak di bidang Augmented Reality

sekarang telah menjadi global leader dalam bidang pengembangan

Augmented Reality.

2.2.1.2 Perkembangan AR

Pada perkembangannya, Augmented Reality semakin banyak

digunakan dan menggunakan metode-metode yang berbeda dalam

implementasinya. Menurut Robert Rice, CEO Neogen Tech,

Augmented Reality dibagi menjadi empat tahapan berdasarkan

metode yang digunakan, yaitu:

1. Tahap 1 (L1) : Marker-Based Augmented Reality

Marker Based Augmented Reality adalah AR yang

menggunakan marker atau penanda objek dua dimensi yang

memiliki suatu pola yang akan dibaca komputer melalui media

webcam atau kamera yang tersambung dengan komputer. Jika

tanda ditemukan dan dikenali oleh komputer, maka komputer

akan menambahkan objek tiga dimensi maupun objek digital ke

dalam tampilan atau lingkungan pengguna. Tahap ini masih

Page 34: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

42 

 

berjalan hingga sekarang dan diperkirakan masih akan terus

dipakai hingga lima tahun ke depan.

2. Tahap 2 (L2) : Markerless Augmented Reality

Prinsip kerja Markerless AR seperti AR Marker Based, tetapi

dalam hal ini ‘tanda’ yang dikenali oleh AR berbentuk posisi

perangkat, arah, maupun lokasi. Ketika aplikasi AR ini

mengenali ‘tanda’ yang sudah dikenali, biasanya aplikasi akan

memvisualisasikan video maupun gambar. Pada tahap ini AR

lebih menitikberatkan pada mobile social menggunakan AR.

3. Tahap 3 (L3) : Augmented Vision

Tahapan ini masih dalam pengembangan, dan diperkirakan

akan menjadi teknologi yang dapat digunakan dalam 20 tahun

ke depan. Augmented Vision (AV) sendiri adalah

pengembangan dari AR Dengan mengadopsi AR, AV

diharapkan dapat ‘membawa’ dunia digital lebih dekat ke dunia

nyata. Menurut perkembangan yang sedang berlanjut, AV

digunakan dengan memakai Digital Contacts Lens, dimana alat

ini berfungsi sebagai komputer yang bekerja dalam bentuk

kontak lens.

4. Tahap 4 (L4) : Direct Augmented Reality

Pengembangan akhir dari Augmented Reality adalah Direct

Augmented Reality. Dimana teknologi ini memungkinkan

kendali dunia virtual melalui syaraf atau otak manusia serta

Page 35: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

43 

 

implan retina digital dengan bantuan chip prosesor mini yang

ditanam di kepala. Teknologi ini masih menjadi gambaran

akhir dari AR, jadi wujud nyata tentang pengembangan

teknologi ini.

Dari penjelasan di atas dapat disimpulkan bahwa teknologi

Augmented Reality baru saja dimulai dan akan terus berkembang

seiring perkembangan teknologi. Augmented Reality sendiri dalam

pengimplementasiannya juga dapat membantu pengguna dalam

berbagai aspek, seperti pemasaran, kesehatan, arsitektur, hiburan,

perancangan dan lain lain.

2.2.2 Android

2.2.2.1 Pengertian Android

Android adalah sebuah sistem operasi untuk perangkat mobile

berbasis linux yang dibuat oleh Google dan Open Handset Alliance

(OHA). Android didesain untuk mengatur kinerja perangkat mobile

dari mulai sistem operasi, middleware, hingga aplikasi (anonim1).

Android memiliki empat karakteristik sebagai berikut:

1. Terbuka

Android dibangun untuk benar-benar terbuka sehingga sebuah

aplikasi dapat memanggil salah satu fungsi inti ponsel seperti

membuat panggilan, mengirim pesan teks, menggunakan

kamera dan lain-lain. Android menggunakan sebuah mesin

Page 36: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

44 

 

virtual yang dirancang khusus untuk mengoptimalkan sumber

daya memori dan perangkat keras yang terdapat di dalam

perangkat.android merupakan open source, dapat secara bebas

diperluas untuk memasukkan teknologi baru yang lebih maju

pada saat teknologi tersebut muncul. Platform ini akan terus

berkembang untuk membangun aplikasi mobile yang inovatif.

2. Semua aplikasi dibuat sama

Android tidak memberikan perbedaan terhadap aplikasi utama

dari telepon dan aplikasi pihak ketiga (third-party application).

Semua aplikasi dapat dibangun untuk memiliki akses yang

sama terhadap kemampuan sebuah telepon dalam menyediakan

layanan dan aplikasi yang luas terhadap para pengguna.

3. Memecahkan hambatan pada aplikasi

Android memecah hambatan untuk membangun aplikasi yang

baru dan inovatif. Misalnya, pengembang dapat

menggabungkan informasi yang diperoleh dari web dengan

data pada ponsel seseorang seperti kontak pengguna, kalender,

atau lokasi geografis.

4. Pengembangan aplikasi yang cepat dan mudah

Android menyediakan akses yang sangat luas kepada pengguna

untuk menggunakan library yang diperlukan dan tools yang

dapat digunakan untuk membangun aplikasi yang semakin

baik. Android memiliki sekumpulan tools yang dapat

Page 37: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

45 

 

digunakan sehingga membantu para pengembang dalam

meningkatkan produktivitas pada saat membangun aplikasi

yang dibuat. (Sumber: http:www.android.com/about/)

2.2.2.2 Sejarah Sistem Operasi Android

Telepon seluler menggunakan berbagai macam system

operasi seperti Symbian OS®, Microsoft’s Windows Mobile®,

Mobile Linux®, iPhone OS® (berdasarkan Mac OS X), Moblin®

(dari Intel), dan berbagai macam system operasi lainnya. API yang

tersedia untuk mengembangkan aplikasi mobile terbatas dan oleh

karena itulah Google mulai mengembangkan dirinya. Menurut

Anonim, platform Android menjanjikan keterbukaan, kemudahan

untuk menjangkau, source code yang terbuka, dan pengembangan

framework yang high end.

Google membeli perusahaan Android Inc., yang merupakan

sebuah perusahaan kecil berbasis pengembangan perangkat lunak

untuk ponsel, pada tahun 2005 untuk memulai pengembangan pada

platform Android. Tokoh utama pada Android Inc., meliputi Andy

Rubin, Rich Miner, Nick Sears, dan Chris White.

Pada tanggal 5 November 2007, kelompok pemimpin industry

bersama-sama membentuk Open Handset Alliance (OHA) yang

diciptakan untuk mengembangkan standar terbuka bagi perangkat

mobile. OHA terdiri dari 34 anggota besar dan beberapa anggota

Page 38: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

46 

 

yang terkemuka diantaranya sebagai berikut: Sprint Nextel®, T-

Mobile®, Motorola®, Samsung®, Sony Ericsson®, Toshiba®,

Vodafone®, Google, Intel®, dan Texas Instruments.

Android SDK dirilis pertama kali pada 12 November 2007

dan para pengembang memiliki kesempatan untuk memberikan

umpan balik dari pengembangan SDK tersebut. Pada bulan

September 2008, T-Mobile memperkenalkan ketersediaan T-Mobile

GI yang merupakan smartphone pertama berbasiskan platform

Android. Beberapa hari kemudian, Google merilis Android SDK

1.0. Google membuat source code dari platform Android menjadi

tersedia di bawah lisensiApache’s open source.

Google merilis perangkat genggam (disebut Android Dev

Phone 1) yang dapat menjalankan aplikasi Android tanpa terikat

oleh berbagai jaringan provider telepon seluler pada akhir 2008.

Tujuan dari perangkat ini adalah memungkinkan pengembang untuk

melakukan percobaan dengan perangkay sebenarnya yang dapat

menjalankan Android OS tanpa berbagai kontrak. Google juga

merilis versi 1.1 dari sistem operasi Android pada waktu yang tidak

lama. Versi 1.1 dari Android tidak mendukung adanya soft

keyboards dan membutuhkan perangkat yang memiliki keyboard

secara fisik. Android menyelesaikan masalah ini dengan merilis

versi 1.5 pada bulan April 2009 dengan sejumlah tambahan fitur

seperti kemampuan perekaman media, widgets, dan live folders.

Page 39: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

47 

 

Versi 1.6 dari Android OS dirilis pada bulan September 2009

dan hanya dalam waktu satu bulan versi Android 2.0 dirilis dan

membanjiri seluruh perangkat Android. Versi ini memiliki

kemampuan advanced search, text to speech, gestures, dan multi

touch. Android 2.0 memperkenalkan kemampuan untuk

menggunakan HTML karena didukung oleh HTML 5. Semakin

banyak aplikasi berbasiskan Android setiap harinya yang terdapat

pada application store secara online atau dikenal sebagai Android

Market.

2.2.2.3 Versi Android

Android memiliki sejumlah pembaharuan semenjak rilis

aslinya. Pembaharuan ini dilakukan untuk memperbaiki bug dan

menambah fitur-fitur yang baru. Berikut merupakan versi-versi

yang dimiliki Android sampai saat ini:

1. Android versi 1.1

Pada tanggal 9 Februari 2009, Google merilis Android versi

1.1 yang dilengkapi dengan pembaruan estetis pada aplikasi,

jam alarm, pencarian suara, pengiriman pesan dengan Gmail®,

dan pemberitahuan email.

2. Android versi 1.5 (Cupcake)

Pada tanggal 30 April 2009 Android versi 1.5 sudah dirilis.

Android versi ini didasarkan pada Linux Kernel 2.6.27 dan

Page 40: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

48 

 

terdapat beberapa pembaharuan antar muka pengguna serta

penambahan beberapa fitur dalam Android versi 1.5.

pembaharuan yang dilakukan antara lain sebagai berikut:

a. Kemampuan untuk merekam dan menonton video dengan

modus kamera.

b. Menggunggah video ke Youtube® dan gambar Picasa®

langsung dari telepon.

c. Dukungan Bluetooth Advanced Audio Distribution Profile

(A2DP) dan Audio/Video Remote Control Profile

(AVRCP).

d. Kemampuan terhubung secara otomatis ke headset

Bluetooth dalam jarak tertentu.

e. Widgets dan folder yang baru yang dapat ditambahkan ke

dalam layar utama.

f. Transisi animasi layar dan keyboard pada layar yang dapat

disesuaikan dengan sistem.

3. Android versi 1.6 (Donut)

Pada tanggal 15 September 2009 Android versi 1.6 sudah

dirilis. Android versi ini didasarkan pada Linux Kernel 2.6.29.

Pembaharuan yang dilakukan adalah sebagai berikut:

a. Android market yang sudah diimprovisasi.

b. Kamera, camcorder, dan antarmuka galeri yang

terintegrasi.

Page 41: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

49 

 

c. Galeri memungkinkan pengguna untuk memilih banyak

gambar yang akan dihapus.

d. Voice search yang sudah diperbaharui.

e. Fasilitas pencarian yang sudah diperbaharui, yang

memungkinkan pencarian bookmark, history, dan web dari

layar utama.

f. Teknologi yang mendukung Code Division Multiple

Access/Evolution Data Only (CDMA/EVDO), 802.1x,

Virtual Private Network (VPN), text-to-speech engine serta

kemampuan dial contact.

g. Dukungan resolusi layar Wide Video Graphics Array

(WVGA)

h. Kecepatan pencarian meningkat

i. Peralatan pengembangan untuk gesture framework dan

gesture builder.

4. Android versi 2.0/2.1 (Ếclair)

Pada tanggal 26 Oktober 2009 Android versi 2.0 sudah dirilis.

Android versi ini didasarkan pada Linux kernel 2.6.29.

Pembaharuan yang dilakukan adalah sebagai berikut:

a. Pengoptimalan kecepatan perangkat keras.

b. Dukungan untuk resolusi dan ukuran layar.

c. Perubahan antarmuka pengguna dengan browser baru dan

dukungan HTML 5.

Page 42: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

50 

 

d. Tampilan daftar kontak yang telah diperbaharui.

e. Rasio latar belakang (hitam dan putih) yang lebih baik.

f. Peningkatan Google Maps 3.1.2.

g. Microsoft exchange support.

h. Dukungan flash untuk kamera.

i. Digital zoom.

j. Bluetooth 2.1.

k. Live wallpaper.

l. Kelas motionevent ditambahkan untuk mendeteksi event

yang digunakan di dalam multi touch.

5. Android versi 2.2 (Froyo)

Pada tanggal 20 Mei 2010 Android versi 2.2 sudah dirilis.

Android versi ini didasarkan pada Linux kernel 2.6.32.

Pembaharuan yang dilakukan adalah sebagai berikut:

a. Optimasi kecepatan system Operasi Android, memori dan

performa.

b. Perbaikan kecepatan aplikasi tambahan dalam

implementasi Just In Time (JIT).

c. Integrasi dari JavaScript V8 Chrome ke dalam aplikasi

browser.

d. Peningkatan dukungan Microsoft Exchange seperti

kebijakan keamanan, auto discovery dan sinkronisasi

kalender.

Page 43: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

51 

 

e. Peningkatan penginstalan aplikasi yang memungkinkan

adanya shortcut pada ponsel.

f. Fungsionalitas USB tethering dan product hotspot.

g. Penambahan pilihan untuk menonaktifkan akses data

sepanjang jaringan ponsel.

h. Pembaharuan aplikasi “Market” dengan fitur pembaharuan

secara otomatis.

i. Waktu peralihan yang singkat antara autotext dan kamus

yang dimilikinya.

j. Pengiriman kontak melalui bluetooth.

k. Dukungan password numerik dan alpha numeric.

l. Dukungan untuk melakukan pengungguhan file pada

aplikasi browser.

m. Dukungan Adobe Flash® 10.1.

6. Android versi 2.3 (Gingerbread)

Pada tanggal 6 Desember 2010 Android versi 2.3 baru saja

akan dirilis. Pembaharuan yang dilakukan adalah sebagai

berikut:

a. Adanya penambahan toko musik online di market

b. Perubahan user interface

c. Mendukung tingkat resolusi yang lebih besar

d. Peningkatan fungsi copy-paste

Page 44: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

52 

 

e. Tidak semua HP bisa diupgrade ke versi ini, spesifikasi

minimum agar bisa diupgrade ke versi gingerbread

adalah: Kapasitas CPU 1 GHZ, RAM 512 MB, diagonal

layar minimal 3,5 inchi.

7. Android versi 3.0 / 3.1 (Honeycomb)

Android versi ini lebih ditujukan kepada smartphone yang

memiliki prosesor dan layar yang lebih besar. Pembaharuan

yang dilakukan adalah sebagai berikut:

a. Dirancang khusus untuk tablet Perubahan

b. User interface untuk Honeycomb juga berbeda karena

sudah di desain khusus untuk tablet

c. Mendukung multi prosesor dan juga akselerasi perangkat

keras untuk grafis

8. Android versi 4.0 (Ice Cream Sandwich)

Pada tanggal 19 Oktober 2011 Android versi 4.0 baru akan

dirilis. Pembaharuan yang dilakukan adalah sebagai berikut:

a. Menambahkan fitur membuka kunci dengan pengenalan

wajah

b. Jaringan data pemantauan penggunaan dan control

c. Terpadu kontak jaringan sosial.

d. Perangkat tambahan fotografi

e. Mencari email secara offline

f. Berbagi informasi dengan menggunakan NFC.

Page 45: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

53 

 

2.2.2.4 Komponen Aplikasi

Dalam membangun sebuah aplikasi dalam sistem operasi

android dibutuhkan komponen aplikasi sebagai dasar aplikasi

tersebut. Terdapat empat tipe dari komponen aplikasi, yaitu:

1. Activities

Sebuah activity menggambarkan sebuah layar dengan tampilan

antarmuka aplikasi. Contohnya pada aplikasi e-mail, yang

memiliki satu activity yang menampilkan daftar dari email

pengguna, ada activity lain yang berfungsi sebagai pembaca

email, dan ada activity lain untuk menulis dan mengirim email.

Walaupun dalam satu aplikasi terdapat banyak activity, tetapi

semua activity tersebut dapat bekerja bersama-sama dan

berkaitan.

2. Services

Service adalah sebuah komponen yang bekerja sebagai

background working dalam aplikasi. Service biasanya

digunakan untuk melakukan operasi yang membutuhkan waktu

lebih lama, sehingga proses tersebut tidak mengganggu proses

yang lainnya. Dikarenakan status service adalah background

working maka service tidak mempunyai tampilan antarmuka.

Contoh penggunaan dari service adalah penerima data dalam

smartphone.

3. Content Providers

Page 46: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

54 

 

Content provider mengatur data pada aplikasi. Penyimpanan

data bisa dilakukan pada sistem file, SQLite database maupun

media penyimpanan lainnya. Content provider juga dapat

mengubah data jika diberikan permission dalam melakukan

modifikasi data tertentu, seperti mengakses kontak pada

perangkat pengguna, mengakses media penyimpanan

pengguna, dan lain-lain, tergantung dari hak akses yang

diberikan pada content provider.

4. Broadcast Receivers 

Broadcast receiver adalah komponen yang merespon siaran

pada perangkat. Broadcast receiver berfungsi memberikan

pengumuman pada sistem, ketika menerima panggilan/siaran

pada sistem perangkat.

Dari penjelasan empat komponen aplikasi di atas, dapat

disimpulkan bahwa sebuah aplikasi dalam sistem operasi android

dapat melakukan pekerjaan yang kompleks dengan menggunakan

komponen-komponen di atas.

2.3 Rapid Application Development

Rapid application development (RAD) atau rapid prototyping adalah

model proses pembangunan perangkat lunak yang tergolong dalam teknik

incremental (bertingkat). RAD menekankan pada siklus pembangunan pendek,

singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk

Page 47: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

55 

 

model ini. Rapid application development menggunakan metode iteratif

(berulang) dalam mengembangkan sistem dimana working model (model

bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan

menetapkan kebutuhan pengguna dan selanjutnya disingkirkan. Working model

digunakan kadang-kadangsebagai basis desain dan implementasi sistem final.

Dalam membangun sistem menggunakan RAD terdapat empat fase

didalamnya (Gary B. Shelly, Harry J. Rosenblatt, 2011), yaitu:

1. Requirements Planning Phase : kombinasi elemen dari fase sistem

perancangan dan analisis dari System Development Life Cycle (Siklus

Hidup Pengembangan Sistem). Seluruh elemen dari fase ini

mendiskusikan sistem kebutuhan program dan mendapatkan solusi untuk

perancangan sistem.

2. User design Phase: dalam fase ini mulai dibuat analisis sistem dan model

pengembangan serta protitipe yang menggambarkan keseluruhan sistem

dalam program meliputi input, process, output. Pembuatan desain ini

mengkombinasikan teknik Joint Application Development (JAD) dan

CASE untuk mendapatkan kebutuhan pengguna dan mengubahnya

menjadi model. Dalam pembuatan desain pengguna ini juga menyertakan

pengguna untuk mengerti, mengubah, dan memastikan model sistem yang

dibuat seperti kebutuhan pengguna.

3. Construction Phase – fokus pada program dan pengembangan aplikasi

seperti pada System Development Life Cycle (Siklus Hidup

Pengembangan Sistem). Didalam RAD pengguna melanjutkan untuk

Page 48: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

56 

 

berpartisipasi dan masih dapat memberikan keinginan untuk merubah

atau perbaikan sistem yang sudah dibuat. Dalam fase ini pengembangan

menitikberatkan pada pemograman, integrasi unit, dan pengetesan sistem.

4. Cutover Phase – Ini merupakan fase akhir dalam RAD yang mencakup

implementasi, konversi data, pengujian akhir pada sistem, dan pelatihan

pengguna. Apabila dibandingkan dengan metode yang lama, prosesnya

lebih singkat. Sehingga pada akhirnya hasil dari sistem yang dibuat lebih

cepat.

Gambar 2.25 : Fase RAD

Dari penjelasan di atas dapat kita simpulkan bahwa metode

pengembangan aplikasi dengan menggunakan RAD membuat waktu pengerjaan

aplikasi lebih cepat, hasil lebih baik karena terdapat kontrol pengguna pada

pengembangan sistem akan tetapi biaya yang dikeluarkan lebih besar dan juga

membutuhkan manajemen yang baik.

Page 49: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

57 

 

2.4 Eclipse

Eclipse adalah sebuah open source community, proyek yang berfokus

pada pembangunan sebuah platform pengembangan terbuka yang terdiri

frameworks yang dapat diperpanjang, tools dan runtimes untuk membangun,

dan menyebarkan dan pengelolaan perangkat lunak (anonim2) .

Eclipse Foundation adalah sebuah perusahaan non profit independent,

dimana perusahaan ini tidak mencari keuntungan semata. Perusahaan ini

didukung oleh anggota yang menjalankan proyek Eclipse dan membantu

mengolah serta memperkuat open source community dan sebuah ekosistem

yang erat kaitannya dengan pemenuhan produk dan jasa.

Pada akhir tahun 2001 IBM mengumumkan peluncuran proyek Eclipse

sebagai sebuah proyek open source. Eclipse adalah aplikasi Integrated

Development Enviroment (IDE) yang merupakan pembangunan ulang dari IDE

Visual Age. Keunikan Eclipse didesain sebagai sebuah platform pembangun

aplikasi yang memungkinkan pihak lain menambahkan fungsionalitas dengan

mudah dalam bentuk plug in.

IBM bahkan mempercayakan pengelolaan proyek tersebut pada sebuah

organisasi non-profit bernama Eclipse Foundation yang beranggotakan

perusahaan-perusahaan lain yang menyambut baik inisiatif sehingga dalam

waktu yang relatif singkat bermunculan beragam plug in Eclipse untuk berbagai

keperluan yang dibangun oleh perusahaan yang berda-beda. Sebagian

dimanfaatkan untuk membuat IDE atau plug-in yang komersial, dan sebagian

lain menjadi plug in yang open source. Kolaborasi antar perusahaan ini

Page 50: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

58 

 

memungkinkan terjadinya perkembangan yang amat pesat dan mendorong

vendor-vendor IDE yang sebenarnya telah memiliki platform IDE sendiri

seperti Borland Jbuilder ikut beralih menggunakan platform Eclipse.

2.5 SQLite

  SQLite merupakan sebuah library process yang mandiri dan tanpa server,

zero configuration, database SQL transaksional. Kode untuk SQLite berada

dalam public domain dan dengan demikian bebas untuk digunakan untuk tujuan

apa pun, komersial atau swasta (anonim3).

SQLite merupakan mesin database SQL embedded. Tidak seperti

kebanyakan database SQL lainnya, SQLite tidak memiliki proses server yang

terpisah. SQLite membaca dan menulis secara langsung ke disk. Database SQL

lengkap dengan multiple table, indices, triggers, dan views, semua terdapat

dalam sebuah disk file tunggal. Format file database adalah cross-platform yaitu

kita bebas untuk menduplikasi database antara 32-bit dan sistem 64-bit atau

antara arsitektur big endian dan little endian. Fitur-fitur ini menjadikan SQLite

sebagai pilihan yang cukup banyak digunakan untuk Application File Format.

SQLite adalah compact library. Dengan semua fitur yang telah

diaktifkan, ukuran library bisa kurang dari 350 KB, tergantung pada platform

yang ditargetkan untuk digunakan dan pengaturan compiler optimization

(optimasi compiler seperti aggressive function inlining dan loop unrolling dapat

Page 51: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

59 

 

menyebabkan kode obyek yang akan jauh lebih besar). Jika beberapa fitur

opsional dihilangkan, ukuran library SQLite dapat berkurang hingga di bawah

180 KB. SQLite bisa juga berjalan dalam ruang stack yang minimal (4 KB) dan

heap yang sangat sedikit (100 KB), membuat SQLite menjadi engine database

pilihan populer di memori gadget seperti telepon seluler, Personal Digital

Assistant (PDA), dan MP3 player. Ada tradeoff antara penggunaan memori dan

kecepatan. SQLite umumnya berjalan lebih cepat sejalan dengan semakin banyak

memori yang diberikan. Namun demikian, kinerja biasanya sudah cukup baik

bahkan di lingkungan rendah memori.

Fitur-fitur yang terdapat pada SQLite (anonim4):

1. Transaksi bersifat atomic, konsisten, terisolasi dan tahan lama (ACID),

bahkan jika terjadi kegagalan sistem atau power.

2. Zero configuration, yang berarti tidak membutuhkan setup atau

administration.

3. Penerapan SQL92.

4. Database yang lengkap disimpan di dalam single cross-platform disk file.

5. Mendukung database dengan ukuran terabyte dan gigabyte, strings dan

blobs.

6. Footprint yang berukuran kecil: kurang dari 350 KB jika terkonfigurasi

penuh atau kurang dari 200 KB jika fitur-fitur tambahan tidak digunakan.

7. Lebih cepat dari database client atau server yang sering digunakan pada

umumnya untuk operasi-operasi yang bersifat umum.

8. API yang sederhana dan mudah untuk digunakan.

Page 52: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

60 

 

9. Ditulis dalam ANSI-C dan TCL binding terdapat didalamnya. Binding

untuk bahasa lainnya tersedia secara terpisah.

10. Tersedia sebagai single ANSI-C source-code file yang dapat ditambahkan

dengan mudah.

11. Mandiri, tidak bergantung kepada faktor eksternal.

12. Cross platform : UNIX (Linux dan Mac OS X), OS/2, dan Windows

(Win32 dan WinCE).

13. Kode SQLite berada di public domain dan dapat digunakan untuk tujuan

apapun.

14. Memiliki command line interface (CLI) client yang mandiri dan dapat

digunakan untuk mengatur database dari SQLite.

Penggunaan yang disarankan untuk SQLite :

1. Application File Format.

Jika dibandingkan dengan menggunakan fopen() untuk menulis XML

atau format eksklusif lainnya ke dalam disk files yang digunakan oleh

aplikasi, penggunaan SQLite database lebih disarankan. Dengan

menggunakan SQLite, keharusan untuk membuat parser dapat dihindari.

Data yang dimiliki akan lebih mudah diakses dan bersifat cross-platform,

dan update akan bersifat transaksional.

2. Database untuk Perangkat Elektronik

SQLite adalah pilihan yang cukup banyak digunakan untuk mesin

database di telepon seluler, PDA, MP3 player dan perangkat elektronik

Page 53: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

61 

 

lainnya. SQLite memiliki kode footprint yang berukuran kecil sehingga

penggunaan memori, disk space dan disk bandwith menjadi lebih efisien,

sangat handal dan tidak membutuhkan perawatan dari Database

Administrator.

3. Database untuk Website

Karena tidak memerlukan pengaturan dan penyimpanan informasi

terdapat pada disk files yang umum, SQLite cukup banyak digunakan

sebagai database dari website berskala kecil hingga menengah.

4. Stand-in untuk RDBMS Enterprise

SQLite sering digunakan sebagai pengganti dari RDBMS enterprise

untuk demonstrasi maupun testing. SQLite bersifat cepat dan tidak

memerlukan pengaturan. Hal ini dapat menghilangkan berbagai

kerumitan dari proses tes dan membuat demonstrasi lebih mudah untuk

dilakukan.

2.6 Javascript Object Notation

Javascript Object Notation (JSON), adalah format pertukaran data yang

ringan, mudah dibaca dan ditulis oleh manusia dan mudah diterjemahkan dan di

generate oleh komputer (anonim5). JSON merupakan format teks yang tidak

bergantung pada bahasa pemrograman apapun karena menggunakan bahasa

pemrograman seperti C, C++, C#, Java, Javascript, Perl, Python,dan lain-lain.

Oleh karena itu, JSON ideal sebagai bahasa pertukaran data.

Page 54: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

62 

 

JSON terdiri dari 2 struktur yang disebut sebagai struktur data universal,

yaitu:

1. Kumpulan pasangan nama atau nilai, atau yang biasa disebut sebagai

object, record, structure, dictionary, hash table, keyed list, atau

associative array pada beberapa bahasa.

2. Daftar nilai terurutkan (ordered list of values) yang pada kebanyakan

bahasa dinyatakan sebagai array, vector, list atau sequence.

JSON memiliki bagian-bagian sebagai berikut :

Objek, yaitu nilai yang tidak terurutkan. Objek dimulai dengan { (kurung

kurawal buka) dan diakhiri dengan } (kurung kurawal tutup). Setiap nama diikuti

dengan : (titik dua) dan setiap pasangan nama/nilai dipisahkan oleh , (koma).

Gambar 2.26 Objek pada JSON

Array adalah kumpulan nilai yang terurutkan. Array dimulai dengan [ (kurung

kotak buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan

oleh , (koma).

Page 55: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

63 

 

Gambar 2.27 Array pada JSON

Nilai (value) adalah beberapa string dalam kutip ganda, atau angka, atau dapat

berupa nilai true atau false atau null, atau sebuah objek, atau sebuah array.

Gamba 2.28 Nilai (value) pada JSON

String adalah kumpulan dari nol atau lebih karakter Unicode, yang berada di

dalam tanda “ ” (kutip ganda). Di dalam string digunakan backslash escapes (/)

untuk membuat karakter khusus. Sebuah karakter mewakili karakter tunggal

pada string. String sangat mirip dengan string C atau Java.

Page 56: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

64 

 

Gambar 2.29 String pada JSON

Angka pada JSON sangat mirip dengan angka pada C atau Java. Namun, pada

JSON tidak menggunakan format octal dan heksadesimal.

Gambar 2.30 Angka pada JSON

Page 57: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

65 

 

Spasi kosong (whitespace) dapat disisipkan di antara pasangan tanda-tanda

tersebut, kecuali beberapa detail encoding yang secara lengkap dipaparkan oleh

bahasa pemrogaman yang bersangkutan.

2.7 Cache

Menurut Turban cache adalah sejenis memori berkecepatan tinggi

dimana komputer untuk sementara waktu dapat menyimpan berbagai blok data

yang lebih sering digunakan dan dapat diakses secara lebih cepat oleh prosesor

daripada memori utama (RAM) (anonim5). Memori cache adalah tempat yang

lebih dekat dengan CPU di mana komputer untuk sementara waktu dapat

menyimpan berbagai blok perintah yang paling sering digunakan. Blok-blok

yang kurang banyak digunakan disimpan dalam RAM sampai tiba saatnya

ditransfer ke cache. Memori cache lebih cepat dari RAM karena perintah

berjalan dalam jarak yang lebih dekat ke CPU.

Terdapat tiga jenis memori cache, yaitu :

1. Cache level 1 (L1) atau cache internal adalah bagian dari chip

mikroprosesor dan besarnya berkisar antara 8-256 KB, kapasitas cache

L1 lebih kecil daripada cache L2 meskipun cache L1 bekerja lebih cepat.

2. Cache level 2 (L2) atau cache eksternal terletak diluar chip prosesor dan

terdiri dari kumpulan chip SRAM (static RAM). Kapasitasnya berkisar

antara 64 kilobyte hingga 2 megabyte.

Page 58: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

66 

 

3. Cache level 3 (L3) merupakan cache yang terpisah dari chip

mikroprosesor. Cache jenis ini biasanya hanya terdapat pada komputer

yang sangat canggih, yaitu yang menggunakan L2 Advanced Transfer

Cache.

Cache pada Android

Cache yang terdapat pada Android pada dasarnya berprinsip sama dengan

cache pada umumnya, yaitu sejenis memori berkecepatan tinggi dimana

komputer untuk sementara waktu dapat menyimpan berbagai blok data yang

lebih sering digunakan dan dapat diakses secara lebih cepat oleh prosesor

daripada memori utama (RAM). Namun jika memori internal dalam perangkat

Android akan terpakai semua, Android akan menghapus semua file yang berada

di dalam cache untuk membuat space tambahan. Walaupun demikian, developer

sebaiknya tidak hanya mengandalkan sistem untuk melakukan penghapusan

cache file ini. Developer harus tetap menjaga ukuran cache files agar berada

dalam batas yang wajar, seperti 1 MB. Pada saat user melakukan uninstall

aplikasi, file yang terdapat pada cache akan dihapus (anonim6).

2.8 Application Programming Interface

Mengutip dari tulisan Sumanth Bail, Application Programming Interface

(API) adalah method khusus yang dibuat oleh sebuah sistem operasi pada

komputer atau program aplikasi dimana programmer yang sedang membuat

Page 59: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

67 

 

program aplikasi dapat membuat request kepada sistem operasi atau aplikasi

lainnya.

Dalam terminologi layerperson, sebuah API mempermudah dalam

pengembangan program, dengan menyediakan semua blok pembangunan yang

dibutuhkan. Seorang programmer kemudian menempatkan blok-blok tersebut

untuk dihubungkan, membuat atau mengumpulkan informasi dari aplikasi

dimana API tersebut berada.

Mayoritas solusi Electronic Document Management Systems (EDMS),

seperti CNG-SAFE, menawarkan API yang memungkinkan programmer untuk

menulis aplikasi add-on yang konsisten dengan aplikasi inti. Walaupun API

dirancang untuk programmer, API juga memberikan keuntungan bagi pengguna

karena API membantu untuk memastikan bahwa program-program yang

menggunakan API yang sama akan memiliki antarmuka yang sama. Hal ini

membuat pengguna menjadi mudah untuk mempelajari dan menggunakan

modul-modul ini.

API biasanya dapat digunakan jika harus mengintegrasikan EDMS ke

software atau aplikasi yang telah dimiliki dan memerlukan pengaturan yang

khusus untuk dapat menghemat waktu dan menghilangkan kompleksitas,

mendapatkan konsistensi dan memperkecil faktor kesalahan manusia (human

error).

Page 60: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Interaksi ...library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00250-if bab 2.pdf · Aplikasi perangkat lunak spesialis, ... terdapat beberapa

68 

 

API menyediakan hampir seluruh fungsionalitas yang terdapat pada

aplikasi init dan dikontrol untuk memberikan dan menolak akses, sesuai dengan

izin yang dimiliki pengguna.

General requirement untuk dapat menggunakan API :

1. Pengembang yang memiliki pengetahuan untuk menggunakan API.

2. Pemahaman tentang tujuan dari proyek integrasi.

3. Kemampuan untuk membuat dengan dan sekitar API agar dapat

melakukan integrasi dengan sukses.