Anda di halaman 1dari 73

PEMBUATAN APLIKASI PENGECEKAN STATUS

PELANGGAN GIG BERBASIS ANDROID PADA PT INDOSAT


MEGA MEDIA

WILANDA RINALDI

PROGRAM STUDI MANAJEMEN INFORMATIKA


SEKOLAH VOKASI
INSTITUT PERTANIAN BOGOR
BOGOR
2018
PERNYATAAN MENGENAI LAPORAN AKHIR DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan laporan tugas akhir Pembuatan Aplikasi
Pengecekan Status Pelanggan GIG pada PT Indosat Mega Media adalah benar
karya saya dengan arahan komisi pembimbing dan belum diajukan dalam bentuk
apapun kepada perguruan tinggi manapun. Sumber informasi yang berasal atau
dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah
disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir
laporan ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.

Bogor, Juli 2018

Wilanda Rinaldi
NIM J3C115001
ABSTRACT
WILANDA RINALDI. The Making of Android-Based Application Checking
Status of GIG Customer on PT Indosat Mega Media. Supervised by Muhammad
Syamsun.
PT Indosat Mega Media is a company that provides internet service in
Indonesia. One of the services provided is broadband internet service known as
GIG. So far in reminding customers to pay GIG subscription fees, IndosatM2 still
uses email or make phone calls to customers. Because sometimes the customer
forgot to make an extension of billing GIG package bills, then made an android-
based applications that can be accessed easily, anytime and anywhere. This app can
only be enjoyed for users who have subscribed to GIG packages. This application
is expected to facilitate the customer in doing the extension of the package and
check the status of its subscription.

Keywords: GIG, status, subscribe, android, prototype


RINGKASAN
WILANDA RINALDI. Pembuatan Aplikasi Pengecekan Status Pelanggan
GIG Berbasis Android pada PT Indosat Mega Media. Dibimbing oleh Muhammad
Syamsun.
PT Indosat Mega Media merupakan sebuah perusahaan yang menyediakan
jasa pelayanan internet di Indonesia. Salah satu layanan yang diberikan adalah
pelayanan internet broadband yang dikenal dengan nama GIG. Sejauh ini dalam
mengingatkan pelanggan melakukan tagihan berlangganan GIG, IndosatM2 masih
menggunakan email maupun melakukan panggilan telepon kepada pelanggan.
Karena terkadang pelanggan lupa dalam melakukan pembayaran tagihan
perpanjang paket GIG, maka dibuatlah sebuah aplikasi berbasis android yang dapat
diakses secara mudah, kapan dan dimana saja. Aplikasi ini hanya dapat dinikmati
bagi pengguna yang telah berlangganan paket GIG. Dengan adanya aplikasi ini,
diharapkan dapat memudahkan pelanggan dalam melakukan perpanjangan paket
dan mengecek status berlangganannya.
Pembuatan aplikasi pengecekan status pelanggan GIG dibangun dengan
menggunakan analisis dari metodologi prototipe yang dikemukakan oleh Roger S.
Pressman. Dalam pembangunan aplikasi ini dilakukan sebanyak dua kali iterasi,
dengan tahapan dimulai dari komunikasi, perencanaan secara cepat, pemodelan
perancangan secara cepat, pembentukan prototipe dan penyerahan sistem kepada
pelanggan.

Kata kunci : GIG, status, berlangganan, android, prototipe


PEMBUATAN APLIKASI PENGECEKAN STATUS
PELANGGAN GIG BERBASIS ANDROID PADA PT INDOSAT
MEGA MEDIA

WILANDA RINALDI

Laporan Akhir
sebagai salah satu syarat untuk memperoleh gelar
Ahli Madya
pada
Program Studi Manajemen Informatika

PROGRAM STUDI MANAJEMEN INFORMATIKA


SEKOLAH VOKASI
INSTITUT PERTANIAN BOGOR
BOGOR
2018
Judul Tugas Akhir : Pembuatan Aplikasi Pengecekan Status Pelanggan GIG
Berbasis Android pada PT Indosat Mega Media
Nama : Wilanda Rinaldi
NIM : J3C115001

Disetujui oleh

Dr Ir Muhammad Syamsun, MSc


Pembimbing

Diketahui oleh

Dr Ir Arief Darjanto, MEc Dr Ir Muhammad Syamsun, MSc


Dekan Sekolah Vokasi Ketua Program Studi

Tanggal lulus :
PRAKATA

Puji dan syukur penulis panjatkan kepada Allah SWT yang telah
melimpahkan rahmat dan karunia-Nya, sehingga penulis dapat menyelesaikan
laporan tugas akhir yang berjudul Pembuatan Aplikasi Pengecekan Status
Pelanggan GIG Berbasis Android pada PT Indosat Mega Media.
Tanpa bantuan dan bimbingan dari pihak terdekat penulis dari masa
perkuliahan sampai penyusunan laporan akhir ini, tentu sangat sulit bagi penulis
menyelesaikan laporan akhir ini. Maka dari itu penulis mengucapkan terima kasih
kepada Ayahanda tercinta yang Budi Sutrisno dan Ibunda tercinta Siti Nurseba yang
telah membantu penulis dalam memberikan doa, dukungan, semangat dan kasih
sayang. Ucapan terima kasih juga penulis sampaikan kepada Bapak Dr Ir
Muhammad Syamsun, MSc selaku koordinator program keahlian manajemen
informatika sekaligus sebagai dosen pembimbing akademik dan tugas akhir yang
dengan sabar sudah meluangkan waktu, tenaga, dan pikiran untuk membimbing
penulis dalam menyusun laporan akhir ini. Ucapan terima kasih juga penulis
sampaikan kepada Bapak Ahmad Nasser dan Bapak Taufiq selaku pembimbing
lapangan, Bapak Syaiful Anwar selaku manager IT di Indosat Mega Media dan
segenap pimpinan dan staf divisi IT Indosat Mega Meda yang telah membimbing
dan memberi pengetahuan selama praktik kerja lapangan.
Akhir kata, penulis berharap semoga Allah SWT membalas segala kebaikan
dari semua pihak yang telah membantu dalam penyusunan laporan akhir ini.
Dengan segala kekurangan, penulis berharap semoga laporan ini dapat bermanfaat
bagi pengembangan informasi di masa yang akan datang.

Bogor, Juni 2018

Wilanda Rinaldi
DAFTAR ISI

DAFTAR ISI XV
DAFTAR TABEL XVI
DAFTAR GAMBAR XVII
DAFTAR LAMPIRAN XVII
1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Tujuan 1
1.3 Ruang Lingkup 2
2 METODE KAJIAN 2
2.1 Lokasi dan Waktu PKL 2
2.2 Metode Bidang Kajian 2
2.2.1 Komunikasi 3
2.2.2 Perencanaan Cepat 3
2.2.3 Pemodelan Perancangan Secara Cepat 3
2.2.4 Pembuatan Prototipe 6
2.2.5 Penyerahan Sistem dan Umpan Balik 8
3 GAMBARAN UMUM PT INDOSAT MEGA MEDIA 8
3.1 Sejarah 8
3.2 Visi dan Misi 9
3.3 Struktur Organisasi 9
4 PEMBUATAN APLIKASI PENGECEKAN STATUS PELANGGAN GIG
BERBASIS ANDROID PADA PT INDOSAT MEGA MEDIA 9
4.1 Prototipe Pertama 10
4.1.1 Komunikasi 10
4.1.2 Perencanaan Secara Cepat 12
4.1.3 Pemodelan Perancangan Secara Cepat 12
4.1.4 Pembentukan Prototipe 18
4.1.5 Penyerahan Sistem dan Umpan Balik 21
4.2 Prototipe Kedua 25
4.2.1 Komunikasi 25
4.2.2 Perencanaan Secara Cepat 25
4.2.3 Pemodelan Perancangan Secara Cepat 26
4.2.4 Pembentukan Prototipe 28
4.2.5 Penyerahan Sistem Umpan Balik 30
4.3 Evaluasi Seminar 30
5 SIMPULAN DAN SARAN 31
5.1 Simpulan 31
5.2 Saran 31
DAFTAR PUSTAKA 32
LAMPIRAN 33
DAFTAR TABEL
1 Simbol use case diagram 4
2 Simbol class diagram 5
3 Simbol Activity diagram 6
4 Kebutuhan fungsional 12
5 Kebutuhan nonfungsional 12
6 Perancangan activity diagram 14
7 Tabel gigcustomer 15
8 Tabel gigproduct 15
9 Tabel gigtransaction 15
10 Tabel giginvoice 16
11 Tabel provinsi 16
12 Tabel kabupaten 16
13 Tabel kecamatan 16
14 Perancangan antarmuka 17
15 Perancangan masukan 17
16 Perancangan keluaran 18
17 Spesifikasi Software 19
18 Implementasi antarmuka 20
19 Implementasi masukan 20
20 Implementasi proses 21
21 Implementasi keluaran 21
22 Pengujian blackbox prototipe pertama 22
23 Kebutuhan fungsional prototipe kedua 26
24 Tabel gignotifikasi 28
25 Pengujian blackbox prototipe kedua 30
DAFTAR GAMBAR

1 Metode Prototipe (Pressman 2012) 3


2 Struktur Organisasi IndosatM2 9
3 Proses Bisnis Lama 10
4 Proses Bisnis Baru 11
5 Use case diagram prototipe pertama 13
6 Class diagram protipe pertama 14
7 Implementasi database prototipe pertama 19
8 Use case diagram prototipe kedua 26
9 Class diagram prototipe kedua 27
10 Activity diagram melihat notifikasi 27
11 Perancangan antarmuka notifikasi 28
12 Implementasi database prototipe kedua 29
13 Implementasi antarmuka notifikasi 29

DAFTAR LAMPIRAN

1 Alur proses masuk 34


2 Alur proses melihat status 34
3 Alur proses melihat produk 35
4 Alur proses melihat profil 35
5 Alur proses mengubah profil 36
6 Alur proses perpanjang paket 36
7 Alur proses melihat tagihan 37
8 Alur proses melihat riwayat bayar 37
9 Alur proses keluar 38
10 Rancangan antarmuka login 38
11 Rancangan antarmuka home 39
12 Rancangan antarmuka info produk 39
13 Rancangan antarmuka perpanjang 39
14 Rancangan antamuka transaksi 40
15 Rancangan antarmuka profil 40
16 Rancangan masukan masuk ke aplikasi 40
17 Rancangan masukan pencarian riwayat transaksi 41
18 Rancangan masukan ubah profil 41
19 Rancangan keluaran informasi status berlangganan 41
20 Rancangan keluaran informasi riwayat transaksi 41
21 Implementasi antarmuka login 42
22 Implementasi antarmuka home 42
23 Implementasi antarmuka info produk 43
24 Implementasi antarmuka perpanjang 43
25 Implementasi antarmuka transaksi 44
26 Implementasi antarmuka profil 44
27 Implementasi masukan masuk ke aplikasi 45
28 Implementasi masukan pencarian riwayat transaksi 45
29 Implementasi masukan ubah profil 46
30 Implementasi proses masuk 46
31 Implementasi proses melihat status 47
32 Implementasi proses melihat produk 47
33 Implementasi proses melihat profil 48
34 Implementasi proses mengubah profil 48
35 Implementasi proses perpanjang produk 49
36 Implementasi proses melihat tagihan 50
37 Implementasi proses melihat riwayat bayar 50
38 Implementasi proses keluar 51
39 Implementasi keluaran informasi status berlangganan 51
40 Implementasi keluaran pencarian riwayat transaksi 52
41 Implementasi proses notifikasi 52
1 PENDAHULUAN

1.1 Latar Belakang

PT Indosat Mega Media (IndosatM2) merupakan sebuah perusahaan yang


menyediakan jasa pelayanan internet di Indonesia. Pelayanan yang diberikan salah
satunya adalah layanan internet broadband dengan menggunakan fiber optik, yang
dikenal dengan nama GIG. Layanan GIG dapat dinikmati secara unlimited dengan
berbagai pilihan paket yang disediakan.
Pengguna yang telah berlangganan dapat menikmati paket secara unlimited
selama sebulan. Dalam kondisi ini status berlangganan pengguna adalah active.
Setelah jangka waktu paket melewati batas yang ditentukan, pelanggan pun tidak
dapat menggunakan layanan GIG untuk sementara. Secara otomatis aktivasi dari
pelanggan akan tidak aktif atau kondisi status menjadi block. Pengguna diberikan
waktu 3 hari untuk segera melalukan pembayaran. Jika pengguna belum juga
melakukan pembayaran dan melebihi waktu yang diberikan, maka pelanggan tidak
bisa menikmati akses internet dan status aktivasi dari pelanggan akan menjadi
close.
Sejauh ini dalam mengingatkan pelanggan melakukan perpanjangan paket,
IndosatM2 masih menggunakan email, melakukan panggilan telepon, maupun
mengirimkan SMS kepada pelanggan. Hal ini dirasa kurang nyaman bagi pelanggan
karena tidak semua pelanggan akan mengecek email setiap saat ataupun panggilan
telepon yang tidak terjawab. Selain itu terkadang nomor dari pelanggan sudah tidak
aktif lagi. Sehingga menyulitkan dalam proses pemberitahuan perpanjangan paket.
Dalam proses perpanjangan paket, IndosatM2 sebenarnya telah mempunyai
sebuah website. Namun, belum ada sebuah aplikasi berbasis android yang akan
memudahkan pengguna dalam mengakesnya. Pembuatan aplikasi diperangkat
mobile dirasa sangat diperlukan, karena selain sebagai inovasi bisnis dan
kemudahan aksesnya, menurut lembaga internasional We Are Social, sebanyak
60% pengguna internet di Indonesia mengaksesnya menggunakan smartphone.
Oleh karena itu, untuk mengatasi permasalahan tersebut, dibuatlah sebuah
aplikasi di perangkat mobile berbasis android dalam melakukan pengecekan status
pelanggan GIG. Diharapkan dapat memudahkan pengguna dalam melakukan
perpanjangan paket dan mengecek status berlangganannya.

1.2 Tujuan

Tujuan dari pembuatan aplikasi pengecekan status berlangganan Paket GIG


ini adalah sebagai berikut.
1 Menyediakan fasilitas untuk pengecekan status berlangganan GIG.
2 Menyediakan fasilitas untuk melihat tagihan biaya berlangganan GIG.
3 Menyediakan fasilitas untuk melihat informasi produk GIG.
4 Menyediakan fasilitas notifikasi status dan pembayaran.
2

1.3 Ruang Lingkup

Ruang lingkup pembuatan aplikasi pengecekan status pelangan GIG adalah


sebagai berikut.
1. Memfasilitasi pelanggan untuk melihat status berlangganan GIG dan
perpanjang paket berlangganan.
2. Pembayaran belum dilakukan secara realtime. Belum ada automisasi secara
langsung oleh pihak bank dalam melakukan pembayaran.
3. Pengguna aplikasi ini adalah pelanggan GIG yang telah melakukan instalasi
dan mengaktifkan paket berlangganan GIG.
4. Tidak ada fitur registrasi dalam aplikasi ini, hanya admin yang dapat
menambahkan pengguna.
5. Jika nmor ponsel pelanggan tidak aktif, pelanggan diwajibkan menghubungi
customer service melalui email atau telepon untuk melakukan perubahan
nomor ponsel.

2 METODE KAJIAN

2.1 Lokasi dan Waktu PKL

Kegiatan Praktik Kerja Lapangan (PKL) dilaksanakan di PT Indosat Mega


Media yang berlokasi di Jl. Kebagusan Raya No. 36, Pasar Minggu, Jakarta Selatan
12550. Kegiatan PKL dilaksanakan pada tanggal 5 Februari 2018 sampai dengan
10 April 2018 dengan waktu kerja secara keseluruhan sebanyak 45 hari. Waktu
pelaksanaan setiap hari kerja yaitu hari Senin sampai dengan hari Jumat yang
berlangsung mulai pukul 08.00 sampai dengan 17.00 WIB.

2.2 Metode Bidang Kajian

Dalam pembuatan aplikasi ini dibutuhkan sebuah metode pengembangan


sistem. Hal ini diperlukan untuk mempermudah langkah kerja pembangunan sistem
secara keseluruhan. Metode pengembangan yang digunakan dalam pembuatan
Aplikasi Pengecekan Status Pelanggan GIG ini adalah metode prototipe yang
dikemukakan oleh Pressman (2012). Alasan menggunakan metode prototipe yaitu
kebutuhan yang belum jelas, cakupannya masih dalam skala kecil dan keterbatasan
waktu. Alur metode prototipe ini ditunjukkan pada Gambar 1.
3

Gambar 1 Metode Prototipe (Pressman 2012)

2.2.1 Komunikasi
Sebelum spesifikasi-spesifikasi kebutuhan pengguna dapat dianalisis,
dimodelkan atau dispesifikasi, mereka harus diperoleh melalui aktivitas-aktivitas
komunikasi yang baik. Sebelum komunikasi, pastikan bahwa kita memahami sudut
pandang lawan bicara, tahu tentang kebutuhan-kebutuhan mereka, kemudian
mendengarkan. Pembuatan prototipe dimulai dengan dilakukannya komunikasi
antara tim pengembang perangkat lunak dengan para pelanggan. Tim pengembang
perangkat lunak akan melakukan pertemuan-pertemuan dengan para stakeholder
untuk mendefinisikan sasaran keseluruhan untuk perangkat lunak yang akan
dikembangkan, mengidentifikasi spesifikasi kebutuhan apapun yang saat ini
diketahui, dan menggambarkan area-area dimana definisi lebih jauh pada iterasi
selanjutnya merupakan keharusan (Pressman 2012).
2.2.2 Perencanaan Cepat
Aktivitas komunikasi sesungguhnya akan sangat membantu kita untuk
mendefinisikan sasaran dan tujuan kita secara keseluruhan (subjek komunikasi
tentu saja berubah dengan berjalannya waktu). Meski demikian, pemahaman
tentang sasaran-sasaran dan tujuan-tujuan tidaklah sama dengan mendefinisikan
suatu rencana. Aktivitas perencanaan sesungguhnya merupakan sejumlah praktik
manajemen dan teknis yang memungkinkan tim perangkat lunak untuk
mendefinisikan suatu peta jalan (roadmap) yang pada gilirannya memungkinkan
tim perangkat lunak mencapai tujuan-tujuan yang bersifat strategik dan taktis
(Pressman 2012).
2.2.3 Pemodelan Perancangan Secara Cepat
Dalam pekerjaan rekayasa perangkat lunak, dua jenis model yang dapat
dibuat: (1) model-model yang berkaitan dengan spesifikasi kebutuhan dan (2)
model-model yang berkaitan dengan perancangan yang mengarah ke implementasi
selanjutnya. Model-model spesifikasi kebutuhan (sering juga dinamakan sebagai
model-model analisis) memperlihatkan spesifikasi-spesifikasi kebutuhan pengguna
dengan menggambarkan perangkat lunak dalam 3 ranah (domain) yang berbeda:
ranah informasi, ranah fungsional, dan ranah perilaku. Sementara itu, model
perancangan menggambarkan karakteristik-karakteristik perangkat lunak yang
4

akan sangat membantu para praktisi untuk mengembangkan perangkat lunak secara
efektif: arsitektur perangkat lunak, antarmuka pengguna, dan rincian berperingkat
komponen (Pressman 2012).

a. Use case diagram


Use case atau digram use case merupakan pemodelan untuk kelakuan
(behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah
interaksi antara satu atau lebih actor dengan sistem informasi yang akan dibuat.
Adapun syarat penamaan pada use case diagram sendiri adalah nama
didefinisikan sesederhana mungkin sehingga bisa dipahami. Ada dua hal utama
pada use case yaitu pendefinisian apa yang disebut aktor dan use case.
• Use case merupakan fungsionalitas yang disediakan sistem sebagai unit-unit
yang saling bertukar pesan antar unit atau aktor.
• Aktor adalah orang, proses atau sistem lain yang berinteraksi dengan sistem
yang akan dibuat, jadi meskipun simbol dari aktor adalah gambar orang tapi
aktor belum tentu merupakan orang
Berikut adalah simbol-simbol yang ada pada diagram use case yang dapat
dilihat pada Tabel 1.
Tabel 1 Simbol use case diagram

Nama Simbol Deskripsi


Use case Fungsionalitas yang disediakan
nama use case sistem sebagai unit-unit yang
saling bertukar pesan antar unit
atau aktor; biasanya dinyatakan
dengan menggunakan kata kerja di
awal fase nama use case.
Actor Orang, proses, atau sistem lain
yang akan berinteraksi dengan
sistem informasi yang akan dibuat
di luar sistem informasi yang akan
dibuat itu sendiri, jadi walaupun
simbol dari aktor adalah gambar
orang, tapi aktor belum tentu
merupakan orang; biasanya
dinyatakan menggunakan kata
benda di awal fase nama aktor.
Association Komunikasi antara aktor dan use
(asosiasi) case yang berpartisipasi pada use
case atau use case memiliki
interaksi dengan aktor.
Extend Relasi use case tambahan ke
(ekstensi) sebuah use case dimana use case
<<extend>> yang ditambahkan dapat berdiri
sendiri walau tanpa use case
tambahan itu; mirip dengan
prinsip inheritance pada
5

Nama Simbol Deskripsi


pemrograman berorientasi objek;
biasanya use case tambahan
memiliki nama depan yang sama
dengan use case yang
ditambahkan
Include Relasi use case tambahan ke
<<include>>
sebuah use case di mana use case
yang ditambahkan memerlukan
use case ini untuk menjalankan
fungsinya.

b. Class diagram
Diagram kelas atau class diagram menggambarkan struktur sistem dari segi
pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas
memiliki apa yang disebut atribut dan metode atau operasi.
• atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas .
• operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas
Simbol – simbol yang sering digunakan dalam pemodelan class diagram dapat
dilihat pada Tabel 2.

Tabel 2 Simbol class diagram

Nama Simbol Keterangan


Kelas Kelas pada struktur
sistem, kelas memiliki
tiga area pokok, yaitu:
nama, atribut, metode.

Asosiasi Relasi antarkelas dengan


makna umum, asosiasi
biasanya juga disertai
dengan multiplicity.
Generalisasi Hubungan antara anak
dan induk kelas. Kelas
anak mewarisi sifat dan
metode dari kelas induk.

c. Activity diagram
Activity diagram atau diagram aktivitas menggambarkan workflow (aliran kerja)
atau aktivitas dari sebuah system atau proses bisnis yang ada pada perangkat lunak.
Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan
aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan
oleh sistem. Simbol – simbol yang sering digunakan dalam pemodelan activity
diagram dapat dilihat pada Tabel 3 dibawah ini.
6

Tabel 3 Simbol Activity diagram

Nama Simbol Keterangan


Status awal Status awal aktivitas
system

Aktivitas Aktivitas yang dilakukan


sistem, aktivitas biasanya
diawali dengan kata
kerja.
Pencabangan (decision) Titik keputusan

Penggabungan(join) Asosiasi penggabungan


yang aktivitasnya lebih
dari satu dan
digabungkan menjadi
satu.
Status akhir Status akhir yang
dilakukan sistem.

2.2.4 Pembuatan Prototipe


Tahapan ini akan menjelaskan implementasi dari tahap perancangan dan
pemodelan yang telah dibuat sebelumnya. Pembuatan prototipe sering disebut
tahapan aktivitas konstruksi. Aktivitas konstruksi mencakup di dalamnya sejumlah
pekerjaan penulisan kode program. Penulisan kode program merupakan pembuatan
langsung kode-kode program dalam bahasa pemrograman tertentu. Penulisan kode
program secara otomatis menggunakan representasi mirip rancangan dari
komponen-komponen yang akan dikembangkan.

a. PHP
PHP (Hypertext Prosessor) adalah bahasa server-side scripting yang dapat
berfungsi sebagai web service. Web service hanya menyediakan service atau
layanan. Layanan tersebutlah yang kemudian akan digunakan atau dipanggil oleh
aplikasi lainnya. Sebuah web service dapat dipanggil oleh aplikasi lain dengan
menggunakan bantuan HTTP (Hypertext Transfer Protocol). PHP dalam hal ini
dapat menjadi jembatan antara android dengan database. Android hanya
memberikan perintah ke PHP, kemudian PHP akan melaksanakan query ke
database. Sehingga data yang diolah oleh PHP akan diparsing dan menghasilkan
output berupa data berformat JSON (JavaScript Object Notation).(Hadi 2018).

b. XML
Extensible Markup Language (XML) adalah bahasa markup untuk keperluan
umum yang disarankan oleh World Wide Web Consortium ( W3C ) untuk membuat
7

dokumen markup keperluan pertukaran data antar sistem yang beraneka ragam.
Seperti halnya HTML, XML juga menggunakan elemen yang ditandai dengan tag
pembuka (diawali dengan ‘<’ dan diakhiri dengan ‘>’), tag penutup(diawali dengan
‘</ ‘diakhiri ‘>’) dan atribut elemen (parameter yang dinyatakan dalam tag
pembuka misal <form name=”isidata”>).(Galuhsahid 2018).

c. Oracle Database
Oracle adalah relational database management sistem ( RDBMS) untuk
mengelola informasi secara terbuka, komprehensif dan terintegrasi. Oracle
menyediakan solusi yang efisien dan efektif karena kemampuannya sebagai
berikut:
• Dapat bekerja di lingkungan client / server (pemrosesan tersebar)-
Menangani manajemen space dan basis data yang besar.
• Mendukung akses data secara simultan- Performansi pemrosesan
transaksi yang tinggi.
• Menjamin ketersediaan yang terkontrol
Oracle merupakan DBMS yang dirancang khusus untuk organisasi berukuran
besar, bukan untuk ukuran kecil dan menengah. Organisasi yang berukuran besar
membutuhkan fleksibilitas dan skalabilitas agar dapat memenuhi tuntutan akan data
dan informasi yang bervolume besar dan terus menerus bertambah besar.
leksibilitas adalah kemampuan untuk menyesuaikan diri dengan berbagai
kebutuhan dan kondisi khusus yang dapat berubah-ubah. Sebagai contoh, organisasi
yang besar membutuhkan server yang terdistribusi dan memiliki redundancy
sehingga pelayanan bisa diberikan secara cepat dan tidak terganggu jika ada server
yang mati. Organisasi tersebut juga mempunyai berbagai macam aplikasi yang
dibuat dengan beragam Bahasa pemrograman dan berjalan di berbagai platform
yang berbeda. Oracle memiliki banyak sekali fitur yang dapat memenuhi tuntutan
fleksibilitas dari organisasi besar tersebut.(Simamora 2013).

d. Codeigniter
Codeigniter adalah salah satu dari sekian banyak framework PHP yang ada.
Tujuan Rick Ellis membuat framework ini adalah untuk menghasilkan sebuah
aturan yang dapat digunakan untuk melakukan pengembangan dari proyek
pembuatan website agar dapat diselesaikan lebih cepat dibandingkan dengan
pembuatan website secara biasa. Cara yang digunakan adalah dengan menyediakan
library atau pustaka yang dibutuhkan untuk pembuatan website dan menyediakan
antarmuka yang sederhana dengan struktur logika agar dapat mengakses pustaka
sesuai dengan kebutuhan.(Murya 2015).

e. Firebase
Firebase menyediakan realtime database dan backend sebagai layanannya.
Suatu aplikasi layanan yang memungkinkan pengembang membuat API untuk
disinkronisasikan untuk client yang berbeda-beda dan disimpan pada cloud-nya
Firebase. Firebase memiliki banyak library yang memungkinkan untuk
mengintegrasikan layanan ini dengan Android, iOS, JavaScript, Java, Objective-C,
dan NodeJS. Salah satu layanan firebase adalah Firebase Authentication. Firebase
Authentication menyediakan layanan backend, SDK yang mudah digunakan, dan
library UI yang siap pakai untuk mengautentikasi pengguna ke aplikasi.
8

Firebase Authentication mendukung autentikasi menggunakan sandi, nomor


telepon, penyedia identitas gabungan yang populer, seperti Google, Facebook, dan
Twitter, dan lain-lain. Firebase Authentication terintegrasi erat dengan layanan
Firebase lainnya dan sistem ini memanfaatkan berbagai standar industri, seperti
OAuth 2.0 dan OpenID Connect, sehingga dapat dengan mudah diintegrasikan
dengan backend sesuai keinginan pengembang. (https://firebase.google.com;
diakses 25 Mei 2018).
2.2.5 Penyerahan Sistem dan Umpan Balik
Prototipe kemudian akan diserahkan kepada para stakeholder dan kemudian
mereka akan melakukan evaluasi-evaluasi tertentu terhadap prototipe yang telah
dibuat sebelumnya. Iterasi akan terjadi saat prototipe diperbaiki untuk memenuhi
kebutuhan stakeholder. Evaluasi dilakukan dengan pengujian blackbox. Menurut
Pressman (2012), pengujian blackbox berfokus pada persyaratan fungsional
perangkat lunak. Dengan demikian, pengujian blackbox memungkinkan perekayasa
perangkat lunak untuk membuat beberapa kumpulan kondisi masukan yang
sepenuhnya akan melakukan semua kebutuhan fungsional untuk program.

3 GAMBARAN UMUM PT INDOSAT MEGA MEDIA

3.1 Sejarah

PT Indosat Mega Media (IndosatM2) merupakan sebuah perusahaan yang


menyediakan jasa pelayanan internet dan multimedia di Indonesia. Beberapa jasa
layanan tersebut seperti wireless internet broadband melalui hotspot, kabel TV,
virtual private network, dan layanan hosting & colocation serta e-commerce.
IndosatM2 adalah anak perusahaan PT Indosat Tbk., (penyelenggara jasa
telekomunikasi di Indonesia), yang mulai beroperasi sejak tahun 2000.
IndosatM2 ini didirikan pada tahun 1996 oleh PT. Indosat Tbk. Pada tahun
2000, IndosatM2 mulai mengoperasikan sistem TV kabel berlangganan yang
dilengkapi dengan internet dari area Kelapa Gading, Jakarta Utara sampai dengan
kantor pusat di Gedung Indosat Mega Media, Jalan Kebagusan Raya No. 36, Pasar
minggu, Jakarta Selatan. Pada tahun yang sama IndosatM2 juga memulai
melakukan kerja sama pemasaran dalam bentuk memasarkan internet pada
pelanggan Kabelvision (kini First Media).
IndosatM2 merupakan perusahaan internet service provider yang
berkembang dengan pesat, terbukti sampai dengan saat ini, IndosatM2 sudah hadir
di 33 kota dengan lebih dari 45 node di seluruh Indonesia, seperti: Medan, Batam,
Padang, Pekanbaru, Jakarta, Bogor, Bandung, Purwakarta, Serang, Semarang,
Surabaya, Denpasar, Ujung Pandang dan Balikpapan. Sedangkan untuk keperluan
akses pelanggan dari luar negeri, IndosatM2 juga memfasilitaskan roaming access
lebih dari 50 Negara di seluruh dunia.
9

3.2 Visi dan Misi

Visi :
Menjadi perusahaan yang dominan dalam industri Consumer Broadband berbasis
teknologi IP (Internet Protocol) dan layanan content serta multimedia di Indonesia.
Misi :
1. Memberikan hasil terbaik bagi para stakeholder (pemegang saham, pelanggan,
dan karyawan).
2. Menyediakan layanan akses internet yang dapa diandalkan dan terjangkau
untuk mendukung implementasi layanan Triple-Play di Indonesia.
3. Mendukung pengembangan jalur informasi dan ilmu pengetahuan di Indonesia
melalui penyediaan koneksi internet.

3.3 Struktur Organisasi

Untuk menjalankan kegiatan bisnis, IndosatM2 dipimpin oleh seorang


president director yang dibantu oleh director disetiap divisinya. Dalam kegiatan
PKL dilakukan pada bagian SITAC. Untuk lebih jelasnya dapat dilihat, pada
struktur organisasi pada Gambar 2.

Gambar 2 Struktur Organisasi IndosatM2

4 PEMBUATAN APLIKASI PENGECEKAN STATUS


PELANGGAN GIG BERBASIS ANDROID PADA PT
INDOSAT MEGA MEDIA

Dalam pembuatan Aplikasi Pengecekan Status Pelanggan GIG ini dilakukan


interasi pembuatan prototipe sebanyak dua kali. Iterasi pertama dibangun untuk
10

memenuhi kebutuhan sistem yang akan dibuat. Namun dalam pengembangannya


masih terdapat perubahan pada interface aplikasi, kesalahan dan kekurangan tabel
dalam database dan disarankan ditambahkannya sebuah fitur. Sehingga
dikembangkanlah iterasi kedua untuk mengatasi kekurangan tersebut.
Pengembangan dengan metodologi prototipe ini dilakukan dalam beberapa tahapan
secara berurutan.

4.1 Prototipe Pertama

4.1.1 Komunikasi
Komunikasi merupakan tahap awal dari pembuatan prototipe. Pada tahap ini,
dilakukan diskusi dengan pembimbing lapangan mengenai projek aplikasi yang
akan dibangun. Diskusi ditahap ini menghasilkan gambaran secara umum aplikasi.
Informasi ini sangat berguna dalam mengidentifikasi kebutuhan fungsional yang
dibutuhkan aplikasi. Selanjutnya pembimbing lapangan memberikan beberapa data
yang diperlukan, seperti data pelanggan dan data berlangganannya, namun data
yang diberikan tidak semua, hanya data dummy sebanyak puluhan data. Mengingat
data pelanggan ini merupakan privasi perusahaan. Untuk rancangan awal desain
antarmuka aplikasi, pembimbing lapangan memberikan kebebasan dan
menyarankan untuk lebih mencari referensi pada situs IndosatM2, termasuk
gambar-gambar yang diperlukan nantinya. Dari tahap komunikasi ini didapat juga
penjelasan mengenai proses bisnis lama status dapat diterima oleh pelanggan.
Proses bisnis tersebut dapat dilihat pada Gambar 3.

Gambar 3 Proses Bisnis Lama


Pada proses bisnis awal, customer service IndosatM2 akan menghubungi
pelanggan yang status aktivasinya akan berakhir. Customer service akan
mengirimkan pemberitahuan melalui email, sms, maupun menelpon langsung
11

pelanggan terkait. Namun umumnya, untuk kasus status awal, yaitu perubahan
status dari active ke block, akan dihubungi melalui email dan sms saja. Sedangkan
untuk kasus yang mana pelanggan belum juga melakukan pembayaran dan status
sudah menjadi close, barulah pihak Indosatm2 akan menelpon pelanggan dan
menanyakan terkait aktivasi paket GIG untuk kedepannya. Kendala yang dihadapi
dalam proses bisnis awal ini, pelanggan merasa kurang nyaman karena tidak semua
pelanggan akan mengecek email setiap saat, bahkan terkadang email menumpuk
banyak tidak terbaca. Kemudian terkadang nomor telepon dari pelanggan banyak
yang sudah tidak aktif, sehingga sms ataupun telepon yang masuk diabaikan
ataupun terkadang panggilan telepon yang tidak terjawab karena kesibukan
pelanggan. Kendala tersebut dianalisis dan dibuatlah rancangan proses bisnis
berbasis sistem untuk diimplementasikan pada aplikasi yang akan dibuat. Proses
bisnis tersebut dapat dilihat pada Gambar 4.

Gambar 4 Proses Bisnis Baru


Proses bisnis diatas akan diimplementasikan dalam sebuah aplikasi berbasis
android. Proses dimulai dengan pelanggan login ke dalam aplikasi menggunakan
nomor ponsel yang terdaftar di database. Kemudian sistem pun akan menampilkan
informasi status paket berlangganan. Dalam kondisi status block maupun close
sistem akan memberikan notifikasi kepada pelanggan. Pelanggan yang menerima
notifikasi tersebut, dapat langsung memilih perpanjang untuk melihat tagihan
berlangganannya. Untuk memudahkan melakukan aktivasi kembali, Pelanggan
dapat langsung melakukan pembayaran secara langsung melalui aplikasi. Sehingga
status aktivasi pelanggan pun menjadi active kembali.
12

4.1.2 Perencanaan Secara Cepat

Pada tahap perencanaan secara cepat dilakukan analisis sistem yang


merupakan tahap awal dan utama dalam langkah awal pembangunan sistem.
Analisis kebutuhan sistem. dalam pembuatan aplikasi ini didukung dengan adanya
data dan informasi yang sebelumnya telah didapatkan. Outputnya nanti akan
dijabarkan menjadi fungsionalitas yang membantu pembuatan aplikasi. Kebutuhan
fungsional dan nonfungsional sistem yang didapatkan, sangat membantu dalam
membangun pemodelan tahap selanjutnya. Kebutuhan fungsional berisi proses-
proses yang nantinya dilakukan sistem. Sedangkan kebutuhan nonfungsional terkait
dengan kebutuhan pada prilaku yang dimiliki sistem. Penamaan kode kebutuhan
fungsional direpresentasikan dengan kode PSGIG-xxx. PSGIG merupakan kode
perangkat lunak dan xxx adalah nomor kebutuhan fungsional dan nonfungsional.
Deskripsi dari kebutuhan fungsional dapat dilihat pada Tabel 4 dan untuk
kebutuhan nonfungsional pada Tabel 5.

Tabel 4 Kebutuhan fungsional

Kode Fungsional Fungsi Deskripsi


PSGIG-001 Masuk Fungsi verifikasi akun pelanggan
untuk masuk kedalam sistem
PSGIG-002 Melihat Status Fungsi melihat status paket
berlangganan GIG
PSGIG-003 Melihat Produk Fungsi melihat data paket produk
PSGIG-004 Melihat Profil Fungsi melihat profile pengguna
yang sedang login
PSGIG-005 Mengubah Profil Fungsi untuk mengubah data profile
pengguna
PSGIG-006 Perpanjang Paket Fungsi melakukan perpanjangan
paket GIG
PSGIG-007 Melihat Tagihan Fungsi melihat tagihan paket yang
harus dibayar
PSGIG-008 Melihat Riwayat Fungsi melihat transaksi yang telah
Bayar dibayar
PSGIG-009 Keluar Fungsi untuk keluar dari aplikasi

Tabel 5 Kebutuhan nonfungsional

Kode NonFungsional Deskripsi


PSGIG-010 Tersedia 24 jam sehari, 7 hari seminggu
PSGIG-011 Mudah dalam proses intalasi dan penggunaannya
PSGIG-012 Antarmuka yang mudah digunakan karena
menggunakan Bahasa Indonesia

4.1.3 Pemodelan Perancangan Secara Cepat


Pada tahap ini akan direpresentasikan hasil analisis yang telah dibuat menjadi
model desain yang lebih dimengerti oleh klien. Kebutuhan fungsional yang didapat
pada tahap sebelumnya sangat membantu dalam merancang pemodelan. Beberapa
13

perancangan yang dilakukan yaitu perancangan use case diagram, perancangan


class diagram, perancangan activity diagram, perancangan database, perancangan
antarmuka, perancangan masukan, perancangan proses dan perancangan keluaran

a. Perancangan Use Case Diagram


Aktor dalam use case diagram prototipe pertama hanyalah pelanggan. Use case
diagram dibuat untuk merepresentasikan aktivitas yang dapat dilakukan oleh aktor
pada sistem yang dibuat. Use case diagram pada prototipe pertama dapat dilihat
pada Gambar 3.

Gambar 5 Use case diagram prototipe pertama

b. Perancangan Class Diagram


Dalam pembuatan aplikasi pengecekan status pelanggan GIG terdapat class
diagram dengan jumlah kelas sebanyak tiga. Dalam setiap kelas terdapat atribut
dan method yang digunakan untuk proses dalam sistem. Kemudian kelas tersebut
diimplementasikan dengan menggunakan Oracle sebagai DBMS untuk menyimpan
data-data sesuai atribut pada setiap kelasnya. Data tersebut diambil
oleh file PHP sebagai web servicenya. Class diagram pembuatan sistem ini dapat
dilihat pada Gambar 4.
14

Gambar 6 Class diagram protipe pertama

c. Perancangan Activity Diagram


Aplikasi Pengecekan Status Pelanggan GIG memiliki sembilan activity
diagram. Activity diagram tersebut akan menggambarkan bagaimana alur sistem
dimulai hingga bagaimana akhir alur dari sistem. Deskripsi perancangan activity
diagram dapat dilihat pada Tabel 6.

Tabel 6 Perancangan activity diagram

Fungsi Deskripsi Tampilan


Masuk Alur bisnis verifikasi akun pelanggan Lampiran 1
untuk masuk kedalam sistem
Melihat Status Alur bisnis melihat status paket Lampiran 2
berlangganan GIG
Melihat Produk Alur bisnis melihat data paket produk Lampiran 3
Melihat Profil Alur bisnis profile pengguna Lampiran 4
Mengubah Profil Alur bisnis mengubah data profile Lampiran 5
pengguna
Perpanjang Paket Alur bisnis perpanjangan paket GIG Lampiran 6
Melihat Tagihan Alur bisnis tagihan paket yang harus Lampiran 7
dibayar
Melihat Riwayat Alur bisnis transaksi yang telah Lampiran 8
Bayar dibayar
Keluar Alur bisnis keluar dari aplikasi Lampiran 9

d. Perancangan Database
Perancangan database merupakan unsur terpenting dari perancangan arsitektur
sistem. Perancangan database dibuat untuk mencegah teradinya pengulangan data
yang tidak dibutuhkan. Perancangan database pada prototipe pertama terdapat
tujuh tabel.
15

1. Tabel gigcustomer
Tabel gigcustomer digunakan untuk menyimpan data pengguna yang telah
berlangganan paket GIG. Deskripsi dari tabel gigcustomer dapat dilihat pada Tabel
7.
Tabel 7 Tabel gigcustomer

Atribut Tipe data Keterangan


customer_id char (13) primary key
name varchar2 (50)
email varchar2 (50)
phone varchar2 (13) Unique
address varchar2 (100)
kecamatan_id Number
kabupaten_id Number
provinsi_id number
address_zip number
sys_created_date date
sys_modified_date Date Null

2. Tabel gigproduct
Tabel gigproduct digunakan untuk menyimpan data informasi produk GIG.
Deskripsi dari tabel gigproduct ini dapat dilihat pada Tabel 8.

Tabel 8 Tabel gigproduct

Atribut Tipe data Keterangan


product_id number primary key
product_name varchar 2 (50)

description varchar 2 ( 250)


balance number
sys_created_date date
sys_modified_date date Null

3. Tabel gigtransaction
Tabel gigtransaction digunakan untuk menyimpan data tagihan berlangganan
yang telah dibayar oleh pelanggan. Deskripsi dari tabel gigtransaction ini dapat
dlihat pada Tabel 9.

Tabel 9 Tabel gigtransaction

Atribut Tipe data Keterangan


transaction_id number primary key
invoice_id number foreign key
statusacc Varchar2 (15) dibayar
paymentacc Varchar2 (15)
create_tr_date date
16

4. Tabel giginvoice
Tabel giginvoice digunakan untuk menyimpan data pelanggan dan produk
berlangganannya. Deskripsi dari tabel giginvoice dapat dilihat pada Tabel 10.

Tabel 10 Tabel giginvoice

Atribut Tipe data Keterangan


invoice_id number primary key
customer_id char (13) foreign key
product_id number foreign key
start_date date
end_date date
status varchar2 (15) active, block atau close
status_payment varchar2 (15)

5. Tabel provinsi
Tabel provinsi akan menyimpan data provinsi yang ada di Indonesia. Tabel ini
akan berinner join dengan tabel gigcustomer untuk mengambil data nama provinsi
sesuai dengan provinsi_id nya. Deskripsi dari tabel provinsi dapat dilihat pada
Tabel 11.
Tabel 11 Tabel provinsi

Atribut Tipe data Keterangan


provinsi_id number primary key
nama varchar2(25)

6. Tabel kabupaten
Tabel kabupaten akan menyimpan data kabupaten pada setiap provinsi yang ada
di Indonesia. Tabel ini akan berinner join dengan tabel gigcustomer untuk
mengambil data nama kabupaten sesuai dengan kabupaten_id nya. Deskripsi dari
tabel kabupaten dapat dilihat pada Tabel 12.

Tabel 12 Tabel kabupaten

Atribut Tipe data Keterangan


kabupaten_id number primary key
provinsi_id number foreign key
nama varchar2(25)

7. Tabel kecamatan
Tabel kecamatan akan menyimpan data kecamatan pada setiap kabupaten yang
ada di Indonesia. Tabel ini akan berinner join dengan tabel gigcustomer untuk
mengambil data nama kecamatan sesuai dengan kecamatan_id nya. Deskripsi dari
tabel kecamatan dapat dilihat pada Tabel 13.

Tabel 13 Tabel kecamatan


17

Atribut Tipe data Keterangan


kecamatan_id number primary key
kabupaten_id number foreign key
nama varchar2(25)

e. Perancangan Antarmuka
Perancangan antarmuka berfungsi untuk merancang sekaligus menentukan
tampilan halaman dari menu-menu yang terdapat pada aplikasi. Deskripsi
perancangan antarmuka PSGIG prototipe pertama terdapat pada Tabel 14.

Tabel 14 Perancangan antarmuka

Perancangan Antarmuka Deskripsi Tampilan


Halaman login Menampilkan halaman login Lampiran 10
Halaman home Menampilkan infomasi status Lampiran 11
paket berlangganan pengguna
Halaman info produk Menampilkan infomasi Lampiran 12
produk paket berlangganan
pengguna
Halaman perpanjang Menampilkan halaman Lampiran 13
perpanjang paket
berlangganan
Halaman transaksi Menampilkan status tagihan Lampiran 14
dan riwayat transaksi
Halaman profil Menampilkan informasi profil Lampiran 15
pengguna

f. Perancangan Masukan
Perancangan masukan dirancangan untuk menentukan halaman yang
memerlukan proses memasukkan data. Perancangan masukan ini bertujuan untuk
meminimalisir kesalahan pemasukan data. Deskripsi perancangan masukan PSGIG
prototipe pertama terdapat pada Tabel 11.

Tabel 15 Perancangan masukan

Perancangan Masukan Deskripsi Tampilan


Masuk ke aplikasi Memasukkan no telepon dan kode Lampiran 16
otp yang diterima pengguna.
Pencarian riwayat Memasukkan kata kunci berupa no Lampiran 17
transaksi tagihan
Ubah profil Memasukkan data profil berupa Lampiran 18
email atau no telepon yang berbeda
dari sebelumnya, serta
memasukkan kode verifikasi sesuai
pesan singkat yang diterima.
18

g. Perancangan Proses
Perancangan proses dirancangan untuk menggambarkan alur data dapat
mengalir pada sistem. Perancangan proses digambarkan dalam bentuk activity
diagram yang telah dijelaskan sebelumnya. Deskripsi perancangan proses PSGIG
prototipe pertama terdapat dapat dilihat pada Tabel 6.

h. Perancangan Keluaran
Perancangan keluaran bertujuan untuk perancangan keluaran bertujuan untuk
menampilkan rancangan tampilan keluar yang dihasilkan dari proses yang berjalan
pada sistem. Tampilan ini dapat berasal dari proses input data oleh pengguna.
Deskripsi perancangan keluaran PSGIG prototipe pertama terdapat pada Tabel 16.

Tabel 16 Perancangan keluaran

Perancangan Keluaraan Deskripsi Tampilan


Informasi Status Hasil keluaran dari proses Lampiran 19
berlangganan masuk kedalam aplikasi
pencarian riwayat Hasil keluaran dari proses Lampiran 20
transaksi pencarian riwayat transaksi

4.1.4 Pembentukan Prototipe

Tahapan ini akan menjelaskan implementasi dari tahap perancangan dan


pemodelan yang telah dibuat sebelumnya. Tahap pembentukan prototipe
membutuhkan perangkat keras dan perangkat lunak yang mendukung untuk
pembangunan aplikasi. Pembentukan prototipe diimplementasikan dengan
pembuatan database dan pembuatan aplikasi pengecekan status pelanggan GIG
sesuai rancangan masukan, rancangan proses dan rancangan keluaran.

a. Perangkat Keras
Perangkat keras yang digunakan untuk membangun sistem ini adalah sebuah
laptop Asus X55LD, dengan spesifikasi sebagai berikut:
1. Prosessor Intel Core i5-4210U 1.7 GHz.
2. Memory RAM 4 GB.
3. Ukuran layar 15,6’’.
4. GPU NVIDIA GEFORCE 820M.
Kemudian untuk menjalankan aplikasi ini dibutuhkan sebuah perangkat
mobile. Dalam implementasinya digunakan smartphone Honor 9 Lite untuk
menjalankan aplikasi dengan spesifikasi sebagai berikut:
1. Sistem Operasi Android O+EMUI8.0.
2. Memory RAM 3 GB.
3. Ukuran layar 5.65’’.
4. Prosessor Huawei Kirin 659
19

b. Perangkat Lunak
Perangkat Lunak yang digunakan untuk proses pembuatan aplikasi, dan
menjalankan aplikasi ini dapat dilihat pada Tabel 17.

Tabel 17 Spesifikasi Software

No Aplikasi Nama Aplikasi


1 Text Editor Android Studio 3.0, Sublime Text 3
2 Web server XAMPP v3.2.1
3 Pengelola database Oracle SQL Developer 17.4.0.355
4 Framework Codeigniter
5 Bahasa Pemrograman PHP, Java
6 Pengontrol Tampilan AirDroid
7 Pengelola Service Autentifikasi Firebase Google
dan Cloud Messaging

c. Implementasi Database
Dalam implementasi database digunakan oracle sebagai Database Management
Sistem (DBMS). Pembuatannya menggunakan software Oracle SQL Developer.
Database yang dibangun berjumlah tujuh tabel. Implementasi dari database yang
dibuat dapat dilihat pada Gambar 5.

Gambar 7 Implementasi database prototipe pertama

d. Implementasi Antarmuka
Implementasi antarmuka dibangun sesuai dengan hasil perancangan antarmuka
yang telah dijelaskan sebelumnya. Pembuatan antarmuka dibangun menggunakan
software Android Studio dan XML sebagai bahasa markup untuk membuat
tampilan secara statis. Deskripsi Impelemntasi antarmuka dapat dilihat pada Tabel
18.
20

Tabel 18 Implementasi antarmuka

Implementasi Deskripsi Tampilan


Antarmuka
Halaman login Menampilkan halaman login Lampiran 21
Halaman home Menampilkan infomasi status Lampiran 22
paket berlangganan pengguna
Halaman info produk Menampilkan infomasi Lampiran 23
produk paket berlangganan
pengguna
Halaman perpanjang Menampilkan halaman Lampiran 24
perpanjang paket
berlangganan
Halaman transaksi Menampilkan status tagihan Lampiran 25
dan riwayat transaksi
Halaman profil Menampilkan informasi profil Lampiran 26
pengguna

e. Implementasi Masukan
Implementasi masukan dibuat sesuai dengan hasil perancangan masukan yang
telah dirancang sebelumnya. Deskripsi implementasi masukan pada PSGIG
prototipe pertama terdapat pada Tabel 19.

Tabel 19 Implementasi masukan

Impementasi Masukan Deskripsi Tampilan


Masuk ke aplikasi Memasukkan no telepon dan kode Lampiran 27
otp yang diterima pengguna.
Pencarian riwayat Memasukkan kata kunci berupa no Lampiran 28
transaksi tagihan
Ubah profil Memasukkan data profil berupa Lampiran 29
email atau no telepon yang berbeda
dari sebelumnya, serta
memasukkan kode verifikasi sesuai
pesan singkat yang diterima.

f. Implementasi Proses
Implementasi proses pada PSGIG dibangun dengan menggunakan Software text
editor Android Studio dengan bahasa pemrograman Java dan PHP, dibantu dengan
framework codeigniter dan DBMS oracle. Pembuatan sistem ini juga memerlukan
firebase sebagai MBaas (Mobile Backend as a Service). Saat ini, layanan firebase
dapat diperoleh secara gratis, sehingga dapat digunakan tanpa batasan waktu.
Penggunaan firebase dibutuhkan untuk melakukan autentikasi ke dalam sistem
dengan menggunakan nomor ponsel. Pelanggan akan dikirimkan pesan SMS
berupa kode OTP (One Time Password). Kode ini hanya dapat dipakai sekali setiap
pelanggan ketika akan login ke sistem.
21

Tahap implementasi proses akan ditampilkan potongan kode program yang


merupakan hasil implementasi dari perancangan proses pada tahap sebelumnya.
Implementasi proses pada PSGIG prototipe pertama terdapat pada Tabel 20.

Tabel 20 Implementasi proses

No Implementasi Proses Tampilan


1 Masuk Lampiran 30
2 Melihat Status Lampiran 31
3 Melihat Produk Lampiran 32
4 Melihat Profil Lampiran 33
5 Mengubah Profil Lampiran 34
6 Perpanjang Paket Lampiran 35
7 Melihat Tagihan Lampiran 36
8 Melihat Riwayat Bayar Lampiran 37
9 Keluar Lampiran 38

g. Implementasi Keluaran
Implementasi keluaran dibuat sesuai dengan hasil perancangan keluaran pada
tahap sebelumnya. Deskripsi implementasi keluaran pada PSGIG terdapat pada
Tabel 21.

Tabel 21 Implementasi keluaran

Implementasi Keluaraan Deskripsi Tampilan


Informasi Status Hasil keluaran dari proses Lampiran 39
berlangganan masuk kedalam aplikasi
pencarian riwayat Hasil keluaran dari proses Lampiran 40
transaksi pencarian riwayat transaksi

4.1.5 Penyerahan Sistem dan Umpan Balik


Setelah beberapa minggu dikembangkan dan aplikasi telah selesai dibuat
sesuai analisis prototipe pertama, maka dilakukan diskusi dengan pembimbing
lapangan sebagai klien dengan presentasi singkat sekaligus menguji kelayakan
sistem. Pengujian dilakukan mengunakan metode blackbox untuk melihat
kelayakan sistem sesuai dengan kebutuhan fungsional yang diperlukan. Jika
kebutuhan belum terpenuhi, maka prototipe akan diperbaiki dan dilakukan iterasi
kedua sampai semua kebutuhan pengguna terpenuhi. Hasil pengujian prototipe
pertama diketahui bahwa masih terdapat beberapa error pada aplikasi dan klien
menyarankan untuk menambahkan fitur notifikasi. Deskripsi pengujian
menggunakan metode blackbox prototipe pertama dapat dilihat pada Tabel 22.
22

Tabel 22 Pengujian aplikasi prototipe pertama

Pengujian Nilai Skenario Uji Hasil yang Hasil Uji


Input diharapkan
Masuk ke Benar Klik dapatkan kode Mengirimkan sms Berhasil
aplikasi OTP berupa kode OTP ke
ponsel pengguna
yang berlaku selama
60 detik
Benar Klik kirim ulang ketika Mengirimkan Berhasil
waktu kode OTP telah kembali sms berupa
melewati 60 detik kode OTP ke ponsel
pengguna
Benar Masukkan nomor Masuk ke dalam Berhasil
telepon yang sesuai aplikasi
format, terdaftar di
database dan kode
OTP yang benar
Benar Masukkan no telepon Masuk ke dalam Berhasil
dengan email dan aplikasi
nama yang sama pada
database, serta kode
OTP benar
Salah Masukkan nomor Memunculkan pesan Berhasil
telepon yang tidak kesalahan pada
sesuai format dan tidak nomor telepon
ada didatabase
Salah Masukkan kode OTP Memunculkan pesan Berhasil
yang salah kesalahan pada kode
OTP
Salah Mematikan koneksi Memunculkan pesan Berhasil
internet tidak ada koneksi
internet

Melihat Benar Tampilkan status Menampilkan status Berhasil


Status sesuai di database dan berlangganan
koneksi internet pelanggan sesuai di
diaktifkan database
Salah Tampilkan status Memunculkan pesan Berhasil
sesuai di database dan tidak ada koneksi
mematikan koneksi internet dan status
internet berlangganan tidak
terjadi perubahan
23

Melihat Benar Klik tombol produk Menampilkan Berhasil


Produk dan koneksi internet produk berlangganan
diaktifkan pelanggan sesuai di
database
Salah Klik tombol produk Memunculkan pesan Berhasil
dan koneksi internet tidak ada koneksi
dimatikan internet

Melihat Benar Klik menu profil dan Menampilkan Berhasil


Profil koneksi internet informasi profil
diaktifkan pengguna sesuai
database
Salah Mematikan koneksi Memunculkan pesan Berhasil
internet tidak ada koneksi
internet

Mengubah Benar Klik kirim kode Mengirimkan sms Berhasil


Profil verifikasi kode verifikasi ke
ponsel pengguna
Benar Form nomor telepon Button simpan dapat Berhasil
atau email diisi sesuai diklik dan profil
format dan kode berhasil dirubah
verifikasi yang benar
Salah Form nomor telepon Button simpan tidak Berhasil
dan email dapat diklik
dikosongkan, kode
verifikasi benar
Salah Form email atau Button simpan tidak Berhasil
nomor telepon dapat diklik
dikosongkan dan kode
verifikasi benar
Salah Form nomor telepon Memunculkan pesan Berhasil
dan email diisi seusai kode verifikasi salah
format, namun kode
verifikasi salah
Salah Form nomor telepon Button simpan tidak Berhasil
dan email dapat diklik
dikosongkan, kode
verifikasi salah
Salah Form nomor telepon di Database no telepon Berhasil
isi dengan data yang tidak terganti
sudah ada di database
Benar Form email di isi Database email akan Berhasil
dengan data yang terganti sesuai
sudah ada di database dengan email baru
yang disimpan
Salah Mematikan koneksi Berhasil
internet
24

Memunculkan pesan
tidak ada koneksi
internet

Klik perpanjang dan Menampilan rincian


Perpanja Benar koneksi internet perpanjangan paket Berhasil
ngan paket diaktifkan dengan
status aktivasi block
Klik perpanjang dan Menampilkan pop up
Salah koneksi internet masih berlangganan Berhasil
diaktifkan dengan
status aktivasi active
Klik perpanjang dan Menampilkan pop up
Salah koneksi internet hubungi customer Berhasil
diaktifkan dengan service
status aktivasi close
Klik Selanjutnya dan Menampilkan
Benar koneksi internet metode pembayaran Berhasil
diaktifkan
Mematikan koneksi Memunculkan pesan
Salah internet tidak ada koneksi Berhasil
internet

Melihat Benar Klik menu transaksi, Menampilkan Berhasil


Tagihan kemudian pilih tagihan tagihan produk yang
dengan koneksi harus dibayar
diaktifkan
Benar Pilih tagihan produk Menampilkan detail Berhasil
yang harus dibayar informasi produk
dengan status aktivasi yang harus dibayar.
block
Salah Pilih tagihan produk Memunculkan pop Berhasil
yang harus dibayar up hubungi customer
dengan status aktivasi service
block
Salah Mematikan koneksi Memunculkan pesan Berhasil
internet tidak ada koneksi
internet

Melihat Benar Klik menu transaksi, Menampilkan Berhasil


Riwayat kemudian pilih riwayat tagihan produk yang
Bayar & koneksi diaktifkan sudah dibayar
Benar Ketik kata kunci Menampilkan Berhasil
nomor transaksi pada transaksi sesuai kata
menu search kunci kunci yang
diketikan
25

Salah Mematikan koneksi Memunculkan pesan Berhasil


internet tidak ada koneksi
internet

Keluar Klik menu profil,


dari kemudian pilih keluar Menampilkan pesan
aplikasi Benar & koneksi diaktifkan dialog pilihan keluar Berhasil
aplikasi (ya atau
Klik ya pada dialog tidak)
keluar & koneksi Keluar dari aplikasi
Benar diaktifkan dan pindah ke Berhasil
halaman masuk
Klik tidak pada dialog aplikasi
keluar & koneksi nyala Tetap berada pada
Benar halaman profil Berhasil
Salah Mematikan koneksi Memunculkan pesan
internet tidak ada koneksi Berhasil
internet

Dari pengujian yang dilakukan, fungsionalitas dari sistem sudah dapat


diimplementasikan menjadi sebuah aplikasi berbasis android. Namun, aplikasi
masih mengalami permasalahan pada firebase yang terkadang kode OTP yang
diterima harus menunggu beberapa menit. Hal ini akan terjadi ketika pengguna
memasukkan nomor telepon yang sesuai format dan terdaftar didatabase, kemudian
memilih klik dapatkan kode OTP secara terus menerus dalam waktu bersamaan.
Dari kasus ini, nantinya pengguna akan menerima pesan harap menunggu pada
aplikasi. Permasalahan ini diakibatkan juga karena pihak Google sebagai penyedia
layanan firebase membatasi dalam pengiriman SMS kode verifikasi sebanyak 50
pesan/alamat IP/menit atau 500 pesan/alamat IP/jam. Namun, Pembatasan ini dapat
berubah tanpa pemberitahuan. Salah satu solusinya adalah pengguna disarankan
untuk melakukan pembersihan aplikasi ini dengan menghapus data chace ataupun
data aplikasi pada pengaturan.

4.2 Prototipe Kedua

4.2.1 Komunikasi

Pada tahap komunikasi prototipe kedua, dilakukan diskusi kembali dengan


pembimbing lapangan mengenai kekurangan pada aplikasi yang telah dibuat pada
prototipe pertama. Terdapat beberapa kekurangan yang perlu ditambahkan dan
diperbaiki. Pembimbing lapangan menyarankan untuk memperbaiki beberapa
fungsi yang belum berjalan pada aplikasi. Kemudian dilakukan penambahan fitur
notifikasi pada aplikasi. Perubahan ini pun mengharuskan dibuatnya tabel baru
yaitu, tabel notifikasi.
4.2.2 Perencanaan Secara Cepat
26

Perencanaan secara cepat pada prototipe kedua sama dengan prototipe


pertama. Pada tahap ini hanya dilakukan analisis terhadap penambahan fitur
notifikasi. Outputnya pun akan menghasil kebutuhan fungsional baru pada aplikasi.
Deskripsi dari kebutuhan fungsional pada prototipe kedua dapat dilihat pada Tabel
23.

Tabel 23 Kebutuhan fungsional prototipe kedua

Kode Fungsional Nama Fungsi Deskripsi


PSGIG-013 Melihat notifikasi Fungsi untuk melihat notifikasi
yang masuk

4.2.3 Pemodelan Perancangan Secara Cepat


Tahap pemodelan perancangan secara cepat dilakukan penambahan model
rancangan terhadap aplikasi.Tahap ini hanya menjelaskan bagian yang mengalami
penambahan dan perubahan, sedangkan bagian yang tidak mengalami penambahan
dan perubahan tidak akan dijelaskan kembali.

a. Perancangan Use case diagram


Perancangan use case diagram prototipe kedua mengalami penambahan sebuah
fungsi. Penambahan fitur yang dimaksud yaitu fungsi notifikasi. Namun tidak
dilakukan penambahan terhadap aktornya. Aktor dalam use case diagram hanyalah
pelanggan. Use case diagram prototipe kedua ditunjukan pada Gambar 6.

Gambar 8 Use case diagram prototipe kedua


27

b. Perancangan Class diagram


Perubahan perancangan class diagram pada prototipe kedua terjadi karena
adanya penambahan tabel pada sistem yang dibangun. Kelas yang dibangun
bertambah satu menjadi empat. Class diagram pada prototipe kedua dapat
dilihat pada Gambar 7.

Gambar 9 Class diagram prototipe kedua

c. Perancangan Activity diagram


Pada perancangan Activity diagram pada prototipe kedua terjadi perubahan. Hal
ini dikarenakan adanya penambahan fungsi, sehingga activity diagram pun
bertambah. Activity yang dimaksud adalah alur proses melihat notifikasi yang dapat
dilihat pada Gambar 8.

Gambar 10 Activity diagram melihat notifikasi


28

d. Perancangan Database
Perancangan Database pada prototipe kedua terjadi penambahan satu tabel
untuk notifikasi dikarenakan adanya penambahan fitur notifikasi. Tabel ini
merupakan tabel baru yang belum ada datanya dari pihak Indosat M2. Tabel
gignotifikasi digunakan untuk menampung data notifikasi yang dikirimkan ke
pelanggan. Deskripsi dari tabel gignotifikasi dapat dilihat pada Tabel 24.

Tabel 24 Tabel gignotifikasi

Atribut Tipe data Keterangan


id_notif number primary key
customer_id char (13) foreign key
message varchar2 (150)
title varchar2 (50)
created_date date

e. Perancangan Antarmuka
Prototipe kedua pada PSGIG mengalami penambahan sebuah sehingga
menyebabkan adanya penambahan pada perancangan antarmuka. Perancangan
tersebut adalah perancangan antarmuka notifikasi yang dapat dilihat pada Gambar
9.

Gambar 11 Perancangan antarmuka notifikasi

f. Perancangan Proses
Perancangan proses pada prototipe kedua terjadi penambahan. Perancangan
proses nya sama seperti alur proses yang ada pada bagian activity diagram prototipe
kedua. Perancangan proses tersebut dapat dilihat pada Gambar 8.
4.2.4 Pembentukan Prototipe

Tahap pembentukan prototipe kedua akan dilakukan implementasi sesuai


dengan hasil perancangan di tahap sebelumnya. Pembentukan prototipe pada iterasi
kedua sama seperti iterasi pertama, dibangun dengan menggunakan Software text
29

editor Android Studio dengan bahasa pemrograman Java dan PHP, dibantu dengan
framework codeigniter dan DBMS oracle. Pembuatan sistem ini juga memerlukan
Layanan firebase yang dibutuhkan juga dalam memberikan notifikasi ke pelanggan.

a. Implementasi Database
Implementasi database prototipe kedua terdapat penambahan satu tabel yaitu
tambahan tabel gignotifikasi Implementasi database PSGIG prototipe kedua dapat
dilihat pada Gambar 10.

Gambar 12 Implementasi database prototipe kedua

b. Implementasi Antarmuka
Implementasi antarmuka dibuat sesuai dengan perancangan antarmuka pada
tahap sebelumnya. Perancangan antarmuka yang dibangun adalah tampilan untuk
notifikasi. Implementasi antarmuka pada PSIGIG prototipe kedua terdapat pada
Gambar 11.

Gambar 13 Implementasi antarmuka notifikasi


30

c. Implementasi Proses
Tahap implementasi proses pada prototipe kedua akan menampilkan kode
program dari fitur notifikasi. Implementasi ini merupakan hasil implementasi dari
perancangan proses pada tahap sebelumnya. Implementasi proses pada PSGIG
prototipe kedua terdapat pada Lampiran 41.
4.2.5 Penyerahan Sistem Umpan Balik
Setelah dibangunnya prototipe pertama dan dilakukan penambahan fitur pada
protipe kedua, maka dilakukan presentasi kembali sekaligus melihat fungsionalitas
sistem apakah sudah berjalan dengan baik dan sesuai harapan. Pengujian dilakukan
mengunakan metode blackbox untuk melihat kelayakan sistem sesuai dengan
kebutuhan yang diperlukan. Deskripsi pengujian pada prototipe kedua dapat dilihat
pada Tabel 25
Tabel 25 Pengujian blackbox prototipe kedua

Pengujian Nilai Skenario Uji Hasil yang Hasil Uji


Input diharapkan
Melihat Benar Klik menu profil, Menampilkan Berhasil
Notifikasi kemudian pilih ikon pesan yang sudah
notifikasi dibaca dan belum
dibaca
Benar Lihat jumlah notifikasi Menampilkan Berhasil
pada ikon pesan yang
belum dibaca
sesuai jumlah
yang tertera pada
ikon notifikasi
Benar Pilih salah satu pesan Menampilkan Berhasil
pada halaman detail pesan
notifikasi
Salah Mematikan koneksi Memunculkan Berhasil
internet pesan tidak ada
koneksi internet

Fungsionalitas fitur notifikasi yang diuji melalui pengujian blackbox sudah


sesuai dengan keinginan klien. Semua fungsi yang diinginkan sudah dapat
diimplementasikan menjadi sebuah aplikasi berbasis android. Tahapan terakhir
adalah penyerahan sistem ke perusahaan dengan memberikan kode program yang
telah dibuat.

4.3 Evaluasi Seminar

Seminar telah dilakukan pada tanggal 15 Mei 2018 dengan moderator bapak
Bayu Widodo. ST. Seminar dilaksanakan dengan diskusi antara pemrasaran,
pembahas dan peserta.

1. Pertanyaan : Bagaimana kode OTP dapat terkirim ke pengguna?


31

Jawaban : Pengiriman kode OTP memanfaatkan layanan Firebase.


Fitur yang digunakan adalah Firebase Authentication. Dalam implementasinya,
firebase sudah menyediakan kode program untuk mengatur agar kode OTP
terkirim ke nomor yang dituju. Namun sebelumnya kita harus mengatur
konfigurasi pada firebase console dan menambahkan library firebase.
2. Pertanyaan : Apakah ketika status berubah dari active menjadi block
terdapat notifikasi?
Jawaban : Notifikasi dalam kasus ini sudah diimplementasikan.
3. Pertanyaan : Kenapa status ketika masuk selalu close?
Jawaban : Dalam demo program, job scheduler diatur setiap satu
menit terjadi perubahan status. Karena ketika presentasi dan demo program
melebihi 3 menit, maka status secara otomatis menjadi close. Kondisi close
adalah kondisi terakhir ketika pelanggan belum membayar paket
berlangganannya.

5 SIMPULAN DAN SARAN

5.1 Simpulan

Aplikasi pengecekan status pelanggan GIG merupakan aplikasi yang


dibangun untuk memudahkan pelanggan GIG dalam melakukan perpanjangan
paket dan mengecek status berlangganannya. Setelah melewati beberapa tahapan,
aplikasi sudah selesai dikerjakan dan dapat digunakan. Dibangunnya aplikasi ini
dapat diharapkan menjadi solusi dalam mencapai tujuan sebagai berikut
1. Menampilkan status berlangganan GIG.
2. Melihat tagihan biaya berlangganan GIG.
3. Menyediakan fasilitas untuk melihat informasi produk GIG
4. Menyediakan faisilitas notifikasi status dan pembayaran.

5.2 Saran

Walaupun aplikasi ini sudah bisa digunakan, namun masih perlu


dilakukannya pengembangan yang lebih dikarenakan masih terdapat beberapa
modul yang harus disempurnakan. Salah satunya modul pembayaran yang belum
dijalankan secara real time dan adanya automisasi verifikasi pembayaran secara
langsung. Lebih bagusnya lagi jika ditambahkan pembayaran dengan virtual
account. Sehingga pembayaran dapat diverifikasi lebih cepat.
Kemudian, Jika kedepannya pihak IndosatM2 ingin menambahkan fitur
promo ataupun voucher produk, disarankan untuk mengembangkan modul
mengirimkan notifikasi secara real time melalui admin yang mengelol.. Notifikasi
ini dapat diimplementasikan menggunakan layanan firebase. Namun, untuk
stabilitas firebase yang lebih baik kedepannya pihak pengembang aplikasi, dapat
mengupgrade layanan firebase dengan memilih paket berbayar pada firebase.
32

DAFTAR PUSTAKA
Galuhsahid. 2018 Januari 5. XML [Internet]. [diakses 2018 Mei 25]. Tersedia pada:
https://developer.mozilla.org/id/docs/Glossary/XML
Google. 2017. Firebase [Internet]. [diakses 2018 April 21]. Tersedia pada:
https://firebase.google.com
Hadi AP. 2018. Memahami JSON pada PHP [Internet]. [diakses 2018 Juni 10].
Tersedia pada : http://jagowebdev.com/memahami-json-pada-php/
Murya Y. 2013. Pemrograman PHP Codeigniter Black Box. Purwokerto(ID):
Jasakom
Pressman RS. 2012. Rekayasa Perangkat Lunak Buku Satu. Penerjemah.
Yogyakarta: Andi Yogyakarta. Terjemahan dari : SOFTWARE
ENGINEERING: A Practitioner’s Approach
Rosa, Shalahudin M. 2018. Rekayasa Perangkat Lunak (Terstruktur Berorientasi
Objek) Edisi Revisi. Bandung(ID): Informatika.
Simamora RS. 2013. Buku Pengantar Sistem Informasi. [diunduh 2018 Mei 25].
Tersedia pada : https://www.scribd.com/document/120445971/Buku-
Pengantar-Sistem-Informasi
33

LAMPIRAN
34

Lampiran 1 Alur proses masuk

Lampiran 2 Alur proses melihat status


35

Lampiran 3 Alur proses melihat produk

Lampiran 4 Alur proses melihat profil


36

Lampiran 5 Alur proses mengubah profil

Lampiran 6 Alur proses perpanjang paket


37

Lampiran 7 Alur proses melihat tagihan

Lampiran 8 Alur proses melihat riwayat bayar


38

Lampiran 9 Alur proses keluar

Lampiran 10 Rancangan antarmuka login


39

Lampiran 11 Rancangan antarmuka home

Lampiran 12 Rancangan antarmuka info produk

Lampiran 13 Rancangan antarmuka perpanjang


40

Lampiran 14 Rancangan antamuka transaksi

Lampiran 15 Rancangan antarmuka profil

Lampiran 16 Rancangan masukan masuk ke aplikasi


41

Lampiran 17 Rancangan masukan pencarian riwayat transaksi

Lampiran 18 Rancangan masukan ubah profil

Lampiran 19 Rancangan keluaran informasi status berlangganan

Lampiran 20 Rancangan keluaran informasi riwayat transaksi


42

Lampiran 21 Implementasi antarmuka login

Lampiran 22 Implementasi antarmuka home


43

Lampiran 23 Implementasi antarmuka info produk

Lampiran 24 Implementasi antarmuka perpanjang


44

Lampiran 25 Implementasi antarmuka transaksi

Lampiran 26 Implementasi antarmuka profil


45

Lampiran 27 Implementasi masukan masuk ke aplikasi

Lampiran 28 Implementasi masukan pencarian riwayat transaksi


46

Lampiran 29 Implementasi masukan ubah profil

Lampiran 30 Implementasi proses masuk

verify_otp.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
PhoneAuthCredential phoneAuthCredential =
PhoneAuthProvider.getCredential(mVerificationId,(otp.getText().toString()
));
signInWithPhoneAuthCredential(phoneAuthCredential);
}
});

mCallbacks = new PhoneAuthProvider.OnVerificationStateChangedCallbacks()


{
public void onVerificationCompleted(@NonNull PhoneAuthCredential
credential) {
mVerificationInProgress = false;
}
public void onVerificationFailed(FirebaseException e) {
public void onCodeSent(String verificationId,
PhoneAuthProvider.ForceResendingToken
token) {

starttimer();
mVerificationId = verificationId;
mResendToken = token;
}
};

private void signInWithPhoneAuthCredential(PhoneAuthCredential


credential) {
mAuth.signInWithCredential(credential)
.addOnCompleteListener(this, new
OnCompleteListener<AuthResult>() {
@Override
public void onComplete( Task<AuthResult> task) {
}
}}
47

Lampiran 31 Implementasi proses melihat status


set = RetrofitClient.getApicustomer();
set.authenticate(notelp).enqueue(new Callback<List<Customer_Data>>() {
@Override
public void onResponse(Call<List<Customer_Data>> call,
Response<List<Customer_Data>> response) {
mSwipeRefreshLayout.setRefreshing(false);
List<Customer_Data> Loginmember = response.body();
String a="";
String b="";
c="";

for(Customer_Data m : Loginmember ){
a = m.getCUSTOMER_ID();
b = m.getNAME();
c = m.getSTATUS();
}
if (c.equals("BLOCK")){
createNotification();

}
else if(c.equals("CLOSE")){
createNotif2();
}
else{

}
name.setText(b);
user.setText( a);
st.setText(c);

Lampiran 32 Implementasi proses melihat produk


set = RetrofitClient.getApicustomer();
set.authenticate(notelp).enqueue(new Callback<List<Customer_Data>>() {
public void onResponse(Call<List<Customer_Data>> call,
Response<List<Customer_Data>> response) {
List<Customer_Data> Loginmember = response.body();
String a="";
String b="";
for(Customer_Data m : Loginmember ){ a = m.getEND_DATE();}
berl.setText(a);}
public void onFailure(Call<List<Customer_Data>> call, Throwable t) {

}
});
nama = (TextView) findViewById(R.id.detpelanggan);
ide = (TextView) findViewById(R.id.detidpel);
al = (TextView) findViewById(R.id.detal);
prod = (TextView) findViewById(R.id.detprod);
berl = (TextView) findViewById(R.id.detber);
nama.setText(nma);
ide.setText(customer_id);
prod.setText(prodname);
al.setText(kabupaten );
48

Lampiran 33 Implementasi proses melihat profil


customer_id = getActivity().getIntent().getStringExtra("CUSTOMER_ID");
nama = getActivity().getIntent().getStringExtra("NAME");
notelp = getActivity().getIntent().getStringExtra("PHONE");

n = (TextView) view.findViewById(R.id.edt_nama);
t = (TextView) view.findViewById(R.id.edt_no);
ce = (TextView) view.findViewById(R.id.edt_id);

ce.setText(customer_id);
n.setText(nama);
t.setText(notelp);

Lampiran 34 Implementasi proses mengubah profil

private void signInWithPhoneAuthCredential(PhoneAuthCredential


credential) {
mAuth.signInWithCredential(credential)
.addOnCompleteListener(this, new
OnCompleteListener<AuthResult>() {
@Override
public void onComplete( Task<AuthResult> task) {
if (task.isSuccessful()) {
timer.cancel();
notel = actphone.getText().toString();
em = actmail.getText().toString();
Date tanggal = new Date();
DateFormat df = new SimpleDateFormat("dd-MM- yyyy
HH:mm:ss");
std1 = df.format(tanggal);
set = RetrofitClient.getApicustomer();
set.edt2(customer_id,nma,notel,em,std1).enqueue(new
Callback<List<Customer_Data>>() {
@Override
public void
onResponse(Call<List<Customer_Data>> call, Response<List<Customer_Data>>
response) {
Intent i = new Intent(edit.this,Home.class);
"PROFIL BERHASIL DIUBAH", Toast.LENGTH_LONG).show();
startActivity(i);
}
@Override
public void
onFailure(Call<List<Customer_Data>> call, Throwable t) {
}
});
} else {

if (task.getException() instanceof
FirebaseAuthInvalidCredentialsException) {
warning.setVisibility(View.VISIBLE);
warning.setText("Kode Verifikasi Salah");
warning.setTextColor(Color.RED);
}
}
}
});
49

Lampiran 35 Implementasi proses perpanjang produk


final Button byr = (Button) findViewById(R.id.butt);
byr.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
inv = RetrofitClient.getApicustomer();
inv.getinvoice(customer_id).enqueue(new
Callback<List<Data_inv>>() {
@Override
public void onResponse(Call<List<Data_inv>> call,
Response<List<Data_inv>> response) {
stacc = "Dibayar";
pymcc = "Transfer";
List<Data_inv> in = response.body();
invid ="";
for(Data_inv m : in){
invid = m.getINVOICE_ID();

}
String b="";
String bb =invid;
String accci="";
inv1 = RetrofitClient.getApicustomer();
inv1.postActivity2(accci,bb,stacc,pymcc).enqueue(new
Callback<Data_TR>() {
public void onResponse(Call<Data_TR> call, Response<Data_TR> response) {
Intent i = new Intent(Tr_bayar.this,Home.class);
Toast.makeText(getBaseContext(), "PEMBAYARAN BERHASIL",
Toast.LENGTH_LONG).show();
startActivity(i);
createNotification();}
public void createNotification() {
Intent i = new
Intent(getBaseContext(),Lv_notif.class);
Date tanggal = new Date();
DateFormat df = new SimpleDateFormat("dd-MM-yyyy");
String std1 = df.format(tanggal);
String title = "Pemberitahuan MyGIG";
String mesage = "Selamat Pembayaran untuk paket " + prodname + " telah
dibayar pada tanggal " + std1;
PendingIntent pIntent = PendingIntent.getActivity(getBaseContext(), (int)
System.currentTimeMillis(), i, 0);
android.app.Notification notification = new
android.app.Notification.Builder(getBaseContext()).setContentTitle(title)
.setContentText(mesage).setSmallIcon(R.drawable.logo).
setSound(defaultSoundUri).setContentIntent(pIntent).build();
NotificationManager notificationManager = (NotificationManager)
getSystemService(NOTIFICATION_SERVICE);
notification.flags |= android.app.Notification.FLAG_AUTO_CANCEL;
notificationManager.notify(1, notification);
String nid ="";
String ncus=customer_id;
notif = RetrofitClient.getApicustomer();
notif.postnotif(nid,ncus,mesage,title,std1).enqueue(new
Callback<Data_Notif>() {
public void onResponse(Call<Data_Notif> call, Response<Data_Notif>
response) {}
public void onFailure(Call<Data_Notif> call, Throwable t) {
}
});
50

Lampiran 36 Implementasi proses melihat tagihan


inv = RetrofitClient.getApicustomer();
inv.getinvoice(customer_id).enqueue(new Callback<List<Data_inv>>() {
@Override
public void onResponse(Call<List<Data_inv>> call,
Response<List<Data_inv>> response) {
invid ="";
tglid="";
List<Data_inv> in1 = response.body();
for(Data_inv m : in1){
invid = m.getINVOICE_ID();
tglid = m.getEND_DATE();
}
accnama.setText(nama);
acccid.setText(customer_id);
accprd.setText("Perpanjangan " + prodname);
acctot.setText(balance);
acchrg.setText(balance);
accinv.setText("#invoice" + invid);
acctgl.setText(tglid);
}

@Override
public void onFailure(Call<List<Data_inv>> call, Throwable t) {

}
});

Lampiran 37 Implementasi proses melihat riwayat bayar

public View getView(int position, View view, final ViewGroup root) {


view = layoutInflater.inflate(R.layout.activity_tampilan_sukses, root,
false);
TextView tr = (TextView) view.findViewById(R.id.texttrx1);
TextView prod = (TextView) view.findViewById(R.id.textpaket1);
TextView tgl = (TextView) view.findViewById(R.id.tgltext1);
TextView st = (TextView) view.findViewById(R.id.tglst1);
TextView hrg = (TextView) view.findViewById(R.id.rp1);
tr.setText("INVGIG0000" + this.fData1.get(position).getTRANSACTION_ID());
prod.setText(this.fData1.get(position).getPRODUCT_NAME());
tgl.setText(this.fData1.get(position).getCREATE_TR_DATE());
st.setText(this.fData1.get(position).getSTATUSACC());
hrg.setText("SUKSES");
return view;
}
public Filter getFilter() {
return new Filter() {
protected FilterResults performFiltering(CharSequence constraint){
ArrayList<Data_TR> members = new ArrayList<Data_TR>(data1.size());
for (Data_TR m : data1) {
if
(m.getTRANSACTION_ID().toLowerCase().contains(constraint.toString()))
members.add(m);}
FilterResults results = new FilterResults();
results.values = members;
results.count = members.size();
return results;
}
51

Lampiran 38 Implementasi proses keluar

TextView txt = (TextView) view.findViewById(R.id.txt_logout);


txt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
new SweetAlertDialog(getActivity(),
SweetAlertDialog.WARNING_TYPE)
.setTitleText("Keluar Aplikasi")
.setContentText("Apakah anda ingin keluar aplikasi
ini?")
.setCancelText("Tidak!")
.setConfirmText("Ya!")
.setConfirmClickListener(new
SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick(SweetAlertDialog sDialog) {
Intent i = new
Intent(getActivity(),MainActivity.class);
startActivity(i);
}
})
.setCancelClickListener(new
SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick(SweetAlertDialog sDialog) {
sDialog.cancel();
}
})
.show();
}
});

Lampiran 39 Implementasi keluaran informasi status berlangganan


52

Lampiran 40 Implementasi keluaran pencarian riwayat transaksi

Lampiran 41 Implementasi proses notifikasi

public View getView(final int position, View view, final ViewGroup root)
{
view = layoutInflater.inflate(R.layout.activity_pemberitahuan, root,
false);
TextView txt1 = (TextView) view.findViewById(R.id.judul);
TextView txt2 = (TextView) view.findViewById(R.id.mesage);
TextView txt3 = (TextView) view.findViewById(R.id.tgltgl);
final TextView garis = (TextView) view.findViewById(R.id.gariswr);
garis.setBackgroundColor(WHITE);

if (data.get(position).getSTATUS().equals("0")) {
garis.setBackgroundColor(Color.parseColor("#fcfacc"));
} else {
garis.setBackgroundColor(WHITE);
}
txt1.setText(this.fData.get(position).getTITLE());
txt2.setText(this.fData.get(position).getMESSAGE());
txt3.setText(this.fData.get(position).getCREATED_DATE());
53

RIWAYAT HIDUP

Penulis bernama lengkap Wilanda Rinaldi dilahirkan di


Singaraja, 04 September 1996. Penulis merupakan anak
kedua dari dua bersaudara dari ayah Budi Sutrisno dan ibu Siti
Nurseha. Penulis menyelesaikan pendidikan sekolah dasar di
SD Negeri 3 Singaraja pada tahun 2009. Selanjutnya
melanjutkan pendidikan pada tingkat SMP di SMP Negeri 1
Singaraja dan lulus pada tahun 2012. Kemudian Penulis
memilih SMA Negeri 4 Singaraja sebagai tempat pendidikan
di tingkat SMA dan lulus pada tahun 2015. Penulis diterima sebagai mahasiswa
Program Diploma Institut Pertanian Bogor (IPB) pada program keahlian
Manajemen Informatika tahun 2015 melalui jalur Undangan Seleksi Masuk IPB
(USMI). Prestasi terakhir yang diraih penulis adalah masuk 25 besar Geo
Innovation Bootcamp yang diadakan oleh Badan Informasi Geospasial (BIG) pada
Bulan November 2017. Beasiswa yang pernah diterima penulis selama menjadi
mahasiswa Program Diploma Institut Pertanian Bogor yaitu PPA.