Anda di halaman 1dari 27

Rancang Bangun Aplikasi Komunikasi Guru dan Orang

Tua Murid Sekolah Dasar Berbasis Android


(Studi Kasus: Harapan Bangsa School Balikpapan)

Artikel Ilmiah

Peneliti:
Christian Mensana (672012068)
Christine Dewi, S.Kom., M.Cs.

Program Studi Teknik Informatika


Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
2017
Rancang Bangun Aplikasi Komunikasi Guru dan Orang
Tua Murid Sekolah Dasar Berbasis Android
(Studi Kasus: Harapan Bangsa School Balikpapan)

Artikel Ilmiah

Diajukan kepada
Fakultas Teknologi Informasi
Untuk memperoleh Gelar Sarjana Komputer

Peneliti:
Christian Mensana (672012068)
Christine Dewi, S.Kom., M.Cs.

Program Studi Teknik Informatika


Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
2017

i
ii
iii
iv
v
vi
1. Pendahuluan
Sekolah merupakan sebuah lembaga formal yang dirancang untuk
pengajaran siswa atau murid di bawah pengawasan guru. Sekolah mempunyai visi
dan misi yang jelas sebagai suatu lembaga dalam dunia pendidikan. Sekolah
Dasar Kristen Harapan Bangsa Balikpapan, Yayasan Tunas Cahaya Bangsa,
memiliki murid yang berjumlah 383 orang dengan jumlah guru 38 orang pada 18
kelas dari 1 A-C sampai kelas 6 A-C pada tahun ajaran tahun 2016, mempunyai
visi agar kelak lulusannya tidak hanya memiliki kepandaian namun juga karakter
yang luar biasa baik secara kepandaian intelegensi maupun rohani [1].
Aktivitas orang tua yang padat menjadi salah satu alasan kurangnya
pengawasan terhadap anak ketika berada disekolah. Orang tua cenderung
mempercayakan pengawasan anaknya langsung kepada guru, Namun setelah
keluar ruang kelas, tanggungjawab terhadap anak sudah berada di orang tua.
Menurut data melalui hasil wawancara dengan Alexandra Melissa Petrusz, S.Psi
selaku Kepala Sekolah Dasar Kristen (SDK) Harapan Bangsa Balikpapan, sistem
komunikasi antara guru dengan orang tua murid yang selama ini sudah dilakukan
melalui website, namun memerlukan langkah yang panjang ketika orang tua harus
mengaksesnya untuk melihat hasil penilaian mingguan anak, sehingga banyak dari
orang tua menjadi malas untuk mengaksesnya karena sulit dalam
mengoperasikannya untuk mengakses informasi yang disebabkan oleh sistem
yang rumit dan ditambah dengan orang tua yang awam dalam menggunakan
website. Hal serupa juga terjadi dengan media komunikasi melalui buku agenda
informasi yang disampaikan dari murid ke orang tua, beberapa dari orang tua saat
ditemui mengaku tidak melakukan pemeriksaan kepada agenda yang dibawa oleh
siswa selepas pulang sekolah dikarenakan lupa dan padat aktivitas lain, kejadian
seperti ini ditemui sekitar 4-5 kali dalam seminggu. Akibatnya kontrol orang tua
terhadap anaknya menjadi kurang yang mengakibatkan salah satu contohnya
adalah siswa tidak membawa barang yang sudah di infokan sebelumnya dan orang
tua tidak mengetahui informasi apa saja yang disampaikan disekolah.
Pada era globalisasi, teknologi sudah bukan lagi hal yang asing untuk
didengar dan digunakan, hampir seluruh manusia menggunakan teknologi
terkhusus teknologi mobile. Teknologi mobile hadir untuk mempermudah
aktivitas manusia terkhusus dalam melakukan komunikasi dan menginformasikan
suatu agenda. Salah satu sistem operasi mobile yang sedang berkembang saat ini
adalah android. Android merupakan sistem operasi bergerak (mobile) yang
menggunakan versi modifikasi dari kernel Linux. Sistem ini memiliki berbagai
keunggulan sebagai software berbasis kode komputer yang bisa didistribusikan
secara terbuka (open source), sehingga programmer bisa membuat aplikasi baru
didalamnya [2].
Data dari www.statcounter.com pengguna Sistem Operasi Android di
Indonesia pada Januari 2016 sampai dengan Desember 2016 akhir sangatlah
mendominasi. Hal ini dapat dilihat pada Gambar 1.

1
Gambar 1. Grafik penggunaan sistem operasi tahun 2016 [12]

Berdasarkan latar belakang yang telah dijelaskan, maka yang menjadi


rumusan masalah pada penelitian ini adalah mengenai pengimplementasian
teknologi Firebase Cloud Messaging (FCM) Service dalam pengiriman Push
Notification pada aplikasi mobile untuk menyampaikan notification message yang
dikirimkan dari guru kepada orang tua murid. Notification message yang
dikirimkan merupakan pengiriman informasi mulai dari weekly report siswa,
pengumuman atau agenda penting siswa yang dikirimkan akan diterima oleh
Android device. Penelitian ini terfokus pada pengembangan teknologi FCM dari
aplikasi web yang digunakan oleh guru dan aplikasi berbasis mobile yang
digunakan oleh orangtua untuk menerima pesan notifikasi guna menjawab
permasalahan. Sehingga dengan adanya hasil dari penelitian ini yang berupa
sistem aplikasi diharapkan dapat mempermudah orang tua dalam memonitori
anaknya ketika berada di ruang kelas di sela-sela kesibukan orang tua dalam
aktivitasnya.

2. Kajian Pustaka
Pada penelitian yang berjudul Rancang Bangun Aplikasi Notifikasi
Berbasis Android untuk Mendukung Kinerja di Instansi Pemerintahan, dibahas
bahwa penelitian ini bertujuan untuk membuat sebuah aplikasi yang dapat
menjadi media dalam penyampaian informasi kepada semua pegawai secara
otomatis dengan menggunakan teknologi Google Cloud Messaging (GCM).
Hasilnya aplikasi notifikasi ini dapat berjalan dengan baik dengan menggunakan
sistem client server [4].
Pada penelitian lainnya yang berjudul Pembuatan Aplikasi Mobile
Broadcast Informasi Perkuliahan Berbasis Android, dibahas mengenai pentingnya
informasi perkuliahan yang update untuk mahasiswa, update kalender perkuliahan
dan berdiskusi dari jarak jauh. penelitian tersebut menghasilkan sebuah aplikasi
mobile broadcast informasi perkuliahan yang dapat diterima oleh mahasiswa

2
secara real time dan mudah dengan menggunakan memanfaatkan teknologi
Google Cloud Messaging (GCM) [7].
Mengacu pada kedua penelitian tersebut, maka penelitian yang akan
dilakukan dibangun dengan menggunakan teknologi Firebase Cloud Messaging
(FCM) pada perangkat mobile android yang merupakan pegembangan lebih lanjut
dari teknologi Google Cloud Messaging (GCM). Penelitian yang akan dilakukan
juga dilakukan pada lingkup instansi pendidikan, yaitu Sekolah Dasar.
Firebase Cloud Messaging (FCM) adalah versi baru dari Google Cloud
Messaging (GCM) dibawah merek Firebase. Versi baru ini mewarisi infrastruktur
inti GCM yang dapat membantu para pengguna dalam mengirimkan data
informasi berupa pesan singkat (notification message) dari server ke perangkat
mobile android ataupun iOS. FCM memberikan kemudahan kepada para
pengguna dalam menyampaikan pesan dan pemberitahuan dengan terpercaya
tanpa biaya serta tidak terikat besarnya suatu pesan yang dikirimkan dan
penyampaian pesan yang dikirimkan oleh FCM dapat diterima secara realtime.
Pengguna pelayanan dari FCM dapat menghemat penggunaan baterai dan device
Android dikarenakan penggunaan aplikasi yang memanfaatkan teknologi FCM
tidak perlu dalam keadaan running. FCM servis akan mengatur setiap pesan yang
dikirimkan agar sesuai dengan penerima pesan (reciever) perangkat mobile
Android [5].
FCM memiliki dua konsep utama yaitu components dan credentials.
comiponents adalah sebuah entitas yang memiliki peran utama dalam FCM.
Credentials merupakan ID dan token dari setiap perangkat Android yang
digunakan oleh FCM sebagai autentikasi dan alamat pengiriman pesan untuk
memastikan bahwa pesan yang dikirim sampai pada perangkat Android yang
dituju.
Pengimplementasian dari Firebase Cloud Messaging (FCM) terdapat
beberapa bagian yang terlibat yaitu Notification Console GUI, Application server
yang menghubungkan dengan Firebase Cloud Messaging Cloud Connection
Server (CCS), dan Client app. Arsitektur dari FCM dapat dilihat pada Gambar 2.

Gambar 2. Arsitektur Firebase Cloud Messaging [5]


Google menyediakan Firebase Cloud Messaging server yang akan
berfungsi untuk menerima pesan dari application server dan mengirimkan pesan
tersebut pada aplikasi yang sudah terpasang pada perangkat android yang
berperan sebagai Client app. Connection server yang disediakan oleh Google

3
untuk saat ini adalah HyperText Transfer Protocol (HTTP) dan Extensible
Messaging and Presence Pprotocol (XMPP). selain itu, FCM menyertakan konsol
notifications, yang dapat digunakan untuk mengirim pemberitahuan ke aplikasi
klien melalui konsol tersebut.

3. Metode dan Perancangan Sistem


Pada penelitian ini, ada beberapa tahapan yang dilakukan secara berkaitan.
Berikut ini merupakan tahapan penelitian dalam Gambar 3.

Analisa Kebutuhan dan Pengumpulan Data

Perancangan sistem meliputi


perancanganDatabase dan perancangan
Arsitektur

Perancangan Aplikasi/ Program

Implementasi dan Pengujian Sistem, serta


Analisis Hasil Pengujian

Penulisan Laporan Hasil Penelitian

Gambar 3. Tahapan Penelitian [10]

Berdasarkan Gambar 3, tahapan pertama adalah Analisa Kebutuhan dan


Pengumpulan Data. Analisa Kebutuhan dilakukan untuk dapat mengetahui tujuan
dan sasaran dari penelitian ini. Analisa Kebutuhan dilakukan dengan metode
wawancara terkait media komunikasi yang telah dilakukan selama ini antara orang
tua dengan guru. Wawancara dilakukan dengan Kepala Yayasan, Kepala Sekolah
Dasar Kristen (SDK) Harapan Bangsa, Balikpapan melaui forum rapat. Hasil dari
wawancara tersebut kemudian dianalisis, dan hasil yang didapatkan dari analisis
ditemukan bahwa media komunikasi yang selama ini menggunakan website
(http://www.harapanbangsaschool.sch.id/) dirasa masih kurang. Kekurangan yang
dimaksud adalah seperti akses masuk yang cukup rumit dari user (orang tua)
sehingga orang tua cenderung malas untuk mengakses web tersebut untuk melihat
informasi selain itu juga masih minimnya orangtua yang paham dalam
menjalankan website tersebut, hal ini membuat komunikasi antara pihak sekolah

4
dengan orangtua belum maksimal. Kemudian dalam tahap ini juga dilakukan
perumusan masalah. Rumusan masalah dibuat berdasarkan penelitian yang akan
dilakukan untuk menyelesaikan masalah yang telah diidentifikasi sebelumnya.
Penelitian yang dilakukan adalah perancangan sebuah aplikasi komunikasi untuk
sekolah dengan orang tua, oleh sebab itu perumusan masalah dari penelitian ini
adalah bagaimana cara merancang sebuah aplikasi komunikasi yang dapat
mempermudah komunikasi antara pihak sekolah dengan orang tua murid dalam
hal reporting maupun announcement. Selanjutnya adalah penelusuran pustaka.
Penelusuran pustaka dilakukan pencarian pustaka yang berkaitan dengan
penelitian yang akan dilakukan, hal ini dilakukan untuk memudahkan penelitian
karena dapat dijadikan sebagai referensi dan dapat dilakukan pemanfaatan
kekurangan dan saran yang ada pada penelitian terdahulu, selain itu juga untuk
menghindari adanya duplikasi penelitian yang sama.
Pada tahapan berikutnya yaitu pengumpulan data yang nantinya akan
diolah. Data yang dikumpulkan melalui data primer dan sekunder. Data primer
didapat melalui wawancara dengan Kepala Yayasan Tunas Cahaya Bangsa,
Kepala Sekolah Dasar Kristen (SDK) Harapan Bangsa terkait hal-hal yang
diperlukan untuk menjawab permasalahan, dan data mengenai fitur-fitur
pendukung yang diperlukan untuk sistem nantinya. Data sekunder didapatkan
melalui data yang diberikan dari pihak sekolah terkait data persebaran siswa tiap
kelas dan jumlahnya. Adapun data lainnya yang berupa alur bisnis proses
penyampaian weekly report dan pengumuman agenda yang digambarkan melalui
flowchart seperti yang ada pada Gambar 4 dan Gambar 5.

Gambar 4. Flowchart Weekly Report Gambar 5. Flowchart Pengumuman

5
Setelah melakukan analisis dan pengumpulan data, tahapan selanjutnya
adalah perancangan sistem. Perancangan sistem ini dilakukan dengan
menyesuaikan dari data-data yang telah didapatkan sebelumnya. Adapun metode
yang digunakan dalam tahapan Perancangan sistem ini adalah dengan
menggunakan metode prototype model. Metode prototype model dipilih karena
metode ini dapat melakukan interaksi yang baik dengan pengguna untuk
mengetahui kebutuhan yang diperlukan, dan dapat sekaligus melakukan evaluasi
prototype secara berkala oleh pengguna hingga tercapainya kesepakatan. Secara
ideal, Prototype Model akan berfungsi sebagai sebuah mekanisme untuk
mengidentifikasi kebutuhan perangkat lunak, dan developer dapat menggunakan
tools atau alat yang ada untuk membangun aplikasi dengan lebih cepat [6].

Gambar 6. Prototype Model [6]

Tahapan pertama pada Prototype Model adalah listen to customer, pada


tahapan ini dilakukan analisis untuk mengetahui kebutuhan dari pengguna sistem
yang akan dibuat. Pengguna sistem dibagi menjadi 2 bagian, yaitu orangtua
sebagai user dan pihak sekolah sebagai admin. Metode pengambilan data diambil
dengan tahap wawancara kepada kepala sekolah SDK Harapan Bangsa, kepala
yayasan, dan beberapa staff yang terlibat pada saat rapat tanggal 11 November
2016 dan analisis melalui data sekunder yang didapatkan dari data disekolah
tersebut dan jurnal-jurnal yang mendukung akan kebutuhan user. Hasil analisis
yang telah didapatkan untuk admin nantinya adalah sebuah sistem yang dapat
menginformasikan segala agenda, maupun weekly report dengan mudah kepada
orang tua tanpa proses yang panjang, selain itu juga dapat berkomunikasi secara 4
mata tanpa group diskusi serta tanpa harus mengakses atau memberikan nomor
handphone guru kepada orangtua. Sedangkan untuk user sendiri membutuhkan
sebuah sistem yang dapat memberikan informasi secara mudah dengan notifikasi
seperti media sosial facebook, informasi seperti agenda dan weekly report dapat
diterima real time service dan juga akses yang tidak rumit serta handy dan
fleksibel untuk orangtua. Dalam pembangunan sistem, proses ini dilakukan
sampai prototype 2 yaitu: 1) prototype 1 berupa sistem admin yang dapat
mengelola data registrasi, data nilai, dan pengiriman announcement dan weekly
report (insert, update, dan delete). 2) prototype 2 berupa sistem user pada android

6
tentang penerimaan notifikasi yang dikirimkan melalui web server. 3) dan
prototype 3 berupa sistem yang dibangun sudah sesuai dengan kebutuhan sekolah.
Setelah tahap listen to customer selesai, maka tahap selanjutnya adalah
build/ revise mock-up. Tahapan ini meliputi perancangan sistem dan implementasi
sistem. Perancangan sistem dilakukan dengan menggunakan diagram Unified
Modeling Language (UML) yang terdiri dari usecase diagram, class diagram,
activity diagram untuk pembuatan desain sistem, dan menggunakan bahasa
pemrograman Hypertext Markup Language (HTML), Personal Home Page
(PHP), Cascading Style Sheets (CSS) dengan menggunakan database MySQL,
library dari Firebase Cloud Messaging (FCM) untuk bagian notifikasi pada
android. tahap pengujian atau Customer Test-drives mock-up nantinya akan
dilakukan uji coba dengan beberapa sampling pada pihak terkait seperti guru,
orangtua, dan kepala sekolah.

Delete_acc Update_acc

<<extend>>
<<extend>>

<<extend>> <<include>>
View_acc
Regist_acc

Manage_registration

<<extend>> Logout create_announcement


<<extend>> send_announ Parent
<<extend>>
<<extend>>
<<extend>>

<<extend>> Manage_Announcement
admin_panel receiv e_notif ication
Admin

<<extend>>
<<extend>>
Manage_weekly report
v iew_log
manage_log send_weeklureport
<<extend>>

<<extend>>
<<extend>> <<extend>>
Manage_reportf orm delete_log
conv ert_f orm
<<extend>>
<<extend>> <<extend>> Delete_nilai

create_weekly report

f ilter_f orm
Update_f orm Insert_nilai

Gambar 7. Use Case Diagram Aplikasi

Gambar 7 menunjukan use case diagram aplikasi admin dan


user/orangtua. Pada use case tersebut menunjukan hal apa saja yang dapat
dilakukan oleh admin dan user. Admin dapat melakukan pengelolaan seperti
menambah, menghapus, melakukan filter hingga melakukan pengiriman terhadap
akun orangtua yang teregistrasi, pendataan report form, pendataan log history,
pengiriman pengumuman dan weekly report. Sedangkan user dapat menerima
pesan pengumuman atau weekly report yang dikirimkan dari web server ke device
android.

7
Activity diagram merupakan gambaran mengenai logika prosedur dan
proses bisnis dari aplikasi yang dibuat dari awal sampai akhir.

Guru Orangtua Sistem Database FCM

Start

memilih menu menampilkan menu


create_announcement Form_Announcement

mengisi
Form_Announcement

memproses meyimpan Form


Form yang diisi data di database

memilih alamat tujuan


device by email

request pengiriman ke load data dari


email yang dipilih database

mengirimkan
ke alamat

mengirimkan
notifikasi

menerima menampilkan
notifikasi masuk notifikasi dari FCM

End

Gambar 8. Activity Diagram pengiriman pengumuman

Pada aktivitas proses Gambar 8 yaitu mengirimkan pengumuman kepada


orangtua, aplikasi ini melibatkan guru, orangtua, sistem, database, dan FCM.
Proses dilakukan dengan guru setelah melakukan login, kemudian memilih menu
membuat pengumuman, sistem akan menampilkan sebuah form pengisian
pengumuman untuk diisi oleh guru, setelah guru melakukan pengisian di form
pengumuman, form tersebut disimpan di database dan guru memilih alamat
tujuan pengiriman orangtua dengan cara memilih email yang telah terdaftar di
database. FCM akan secara otomatis mengirimkan pesan kepada orangtua tentang
adanya pengumuman baru. Pesan yang dikirimkan FCM akan ditampilkan oleh
sistem.

8
Guru Orangtua Sistem Database FCM

Start

memilih menu menam pilkan menu


create_report Form_weeklyreport

menginputkan data
student ke form

membuat request
penambahan data weeklyreport meyimpan data
di database

memilih alamat tujuan


device by email

memilih weekly report mengirimkan


ke alamat dipilih notifikasi

menerim a menam pilkan


notifikasi mas uk notifikasi dari FCM

End

Gambar 9. Activity Diagram pengiriman Weekly Report

Proses selanjutnya adalah Gambar 9 yaitu menggambarkan aktivitas


pengiriman weekly report. Pada aktivitas digambar melibatkan guru, orangtua,
sistem, database, dan FCM. Proses dilakukan ketika guru melakukan login pada
aplikasi lalu memilih menu membuat weekly report. Kemudian aplikasi
memproses permintaan dari user dan menampilkan form input weekly report
untuk diisi oleh guru yang bersangkutan. Form yang telah diisi disimpan di dalam
database lalu guru memilih alamat tujuan pengiriman orangtua, sistem menerima
permintaan dari user dan FCM mengirimkan notifikasi ke orangtua. Weekly report
sampai ke orangtua dengan disertai notifikasi masuk.
Class diagram merupakan diagram yang digunakan untuk menampilkan
beberapa kelas yang ada dalam aplikasi atau perangkat lunak yang sedang
dikembangkan. Class diagram memberikan gambaran mengenai aplikasi beserta
relasi yang ada di dalamnya berkolaborasi untuk membentuk sebuah sistem dan
mencapai sebuah tujuan. Class diagram pada aplikasi ini ditunjukan pada Gambar
10, terdapat 7 entitas yang saling terhubung yaitu, devices, announc, login,
log_announc, report, tb_mapel, tb_nilai. Pada class diagram ini dijelaskan bahwa
di dalam sistem ini terdapat beberapa operasi yang dapat dilakukan seperti melihat
tabel nilai, melihat id yang teregistrasi, melihat log, menambah, menghapus,
mengubah dan melakukan filter terhadap data nilai dan data yang ada pada sistem.
Pada setiap operasi yang dapat dilakukan terdapat penghubung antara user
interface dengan operasi yang dapat dilakukan tersebut. Operasi-operasi yang
tersedia pada sistem ditunjukan oleh controller, sedangkan penghubung antara
interface dengan operasi yang dapat dilakukan ditunjukan oleh boundary yang ada
pada class diagram pada Gambar 10.

9
Gambar 10. Class Diagram Aplikasi

Jalannya sebuah sistem diperlukan desain perancangan arsitektur dari


sistem yang akan dibuat. Perancangan arsitektur sistem ini dilihat pada Gambar
11.

Gambar 11. Arsitektur Aplikasi

10
Pada Gambar 11 dapat dijelaskan bahwa aplikasi yang dibangun ada dua,
yaitu aplikasi mobile dan aplikasi server. pada pemanfaatannya, aplikasi mobile,
aplikasi server dan FCM saling berhubungan. aplikasi mobile akan digunakan
oleh user (orangtua dan guru) untuk didaftarkan sebagai member terdaftar,
mendapatkan informasi weekly report dan announcement dari sekolah. pada
aplikasi mobile yang digunakan oleh guru berfungsi untuk mengirimkan
pengumuman dan report kepada orang tua. aplikasi server bertugas untuk
menangani setiap weekly report, termasuk penanganan FCM. aplikasi server akan
membantu dalam proses registrasi dan pengiriman pesan atau notification. Urutan
proses yang terjadi ketika proses registrasi member baru adalah sebagai berikut: 1)
pertama user melakukan registrasi sebagai member. 2) android akan mengirimkan
sender id, application id ke FCM untuk didaftarkan pada sistem. 3) setelah sukses
proses registrasi FCM maka server FCM akan mengirimkan token ID ke
perangkat android. registration id inilah yang nantinya digunakan untuk kode
identitas tiap akun member. 4) token yang didapatkan dari FCM kemudian
dikirimkan ke aplikasi server untuk disimpan ke dalam database. 5) aplikasi
server akan menyimpan registration id pada database dengan mengeksekusi
perintah SQL.
Proses pengiriman pesan atau notification yang terjadi pada aplikasi
adalah sebagai berikut: (a) Aplikasi server mengirimkan pesan dan token ID yang
sudah didapatkan oleh device kepada FCM server. (b) FCM server akan
mengirimkan pesan yang diterima dari aplikasi server ke perangkat android yang
memiliki token ID yang dikirimkan oleh aplikasi server. (c) user menerima pesan
masuk yang berupa notifikasi.

4. Hasil dan Pembahasan


Aplikasi yang dirancang merupakan Aplikasi komunikasi antara guru
dengan orang tua murid menggunakan Teknologi Firebase Cloud Messaging
(FCM) pada Android dengan studi kasus pada Sekolah Dasar Kristen (SDK)
Harapan Bangsa Balikpapan yang bertujuan untuk memberikan kemudahan dalam
melakukan komunikasi seperti penerimaan pengumuman dari sekolah dan weekly
report yang disampaikan setiap minggunya. antar muka aplikasi yang dirancang
terdiri dari dua bagian, yaitu bagian yang diakses oleh admin melalui website dan
bagian registrasi user yang dikases oleh orangtua

11
Gambar 12. Proses Registrasi user

Kode Program 1 Proses Registrasi dari android untuk mendapatkan unique ID


1 private void sendTokenToServer() {
2 progressDialog = new ProgressDialog(this);
3 progressDialog.setMessage("Registering Device...");
4 progressDialog.show();
5 final String token =
6 SharedPrefManager.getInstance(this).getDeviceToken();
7 final String email = editTextEmail.getText().toString();
8 if (token == null) {
9 progressDialog.dismiss();
10 Toast.makeText(this, "Token not generated",
11 Toast.LENGTH_LONG).show();
12 return;}
13 StringRequest stringRequest = new
14 StringRequest(Request.Method.POST, URL_REGISTER_DEVICE,
15 new Response.Listener<String>() {
16 @Override
17 public void onResponse(String response) {
18 progressDialog.dismiss();
19 try {
20 JSONObject obj = new
21 JSONObject(response);
22 Toast.makeText(MainActivity.this,
23 obj.getString("message"), Toast.LENGTH_LONG).show();
24 } catch (JSONException e) {
25 e.printStackTrace();
26 }}},
27 new Response.ErrorListener() {
28 @Override
29 public void onErrorResponse(VolleyError
30 error) {
31 progressDialog.dismiss();

12
32 Toast.makeText(MainActivity.this,
33 error.getMessage(), Toast.LENGTH_LONG).show(); }}) {

Pada Kode Program 1 adalah proses ketika user melakukan registrasi


melalui android dengan memasukkan email pada kolom registrasi. Email akan
dicocokan apakah sudah terdaftar atau belum. Device yang berhasil teregistrasi
akan mendapatkan 1 Token ID yang nantinya akan digunakan sebagai unique ID
dari firebase dalam mengirimkan push notification. Registrasi user yang terdaftar
akan langsung masuk kedalam database dan dapat dilihat di admin panel seperti
pada Gambar 12.

Gambar 13. Daftar user yang teregistrasi

Pada Gambar 13, user yang telah berhasil teregistrasi akan masuk ke
dalam database dan tertampil di admin panel. User yang teregistrasi mendapat ID
Token yang bersifat unique.

Gambar 14. Halaman lihat nilai

13
Pada Gambar 14 merupakan halaman menampilkan nilai yang telah
diinputkan oleh admin yang berada pada admin panel. Di dalam halaman tersebut
admin dapat menambah, mengedit, menghapus nilai dari siswa. Admin juga dapat
melakukan filter atau pencarian data berdasarkan nama siswa dan semester yang
dituju. Selain itu admin juga dapat mencetak data hasil pencarian kedalam bentuk
pdf, png, jpg, file Microsoft Office.

Gambar 15. Hasil cetak file dalam format pdf

Pada Gambar 15 merupakan tampilan pada hasil tabel nilai yang sudah
diubah dalam format pdf. Dengan adanya fungsi cetak didalamnya,
mempermudah dalam melakukan pengarsipan data oleh pihak sekolah.

14
Gambar 16. Form pengiriman Pengumuman dan weekly report
Pada Gambar 16 merupakan halaman pengiriman pengumuman dan
weekly report kepada user yang telah terdaftar. Admin memilih alamat tujuan
pengiriman kemudian mengisi title dan isi dari pesan yang ingin disampaikan.
Kemudian pesan yang berhasil terkirim akan sampai ke dalam device android user
yang telah teregistrasi. Admin juga dapat melihat log pengiriman yang telah
dilakukan dalam admin panel.
Perintah untuk melakukan pengiriman pesan dapat dilihat pada Kode
Program 2. Pada baris 3 sampai 5 melakukan importing file firebase yang
dibutuhkan kemudian menyambungkan kedalam database dan menghubungkan
ke query sql. $sql1 merupakan perintah untuk membuat log pengiriman agar
admin memiliki rekam jejak yang jelas dari pesan apa saja yang sudah terkirim ke
user. Pada baris ke 19 hingga 34 merupakan proses perkondisian dari inputan
yang telah diinputkan admin. Apabila pesan yang akan dikirimkan berisi gambar,
program akan melakukan eksekusi terhadap perkondisian pertama apabila
sebaliknya maka gambar akan diganti dengan null. $devicetoken = $db-
>getTokenByEmail($_POST['email']); adalah perintah untuk mengambil
token dari objek database.

Kode Program 2 Perintah untuk melakukan pengiriman pesan


1 <?php
2
3 //importing required files
4 require_once 'DbOperation.php';
5 require_once 'Firebase.php';
6 require_once 'Push.php';
7 $db = new DbOperation();
8 $response = array();
9 if($_SERVER['REQUEST_METHOD']=='POST'){
10 $title = $_POST['title'];
11 $message = $_POST['message'];
12 $con = mysqli_connect('localhost','root','','fcmexample');
13 $sql = "INSERT INTO announc (title, message) VALUES
14 ('$title','$message')";
15 $sql1 = "INSERT INTO log_announ (title, message, pengirim,
16 status, tanggal) VALUES
17 ('$title','$message','Admin','Terkirim',sysdate())";
18 mysqli_query($con,$sql);
19 mysqli_query($con,$sql1);
20 if(isset($_POST['title']) and isset($_POST['message'])
21 and isset($_POST['email'])){
22 $push = null;
23 if(isset($_POST['image'])){
24 $push = new Push(
25 $_POST['title'],
26 $_POST['message'],
27 $_POST['image']
28 );
29 }else{

15
30 $push = new Push(
31 $_POST['title'],
32 $_POST['message'],
33 null
34 );
35 }
36 $mPushNotification = $push->getPush();
37 $devicetoken = $db-
38 >getTokenByEmail($_POST['email']);
39 $firebase = new Firebase();
40 echo $firebase->send($devicetoken,
41 $mPushNotification);
42 }header('Location: sendPushNotification.php?success');
43 }else{
44 header('Location: sendPushNotification.php');
45 }echo json_encode($response);

Gambar 17. Proses penerimaan pengumuman dan tampilan detail pesan

16
Gambar 18. Proses penerimaan weekly report dan tampilan detail pesan

Pada Gambar 17 dan 18 merupakan tampilan notifikasi dari push


notification apabila pesan telah terkirim dari server admin dan tampilan ketika
notifikasi tersebut dibuka. Akan tampil secara penuh pesan yang dikirimkan
ketika user menekan statusbar. Weekly report siswa terkirim seperti pada Gambar
17.
Kode Program 5 Menampilkan Notifikasi dari server

1 protected void onCreate(Bundle savedInstanceState)


2 {
3 super.onCreate(savedInstanceState);
4 setContentView(R.layout.activity_notification);
5 viewInitialization();
6 //receive data from MyFirebaseMessagingService class
7 String title = getIntent().getStringExtra("title");
8 String timeStamp = getIntent().getStringExtra("timestamp");
9 String article =
10 getIntent().getStringExtra("message");
11 String imageUrl =
12 getIntent().getStringExtra("image");
13 //Set data on UI
14 titleTextView.setText(title);
15 timeStampTextView.setText(timeStamp);
16 articleTextView.setText(article);

17
17 Picasso.with(this)
18 .load(imageUrl)
19 .error(R.drawable.splash_img)
20 .into(imageView);
21 }
22 private void viewInitialization() {
23 imageView = (ImageView)
24 findViewById(R.id.featureGraphics);
25 titleTextView = (TextView)
26 findViewById(R.id.header);
27 timeStampTextView = (TextView)
28 findViewById(R.id.timeStamp);
29 articleTextView = (TextView)
30 findViewById(R.id.article);
31 }
32 }

Kode Program 5 merupakan perintah untuk menampilkan pesan ketika


user menekan push notification yang sampai ke perangkat device. Pesan yang
sampai akan langsung masuk ke layout activity_notification. Data diambil
dari kelas MyFirebaseMessagingService.

Pengujian aplikasi dilakukan untuk menguji semua fungsi yang telah


dibuat pada aplikasi. Pengujian aplikasi announcement dan weekly report berbasis
android ini menggunakan pengujian blackbox. pengujian blackbox adalah
pengujian validasi sistem tanpa memperhatikan struktur logika internal perangkat
lunak untuk mengetahui apakah perangkat lunak tersebut sudah berfungsi dengan
benar atau belum [11]. Berikut hasil dari pengujian blackbox yang telah dilakukan
yang akan ditampilkan pada Tabel 1.

Tabel 1 Hasil Pengujian Blackbox Aplikasi Pengumuman dan Weekly Report

Fungsi yang diuji Output yang Output dari Sistem Status Pengujian
diharapkan
register ID user data registrasiregistrasi dilakukan
berhasil dioleh user/parent
tambahkan kedalam berhasil
database sekaligus ditambahkan
Valid
mengambil token kedalam database
dari device dan dapat
ditampilkan pada
view di admin panel
Pengiriman Push mengirimkan push Pesan push
Notification notification dari web notification Valid
server sampai ke tertampil di android
device user
Pengecekan Menampilkan hasil hasil notification
pengumuman dari pengiriman tertampil di layar

18
terkirim pengumuman ketika device ketika user Valid
push notification membuka push
dibuka notification yang
sampai ke device.
Fungsi Convert ke Tabel yang telah di Hasil admin dapat
PDF dan cetak filter di convert melakukan filter
kedalam bentuk tabel nilai siswa Valid
PDF dan dapat kemudian data yang
dicetak untuk ingin diarsipkan
memudahkan dalam dapat disimpan
pengarsipan. dalam bentuk PDF
dan dicetak
Pengecekan weekly Menampilkan hasil hasil notification
report terkirim dari pengiriman berupa weekly
weekly report report tertampil di Valid
berupa image ketika layar device ketika
push notification user membuka push
dibuka notification yang
sampai ke device.

berdasarkan hasil pengujian blackbox pada Tabel 1, dapat disimpulkan


bahwa fungsi-fungsi yang ada pada sistem baik di web server maupun di android
dapat merespon dengan baik dan menghasilkan output atau keluaran yang sesuai
dengan harapan. Hasil tersebut memperlihatkan bahwa antara proses perancangan
aplikasi dengan implementasi aplikasi tidak ada perbedaan dan sesuai dengan
output yang diharapkan.

5. Simpulan
Setelah melalui analisis dan pengujian "Rancang Bangun Aplikasi
Komunikasi Guru dan Orangtua Murid Sekolah Dasar Berbasis Android" melalui
pengujian blackbox untuk menguji keberhasilan aplikasi dan wawancara secara
online serta pengujian aplikasi yang dilakukan oleh sepuluh orang user yang
terdiri dari lima guru dan lima orangtua murid melalui teamviewer dengan hasil
lima orang guru merasa dimudahkan dalam melakukan pengiriman pesan
langsung kepada orangtua dan lima orang tua merespon pesan yang dikirimkan
dari sekolah mudah diterima melalui notifikasi, maka dapat ditarik kesimpulan
bahwa aplikasi dapat memudahkan dalam memberikan informasi berupa
pengumuman maupun weekly report kepada orangtua yang dikirim melalui web
server ke client secara realtime. pada sisi sekolah, aplikasi ini memudahkan guru
dalam menyampaikan informasi yang bersifat penting kepada orang tua siswa,
memasukkan nilai tanpa manual menggunakan buku. Dari sisi user/ orangtua
memudahkan dalam melakukan pengawasan terhadap anak serta tidak ketinggalan
informasi yang diumumkan oleh sekolah.

19
6. Daftar Pustaka
[1]. Harapan Bangsa Integrated Christian School. 2008.School Profile.
Balikpapan
[2]. Android Developer.2011.What is Android?. Diakses tanggal 5 Agustus
2016.
[3]. Nazruddin. Safaat H. 2011. Pemrograman aplikasi Mobile Smartphone dan
Tablet PC Berbasis Android. Bandung: Informatika.
[4]. Irsan.Muhammad. 2005. Rancang Bangun Aplikasi Notifikasi Berbasis
Android untuk Mendukung Kinerja di Instansi Pemerintahan. Pontianak.
[5]. Google. inc. 2016. Firebase Cloud Messaging.
https://firebase.google.com/docs/cloud-messaging/ (diakses tanggal 28
November 2016).
[6]. Dharmasurya. Adinandra, 2003, Pengembangan Sistem Terdistribusi untuk
Sistem Informasi Administrasi Kependudukan dengan Integrasi Teknologi
RMI dan Web Service, AITI Jurnal Teknologi Informasi, 10 (1) :70-84.
[7]. Santoso.Agus. 2007. Pembuatan Aplikasi Mobile Broadcast Informasi
Perkuliahan Berbasis Android. Surabaya.
[8]. Suprianto, Dodit & Agustina, Rini. 2012. Pemrograman Aplikasi Android.
Yogyakarta: MediaKom.
[9]. XMPP. 2007. An Overview of XMPP. https://xmpp.org/about/technology-
overview.html. (diakses tanggal 3 Januari 2017).
[10]. Pressman, Roger S., 2002, Rekayasa Perangkat Lunak Pendekatan Praktisi
(Buku Satu), Andi, Yogyakarta.
[11]. Nandiwardhana, Indrayasa, Yulianto J.P., Sri, Prestiliano, Jasson. 2011.
Pengembangan Physics Game “FIX and FIT” Berbasis Android Smartphone
Menggunakan Action Script 3.0 dan QuickBox2D. AITI: FTI Jurnal
Teknologi Informasi. 8(2) 117-132.
[12] StatCounter.1999. Global Stat. http://gs.statcounter.com/#mobile_os-ID-
monthly-201601-201612-bar. (diakses tanggal 5 Agustus 2016)

20

Anda mungkin juga menyukai