Pembangunan Perangkat Lunak Esport Team Di Platform Android

220  25 

Loading.... (view fulltext now)

Loading....

Loading....

Loading....

Loading....

Teks penuh

(1)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

ERICSON PAIAN MAJUMULIA

10110268

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(2)

iii

rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan tugas akhir dengan judul “Pembangunan Perangkat Lunak eSport Team di Platform Android” sebagai syarat untuk menyelesaikan program studi Strata I Program Studi Teknik Informatika Fakultas Teknik dan Ilmu Komputer pada Universitas Komputer Indonesia.

Penyusunan tugas akhir ini tidak akan terwujud tanpa mendapat dukungan, bantuan dan masukan dari berbagai pihak. Untuk itu, penulis ingin menyampaikan terima kasih yang sebesar-besarnya kepada:

1. Tuhan Yang Maha Esa yang telah memberikan kesehatan, ilmu, kesempatan,

dan kekuatan.

2. Kedua orang tua, adik-adik dan seluruh keluarga besar tercinta yang selalu

memberikan motivasi dan dukungan moril maupun materil yang tak terhingga

selama ini.

3. Bapak Eko Budi Setiawan, S.Kom., M.T. selaku dosen pembimbing yang telah

membimbing dan memberikan pengarahan selama penelitian tugas akhir,

sehingga tugas akhir ini dapat terselesaikan dengan sebaik-baiknya.

4. Ibu Dian Dharmayanti, S.T., M.Kom. selaku dosen penguji I yang telah

memberikan masukan dan arahan selama perbaikan perangkat lunak ini.

5. Bapak Galih Hermawan, S.Kom, M.T. selaku dosen penguji II yang telah

menguji kompetensi dan memberikan masukan untuk perangkat lunak ini.

6. Bapak Iskandar Ikbal, S.T., M.Kom. selaku dosen wali IF-6 angkatan 2010.

7. Amurizi Nazara, Edi Rohaedi, Rizky Nugraha, Nazar Abdullah, Selamet

Riyadi, Chrismikha Hardyanto, Ahmad Sopian, Carsadi, Edi Rizkinta, Dodi

Permana, Ardiyan Suardi yang telah berjuang bersama-sama dalam tugas akhir

(3)

iv

8. Seluruh Dosen dan Staff pengajar program studi Teknik Informatika

Universitas Komputer Indonesia.

9. Teman-teman kelas IF-6 angkatan 2010 yang telah bersama-sama melewati

masa-masa perkuliahan.

10. Komunitas Gamers O2 Bandung, Komunitas Gamers Jester Bandung,

Komunitas Gamers Recon Jogja dan seluruh Komunitas Gamers yang telah

membantu di dalam menyelesaikan Tugas Akhir ini.

11. Semua pihak yang terlibat dan ikut membantu dalam tugas akhir ini baik secara

langsung maupun tidak langsung.

Sangat disadari bahwa dalam pelaksanaan dan penyusunan laporan tugas akhir skripsi ini masih banyak kekurangan dan jauh dari kesempurnaan. Oleh karena itu saran dan kritik yang membangun sangat diharapkan untuk pengembangan ke arah yang lebih baik.

Bandung, 24 Februari 2015

(4)

v

I.2 Identifikasi Masalah ... 2

I.3 Maksud dan Tujuan ... 3

I.4 Batasan Masalah ... 3

I.5 Metode Penelitian ... 4

I.5.1 Metode Pengumpulan Data ... 4

I.5.2 Metode Pembangunan Perangkat Lunak ... 5

I.6 Sistematika Penulisan ... 6

BAB II LANDASAN TEORI ... 9

II.1 Internet ... 9

II.1.1 Hypertext Transfer Protocol (HTTP) ... 9

II.1.2 Hypertext Transfer Protocol Secure (HTTPS) ... 9

II.1.3 File Transfer Protocol (FTP) ... 10

II.1.4 Electronic Mail / Email / Messaging ... 10

II.2 Database ... 10

II.2.1 Fungsi Database ... 11

(5)

vi

II.2.3 Database Management System (DBMS) ... 11

II.3 Game... 12

II.7.1 Android Life Cycle ... 19

II.7.2 Fitur ... 21

II.7.3 Prinsip Desain ... 21

II.8 User-Generated Content (UGC) ... 23

II.9 Web Services ... 23

II.10 JavaScript Object Notation (JSON) ... 24

II.11 Google Cloud Messaging ... 25

II.12 Object Oriented Analysis Desain ... 26

II.12.1 Unified Modeling Language (UML) ... 27

II.13 Object Relational Mapping (ORM)... 30

II.14 Location Based Services (LBS) ... 30

II.14.1 Unsur Utama LBS ... 31

II.14.2 Komponen LBS ... 31

(6)

vii

II.20 Pengujian Kuesioner ... 36

BAB III ANALISIS DAN PERANCANGAN SISTEM ... 39

III.1 Analisis Sistem ... 39

III.1.1 Analisis Masalah... 39

III.1.2 Analisis Aplikasi Sejenis ... 39

III.1.3 Analisis Pembentukan eSport Team ... 44

III.1.3.1 Analisis Pencarian Gamer Berdasarkan Kategori ... 47

III.1.4 Analisis Arsitektur Sistem ... 50

III.1.5 Analisis Kebutuhan Non Fungsional ... 53

III.1.6 Analisis Data... 56

III.1.7 Analisis Kebutuhan Fungsional ... 58

III.1.7.1 Use Case Diagram... 58

III.1.8 Perancangan ... 140

(7)

viii

III.1.8.1.1 Skema Relasi ... 140

III.1.8.1.2 Struktur Tabel ... 141

III.1.8.2 Perancangan Arsitektur Menu ... 143

III.1.8.2.1 Perancangan Arsitektur Menu Web Admin ... 143

III.1.8.2.2 Perancangan Arsitektur Menu Mobile User ... 144

III.1.8.3 Perancangan Antarmuka ... 146

III.1.8.3.1 Perancangan Antarmuka Web Admin ... 146

III.1.8.3.2 Perancangan Antarmuka Mobile User ... 164

III.1.8.4 Perancangan Pesan ... 177

III.1.8.5 Jaringan Semantik... 179

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ... 181

IV.1 Implementasi ... 181

IV..2 Pengujian Sistem ... 186

BAB V KESIMPULAN DAN SARAN ... 205

(8)

207

http://venturebeat.com/2013/11/25/more-than-1-2-billion-people-are-playing-games/

[2] Ingrid Lunden. (2014, January) Kantar: Android Accounted for 70% of Smartphone Sales in Q4, But Samsung Is Now “Under Real Pressure”. [ONLINE]. http://techcrunch.com/2014/01/26/kantar-android-sales-in-

q4-grew-in-all-big-markets-but-leader-samsung-now-under-real-pressure/

[3] Ian Sommerville, Software Engineering, Eight Edition ed : Addison

Wesley, 2007.

[4] Ebta Setiawan, Kamus Besar Bahasa Indonesia, 2012-2014. [ONLINE].

http://kbbi.web.id/main

[5] Sudiyanto Weitin Septo dan Mulyati Rina, Alasan Gamers Online

Berhenti Bermain. Yogyakarta, 2010.

[6] Yoga Wisesa. (2013, December) [Eksklusif] Mengintip Kehidupan Tim

eSport Terbaik Se-Asia, NXL. [ONLINE].

http://www.trenologi.com/2013122430017/eksklusif-trenologi-mengintip-kehidupan-tim-esport-terbaik-se-asia-nxl/

[7] Berbagi Makalah Sistem Informasi dalam KNSI 2009. Yogyakarta,

Indonesia : Informatika, 2009, p. 15.

[8] Google Inc. (2014, Jan.) Introduction to Android. [Online].

http://developer.android.com/guide/index.html

[9] Ronan Schwarz, Phil Dutson, James Stelee, and Nelson To, The Android

Developer's Cookbook, 2nd ed., Mark Taub and Laura Lewin, Eds. New

York, United States: Addison-Wesley, 2013.

[10] Google Inc. (2014, Jan.) Design Prniciples. [Online].

http://developer.android.com/design/index.html

[11] Interactive Advertising Bureau, "User Generated Content, Social Media

and Advertising," IAB Platform Status Report : User Generated Content,

(9)

208 Jardiknas, 2007.

[13] JSON Org. Pengenalan JSON. [Online]. http://www.json.org/json-id.html

[14] Gondane Parikshit and Hyalij Bhushan, "System Analysis and Design

Flexibility in the Approach," International Journal of Computer

(10)

1 I.1 Latar Belakang Masalah

Dunia game berkembang dengan sangat pesat. Pada saat ini game tidak hanya

dimainkan oleh anak-anak saja melainkan game juga dimainkan oleh semua

kalangan, mulai dari kalangan anak-anak, remaja hingga dewasa. Menurut survey

yang dilakukan oleh publisher game di Belanda yaitu : Spil Games jumlah gamers

di dunia pada tahun 2013 mencapai 17% dari jumlah penduduk dunia, yaitu sekitar

1.3 Milliar orang dari 7.1 Milliar penduduk dunia. Gamers tersebut terdiri dari 44%

adalah wanita dan 56% adalah laki-laki [1]. Game saat ini tidak hanya dijadikan

sebagai sebuah hiburan saja, namun saat ini bermain game sudah menjadi sebuah

profesi atau pekerjaan yang bisa menghasilkan uang. Selain itu, dibeberapa negara

seperti : Korea Selatan dan Indonesia bermain games sudah dikategorikan sebagai

salah satu cabang olahraga resmi, sama seperti olahraga lainnya, seperti : olahraga

catur. Namun yang berbeda adalah olahraga bermain games ini dimainkan dengan

menggunakan media elektronik atau lebih dikenal dengan sebutan eSport. Hal ini

dibuktikan dengan didirikannya lembaga resmi yang menaungi para gamers di

kedua negara tersebut. Lembaga tersebut adalah IeSF (International eSport

Federation) di Korea Selatan dan IeSPA (Indonesia eSport Association) di

Indonesia. Para gamers bisa menghasilkan uang dari games yang mereka mainkan

dari event-event games yang berlangsung dengan membentuk sebuah tim yang

terdiri dari gamers-gamers yang lebih dikenal dengan sebutan eSport Team.

Namun, untuk mengikuti sebuah eventgames dengan skala tim tentunya tidak

lepas dari beberapa masalah. Berdasarkan survey yang sudah dilakukan 77,46%

responden mengaku tertarik mengikuti event games, tetapi 63,38% responden

mengaku kesulitan di dalam mencari pemain yang hendak direkrut atau diajak

untuk membentuk sebuah eSport Team. Sedangkan informasi mengenai para

(11)

lainnya untuk membentuk suatu eSport Team agar dapat mengikuti event games

yang ingin diikuti.

Masalah lain yang timbul adalah 59,15% responden mengaku minimnya

informasi dan sulitnya mencari lokasi event menjadi permasalahan berikutnya yang

dialami oleh para eSport Team yang ingin mengikuti kejuaraan atau event games

diluar kota.

Terdapat beberapa aplikasi yang dapat digunakan untuk membantu para

gamers di dalam mencari pemain untuk membentuk sebuah eSport Team, seperti :

Forum Gamers di www.hltv.org dan www.ligagame.com. Namun, aplikasi

www.hltv.org ini merupakan aplikasi yang ditujukan untuk komunitas gamer yang

berada di luar negeri dan bukan di Indonesia, sehingga para gamer kesulitan

mencari informasi gamer dan event games yang berada di wilayah Indonesia.

Sedangkan aplikasi www.ligagame.com memang merupakan aplikasi untuk

komunitas gamer di Indonesia, namun aplikasi ini tidak mengelola informasi

gamer. Aplikasi ini hanya memberikan informasi mengenai game dan event games

saja.

Berdasarkan masalah yang telah dipaparkan, maka dapat disimpulkan perlunya

membangun perangkat lunak “eSport Team” pada platform mobile. Adapun

platform mobile yang digunakan adalah android dikarenakan sekitar 60.56%

responden mengaku menggunakan platform android pada perangkat mobile yang

mereka gunakan. Dengan pembangunan perangkat lunak ini diharapkan dapat

menjadi solusi yang tepat untuk mengatasi permasalahan-permasalahan yang

dialami oleh para gamers tersebut.

I.2 Identifikasi Masalah

Berdasarkan latar belakang yang telah dijelaskan diatas dapat diidentifikasikan

beberapa masalah, diantaranya :

1. Para gamers mengaku kesulitan di dalam mencari informasi gamers lain

yang ingin direkrut atau diajak untuk membentuk eSport Team.

2. Para gamers mengaku minimnya informasi mengenai event-event games

(12)

3. Para gamers mengaku kesulitan mencari lokasi event games yang akan

diikuti, khususnya event games yang berada di luar kota.

I.3 Maksud dan Tujuan

Maksud dari penelitian ini adalah membangun perangkat lunak eSport Team

di Platform Android. Adapun tujuan dari penelitian ini adalah sebagai berikut :

1. Mempermudah gamers di dalam mencari informasi dari gamers lain yang

ingin direkrutuntuk membentuk suatu eSport Team.

2. Mempermudah gamers mencari informasi mengenai event-event games

yang akan berlangsung.

3. Membantu gamers untuk mencari lokasi eventgames yang akan diikuti.

I.4 Batasan Masalah

Untuk dapat mencapai maksud dan tujuan dari penelitian yang akan dilakukan

maka diperlukan batasan-batasan di dalam penelitian, berikut adalah batasan

masalah dari penelitian ini, yaitu :

1. Perangkat lunak ini menggunakan konsep user-generated content (UGC).

2. Pendekatan analisis yang digunakan pada perangkat lunak ini

menggunakan UML (Unified Modeling Language) untuk subsistem web

dan mobile.

3. Perangkat lunak ini menggunakan JSON (Javascript Object Notation)

untuk media pertukaran data dengan server.

4. Tools yang digunakan untuk pembangunan perangkat lunak untuk

subsistem mobile menggunakan Eclipse dan tools yang digunakan untuk

susbsistem web menggunakan Sublime Text 3.

5. Bahasa pemrograman yang digunakan untuk subsistem web adalah PhP dan

MySQL dan Bahasa Pemrograman yang digunakan untuk subsistem mobile

adalah Java.

6. Versi minimum Sistem Operasi yang didukung oleh perangkat lunak ini

(13)

7. Jenis games yang difokuskan pada perangkat lunak ini adalah jenis games

yang dimainkan dengan kerjasama tim (teamwork) dengan genre game FPS

(first personal shooter), seperti game : Counter Strike 1.6, Counter Strike

Global Offensive, Point Blank, Crossfire, X-Shot dan MOBA (Multiplayer

Online Battle Arena), seperti : Dota2, Legend of League dan Heroes on

Network.

8. Rekrut pemain dilakukan berdasarkan 4 kategori, yaitu : lokasi, jenis game,

usia dan posisidi dalam game.

I.5 Metodologi Penelitian

Metodologi yang digunakan dalam penelitian ini menggunakan dua metode,

yaitu metode pengumpulan data dan metode pembangunan perangkat lunak.

I.5.1 Metode Pengumpulan Data

Adapun teknik pengumpulan data yang akan digunakan terdiri dari dua

cara pengumpulan data, yaitu :

1. Studi Literatur

Studi literatur dari penelitian ini bersumber dari buku-buku serta didukung

oleh beberapa jurnal yang berkaitan dengan penelitian ini.

2. Observasi

Observasi dilakukan dengan melakukan kuisioner, wawancara dan

mengamati langsung komunitas-komunitas gamer dengan memberikan

beberapa pertanyaan langsung kepada komunitas gamer di beberapa daerah di

Indonesia dari berbagai komunitas games yang permainannya beraneka ragam,

seperti : Komunitas Gamers Recon Jogja, Komunitas Gamers XSAG Jakarta,

Komunitas Gamers DropZone Bandung, Komunitas Gamers Team KnockOut

Bandung, Komunitas Gamers O2 Bandung, Komunitas Gamers Jester

(14)

I.5.2 Metode Pembangunan Perangkat Lunak

Dalam pembuatan perangkat lunak ini menggunakan warterfall model

sebagai tahapan pengembangan perangkat lunaknya. Berikut adalah tahapan

beserta penjelasan dari waterfall model [2] :

1. Requirement Definition

Pada tahapan ini, segala kebutuhan di dalam pembangunan perangkat

lunak akan didefinisikan secara lengkap. Kemudian kebutuhan-kebutuhan

yang telah terdefinisi tersebut akan dianalisis dan selanjutnya akan

ditentukan kebutuhan-kebutuhan apa saja yang harus dipenuhi oleh

perangkat lunak yang akan dibangun. Ini merupakan tahapan penting dan

harus dikerjakan secara detail agar dapat menghasilkan design yang

lengkap.

2. System and Software Design

Pada tahapan ini, setelah seluruh kebutuhan-kebutuhan di dalam

pembangunan perangkat lunak telah terkumpul, kemudian perangkat lunak

yang akan dibangun akan di desain terlebih dahulu. Desain perangkat lunak

akan dibagi berdasarkan bagian-bagiannya dan aktivitas dari bagian-bagian

tersebut yang telah dikumpulkan secara lengkap pada tahapan sebelumnya.

3. Implementation and Unit Testing

Pada tahapan ini, hasil dari desain yang telah dibuat akan

diterjemahkan ke dalam kode-kode atau syntax-syntax pemrograman

dengan menggunakan bahasa pemrograman yang telah ditentukan terlebih

dahulu dan program yang dibangun akan langsung diuji berdasarkan

unit-unitnya atau bagian-bagiannya, supaya tiap-tiap unit atau bagian pada

perangkat lunak yang dibangun sesuai dengan tujuan yang ingin dicapai.

4. Integration and System Testing

Pada tahapan ini seluruh unit-unit program yang terbagi menjadi

beberapa bagian-bagian program yang terpisah akan disatukan menjadi

satu program atau satu sistem yang utuh, kemudian sistem yang telah

dibuat akan diuji agar dapat berjalan sesuai dengan hasil analisis yang telah

(15)

5. Operation and Maintenance

Pada tahapan ini, perangkat lunak atau sistem yang telah dibuat akan

dilakukan pemeliharaan program, seperti : penyesuaian atau perubahan

sistem. Hal ini dilakukan supaya sistem yang telah dibangun dapat

beradaptasi dengan situasi yang ada dan juga supaya program atau sistem

yang telah dibangun tetap terjaga dari segi fungsionalitasnya.

Tahapan-tahapan yang telah dijelaskan diatas dapat dilihat pada

Gambar I.1. sebagai berikut :

Gambar I.1Waterfall Model [2]

I.6 Sistematika Penulisan

Sistematika penulisan penelitian ini disusun untuk memberikan gambaran

umum mengenai penelitian yang akan dijalankan. Sistematika penulisan dalam

Penelitian ini adalah sebagai berikut :

BAB I PENDAHULUAN

Bab I menguraikan latarbelakang permasalahan, fenomena-fenomena yang

terjadi di lingkungan sekitar, merumuskan permasalahan-permasalahan, mencari

(16)

maksud dan tujuan, pembatasan masalah, metode penelitian, dan sistematika

penulisan.

BAB II LANDASAN TEORI

Bab II menguraikan bahan-bahan kajian, konsep dasar, dan teori dari para ahli

yang berkaitan dengan penelitian. Meninjau permasalahan dan hal-hal yang

berguna dari penelitian-penelitian yang pernah dikerjakan sebelumnya dan

menggunakannya sebagai bahan untuk acuan di dalam pemecahan masalah pada

penelitian ini.

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab III menguraikan hasil analisis dari objek penelitian untuk mengetahui apa

saja yang dibutuhkan untuk pembangunan sistem. Setelah kebutuhan-kebutuhan

telah terdefinisi, selanjutnya sistem akan dirancang dengan tujuan agar

mempermudah di dalam pembuatan sistem yang akan dibangun dengan

mengaplikasikan perangkat-perangkat dan pemodelan yang digunakan di dalam

penelitian.

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab IV menguraikan tentang pembuatan atau implementasi dari hasil analisis

yang telah dilakukan sebelumnya. Setelah mendefinisikan kebutuhan-kebutuhan

yang diperlukan di dalam pembuatan sistem, selanjutnya sistem akan dibangun

berdasarkan kebutuhan-kebutuhan yang telah didefinisikan. Kemudian setelah

sistem dibuat akan diuji dan disesuaikan dengan hasil dan tujuan dari penelitian.

BAB V KESIMPULAN DAN SARAN

Bab V menguraikan tentang kesimpulan dari data-data yang diperoleh pada

penelitian yang telah dilakukan beserta saran untuk pengembangan selanjutnya.

Kesimpulan akan berisikan mengenai hasil dari penelitian dan membandingkan

dengan tujuan dari penelitian. Sedangkan saran berisikan mengenai

(17)
(18)

9 II.1 Internet

Internet (Inter-Network) adalah sebutan untuk sekumpulan jaringan

komputer yang menghubungkan situs akademik, pemerintahan, komersial,

organisasi, maupun perorangan. Internet menyediakan akses untuk layanan

telekomnunikasi dan sumber daya informasi untuk jutaan pemakainya yang

tersebar di seluruh dunia. Layanan internet meliputi komunikasi langsung (email,

chat), diskusi (Usenet News, email, milis), sumber daya informasi yang

terdistribusi (World Wide Web, Gopher), remote login dan lalu lintas file (Telnet,

FTP), dan aneka layanan lainnya [3].

II.1.1 Hypertext Transfer Protocol (HTTP)

Hypertext Transfer Protocol atau HTTP merupakan suatu protokol

yang dipakai oleh www dimana http itu sendiri memberikan definisi terhadap

bagaimana pesan dapat disampaikan dan diformat dari server menuju klien.

Selain itu, HTTP juga digunakan untuk mendistribusikan sistem informasi

berbasis hypertext. Protokol ini merupakan protokol standar yang digunakan

untuk mengakses HTML. HTTP diprakarsai oleh World Wide Web sistem

informasi yang menyeluruh sejak tahun 1990 [3].

II.1.2 Hypertext Transfer Protocol Secure (HTTPS)

Hypertext Transfer Protocol Secure atau HTTPS adalah sebuah

protokol web yang dikembangkan oleh Netscape dan dibangun di dalam

browsernya sehingga dapat melakukan enkripsi dan dekripsi permintaan laman

dari pengguna sama halnya dengan laman yang dikembalikan oleh server web.

HTTPS merupakan penggabungan antara Hypertext Transfer Protocol (HTTP)

dengan SSL / TLS protokol. Semua komunikasi yang dilakukan melalui

HTTPS akan dienkripsi dengan tujuan untuk keamanan saat terjadi transaksi

(19)

II.1.3 File Transfer Protocol (FTP)

Fasilitas ini memungkinkan para pengguna internet untuk melakukan

pengiriman (upload) atau menyalin (download) sebuah file antara komputer

lokal dengan computer lain yang terhubung dalam jaringan internet. Protokol

standar yang digunakan untuk keperluan ini disebut sebagai File Transfer

Protocol (FTP). FTP umumnya dimanfaatkan sebagai sarana pendukung untuk

kepentingan pertukaran maupun penyebarluasan sebuah file melalui jaringan

internet. FTP juga dimanfaatkan untuk melakukan prose upload suatu halaman

web ke webserver agar dapat diakses oleh pengguna internet lainnya [3].

II.1.4 Electronic Mail / Email / Messaging

Electronic Mail / Email / Messaging dalam istilah Indonesia diartikan

sebagai aplikasi yang memungkinkan para pengguna internet untuk saling

berkirim pesan melalui alamat elektronik di internet. Para pengguna email

memilki sebuah mailbox (kotak surat) elektronik yang tersimpan dalam suatu

mailserver. Suatu Mailbox memiliki sebuah alamat sebagai pengenal agar

dapat berhubungan dengan mailbox lainnya, baik dalam bentuk penerimaan

maupun pengiriman pesan. Pesan yang diterima akan ditampung dalam

mailbox, selanjutnya pemilik mailbox sewaktu-waktu dapat mengecek isinya,

menjawab pesan, menghapus, atau menyunting dan mengirimkan pesan email

[3].

II.2 Database

Kumpulan data yang disimpan secara sistematis di dalam komputer dan

dapat diolah atau dimanipulasi menggunakan perangkat lunak (program aplikasi)

untuk menghasilkan informasi. Basis data merupakan aspek yang sangat penting

dalam sistem informasi dimana basis data merupakan gudang penyimpanan data

yang akan diolah lebih lanjut. Basis data menjadi penting karena dapat

menghindari duplikasi data, hubungan antar data yang tidak jelas, organisasi data

dan juga update yang rumit. Sedangkan untuk proses memasukan dan mengambil

(20)

disebut dengan sistem manajemen basis data atau lebih dikenal dengan istilah

Database Management System (DBMS) [4].

II.2.1 Fungsi Database

Adapun fungsi database diantaranya adalah sebagai berikut [4]:

1. Salah satu komponen penting dalam sistem informasi, karena merupakan

dasar dalam menentukan informasi.

2. Menentukan kualitas informasi. Informasi dapat dikatakan bernilai apabila

manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya.

3. Mengurangi duplikasi data (data redudancy).

4. Hubungan data dapat ditingkatkan (data relatability).

5. Mengurangi pemborosan tempat simpanan luar.

II.2.2 Kriteria Database

Dari penjelasan sebelumnya dapat disimpulkan bahwa basis data

mempunyai beberapa kriteria penting, yaitu [4]:

1. Bersifat data oriented dan bukan program oriented

2. Dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah

basis datanya.

3. Dapat dikembangkan dengan mudah, baik volume maupun strukturnya.

4. Dapat memenuhi kebutuhan sistem-sistem baru secara mudah, dapat

digunakan dengan cara-cara yang berbeda.

II.2.3 Database Management System (DBMS)

DBMS merupakan sistem perangkat lunak yang memungkinkan

useruntuk memelihara, mengontrol dan mengakses data secara praktis dan

efisien. Dengan kata lain semua akses ke basis data akan ditangani oleh

DBMS. Berikut adalah beberapa fungsi yang harus ditangani DBMS, yaitu [4] :

1. Mengolah pendefinisian data

2. Dapat menangani permintaan pemakai untuk mengakses data

3. Memeriksa sekuriti dan integriti data yang didefinisikan oleh DBA

(21)

4. Menangani kegagalm dalam pengaksesan data yang disebabkan oleh

kerusakan sistem maupun disk dan menangani unjuk kerja semua fungsi

secara efisien

II.3 Game

Game diambil dari bahasa Inggris yang diterjemahkan yang artinya adalah

permainan. Pengertian game menurut beberapa ahli :

1. Menurut Chris Crawford, seorang game designer :

Game pada intinya adalah sebuah interaktif, aktivitas yang berpusat pada sebuah pencapaian, ada pelaku aktif, ada lawan anda.”

2. Menurut David Parlett, seorang gamer profesional :

“Game adalah sesuatu yang memiliki akhir dan cara mencapainya, artinya ada tujuan, hasil dan serangkaian peraturan untuk mencapai

keduanya”.

3. Menurut Roger Caillois, seorang sosiolog Perancis, dalam bukunya

berjudul Les jeux et les hommes menyatakan :

“Game adalah aktivitas yang mencakup karakteristik berikut : fun (bebas bermain adalah pilihan bukan kewajiban), separate (terpisah),

uncertain, non-productive, governed by rules (ada aturan), fictitious

(pura-pura)”.

Dari pengertian diatas dapat disimpulkan bahwa game adalah sebuah

aktivitas yang interaktif dan memiliki tujuan dalam pencapaiannya yang diatur

oleh sebuah aturannya sendiri, adanya pelaku aktif dan memiliki lawan main serta

memiliki sebuah akhir. Sedangkan, Game atau main dalam kamus besar bahasa

indonesia adalah melakukan permainan untuk menyenangkan hati dengan

menggunakan alat-alat tertentu atau tidak atau melakukan perbuatan untuk

bersenenang-senang dengan alat-alat tertentu atau tidak dalam keadaan

(22)

II.3.1 Klasifikasi Game

The Entertainment Software Rating Board (ESRB) adalah sebuah

organisasi regulator mandiri yang menilai permainan video, panduan

pengiklanan, prinsip privasi online permainan video dan software hiburan

lainnya di Kanada dan Amerika Serikat. Berikut ini adalah klasifikasi game

berdasarkan pembatas usia, menurut Entertainment Software Rating Board

(ESRB), yaitu [5] :

Tabel II.1 Klasifikasi Game [5] Simbol Keterangan

Early Childhood (3+) memiliki isi yang mungkin cocok untuk

usia 3 tahun atau lebih tua.

Everyone (6+) memiliki konten yang mungkin cocok untuk usia

6 tahun atau lebih tua. Judul-judul dalam kategori ini mungkin

berisi sedikit kartun, fantasi atau kekerasan ringan.

Everyone (10+) memiliki konten yang mungkin cocok untuk

usia 10 tahun atau lebih tua. Judul-judul dalam kategori ini

mungkin berisi lebih banyak kartun, fantasi, atau kekerasan

ringan, bahasa ringan dan minimal tema sugestif.

Teen (13+) memiliki konten yang mungkin cocok untuk usia 13

tahun dan lebih tua. Judul-judul dalam kategori ini mungkin

mengandung kekerasan, tema sugestif, humor kasar, sedikih

darah dan simulasi perjudian.

Mature (17+) memiliki konten yang mungkin cocok untuk usia

orang usia 17 tahun atau lebih. Judul-judul dalam kategori ini

(23)

Adults Only (18+) memiliki konten yang hanya boleh dimainkan

oleh orang-orang berusia 18 tahun atau lebih tua. Judul-judul

dalam kategori ini mungkin termasuk adegan yang intens dengan

kekerasan dan grafik konten seksual.

RP (Rating Pending) simbol ini muncul dalam iklan sebelum

permainan sampai kepada pasar.

II.3.2 Jenis - Jenis Game

Game sendiri memiliki jenis-jenisnya tersendiri, yang dimaksudkan

untuk mengenal game apa yang sedang kita mainkan termasuk kedalam jenis

yang mana. Dan ini adalah jenis-jenis game tersebut [5] :

1. Simulasi

Contoh permainan yang termasuk dalam game simulasi adalah simulasi

konstruksi dan manajemen, simulasi kendaraan seperti yang diterapkan

pada permainan balapan dan perang luar edugames angkasa.

2. Edukasi

Contohnya adalah edugames yang dibuat dengan tujuan spesifik sebagai

alat pendidikan, baik itu untuk belajar mengenal warna untuk balita,

mengenal huruf dan angkat, matematika, sampai belajar bahasa.

3. Entertaiment

a) Aksi – Shooting, (tembak-tembakan, atau hajar-hajaran bisa juga tusuk

tusukan, tergantung cerita dan tokoh di dalamnya). Game jenis ini sangat

memerlukan kecepatan refleks, koordinasi mata-tangan dan juga waktu.

b) Fighting (pertarungan), game ini memerlukan keceptan reflek dan

koordinasi mata-tangan, tetapi inti dari game ini adalah penguasaan jurus

(hafal caranya dan lancar mengeksekusinya).

c) Petualangan, game murni pertualangan lebih menekankan pada jalan cerita

dan kemampuan berpikir pemain dalam menganalisa tempat secara visual,

(24)

percakapan karakter hingga penggunaan benda-benda tepat pada tempat

yang tepat.

d) Role Playing, game jenis ini memiliki penekanan pada tokoh atau peran

perwakilan pemain di dalam permainan, yang biasanya adalah tokoh

utamanya, dimana seiring kita memainkannya karakter tersebut dapat

berubah dan berkembang ke arah yang diinginkan oleh pemain dalam

berbagai parameter yang biasanya ditentukan dengan naiknya level.

e) Casual Games, game ini merupakan jenis game yang dimainkan dengan

rileks, simple dan tidak kompleks serta mudah untuk dipelajari. Selain itu,

game jenis ini ukurannya sedikit dan tidak lebih dari 100MB.

f) Multiplayer Online, game yang dapat dimainkan secara bersamaan oleh

lebih dari 2 orang (bahkan dapat mencapai jutaan orang dalam satu waktu

tertentu) membuat pemain dapat bermain bersama dalam satu dunia virtual

dari sekedar chatting biasa hingga saling menyerang dan menjatuhkan antar

pemain.

II.4 Gamers

Gamers adalah sebutan untuk orang yang bermain game dengan

menggunakan perangkat elektronik. Gamers online yaitu orang yang bermain

game dengan perangkat komputer dan terhubung dengan jaringan internet,

dimana para gamers dapat terhubung satu sama lain tanpa dibatasi oleh ruang dan

waktu. Gamers tidak mengenal batasan usia, status, jenis kelamin dan jenis

pekerjaan. Semua orang yang bermain game dengan menggunakan perangkat

elektronik yang ada dapat dikatakan sebagai seorang gamers [6].

II.5 eSport

eSport merupakan olahraga yang dimainkan dengan menggunakan media

elektronik, dimana dibeberapa negara, seperti : Korea Selatan, Swedia dan

Indonesia game sudah dikategorikan sebagai salah satu cabang olahraga dan

memiliki lembaga resmi untuk menaungi para pemain game tersebut, dibawah

(25)

paling berkembang dalam beberapa tahun ke belakang. Walaupun begitu, usia

eSport bisa dibilang hampir setua sejarah dunia gaming sendiri. Saat mode

multiplayer mulai diperkenalkan pada konsumen, saat itu pula para gamers seperti

mendapatkan sebuah dunia baru yang disebut dengan dunia virtual, dimana para

gamers bisa bermain, bersosialisasi dan saling berkompetisi dengan gamers

lainnya. [7].

II.5.1 eSport Team

(Albert F, 2010) eSport Team atau tim eSport merupakan kumpulan

dari gamers-gamers yang bermain bersama dalam kategori game tertentu dan

memiliki visi dan misi yang sama dalam mencapai tujuan dari tim eSport

tersebut. Para gamers tersebut memainkan game yang sama dalam satu divisi

eSport Team, namun eSport Team bisa memiliki lebih dari satu divisi eSport

Team dengan kategori game yang berbeda, misalnya : salah satu eSport Team

di Indonesia yang telah memiliki banyak penghargaan baik penghargaan lokal

maupun internasional, yaitu nextlevelgaming atau lebih dikenal dengan nama teamnxl> memiliki beberapa divisi eSport Team diantaranya : divisi CS:GO, X-SHOT dan DOTA2.

II.5.2 Pembentukan eSport Team

eSport Team terdiri dari 2 atau lebih gamers yang memiliki kesamaan

terhadap suatu jenis tertentu dan untuk mencari gamers yang sesuai untuk

membentuk suatu eSport Team tidaklah mudah. Hal ini dikarenakan oleh

banyak faktor, yaitu :

1. Lokasi

Lokasi sangat menentukan eSport Team di dalam berlatih. Hal ini

dikarenakan apabila terdapat salah satu anggota eSport Team yang

berbeda kota hal ini dapat menghambat komunikasi antara satu anggota

eSport Team dengan anggota eSport Team yang lain.

2. Jenis Game

Jenis Game merupakan salah satu faktor yang sangat mempengaruhi di

(26)

kumpulan gamers yang sama-sama bermain di dalam satu jenis game

yang sama.

3. Posisi Pemain

Di dalam eSport Team setiap pemain memiliki fungsi dan perannya

masing-masing. Pembagian peran atau tugas ini berdasarkan keahlian dari

masing-masing gamer tersebut. Pembagian peran ini bertujuan agar di

dalam setiap pertandingan setiap strategi yang telah ditentukan dapat

berjalan sesuai dengan rencana.

4. Usia

Usia juga dapat mempengaruhi terbentuknya suatu eSport Team karena

usia dapat mempengaruhi tingkat mentalitas, kecepatan respon mata dan

reflek seseorang. Karena untuk jenis game tertentu seperti jenis game

peran tersebut terbagi menjadi 5 bagian utama, yaitu :

1. IGL(In Game Leader)

Player ini merupakan otak dari setiap strategi yang akan diterapkan di

dalam permainan, dimana IGL merupakan ketua tim yang akan mengarahkan

para anggotanya agar dapat bermain dengan baik agar sesuai dengan strategi

yang akan diterapkan.

2. Penyerang / Killer

Player ini bertugas untuk menyerang tim lawan dan mengobrak – abrik

pertahanan lawan. Player ini memiliki skill / kemampuan lebih diantara player

lainnya. Penyerang / killer memiliki peranan yang sangat penting di dalam

(27)

semakin banyak penyerang / killer membunuh tim lawan maka kemungkinan

besar tim tersebut akan memenangkan pertandingan.

3. Pembantu / Backupper

Player ini bertugas untuk membantu killer di dalam melakukan tugasnya

untuk menyerang tim lawan. Apabila killer terbunuh di dalam pertandingan

maka backupper bertugas untuk menggantikan tugas dari pada killer.

4. Backstab

Player ini bertugas untuk menjaga tim dari serangan belakang lawan.

Apabila tim sedang menyerang ke suatu tempat maka backstab bertugas untuk

menjaga sisi belakang tim agar tidak di serang dari belakang.

5. Support

Player ini bertugas untuk membantu killer di dalam menjalankan

tugasnya. Support bertugas untuk membukakan jalan untuk killer sebelum

killer menyerang tim lawan.

II.6 Mobile Teknologi

Mobile teknologi adalah istilah kolektif yang digunakan untuk

menggambarkan berbagai jenis teknologi komunikasi seluler. Handphone yang

dulunya hanya digunakan sebagai alat untuk berkomunikasi satu sama lain sudah

berubah dengan berkembangnya teknologi dan membuat handphone saat ini tidak

hanya sebagai alat untuk berkomunikasi saja, namun memiliki banyak fungsi,

seperti : bermain game, menonton TV, mencari informasi berita dan mencari

lokasi suatu daerah. Banyak ahli berpendapat bahwa masa depan teknologi

komputer terletak pada komputasi mobile dengan jaringan nirkabel. Sehingga

membuat teknologi pada mobile akan terus berkembang dari waktu ke waktu.

II.7 Android

Android adalah sistem operasi berbasis Linux yang dirancang untuk

perangkat seluler layar sentuh seperti telepon pintar dan komputer tablet. Android

awalnya dikembangkan oleh Android, Inc., dengan dukungan finansial dari

(28)

secara resmi pada tahun 2007, bersamaan dengan didirikannya Open Handset

Alliance, konsorsium dari perusahaan-perusahaan perangkat keras, perangkat

lunak dan telekomunikasi yang bertujuan untuk memajukan standar terbuka

perangkat seluler. Ponsel Android pertama mulai dijual pada bulan Oktober 2008

[8] :

II.7.1 Android Life Cycle

Aplikasi android terdiri dari beberapa fungsi dasar seperti mengedit

catatan, memutar file musik, membunyikan alarm, atau membuka kontak

telepon. Fungsi-fungsi tersebut dapat diklasifikasikan ke dalam empat

komponen android yang berbeda seperti ditunjukkan pada,klasifikasi tersebut

berdasarkan kelas-kelas dasar java yang digunakan [9].

Tabel II.2 Komponen Aplikasi Android

Functionality Java Base Class Examples

Focused thing a user can do Activity Edit a note, play a game

Background process Service Play music, update weather icon

Receive messages BroadcastReceiver Trigger alarm upon event Store and retrieve data ContentProvider Open a phone contact

Setiap aplikasi pasti menggunakan minimal satu dari komponen

tersebut, akan tetapi terdapat beberapa komponen yang mengharuskan

mencantumkan specified permission sebelum digunakan seperti komponen

Service, BroadcastReceiver, ContentProvider [9].

Android memiliki paradigma pemrograman lain tidak seperti

paradigma pemrograman biasa di mana aplikasi yang dijalankan pada fungsi

main(), sistem android menjalankan kode dalam method Activity dengan

menerapkan metode callback tertentu yang sesuai dengan tahap tertentu dari

siklus hidup. Setiap aplikasi yang berjalan dalam sistem operasi Android

memiliki siklus hidup yang berbeda dengan aplikasi desktop ataupun web. Hal

ini dikarenakan aplikasi mobile memiliki tingkat interupsi proses yang cukup

tinggi seperti ketika handling panggilan masuk aplikasi diharuskan

menghentikan proses sementara. Penerapan siklus hidup juga berguna untuk

(29)

Gambar II.1 Siklus Hidup Android [7]

Terdapat beberapa statedalam siklus hidup android yang terjadi

seperti diilustrasikan pada Gambar II.1 Siklus Hidup Android, akan tetapi

hanya beberapa dari state tersebut yang menjadi statis diantaranya:

1. Resumed

Resumed terjadi ketika aplikasi berjalan setelah state paused . State ini

akan menjalankan perintah program yang ditulis pada method onResume() [8].

2. Paused

Dalam keadaan ini aktivitas yang terjadi dihentikan secara sementara

tetapi masih terlihat oleh pengguna karena terdapat proses yang memiliki

prioritas lebih tinggi seperti panggilan telepon. Aplikasi tidak dapat

menjalankan perintah apapun ataupun menampilkan apapun dalam state ini

[7].

3. Stopped

Dalam keadaan ini, aplikasi benar-benar tidak ditampilkan dan tidak

terlihat oleh pengguna tetapi masih meninggalkan service dibackground [7].

State lain seperti Created dan Started bersifat sementara dan sistem

dengan cepat menjalankan state berikutnya dengan memanggil metode life

cyclecallback berikutnya. Artinya, setelah sistem OnCreate() dipanggil,

dengan cepat sistem akan memanggil method OnStart(), krmudian diikuti oleh

(30)

II.7.2 Fitur

Android memiliki beberapa fitur utama yang sering digunakan dalam

proses pembangunan aplikasi diantaranya adalah:

1. Multi-proses dan App Widgets

Sistem operasi android tidak melarang prosesor menjalankan lebih dari

satu aplikasi dalam satu waktu. Sistem operasi android dapat mengatur

aplikasi dan thread yang berjalan secara multitasking. Keuntungan yang

didapat adalahketika aplikasi berjalan dan berinteraksi dengan pengguna di

layer depan sistem operasi, proses dari aplikasi lain dapat berjalan untuk

melakukan pembaruan informasi. Sebagai contoh misalnya ketika pengguna

memainkan game, proses lain dapat berjalan di belakang aplikasi seperti

memeriksa harga saham dan memunculkan peringatan [7].

App Widgets adalah mini aplikasi yang dapat embedded dalam aplikasi

seperti home screen. App widgets dapat menjalankan prosesrequest seperti

musik streaming atau mendeteksi suhu ruangan secara background [7].

Multi-proses dapat memberikan manfaat berupa user experience yang

lebih banyak, namun penggunaan fitur tersebut dapat menghabiskan banyak

energi baterai jika penggunaantidak benar [8].

2. Hard dan Soft Keyboard

Salah satu fitur pada perangkat smartphone adalah tombol fisik dan non

fisik, tombol fisik digunakan untuk navigasi pendukung dalam pengoperasian

android. Pengembang aplikasi tidak perlu secara manual untuk

mengintegrasikan tombol tersebut dalam aplikasi. Tombol non fisik adalah

tombol yang dibuat oleh sistem operasi seperti keyboard virtual, dan tombol

navigasi aplikasi [8].

II.7.3 Prinsip Desain

Android memiliki beberapa prinsip desain yang dapat menjadi acuan

(31)

1. Multiple Assets

Android mendukung jutaan smartphone, tablet dan perangkat lain dalam

berbagai ukuran layar dan ukuran, untuk itu Multiple Assetssangat disarankan

digunakan untuk mengatasi fragmentasi pada android. Seperti ilustrasi pada

Gambar II.2 Klasifikasi Ukuran Ikon, android menciptakan beberapa

klasifikasi ukuran icon yaitu : MDPI, HDPI, XHDPI, XXHDPI dan

XXXHDPI. MDPI dan HDPI dikhususkan untuk icon yang akan digunakan

pada device berukuran smartphone sedangkan untuk XHDPI, XXHDPI dan

XXXHDPI digunakan pada device berukuran tablet [9].

Gambar II.2 Klasifikasi Ukuran Ikon 2. Touch Feedback

Touch Feedback dalam android digunakan sebagai respon setiap objek

yang ditekan pengguna. Hal ini bertujuan untuk memberi tahu pengguna objek

mana yang berinteraksi dengan penggunan [9].

(32)

II.8 User-Generated Content (UGC)

User-generated Content atau disingkat UGC, dikenal juga dengan istilah

consumer-generated media (CGM) atau user-created content (UCC) adalah

merujuk pada berbagai tipe konten materi atau media yang tersedia untuk umum

dan diproduksi oleh end-user atau para non-media profesional. Kemajuan

teknologi web memungkinkan konten website tidak lagi dimonopoli oleh

profesional media, melainkan dapat dibuat oleh para penggunanya. UGC

merupakan salah satu ciri dominan Web 2.0. Contoh penerapan pada UGC adalah

YouTube hampir semua konten yang dimiliki situs tersebut dibuat dan diupload

oleh penggunanya [10].

Konsep UGC pada dasarnya telah banyak merubah cara berinteraksi

pengguna dengan internet begitu juga dalam media periklanan. Bagi media

periklanan jejaring sosial dengan konsep UGC memiliki potensi besar

menyediakan market yang lebih terarah dan terpusat bagi mereka [10].

II.9 Web Services

W3C mendefinisikan web service sebagai sebuah software aplikasi yang

dapat teridentifikasi oleh URI dan memiliki interface yang didefinisikan,

dideskripsikan, dan dimengerti oleh XML atau JSON dan juga mendukung

interaksi langsung dengan software aplikasi yang lain dengan menggunakan

message berbasis XML atau JSON melalui protokol internet. Web service adalah

sebuah software aplikasi yang tidak terpengaruh oleh platform, menyediakan

method-method yang dapat diakses oleh network. Web Service juga akan

menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis

yang berbeda. Beberapa karakteristik dari web service adalah:

1. Message-based

2. Standards-based

3. Programming language independent

4. Platform-neutral

Beberapa key standard didalam web service adalah: JSON, XML, SOAP,

(33)

II.10JavaScript Object Notation (JSON)

JSON adalah 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 Pemprograman JavaScript,

Standar ECMA-262 Edisi ke-3 - Desember 1999. JSON merupakan format teks

yang tidak bergantung pada bahasa pemrograman 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. JSON terbuat dari dua

struktur:

1. Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan

sebagai objek (object), rekaman (record), struktur (struct), kamus

(dictionary), tabel hash (hash table), daftar berkunci (keyed list), atau

associative array [12].

2. Daftar nilai terurutkan (an ordered list of values). Pada kebanyakan bahasa,

hal ini dinyatakan sebagai larik (array), vektor (vector), daftar (list), atau

urutan (sequence) [12].

Struktur-struktur data ini disebut sebagai struktur data universal. Pada

dasarnya, semua bahasa pemprograman modern mendukung struktur data ini

dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian

karena format data mudah dipertukarkan dengan bahasa-bahasa pemprograman

yang juga berdasarkan pada struktur data ini.JSON menggunakan bentuk sebagai

berikut:

1. Objek

Objek adalah sepasang nama / nilai yang tidak terurutkan. Objek dimulai

dengan { (kurung kurawal buka) dan diakhiri dengan } (kurung kurawal tutup).

Setiap nama diikuti dengan : (titik dua) dan setiap pasangan nama/nilai dipisahkan

oleh , (koma). Objek biasanya digunakan untuk menyimpan data tunggal dalam

(34)

Gambar II.4 Objek JSON

2. Larik

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

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

oleh , (koma). Larik dalam JSON dapat digunakan sebagai value dari JSON object

hal ini dapat berguna jika JSON menyimpan data bertingkat [12].

Gambar II.5 Array JSON

Bentuk data JSON objek dan larik dapat saling dikombinasikan untuk

mendukung struktur data yang lebih kompleks. JSON mendukung beberapa tipe

data untuk menjadi value seperti Angka, String, Bollean dan nilai NULL [12].

II.11Google Cloud Messaging

Google Cloud Messaging adalah teknologi untuk membantu pengembang

mengirim data dari server menuju device android secara langsung melalui server

google, pemanfaatan teknologi ini biasanya digunakan untuk push messaging.

Pengiriman pesan menggunakan teknologi ini mengharuskan adanya API key, key

ini terkait langsung dengan akun google yang digunakan untuk mempublikasikan

(35)

Gambar II.6 GCM Model [13]

Berdasarkan ilustrasi dari Gambar II.6 GCM Model [13] terdapat dua server

yang terlibat dalam proses push messaging, pada setiap server yang terlibat

terdapat proses pengiriman data yang berbeda-beda diantaranya [13] :

1. Device android mengirimkan sender id dan application id menuju GCM

Server untuk registrasi.

2. Setelah berhasil registrasi, GCM server akan mengirimkan registration id

menuju device android.

3. Setelah device android mendapatkan registration id, device tersebut akan

mengirimkan registration id menuju server aplikasi.

4. Server aplikasi akan menyimpan registrasi id yang dikirimkan untuk

digunakan sebagai id saat menggunakan push messaging.

II.12 Object Oriented Analysis Desain

Konsep OOAD mencakup analisis dan desain sebuah sistem dengan

pendekatan objek, yaiut analisis berorientasi objek (OOA) dan desain berorientasi

objek (OOD). OOA adalah metode analisis yang memerika requirement

(syarat/keperluan) yang harus dipenuhi sebuah sistem) dari sudut pandang

(36)

adalah metode untuk mengarahkan arsitektur software yang didasarkan pada

manipulasi objek-objek sistem atau subsistem [14] :

II.12.1 Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah termasuk ke dalam

rumpun jenis pemodelan notasi grafis yang didukung oleh meta-model

tunggal, Pemodelan ini berguna untuk membantu dalam menjelaskan dan

merancang perangkat lunak yang dibangun dengan object-oriented(OO).

UML merupakan standar terbuka yang dikelola oleh Open Management

Group (OMG) yang berada dibawah naungan perusahaan-perusahaan

konsorsium terbuka. UML merupakan suatu bahasa pemodelan yang terdiri

banyak model diantaranya adalah [14] :

1. Use Case Diagram

Use case diagram merupakan suatu pemodelan yang menitik beratkan

padafungsionalitas utama dalam suatu konteks sistem. Use case diagram juga

menekankan tingkah laku fungsional utama dalam sistem berinteraksi

denganobjek diluar sistem tersebut. Selain itu, use case diagram juga telah

menitik beratkan jenis hubungan diantara fungsi utama. Adapun

komponen-komponendalam use case diagram antaranya [14] :

a. Aktor

Aktor merupakan suatu entitas yang berkaitan dengan sistem tapi

bukan dari bagian dalam sistem itu sendiri. Aktor berada diluar sistem

namun berkaitan erat dengan fungsionalitas di dalamnya. Aktor dapat

memiliki hubungan secara langsung terhadap fungsi utama baik terhadap

salah satu atau semua fungsionalitas utama. Aktor juga dapat dibagi

terhadap berbagai jenis atau tingkatan dengan cara digeneralisasi atau

dispesifikasi tergantung kebutuhan sistemnya. Aktor biasanya dapat

berupa pengguna atau database yang secara pandang berada dalam suatu

ruang lingkup sistem tersebut [14]. Berikut adalah contoh aktor yang

(37)

Gambar II.7 Aktor b. Use Case

Use case merupakan gambaran umum dari fungsi atau proses utama

yang menggambarkan tentang salah satu perilaku sistem. Perilaku sistem

ini terdefinisidari proses bisnis sistem yang akan dimodelkan. Tidak

semua proses bisnis digambarkan secara fungsional pada use case, tetapi

yang digambarkan hanya fungsionalitas utama yang berkaitan dengan

sistem. Use case menitik beratkan bagaimana suatu sistem dapat

berinteraksi baik antar sistem maupun diluar sistem [14]. Berikut adalah

(38)

Gambar II.8 Use Case

2. Class Diagram

Class diagram merupakan diagram yang selalu ada di permodelan sistem

berorientasi objek. Class diagram menunjukkan hubungan antar class dalam

sistem yang sedang dibangun dan bagaimana mereka saling berkolaborasi

untuk mencapai suatu tujuan. Kelas pada kelas diagram terdiri dari 3 bagian

utama yaitu nama kelas, isi properti dari kelas beserta metode yang ada pada

kelas tersebut. Kelas juga memiliki jenis-jenis hubungan seperti asosiatif,

dependensi, agregasi, komposisi, spesifikasi dan generalisasi. Hubungan ini

digunakan untukmenggambarkan bagaimana hubungan dan interaksi yang

terjadi antar kelas.Masing-masing komponen penyusun kelas memiliki hak

akses seperti public, private, dan protected [14]. Berikut adalah contoh class

diagram :

public class event_games

{

(39)

3. Sequence Diagram

Sequence diagram menjelaskan secara detil urutan proses yang dilakukan

dalam sistem untuk mencapai tujuan dari use case : interaksi yang terjadi

antar class, operasi apa saja yang terlibat, urutan antar operasi dan informasi

yang diperlukan oleh masing-masing operasi [14] :

II.13 Object Relational Mapping (ORM)

Object Relational Mapping adalah salah satu teknik untuk memetakan

basis data relasional ke model objek. Pemetaan dapat dikategorikan menjadi 4,

yaitu [136] :

1. Basic mapping

2. Relationship mapping

3. Composition mapping

4. Inheritance mapping

Berikut adalah contoh gambar ORM dari penjelasan yang telah dijelaskan

sebelumnya.

Gambar II.9 Object Relational Mapping(ORM)

II.14 Location Based Services (LBS)

Location Based Service (LBS) atau layanan berbasis lokasi adalah sebuah

layanan informasi yang dapat diakses dengan perangkat bergerak melalui jaringan

(40)

tersebut. Location Based Service dapat berfungsi sebagai layanan untuk

mengidentifikasi lokasi dari seseorang atau suatu objek tertentu, seperti

menemukan lokasi event games.

II.14.1 Unsur Utama LBS

Berikut adalah dua unsur utama dari Location Based Service, yaitu :

1. Location Manager (API Maps) : Menyediakan perangkat bagi sumber atau source untuk LBS, Application Programming Interface (API) Maps

menyediakan fasilitas untuk menampilkan atau memanipulasi peta. Paket ini berada pada “com.google.android.maps;”.

2. Location Providers (API Location) : Menyediakan teknologi pencarian

lokasi yang digunakan oleh perangkat. API Location berhubungan dengan

data GPS (Global Positioning System) dan data lokasi real-time. API

Locationberada pada paket Android yaitu dalam paket “android.location”.

Lokasi, perpindahan, serta kedekatan dengan lokasi tertentu dapat

ditentukan melalui Location Manager.

II.14.2 Komponen LBS

Terdapat lima komponen pendukung utama dalam teknologi

Layanan Berbasis Lokasi, antara lain :

1. Piranti Mobile, adalah salah satu komponen penting dalam LBS. Piranti ini berfungsi sebagai alat bantu (tools) bagi pengguna untuk meminta

informasi. Hasil dari informasi yang diminta dapat berupa teks, suara,

gambar dan lain sebagainya. Piranti mobile yang dapat digunakan bisa

berupa PDA, smartphone, laptop. Selain itu, piranti mobile dapat juga

berfungsi sebagai alat navigasi di kendaraan seperti halnya alat navigasi

berbasis GPS.

2. Jaringan Komunikasi, Komponen ini berfungsi sebagai jalur penghubung yang dapat mengirimkan data-data yang dikirim oleh

pengguna dari piranti mobile-nya untuk kemudian dikirimkan ke penyedia

layanan dan kemudian hasil permintaan tersebut dikirimkan kembali oleh

(41)

3. Komponen Positioning (Penunjuk Posisi/Lokasi), Setiap layanan yang diberikan oleh penyedia layanan biasanya akan berdasarkan pada posisi

pengguna yang meminta layanan tersebut. Oleh karena itu diperlukan

komponen yang berfungsi sebagai pengolah/pemroses yang akan

menentukan posisi pengguna layanan saat itu. Posisi pengguna tersebut

bisa didapatkan melalui jaringan komunikasi mobile atau juga

menggunakan Global Positioning System (GPS).

4. Penyedia layanan dan aplikasi, merupakan komponen LBS yang memberikan berbagai macam layanan yang bisa digunakan oleh pengguna.

Sebagai contoh ketika pengguna meminta layanan agar bisa tahu posisinya

saat itu, maka aplikasi dan penyedia layanan langsung memproses

permintaan tersebut, mulai dari menghitung dan menentukan posisi

pengguna, menemukan rute jalan, mencari data di Yellow Pages sesuai

dengan permintaan, dan masih banyak lagi yang lainnya.

5. Penyedia data dan konten, Penyedia layanan tidak selalu menyimpan seluruh data dan informasi yang diolahnya. Karena bisa jadi berbagai

macam data dan informasi yang diolah tersebut berasal dari

pengembang/pihak ketiga yang memang memiliki otoritas untuk

menyimpannya. Sebagai contoh basis data geografis dan lokasi bisa saja

berasal dari badan-badan milik pemerintah atau juga data-data

perusahaan/bisnis/industri bisa saja berasal dari Yellow Pages, maupun

perusahaan penyedia data lainnya.

II.14.3 Cara Kerja LBS

Untuk menggambarkan cara kerja LBS pada perangkat lunak yang

akan dibangun pada fitur pencarian lokasi event games dapat dijelaskan

sebagai berikut :

1. Anggaplah sekarang fungsi pencarian telah diaktifkan, posisi pengguna sebenarnya dari perangkat mobile diperoleh dari positioning service. Hal

ini dapat dilakukan baik oleh perangkat menggunakan GPS sendiri atau

(42)

itu perangkat mobile pengguna mengirimkan permintaan informasi, yang

berisi tujuan untuk mencari dan mengirimkan posisi melalui jaringan

komunikasi ke gateway telekomunikasi.

2. Gateway memiliki tugas untuk bertukar pesan di antara jaringan komunikasi selular dan internet. Oleh karena itu dia mengetahui alamat

web dari beberapa aplikasi server dan rute permintaan ke spesifik server

tertentu. Gateway akan menyimpan juga informasi tentang perangkat

mobile yang telah meminta informasi.

3. Aplikasi server membaca permintaan dan mengaktifkan layanan yang terkait.

4. Kemudian service akan menemukan bahwa pengguna membutuhkan

informasi tentang lokasi event games dari database yellow pages pada

wilayah tertentu dan kemudian service tersebut akan meminta penyedia

data untuk memberikan data tersebut.

5. Setelah semua informasi service telah melakukan buffer spasial dan query routing untuk mendapatkan lokasi dari event game tersebut. Setelah itu,

informasi lokasi yang didapat akan dikirim kembali ke pengguna melalui

internet, gateway dan jaringan mobile.

6. Kemudian informasi mengenai lokasi event game akan diterima kepada pengguna dalam bentuk peta digital.

Berikut adalah contoh gambar cara kerja dari LBS seperti yang telah

(43)

Gambar II.12 Cara Kerja Location Based Services (LBS)

II.15 XAMPP

Menurut Bunafit Nugroho (2008 : 2) XAMPP adalah suatu bundel web

server yang populer digunakan untuk coba-coba di Windows karena kemudahan

instalasinya. Bundel program open source tersebut berisi antara lain server web,

Apache, Interpreter PhP, dan basis data MySQL. Setelah menginstall XAMPP,

kita bisa memulai pemrograman PhP di komputer sendiri maupun mencoba

menginstall aplikasi-aplikasi web.

II.16 Sublime Text 3

Sublime Text 3 adalah sebuah syntax editor yang menggunakan Python API

yang biasa digunakan oleh para programmer, khususnya Web Developer. Sublime

Text mempunyai fitur plugin tambahan yang memudahkan. Tak kalah dengan

fitur, desainnya yang simpel dan bagus menjadikan Sublime Text terkesan elegan

untuk sebuah syntax editor. Sublime text mendukung sejumlah bahasa

(44)

II.17 PHP

PHP adalah singkatan dari Hypertext Prepocessor, yaitu sebuah bahasa

pemrograman yang berupa kode atau script yang bisa ditambahkan ke

dalam Bahasa Pemrograman HTML , PHP itu sendiri sering kali digunakan untuk

hal merancang, membuat dan juga memprogram sebuah website. PHP juga sangat

sering digunakan untuk membuat sebuah ataupun beberapa CMS, CMS ialah

sebuah software atau perangkat lunak yang mempunyai kegunaan untuk

memanipulasi semua atau beberapa isi dari sebuah halaman website.

II.18 MySQL

MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL

(Bahasa Inggris: Database Management System) atau DBMS yang multithread,

multi-user, dengan sekitar 6 juta instalasi di seluruh dunia.. MySQL adalah server

database SQL (Structured Query Language) yang paling banyak diminati karena

kecepatan kerja dan kemudahan dalam penggunaannya.

II.19 Pengujian Black Box

Metode pengujian blackbox fokus pada keperluan penelusuran kesalahan

fungsional dari software. Ujicoba blackbox berusaha untuk menemukan kesalahan

dalam beberapa kategori, diantaranya :

1. Fungsi-fungsi yang salah atau hilang

2. Kesalahan interface

3. Kesalahan dalam struktur data atau akses database eksternal

4. Kesalahan performa

5. Kesalahan inisialisasi dan terminasi

Teknik pengujian black box terdiri dari 10 jenis diantaranya Equivalence

Partitioning, Boundary Value Analysis/Limit Testing, Comparison Testing,

Sample Testing, Robustness Testing, Behavior Testing, Requirement Testing,

Performance Testing, Endurance Testing, Cause-Effect Relationship Testing.

(45)

Equivalence partioning merupakan metode ujicoba blackbox yang membagi

domain input dari program menjadi beberapa kelas data dari kasus ujicoba yang

dihasilkan. Kasus uji penanganan single yang ideal menemukan sejumlah

kesalahan (misalnya : kesalahan pemrosesan dari seluruh data karakter) yang

merupakan syarat lain dari suatu kasus yang dieksekusi sebelum kesalahan umum

diamati. Format pengujian blackbox dapat dilihat pada Tabel II.3

II.20 Pengujian Kuesioner

Kuesioner adalah sebuah daftar pernyataan yang harus diisi oleh orang yang

akan dievaluasi (responden) . Metode yang digunakan dalam kuesioner pada

penelitian ini adalah skala Likert. Dalam skala likert, responden diminta untuk

membaca dengan seksama setiap pernyataan yang disajikan, kemudian ia diminta

untuk menilai pernyataan-pernyataan tersebut.

Derajat penilaian responden terhadap suatu pernyataan terbagi dalam 5

kategori yang tersusun secara bertingkat, mulai dari Sangat Tidak Setuju (STS),

Tidak Setuju (TS), Ragu-Ragu (R), Setuju (S), dan Sangat Setuju (SS). Atau

dapat pula sebaliknya. Pernyataan tiap kuesioner dibuat berdasarkan aspek-aspek

yang diteliti. Bobot pemberian skor yang digunakan dapat dilihat pada Tabel II.4

Tabel II.4 Panduan Pemberian Skor

Jenis Pernyataan Bobot pendapat

SS S R TS STS

Positif 5 4 3 2 1

Negatif 1 2 3 4 5

(46)

Skor yang telah dihitung pada setiap pernyataan kemudian dikalikan dengan

masing-masing bobot tersebut sesuai dengan skenario kuesioner yang telah dibuat.

Setelah itu total kan seluruh bobot jawaban tersebut kemudian bagi dengan total

responden yang nantinya menjadi nilai rata-rata. Nilai rata-rata inilah yang

diambil sebagai acuan sikap dimana jika nilai rata-rata kurang dari 3, maka dapat

diartikan responden bersikap negatif dan jika nilai rata-rata lebih dari sama

dengan 3, maka dapat diartikan responden bersikap positif terhadap tujuan yang

(47)
(48)

39 III.1 Analisis Sistem

Analisis sistem bertujuan untuk mengidentifikasikan

permasalahan-permasalahan yang terdapat pada sistem serta menentukan kebutuhan-kebutuhan dari

sistem yang dibangun. Analisis tersebut meliputi analisis masalah, analisis aplikasi

sejenis, analisis arsitektur sistem, analisis kebutuhan non fungsional dan analisis data.

III.1.1 Analisis Masalah

Dalam melakukan pembentukan suatu eSport Team hingga mengikuti

event-event games para gamers dihadapkan kepada beberapa masalah. Masalah-masalah

tersebut diantaranya adalah :

1. Para gamers mengaku kesulitan di dalam mencari informasi gamers lain yang

hendak direkrut atau diajak untuk membentuk eSporTeam.

2. Para gamers mengaku kesulitan di dalam mencari informasi mengenai

event-eventgames yang akan berlangsung.

3. Para gamers mengaku kesulitan mencari lokasi tempat event yang akan diikuti,

khususnya bagi para gamers yang berasal dari luar kota.

III.1.2 Analisis Aplikasi Sejenis

Analisis aplikasi sejenis dimaksudkan untuk menganalisis fungsionalitas dan

alur dari aplikasi yang telah ada. Hal ini bertujuan untuk memilah fungsionalitas dan

alur yang akan diadopsi pada sistem yang diteliti berdasarkan manfaat yang sudah

dihasilkan dari aplikasi yang dianalisis dan mencari uniqueness dari perangkat lunak

yang akan dibangun pada penelitian ini.

Pada penelitian ini belum ada aplikasi sejenis yang memiliki domain dan

platform yang sama yaitu platform mobile, namun ada aplikasi sejenis yang memiliki

Figur

Gambar II.6 GCM Model [13]
Gambar II 6 GCM Model 13 . View in document p.35
Gambar II.7 Aktor
Gambar II 7 Aktor . View in document p.37
Gambar II.8 Use Case
Gambar II 8 Use Case . View in document p.38
Gambar III.1 Screenshoot www.hltv.org
Gambar III 1 Screenshoot www hltv org . View in document p.49
Gambar III.2 Screenshoot www.ligagame.com
Gambar III 2 Screenshoot www ligagame com . View in document p.50
Gambar III.3
Gambar III 3 . View in document p.55
Gambar III.4 Pencarian Gamer Berdasarkan Kategori
Gambar III 4 Pencarian Gamer Berdasarkan Kategori . View in document p.56
Gambar III.5 Pencarian Gamer Berdasarkan Lokasi
Gambar III 5 Pencarian Gamer Berdasarkan Lokasi . View in document p.57
Tabel III.3 User Knowledge and Experience
Tabel III 3 User Knowledge and Experience . View in document p.64
Gambar III.9 Use Case Diagram Web Admin
Gambar III 9 Use Case Diagram Web Admin . View in document p.68
Gambar III.10 Use Case Diagram Mobile User
Gambar III 10 Use Case Diagram Mobile User . View in document p.69
Tabel III.9 Definisi Use Case Diagram web admin
Tabel III 9 Definisi Use Case Diagram web admin . View in document p.70
Tabel III.11 Skenario Use Case Login Admin
Tabel III 11 Skenario Use Case Login Admin . View in document p.72
Tabel III.12 Skenario Use Case Mengelola Data User
Tabel III 12 Skenario Use Case Mengelola Data User . View in document p.73
Tabel III.13 Skenario Use Case Mengelola Data Gamer
Tabel III 13 Skenario Use Case Mengelola Data Gamer . View in document p.75
Tabel III.14 Skenario Use Case Mengelola Data eSport Team
Tabel III 14 Skenario Use Case Mengelola Data eSport Team . View in document p.77
Tabel III.16 Skenario Use Case Mengelola Laporan Event
Tabel III 16 Skenario Use Case Mengelola Laporan Event . View in document p.82
Tabel III.17 Skenario Use Case Login User
Tabel III 17 Skenario Use Case Login User . View in document p.85
Tabel III.19 Skenario Use Case Lupa Password
Tabel III 19 Skenario Use Case Lupa Password . View in document p.87
Tabel III.20 Skenario Use Case Ubah Password
Tabel III 20 Skenario Use Case Ubah Password . View in document p.89
Tabel III.22 Skenario Use Case Mengelola Profile Gamer
Tabel III 22 Skenario Use Case Mengelola Profile Gamer . View in document p.91
Tabel III.24 Skenario Use Case Rekrut Gamer
Tabel III 24 Skenario Use Case Rekrut Gamer . View in document p.94
Tabel III.25 Skenario Use Case Mengelola Profile eSport Team
Tabel III 25 Skenario Use Case Mengelola Profile eSport Team . View in document p.96
Tabel III.26 Skenario Use Case Melihat Detail Profile eSport Team
Tabel III 26 Skenario Use Case Melihat Detail Profile eSport Team . View in document p.98
Tabel III.27 Skenario Use Case Mengelola Event
Tabel III 27 Skenario Use Case Mengelola Event . View in document p.99
Tabel III.28 Skenario Use Case Melihat Detail Event
Tabel III 28 Skenario Use Case Melihat Detail Event . View in document p.100
Tabel III.29 Skenario Use Case Melihat Lokasi Event
Tabel III 29 Skenario Use Case Melihat Lokasi Event . View in document p.100
Gambar III.11 Activity Diagram Login Admin
Gambar III 11 Activity Diagram Login Admin . View in document p.102
Gambar III.12 Activity Diagram Mengelola Data User
Gambar III 12 Activity Diagram Mengelola Data User . View in document p.104
Gambar III.13 Activity Diagram Mengelola Data Gamer
Gambar III 13 Activity Diagram Mengelola Data Gamer . View in document p.106

Referensi

Memperbarui...