BAB 2 LANDASAN TEORI PC Tablet PC handwriting recognition...

44
10 BAB 2 LANDASAN TEORI 2.1 PC Tablet PC Tablet adalah sebuah komputer portable seperti halnya laptop. PC Tablet dirancang untuk handwriting recognition yang mengubah karakter- karakter menjadi teks. (http://www.pcmag.com/encyclopedia_term/0,1237,t=Tablet+PC&i=52522,00.as p) Ràfols (2011) dalam jurnal yang berjudul “Tablets, Apps, and the University: A Rationale for Establishing App Development Centers” menyatakan bahwa munculnya perangkat PC Tablet memungkinkan bagi para sarjana dan ilmuwan untuk berbagi dan mengembangkan penelitiannya diseluruh dunia. Gambar 2.1 PC Tablet Sumber : http://portal.paseban.com/review/4047/galaxy-tab-vs-ipad

Transcript of BAB 2 LANDASAN TEORI PC Tablet PC handwriting recognition...

10

BAB 2

LANDASAN TEORI

2.1 PC Tablet

PC Tablet adalah sebuah komputer portable seperti halnya laptop. PC

Tablet dirancang untuk handwriting recognition yang mengubah karakter-

karakter menjadi teks.

(http://www.pcmag.com/encyclopedia_term/0,1237,t=Tablet+PC&i=52522,00.as

p)

Ràfols (2011) dalam jurnal yang berjudul “Tablets, Apps, and the

University: A Rationale for Establishing App Development Centers” menyatakan

bahwa munculnya perangkat PC Tablet memungkinkan bagi para sarjana dan

ilmuwan untuk berbagi dan mengembangkan penelitiannya diseluruh dunia.

Gambar 2.1 PC Tablet

Sumber : http://portal.paseban.com/review/4047/galaxy-tab-vs-ipad

11

2.2 Social Media dan Social Networking

Menurut P.J.Deitel & H.M.Deitel (2008:71), social media mengacu pada

media sharing online seperti: video, musik, foto, berita, dan lain-lain. Menurut

Hitwise yang dikutip oleh P.J.Deitel & H.M.Deitel, bahwa sekarang kebutuhan

masyarakat via online meningkat misalnya masyarakat mencari hiburan dengan

menonton video secara online. Hal ini membuktikan bahwa sosial media terus

berkembang dan memegang peranan penting di masyarakat.

Kemudian, P.J.Deitel & H.M.Deitel (2008:71) menyatakan pula bahwa

banyak situs jejaring sosial telah menemukan cara-cara inovatif untuk

menghubungkan orang melalui Internet dan perangkat mobile mereka seperti

ponsel dan PC-Tablet. User dapat mengirim konten ke web dan perangkat mobile

yang internetnya telah diaktifkan.

Menurut H.Keitzmann, Hermkens, McCarthy, & S.Silvestre (2011) dalam

artikelnya berjudul : “Social media? Get serious! Understanding the functional

building blocks of social media”, Ada tujuh macam fungsi dari social media :

a. Identity

menggambarkan sejauh mana pengguna mengungkapkan identitas

mereka dalam pengaturan media sosial. Hal ini mencakup informasi

seperti nama, usia, jenis kelamin, profesi, lokasi, dan juga informasi

yang mendeskripsikan pengguna dengan cara tertentu.

b. Conversations

menggambarkan sejauh mana pengguna berkomunikasi dengan

pengguna lain dalam pengaturan media sosial. Banyak situs media

12

sosial yang dirancang terutama untuk memfasilitasi percakapan antara

individu-individu dan kelompok.

c. Sharing

Menggambarkan sejauh mana pengguna melakukan pertukaran,

pendistribusian, dan menerima konten. Istilah “sharing” sering

menyiratkan bahwa pertukaran konten antar pengguna sangat penting.

d. Presence

Menggambarkan sejauh mana pengguna dapat mengetahui apakah

pengguna lainnya dapat diakses / online. Ini termasuk mengetahui di

mana lokasi pengguna yang lain di dunia maya atau dunia nyata.

e. Relationship

Menggambarkan sejauh mana pengguna dapat berhubungan

dengan pengguna lain.

f. Reputation

Menggambarkan sejauh mana pengguna dapat mengidentifikasi

orang lain, termasuk diri mereka sendiri.

g. Groups

Menggambarkan sejauh mana pengguna dapat membentuk

communities dan subcommunities.

13

Boyd & Ellison (2008) dalam jurnal yang berjudul “Social Network Sites:

Definition, History, and Scholarship” menyatakan bahwa sejak diperkenalkannya

social network sites seperti Facebook, Twitter, dan lain-lain, social network sites

telah menarik jutaan pengguna, sehingga social network sites menjadi kebiasaan

aktivitas user sehari-hari. Yang membuat unik suatu social network sites adalah

mereka tidak memungkinkan pengguna untuk bertemu orang asing atau orang

yang tidak mereka kenal, akan tetapi mereka membuat user seakan bertemu

dengan orang yang tidak mereka kenal dalam suatu jejaring sosial yang dapat

melakukan komunikasi secara online. Dalam hal ini, social network sites juga

menemukan cara yang inovatif untuk menggabungkan mereka ke dalam alat-alat

komunikasi seperti: mobile connectivity, blogging, dan lain-lain.\

2.3 Data

Menurut L.Whitten & D.Bentley (2007:21), data adalah fakta-fakta

mentah tentang orang, tempat, kejadian, dan hal-hal yang penting bagi suatu

organisasi. Setiap fakta memiliki arti tersendiri.

Menurut Connolly & Begg (2010:68), data adalah komponen terpenting

dalam Database Management System (DBMS) yang bertindak sebagai jembatan

penghubung antara komponen mesin dan pengguna.

14

2.4 Database

Menurut Connolly & Begg (2010:65) database adalah kumpulan data

yang saling berhubungan secara logika dan deskripsinya dirancang untuk

memenuhi kebutuhan organisasi. Database merepresentasikan entity, attributes,

dan hubungan antar entity.

Gambar 2.2 Database (L.Whitten & D.Bentley, 2007:519)

2.5 Database Management System (DBMS)

Menurut Connolly & Begg (2010:66) DBMS merupakan sebuah sistem

peranti lunak yang memungkinkan user untuk mendefinisikan, membuat,

memelihara, dan mengontrol akses ke database.

Fasilitas yang tersedia dalam DBMS antara lain :

a. Hak bagi pengguna untuk menentukan database

Pengguna dapat menggunakan data definition language (DDL).

DDL memungkinkan pengguna menetapkan tipe data, struktur, dan

batasan pada data yang akan disimpan dalam database.

15

b. Hak bagi pengguna untuk melakukan insert, delete, update, dan

mendapatkan kembali data dari database

Untuk melakukan penginputan, penghapusan, pembaharuan, dan

mendapatkan kembali data dari database, pengguna dapat

menggunakan data manipulation language (DML). Bahasa query

merupakan bahasa yang memperbolehkan DML untuk menyediakan

fasilitas permintaan umum pada data. Structured Query Language

(SQL) merupakan bahasa query yang paling umum digunakan dan

dimana merupakan standar bahasa untuk DBMS.

c. Akses database yang dapat dikontrol

Keuntungan dari akses database yang dapat dikontrol :

1. Sistem yang aman

Karena hak-hak user dalam mengakses database dapat

dibatasi.

2. Sistem yang terintegritas

Karena konsistensi data yang tersimpan ke dalam

database dapat dipertahankan.

3. Pengontrolan sistem yang digunakan bersama

Sistem yang digunakan bersama, sehingga kesalahan dapat

diminimalisir. Misalnya lost update problem (masalah

hilangnya data yang diupdate), Uncommited dependency

problem / dirty real (masalah kebergantungan terhadap

transaksi yang belum commit), dan inconsistent problem

(masalah analisa yang tidak konsisten).

16

4. Pemulihan sistem

Tersedia fasilitas recovery yang menungkinkan data

dikembalikan seperti semula jika terjadi kesalahan pada

software maupun hardware.

5. Catalog yang dapat diakses pengguna

Pengguna dapat mengakses deskripsi data (catalog) yang

ada dalam basis data

2.6 Cascading Style Sheet (CSS)

Olsson & n (2008:18) CSS adalah presentation layer pada sebuah

dokumen web yang nampak ketika diakses oleh user. CSS dapat mengontrol

penulisan hingga 10000 halaman. Hal ini sangat membantu user dalam

pembuatan suatu aplikasi sehingga user tidak perlu membuat tampilan dalam

bentuk yang sama.

P.J.Deitel & H.M.Deitel (2008:160) CSS adalah suatu teknologi yang

memungkinkan pengguna dapat memodifikasi elemen-elemen berupa fonts,

spacing, colours pada halaman dokumen web seperti section headers, body text,

links, dan lain-lain.

CSS merupakan salah satu bahasa pemrograman web untuk

mengendalikan beberapa komponen dalam sebuah web, sehingga web akan lebih

terstruktur dan seragam.

Pada umumnya CSS dipakai untuk mem-format tampilan halaman web

yang dibuat dengan bahasa HTML dan XHTML. CSS dapat mengendalikan

ukuran gambar, warna teks, warna tabel, ukuran border, warna border, warna

17

hyperlink, warna mouse over, spasi antar paragraf, spasi antar teks, margin kiri,

kanan, atas, bawah, dan parameter lainnya. CSS adalah bahasa style sheet yang

digunakan untuk mengatur tampilan dokumen. Dengan adanya CSS

memungkinkan kita untuk menampilkan halaman yang sama dengan format yang

berbeda.

(http://www.css-jquery.com/pengertian-css/)

2.7 Internet

Menurut K.Williams & C.Sawyer (2011:18), internet adalah jaringan

komputer di seluruh dunia yang menghubungkan ratusan ribu jaringan yang lebih

kecil. Jaringan ini menghubungkan beberapa komputer pada bidang militer,

pendidikan, komersial, dan masing-masing individu.

Internet merupakan singkatan kata dari interconnection-networking, bila

dijabarkan secara sistem global, maka internet merupakan jaringan komputer

diseluruh penjuru dunia yang saling terhubung satu sama lain dengan

menggunakan standar Internet Protocol Suite (TCP/IP), sehingga antara

komputer dapat saling mengakses informasi dan bertukar data.

(http://www.weblog.web.id/2012/08/pengertian-internet-jaringan-komputer.html)

18

Gambar 2.3 Internet

Sumber:http://img2.belajar-komputer-mu.com/wp

content/uploads/2011/11/pengertian-internet-adalah.jpg

2.8 Model Waterfall

Menurut S.Pressman (2010:39) nama model waterfall sebenarnya adalah

“Linear Sequential Model” dan model ini sering disebut juga dengan “Classic

Life Cycle”. Model ini sistematis dan berurutan dimulai dengan tahap

communication, planning, modeling, construction, hingga deployment.

Namun menurut Winston Royce yang dikutip oleh S.Pressman (2010:39) model

waterfall pada awalnya diusulkan memiliki feedback loop yang memungkinkan

sistem untuk beradaptasi dengan perubahan selama proses rekayasa peranti

lunak, tetapi sebagian besar perusahaan memperlakukan model ini sebagai proses

linier yang kaku.

Gambar 2.4 Model Waterfall (S.Pressman, 2010:39)

19

Berikut penjelasan tahap- tahap yang terjadi pada model waterfall:

a. Communication

Tahap ini wajib dilakukan pertama kali pada model waterfall

karena pada tahap ini terjadi proses memahami tujuan dan

pengumpulan informasi apa saja yang dibutuhkan oleh stakeholders.

b. Planning

Dalam proses perancangan ini suatu perangkat lunak yang ingin

dibuat diarahkan menjadi lebih jelas dan terarah. Hal-hal yang

direncanakan antara lain tugas-tugas teknis yang akan dilakukan,

resiko-resiko yang mungkin terjadi, sumber daya yang diperlukan,

keluaran yang dihasilkan, dan jadwal kerja.

c. Modeling

Pada tahap ini developer membuat suatu permodelan untuk

memahami permasalahan dan bagaimana untuk memecahkan masalah

tersebut. Kemudian Modeling ini bertujuan pula untuk lebih

memahami hal-hal yang dibutuhkan oleh sebuah software dan

bagaimana mencapai hal-hal tersebut.

d. Construction

Terjadi proses pengkodean dan uji coba pada baris kode untuk

menemukan kesalahan pada saat pengkodean.

e. Deployment

Pada tahapan ini piranti lunak disebarluaskan ke user untuk

mendapatkan umpan balik yang digunakan sebagai evaluasi.

20

2.9 User Interface Design

Menurut Shneiderman & Plaisant (2010:88-89), ada delapan aturan emas

(Eight Golden Rules of Interface Design) yang digunakan sebagai perancangan

user interface yang baik.

a. Strive for consistency (konsistensi)

Dalam pembuatan suatu interface dalam aplikasi harus

memperhatikan konsistensi. Konsistensi yang dimaksudkan disini

adalah warna, tulisan, tampilan data, singkatan, dan pesan kesalahan.

b. Cater to universal usability (menyediakan usability universal)

Adanya penggunaan shortcut dan fungsi-fungsi umum yang sudah

diketahui oleh novice ataupun expert user untuk mempercepat dan

mempermudah jalannya suatu interaksi terhadap aplikasi yang dibuat.

c. Offer informative feedback (menyediakan umpan balik yang

informatif)

Dalam suatu aplikasi harus diberikan suatu umpan balik yang

informatif agar user tidak mengalami kebingungan dalam menjalankan

aplikasi misalnya ketika ada kesalahan dalam melakukan proses

tertentu.

d. Design dialogs to yield closure (merancang dialog untuk penutupan)

Serangkaian aksi dalam suatu aplikasi biasanya terdiri dari bagian

pembuka, pertengahan, dan penutupan. Suatu aplikasi hendaknya

memperhatikan umpan balik yang informatif pada penyelesaian suatu

aplikasi agar memberikan kepuasaan bagi user.

21

e. Prevent errors (memberikan penanganan kesalahan yang sederhana)

Suatu aplikasi hendaknya dirancang sedemikian rupa agar tidak

dapat melakukan kesalahan fatal. Bila terjadi kesalahan ketika user

mengoperasikannya, maka aplikasi akan memberikan mekanisme

penanganan yang sederhana dan mudah dipahami oleh user.

f. Permit easy reversal of actions (mudah kembali ke tindakan

sebelumnya)

Mempermudah pengguna untuk kembali ke tindakan sebelumnya

apabila terjadi kesalahan dalam pengoperasian. Hal ini membuat

pengguna tidak takut dalam mengeksplorasi pilihan-pilihan fitur yang

ingin digunakan.

g. Support internal locus of control (mendukung tempat pengendali

internal)

User menginginkan untuk menjadi pengendali sistem dan sistem

yang menanggapi aksi yang dilakukannya.

h. Reduce short-team memory load (mengurangi beban ingatan jangka

pendek)

Adanya ketebatasan ingatan manusia, sehingga dalam membuat

suatu perancangan layar aplikasi harus sederhana dan urutan tindakan

mudah diingat.

22

2.10 Unified Modelling Language (UML)

Menurut L.Whitten & D.Bentley (2007:371) UML (Unified Modelling

Language) merupakan sekumpulan ketentuan permodelan yang digunakan untuk

menentukan dan menggambarkan sebuah sistem peranti lunak yang berbasis

objek.

2.10.1 Use Case Diagram

Menurut L.Whitten & D.Bentley (2007:243) use case diagram

adalah diagram yang menggambarkan hubungan interaksi antara user dan

sistem.

Menurut S.Pressman (2010:847) use case diagram membantu

dalam memutuskan fungsi-fungsi dan fitur-fitur software yang

diinginkan user.

Use case diagram sangat membantu apabila kita sedang

menyusun requirement untuk sebuah sistem, mengkomunikasikan

rancangan dengan client, dan merancang test case untuk semua feature

yang ada pada sistem.

Gambar 2.5 Use Case Diagram (L.Whitten & D.Bentley, 2007:246)

23

Use case diagram umumnya terbagi menjadi tiga bagian

,yaitu :

a. Actors

Merupakan external user yang berinteraksi dengan sistem.

Ada 4 macam actors menurut L.Whitten & D.Bentley

(2007:247), yakni :

1. Primary Business Actor

Aktor utama yang mendapatkan keuntungan utama

dari terjadinya proses use case yang biasanya bersifat

measurable.

Contoh: karyawan mendapat cek pembayaran (sesuatu

yang measurable) dari sistem pembayaran gaji

karyawan setiap jumat.

2. Primary System Actor

Aktor yang terlibat langsung dalam jalannya suatu

sistem. Biasanya aktor ini merupakan pemicu dari

business atau system event.

Contoh: kasir toko yang men-scan barang yang dibeli

oleh pembeli.

3. External Server Actor

Aktor yang merespon request dari use case.

Contoh: biro kredit yang melakukan otorisasi charge

sebuah kartu kredit.

24

4. External Receiver Actor

Aktor yang bukan primary aktor, tetapi menerima

sesuatu yang bersifat measurable dari use case.

Contoh: gudang penyimpanan barang menerima slip

packing untuk mempersiapkan barang yang akan

dikirim, ketika customer telah memesan barang.

b. Relationship

Merupakan sebuah garis antara dua simbol pada diagram

use case. Relationship memiliki arti yang bergantung pada

simbol yang dihubungkan oleh garis tersebut.

Menurut L.Whitten & D.Bentley (2007:247) ada tipe-tipe

relationship, yakni:

1. Association (asosiasi)

Hubungan antara aktor dengan use case dimana

terjadi interaksi diantara mereka.

Gambar 2.6 Association (L.Whitten & D.Bentley,

2007:248)

Dari gambar diatas aktor dengan menunjuk dengan

anak panah ke use case berarti dia merupakan inisiator

use case tersebut. Aktor yang tanpa anak panah berarti

Pelanggan

memesan barang

Penjual

25

menandakan interaksi antara use case dengan aktor

penerima.

2. Extends

Hubungan yang terdiri dari langkah yang

diekstraksi dari use-case yang lebih kompleks untuk

menyederhanakan masalah awal. Tujuannya agar

mempermudah use case yang buat agar lebih mudah

dimengerti.

Gambar 2.7 Extension Use Case (L.Whitten &

D.Bentley, 2007:249)

3. Uses or Includes

Digunakan untuk mengurangi redudansi ketika dua

atau lebih use case melakukan langkah yang sama.

Gambar 2.8 Uses (L.Whitten & D.Bentley, 2007:249)

Ubah Profile

Ubah Password

Login terlebihdahulu

«uses»

«uses»

26

4. Depends On

Hal ini terjadi ketika suatu use case tidak dapat

dilakukan apabila use case tertentu belum dilakukan.

Gambar 2.9 Depends On Use Case (L.Whitten &

D.Bentley, 2007:250)

5. Inheritance

Inheritance digunakan dalam use case untuk

hubungan dua aktor atau lebih dalam sistem dengan

aktor abstrak.

Gambar 2.10 Inheritance Use Case (L.Whitten & D.Bentley, 2007:250)

Gambar 2.10 Inheritance (L.Whitten & D.Bentley,

2007:250)

27

c. Use case

Sebuah perilaku yang berkaitan dengan langkah-langkah

berurutan baik secara otomatis ataupun manual dengan tujuan

menyelesaikan suatu tugas bisnis.

2.10.2 Class Diagram

Menurut L.Whitten & D.Bentley (2007:400), class diagram

merupakan gambaran dari struktur objek, yang menunjukkan kelas objek

yang ada pada suatu sistem dan hubungan antara kelas-kelas objek

tersebut.

Disetiap kelas objek dibagi menjadi tiga bagian, yaitu :

a. Nama kelas

b. Atribut kelas

c. Operasi kelas atau method

Gambar 2.11 Struktur Kelas Objek

Nama kelas

Atribut kelas

Operasi kelas

28

L.Whitten & D.Bentley (2007:650) menuliskan bahwa di dalam

class diagram terdapat visibility yang berguna untuk menentukan atribut

dan method kelas yang dapat diakses dan digunakan oleh kelas lainnya

atau tidak. Ada tiga jenis visibility, yakni

a. Public

b. Protected

c. Private

Tabel 2.1 Tabel penjelasan tentang Visibility

Visibility Simbol Penjelasan

Public + Atribut dan method-nya dapat

diakses dan digunakan oleh kelas

lainnya

Protected # Atribut dapat diakses dan method-

nya hanya dapat digunakan oleh

kelas yang mendefinisikan dan

turunannya

Private - Atribut dan method-nya hanya dapat

diakses dan digunakan oleh kelas

yang mendefinisikan

29

Di dalam class diagram rupanya juga terdapat multiplicity,

associations, dan relationship, L.Whitten & D.Bentley (2007:377) :

a. Multiplicity dan associations mengidentifikasi pertalian antar

object classes yang menentukan hubungan antar kelas.

Tabel 2.2 Tabel multiplicity dan associations

Multiplicity UML

Multiplicity

Notation

Association with Multiplicity Association

Meaning

Exactly 1 1

or

leave blank

An employee

works for one

and only one

department

Zero or one 0...1

An employee

has either one

or no spouse

Zero or

more

0...*

or

*

A customer

can make no

payment up to

many

payments

30

1 or more 1...* A university

offers at least

1 course up to

many courses

Spesific

range

7...9 A team has

either 7,8,9

games

scheduled

Sumber : L.Whitten & D.Bentley (2007:377)

b. Relationship merupakan simbol garis yang dihubungkan antara

class diagram yang memiliki arti tertentu.

Ada jenis-jenis relationship dalam class diagram :

1. Generalisasi

Hubungan dalam class diagram dimana sebuah

kelas (subclass atau child class) dapat mewarisi atribut-

atribut dan method-method dari kelas lainnya

(superclass atau parentclass), dimana superclass

bersifat umum dari subclass

31

Gambar 2.12 Generalisasi

2. Asosiasi

Hubungan antara satu kelas dengan kelas lainnya

yang berinteraksi satu sama lain untuk mencapai

tujuannnya. Asosiasi dinotasikan dengan sebuah garis

yang menghubungkan kedua kelas dan biasanya

disertakan keterangan mengenai detail relasi antar kelas

dan multiplicity.

Gambar 2.13 Asosiasi

3. Agregasi

Hubungan dalam class diagram dimana sebuah

class mengandung sebagian kecil atribut dari class

lainnya. Pada gambar 2.14 kelas player merupakan

+accelarate()

+turn()

+stop()

+make

+model

Vehicle

+opentrunk()

+trunksize

Car

+frametype

Bicycle

Car Garage

1 1

uses

32

bagian dari kelas team, tetapi kelas team bukan

merupakan bagian dr kelas player.

Gambar 2.14 Agregrasi

4. Komposisi

Bentuk lain dari agregrasi dimana terdapat

hubungan yang kuat dalam seluruh atau sebagian kelas

sehingga jika satu kelas hilang, maka kelas yang

menjadi bagiannya akan hilang juga. Pada gambar 2.15,

dijelaskan bahwa kelas Chapter merupakan bagian dari

kelas Book dan tidak akan ada jika kelas Book tidak

dibuat.

Team

Player

1

*

33

Gambar 2.15 Komposisi

2.10.3 Sequence Diagram

Menurut L.Whitten & D.Bentley (2007:394), sequence diagram

adalah model skenario logika dari sebuah use case yang menggambarkan

bagaimana terjadinya interaksi antara aktor dan sistem dalam suatu urutan

waktu yang digambarkan dalam bentuk diagram.

Gambar 2.16 Sequence Diagram (Whitten & D.Bentley, 2007:395)

Book

Chapter

1

*

34

Beberapa notasi-notasi yang digunakan dalam sequence diagram

adalah :

a. Aktor

Aktor adalah elemen yang terdapat pada sequence

diagram yang mewakili user dalam berinteraksi dengan

interface.

Gambar 2.17 Aktor Simbol

b. Objek atau sistem

Objek atau sistem digambarkan dengan simbol persegi

panjang yang diberi nama “Black box” atau “Whole” yang

didalamnya terdapat nama objek tersebut. Pada objek terdapat

garis putus-putus yang disebut lifeline, yang mengindikasikan

kehidupan dari sistem.

Gambar 2.18 Objek

:Objek

35

c. Aktivasi bar

Aktivasi bar digambarkan dengan sebuah persegi panjang

pada lifeline yang digunakan untuk menunjukkan lamanya

objek yang digunakan.

Gambar 2.19 Aktivasi Bar

d. Pesan atau input message

Pesan digunakan untuk menggambarkan interaksi antara

objek-objek yang ada pada sequence diagram.

Contoh 2.20 Pesan

Pesan

:Objek1

36

e. Pesan kembali atau output message

Pesan kembali digambarkan dengan garis putus-putus dan

berfungsi untuk menanggapi pesan yang sebelumnya telah

disampaikan.

Gambar 2.21 Pesan Kembali

f. Self-call

Suatu objek pada sequence diagram yang mengirimkan

pesan atau berinteraksi ke objek itu sendiri.

Gambar 2.22 Self-call

g. frame

Frame menunjukkan adanya perulangan atau looping pada

daerah yang dibatasi oleh frame tersebut. Frame juga

digunakan jika pada sequence diagram terdapat pesan tertentu

atau optional.

Gambar 2.23 Frame

Pesan Kembali

loop

37

2.11 Android

Menurut Meng (2012:2) Android adalah sistem operasi mobile yang

merupakan versi modifikasi dari Linux. Pada mulanya Android dikembangkan

oleh perusahaan Android, Inc. Kemudian pada tahun 2005, Google membeli

Android, Inc dan mengambil alih pengembangan Android sebagai strategi

untuk memasuki pasar mobile. dan pertama kali diluncurkan pada November

2007. Google membuat Android dapat dikembangkan oleh para developer lain,

sehingga Android merupakan open source program. Dan juga, Android

memperbolehkan para vendor menambahkan extentions milik mereka sendiri

dan men-customize Android sehingga berbeda dari produk lain. Keuntungan

utama dari mengadopsi Android adalah bahwa Android menawarkan

pendekatan seragam dalam pengembangan aplikasi. Developer hanya perlu

mengembangkan Android dan aplikasi mereka akan bisa dijalankan di berbagai

devices, selama devices tersebut didukung oleh Android.

Keunikan Android dalam mengkombinasikan beberapa hal membuat

Android menjadi operating system yang sangat istimewa saat ini. Hal-hal yang

berhasil membuatnya dikatakan istimewa, Burnette (2010:10):

a. A truly open, free development platform based on Linux and open

source

Produsen Android sangat menyukai Android karena mereka tidak

perlu membayar royalti untuk penggunaan dan penyesuaian platform.

Kemudian, produsen boleh mengunduh source code program secara

free karena Android bersifat open source. Android tidak hanya terbatas

dari produsen Android saja.

38

b. A component-based architecture inspired by Internet mashup

Bagian dari sebuah aplikasi dapat digunakan dengan berbagai cara

tanpa original asli dari developer. Pengembang lain dapat

memodifikasi dengan mudah komponen aplikasi Android, sehingga

pengembang dapat mengganti komponen built-in dengan versi

pengembangan built-in yang dimilikinya.

c. Tons of built-in service out of the box

Adanya layanan yang memungkinkan pengguna untuk

memanfaatkan kekuatan penyimpanan lokal sehingga pengguna hanya

perlu sesekali terhubung dengan server untuk sinkronisasi. Layanan ini

membantu meningkatkan fungsionalitas layanan sambil menekan

biaya.

d. Automatic management of the application life cycle

Pengguna tidak perlu mengkhawatirkan aplikasi yang aktif atau

menutup beberapa aplikasi agar aplikasi yang diinginkan dapat

berjalan.

e. High-quality graphics and sound

Vektor dua dimensi dan animasi yang terinspirasi dari Flash

dikombinasikan dengan 3D-Accelerated Open GL grafik menghasilkan

grafis yang halus dan nyata.

f. Portability across a wide range of current and future hardware

Seluruh program akan dikodekan dalam bahasa pemrograman

Java dan dieksekusi oleh Android’s Dalvik virtual machine. Android

39

mendukung berbagai jenis metode input dan memiliki user interface

yang dapat disesuaikan dengan resolusi layar yang berbeda-beda.

Menurut Lee (2012:2), Android mempunyai beberapa versi sejak pertama

di release :

Tabel 2.3 Tabel Penjelasan Tentang Versi Android

Sumber : Lee (2012:3)

Menurut website official Android terdapat dua tambahan platform

version dari data di atas, yaitu :

Tabel 2.4 Tabel penjelasan Tentang Versi Android Lanjutan

Android Version Code Name

4.0 – 4.0.2/4.0.3 – 4.0.4 Ice Cream Sandwich

4.1 Jelly Bean

Sumber : http://developer.android.com/about/dashboards/index.html

40

Menurut Lee (2012:4) arsitektur Android dibagi menjadi lima bagian

dalam 4 lapisan utama :

Gambar 2.24 Arsitektur Android (Lee, 2012:5)

a. Linux Kernel

Merupakan lapisan dasar dari Android, dimana terdapat seluruh

perangkat driver level rendah untuk berbagai komponen hardware

pada perangkat Android.

b. Libraries

Merupakan bagian yang berisi seluruh kode yang menyediakan

fitur utama pada sistem operasi Android.

c. Android Runtime

Terdapat pada lapisan yang sama dengan libraries, bagian ini

menyediakan sekumpulan core libraries yang memungkinkan

developer membangun aplikasi Android dengan menggunakan bahasa

pemrograman Java. Kemudian, tersedia pula Android’s Dalvik virtual

machine yang dirancang khusus untuk Android yang digunakan untuk

41

mengoptimalkan battery-powered dan mobile device dengan memori

yang terbatas dan CPU.

d. Application Framework

Pada bagian ini diperlihatkan berbagai kemampuan sistem operasi

Android kepada pengembang sehingga dapat menggunakannya di

dalam aplikasi yang dikembangkan.

e. Applications

Lapisan ini terdiri dari aplikasi bawaan dan aplikasi yang diunduh

dan di-install sesuai keinginan pengguna. Contoh aplikasi bawaan

seperti: phone, contacts, browser dan lainnya.

Holla & Katti (2012) dalam jurnal yang berjudul “Android Based Mobile

Application and Its Security” menjelaskan bahwa dengan semakin

berkembangnya mobile applications membuat Google meliris Android, yang

merupakan open source operating system dengan linux-based platform. Seiring

dengan waktu, kemudian Android menjadi platform yang paling banyak

digunakan, akan tetapi Android juga menjadi pertimbangan user dari

kerentanan keamanannya. Misalnya, di Android market dimana kita dapat men-

download berjuta aplikasi untuk Android, siapapun dapat meng-upload

program mereka tanpa harus mengalami security check yang begitu rumit.

Tentunya ini membuat Android menjadi target computer criminals. Hal ini

tentunya ditanggulangi platform Android dengan adanya Android application

sandbox yang mampu untuk melakukan secara otomatis static dan dynamic

analysis untuk mendeteksi aplikasi Android yang mencurigakan, sehingga

mendapatkan malware protection.

42

2.12 Eclipse

Menurut Steinberg et. al. (2008), Eclipse adalah sebuah open source

software yang gunanya menyediakan tool platform yang sangat terintegrasi.

Dalam penggunaannya Eclipse meliputi core project dimana yang berisi

generic framework untuk tool integration dan sebuah Java development

environment. Proyek pada Eclipse terimplementasikan pada Java dan dapat

dijalankan pada beberapa sistem operasi meliputi Windows, Mac OSX dan

Linux.

Menurut Steinberg et. al. (2008), proyek Eclipse mendukung

pengembangan dari sebuah platform atau framework untuk

pengimplementasian dari Integrated Development Environment (IDE) dan

aplikasi lainnya. Meskipun framework dari Eclipse diimplementasikan pada

Java tidak menutup kemungkinan pengembangan juga dilakukan pada bahasa

pemograman lainnya seperti C++, XML dan sebagainya.

2.13 Hypertext Markup Language (HTML)

Menurut K.Williams & C.Sawyer (2011:68) Hypertext Markup Language

(HTML) merupakan sekumpulan instruksi-instruksi khusus (disebut “tags” atau

“markups”) yang digunakan untuk menentukan struktur dokumen , bentuk dan

link-link untuk menuju ke dokumen multimedia lain pada web. Extensible

Hypertext Markup Language (XHTML) merupakan penerus dan juga versi

HTML pada saat ini. Karena World Wide Web pada saat ini perlu disampaikan

ke berbagai perangkat devices, maka dari itu HTML sangat penting untuk

dipelajari.

43

Menurut T.N.Sharma, Bhardwaj, & Bhardwaj (2012) dalam jurnal yang

berjudul “Differences between HTML and HTML 5” menjelaskan bahwa

HTML merupakan markup language untuk web pages yang di ciptakan oleh

Tim Berners-Lee dari World Wide Web consortium (W3C) . Seiring dengan

perkembangannya muncul HTML5 yang merupakan revisi ke lima dari HTML

sebelumnya yang jauh lebih baik tentunya.

Beberapa keuntungan yang dimiliki HTML5, yakni fitur baru based on

HTML, CSS, DOM, dan JavaScript, mengurangi ketergantungan untuk external

plugins (seperti Flash), fitur canvas untuk 2D drawing, audio dan video untuk

media playback, penanganan error yang lebih baik, lebih banyak markup untuk

menggantikan scripting, dan lain-lain.

Tabel 2.5 Tabel Penjelasan Tentang Perbandingan Antara

HTML dan HTML5

HTML HTML5

DOCTYPEnya lebih panjang dalam

penulisannya di HTML versi

sebelum HTML5 (HTML4) based on

SGML-based

Example:

<!DOCTYPE HTML PUBLIC "-

//W3C//DTD HTML

4.01//EN"

DOCTYPEnya lebih sederhana

dalam penulisannya di HTML5

Example :

<!DOCTYPE html>

44

"http://www.w3.org/TR/html4/strict.

dtd”>

Audio dan Video bukan merupakan

bagian dari spesifikasi HTML4

Audio dan Video merupakan bagian

dari spesifikasi HTML5

Vector Graphics dimungkinkan

untuk teknologi seperti :

VML, Silverlight, Flash

Vector Graphics merupakan

bagian utama dari HTML5 seperti :

SVG dan canvas

Hampir tidak mungkin dalam

HTML4 untuk mendapatkan

geolocation dari user browsing any

website, terutama berasal dari mobile

devices

JS GeoLocation API in HTML5

mendukung mendapatkan

geolocation dari user browsing any

website

Browse cache digunakan untuk

temporary storage

Application cache, web SQL

database, dan web storage is

available sebagai client side

storage. Accessible using

JavaScript interface in HTML5

compliant browsers.

Web sockets tidak tersedia. Biasanya

mekanismenya menggunakan long

polling dan streaming

Full duplex communication

channels dapat dibangun dengan

server menggunakan web sockets.

Tidak memperbolehkan JavaScript

untuk run di browser

memperbolehkan JavaScript untuk

run di browser, yakni di

45

2.14 Web Server

Menurut A.Hoffer, B.Prescott, & Topi (2009:469), web server digunakan

untuk proses permintaan dari client dan mengembalikan halaman-halaman

HTML kepada client.

2.15 Web Service

Menurut A.Hoffer, B.Prescott, & Topi (2009:720), web service adalah

seperangkat standar yang mendefinisikan protokol untuk komunikasi otomatis

antara program software melalui web.

Menurut L.Whitten & D.Bentley (2007, p24), web service adalah web-

based program yang dapat digunakan kembali (reusable) dan dapat dipanggil

dari program internet.

Hamad, Saad, & Abed (2010) dalam jurnal berjudul “Performance

Evaluation of RESTful Web Services” mengatakan bahwa web service

merupakan programming method yang digunakan untuk berbagi data antara

aplikasi perangkat lunak yang berbeda, selain itu digunakan untuk cara

standard mendistribusikan services di internet.

background

Bekerja atau supporting dengan

browsers yang lama

Supporting browsers seperti

Firefox, Mozilla, Opera,

Chrome, Safari ,dan lain-lain

46

2.16 RESTful Web Service

REST merupakan seperangkat prinsip arsitektur yang diperkenalkan pada

tahun 2000 oleh Roy Fielding dan digunakan untuk merancang web service.

REST telah muncul dalam beberapa tahun sebagai model layanan web service

dominan dan memiliki dampak besar dalam konsep web service, yang mana

sebagian besar pengguna konsep SOAP dan WSDL-based interface design

telah beralih menggunakan REST dikarenakan kemudahan dalam penggunaan

dari pada konsep yang lain.

Ada empat prinsip dasar yang digunakan oleh RESTful Web Service:

a. menggunakan HTTP methods explicitly.

b. be stateless.

c. expose directory structure-like URIs.

d. transfer XML, JavaScript Object Notation (JSON), or both

(http://www.ibm.com/developerworks/webservices/library/ws-restful/)

Hamad, Saad, & Abed (2010) dalam jurnal berjudul “Performance

Evaluation of RESTful Web Services” menyatakan bahwa RESTful Web

Services adalah suatu arsitektur aplikasi perangkat lunak berbasis client-server

yang lebih baik dari pendahulunya Simple Object Access Protocol (SOAP). Hal

ini dikarenakan SOAP memiliki kekurangan seperti: encoding and decoding of

verbose XML-based SOAP sangat mengkonsumsi sumber daya, oleh karena itu

web service participants seperti mobile clients memiliki dampak performa yang

buruk dan lambat, hal ini juga tidak lepas dari kecepatan prosesor yang

dimiliki , lamanya hidup baterai, dan lambatnya koneksi oleh suatu mobile

47

devices yang tidak mendukung. Hal itu dibuktikan dari hasil percobaan yang

dilakukan oleh mereka yang membandingkan antara SOAP dan RESTful,

didapatkan hasil bahwa

Tabel 2.6 Tabel Uji Coba SOAP dan Restful

Sumber : Performance Evaluation of RESTful Web Services, Hamad, Saad, & Abed

(2010)

Less Message size and response time yang lebih kecil dari SOAP

membuktikan bahwa RESTful memiliki konsumsi power yang rendah dan

layanan web service yang cepat, sehingga RESTful lebih cocok diterapkan

dalam mobile devices saat ini.

48

2.17 JavaScript

Menurut C.Meloni (2012:66), JavaScript pada mulanya bernama Live

Script yang dikembangkan oleh NetScape Communication Corporation, di

mana JavaScript bahasa web scripting pertama yang di-support oleh browser.

JavaScript dapat melakukan beberapa hal seperti sebagai berikut :

a. Menampilkan pesan ke pengguna sebagai bagian dari suatu halaman

web, dalam bentuk line browser atau alert boxes.

b. Memvalidasi isi pada suatu form dan juga membuat perhitungan

kalkulasi

c. Adanya animasi gambar atau membuat gambar yang berubah ketika

memindahkan mouse melewati gambar tersebut.

d. Membuat iklan banner yang berinteraksi dengan pengguna, dari pada

tampilan grafik sederhana.

e. Mendeteksi browser atau fitur yang digunakan dan menunjukkan

fungsi tingkat lanjut hanya pada browsers yang mendukung

JavaScript.

f. Mendeteksi plug-ins yang di-install dan notify kepada user jika plug-in

diperlukan.

g. Memodifikasi seluruh atau sebagian halaman web tanpa user perlu me-

reload halaman web.

h. Menampilkan atau berinteraksi dengan data yang di dapatkan dari

remote server

49

2.17.1 JQuery

JQuery merupakan library JavaScript yang singkat dan cepat yang

menyederhanakan HTML document traversing, event handling,

animating, dan interaksi Ajax untuk pengembangan web yang cepat.

JQuery di desain untuk mengubah cara dalam menulis JavaScript.

(http://jquery.com)

2.18 JavaScript Object Notation (JSON)

JSON merupakan format pertukaran data yang ringan, mudah dibaca, dan

ditulis oleh manusia, serta mudah diterjemahkan dan dibuat (generate) oleh

komputer. Format ini dibuat berdasarkan bagian dari bahasa pemograman

JavaScript, standar ECMA-262 edisi ke-3 - desember 1999. JSON merupakan

format teks yang tidak bergantung pada bahasa pemograman apapun karena

menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C

termasuk C, C++, C#, Java, JavaScript, Perl, Python dll. Oleh karena sifat-sifat

tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data.

(http://www.json.org/json-id.html)

50

2.19 PHP Hypertext Preprocessor (PHP)

PHP telah menjadi server-side scripting languages yang populer untuk

membuat halaman web dinamis sejak diperkenalkan oleh Rasmus Lerdorf pada

tahun 1995. PHP melewati 4 kali perubahan besar dalam penulisan untuk

menjadi lebih luas dan lebih matang seperti yang kita lihat saat ini.

Versi utama PHP yaitu PHP 5. Versi PHP 5 merupakan penulisan ulang

yang sudah lengkap dan juga didasari oleh Zend engine 2 dan merupakan

perkembangan utama dari bahasa PHP

PHP merupakan project open source yang menggunakan kode PHP,

mengubah kode PHP dan mendistribusi ulang kode PHP tanpa dikenakan biaya,

P.J.Deitel & H.M.Deitel (2008:906)

2.19.1 Code Igniter

Menurut Griffiths (2010:7), Code Igniter merupakan framework

open source aplikasi web untuk bahasa PHP. CodeIgniter menggunakan

Model View Controller (MVC) sebagai pola desain, di mana merupakan

cara untuk mengkoneksikan aplikasi ke dalam tiga bagian, yaitu :

a. Models, yaitu database abstraction layer.

b. Views, yaitu the front end template files.

c. Controller, yaitu businees logic yang ada pada aplikasi.

Code Igniter menyediakan banyak libraries yang sangat berguna

dan ada pula kumpulan fungsi-fungsi yang dapat membantu dalam

membangun aplikasi sehingga dapat lebih fokus dalam bagian kecil pada

51

aplikasi daripada harus menjelajahi seluruh bagian proyek seperti

database query dan parsing data.

CodeIgniter juga sudah mengimplementasikan Active Record

Patern, dimana membuat penulisan query SQL yang kompleks menjadi

lebih mudah dan membuat aplikasi menjadi lebih mudah dibaca. Active

Record juga mempermudah dalam penukaran driver database.

CodeIgniter juga ekstensif dalam menggunakan singleton design

pattern, dimana merupakan cara untuk meng-load class jika class-nya

ingin dipanggil dalam beberapa kali. Ini sangat berguna dalam

mengkoneksikan database jika hanya ingin satu koneksi setiap class

digunakan.

2.20 Worklight IBM

IBM worklight menyediakan platform aplikasi yang terbuka,

komprehensif, dan canggih untuk mobile seperti: smartphone dan tablet.

Kemudian, worklight membantu organisasi untuk lebih efisien

mengembangkan, menghubungkan, menjalankan dan mengelola aplikasi karena

dapat diporting ke beberapa target application seperti android, apple,

blackberry, dan lain-lain.

IBM Worklight adalah bagian dari IBM Mobile Foundation family of

products yang memberikan unsur-unsur penting yang dibutuhkan untuk

pengembangan mobile lengkap, deployment, dan manajemen dalam bisnis.

(www.ibm.com/software/mobile-solutions/worklight/)

52

2.21 MySQL

Menurut P.J.Deitel & H.M.Deitel (2008:894), pada tahun 1994, TCX, a

Swedish consulting firm membutuhkan cara cepat dan flexibel untuk mengakses

tabel yang dibuatnya. Dikarenakan tidak dapat menemukan server database

yang bisa menyelesaikan tugas yang diperlukan, Michael Widenius,

pengembang program di TCX memutuskan untuk membuat server database

sendiri. Produk yang dihasikannya adalah MySQL. MySQL adalah open source

softwere product yang memiliki beberapa manfaat:

a. Skalabilitas

MySQL dapat ditanamkan dalam dalam suatu aplikasi ataupun

digunakan dalam skala besar seperti datawarehouse sekalipun.

b. Performance

MySQL dapat mengoptimalkan kinerja kerja berdasarkan tujuan

database pada suatu aplikasi yang kita buat.

c. Mendukung banyak bahasa pemograman

MySQL misalnya dapat diakses pada bahasa pemograman

PHP,Ruby on Rails, and Python.

d. MySQL diimplementasikan sedemikian rupa, sehingga dapat berguna

untuk windows, mac OS X, Linux, dan UNIX

e. Dapat menangani database yang besar misalnya puluhan ribu table

dengan jutaan baris.

53

2.22 Google Books

Pada tahun 1996, pendiri Google Sergey Brin dan Larry Page adalah

mahasiswa lulusan ilmu komputer yang bekerja pada sebuah proyek penelitian

yang didukung oleh Proyek Stanford Digital Library Technologies. Tujuan

mereka adalah untuk membuat perpustakaan digital bekerja, dan ide besar

mereka adalah sebagai berikut: dalam dunia masa depan di mana koleksi besar

buku yang didigitalkan, orang akan menggunakan "crawler web" untuk

mengindeks isi buku dan menganalisis hubungan antara mereka , menentukan

relevansi buku apapun dan kegunaan dengan melacak jumlah dan kualitas

kutipan dari buku-buku lainnya.

Crawler disebut sebagai BackRub, dan itu adalah sentuhan modern pada

analisis kutipan tradisional yang menginspirasi algoritma PageRank Google

yang membuat Google menjadi mesin web browser yang baik.

Google Books sendiri yang diciptakan oleh Google adalah program

pemasaran buku, bukan merupakan perpustakan online dari Google, dengan

demikian isi semua dari sebuah buku tidak akan ditampilkan, kecuali mendapat

persetujuan dari pemilik hak cipta itu sendiri, maka fungsi copy, save, dan print

pun dinonaktifkan.

(http://books.google.com/googlebooks/history.html)