• Tidak ada hasil yang ditemukan

APLIKASI BULLETIN BOARD MOBILE belakang BERBASIS masalah, ANDROID

N/A
N/A
Protected

Academic year: 2021

Membagikan "APLIKASI BULLETIN BOARD MOBILE belakang BERBASIS masalah, ANDROID"

Copied!
6
0
0

Teks penuh

(1)

Abstrak - Di era yang semakin modern pemakaian internet sebagai salah satu media telah menjadi salah satu kebutuhan di berbagai kalangan. Tidak hanya sebagai media untuk memperoleh informasi secara cepat dan mudah, internet juga kini telah mulai berkembang menjadi sebuah sistem yang menyediakan perangkat lunak di dalamnya dan bisa di akses oleh pengguna secara mudah.

Aplikasi berbasis web dan berbasis mobile ini bertujuan untuk memberikan informasi kepada masyarakat kampus, sehingga dapat mengetahui perkembangan kampus ataupun perkembangan suatu mata kuliah secara online. Dengan menggunakan aplikasi ini,pengguna dapat mengaksesnya di mana dan kapan saja melalui handphone ataupun laptop.

Uji coba yang dilakukan pada aplikasi tugas akhir ini, bertujuan untuk menunjukkan sinkronisasi antara aplikasi website dan aplikasi mobile yang berjalan di android. Sehingga pengguna yang mengakses menggunakan webiste ataupun menggunakan telepon genggam berbasis android dapat mendapatkan data yang sama.

Kata kunci: Android, Forum, Bulletin Board

1. Pendahuluan

Di era yang semakin modern pemakaian internet sebagai salah satu media telah menjadi salah satu kebutuhan di berbagai kalangan. Tidak hanya sebagai media untuk memperoleh informasi secara cepat dan mudah, internet juga kini telah mulai berkembang menjadi sebuah sistem yang menyediakan perangkat lunak di dalamnya dan bisa di akses oleh user secara mudah.

Dengan kemudahan era internet pada zaman sekarang ini, maka informasi dapat disampaikan dengan lebih mudah, lebih cepat dan dengan biaya yang lebih murah. Oleh karena itu penulis berinisatif membuat aplikasi informasi bulletin board untuk menampilkan info – info atau berita – berita terbaru tentang perkuliahan maupun kegiatan kampus.

Oleh karena itu dengan adanya aplikasi ini dapat membantu mahasiswa maupun dosen untuk dapat mengetahui perkembangan yang terjadi di dalam kampus, walaupun sedang tidak berada di dalam kampus..

Makalah ini terdiri dari beberapa bab yang dijelaskan sebagai berikut.

1. BAB 1, Pendahuluan, menjelaskan latar belakang masalah, tujuan dan manfaat pembuatan tugas akhir, permasalahan, batasan masalah, metodologi yang digunakan, dan sistematika penyusunan tugas akhir.

2. BAB 2, Tinjauan Pustaka, memaparkan beberapa teori penunjang yang berhubungan dengan pokok pembahasan dan mendasari . 2. Dasar Teori

Pada dasar teori ini akan dijelaskan teori – teori yang mendukung dalam pembuatan aplikasi.

2.1 Android

Android merupakan subset perangkat lunak untuk ponsel yang meliputi sistem operasi, middleware dan aplikasi kunci yang di release oleh Google. Saat ini disediakan Android SDK (software Development kit) sebagai alat bantu dan API diperlukan untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java.

2.2 Koneksi HTTP

Koneksi HTTP merupakan salah satu fitur yang diusung Android. Dengan fitur ini, aplikasi berbasis Android dapat terkoneksi ke web server untuk saling berkomunikasi. Koneksi HTTP memiliki 2 macam metode request, GET dan POST.[1]

• Metode Get

Dengan menggunakan metode GET, HTTP Client bisa mengambil informasi dari server dengan mengirimkan data melalui URI walaupun bisa juga dengan form yang menggunakan metode GET yang mana ujung - ujungnya duit data tersebut tetap dikirimkan juga melalui URL.

Hasil dari permintaan dengan metode GET dapat bersifat cacheable. Dan metode GET juga memiliki kondisional Modified-Since, If-Unmodified-Since, If-Match, If-None-Match, ataupun If-Range yang ditujukan untuk menentukan apakah hasil dari permintaan HTTP Client akan diberikan server atau tidak. Ini bertujuan untuk mengurangi trafik antara HTTP Client dan Server yang mana jika hasil permintaan hasil permintaan tersebut sudah pernah ada di HTTP Client (sudah pernah diminta sebelumnya) maka HTTP Server tidak lagi memberikan permintaan tersebut.

• Metode Post

Metode POST digunakan untuk mengirimkan data dari HTTP Client untuk diproses di HTTP Server, kemudian HTTP server memberikan hasil dari proses tersebut ke HTTP Client. Data yang dikirimkan dengan metode POST disertakan pada baris permintaan (body of request) bukan pada URI. Dan hasil dari permintaan dengan metode POST ini tidak bersifat cacheable.

APLIKASI BULLETIN BOARD MOBILE BERBASIS ANDROID

Arya Pradana, Ary Mazharuddin S. S.Kom, M.Comp.Sc

Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember

(2)

2.3 JSON (JavaScript Object Notation)

JSON merupakan metode pertukaran data berupa text-based, dan memiliki format yang mudah dibaca. JSON memiliki penggunaan yang sama dengan XML, tetapi dengan metode penulisan yang berbeda.

Penggunaan JSON secara umum terdiri dari fungsi encode dan decode. Contoh penggunaan sintaks encode pada metode JSON dapat dilihat pada Gambar 2.1, sedangkan hasil keluaran dari sintaks tersebut dapat dilihat pada Gambar 2.2.

Untuk sintaks JSON pada proses decode dapat dilihat pada Gambar 2.3, dan hasil keluaran dari proses decode tersebut dapat dilihat pada Gambar 2.4.

Penulis menggunakan metode JSON dalam pengiriman data yang dilakukan, karena JSON memiliki beberapa kelebihan – kelebihan dibandingkan XML, kelebihan – kelebihan tersebut adalah

• Format Penulisan.

Untuk merepresentasikan sebuah struktur data yang rumit dan berbentuk hirarkis penulisan JSON relatif lebih terstruktur dan mudah.

• Ukuran.

Ukuran karakter yang dibutuhkan JSON lebih kecil dibandingkan XML untuk data yang sama. Hal ini tentu berpengaruh pula pada kecepatan pertukaran data, walaupun tidak signifikan untuk data yang kecil, namun cukup berarti jika koneksi yang digunakan relatif lambat untuk mengakses aplikasi web kaya fitur yang

memanfaatkan pertukaran data. Di sini JSON lebih unggul dibandingkan XML, kecuali jika data dikompresi terlebih dahulu sebelum dikirimkan, perbedaan JSON dan XML yang telah dikompresi tidaklah signifikan.

• Browser Parsing.

Proses parsing merupakan proses pengenalan token atau bagian-bagian kecil dalam rangkaian dokumen XML/JSON. Contohnya, terdapat data text dalam format JSON. Data tersebut harus di-parsing terlebih dahulu sebelum dapat diakses dan dimanipulasi. Browser parsing berarti proses parsing yang terjadi pada sisi client/browser.

Melakukan browser parsing pada JSON lebih sederhana dibandingkan pada XML, JSON menggunakan function JavaScript eval() untuk melakukan parsing. Sementara dokumen XML di-parsing oleh XMLHttpRequest. Rata-rata survei menobatkan JSON sebagai pemenang jika diadu kecepatan parsingnya.

3. Metodologi

Pada metodologi ini akan dijelaskan dasar – dasar perancangan aplikasi.

3.1 Arsitektur Sistem

Pada Gambar 3.1 merupakan arsitektur website bulletin board. Proses yang dilakukan, pengguna mengakses website yang terdapat pada web server. Jika terjadi request untuk mengakses database, maka web server akan meneruskannya kepada server database yang menggunakan MySql dan menampilkan hasilnya pada website yang diakses oleh pengguna.

Gambar 3.1 Arsitektur Website

Sedangkan bentuk arsitektur aplikasi bulletin board pada telepon genggam, dapat dilihat pada Gambar 3.2. Pada telepon genggam berbasis android, telah diinstal aplikasi klien untuk menampilkan data – data yang terdapat pada database. Sebagai penjembatan antara aplikasi klien dan dan database, penulis menggunakan perantara file .php yang terdapat pada web server.

Gambar 3.2 Arsitektur Aplikasi Mobile Di dalam web server dibedakan menjadi dua folder, yaitu folder pertama berisi file – file html dan php yang berfungsi untuk menampilkan website. Folder kedua berisi file – file php yang berfungsi untuk menangkap request dari aplikasi java dan berfungsi untuk memberikan response <?php

$arr = array ('a'=>1,'b'=>2,'c'=>3,'d' =>4,'e'=>5);

echo json_encode($arr); ?>

Gambar 2.1 Sintaks Encode JSON[2] {"a":1,"b":2,"c":3,"d":4,"e":5}

Gambar 2.2 Hasil Encode JSON[2]

<?php

$json = '{"foo-bar": 12345}'; $obj = json_decode($json); print $obj->{'foo-bar'}; ?>

Gambar 2.3 Sintaks Decode JSON[2] 12345

(3)

kepada aplikasi java. Selain itu file php tersebut merupakan penjembatan antara database MySql dengan aplikasi java.

Untuk request dan response data yang cukup banyak, maka digunakanlah komunikasi data JSON. Data dari web server diolah ke dalam php sehingga membentuk suatu obyek, kemudian obyek tersebut diencode dan dikirimkan kepada aplikasi java. Oleh aplikasi java, response yang diberikan oleh web server didecode menjadi suatu obyek yang nantinya dapat diproses ke dalam aplikasi.

3.2 Struktur Database

Pada model data konseptual terdapat 3 tabel, yaitu tabel hak akses, tabel user dan tabel thread. Tabel tersebut dapat dilihat pada Gambar 3.3.

Gambar 3.3 CDM Bulletin Board 3.3 Struktur Tabel

Berikut ini merupakan struktur tabel serta keterangan masing masing tabel dan field yang ada pada database.

1. Pada tabel 3-1, merupakan tabel hakakses, berisi tipe akses yang dapat dimiliki oleh user. Ada dua tipe akses yang dimiliki oleh user, yaitu sebagai mahasiswa dan sebagai dosen. Dalam pengembangannya nanti, tipe akses dapat ditambahkan sesuai dengan kebutuhan.

Tabel 3-1 Tabel hakakses Nama Tipe

Data

Lebar Keterangan

id_akses integer - Primary key jabatan varchar 20 Tipe akses

2. Tabel 3-2 merupakan tabel user, berisi data data user yang terdiri dari nama, username, password dan previlage atau hak akses. Tabel ini berfungsi sebagai untuk menyimpan database pengguna.

Tabel 3-2 Tabel user

Nama Tipe Data Lebar Keterangan id_user integer - Primary key username varchar 100 Username password varchar 100 Password previlage integer - Tipe hak akses nama varchar 100 Nama user

3. Tabel 3-3 merupakan tabel thread, merupakan tabel utama yang memproses sehingga dapat tercipta mini forum yang dinamis.

Tabel 3-3 Tabel thread Nama Tipe

Data

Lebar Keterangan Postid integer - Primary key Author varchar 255 Nama user

Tittle varchar 255 Judul posting Post text 255 Isi posting Showtime varchar 255 Waktu posting

Realtime integer - Waktu dalam microsecond Lastposter varchar 255 User yang

memposting terakhir Numreplies integer - Jumlah suatu

topik dibalas Parentid integer - Id parent Lastrepliedto integer - Balasan terakhir

3.3 Use Case Sistem

Pada use case seperti pada Gambar 3.4, pengguna di bedakan menjadi dua. Yaitu dosen dan mahasiswa. Namun keduanya memiliki hak – hak yang sama. Tidak ada perbedaan antara keduanya.

Gambar 3.4 Use Case Sistem 4. Implementasi Sistem

Salah satu implementasi sistem adalah mengirimkan data dari database, kepada aplikasi mobile dengan menggunakan metode JSON untuk

(4)

memudahkan pengiriman dan pembacaan data. Implementasinya dapat dilihat pada Gambar 4.1.

Setelah itu, salah satu implementasi sistem adalah melakukan koneksi dari aplikasi mobile kepada web server. Pseudocode dari implementasi tersebut dapat dilihat pada Gambar 4.2.

Setelah koneksi berhasil dilakukan, untuk menampilkan daftar thread yang terdapat pada database, menggunakan fungsi seperti pada gambar 4.3.

5. Uji Coba dan Evaluasi

Pada bagian ini akan dibahas mengenai uji coba dan evaluasi perangkat lunak. Perangkat lunak ini diuji coba dari segi fungsionalitas performa dan kompabilitas ketika dijalankan.

5.1 Uji Coba Fungsionalitas

Uji coba ini di lakukan untuk melihat apakah fungsi fungsi dasar dari perangkat lunak ini berjalan seperti yang di harapkan atau tidak. Uji coba fungsionalitas ini dilakukan pada aplikasi mobile.

Pada Gambar 5.1, merupakan gambar uji coba untuk melihat daftar thread yang ada di dalam database.

Gambar 5.1 Tampilan Daftar Thread

Pada tampilan daftar thread di Gambar 5.1, pengguna dapat melihat isi dari thread yang ada, serta dapat membuat thread baru. Untuk melakukannya, tekan tombol menu, lalu pilih menu “Post”, maka akan keluar tampilan seperti pada Gambar 5.2.

Gambar 5.2 Tampilan Posting Thread

Setelah melakukan posting, maka tampilan yang keluar dapat dilihat pada Gambar 5.3

begin

create HttpClient; var HttpRequest = null; var responstream = null; var responstring = null; if requestMethod == PostMethod then HttpRequest = create HttpPost; if httpRequest != null

then encodePostParameter if requestMethod == GetMethod then httpRequest = create HttpGet if httpRequest != null

response = execute httpRequest if response != null

responsetream = response getContent responsestring = generate responseString return responsestring

finish

Gambar 4.2 Pseudocode Koneksi

begin;

createJsonArray(response); getIndex;

for i=0 until i<getIndex HashMap temp;

JSONObject data = JSONArray.GetObject(i); InputList(data);

endfor finish

Gambar 4.3 Menampilkan List Thread begin;

var getquery;

var response = array;

while getquery = runQuery query array[title] = getquery2[title]; array[author] = getquery2[author]; array[postid] = getquery2[postid]; array[showtime]=getquery2[showtime] ;

response[] = object array; endwhile;

json_encode response; finish;

(5)

Gambar 5.3 Tampilan Hasil Posting

Untuk selanjutnya, menu yang akan dicoba adalah menu untuk melihat daftar balasan yang terdapat pada suatu thread. Untuk masuk ke daftar balasan, pengguna dapat mengklik pada thread yang diinginkan. Setelah thread diklik maka akan keluar tampilan seperti pada Gambar 5.4.

Gambar 5.4 Tampilan Daftar Balasan

Pada Gambar 5.4 dapat dilihat bahwa belum ada balasan yang dilakukan pada thread sistem digital. Jika ingin melakukan balasan, pengguna dapat mengklik pada menu “Reply”. Tampilan yang keluar setelah menu tersebut diklik dapat dilihat pada Gambar 5.5.

Gambar 5.5 Tampilan Reply Conversation

Setelah dilakukan posting maka tampilan yang terjadi dapat dilihat pada Gambar 5.6.

Gambar 5.6 Hasil Reply Thread 5.2 Uji coba performa

Uji coba performa di lakukan untuk mengetahui kecepatan perangkat lunak dalam mengatasi banyaknya request dalam satuan waktu yang di lakukan secara bersamaan dan dalam jumlah tertentu. Kecepatan perangkat lunak mulai di ukur ketika request di kirim sampai halaman peta dapat tampil secara penuh. Dalam uji coba ini obyek yang di gunakan adalah halaman daftar index, sehingga nanti di ketahui berapa waktu yang di butuhkan untuk menampilkan sebuah halaman daftar index thread.

Percobaan yang di lakukan menggunakan tools yang di sebut apache benchmark. Adapun dalam apache benchmark sintaks yang di gunakan

adalah sebagai berikut :

Pada Gambar 5.7 di jelaskan bahwa ab adalah singkatan dari Apache Benchmark. -c 20 adalah jumlah concurrent connection, sebanyak 20 koneksi secara bersamaan, -n 1000 adalah jumlah request yang mau dikirim, sebanyak 1000 request..

Tabel 5-1 Hasil Percobaan Apache Benchmark Request Concurency Request/Second Transfer

Rate 1000 10 21,80 10,20 kb/sec 1000 20 22,07 10,32 kb/sec 1000 50 20,91 9,78 kb/sec 1000 90 22,34 10,45 kb/sec 1000 100 19,12 8,94 kb/sec ab -n 50 –c 1000 [halaman yang ingin

(6)

Tabel 5-2 Hasil Percobaan Apache Benchmark Request Concurency Request/Second Transfer

Rate 500 10 22,04 10,31 kb/sec 500 20 22,47 10,51 kb/sec 500 50 19,08 8,92 kb/sec 500 90 22.24 10,40 kb/sec 500 100 21,89 10,24 kb/sec

Pada Tabel 5-1 dapat dilihat penulis menggunakan jumlah request yang tetap, sebanyak 1000 request dengan jumlah konkurensi yang berbeda – beda. Sedangkan dari Tabel 5-2, penulis menggunakan jumlah request 500, dan jumlah konkurensi yang berbeda – beda. Dari kedua percobaan tersebut, dapat ditarik kesimpulan, bahwa jumlah request per second selain dipengaruhi oleh transfer rate, juga dipengaruhi oleh konkurensi dan jumlah request yang dikirimkin. Transfer rate sendiri, dipengaruhi oleh kemampuan web server dalam mengirimkan respon, serta kemampuan jaringan internet dalam menangkap respon.

5.3 Uji Coba Kompabilitas

Pada Gambar 5.8 merupakan spesifikasi telepon genggam yang digunakan untuk melakukan uji coba kompabilitas.

Gambar 5.8 Spesifikasi Telepon Genggam Hasil dari uji coba dari berbagai macam telepon genggam yang digunakan, dapat dilihat pada Gambar 5.9.

Gambar 5.9 Hasil Uji Coba 6. Kesimpulan

Dari hasil pengamatan selama perancangan, implementasi perangkat lunak

yang dilakukan, dapat diambil simpulan sebagai berikut :

1. Koneksi antara web server dan aplikasi mobile di android telah berhasil diimplementasikan dengan menggunakan metode http request dan response

2. Metode pengiriman data yang digunakan dalam pengiriman data dari web server ke aplikasi mobile di android menggunakan metode JSON

3. Antar muka dalam aplikasi android telah dapat diimplementasikan dengan menggunakan software droidraw.

7. Daftar Pustaka

[1] Robertus Lilik Haryanto, 2010, Pengiriman Data GET/POST Pada Koneksi HTTP

<URL :

[2] JSON, PHP team, 2001-2010, JSON Book

Manual, <URL : diakses 15 Desember 2010>

[3] Peter. 2008. ab apache benchmark. <URL : 2011>

Gambar

Gambar 3.1 Arsitektur Website
Gambar 3.3 CDM Bulletin Board
Gambar 5.1 Tampilan Daftar Thread
Gambar 5.3 Tampilan Hasil Posting
+2

Referensi

Dokumen terkait

Hasil yang dicapai dari penelitian ini adalah aplikasi kamus penyakit dalam berbasis mobile android yang berisi tentang nama-nama penyakit dalam

Aplikasi pembelajaran kaidah bahasa jawa berbasis android mobile telah selesai dibangun dengan menggunakan eclipse bundle ADT yang bertujuan untuk menumbuhkan minat

sebuah layanan (service) yang mengijinkan aplikasi untuk mengirimkan data dari server kepada pengguna Android, dan juga menerima pesan dari perangkat pada koneksi yang

Berdasarkan hasil persentasi perhitungan pengujian beta pengguna aplikasi Keuskupan mobile, maka dapat disimpulkan bahwa pembangunan aplikasi Keuskupan mobile

Batasan masalah yang digunakan dalam penelitian ini adalah : 1) Aplikasi yang dibangun berbasis android. 2) Web Service aplikasi ini menggunakan JSON. 3) Pengolahan data

Dalam penelitian ini, penulis melakukan pengembangan aplikasi mobile android yang dapat digunakan oleh dosen untuk melakukan pembatalan jadwal kuliah, dan dalam

Abstrak : Penelitian ini bertujuan untuk membangun reservasi aplikasi menu restoran berbasis web dan mobile android yang dapat menangani menu pemesanan oleh

Berdasarkan penegasan istilah yang telah diuraikan, maka dapat disimpulkan bahwa aplikasi mobile learning panduan PMR berbasis android merupakan sebuah aplikasi yang