4.1 Implementasi
Implementasi adalah proses untuk menerapkan hasil dari analisis dan perancangan ke dalam bahasa pemrograman. Tahap implementasi ini memiliki tujuan untuk mewujudkan aplikasi agar bisa digunakan dan dilakukan pengujian terhadap sistem agar bisa dilihat kekurangan, ataupun kelemahan dari proses pengembangan aplikasi.
4.1.1 Batasan Implementasi
Dalam mengimplementasikan analisis dan perancangan sistem Londria ini terdapat batasan dalam pengembangan aplikasi, dimana konsep produk Londria yang dilempar ke market nantinya adalah MVP (Minimum Viable Product) dengan fitur minimum, dan dummy data. Tujuannya adalah untuk pengujian pasar untuk mengetahui apakah produk Londria itu layak, dapat disukai orang untuk digunakan, dibeli ataupun untuk dibicarakan.
4.1.2 Implementasi Perangkat Lunak
Untuk pengujian black-box aplikasi Londria, perangkat lunak yang digunakan adalah:
Web server Apache versi 2.4.7
Database: MariaDB versi 10.0.20
Android Kitkat 4.4.4 (API 19)
Android Jelly Beans 4.1.1 (API 16)
Android Jelly Beans 4.3 (API 18)
4.1.3 Implementasi Perangkat Keras
Adapun perangkat keras yang menunjang sistem Londria ini antara lain:
Samsung Galaxy Note 2 (Android Jelly Beans 4.1.1)
Xiaomi RedMi 2 (Android Kitkat 4.4.4)
LG (Jelly Beans 4.3)
4.2 Tahapan pengembangan sistem
Awal pengerjaan aplikasi Londria adalah pada 05 Oktober 2015, pada proses ini penulis melakukan konsultasi dengan dosen pembimbing mengenai konsep aplikasi, perancangan bisnis proses serta menentukan tahapan sprint dalam menyelesaikan user story.
Penulis mengatur kemajuan rencana pengembangan aplikasi Londria ini menggunakan metode scrum menggunakan spreadsheet (excel) untuk product backlog dan sprint backlog.
4.2.1 Membuat product backlog
Pada proses pengembangan aplikasi menggunakan metode scrum yang pertama adalah membuat daftar user story (kebutuhan users). Pada analisis sebelumnya telah disebutkan bahwa fitur yang diharapkan dari aplikasi laundry sesuai permintaan ini adalah:
1. Kemudahan pendaftaran aplikasi.
2. Manajemen informasi pribadi pelanggan.
3. Pelanggan bisa melihat daftar laundry yang ada di sekitar.
4. Pelanggan bisa melihat informasi detail dari agen laundry pilihan 5. Pelanggan bisa membuat pesanan antar jemput laundry
6. Pelanggan bisa mengetahui pakaian nya sudah di proses atau sudah selesai di proses
7. Kurir bisa melihat informasi pesanan pelanggan 8. Kurir bisa melihat peta lokasi pelanggan.
9. Kurir bisa membuat panduan navigasi menuju lokasi pelanggan.
10. Adanya push notification ke ponsel untuk memberitahukan informasi pakaian sudah selesai di proses.
Fitur-fitur di atas kemudian akan di terjemahkan menjadi user story disertai dengan bobot pengerjaan dan prioritas, lalu diurutkan untuk masuk ke dalam sprint.
Product owner menentukan prioritas yang menandakan urgensi dari aplikasi yang akan dikembangkan, sedangkan size ditentukan oleh tim pengembang untuk memperkirakan seberapa besar perubahan yang diperlukan, dan keterangan sprint menandakan story tersebut akan dikerjakan pada urutan sprint.
Tabel 4.1 Daftar user story
Deskripsi Prioritas Size Sprint
Untuk mengembangkan aplikasi Londria, sebagai pengembang
saya perlu eksplorasi teknologi, dan membuat kerangka proyek High XL 1 Untuk menggunakan aplikasi, sebagai pelanggan saya ingin proses
registrasi yang mudah High M 2
Untuk mengubah informasi pribadi, sebagai pelanggan saya ingin
menu untuk manajemen akun pelanggan High XL 2 Untuk memilih agen laundry yang terbaik, sebagai pelanggan saya
perlu informasi kualitas dari layanan laundry tersebut Medium M 3 Untuk mengetahui layanan apa saja yang tersedia, sebagai
pelanggan saya perlu melihat informasi profil laundry Medium XL 3 Untuk membuat order, sebagai pelanggan saya memilih layanan
laundry apa saja yang saya perlukan High XL 4 Untuk mengetahui status sejauh mana pakaian sudah diproses,
sebagai pelanggan saya perlu fitur untuk monitoring pakaian Low S 4 Untuk meningkatkan pengalaman pengguna, sebagai pelanggan
saya ingin ada notifikasi ketika pakaian selesai di proses Low S 5 Untuk informasi tugas yang lebih teratur, sebagai kurir saya perlu
menu untuk kategori tugas penjemputan, atau pengantaran Low S 6 Untuk memudahkan pencaraian alamat pelanggan, sebagai kurir
saya perlu gambaran peta dan navigasi untuk mendukung informasi alamat
4.2.2 Panjang Sprint
Dalam pengerjaan aplikasi Londria ini, penulis memerlukan waktu pengerjaan sebanyak 5 sprint dengan lama satu sprint adalah 2 pekan. Pada sprint inilah dilakukan pengembangan aplikasi sesuai dengan product backlog/user stories. Pengembangan aplikasi menggunakan metode scrum ini memiliki SDLC yang ringkas dan iteratif, yaitu sprint planning, Daily Scrum, dan sprint review & retrospective, lalu mengulangi lagi proses dan batasan waktu yang sama dengan user story yang berbeda. Pada akhir setiap sprint, hal yang dilakukan selanjutnya adalah pengujian yang akan di lakukan oleh pengguna sistem menggunakan metode black box testing.
Pengujian black box berfokus pada fungsional perangkat lunak pada sistem aplikasi pelanggan Londria, dan aplikasi Kurir Londria.
Fitur-fitur yang akan diuji sesuai dengan user story yang dikembangkan pada spritn tersebut.
4.2.3 Sprint 1
a. Sprint planning
Sprint 1 dilaksanakan pada 12 Oktober 2015-30 Oktober 2015. Di tahap awal pengembangan ini penulis melakukan eksplorasi teknologi pengembangan aplikasi android, dan mencoba membuat aplikasi sederhana untuk menguji apakah bisa menjadi kerangka projek untuk pengembangan aplikasi Londria ini.
Tabel 4.2 tasklist sprint 1
Tasklist Point
Membuat kerangka project (12 Oktober 2015-30 Oktober 2015) 94
Explore teknologi 21
Setup editor, UI framework, apache cordova, genymotion emulator 8
Bootraping apache cordova 8
Experiment plugin notifikasi dan google maps di cordova 34
Membuat kerangka aplikasi Londria dengan framework7 8
Explore PHP framework untuk RestFul API 5
Implementasi penggunaan indexDB di android 8
Inisiasi GIThub 2
b. Daily Scrum
Daily Scrum digunakan untuk memantau kemajuan pengembangan aplikasi pada suatu sprint, detail task list yang berhasil dikerjakan poin nya akan berkurang, ideal nya tren grafik akan menurun hingga akhir sprint. Keterangan lebih lengkap progress dari sprint 1 terdapat di halaman lampiran.
Gambar 4.1 Burn-down chart sprint 1 c. Sprint review dan retrospective
Eksplorasi teknologi yang dilakukan penulis adalah mencari cara pengembangan aplikasi di platform android, cara termudah adalah dengan hybrid apps yang membuat aplikasi android dengan teknologi web yang kerap digunakan oleh penulis.
Namun dengan teknologi hybrid ini pun memiliki banyak framework yang bisa digunakan, diantaranya yang menarik perhatian penulis adalah jquery mobile, ionic framework, onsen ui, dan Framework7.
Setelah mencoba melakukan bootsraping aplikasi, diputuskan bahwa Framework7 yang akan digunakan dalam pengembangan aplikasi Londria ini, dikarenakan komponen yang sudah lengkap untuk material design yang akan digunakan di android dan dokumentasi framework yang lengkap dan mudah dipelajari.
4.2.4 Sprint 2
a. Sprint planning
Sprint 2 dilaksanakan pada 02 November 2015 sampai dengan 19 November 2015. Setelah prototype aplikasi menggunakan hybrid apps dengan Framework7 berhasil dibuat, tahap selanjutnya adalah pengembangan
Pada sprint 2 target pengembangan aplikasi adalah menyelesaikan 2 story point, yaitu fitur pendaftaran aplikasi, dan manajemen informasi pelanggan. Berikut adalah detail tasklist yang akan dikerjakan pada sprint 2
Tabel 4.3 Tasklist sprint 2
Tasklist Point
Sprint 2 (02 November 2015-19 November 2015)
Untuk menggunakan aplikasi, sebagai pelanggan saya ingin
proses registrasi yang mudah
Membuat tampilan isian pendaftaran yang terdiri dari nama lengkap, email, kata sandi, no telepon, dan jenis kelamin 21
Membuat validasi isian pendaftaran 8 Membuat web service pelanggan di server Londria 21 Membuat database penyimpanan registrasi 5 Membuat web service menyimpan data pelanggan 13 Untuk mengubah informasi pribadi, sebagai pelanggan saya ingin menu untuk manajemen akun pelanggan
Membuat tampilan menu profil pengguna 21 Membuat tampilan tambah alamat baru 13 Membuat menu ubah tema aplikasi 13 Membuat web service simpan perbaruan data profil
pengguna 8
Membuat web service simpan perbaruan data alamat
pengguna 5
Membuat skema logout pengguna 5
b. Daily Scrum
Pada spritn 2 ini mengalami keterlambatan di awal sprint dikarenakan kendala pada saat compile aplikasi di emulator android geny motion, komputer pengembang mengalami lag yang menggangu, dan penulis mencari penyebab nya dengan melakukan trouble shooting OS, hingga mengganti versi tipe android yang
berjalan di geny motion, sehingga tasklist pengembangan aplikasi londria tidak bergerak.
Gambar 4.2 Burn-down chart sprint 2 c. Pengujian aplikasi
Setelah aplikasi berhasil dibuat, tahap selanjutnya adalah menguji fitur pada pengembangan sprint 2 ini, berikut proses pengujian dengan menggunakan metode black box.
Tabel 4.4 Pengujian sprint 2
Item Uji Detail pengujian Data masukan
Yang
diharapkan Pengamatan Fail/Pass
Instalasi
Menginstall aplikasi pada perangkat android jelly beans
Instal aplikasi di android kitkat, dan android jelly beans Aplikasi bisa digunakan dengan mulus Aplikasi mengalami lag ketika digunakan Fail Menginstall aplikasi pada perangkat android kitkat Instal aplikasi di android kitkat, dan android kitkat Aplikasi bisa digunakan dengan mulus Aplikasi responsif, dan bisa digunakan dengan lancar Pass
Pendaftaran pengguna Pengguna mendaftarkan diri sebelum menggunakan aplikasi Input nama, email, no ponsel, kata sandi Berhasil terdaftar Terdapat validasi untuk email, panjang password dan nomor ponsel Pass
login Pengguna baru melakukan login Username diisi email Password diisi dengan kata sandi user Berhasil login
User yang telah terdaftar bisa login ke dalam aplikasi Pass Mengganti informasi pengguna
Ubah profil pribadi pengguna
Ubah nama pengguna, nomor telepon, dan kata sandi
Berhasil diperbarui Data user berhasil terupdate Pass Menambahkan alamat pengguna Tambah alamat baru Alamat baru user berhasil ditambahkan
Alamat user bisa ditambahkan Pass Mengubah alamat
yang sudah ada
Ubah alamat yang ada
Alamat diperbarui
Alamat user bisa diubah Pass
d. Sprint review dan retrospective
Proses pendaftaran pengguna sebelum menggunakan aplikasi Londria, dibuat sederhana dengan beberapa input data dari user, seperti nama lengkap, kata sandi, jenis kelamin, serta nomor telepon.
Khusus untuk nomor telepon, perlu adanya validasi nomor telepon, agar pengguna mendaftarkan nomor telepon yang bisa dihubungi oleh agen laundry ketika diperlukan. Penggunaan OTP ketika pendaftaran bisa menghindari nomor telepon yang tidak valid, karena server akan mengirimkan kode konfirmasi ke nomor telepon pengguna melalui SMS dan pengguna memasukan kode rahasianya di halaman konfirmasi OTP. Namun untuk pengembangan aplikasi pada tugas akhir ini, konfirmasi OTP ditiadakan karena memerlukan adanya biaya untuk server sms gatewaynya.
Instalasi aplikasi Londria tidak berjalan mulus pada perangkat android dengan sistem operasi Jelly Beans ataupun sistem operasi android sebelumnya, penyebabnya adalah web view default untuk sistem operasi sebelum kitkat bukanlah chromium web view, sehingga proses render tampilan yang menyebabkan pergerakan animasi tidak mulus, sehingga batasan implementasi
aplikasi Londria ini adalah hanya untuk android dengan sistem operasi kitkat atau lebih baru.
4.2.5 Sprint 3
a. Sprint Planning
Pada sprint 3 ini pengembangan untuk fitur informasi detail dari agen laundry pilihan, ulasan dan rating laundry, serta persiapan pembuatan aplikasi Londria kurir. Sprint 3 dilaksanakan 23 November 2015 sampai dengan 11 Desember 2015.
Tabel 4.5 tasklist sprint 3
Tasklist Point
Sprint 3 (23 November 2015-11 Desember 2015) 141 Untuk mengetahui layanan apa saja yang tersedia, sebagai pelanggan saya perlu melihat informasi profil laundry
Membuat desain tampilan profil laundry 5 Membuat tampilan layanan laundry 8 Membuat fitur jadikan laundry favorit 13 Membuat daftar laundry sekitar dan favorit 8 Membuat database untuk informasi laundry 5 Membuat web service ambil informasi laundry 13 Untuk memilih agen laundry yang terbaik, sebagai pelanggan saya perlu informasi kualitas dari layanan
laundry tersebut
Membuat tampilan menu ulasan laundry 5 Membuat input rating dan ulasan untuk laundry 8 Membuat web service untuk input rating laundry 5 Membuat database untuk rating laundry 13 Membuat service controller profil laundry pesanan di server 8 Membuat service model profil laundry di server 8
Persiapan pembuatan aplikasi kurir
Setup project Londria Kurir 8 Membuat prototype file aplikasi kurir 21 Membuat halaman utama kurir 13
b. Daily Scrum
Pada sprint ke-3 ini aplikasi Londria untuk pelanggan telah ditambahkan menu profil laundry, sehingga pelanggan bisa melihat informasi detail mengenai agen laundry pilihannya.
Untuk mengetahui kualitas layanan laundry, di aplikasi Londria terdapat fitur dimana pengguna bisa menuliskan ulasan mengenai layanan disertai dengan rating bintang 5 untuk kualitas istimewa ataupun rating bintang 1 untuk kualitas yang buruk.
Pada sprint 4 nanti mulai dikembangkan aplikasi laundry untuk kurir sehingga di akhir sprint 3 ini mulai dibuat purwa rupa dari aplikasi laundry untuk kurir, pembuatan template projek serta memilih versi framework yang lebih baru.
c. Pengujian aplikasi
Tahap selanjutnya setelah fitur di sprint 3 dibuat adalah melakukan pengujian aplikasi londira, dengan metode black box.
Tabel 4.6 Pengujian sprint 3 Item
Uji
Detail pengujian
Data
masukan Yang diharapkan Pengamatan Fail/Pass
Profil laundry Daftar laundry Pilih menu agen laundry
Muncul daftar laundry yang ada, di urutkan dari jarak terdekat dengan pengguna
Muncul daftar laundry dengan urutan yang paling dekat Pass Detail laundry Di daftar laundry, kemudian pilih salah satu laundry Muncul informasi detail laundry, lokasi laundry, layanan laundry, jam operasional
Muncul informasi detail laundry, lokasi laundry, layanan laundry, jam operasional Pass Ulasan dan rating Tulis ulasan dan rating Masukan rating bintang dan ulasan Pengguna berhasil menuliskan ulasan dan memberikan rating
Pengguna berhasil menuliskan ulasan, namun tidak bisa melihat informasi ulasan yang telah dimasukan
Fail Prototipe aplikasi laundry kurir Instalasi aplikasi Instal aplikasi di android kitkat Aplikasi bisa digunakan dengan mulus
Aplikasi responsif, dan bisa digunakan dengan lancar Pass
d. Sprint review dan retrospective
Pengembangan fitur di sprint 3 ini telah selesai dikembangkan, kini pengguna bisa mengakses profil laundry yang menyediakan informasi tentang laundry, namun untuk menuliskan ulasan dan rating masih berupa view tampilan saja, untuk proses penyimpanan data rating dan ulasan masih terdapat error saat penyimpan data ke android dan mengirimkan ke server, akan di perbaiki di sprint bug fixing kemudian.
4.2.6 Sprint 4
a. Sprint Planning
Pada sprint ini pengembangan aplikasi Londria adalah pelanggan bisa membuat order layanan laundry, yang terdiri dari layanan kiloan, satuan dan
dry cleaning, serta pelacakan informasi status pengerjaan pakaian pelanggan, dilaksanakan pada 14 Desember 2015 sampai dengan 03 Januari 2016.
Tabel 4.7 Tasklist sprint 4
Tasklist Point
Sprint 4 (14 Desember 2015-03 Januari 2016) 135 Untuk membuat order, sebagai pelanggan saya memilih layanan laundry apa saja yang saya perlukan
Membuat tampilan Pilih layanan 8 Membuat tampilan form pengajuan pesanan 5 Membuat form layanan laundry kiloan 5 Membuat form layanan laundry satuan 8 Membuat form layanan laundry dry cleaning 13 Membuat daftar pilihan laundry 5 Membuat halaman konfirmasi pesanan 5 Membuat web service untuk ambil daftar laundry
sekitar/favorit 13
Membuat web service untuk daftar layanan laundry yang
dipilih 13
Membuat web service untuk submit pesanan laundry 8 Membuat database submit pesanan 5 Untuk mengetahui status sejauh mana pakaian sudah diproses, sebagai pelanggan saya perlu fitur untuk
monitoring pakaian
Membuat tampilan halaman Riwayat pesanan 21 Membuat daftar pesanan pelanggan 8 Membuat tampilan detail pesanan 13 Membuat web service untuk data pesanan pelanggan 5
b. Daily Scrum
Pengembangan aplikasi Londria di sprint 4 ini pelanggan bisa mengajukan permintaan untuk pengambilan pakaiannya melalui aplikasi, pelanggan memasukan layanan yang dipilih antara lain laundry kiloan, laundry satuan, dan laundry dry cleaning, lalu pengguna memilih jenis pakaian apa saja yang akan di cuci untuk perkiraan harga layanan.
Pelanggan juga bisa memantau status pengerjaan aplikasi nya melalui aplikasi, apakah sudah di proses pencucian ataupun sudah selesai dibersihkan dan siap diambil.
Gambar 4.4 Burndown chart sprint 4 c. Pengujian aplikasi
Untuk memastikan fitur di sprint 4 berjalan dengan semestinya, maka dilakukan pengujian aplikasi Londria, dengan metode black box.
Tabel 4.8 Pengujian sprint 4 Item Uji Detail
pengujian Data masukan
Yang
diharapkan Pengamatan Fail/Pass
Membuat order Membuat order laundry kiloan Pilih layanan laundry kiloan, masukan jumlah berat pakaian, pilih laundry, konfirmasi pesanan Pesanan berhasil di submit Berhasil submit layanan laundry kiloan Pass Membuat order laundry satuan Pilih layanan laundry satuan, pilih pakaian, konfirmasi pesanan Pesanan berhasil di submit, jumlah pakaian bisa ditambah dan dikurangi Berhasil submit layanan laundry satuan, jumlah pakaian bisa dikurangi dan ditambah Pass Membuat order laundry dry cleaning Pilih layanan laundry dry cleaning, pilih pakaian, konfirmasi pesanan Pesanan berhasil di submit, jumlah pakaian bisa ditambah dan dikurangi Berhasil submit layanan laundry dry cleaning, jumlah pakaian bisa dikurangi dan ditambah Pass Status pakaian Pilih menu riwayat pesanan Pilih history pesanan Muncul status terbaru pakaian Muncul status terbaru pakaian Pass
d. Sprint review dan retrospective
Pelanggan kini bisa membuat permintaan melalui aplikasi Londria, nantinya pesanan tersebut akan di follow up oleh aplikasi kurir agen laundry.
Pelanggan bisa memilih layanan laundry kiloan, satuan dan dry cleaning kemudian memilih jumlah pakaiannya, dan juga pelanggan bisa mengubah data pesanannya.
4.2.7 Sprint 5
a. Sprint planning
Pada sprint terakhir ini dilaksanakan pada 30 Desember 2015 sampai dengan 18 Januari 2016 pengembangan aplikasi Londria adalah mengintegrasikan
layanan push notifikasi dari Google cloud messaging agar notifikasi bisa masuk ke ponsel pelanggan.
Pengerjaan aplikasi Londria kurir dikerjakan di sprint ini, untuk fitur pengkategorian daftar tugas berdasarkan jenis pekerjaan apakah jemput pakaian, atau antar pakaian jadi yang telah di proses.Fitur terakhir yang dikembangkan adalah integrasi antara aplikasi Google maps SDK di android dengan aplikasi Londria kurir.
Dengan fitur diatas maka dibuatlah task list pengerjaan selama sprint 5 sebagai berikut:
Tabel 4.9 Tasklist sprint 5
Tasklist Point
Sprint 5 (30 Desember 2015-18 Januari 2016) 131 Untuk meningkatkan pengalaman pengguna, sebagai pelanggan saya ingin ada notifikasi ketika pakaian selesai di
proses
Membuat service push notifikasi via Google Cloud
Messaging 21
Membuat penyimpanan notifikasi di android 0 Membuat tampilan pop up notifikasi 5 Untuk informasi tugas yang lebih teratur, sebagai kurir saya perlu menu untuk kategori tugas penjemputan, atau
pengantaran
Membuat tampilan daftar tugas kurir 13 Membuat pengkategorian daftar Jemput dan Antar 8 Membuat tampilan detail tugas 5 Membuat skema claim pesanan pelanggan 13 Membuat web service melihat daftar tugas kurir 13 Membuat web service claim pesanan pelanggan 8 Untuk memudahkan pencaraian alamat pelanggan, sebagai kurir saya perlu gambaran peta untuk mendukung informasi
alamat
Menambahkan opsi peta pada detail tugas 8
Tambahan opsi navigasi 8
Membuat halaman lihat peta 8
b. Daily Scrum
Pada pengembangan di sprint 5 ini untuk integrasi Google cloud messaging berhasil dilakukan jika server aplikasi yang dibuat menggunakan php di deploy di server local dan mengirimkan notifikasi ke Google GCM via web servie.
Tetapi setelah aplikasi server di deploy di internet, fitur Google GCM tidak bisa mengirimkan notifikasi ke user. Issue mengenai localhost dan server ini masih di cek oleh pengembang.
Tampilan fitur peta di Londria kurir berhasil di implementasi menggunakan plug-in, sehingga peta yang di dapat dari aplikasi Londria ini sudah memiliki tampilan yang baik dari Google SDK.
c. Pengujian aplikasi
Pada sprint 5 ini pengujian aplikasi Londria sudah tidak lagi menggunakan web server localhost dengan koneksi satu jaringan, tetapi sudah di upload di hosting, sehingga untuk fitur notifikasi mengalami error dimana push notifikasi tidak sampai ke ponsel pengguna. Penyebab error ini kemungkinan adalah hak akses dari ip server hosting ke layanan Google cloud messaging.
Tabel 4.10 Pengujian sprint 5 Item Uji Detail pengujian Data
masukan
Yang
diharapkan Pengamatan Fail/Pass
Notifikasi Ketika pakaian berhasil disesaikan dakan ada notifikasi push ke ponsel pengguna Ubah status pakaian pengguna laundry Ketika pakaian berhasil disesaikan dakan ada notifikasi push ke ponsel pengguna Notifikasi berhasil masuk ke ponsel pengguna Pass (localhost) Fail (hosting) Kategori tugas Kategori penjemputan Pilih tab penjemputan
Muncul data tugas hanya untuk penjemputan
Daftar tugas yang muncul hanya penjemputan Pass Kategori pengantaran Pilih tab pengantaran
Muncul data tugas hanya untuk pengantaran
Daftar tugas yang muncul hanya pengantaran Pass Pencarian alamat pelanggan Lihat peta Pilih daftar tugas, lihat peta Muncul lokasi alamat pelanggan pada peta Aplikasi menampilkan informasi alamat pelanggan dari koordinat latitude dan longitude pelanggan Pass Citra satelit Pada menu peta, pilih opsi citra satelit Tampilan peta berubah menjadi gambar satelit Aplikasi menampilkan peta satelit Pass Citra peta Ubah citra satelit menjadi citra peta Berhasil diubah menjadi citra peta
Berhasil diubah menjadi citra peta Pass
Jarak posisi Pilih detail tugas
Muncul perkiraan jarak antara posisi kurir berada dengan alamat pelanggan
Terdapat infor jarak kilometer menuju lokasi pelanggan Pass Navigasi Pilih opsi navigasi di menu peta Muncul panduan navigasi dari posisi kurir menuju alamat pelanggan Aplikasi google maps akan muncul dan langsung menampilkan rute navigasi ke alamat pelanggan
d. Sprint review dan retrospective
Pada sprint terakhir ini aplikasi Londria untuk kurir berhasil diciptakan dengan fitur utama untuk menerima permintaan pengantaran dan penjemputan ke alamat pelanggan, dengan integrasi Google maps, sehingga bisa memberikan informasi peta yang handal.
Namun terdapat issue untuk web service yang di deploy di hosting internet pada integrasi dengan plugin notifikasi Google cloud messaging, dimana push notifikasi tidak masuk ke ponsel pelanggan, namun jika di eksekusi di pc developer (localhost) notifikasi ke ponsel pelanggan bisa masuk. Hal ini disebabkan karena ip untuk mengakses GCM tidak memiliki akses.
4.3 Implementasi Antar Muka
Hasil implementasi user interface berdasarkan perancangan layar sebelumnya adalah sebagai berikut
a. Landing Page
b. Halaman promo
Gambar 4.7 tampilan halaman promo c. Halaman pilih layanan
d. Profil laundry
4.4 Implementasi Basis Data
Berikut ini adalah implementasi pembuatan basis data pada able-tabel Londria pada database MySQL
1) Tabel tb_users 2)
Gambar 4.10 Implementasi table tb_users
CREATE TABLE `tb_users` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`nama_lengkap` VARCHAR(40) NOT NULL COMMENT 'Nama lengkap
pelanggan',
`telp` VARCHAR(12) NOT NULL COMMENT 'No hp',
`email` VARCHAR(45) NOT NULL COMMENT 'Surel',
`katasandi` VARCHAR(32) NOT NULL COMMENT 'Password',
`foto` VARCHAR(10) NOT NULL COMMENT 'Nama file foto',
`gender` TINYINT(1) NOT NULL DEFAULT '1' COMMENT '1=pria,
0=wanita',
`latitude` DOUBLE NOT NULL COMMENT 'Koordinat latitude',
`longitude` DOUBLE NOT NULL COMMENT 'Koordinat longitude',
`google_id` TEXT NULL COMMENT 'Registrasi GCM',
PRIMARY KEY (`id`),
UNIQUE INDEX `unx_email` (`email`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
2) tb_rating
Gambar 4.11 Implementasi table tb_rating
CREATE TABLE `tb_rating` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_laundry` INT(11) NOT NULL COMMENT 'Id laundry',
`_1` INT(11) NULL DEFAULT NULL COMMENT 'Jumlah rating 1',
`_2` INT(11) NULL DEFAULT NULL COMMENT 'Jumlah rating 2',
`_3` INT(11) NULL DEFAULT NULL COMMENT 'Jumlah rating 3',
`_4` INT(11) NULL DEFAULT NULL COMMENT 'Jumlah rating 4',
`_5` INT(11) NULL DEFAULT NULL COMMENT 'Jumlah rating 5',
`_count` INT(11) NULL DEFAULT NULL COMMENT 'Total rating',
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=1;
3) tb_promo
Gambar 4.12 Implementasi table tb_promo
CREATE TABLE `tb_promo` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_laundry` INT(11) NOT NULL COMMENT 'Id laundry',
`judul` VARCHAR(50) NOT NULL COMMENT 'Judul promo',
`foto` VARCHAR(50) NOT NULL COMMENT 'Foto promo',
`desc` TEXT NOT NULL COMMENT 'Deskripsi singkat',
`tgl_exp` DATETIME NOT NULL COMMENT 'Tanggal kedaluarsa',
`radius` INT(11) NOT NULL COMMENT 'Radius promosi',
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=1;
4) tb_orders
Gambar 4.13 Implementasi table tb_orders
CREATE TABLE `tb_orders` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_user` INT(11) NOT NULL COMMENT 'Id user',
`id_laundry` INT(11) NOT NULL COMMENT 'Id laundry',
`alamat` TEXT NOT NULL COMMENT 'Alamat pelanggan',
`latitude` DOUBLE NOT NULL COMMENT 'Koordinat latitude',
`longitude` DOUBLE NOT NULL COMMENT 'Koordinat longitude',
`no_tlp` VARCHAR(15) NOT NULL COMMENT 'No hp',
`jenis_layanan` TINYINT(4) NOT NULL COMMENT '1=kiloan 2=satuan
3=dry cleaning',
`grand_total` INT(11) NOT NULL COMMENT 'Total harga',
`produk` TEXT NULL COMMENT 'Produk yang di pilih',
`catatan` TEXT NULL COMMENT 'Catatan tambahan pengguna',
`dibuat` DATETIME NULL DEFAULT NULL COMMENT 'Tanggal dibuat
pesanan',
`proses_1` DATETIME NULL DEFAULT NULL COMMENT 'Tanggal status
pesanan 1',
`proses_2` DATETIME NULL DEFAULT NULL COMMENT 'Tanggal status
pesanan 2',
`proses_3` DATETIME NULL DEFAULT NULL COMMENT 'Tanggal status
`proses_4` DATETIME NULL DEFAULT NULL COMMENT 'Tanggal status
pesanan 4',
`status` TINYINT(1) NULL DEFAULT NULL COMMENT 'Status akhir',
`notes` VARCHAR(100) NULL DEFAULT NULL COMMENT 'Catatan',
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=1; 5) tb_layanan
Gambar 4.14 Implementasi table tb_layanan
CREATE TABLE `tb_layanan` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_laundry` INT(11) NOT NULL COMMENT 'Id laundry',
`id_layanan` INT(11) NOT NULL COMMENT 'Id layanan',
`tipe` TINYINT(1) NOT NULL COMMENT '1=kiloan 2=satuan 3=dry
cleaning',
`harga` INT(11) NOT NULL COMMENT 'Harga layanan',
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
6) tb_laundry
Gambar 4.15 Implementasi table tb_laundry
CREATE TABLE `tb_laundry` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`nama` VARCHAR(50) NOT NULL COMMENT 'Nama laundry',
`alamat` TEXT NOT NULL COMMENT 'Alamat',
`latitude` DOUBLE NOT NULL COMMENT 'Koordinat latitude',
`longitude` DOUBLE NOT NULL COMMENT 'Koordinat longitude',
`buka` TEXT NOT NULL COMMENT 'Jam operasional (json)',
`foto` VARCHAR(50) NOT NULL COMMENT 'Foto avatar',
`foto_cover` VARCHAR(50) NOT NULL COMMENT 'Foto cover',
`desc` TEXT NOT NULL COMMENT 'Deskripsi singkat laundry',
`rating` TINYINT(1) NOT NULL COMMENT 'Rating total laundry',
`bisa_kiloan` TINYINT(1) NOT NULL COMMENT 'Layanan kiloan',
`bisa_dryCleaning` TINYINT(1) NOT NULL COMMENT 'Layanan dry
cleaning',
`bisa_satuan` TINYINT(1) NOT NULL COMMENT 'Layanan satuan',
`transaksi` INT(11) NOT NULL COMMENT 'Jumlah transaksi total',
`telp` VARCHAR(12) NOT NULL COMMENT 'Tlp',
`pengerjaan` INT(11) NOT NULL COMMENT 'Rata2 pengerjaan pakaian',
`min_kiloan` INT(11) NULL DEFAULT NULL COMMENT 'Minimal kiloan',
`min_satuan` INT(11) NULL DEFAULT NULL COMMENT 'Minimal laundry
satuan',
`min_drycleaning` INT(11) NULL DEFAULT NULL COMMENT 'Minimal
laundry dry cleaning',
PRIMARY KEY (`id`),
INDEX `id` (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
7) tb_comments
Gambar 4.16 Implementasi table tb_comments
CREATE TABLE `tb_comments` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_laundry` INT(11) NOT NULL,
`id_sender` INT(11) NOT NULL,
`rate` TINYINT(4) NOT NULL,
`time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`message` TEXT NULL,
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB