SKRIPSI
MEMBANGUN APLIKASI PENJADWALAN VAKSINASI BERBASIS ANDROID DENGAN FITUR PUSH NOTIFICATION
MENGGUNAKAN FIREBASE CLOUD MESSAGING (STUDI KASUS PT. MEDION)
ROBBI ZULFIKAR Nomor Mahasiswa : 145410096
PROGRAM STUDI TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AKAKOM
YOGYAKARTA 2018
i SKRIPSI HALAMAN JUDUL
MEMBANGUN APLIKASI PENJADWALAN VAKSINASI BERBASIS ANDROID DENGAN FITUR PUSH NOTIFICATION
MENGGUNAKAN FIREBASE CLOUD MESSAGING (STUDI KASUS PT. MEDION)
Diajukan sebagai salah satu syarat untuk menyelesaikan studi jenjang strata satu (S1)
Program Studi Teknik Informatika
Sekolah Tinggi Manajemen Informatika dan Komputer AKAKOM YOGYAKARTA
Disusun Oleh ROBBI ZULFIKAR Nomor Mahasiswa : 145410096
PROGRAM STUDI TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AKAKOM
YOGYAKARTA 2018
ii
HALAMAN PERSETUJUAN
Judul : Membangun Aplikasi Penjadwalan Vaksinasi Berbasis Android Dengan Fitur Push Notification Menggunakan Firebase Cloud Messaging (Studi Kasus PT. Medion)
Nama : Robbi Zulfikar
Nomor Mahasiswa : 145410096
Program Studi : Teknik Informatika Jenjang : Strata Satu (S1)
Tahun : 2018
Telah diperiksa dan disetujui
Yogyakarta, ... 2018
Mengetahui Dosen Pembimbing
iii
HALAMAN PENGESAHAN
SKRIPSI
MEMBANGUN APLIKASI PENJADWALAN VAKSINASI BERBASIS ANDROID DENGAN FITUR PUSH NOTIFICATION
MENGGUNAKAN FIREBASE CLOUD MESSAGING (STUDI KASUS PT. MEDION)
Telah dipertahankan di depan Dewan Penguji Skripsi dan dinyatakan diterima untuk memenuhi sebagai syarat guna memperoleh Gelar Sarjana Komputer
Sekolah Tinggi Manajemen Informatika dan Komputer AKAKOM YOGYAKARTA
Yogyakarta, ... 2018
Mengesahkan
Dewan Penguji Tanda Tangan
1. Ir. Sudarmanto, M.T. ... 2. Erna Hudianti P., S.Si., M.Si. ... 3. Indra Yatini B., S.Kom., M.Kom. ...
Mengetahui
Ketua Program Studi Teknik Informatika
iv
HALAMAN PERSEMBAHAN
Alhamdulillahi Robbil Alamin
Puji syukur kepada Allah subhanahu wa ta’ala atas segala rahmat dan karunianya sehingga skripsi ini bisa selesai. Saya ucapkan banyak terima kasih kepada seluruh pihak yang telah memberikan dukungan dan doa selama ini.
Karya Tulis ini saya persembahkan Kepada :
“Papa dan Mama yang tanpa lelah memberikan dukungan dan doa agar anaknya menjadi orang yang berilmu serta mempunyai akhlak yang mulia. Berkat didikan beliau lah saya bisa jadi seperti ini. Terima kasih banyak Papa dan Mamaku”
“Pujiatus Syahara Kekasihku yang sudah banyak membantu dan selalu memberikan semangat, motivasi, kasih sayang serta doa sehingga skripsi ini bisa selesai tepat waktu, terima kasih Cintaku”
“Wieke Agustine Kakakku yang selalu memberikan dukungan, saran, dan pelajaran hidup yang berarti”
“Ibu Indra Yatini B., S.Kom., M.Kom. selaku dosen pembimbing yang telah memberikan bimbingan dan pengarahan dalam penyusunan tugas akhir saya”
“Rekan-rekan di PT. Medion yang telah banyak membantu dan menemani saya dalam berproses baik di dalam maupun di luar lingkungan kantor”
v
HALAMAN MOTTO
“JIKA KAMU TIDAK SANGGUP MENAHAN LELAHNYA BELAJAR, MAKA KAMU HARUS SANGGUP MENAHAN PERIHNYA KEBODOHAN”
[IMAM SYAFI’I]
“KARENA SESUNGGUHNYA SESUDAH KESULITAN ADA KEMUDAHAN”
[QS. AL INSYIRAH : 5-6]
“TIADA DAYA DAN TIADA KEKUATAN KECUALI DENGAN PERTOLONGAN ALLAH TA’ALA”
vi INTISARI
Salah satu poin penting yang terdapat di dalam manajemen pemeliharaan ayam adalah adanya program vaksinasi yang dilakukan secara rutin pada umur tertentu guna memberikan kekebalan pada ayam terhadap serangan penyakit-penyakit yang disebabkan oleh virus. Supaya proses vaksinasi bisa berjalan lancar dan optimal, selain tenaga vaksinator yang handal perlu juga adanya penjadwalan dan koordinasi yang baik dan konsisten. Oleh karena itu, diperlukan adanya suatu sistem yang bisa membantu vaksinator untuk mengatur jadwal, menyimpan data dengan rapi, dan menyebarkan informasi dengan cepat dan akurat.
Aplikasi berbasis mobile, khususnya android, dirasa paling tepat untuk kasus ini, karena saat ini hampir semua orang memiliki smartphone yang selalu dibawa kemanapun mereka pergi. Aplikasi berbasis android akan lebih efektif jika memiliki fitur push notification, yang akan memunculkan pemberitahuan pada smartphone jika ada informasi baru yang perlu diketahui oleh user yang bersangkutan. Firebase Cloud Messaging (FCM) adalah salah satu layanan Firebase yang menyediakan solusi pengiriman pesan lintas platform tanpa biaya. Pesan yang dikirim oleh FCM akan diterima oleh user dalam bentuk push notification.
Berdasarkan rangkaian proses yang telah dilalui mulai dari perancangan hingga implementasi sistem, didapatkan kesimpulan bahwa aplikasi penjadwalan vaksinasi yang dibangun bisa membantu pekerjaan vaksinator dalam melakukan penjadwalan vaksinasi. Push Notification selalu muncul di smartphone vaksinator ketika ada jadwal vaksinasi baru dan tidak pernah gagal, sehingga vaksinator bisa langsung mengetahui informasi tersebut.
Kata kunci:
vii
KATA PENGANTAR
Puji syukur kepada Allah subhanahu wa ta’ala atas segala rahmat dan karunianya, sehingga penulis dapat menyelesaikan karya tulis yang berjudul “Membangun Aplikasi Penjadwalan Vaksinasi Berbasis Android Dengan Fitur Push Notification Menggunakan Firebase Cloud Messaging” sebagai salah satu syarat untuk menyelesaikan studi jenjang Strata Satu (S-1) Program Studi Teknik Informatika di Sekolah Tinggi Manajemen Informatika dan Komputer AKAKOM Yogyakarta.
Dalam penulisan tugas akhir ini tentunya tidak lepas dari bantuan berbagai pihak, oleh karena itu pada kesempatan ini penulis ingin menyampaikan rasa terima kasih kepada semua pihak yang telah membantu dalam penulisan tugas akhir ini, antara lain :
1. Bapak Ir. Totok Suprawoto, M.M., M.T. selaku Ketua Sekolah Tinggi Manajemen Informatika dan Komputer AKAKOM Yogyakarta.
2. Ibu Dini Fakta Sari, S.T., M.T. selaku Ketua Program Studi Teknik Informatika.
3. Ibu Indra Yatini B., S.Kom., M.Kom. selaku dosen pembimbing yang telah memberikan waktu, bimbingan, pengarahan dan ilmu dalam penyusunan karya tulis ini.
4. Bapak Ir. Sudarmanto, M.T., dan Ibu Erna Hudianti P., S.Si., M.Si. selaku dosen penguji yang telah banyak memberikan masukan pada karya tulis yang saya buat.
viii
5. Kedua Orangtua, seluruh keluarga dan teman-teman yang telah memberikan doa dan dukungan nya selama ini.
Penulis menyadari bahwa dalam penyusunan karya tulis ini masih jauh dari kata sempurna. Oleh karena itu, kritik dan saran yang membangun sangatlah diharapkan guna menambah wawasan dan pengembangan ilmu yang telah penulis peroleh selama ini. Semoga karya tulis ini dapat bermanfaat bagi semua pihak.
Yogyakarta, 7 Desember 2018
ix DAFTAR ISI
HALAMAN JUDUL ... i
HALAMAN PERSETUJUAN ... ii
HALAMAN PENGESAHAN ... iii
HALAMAN PERSEMBAHAN ... iv
HALAMAN MOTTO ... v
INTISARI ... vi
KATA PENGANTAR ... vii
DAFTAR ISI ... ix
DAFTAR GAMBAR ... xiii
DAFTAR TABEL ... xvi
BAB I PENDAHULUAN ... 1
1.1. Latar Belakang Masalah... 1
1.2. Rumusan Masalah ... 2 1.3. Definisi Istilah ... 2 1.4. Ruang Lingkup ... 4 1.5. Tujuan Penelitian ... 5 1.6. Manfaat Penelitian ... 5 1.7. Sistematika Penulisan ... 5
x
BAB II TINJAUAN PUSTAKA DAN DASAR TEORI... 8
2.1. Tinjauan Pustaka... 8 2.2. Dasar Teori ... 11 2.2.1. PT. Medion ... 11 2.2.2. Vaksinasi ... 13 2.2.3. Penjadwalan ... 13 2.2.4. Android ... 13 2.2.5. Notifikasi ... 14
2.2.6. Firebase Cloud Messaging dan Push Notification ... 14
BAB III METODE PENELITIAN ... 18
3.1. Bahan/Data ... 18
3.2. Peralatan ... 18
3.2.1. Perangkat Keras ... 18
3.2.2. Perangkat Lunak ... 18
3.3. Prosedur dan Pengumpulan Data ... 19
3.4. Analisis Kebutuhan Sistem ... 20
3.4.1. Kebutuhan Fungsional ... 21
3.4.2. Kebutuhan Non Fungsional ... 22
3.5. Perancangan Sistem ... 23
xi
3.5.2. Cara Kerja Push Notification ... 24
3.5.3. Use Case Diagram ... 26
3.5.4. Sequence Diagram ... 28
3.5.5. Struktur dan Relasi Tabel Database ... 31
3.5.6. Rancangan Antarmuka ... 34
BAB IV IMPLEMENTASI DAN PEMBAHASAN SISTEM ... 39
4.1. Implementasi Sistem ... 39
4.1.1. Menghubungkan Aplikasi ke Firebase ... 39
4.1.2. Menambahkan Fungsi FCM ke Aplikasi ... 40
4.1.3. Membuat Class yang Dibutuhkan untuk Komunikasi ke Server ... 41
4.1.4. Membuat Class yang Dibutuhkan untuk Menjalankan FCM ... 43
4.1.5. Membuat Web Service untuk Mengirim Request ke Firebase ... 49
4.1.6. Membuat Perintah Untuk Menjalankan Request ke Firebase ... 54
4.2. Uji Coba dan Pembahasan Sistem ... 55
4.2.1. Halaman Login ... 55
4.2.2. Halaman Schedule ... 55
4.2.3. Halaman Detail Jadwal Vaksinasi ... 56
4.2.4. Halaman Realisasi Vaksinasi ... 57
4.2.5. Halaman History ... 58
xii
4.2.7. Tampilan Website ... 60
4.2.8. Uji Coba Push Notification ... 61
BAB V KESIMPULAN DAN SARAN... 66
5.1. Kesimpulan... 66
5.2. Saran ... 66
xiii
DAFTAR GAMBAR
Gambar 2.1 Proses Bisnis Terkait Penjadwalan Vaksinasi di PT. Medion ... 12
Gambar 2.2 Komponen Utama FCM ... 16
Gambar 2.3 Format Pesan Push Notification dalam bentuk JSON ... 17
Gambar 3.1 Prosedur Penjadwalan dan Pelaksanaan Vaksinasi ... 20
Gambar 3.2 Alur Kerja Aplikasi Penjadwalan Vaksinasi ... 21
Gambar 3.3 Arsitektur Sistem ... 24
Gambar 3.4 Cara Kerja Push Notification ... 25
Gambar 3.5 Use Case Diagram Admin ... 27
Gambar 3.6 Use Case Diagram Koordinator dan Vaksinator ... 28
Gambar 3.7 Sequence Diagram Melakukan Login... 29
Gambar 3.8 Sequence Diagram Menambah Data User ... 29
Gambar 3.9 Sequence Diagram Membuat Jadwal Vaksinasi... 30
Gambar 3.10 Sequence Diagram Realisasi Vaksinasi ... 31
Gambar 3.11 Relasi Tabel ... 33
Gambar 3.12 Rancangan Halaman Login pada Web dan Android ... 34
Gambar 3.13 Rancangan Halaman Utama pada Web ... 35
Gambar 3.14 Rancangan Halaman Input dan Edit Data pada Web ... 36
xiv
Gambar 3.16 Rancangan Halaman Detail pada Android ... 37
Gambar 3.17 Rancangan Halaman Realisasi pada Android ... 38
Gambar 4.1 Set up Firebase Cloud Messaging ... 39
Gambar 4.2 Connect to Firebase ... 40
Gambar 4.3 Kode Program Menambahkan fungsi FCM ke dalam Aplikasi ... 40
Gambar 4.4 Kode Program Class RetrofitClient.java ... 41
Gambar 4.5 Kode Program Interface BaseApiService.java ... 43
Gambar 4.6 Kode Program MyFirebaseInstanceIDService.java ... 45
Gambar 4.7 Kode Program tokenRefresh.php ... 46
Gambar 4.8 Kode Program MyFirebaseMessagingService.java ... 47
Gambar 4.9 Kode Program MyNotificationManager.java ... 49
Gambar 4.10 Mengambil Firebase Server Key ... 50
Gambar 4.11 Kode Program Membuat Konstanta Firebase Api Key ... 50
Gambar 4.12 Kode Program sendSinglePush.php ... 51
Gambar 4.13 Kode Program Push.php ... 52
Gambar 4.14 Kode Program Firebase.php ... 53
Gambar 4.15 Kode Program Menjalankan File sendSinglePush.php ... 54
Gambar 4.16 Tampilan Login ... 55
Gambar 4.17 Tampilan Schedule ... 56
xv
Gambar 4.19 Tampilan Realisasi Vaksinasi ... 58
Gambar 4.20 Tampilan History ... 59
Gambar 4.21 Tampilan Detail History Vaksinasi ... 60
Gambar 4.22 Tampilan Website ... 61
Gambar 4.23 Login Website ... 61
Gambar 4.24 Menu Jadwal Vaksinasi ... 62
Gambar 4.25 Membuat Jadwal Vaksinasi Baru ... 63
Gambar 4.26 Tampilan Push Notification ... 64
xvi
DAFTAR TABEL
Tabel 2.1 Perbandingan Hasil Penelitian ... 10
Tabel 3.1 Tabel Kebutuhan Fungsional Sistem ... 22
Tabel 3.2 Tabel User ... 32
Tabel 3.3 Tabel Customer ... 32
Tabel 3.4 Tabel Plasma ... 32
Tabel 3.5 Tabel Produk ... 32