library.binus.ac.idlibrary.binus.ac.id/ecolls/ethesisdoc/bab2doc/2011-2... · web viewlangkah...

45
BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Object Oriented Programming Object oriented programming adalah sebuah metode pemrograman dimana pengembang aplikasi tidak hanya mendefinisikan variabel yang berisi state dari sebuah struktur data, tetapi juga mendefinisikan fungsi untuk menunjukkan behavior yang diaplikasikan pada struktur data. Dalam hal ini, struktur data merupakan objek. Suatu objek dapat saling berkomunikasi satu sama lain dengan menggunakan fungsi yang ada di dalamnya tanpa perlu mengetahui internal state masing-masing objek (data encapsulation) (Webopedia, n.d). Salah satu keuntungan dari object oriented programming dibandingkan procedural programming adalah memungkinkan pengembang aplikasi untuk 8

Upload: dangbao

Post on 29-Apr-2018

221 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

BAB 2

LANDASAN TEORI

2.1 Teori Umum

2.1.1 Object Oriented Programming

Object oriented programming adalah sebuah metode

pemrograman dimana pengembang aplikasi tidak hanya mendefinisikan

variabel yang berisi state dari sebuah struktur data, tetapi juga

mendefinisikan fungsi untuk menunjukkan behavior yang diaplikasikan

pada struktur data. Dalam hal ini, struktur data merupakan objek. Suatu

objek dapat saling berkomunikasi satu sama lain dengan menggunakan

fungsi yang ada di dalamnya tanpa perlu mengetahui internal state

masing-masing objek (data encapsulation) (Webopedia, n.d).

Salah satu keuntungan dari object oriented programming

dibandingkan procedural programming adalah memungkinkan

pengembang aplikasi untuk membuat fungsi yang tidak perlu diubah

ketika sebuah objek dengan tipe berbeda ditambahkan. Seorang

pengembang aplikasi hanya perlu membuat objek baru yang mewarisi

beberapa fungsi atau tipe data dari objek yang sudah ada (inheritance).

Hal ini membuat object oriented programming mudah dalam

pengembangannya (Webopedia, n.d).

8

Page 2: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

9

Menurut Bennett, McRobb, dan Farmer (2006), dalam bukunya

“Object-Oriented System Analysis And Design Using UML”, terdapat

beberapa konsep dalam object oriented programming, yaitu :

Objek

Objek terdiri dari state dan behavior. Sebuah objek menyimpan

state pada variabel dan menunjukkan behavior melalui fungsi.

Fungsi bertugas mengubah internal state dan melayani

komunikasi antara satu objek dengan objek lainnya (Oracle, n.d).

Class

Class adalah sekumpulan objek yang memiliki state dan behavior

yang sama.

Instance

Instance adalah objek tunggal yang memiliki nilai state yang

secara keseluruhan berbeda dengan objek lain.

Generalisasi

Generalisasi adalah konsep yang mengelompokkan state dan

behavior yang sama dari beberapa class menjadi class tersendiri.

Berikut adalah ciri-ciri dari generalisasi :

Page 3: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

10

1. Inheritance

Mekanisme untuk mengimplementasikan generalisasi dalam

bahasa pemrograman berorientasi objek. Class yang memiliki

state dan behavior dari hasil pengelompokkan disebut

superclass sedangkan class yang memiliki state dan behavior

yang unik karena pengelompokkan disebut subclass.

2. Operasi transitif

Operasi yang menurunkan state dan behavior dari superclass

ke subclass.

3. Disjoint nature

Aspek dimana class harus memiliki state dan behaviour yang

unik dari class lain yang satu level.

Message passing

Message passing adalah komunikasi yang dilakukan objek untuk

meminta informasi tertentu dari objek lain dengan menggunakan

fungsi dari objek lain.

Page 4: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

11

2.1.2 Unified Modeling Language ( UML )

Unified modeling language adalah bahasa yang digunakan untuk

memodelkan sebuah sistem sehingga dapat mengambil keputusan dan

memahami tentang sistem yang harus dibangun (Hermawan, 2004).

Menurut Whitten dan Bentley (2007), UML menawarkan

sembilan diagram yang dikelompokkan ke dalam lima perspektif yang

berbeda untuk memodelkan sebuah sistem. Lima perspektif tersebut

adalah :

Use-Case Model Diagrams

Diagram yang ada dalam kelompok ini adalah use-case diagram

( diagram yang menggambarkan fungsi sistem dari sudut pandang

pengguna ).

Static Structure Diagrams

Diagram yang ada dalam kelompok ini adalah class diagram

( diagram yang menggambarkan struktur objek dalam sistem )

dan object diagram ( diagram yang menggambarkan objek

instance yang aktual ).

Interaction Diagrams

Interaction diagram memodelkan sebuah interaksi yang terdiri

dari sekumpulan objek, hubungannya, dan pesan yang dikirimkan

Page 5: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

12

diantara objek tersebut. Diagram yang ada dalam kelompok ini

adalah sequence diagram ( diagram yang menggambarkan

interaksi antar objek dimana fokus pada timing dari pesan ) dan

communication diagram ( diagram yang menggambarkan

interaksi antara objek dengan network format )

State Diagrams

Diagram yang ada dalam kelompok ini adalah statechart diagram

( diagram yang mengilustrasikan daur hidup objek ) dan activity

diagram ( diagram yang menggambarkan aliran dari sebuah use

case).

Implementation Diagrams

Diagram yang ada dalam kelompok ini adalah component

diagram ( diagram yang menggambarkan bagaimana code

program dipecah menjadi komponen-kompnone dan

ketergantungan diantara komponen tersebut) dan deployment

diagram ( diagram yang menggambarkan arsitektur secara fisik

dari hardware dan software dalam sistem )

Page 6: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

13

2.1.3 Use Case Diagram

Use case adalah deskripsi fungsi sistem dari sudut pandang

pengguna. Use case diagram digunakan untuk menunjukkan fungsi yang

sistem akan sediakan dan menunjukkan pengguna mana yang akan

berkomunikasi dengan sistem. Use case diagram ini dikembangkan oleh

Jacobson et al. (1992), dan judul buku dimana use case diagram ini

ditampilkan adalah A Use Case Driven Approach (Bennett, McRobb, dan

Farmer, 2006).

Menurut Bennett, McRobb, dan Farmer (2006), use case diagram

menunjukkan tiga aspek dalam sistem yaitu:

Actors

Actors mewakili peran yang dimiliki orang, sistem lain, atau

device ketika berkomunikasi dengan use cases tertentu dalam

sistem dimana satu actor dapat mewakili beberapa orang atau

pekerjaan.

Use cases

Sebuah use case menggambarkan sebuah fungsi yang dilakukan

oleh sistem untuk mencapai tujuan pengguna dimana

digambarkan dengan bentuk eclipse.

Batasan sistem atau subsistem

Batasan yang mengelilingi fungsi-fungsi dalam sistem atau

subsistem dimana berbentuk persegi panjang.

Page 7: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

14

Gambar 2.1 Notasi Use Case Diagram

( Sumber : Bennett, McRobb, dan Farmer, 2006, p146 )

2.1.4 Class Diagram

Class diagram adalah sebuah diagram yang menggambarkan

objek-objek dari sistem dan hubungan antara objek tersebut (Bennett,

McRobb, dan Farmer, 2006).

Menurut Bennett, McRobb, dan Farmer (2006), class diagram

memiliki istilah-istilah penting yang perlu diketahui, yaitu :

Attributes

Attributes adalah data yang menampilkan karakteristik utama dari

sebuah class. Oleh karena itu, setiap objek dari class memiliki

attribute yang dimiliki oleh class tersebut.

Page 8: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

15

Gambar 2.2 Class Diagram Dengan Attributes

( Sumber : Bennett, McRobb, dan Farmer, 2006, p180 )

Association

Sebuah association adalah hubungan antara dua class yang

berbeda dimana ditandai dengan nama hubungan, garis lurus yang

menghubungkan kedua class tersebut, dan tanda panah yang

membantu pemahaman ketika melihat class diagram.

Gambar 2.3 Class Diagram Dengan Association

( Sumber : Bennett, McRobb, dan Farmer, 2006, p184 )

Page 9: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

16

Multiplicity

Multiplicity adalah istilah yang digunakan untuk menerangkan

batasan pada jumlah objek yang dapat berpartisipasi. Multiplicity

merefleksikan aturan-aturan suatu perusahaan yang merupakan

batasan pada cara aktivitas bisnis berjalan. Notasi multiplicity

dapat berupa kisaran nilai seperti 0..*, 0..3, 1..5, 2..10 atau berupa

nilai tunggal, seperti 1, 3, 5, 19.

Gambar 2.4 Class Diagram Dengan Multiplicity

( Sumber : Bennett, McRobb, dan Farmer, 2006, p185 )

Page 10: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

17

Operations

Operations adalah behavior yang dapat dilakukan oleh objek atau

dilakukan pada objek. Behavior tersebut diimplementasikan

melalui fungsi. Dalam komunikasi dengan objek lain, suatu objek

hanya perlu memanggil fungsi dari objek tersebut tanpa perlu

mengetahui attribute yang ada.

Gambar 2.5 Class Diagram Dengan Attributes dan Operations

( Sumber : Bennett, McRobb, dan Farmer, 2006, p187 )

Page 11: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

18

2.1.5 Sequence Diagram

Sequence diagram adalah salah satu dari beberapa macam UML

interaction diagram. Sebuah sequence diagram menunjukkan sebuah

interaksi antara objek-objek yang disusun dalam urutan waktu.

Kegunaan dari sequence diagram adalah menunjukkan interaksi objek

secara rinci yang terjadi untuk satu use case (Bennett, McRobb, dan

Farmer, 2006).

Dalam sequence diagram, dimensi vertikal menunjukkan waktu

dan semua objek yang ikut terlibat dalam interaksi tersebar secara

horizontal pada diagram. Waktu secara normal berjalan ke bawah.

Setiap objek dalam sebuah sequence diagram ditunjukkan oleh sebuah

lifeline. Lifeline adalah sebuah garis vertikal putus-putus dengan simbol

objek pada bagian paling atas. Sebuah pesan ditunjukkan dengan garis

panah horizontal dari satu lifeline ke lifeline yang lain dan diberi label

dengan nama message. Setiap nama message secara opsional didahului

oleh sebuah nomor urut yang menunjukkan urutan dimana message

dikirim, tetapi ini biasanya tidak perlu pada sebuah sequence diagram

karena urutan message telah disampaikan oleh posisi relatif mereka

selama sumbu waktu (Bennett, McRobb, dan Farmer, 2006).

Page 12: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

19

2.1.6 Activity Diagram

Activity diagram dapat digunakan untuk memodelkan aspek-

aspek yang berbeda pada sebuah sistem. Activity diagram dapat

digunakan untuk memodelkan aktivitas bisnis pada sistem yang ada,

dapat juga digunakan pada tahap awal dalam system development

lifecycle, yaitu dengan memodelkan sebuah fungsi sistem yang

ditunjukkan oleh sebuah use case, menggunakan aliran objek untuk

menunjukkan objek mana yang terlibat dalam sebuah use case (Bennett,

McRobb, dan Farmer, 2006).

Activity diagram terdiri atas sekumpulan aksi yang dihubungkan

bersama oleh aliran dari satu aktivitas ke aktivitas lainnya. Setiap aksi

ditunjukkan sebagai persegi dengan sudut yang melingkar. Nama dari

aksi ditulis di dalam simbol dua dimensi ini. Hal ini menjadi penuh arti

dan merangkum aksi tersebut (Bennett, McRobb, dan Farmer, 2006).

Selanjutnya, jika ingin mendeskripsikan beberapa pilihan yang

dapat diambil, digunakan explicit decision node, yang ditunjukkan

dengan ikon berbentuk diamond. Setiap aliran alternatif tersebut diberi

label dengan sebuah guard condition. Guard condition ditunjukkan di

dalam simbol bracket (Bennett, McRobb, dan Farmer, 2006).

Page 13: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

20

2.1.7 Deployment Diagram

Deployment diagram adalah tipe implementation diagram yang

mendeskripsikan arsitektur fisik dari perangkat keras dan perangkat lunak

dalam sistem. Diagram ini menggambarkan komponen perangkat lunak,

processor, dan device yang membentuk arsitektur sistem. Setiap kotak

yang ada pada diagram menggambarkan satu buah perangkat keras.

Perangkat keras dapat berupa PC, mainframe, printer, atau smartphone.

Perangkat lunak yang terdapat dalam kotak ditandai dengan simbol

komponen. Garis yang menghubungi kotak mengindikasikan sebuah

komunikasi antar device. Komunikasi tersebut ditandai dengan tipe

protokol komunikasi yang digunakan (Whitten dan Bentley, 2007).

2.1.8 Metode Pengembangan Perangkat Lunak ( Prototyping )

Prototyping merupakan salah satu metode pengembangan

perangkat lunak yang bersifat iteratif. Metode ini cocok digunakan pada

saat stakeholder mendefinisikan beberapa tujuan umum dari perangkat

lunak, tetapi tidak mendefinisikan kebutuhan rinci untuk fungsi dan

fiturnya. Metode ini dimulai dengan komunikasi. Pengembang aplikasi

bertemu dengan stakeholder untuk mendefinisikan keseluruhan tujuan

dari perangkat lunak dan mendefinisikan kebutuhan yang diketahui.

Langkah selanjutnya adalah membuat perencanaan secara cepat

dilanjutkan pemodelan yang berfokus pada aspek dari perangkat yang

Page 14: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

21

tampak pada stakeholder, contohnya adalah rancangan antar muka.

Setelah selesai pemodelan, pembuatan prototype dilakukan, dipaparkan,

dan dievaluasi oleh stakeholder untuk mengetahui kebutuhan selanjutnya.

Pengulangan terjadi sampai prototype memuaskan kebutuhan berbagai

stakeholder dan pada saat bersamaan memungkinkan pengembang

aplikasi untuk memahami lebih baik apa yang perlu dilakukan (Pressman,

2010).

Gambar 2.6 Paradigma Prototyping

( Sumber : Pressman, 2010, p43 )

Page 15: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

22

2.1.9 Black-Box Testing

Black-box testing merupakan pengujian yang berpusat pada

kebutuhan fungsional perangkat lunak dimana memungkinkan untuk

memperoleh sekumpulan kondisi input yang secara penuh memeriksa

fungsional dari sebuah aplikasi. Black-box testing berusaha menemukan

kesalahan-kesalahan seperti kesalahan fungsi dan kesalahan tampilan

aplikasi. Black-box testing dapat digunakan untuk menguji aplikasi

konvensional dan aplikasi yang berorientasi objek (Pressman, 2010).

2.1.10 ERD

Menurut Whitten dan Bentley (2007), Entity Relationship

Diagram (ERD) adalah sebuah data model yang menggunakan beberapa

notasi untuk menggambarkan data dengan istilah entities dan

relationships yang ada. Beberapa konsep dasar dari ERD adalah :

Entities

Sebuah entity merupakan sebuah class untuk menyimpan data. Class

dapat berupa orang, tempat, objek, kejadian, atau konsep.

Attributes

Attributes merupakan data yang akan disimpan pada entity dimana

data tersebut merupakan karakteristik dari entity. Contohnya entity

File memiliki attribute nama file dan ukuran file.

Page 16: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

23

Relationships

Relationship adalah hubungan antara satu atau lebih entities.

Hubungan tersebut bisa berupa exactly one, zero or one, one or more,

zero;one; or more, dan more than one.

Generalization

Generalization adalah konsep yang mengelompokkan atribute pada

entity yang berbeda menjadi suatu entity baru berdasarkan persamaan

karakteristik yang dimiliki atribute.

2.1.11 DBMS

Menurut Connolly dan Begg (2002), Database Management

System (DBMS) merupakan sistem perangkat lunak yang memungkinkan

pengguna untuk mendefinisikan, membuat, memelihara, dan mengatur

akses ke database. DBMS ini menyediakan fasilitas untuk

mendefinisikan database melalui DDL (Data Definition Language) dan

menyediakan fasilitas untuk melakukan insert, update, delete, select

melalui DML (Data Manipulation Language). Contoh dari DBMS

antara lain :

MySQL

MySQL merupakan DBMS yang bersifat open source dimana

pengguna dapat melakukan modifikasi pada kodenya yang berorientasi

pada performa dan merupakan DBMS yang mendukung beberapa tipe

Page 17: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

24

table ( storage engine ). Tipe table yang digunakan secara default

adalah MyISAM yang memiliki kelebihan akses data yang cepat tetapi

tidak mendukung fitur foreign key. Jika pengguna ingin ada dukungan

foreign key pada table , pengguna dapat menggunakan tipe table

InnoDB (Kofler, 2005).

SQLite

SQLite merupakan embedded DBMS yang berbeda dengan DBMS

pada umumnya dimana DBMS ini tidak berjalan sendiri melainkan

berada di dalam aplikasi, seperti aplikasi yang dibuat pada sistem

operasi Android (Allen dan Owens, 2010). Letak database ini ada di

direktori “/data/data/your.app.package/databases/your-db-name”.

2.1.12 Web Service ( REST )

Web Service merupakan komponen perangkat lunak yang

dibangun berbasis web untuk komunikasi antar aplikasi yang berjalan

pada berbagai platform melalui intenet (Cobarzan, 2010). Menurut

Richards (2006), dalam merancang web service dengan desain

arsitektural Representational State Transfer (REST), diperlukan beberapa

komponen, yaitu :

Page 18: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

25

XML (Extensible Markup Language)

XML adalah sebuah standar untuk mendeskripsikan data di dalam

format yang terstruktur. Dalam istilah layman, XML mengizinkan

data ditandai dengan menggunakan nama deskriptif sehingga manusia

dan aplikasi dapat memahami arti dari keping-keping data yang

berbeda. Contoh dari XML adalah :

<people>

<name>a</name>

<age>20</age>

<people>

HTTP

HTTP adalah singkatan dari Hypertext Transfer Protocol yang

berfungsi sebagai protokol request-response pada model client-server.

Cara kerjanya adalah client mengirimkan sebuah pesan HTTP request

ke server dan server yang menyimpan sumber daya seperti PHP file

mengembalikan sebuah pesan HTTP response ke client. Sebuah

response berisi informasi status tentang request dan mungkin berisi

informasi lain yang diminta oleh client pada message body, contohnya

XML. Metode yang dimiliki HTTP untuk melakukan tugasnya antara

lain GET, HEAD, POST, PUT, dan DELETE.

Page 19: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

26

Tabel 2.1 Metode HTTP untuk REST

( Sumber : Richards, 2006, p636 )

URI

URI biasanya berupa sebuah URL yang merupakan resource identifier

dimana Web service berada.

MIME Type

Dikarenakan data yang dikirim ke client berupa format XML, text/xml

adalah MIME type yang digunakan.

2.1.13 SHA-1

SHA-1 adalah singkatan dari Secure Hash Algrorithm 1 yang

merupakan algoritma untuk mengenkripsi password yang disediakan oleh

PHP. Penggunaan algoritma ini sederhana dan efektif dimana

menghasilkan 40 digit angka heksadesimal yang tidak bisa dikembalikan.

Page 20: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

27

Selain itu sebagai langkah untuk berjaga-jaga, pengembang aplikasi

dapat menggabungkan random kata dengan password yang dimasukkan

sehingga walaupun password yang dimasukkan sama akan menghasilkan

40 digit angka heksadesimal yang berbeda. Contoh dari hasil enkripsi

sha-1 adalah : 2fd4e1c6 7a2d28fc ed849ee1 bb76e739 1b93eb12

(Powers, 2010).

2.1.14 Binary Prefix

Pada bulan Desember 1998, International Electrotechnical

Commission ( IEC ) mengesahkan nama dan simbol untuk binary prefix

yang digunakan dalam ruang lingkup pemrosesan data dan transmisi data.

Binary Prefix tersebut adalah :

Tabel 2.2 Prefixes for Binary Multiples

( Sumber : National Institute of Standards and Technology, n.d )

Page 21: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

28

2.1.15 SFTP

SFTP adalah singkatan dari Secure File Transfer Protocol yang

dibangun di atas SSH ( Secure Shell ) dan menyediakan pelapis

keamanan tambahan untuk perintah pertukaran file dan aliran data.

SFTP menggunakan protokol SSH yang ada untuk membuat dan

mengatur banyak perintah dan aliran data agar menjaga keamanan dari

pencurian informasi yang sensitif. SFTP ini dapat digunakan dimana

SSH diimplementasikan, baik di client maupun server (Tittel, 2007).

Untuk di client, aplikasi SFTP ada yang berbentuk konsol maupun grafis.

Contoh aplikasi SFTP adalah FileZilla ( sistem operasi Windows, Linux,

Macintosh) dan AndFTP ( sistem operasi Android ).

2.1.16 MIME Type

MIME merupakan singkatan dari Multipurpose Internet Mail

Extensions yang asalnya diperuntukan untuk e-mail server agar dapat

mendefinisikan dukungan terhadap berbagai tipe data yang berbeda.

Selanjutnya diperluas untuk definisi tipe data communication protocol

(HTTP), dan sekarang untuk sistem operasi Android agar dapat

mendefinisikan tipe datanya. Kesimpulannya adalah MIME telah

menjadi standar untuk menentukan tipe data dalam lingkungan komputasi

(Jackson, 2011). Contoh dari MIME antara lain :

File Type MIME Type

Page 22: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

29

jpg image/jpeg

gif image/gif

png image/png

mp3 audio/mpeg

3gp audio/3gpp

m4a audio/mp4a-latm

mp4 video/mp4

m4v video/x-m4v

pdf application/pdf

doc application/msword

xls application/vnd.ms-excel

ppt application/vnd.ms-powerpoint

docx application/vnd.openxmlformats-

officedocument.wordprocessingml.document

xlsx application/vnd.openxmlformats-

officedocument.spreadsheetml.sheet

pptx application/vnd.openxmlformats-

officedocument.presentationml.presentation

Tabel 2.3 MIME Types

(Sumber : NotePage, n.d; Microsoft, 2008)

Page 23: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

30

2.1.17 Email Password Recovery

Sebuah alamat email didaftarkan pada saat pembuatan id anggota

dan alamat email ini digunakan ketika seorang anggota kehilangan

password aplikasi. Alamat email ini digunakan untuk mengirimkan

password sementara atau URL untuk melakukan reset password. Cara

ini tergolong instan pada saat ini karena pengiriman email hampir

mendekati real-time dan banyak digunakan karena ongkos penerapan

yang rendah (Danezis, 2012).

Page 24: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

31

2.2. Teori Khusus

2.2.1 Android

Android merupakan sebuah platform open source dari Google

dan dimiliki oleh Open Handset Alliance dimana dirancang untuk

perangkat mobile sehingga rancangannya mempertimbangkan

keterbatasan perangkat dalam hal memori, kecepatan, dan sumber daya

listrik. Selain itu, Android merupakan sebuah platform yang

memisahkan hardware dari software yang berjalan pada hardware

tersebut. Hal ini mengizinkan banyak perangkat mobile dapat

menjalankan aplikasi yang sama dengan platform ini. Dimulai dari tahun

2005, Google membeli Android, Inc. Pada tahun 2007, Open Handset

Alliance mengumumkan Android memiliki open source code. Berselang

satu tahun setelah itu, Android SDK 1.0 diluncurkan dan HTC

mengeluarkan smartphone pertamanya yang berbasis Android dengan

nama G1 phone. Pada tahun berikutnya, versi baru dari platform ini

muncul dimulai dari Cupcake ( 1.5 ), Donut ( 1.6 ), dan Eclair ( 2.0

dan 2.1 ) dimana lebih dari 20 perangkat menggunakannya. Tahun

berikutnya lagi, yaitu tahun 2010, versi berikutnya muncul, yaitu Froyo

( 2.2 ) dan Android telah menjadi platform smartphone dengan tingkat

penjualan yang terbaik (Gargenta, 2011).

Page 25: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

32

Tabel 2.4 menggambarkan perkembangan versi yang lebih

lengkap dari platform Android.

Tabel 2.4 Perkembangan Versi Platform Android

(Sumber : Android developers, 2012)

Dengan perkembangan platform Android yang begitu cepat

sampai saat ini, pengembang aplikasi Android perlu memperhatikan API

level dari aplikasi yang dikembangkan. Hal ini bertujuan agar aplikasi

yang dibuat dapat berjalan pada perangkat yang ada pada saat ini

sebanyak mungkin. Pada tabel 2.4, terdapat distribusi versi dari

perangkat yang berbasis platform Android di sisi paling kanan. Untuk

Page 26: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

33

lebih jelasnya, terdapat pie chart berdasarkan tabel 2.4, yaitu sebagai

berikut :

Gambar 2.7 Distribusi Versi Platform Android

(Sumber : Android developers, 2012)

2.2.2 Teknik Menyentuh Layar Android

Menurut Gookin (2012), ada beberapa teknik dalam menyentuh

layar di Android, yaitu:

Touch

Teknik menyentuh layar yang paling sederhana. Teknik ini biasa

digunakan untuk membuka aplikasi atau melakukan trigger pada

button. Istilah lainnya adalah press atau tap.

Page 27: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

34

Double-tap

Teknik menyentuh layar pada lokasi yang sama sebanyak dua kali

secara cepat. Teknik ini digunakan untuk memperbesar atau

memperkecil gambar atau peta.

Long-press

Teknik ini dimulai dengan menyentuh pada bagian tertentu lalu

menahannya sementara. Teknik ini biasa digunakan untuk

memindahkan icon pada homescreen.

Swipe

Teknik ini dimulai dari menyentuh satu titik lalu digeser ke titik baru

tanpa melepas layar. Biasanya swipe dilakukan ke atas , bawah,

kanan, atau kiri dimana akan mengganti material yang ditampilkan

Pinch

Teknik ini melibatkan dua jari tangan dimana dimulai dari kedua jari

terpisah lalu didekatkan. Pinch digunakan untuk memperkecil.

Spread

Teknik ini dimulai dari kedua jari bersamaan dan kemudian

bentangkan kedua jari tersebut. Spread digunakan untuk

memperbesar.

Rotate

Teknik ini menggunakan kedua jari untuk memutar pada titik pusat

dari layar sentuh yang memiliki efek merotasi objek pada layar.

Page 28: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

35

2.2.3 Resolusi Layar Android

Beberapa resolusi layar yang ada pada Android SDK terdapat

pada tabel berikut :

Tabel 2.5 Resolusi Layar yang Didukung Android SDK

(Sumber : Android developers, n.d)

2.2.4 M-Assessment

M-assessment merupakan evaluasi pembelajaran dengan bantuan

mobile phone (Riad dan El-Ghareeb, 2008). Menurut Pachler, Pimmer,

Seipold (2010), m-assessment memungkinkan pengajar di universitas

untuk mengobservasi dan memandu pembelajaran individu peserta didik

dari jarak jauh dan memungkinkan peserta didik untuk berlatih pada

topik tertentu dari suatu mata pelajaran sesuai dengan kebutuhan.

M-assessment ini dapat dilakukan oleh peserta didik pada tiga tahap,

yaitu sebelum pembelajaran, selama proses pembelajaran, dan sesudah

Page 29: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

36

proses pembelajaran. Tahap-tahap m-assessment ini ditunjukkan pada

gambar 2.8

Gambar 2.8 Kategori Assessment

(Sumber : Dube dan Ma, 2010)

Menurut Dube dan Ma (2010), m-assessment yang dilakukan

sebelum proses pembelajaran untuk menentukan apa yang telah diketahui

oleh seorang peserta didik dinamakan diagnosa. M-assessment yang

dilakukan selama proses pembelajaran untuk memeriksa seberapa

banyak yang telah dipahami peserta didik dinamakan formative

Page 30: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

37

sedangkan m-assessment yang dilakukan setelah selesai proses

pembelajaran untuk mengetahui apakah tujuan pembelajaran telah

tercapai dinamakan summative.

2.2.5 Pertanyaan Terbuka dan Tertutup

Menurut Oei (2010), pertanyaan terbuka adalah pertanyaan yang

bersifat longgar dimana memberikan kebebasan peserta dalam

memberikan jawaban atas pertanyaan yang ada sedangkan pertanyaan

tertutup adalah pertanyaan yang diberikan pilihan kepada peserta untuk

menjawabnya. Dalam kuesioner, pertanyaan terbuka berfungsi untuk

mengumpulkan data kualitatif dan memungkinkan periset untuk

mendapatkan banyak ide atau pandangan sedangkan pertanyaan tertutup

berfungsi untuk mengumpulkan data kuantitatif dan memungkinkan

periset untuk mendapatkan jawaban yang dimaksud. Dalam kuis,

pertanyaan terbuka berfungsi untuk mengetahui pemahaman peserta

didik secara lebih mendalam tetapi tidak dapat dievaluasi secara otomatis

oleh aplikasi (essay) sedangkan pertanyaan tertutup berfungsi untuk

mengetahui pemahaman peserta didik lebih dangkal tetapi dapat

dievaluasi secara otomatis oleh aplikasi (multiple correct, multiple

choice, ordering, fill-in).

Page 31: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

38

2.2.6 Tipe Pertanyaan Kuis

Dalam sebuah kuis, penyedia pertanyaan dapat menampilkan

pertanyaan-pertanyaan yang dimiliki dalam beberapa tipe. Menurut Quia

(n.d), tipe tersebut dibagi menjadi 10, yaitu multiple choice, true-false,

pop-up, multiple correct, fill-in, initial answer, short answer, essay,

matching, dan ordering. Dalam skripsi ini, tipe yang digunakan hanya 3,

yaitu :

Multiple Correct

Pada tipe pertanyaan ini, peserta memilih satu atau lebih jawaban

yang benar. Contoh dari tipe ini adalah :

Gambar 2.9 Contoh Pertanyaan Tipe Multiple Correct

(Sumber : Quia, n.d)

Fill-in

Pada tipe pertanyaan ini, peserta mengisi bagian kosong dari

suatu kalimat atau pernyataan. Contoh dari tipe pertanyaan ini

adalah :

Page 32: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

39

Gambar 2.10 Contoh Pertanyaan Tipe Fill-in

(Sumber : Quia, n.d)

Ordering

Pada tipe pertanyaan ini, peserta mengurutkan daftar istilah atau

daftar pengerjaan sesuatu yang tidak terurut dengan benar.

Contoh dari tipe pertanyaan ini adalah :

Gambar 2.11 Contoh Pertanyaan Tipe Ordering

(Sumber : Quia, n.d)

Page 33: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2011-2... · Web viewLangkah selanjutnya adalah membuat perencanaan secara cepat dilanjutkan pemodelan yang berfokus

40

2.2.7 Adaptive Quiz

Menurut Bintoro dan Didik (2008), adaptive quiz merupakan kuis

dimana soal-soalnya akan menyesuaikan dengan kemampuan peserta

yang mengerjakan. Soal berikutnya akan menjadi lebih mudah atau

sederhana jika peserta menjawab salah pada soal saat ini dan akan

berlaku sebaliknya. Oleh karena itu, soal atau pertanyaan yang ada perlu

dibuat tingkatan atau ranking. Tingkatan tersebut bisa ditentukan sejak

awal pembuatan soal atau ditentukan berdasarkan jawaban peserta

terhadap soal tersebut.