library.binus.ac.idlibrary.binus.ac.id/ecolls/ethesisdoc/bab2doc/2012-1... · web viewlapisan ini...

64
BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Pengertian Sistem Sistem didefinisikan sebagai suatu jaringan kerja dari prosedur – prosedur yang saling berhubungan, berkumpul bersama–sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu aturan tertentu (Kusrini & Koniyo, 2007, p. 5) 2.1.2 Teori Internet 2.1.2.1 Pengertian Internet Menurut Laudon (2012, p. 21), Internet adalah suatu jaringan global yang menggunakan 8

Upload: others

Post on 08-Nov-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

BAB 2

LANDASAN TEORI

2.1 Teori Umum

2.1.1 Pengertian Sistem

Sistem didefinisikan sebagai suatu jaringan kerja dari prosedur – prosedur

yang saling berhubungan, berkumpul bersama–sama untuk melakukan suatu

kegiatan atau untuk menyelesaikan suatu aturan tertentu (Kusrini & Koniyo,

2007, p. 5)

2.1.2 Teori Internet

2.1.2.1 Pengertian Internet

Menurut Laudon (2012, p. 21), Internet adalah suatu jaringan

global yang menggunakan standar yang umum unutk menghubungkan

jutaan jaringan yang berbeda beda.

8

Page 2: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

9

2.1.2.2 Pengertian World Wide Web

Menurut Laudon (2012, p. 21), WWW (world wide web)

merupakan layanan yang disediakan oleh internet dengan standar yang

sudah disepakati secara universal untuk menyimpan, mencari,

memformat, dan menampilkan informasi menggunakan arsitektur

client/server.

2.1.2.3 Sejarah TCP/IP

Menurut Javvin Technologies (2004, p. 11), TCP/IP protocol

merupakan dasar teknikal dari internet. Pengembangan TCP/IP dimulai

dengan nama Project DOD. Saat ini kebanyakan protocol dikembangkan

oleh Internet Engineering Task Force (IETF) yang berada dibawah

Internet Architecture Board (IAB), sebuah organisasi yang disponsori

oleh pemerintah Amerika Serikat. Fungsi utama dari TCP/IP adalah

melakukan pengalamatan (addressing) dan rute (routing) (IP/IPv6 dalam

layer jaringan) dan transportasi kontrol (TCP, UDP dalam layer

transport).

2.1.3 Teori Rekayasa Piranti Lunak (RPL)

2.1.3.1 Definisi RPL

Menurut Pressman (2010, p. 4), piranti lunak (software) adalah:

Page 3: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

10

a. Instruksi (program-program komputer) yang ketika dieksekusi

akan memberikan fitur, fungsi, dan performa sesuai yang

diharapkan.

b. Kumpulan struktur data yang memungkinkan program untuk

memanipulasi informatasi, dan

c. Informasi yang bersifat deskriptif dalam bentuk hard copy

ataupun bentuk-bentuk virtual yang mendeskripsikan aplikasi dan

penggunaan program.

2.1.3.2 Karakteristik RPL

Secara garis besar, karakteristik perangkat lunak berbeda dengan

perangkat keras. Menurut Pressman (2010, p. 4), karakteristik dari

perangkat lunak adalah sebagai berikut:

1. Perangkat lunak dikembangkan atau direkayasa, tidak diproduksi

dalam pengertian klasik.

2. Perangkat lunak tidak “usang”.

3. Meskipun industri bergerak menuju konstruksi berbasis

komponen, sebagian besar perangkat lunak terus dibangun secara khusus.

Page 4: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

11

2.1.3.3 Lapisan RPL

Pressman (2010,p. 13) mendefinisikan rekayasa perangkat lunak

merupakan teknologi yang bertingkat atau berlapis. Lapisan/tingkatan

tersebut terbagi atas empat lapisan, yaitu:

1. Quality focus

Quality focus merupakan batu landasan yang menopang tools,

methods, dan process dalam RPL.

2. Process Model

Process Model merupakan fondasi dari RPL yang mendefinisikan

sebuah framework untuk sekumpulan key process area yang harus

dibangun demi keefektifan penyampaian teknologi pengembangan RPL.

3. Methods

Methods menerangkan secara teknis tentang bagaimana

membangun suatu perangkat lunak. Lapisan ini meliputi tugas-tugas yang

mencakup analisis kebutuhan (requirements analysis), model desain

(design modeling), pembuatan program (program construction),

pengujian (testing), dan pendukung (support).

Page 5: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

12

4. Tools

Tools menyediakan dukungan otomatis dan semi otomatis untuk

process model dan methods. 

2.1.3.4 V Model

Menurut Pressman (2010, pp. 39-40), V-model adalah variasi dari

representasi model waterfall. V-model menggambarkan kualitas

hubungan dari satu tindakan ke tindakan lain yang dihubungkan dengan

komunikasi, modeling dan aktifitas awal konstruksi.

Gambar 2.1 Software Engineering Layers

Page 6: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

13

Gambar 2.2 Ilustrasi V-model

V-model diawali dengan membuat requirement model yang

semakin disempurnakan menjadi lebih rinci dan teknikal di sisi kiri. Saat

kode sudah dihasilkan, selanjutnya melakukan serangkaian tes kualitas

tindakan jaminan (Quality Assurance Actions) yang memvalidasi masing

masing model. V-model menyediakan cara untuk memvisualisasikan

bagaimana verifikasi dan validasi tindakan yang diterapkan dalam

rekayasa software sebelumnya.

Page 7: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

14

2.1.4 UML (Unified Modifying Language)

Menurut Whitten & Bentley (2007, p. 371) UML adalah suatu

konvensi pemodelan yang digunakan untuik menspesifikasikan atau

mendeskripsikan sebuah sistem piranti lunak yang terkait dengan objek.

UML terdiri dari beberapa tipe diagram, yaitu:

a. Use-Case Diagram

Menurut Whitten & Bentley (2007, p. 246-250), use-case diagram

adalah diagram yang menggambarkan interaksi antara sistem dan

pengguna. Dengan kata lain, diagram ini mendeskripsikan siapa yang

akan menggunakan sistem itu dengan cara apa pengguna berinteraksi

dengan sistem.

1. Use case adalah urutan langkah-langkah yang secara tindakan

saling terkait, baik terotomatisasi maupun secara manual untuk

melengkapi suatu tugas bisnis tunggal.

Page 8: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

15

Gambar 2.3 Contoh Diagram Model Use-Case

2. Pelaku (Actor) adalah segala sesuatu yang perlu berinteraksi

dengan sistem untuk pertukaran informasi.

Gambar 2.4 Simbol Aktor

Page 9: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

16

3. Hubungan (Relationship) pada diagram use case digambarkan

sebagai sebuah garis antara dua simbol. Pemaknaan hubungan

berbeda-beda tergantung bagaimana garis tersebut digambar dan

tipe simbol apa yang digunakan untuk menghubungkan garis

tersebut. Beberapa tipe hubungan yang terdapat pada diagram use

case, yaitu sebagai berikut:

1) Gabungan (Association): hubungan antara pelaku dengan

use case, dimana terjadi interaksi di antara mereka.

Gambar 2.5 Contoh Hubungan Asosiasi

2) Extend: use case yang terdiri dari langkah yang diekstraksi

dari use case yang lebih kompleks untuk menyederhanakan

masalah orisinil dan karena itu memperluas fungsinya.

Page 10: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

17

Gambar 2.6 Contoh Hubungan Extension

3) Uses: satu atau lebih use case yang melakukan berbagai

langkah fungsionalitas yang identik.

Gambar 2.7 Contoh Hubungan Uses

Page 11: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

18

4) Depends On: use case mana yang memiliki

ketergantungan pada use case lain untuk menetapkan rangkaian

use case yang perlu dikembangkan.

Gambar 2.8 Contoh Hubungan Depends On

5) Inheritance: pada saat dua atau lebih pelaku berbagi

kelakuan umum.

Page 12: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

19

Gambar 2.9 Contoh Hubungan Inheritance

b. Class Diagram

Menurut Whitten & Bentley (2007, p. 400), class diagram

menggambarkan struktur objek yang terdapat pada sistem.

Diagram ini menunjukkan objek yang terdapat pada suatu sistem

serta relasi antara objek-objek tersebut.

Page 13: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

20

Gambar 2.10 Contoh Class Diagram

Page 14: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

21

Beberapa elemen yang terdapat dalam class diagram, yaitu:

1) Class: digambarkan sebagai sebuah kotak yang

terbagi atas tiga bagian. Bagian atas adalah bagian nama dari

class. Bagian tengah mendefinisikan atribut class. Bagian akhir

mendefinisikan method dari sebuah class.

Gambar 2.11 Class

2) Association: merupakan sebuah hubungan yang

paling umum antara dua class dan dilambangkan oleh sebuah

garis yang menghubungkan antara dua class. Garis ini bisa

melambangkan tipe-tipe hubungan. Contohnya one-to-one, one-

to-many, many-to-many.

Gambar 2.12 Association

Page 15: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

22

3) Composition: jika sebuah class tidak bisa berdiri

sendiri dan harus merupakan bagian dari class yang lain, maka

class tersebut memiliki relasi composition terhadap class tempat

dia bergantung tersebut. Sebuah hubungan composition

digambarkan sebagai garis dengan ujung berbentuk jajaran

genjang berisi/solid.

Gambar 2.13 Composition

4) Aggregation: jika sebuah class bisa berdiri sendiri

walaupun merupakan bagian dari class yang lain.

Gambar 2. 14 Aggregation

5) Cara bagaimana atribut dan metode diakses oleh

kelas lain didefinisikan dengan visibility. UML menyediakan tiga

tingkat dari visibility, yaitu:

1. Public: ditandai dengan simbol “+”

2. Protected: ditandai dengan simbol “#”

Page 16: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

23

3. Private: ditandai dengan simbol “-‘

c. Activity Diagram

Menurut Whitten & Bentley (2007, p. 390), Activity

diagram adalah sebuah diagram yang dapat digunakan untuk

mendeskripsikan secara grafis aliran kerja dari sebuah proses

bisnis, langkah-langkah dari sebuah use case, atau logika dari

sebuah perilaku objek (object behavior/method).

Activity diagram adalah representasi grafis dari aliran

kerja (workflow) atas aktivitas-aktivitas yang bertahap dan aksi-

aksi di dalam sebuah sistem. Diagram ini juga mendukung proses

seleksi, pengulangan (iterasi), dan konkurensi.

Activity diagram sejenis dengan state diagram/statechart

diagram. Diagram ini mendeskripsikan/menggambarkan

kumpulan aktivitas dengan menunjukkan sekuensial dari aktivitas

yang dilakukan. Diagram ini juga bisa menunjukkan aktivitas

yang bersifat kondisional atau paralel. Berikut notasi yang

digunakan pada activity diagram:

Page 17: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

24

Tabel 2.1 Simbol pada Activity Diagram

No Simbol Gambar Keterangan

1 Initial

node

Menunjukkan awal dari suatu

proses.

2 Actions Menunjukkan langkah-langkah

aktivitas sistem yang terjadi.

3 Flow Untuk menunjuk ke aksi atau

proses yang lain. Dilengkapi

dengan kata-kata jika berasal

dari decision.

4 Decision Memiiki sebuah flow masuk dan

dua atau lebih flow keluar.

Menunjukkan aktivitas yang

dapat dipilih.

5 Merge Menyatukan flow yang

sebelumnya terpisah oleh

decision.

Page 18: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

25

6 Fork Menotasikan permulaan aksi

atau proses paralel yang dapat

terjadi dalam suatu urutan atau

terjadi secara bersamaan.

7 Join Semua aksi yang masuk ke join

harus telah diselesaikan

sebelum proses berlanjut.

8 Activity

Final

Menunjukkan akhir dari

proses.

Page 19: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

26

Gambar 2.15 Contoh Activity Diagram

Page 20: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

27

d. Sequence Diagram

Menurut Whitten & Bentley (2007, pp. 394-395), Sequence

diagram menggambarkan bagaimana objek-objek berinteraksi satu sama

lain melalui pesan dalam eksekusi dari sebuah use case atau operasi.

Sebuah system sequence diagram membantu untuk mengidentifikasi

pesan tingkat tinggi yang masuk dan keluar dari sistem. (p. 394)

Beberapa notasi yang terdapat di dalam system sequence diagram, yaitu:

1. Actor, berupa aktor yang memulai pada use case ditunjukkan

dengan simbol use case aktor.

2. System, berupa kotak yang menunjukkan sistem yang sedang

berjalan, ditandai dengan notasi titik dua (:) pada awal nama

sistem.

3. Lifelines, berupa garis putus-putus menurun dari simbol aktor dan

sistem.

4. Activation bars, berupa balok yang terletak di atas lifelines,

menunjukkan periode waktu ketika terdapat interaksi secara aktif.

5. Input messages, berupa anak panah mendatar dari aktor ke sistem

yang menunjukkan pesan masuk, dimana kata pertama diawali

dengan huruf kecil, sedangkan kata berikutnya diawali dengan

huruf besar dan tidak ada spasi, diikuti dengan tanda kurung yang

berisi parameter yang dibutuhkan.

Page 21: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

28

6. Output messages, berupa anak panah mendatar dengan garis

putus-putus dari sistem ke aktor yang menunjukkan pesan keluar.

7. Receiver Actor, berupa aktor lain yang menerima pesan dari

sistem.

8. Frame, berupa kotak yang menambahkan pesan terpisah untuk

menunjukkan perulangan, alternative, atau pilihan.

2.1.5 Javascript

Menurut Flanagan (2011, p. 1), Javascript adalah bahasa pemrograman

web. Mayoritas situs web modern menggunakan JavaScript, termasuk semua

browser web modern di desktop, game consoles, tablet, dan smart phone.

Javascript adalah bahasa pemrograman berjenis untyped language,

tingkat tinggi, dan dinamis yang cocok untuk gaya pemrograman berorientasi

objek dan fungsional.

Javascript benar-benar berbeda dengan bahasa pemrograman Java, dan

akar dari bahasa scripting javascript telah berkembang menjadi bahasa untuk

keperluan umum yang kuat dan efisien.

Page 22: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

29

2.1.6 Interaksi Manusia dan Komputer

Menurut Shneiderman dan Plaisant (2005, p. 4) ,Interaksi Manusia dan

Komputer (IMK) adalah disiplin ilmu yang berhubungan dengan perancangan,

evaluasi, dan implementasi sistem komputer interaktif untuk digunakan oleh

manusia. Titik berat IMK adalah perancangan dan evaluasi antarmuka pemakai

(user interface). Antarmuka pemakai adalah bagian sistem komputer yang

memungkinkan manusia berinteraksi dengan komputer.

2.1.6.1 Lima Faktor Manusia Terukur

Menurut Shneiderman dan Plaisant (2005, p. 16), ada lima faktor

manusia terukur yang dapat dijadikan pusat evaluasi kebutuhan pengguna

dalam perancangan suatu antarmuka, yaitu:

1. Waktu belajar

Merupakan suatu tolak ukur seberapa lama seorang user mampu

mempelajari tindakan apa saja yang diperlukan untuk suatu tugas

yang disediakan.

2. Kecepatan kinerja

Merupakan suatu tolak ukur seberapa lama suatu tugas dapat

dilaksanakan oleh user.

Page 23: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

30

3. Tingkat kesalahan user

Merupakan suatu tolak ukur seberapa banyak dan apa saja kesalahan

yang dilakukan user dalam mengerjakan suatu tugas.

4. Daya ingat

Merupakan suatu tolak ukur seberapa baik seorang user dapat

mengingat pengetahuan yang didapatkan dalam waktu tertentu.

5. Kepuasan subjektif

Merupakan suatu tolak ukur seberapa besar tingkat kesukaan user

pada tampilan antarmuka yang ada pada aplikasi.

2.1.6.2 Eight Golden Rules of Interface Design

Menurut Shneiderman (2005, pp. 74-75), terdapat delapan aturan

emas (eight golden rules) yang biasa digunakan dalam perancangan

antarmuka pemakai, yaitu:

1. Berusaha untuk konsisten

Konsistensi harus dilakukan pada setiap tindakan, perintah, dan

istilah yang digunakan pada prompt, menu, layar bantu, warna

tampilan, kapitalisasi, huruf, dan sebagainya.

Page 24: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

31

2. Menyediakan penggunaan yang universal

Menambahkan fitur seperti tombol cepat (shortcuts) untuk

memudahkan pengguna. Pemakaian shortcuts digunakan untuk

mengurangi jumlah interaksi dan meningkatkan kecepatan

interaksi. Singkatan, tombol fungsi, dan fasilitas makro sangat

membantu untuk pengguna yang sudah ahli.

3. Memberikan umpan balik yang informatif

Untuk setiap aksi yang dilakukan oleh user harus diberikan

umpan balik agar tercipta suasana yang komunikatif. Pada aksi

yang kecil dan sering digunakan, respon yang diberikan

sederhana. Namun, pada aksi yang besar dan jarang digunakan,

respon yang diberikan harus lebih banyak dan rinci.

4. Merancang dialog untuk memberikan penutupan

Urutan tindakan sebaiknya diorganisasi ke dalam kelompok awal,

tengah, dan akhir. Tampilan harus memberikan dialog untuk

menunjukkan penutupan ketika aplikasi selesai diproses ato

dijalankan.

5. Memberikan pencegahan dan penanganan kesalahan yang

sederhana

Sebisa mungkin, sistem dirancang untuk dapat mencegah user

dari kesalahan fatal yang dilakukan. Jika kesalahan dibuat, sistem

Page 25: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

32

harus mampu mendeteksi kesalahan, menjelaskan, dan

menawarkan penanganan kesalahan untuk memperbaikinya.

6. Memungkinkan pembalikan aksi yang mudah

Diharapkan adanya fitur untuk kembali (back) ke aktivitas

sebelumnya. Fitur ini bertujuan agar pengguna dapat kembali ke

aktivitas sebelumnya jika ternyata terdapat suatu kesalahan yang

disebabkan pengguna, sehingga kesalahan dapat diperbaiki.

7. Mendukung pusat kendali internal

User memiliki kendali sebagai pemberi aksi pada sistem

antarmuka. Kemudian antarmuka tersebut harus merespon

kembali, sehingga dapat mengontrol program-program yang ada

dalam sistem.

8. Mengurangi beban ingatan jangka pendek

Sebuah sistem diharapkan dapat ditampilkan sesederhana

mungkin dan sebaiknya tampilan halaman yang banyak disatukan,

serta diberikan cukup waktu dalam mempelajari kode, singkatan,

dan urutan tindakan.

Page 26: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

33

2.1.7 OOP(Object Oriented Programming)

Menurut Clark (2011, pp. 1-3), OOP adalah sebuah pendekatan untuk

pengembangan perangkat lunak dimana struktur perangkat lunak ini didasarkan

pada benda-benda berinteraksi satu sama lain untuk menyelesaikan tugas.

Interaksi ini membutuhkan bentuk pesan lewat bolak-balik antara objek. Dalam

menanggapi pesan, objek dapat melakukan suatu tindakan atau metode.

Contohnya seperti ketika seseorang ingin pergi ke toko dan berinteraksi dengan

sebuah mobil. Sebuah objek mobil terdiri dari benda-benda yang berinteraksi

satu sama lain untuk menyelesaikan tugas untuk mengantar orang tersebut ke

toko. Orang tersebut meletakkan kunci dan menyalakannya. Hal tersebut

mengirimkan pesan (melalui sinyal listrik) ke objek pemula, yang berinteraksi

dengan objek mesin untuk menyalakan mobil. Sebagai supir, hal tersebut

membuatnya terisolasi dari logika bagaimana suatu objek pada suatu sistem

bekerja sama untuk menyalakan mobil. Orang tersebut hanya memulai urutan

kejadian dengan menjalankan metode mulai dari objek pengapian dengan kunci,

kemudian menunggu respon keberhasilan atau kegagalan.

Banyak pengembang software bisnis yang beralih ke metode objek

oriented dan bahasa pemrograman untuk menyelesaikan berbagai masalah.

Keuntungannya adalah sebagai berikut:

a. Sebuah transisi yang lebih intuitif dari analisis model bisnis perangkat lunak

ke model penerapan perangkat lunak.

Page 27: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

34

b. Kemampuan untuk memelihara dan menerapkan perubahan dalam program

yang lebih efisien dan cepat.

c. Kemampuan untuk lebih efektif menciptakan sistem perangkat lunak

menggunakan proses tim, memungkinkan para ahli (specialists) untuk

bekerja pada bagian dari sistem.

d. Kemampuan untuk menggunakan kembali komponen kode dalam program

lain dan membeli komponen yang ditulis oleh pengembang pihak ketiga

untuk meningkatkan fungsi dari program mereka dengan sedikit usaha.

e. Integrasi yang lebih baik dengan sistem komputasi terdistribusi yang

digabungkan secara longgar.

f. Peningkatan integrasi dengan sistem operasi modern.

g. Kemampuan untuk membuat tampilan antarmuka yang lebih intuitif untuk

pengguna.

2.1.7.1 Karakteristik OOP

Menurut Clark (2011, pp. 3-5), beberapa karakteristik yang

terdapat dalam OOP adalah:

a. Objects

Dalam OOP, objek adalah sebuah struktur data untuk

menggabungkan data dan prosedur untuk bekerja dengan data.

Misalnya, apabila ingin memiliki kemampuan pencetakan, maka

Page 28: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

35

harus bekerja dengan objek printer yang bertanggung jawab atas

data dan metode yang digunakan dengan printer tersebut.

b. Abstraction

Tanpa kemampuan untuk melakukan abstraksi atau menyaring

sifat benda asing, akan terjadi kesulitan untuk memproses

sejumlah informasi dan konsentrasi pada tugas yang sedang

dilakukan.

c. Encapsulation

Fitur penting lainnya dari OOP adalah enkapsulasi. Enkapsulasi

adalah proses dimana tidak ada akses langsung yang diberikan

untuk data, melainkan tersembunyi. Untuk mendapatkan akses ke

data, diperlukan interaksi dengan objek yang bertanggung jawab

untuk data.

d. Polymorphism

Polimorfisme adalah kemampuan dari dua objek yang berbeda

untuk merespon pesan permintaan yang sama dalam cara yang

unik.

Page 29: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

36

e. Inheritance

Dalam OOP inheritance digunakan untuk mengklasifikasikan

objek dalam program sesuai dengan karakteristik dan fungsi yang

umum. Hal itu membuat bekerja dengan objek menjadi lebih

mudah dan intuitif. Hal itu juga membuat program menjadi lebih

mudah, karena memungkinkan pembuat untuk menggabungkan

karakteristik umum kedalam objek orangtua/parent dan mewarisi

karakteristik tersebut di dalam objek anak/child.

f. Aggregation

Agregasi adalah ketika sebuah objek terdiri dari gabungan dari

benda-benda lain yang bekerja sama. Misalnya, mesin pemotong

rumput adalah gabungan dari objek roda, mesin, pisai, dan

sebagainya. Bahkan, objek mesin adalah gabungan dari berbagai

objek. Kemampuan untuk menggunakan agregasi di dalam OOP

merupakan fitur canggih yang memungkinkan implementasi

proses bisnis dan model secara akurat di dalam suatu program.

Page 30: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

37

2.1.8 Definisi Database

Menurut Connoly (2005, p. 15), database adalah kumpulan data

yang saling berhubungan secara logis dan dirancang untuk memenuhi

kebutuhan informasi dalam suatu organisasi.

Menurut Whitten & Bentley (2007, p. 518), database adalah

kumpulan data yang saling terkait/ berhubungan.

Sehingga dapat disimpulkan bahwa database adalah suatu

kumpulan data yang berhubungan secara logis dan data dapat

dimanipulasi serta digunakan untuk memenuhi kebutuhan informasi suatu

organisasi.

2.1.9 Bahasa-bahasa dalam database

Sebuah sub-bahasa data terdiri dari 2 bagian yaitu: Data Definiton

language (DDL) dan Data Manipulation Language (DML).

• Data Definiton language(DDL)

Data definition language adalah sebuah bahasa yang mengizinkan

database administrator atau pengguna untuk menjelaskan dan memberi

nama ke entitas-entitas, atribut-atribut, dan relasi yang diperlukan untuk

aplikasi, bersama pula dengan kendala keamanan dan integritas yang

berhubungan.

Page 31: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

38

• Data Manipulation Language (DML)

Data Manipulation Language (DML) adalah sebagai bahasa yang

menyediakan operasi-operasi untuk mendukung operasi pemanipulasian

data pada data yang berada di database diantaranya adalah:

• Melakukan penambahan data baru ke databse.

• Melakukan pembaharuan terhadap data yang disimpan

pada database.

• Mengambil kembali data yang berada pada database.

• Menghapus data dari database.

Terdapat dua tipe DML yaitu: procedural dan nonprocedural. Secara garis

besar perbedaan diantara dua tipe data manipulation language tersebut

adalah DML procedural menspesifikasikan bagaimana hasil dari sebuah

pernyataan DML diperoleh. Sedangkan DML nonprocedural hanya

menjelaskan apa hasil yang akan diperoleh.

2.1.10 Definisi Database Management System

Menurut Connoly & Begg (2005, p. 16), DBMS (database management

system) merupakan suatu system perangkat lunak computer yang memungkinkan

pengguna untuk mendefinisikan, membuat dan mengatur database serta

menyediakan suatu kontrol akses ke database.

Page 32: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

39

Menurut Whitten & Bentley (2007, p. 525), DBMS (database

management system) adalah perangkat lunak komputer yang terspesialisasi dari

komputer vendor yang digunakan untuk menciptakan, mengakses, mengontrol,

dan mengatur database.

Sehingga dapat disimpulkan DBMS (database management system)

adalah suatu sistem perangkat lunak komputer yang terspesialisasi dan

memungkinkan pengguna untuk mendefinisikan, membuat dan mengatur

database serta menyediakan suatu kontrol akses ke database.

Secara khusus, DBMS menyediakan fasillitas berikut:

Memungkinkan pengguna untuk menentukan database, biasanya melalui

Data Definition Language (DDL). DDL memungkinkan user untuk

menentukan tipe user dan struktur data mendorong data untuk disimpan

ke database.

Memungkinkan pengguna atau user untuk melakukan insert, update,

delete dan retrieve dari database, biasanya melalui Data Manipulation

Language (DML)

Menyediakan akses terkontrol ke database

2.1.11 Komponen Utama Database

Menurut Connolly & Begg (2005, pp. 18-21), komponen-komponen

DBMS adalah sebgai berikut:

Page 33: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

40

1. Hardware (perangkat keras), dibutuhkan untuk menjalankan DBMS dan

juga aplikasi-aplikasinya. Yang termasuk perangkat keras adalah mini computer,

network computer, personal computer, dan mainframe.

2. Software (perangkat lunak), terdiri dari perangkat lunak DBMS itu

sendiri dan aplikasi program, bersama operating system, termasuk didalamnya

perangkat lunak jika DBMS digunakan dalam jaringan.

3. Data, merupakan komponen terpenting dari lingkungan DBMS yang

dilihat dari sudut pandang pengguna akhir. Data berperan sebagai jembatan

antara komponen prosedur dan komponen manusia.

4. Prosedur, mengacu pada instruksi-instruksi dan aturan-aturan yang

pengendalian desain dan penggunaan database.

5. People (sumber daya manusia), mengacu pada semua manusia yang

terlibat dalam sistem seperti DBA, programmer, aplikasi, pengguna, akhir dan

lain-lain.

2.1.12 Keuntungan Dan Kerugian DBMS

Ada beberapa keuntungan yang didapat dengan memakai DBMS yaitu

menurut Connolly & Begg (2005, pp. 26-30):

• Mengontrol redudansi data.

• Konsistensi data

Page 34: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

41

• Lebih banyak informasi dari jumlah data yang sama.

• Share data.

• Meningkatkan integritas data.

• Meningkatkan keamanan.

• Standar pelaksanaan.

• Skala ekonomi (data operasional organisasi dijadikan satu database dan

membuat aplikasi pada satu sumber data sehingga akan penghematan biaya).

• Keseimbangan aksesibilitas data dan data responsiveness.

• Meningkatkan produktivitas.

• Meningkatkan pemeliharaan melalui data independence.

• Meningkatkan konkurensi(mengurangi loss informasi dan loss integritas).

• Meningkatkan layanan backup dan recovery.

Namun ada pula kerugian dari pemakaian DBMS sebagai berikut:

• Kompleksitas.

• Ukuran.

• Biaya DBMS.

• Biaya penambahan perangkat keras.

Page 35: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

42

• Biaya konversi (biaya staf spesialis, biaya pelatihan).

• Performance (tidak dapat berjalan secepat yang diinginkan).

• Resiko kesalahan yang lebih tinggi.

2.2 Teori Khusus

2.2.1 JSON (Javascript Object Notation)

JSON adalah standar berbasis teks ringan yang dirancang terbuka

dan mudah untuk dibaca dan ditulis manusia serta mudah bagi mesin

untuk mengurai dan menghasilkan pertukaran data. Hal ini didasarkan

pada subset dari Bahasa Pemrograman JavaScript, standar ECMA 262

Edisi 3 (Pengenalan JSON, 2011) merupakan format text bahasa

independen tetapi menggunakan konvensi bahasa yang akrab dari bahasa

C, meliputi C, C++, C#, Java, JavaScript, Perl, Python, dan lainnya. Hal

hal inilah yang membuat JSON sebagai bahasa pertukaran yang ideal.

Format JSON awalnya ditentukan oleh Douglas Crockford dan

dijelaskan dalam RFC4627. Jenis media internet yang resmi untuk JSON

adalah aplikasi/json. Format JSON sering digunakan untuk serialisasi dan

mengirimkan data terstruktur melalui koneksi jaringan. Terutama untuk

pengiriman data antara server dan aplikasi web, melayani sebagai

alternatif ke XML.

Page 36: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

43

2.2.2 Node.JS

Menurut jurnal yang ditulis oleh Iqbal (2012) Node.js adalah

sistem perangkat lunak yang didesain untuk pengembangan aplikasi web.

Aplikasi ini ditulis dalam bahasa JavaScript, menggunakan basis event

dan asynchrounous I/O. Tidak seperti kebanyakan bahasa JavaScript yang

dijalankan pada peramban, Node.js dieksekusi sebagai aplikasi server.

Aplikasi ini terdiri dari V8 JavaScript Engine buatan Google dan

beberapa modul bawaan yang terintegrasi.

Sedangkan menurut Teixeira (2012, p. iv) Node.JS diperkenalkan

oleh seorang programmer bernama Ryan Dahl pada European JSCONF

2009. Saat ini lebih dikenal secara sederhana sebagai 'Node'. Node

memungkinkan programmer untuk secara mudah mengkonstruksikan

network services yang cepat dan terukur.

2.2.3 Mongo DB

Menurut Francia (2012, p. 3), MongoDB dibangun oleh Eliot

Horowitz dan Dwight Merriman untuk mengoptimalkan operasi dan

skala. Filosofi dibalik MongoDB adalah untuk memiliki fungsi sebanyak

mungkin sambil memungkinkan pengembangan secara horizontal dan

disaat bersamaan memastikan keserasian dalam pengalaman

pengembang.

Page 37: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

44

2.2.4 Android

2.2.4.1 Pengenalan Android

Menurut Burnette (2009, p. 12), Android merupakan tooklkit

perangkat lunak open source baru untuk perangkat mobile masa depan,

android sendiri diciptakan oleh perusahaan Google yang bekerja sama

dengan Open Handset Alliance.

2.2.4.2 Kelebihan dan Kekurangan Android

Meski saat ini sudah banyak platform mobile di pasaran seperti :

Symbian, iOS, Windows Mobile, Blackberry, Java Mobile Edition, Linux

Mobile (LiMo), dsb, namun android masih bisa menyaingi platform

sebelumnya, karena android adalah yang pertama menggabungkan fitur –

fitur sebagai berikut :

1. Merupakan pengembang platform bebas yang berbasis

linux dan open source, bebas karena pengembang dapat

menggunakan dan menyesuaikan platform tanpa harus membayar

royalty.

2. Sebuah komponen berbasis arsitektur yang terinspirasi

oleh mashup internet. Bagian dari satu aplikasi dapat

Page 38: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

45

dikembangkan, digantikan, ditingkatkan komponennya sesuai

dengan versi anda sendiri. Sehingga dapat memunculkan berbagai

kreativitas pada mobile application.

3. Memiliki layanan berbasis lokasi menggunakan GPS atau

triangulasi menara sel untuk menyesuaikan dimana anda berada.

4. Memungkinkan anda untuk memanfaatkan kekuatan

penyimpanan local untuk berhubungan dengan komputasi dan

sinkronisasi. Browser dan peta views dapat ditanamkan langsung

pada aplikasi. Semuanya dapat ditingkatkan sambil tetap menekan

harga biaya pengembangan

5. Android dioptimalkan untuk perangkat daya rendah dan

rendah memori, yang dimana pada platform sebelumnya tidak

terpikirkan.

6. Mendukung grafis dan suara berkualitas tinggi, lebih

halus. Grafik 2D dan vector grafis serta animasi yang terinspirasi

oleh flash yang menyatu dengan 3D dan dipercepat oleh grafis

OpenGL untuk memungkinkan jenis baru dalam permainan dan

aplikasi bisnis.

7. Memiliki portabilitas diberbagai perangkat keras saat ini

dan masa depan serta memiliki dukungan untuk berbagai jenis

input seperti metode keyboard, layar sentuh dan trackball.

Page 39: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

46

8. Program yang terisolasi dapat memberikan tingkat

stabilitas sistem yang tidak terlihat sebelumnya pada ponsel

pintar.

9. Android menawarkan berbagai cara untuk berinteraksi

dengan mobile application bersama dengan dasar – dasar teknis

untuk membuatnya.

10. Semakin berkembangnya membuat android terlihat

mudah, anda tidak membutuhkan akses ke ponsel android saja,

tapi cukup dengan komputer dimana anda dapat menginstall SDK

Android dan emulator.

Android Software Development Kit (SDK) bekerja pada

Windows, Linux, dan Mac OS X. Aplikasi yang anda buat dapat

digunakan pada setiap perangkat Android, sebelum anda memulai

membuat program anda perlu menginstall JAVA, IDE, dan SDK

Android.

Selain kelebihan – kelebihan tersebut ada beberapa

kekurangan Android, diantaranya:

1. Handset Android dibuat oleh banyak vendor dengan

ukuran layar yang berbeda, sebagian menggunakan keyboard

fisik, sebagian lagi hanya menggunakan touch screen. Versi

Android yang terpasang di handset juga berbeda berbeda, hal ini

menyebabkan pengalaman memakai android tidak seragam, hal

Page 40: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

47

ini juga sekaligus menyulitkan Programmer dalam membuat

program. Karena apabila versi OS tidak sama, program itu tidak

bisa diinstal.

2. Android adalah produk open source dari Google dan Open

Handset Aliance, itulah mengapa aplikasi yang ada di Android

sangat menyatu dengan layanan Google, sebut saja Email

menggunakan GMail, kalendar menggunakan Google Calendar,

bahkan sampai Contact pun disimpan di Gmail Contact. Bagi

penggemar Google ini merupakan keunggulan sendiri, namun

bagi pengguna yang tidak familiar dengan produk Google (Misal

orang yang baru pindah dari Windows Mobile atau Symbian) hal

ini cukup merepotkan karena mereka harus menyesuaikan

kebiasaannya.

3. Android cukup aktif dikembangkan, hampir tiap tahun

mereka merilis sistem operasi baru, pada tahun 2010 Google

merilis froyo (2.2), Gingerbread (2.3) dan Honeycomb (3.0),

tahun 2011 merilis Ice cream sandwich (4.0). Namun dari sisi

vendor atau operator, update ke user membutuhkan waktu

berbulan bulan, sebagai contoh, froyo dirilis pada bulan mei 2010,

namun pengguna android kebanyakan baru meng-update setelah

bulan September 2010.

Page 41: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

48

2.2.5 Sencha Touch 2

Menurut Kosmaczewski (2012, p. 65), Sencha Touch adalah salah

satu UI Framework yang memiliki kemiripan dengan CocoaTouch,

Swing, maupun .NET. Ditulis sepenuhnya dalam bahasa JavaScript.

Sencha Touch menyediakan widget – widget, bereaksi terhadap sapuan

jari kompleks, dan dipersiapkan untuk kreasi web applications yang

bersifat sangat kompleks. Sencha Touch merupakan produk dari Sencha,

yang dibangun berdasarkan gabungan pustaka javascript dari Ext.JS,

jQTouch dan Raphael. Saat buku ini ditulis, Sencha Touch yang

digunakan sudah memasuki versi 2.0.1.

2.2.6 Phonegap

Menurut Kosmaczewski (2012, p. 91), PhoneGap diciptakan oleh

perusahaan bernama Nitobi yang kemudian di akuisisi oleh Adobe. Lebih

daripada itu, PhoneGap telah menjadi proyek resmi dari Apache

Foundation dan sekarang dinamakan Apache Cordova. Secara teknis,

dapat dikatakan bahwa PhoneGap adalah distribusi dari Apache Cordova.

PhoneGap membungkus aplikasi yang diciptakan menggunakkan

HTML, CSS dan JavaScript ke dalam bahasa native menggunakkan

komponen web browser native yang disediakan oleh kebanyakan

smartphone. Menurut promosi dari Adobe, PhoneGap merupakan dua

hal:

Page 42: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

49

Wrapper

PhoneGap menangani HTML, CSS dan JavaScript file dan

menyatukannya dalam suatu cara sehingga dapat dirilis di online

store.

Bridge

PhoneGap juga menyediakan mekanisme HTML5 web

applications, yang memungkinkan mereka mengakses dan

memakai informasi dan service yang tersedia dari aplikasi

bawaan, seperti buku kontak lokal, sistem notifikasi, suara, dan

keperluan lainnya.

2.2.7 Websocket

Menurut jurnal yang ditulis oleh Sharma (2011, p. 134) ,Websocket di

HTML5 merupakan kemajuan di bidang komunikasi HTTP. Spesifikasi dari

Websocket memungkinkan saluran komunikasi dua arah single-socket untuk

mengirim dan menerima informasi antara browser dan server. Dengan demikian,

Page 43: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

50

Websocket menghindari koneksi dan portabilitas masalah teknik lainnya dan

memberikan solusi yang lebih efisien daripada polling Ajax. Saat ini Websocket

di HTML5 adalah sarana terdepan untuk memfasilitasi full-duplex, pertukaran

data di web secara real time. Websocket menyediakan lintasan sederhana dari

firewall dan router dan kompatibel dengan data biner. Websocket juga

memungkinkan pertukaran data dengan cookie-based authentication.

Gambar 2. 16 Perbandingan Websocket Dengan Teknologi Lain

Tabel diatas membandingkan parameter yang berbeda untuk setiap

teknologi yang berbeda yang digunakan dalam implementasi komunikasi cross-

site pada server QIIIP. Empat belas teknologi dibandingkan terhadap berbagai

parameter seperti cross-browser compatible, cross-site browser security

enforcement, http status codes, dll.

Page 44: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

51

2.2.8 PHP

Menurut Suryatiningsih (2009, p. 141), PHP adalah bahasa scripting yang

menyatu dengan HTML dan dijalankan pada sisi server. Artinya semua sintaks

yang diberikan akan sepenuhnya dijalankan pada server sedangkan yang

dikirimkan ke browser hanya hasilnya saja.

Melalui jurnal yang ditulis oleh Korhonen (2008, p. 12), System

GEOMAGIA50 menggabungkan teknologi open source PHP dan MySQL.

GEOMAGIA50 memiliki 3798 klasifikasi intensitas dari 50.000 tahun

lalu(49.900-1998 M?), diterbitkan dalam 165 peer-review artikel jurnal, laporan,

dan bab buku. Hal ini membuat GEOMAGIA50 alat yang ideal untuk

mempelajari perilaku medan magnet Holocone.

2.2.9 Java

Menurut Friesen (2010, p. 1), Java adalah platform untuk mengeksekusi

proram dan terdiri dari library untuk menjalankan program dan berinteraksi

dengan sistem operasi yang mendasarinya. Java adalah bahasa pemrograman

yang sederhana, berorientasi objek, terdistribusi, diinterpretasikan, kuat, aman,

arsitektur netral, portable, kinerja tinggi, multithreaded, dan dinamis. Java dapat

dijalankan di berbagai jenis sistem operasi dan arsitektur komputer.

Page 45: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewLapisan ini meliputi tugas-tugas yang mencakup analisis kebutuhan (requirements analysis), model

52

Java pertama kali dikembangkan oleh tim yang dipimpin oleh James

Gosling di Sun Microsystem. Pada mulanya disebut Oak yang dirancang pada

tahun 1991 untuk digunakan dalam chip tertanam dalam peralatan elektronik

konsumen. Kemudian pada tahun 1995, berganti nama menjadi Java yang

didesain ulang untuk mengembangkan aplikasi internet.

2.2.10 Socket IO

Socket.IO menurut website resminya (LearnBoost, 2012) merupakan

Application Programming Interface (API) dari Websocket yang dibuat oleh

Guillermo Rauch, CTO dari LearnBoost. Socket IO ini akan membuat

sambungan yang dibentuk dengan Websocket untuk menciptakan aplikasi real

time yang dapat bekerja dimana saja. Socket.IO juga menyediakan API untuk

Node.JS yang banyak ditemukan pada API sisi klien.

2.2.11 MySQL

Menurut Kadir (2009, p. 15), MySql merupakan software yang tergolong

database server dan bersifat Open Source. Open Source menyatakan bahwa

software ini dilengkapi dengan source code (kode yang dipakai untuk membuat

MySql),selain tentu saja bentuk executable-nya atau kode yang dapat dijalankan

secara langsung dalam sistem operasi, dan bisa diperoleh dengan cara

mengunduh di Internet secara gratis.