Anda di halaman 1dari 24

IMPLEMENTASI METODE NEAREST NEIGHBOUR DAN INSERTION

PADA APLIKASI JASA PENGIRIMAN BAGI PENGGUNA JASA DAN


AGEN PENGIRIMAN

Disusun oleh:
Faturroman (1120101898)
Raden Dewa Riski Ramadhani (1120101889)
Rafie Dwie Sapoetra (1120101935)
Valentin Ferly H. (11201010906)

SEKOLAH TINGGI ILMU KOMPUTER PGRI


BANYUWANGI
2022
ABSTRAK

Permintaan atas jasa pengiriman barang di Indonesia sangatlah besar.


Melalui jasa ini, suatu barang dapat dengan mudah berpindah dari suatu lokasi ke
lokasi yang lain dan dapat dimaanfaatkan sehingga barang tersebut memiliki nilai
yang lebih. Namun saat ini untuk mencari agen pengiriman cukup memakan
waktu, dikarenakan pengguna jasa pengiriman harus langsung datang ketempat
agen dan memastikan barang termasuk kriteria barang yang dapat dimuat. Selain
itu juga lokasi dari agen yang tidak diketahui oleh pengguna jasa akan membuat
penggunaan jasa pengiriman kurang efisien.
Dari permasalahan tersebut peneliti membuat sebuah aplikasi dengan
harapan memberi informasi mengenai lokasi pengguna kepada agen pengirim dan
sebaliknya menggunakan metode Nearest Neighbour dan Insertion. Dalam
metode ini lokasi dari pengguna akan ditampilan secara langsung (Real Time
Location), nantinya akan disajikan beberapa pilihan agen pengiriman menurut
lokasi terdekat dari pengguna secara langsung. Dan untuk agen bisa mengetahui
lokasi dari pengguna yang memesan jasa sehingga bisa datang untuk mengambil
barang yang akan dikirim.
Dan nantinya aplikasi ini akan dibuat versi mobile, yang bertujuan untuk
mempermudah pengguna dan agen jasa dalam melakukan pengiriman.
Dikarenakan mereka mendapat informasi megenai lokasi pengguna dan agen
pengiriman secara langsung dan mengurangi waktu yang digunakan untuk
mencari agen pengiriman.

Kata kunci: Aplikasi, Jasa Pengiriman, Nearest Neighbour dan Insertion


BAB I
PENDAHULUAN

1.1 Latar Belakang


Modernisasi dalam ilmu sosial merujuk pada sebuah bentuk transformasi
dari keadaan yang kurang maju atau kurang berkembang ke arah yang lebih
baik dengan harapan akan tercapai kehidupan masyarakat yang lebih maju,
berkembang, dan makmur.
Diungkapkan pula modernisasi merupakan hasil dari kemajuan ilmu
pengetahuan dan teknologi yang terus berkembang sekarang ini. Tingkat
teknologi dalam membangun modernisasi betul-betul dirasakan dan dinikmati
oleh semua lapisan masyarakat, dari kota metropolitan sampai ke desa-desa
terpencil.
Dalam hal ini, modernisasi terjadi pula pada bidang teknologi yang
ditujukan untuk meringankan pekerjaan manusia. Salah satu yang terus
berevolusi selama ini ialah kemajuan dalam bidang transportasi.
Dikutip dari buku Menelusuri Sejarah Alat Transportasi (2020) karya
Kusnanto, masyarakat masa lalu menggunakan alat transportasi yang masih
sederhana. Sebelum ditemukan mesin, alat transportasi masih memakai tenaga
hewan atau manusia. Seiring perkembangan zaman, kini manusia sudah bisa
berpergian ribuan kilometer dengan moda transportasi yang lebih canggih.
Berbagai sarana transportasi banyak diciptakan, baik transportasi darat, laut,
maupun udara. Penghasilan yang dapat memenuhi kebutuhan hidup (upah),
stres kerja, motivasi kerja. Pemberian upah adalah salah satu upaya
perusahaan untuk meningkatkan produktivitas kerja sopir karena upah dapat
mencukupi kebutuhan hidup keluarga yang layak (2016) karya A. S. Begedina
Depari, and A. Pradhanawati.
Di dasari hal tersebut kami berusaha membantu CV. Pendiks Rental
Transindo dalam berinovasi dan dapat berkembang mengikuti zaman. Seperti
halnya yang dilakukan oleh Gojek, kami juga ingin membantu memudahkan
para driver jasa angkutan dalam mencari user dan begitu pun sebaliknya
memudahkan user dalam mecari jasa yang mereka butuhkan.
Peneliti berharap dari aplikasi yang dirikan dapat memberikan pelayanan
dalam jasa angkutan dengan aman, cepat dan terpercaya sesuai dengan metode
nearest neighbour dan insertion selain dalam memudahkan dalam mencari jasa
angkutan kami juga berusaha membuat layanan pengiriman kargo dengan
tingkat keamanan yang tinggi.

1.2 Rumusan Masalah


Dari penjelasan latar belakang tersebut dapat diambil suatu rumusan
masalah yaitu “Implementasi Metode Nearest Neighbour Dan Insertion Pada
Aplikasi Jasa Pengiriman Bagi Pengguna Jasa Dan Agen Pengiriman “.

1.3 Batasan
Untuk terarahnya dalam penyusunan proposal ini maka peneliti
mengambil Batasan masalah yang diteliti. Penelitian ini lebih memfokuskan
memberi informasi mengenai lokasi pengguna kepada agen pengiriman
barang.

1.4 Tujuan
Tujuan yang ingin di capai adalah membuat sebuah aplikasi yang
menerapkan metode nearst insert dan memberikan informasi mengenai lokasi
agen jasa kepada pengguna dan sebaliknya.

1.5 Manfaat
Manfaat yang diperoleh dari penelitian ini adalah :
1. Memberikan informasi mengenai lokasi terbaru (Real Time Location)
untuk pengguna dan agen pengiriman.
2. Sebagai bahan referensi untuk penelitian selanjutnya yang membahas
Nearest Neighbour dan Insertion.
BAB II
KAJIAN PUSTAKA

2.1 Objek Penelitian


2.1.1 Jasa
Menurut Kamus Besar Bahasa Indonesia kata jasa mempunyai arti
aktivitas, kemudahan, manfaat dan sebagainya, yang dapat dijual kepada
orang lain (konsumen) yang menggunakan atau menikmatinya. Menurut
Philip Kotler (2012:356), jasa adalah tindakan atau perbuatan yang dapat
ditawarkan oleh suatu pihak kepada pihak lain, yang pada dasarnya bersifat
intangible (tidak berwujud fisik) dan tidak mengakibatkan kepemilikan
sesuatu apapun. Produksi jasa dapat berhubungan dengan produk fisik
maupun tidak.
2.1.2 Ekspedisi
Menurut Abdulkadir Muhammad (2008:19) Pengangkutan adalah proses
kegiatan muatan barang atau penumpang ke dalam alat pengangkutan,
membawa barang atau penumpang dari tempat pemuatan ke tempat tujuan
dan menurunkan barang atau penumpang dari alat pengangkutan ke tempat
yang ditentukan. Menurut R. Soegijatno Tjakranegara (1995:1) Pengangkutan
adalah kegiatan dari transportasi memindahkan barang (commodity of goods)
dan penumpang dari satu tempat (origin atau port of call) ke tempat lain atau
part of destination, maka dengan demikian pengangkutan merupakan jasa
angkutan atau produksi jasa bagi masyarakat yang membutuhkan dan sangat
bermanfaat untuk pemindahan atau pengiriman barang-barang ke tempat lain.
Dengan adanya jasa pengangkutan ini maka akan sangat membantu
masyarakat dalam memenuhi kepentingan pokok terhadap barang yang
sangat bermanfaat, yaitu:
a. Place Utility, menimbulkan nilai dari suatu barang tertentu karena dapat
dipindahkan dari tempat dimana barang berkelebihan dan kurang diperlukan
ke tempat dimana barang tersebut sangat dibutuhkan karena langka.
b. Time Utility, menimbulkan sebab karena barang-barang dapat diangkut
atau dikirim dari suatu tempat ke tempat lain dimana benda atau barang
sangat dibutuhkan menurut keadaan, waktu, dan kebutuhan.
Berdasarkan uraian diatas, maka penulis meyimpulkan bahwa ekspedisi
adalah perusahaan pengangkut barang yang digunakan oleh masyarakat untuk
memindahkan barang dari satu tempat ke tempat lain. Proses pemindahan
barang dari satu tempat ke tempat lain ini akan sangat membantu masyarakat
dalam memenuhi kebutuhan pokoknya terhadap barang.

2.2 Pembahasan Objek


2.2.1 Metode Nearest Neighbor
Metode Nearest Neighbor adalah metode heuristik yang digunakan
dalam pemecahan masalah rute, pemecahan masalah dilakukan dengan
memulai titik awal kemudian mencari titik terdekat.(Hutasoit, Susanty, &
Imran, 2014)
Menurut (Madona et al., 2013) menjelaskan metode Nearest Neighbor,
pemilihan lintasan akan dimulai pada lintasan yang memiliki nilai jarak
paling minimum setiap melalui daerah, kemudian akan memilih daerah
selanjutnya yang belum dikunjungi dan memiliki nilai minimum pula.
Nearest Neighbor adalah metode heuristik yang digunakan dalam
pemecahan Vechicle Routing Problem (VRP), pemecahan masalah dilakukan
dengan memulai titik awal kemudian mencari titik terdekat. (Hutasoit et al.,
2014). Metode ini merupakan teknik pemecahan VRP yang sangat efektif,
berjalan cepat, dan biasanya menghasilkan kualitas yang cukup layak.
Menurut Toth dan Vigo (Rohandi, Imran, & Prassetiyo, 2014) terdapat empat
tujuan umum VRP, yaitu:
1. Meminimalkan biaya transportasi global, terkait dengan jarak dan biaya
tetap yang berhubungan dengan kendaraan.
2. Meminimalkan jumlah kendaraan (atau pengemudi) yang dibutuhkan
untuk melayani semua konsumen.
3. Menyeimbangkan rute, untuk waktu perjalanan dan muatan kendaraan.
4. Meminimalkan penalti akibat service yang kurang memuaskan dari
konsumen.
Langkah-langkah untuk menyelesaikan metode Nearest Neighbor adalah
sebagai berikut:
1. Menentukan titik depot pusat dan outletoutlet pengiriman,
2. Membuat matriks jarak, yang berfungsi untuk menggambarkan letak outlet
yang akan dituju beserta jarak antar outlet,
3. Proses pengerjaan dengan melihat outlet dengan jarak terpendek. Setiap
mencapai satu outlet, algoritma ini akan memilih outlet selanjutnya yang
belum dikunjungi dan memiliki jarak yang paling minimum setelahnya, dan
4. Perhitungan nilai optimal dengan menjumlahkan jarak dari awal sampai
akhir perjalanan.
Untuk mendapatkan letak lokasi pada koordinat cartesius pada proses
pemetaan lokasi, maka dapat digunakan Persamaan 1 dan 2. Koord-Xi =
Koord BTi – Koord BT0 (1)
Koord-Yi = Koord LS0 – Koord LSi ..... (2)
Pemetaan lokasi tersebut ditentukan bahwa lokasi depot (BT;LS) adalah
sebagai titik pusat pada koordinat cartesius yaitu titik (0;0).
Metode Nearest Neighbor digunakan pada penelitian ini dikarenakan
metode ini merupakan salah satu metode yang memiliki karakteristik
pembentukan rute distribusi sesuai dengan keadaan nyata yang terdapat pada
kondisi di lapangan, serta teknik penentuan rute yang ditetapkan pada metode
ini lebih mudah dilakukan dibandingkan dengan metode TSP yang lain dan
metode Nearest Neighbor ini merupakan metode yang dapat dijadikan
sebagai dasar dalam pembentukan rute distribusi menggunakan metode
lainnya.

2.2.2 Metode Insertion


Metode insertion merupakan metode untuk menentukan jarak optimum
dari sebuah jalur distribusi dengan tujuan mempersingkat jarak
pendistribusian dengan cara menyisipkan rute dalam subtour jalur distribusi.
Langkah-langkah dalam pengurutan rute dengan metode insertion yaitu:
1. Penelusuran dimulai dari sebuah kota pertama yang dihubungkan dengan
kota terakhir,
2. Dibuat sebuah subtour antara 2 kota tersebut, maksudnya adalah perjalanan
dari kota pertama dan berakhir di kota pertama misal (1,3) menuju (3,2)
menuju (2,1),
3. Ganti salah satu arah hubungan (arc) dari dua kota dengan kombinasi dua
arc yaitu arc (i,j) dengan arc (i,k), dan arc (k,j) dengan k diambil dari jarak
yang belum masuk subtour dan dengan tambahan nilai terkecil, sehingga
jarak diperoleh melalui Persamaan 3. Jik+Jkj–Jij (3)
4. Ulangi langkah 3 sampai seluruh kota masuk dalam subtour.

Gambar 1. Subtour
Metode Insertion digunakan pada penelitian ini dikarenakan metode ini
merupakan salah satu metode yang memiliki karakteristik pembentukan rute
distribusi sesuai dengan keadaan nyata yang terdapat pada kondisi di
lapangan.

2.3 Aplikasi yang Relevan


Pada pembuatan aplikasi akan ada salah satu fitur yang menerapkan metode
nearest neighbour dan insertion sehingga pengguna bisa mencari agen pengiriman
terdekat dari titik lokasi pengguna, contoh fiturnya terdapat pada aplikasi grab yang
bernama GrabSpot yang memudahkan pengguna menemukan driver terdekat.
Informasi GrabSpot diupdate setiap satu hingga dua menit untuk memastikan setiap
pengemudi yang masuk dan keluar tercatat. Kamu bisa melihat nama spot dan
deskripsi lokasi. Deskripsi ini tentunya dapat membantu kamu untuk menemukan
spot lebih mudah.

2.4 Software yang digunakan


2.4.1 Flutter
Flutter dirilis resmi pada bulan Desember 2018 oleh Google. Flutter
merupakan SDK untuk mengembangkan aplikasi baik mobile, web maupun
desktop. Flutter adalah framework yang membantu developer untuk membuat
aplikasi mobile multiplatform. Banyak perusahaan yang telah menggunakan
framework ini seperti Alibaba, ebay, hingga Google Ads. Terdapat 2
komponen penting dalam Flutter yaitu:
 Software Development Kit (SDK) adalah alat yang berfungsi untuk
membuat aplikasi agar dapat berfungsi sebagai multiplatform.
 Framework UI adalah komponen UI seperti teks, button, navigation
dan lainnya yang dapat dikustomisasi .
Setiap membuat UI di dalam Flutter akan menciptakan berbagai widget.
Beberapa karakteristik dari widget yaitu dapat digunakan untuk membuat UI
seperti column, row, text, stack, card, form, padding. Developer juga dapat
melakukan styling seperti tipe font, size, color, margin, shadow. Selain itu
widget dapat berupa kumpulan bentuk dan formular .
Di dalam Flutter terdapat fitur hot-reload. Fitur ini memudahkan
developer dalam membangun UI, menambahkan fitur dan memperbaiki bug
dengan melihat langsung perubahan UI yang terdapat pada aplikasi.
Hotreload bekerja dengan menanamkan kode file terbaru ke dalam Dart
Virtual Machine (VM). Kerangka pada Flutter membuat ulang semua widget
secara otomatis setelah VM diperbarui. Fitur ini yang memudahkan developer
untuk melihat langsung perubahan UI yang dikembangkan.
Untuk pengembangan aplikasi mobile, Flutter dapat digunakan untuk
mengembangkan aplikasi berbasis Android dan iOS dengan menggunakan
bahasa Dart. Dart merupakan bahasa pemrograman berbasis class dan
berorientasi objek. Di dalam Flutter terdapat dua kombinasi class yang
digunakan yaitu: Stateless Widgets dan Stateful Widgets. Class ini
merupakan widget yang bertugas menampilkan tampilan user interface
dengan membangun widget lainnya agar menjadi lebih terlihat nyata.
Stateless Widgets adalah widgets yang bersifat statis dan seluruh konfigurasi
yang dimuat sudah diinisialisasi dari awal atau hanya dapat menggambar satu
kali saat widget dimuat sehingga tidak dapat menggunakan fitur hot-reload.
Sedangkan Stateful widgets adalah widgets yang bersifat dinamis dan dapat
berubah pada kondisi tertentu sehingga dapat menggunakan fitur hot-reload.
2.4.2 Firebase Realtime Database
Firebase Realtime Database adalah database cloud. Data disimpan di
dalam format JSON dan disinkronkan ke setiap klien yang terhubung secara
realtime. Firebase biasanya digunakan pada aplikasi realtime. Ketika terjadi
pembaruan data, maka aplikasi yang terhubung pada Firebase akan secara
otomatis menerima pembaruan data . Firebase realtime database adalah basis
data nonSQL dan karena itu memiliki optimalisasi dan fungsionalitas yang
berbeda dibandingkan dengan basis data relasional.
2.5 UML
UML singkatan dari Unified Modeling Language yang berarti bahasa pemodelan
standar . UML merupakan bahasa pemodelan standar yang memiliki sintaks dan
semantik. UML (Unified Modelling Language) adalah salah satu alat bantu yang
sangat handal di dunia pengembangan sistem yang berorientasi obyek. Hal ini
disebabkan karena UML menyediakan bahasa pemodelan visual yang memungkinkan
bagi pengembang sistem untuk membuat cetak biru atas visi mareka dalam bentuk
yang baku, mudah dimengerti serta dilengkapi dengan mekanisme yang efektif untuk
berbagi (sharing) dan mengkomunikasikan rancangan mereka dengan yang lain.
Untuk membuat suatu model, UML memiliki diagram grafis sebagai berikut:
a) Use Case
Use case menggambarkan suatu urutan interaksi antar satu atau lebih
actor dan sistem. Use case diagram terdiri atas diagram untuk use case dan
actor. Use case digambarkan berbentuk elips dengan nama operasi dituliskan
didalamnya, sedangkan actor yang melakukan operasi yang dihubungkan
dengan garis lurus ke use case.
Diagram ini juga menggambarkan urutan peristiwa yang terjadi. Dan
lebih detail dalam menggambarkan aliran data, termasuk data atau behavior
yang dikirimkan atau diterima. Namun, diagram ini kurang mampu
menjelaskan detail dari sebuah algoritma, seperti loop dan branching.
(Munawar, 2005).
Tabel 2.1 Notasi dalam Use Case Diagram

SIMBOL KETERANGAN

Actor

Mengembangkan seseorang atau


sistem yang menyediakan atau
menerima informasi dari sistem

Top Package:: Top Package

Use Case

Menggambarkan proses sistem


(kebutuhan sistem dari sudut pandang
user)

Uses

<< uses>> Menggambarkan bagaimana actor


terlibat dalam use case.Hubungan uses
menunjukkan bahwa prosedur dari use
case merupakan bagai mana dari
prosedur yang menggunakan use case.

b) Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang
sedang dirancang, bagaimana masing-masing alir berawal, decision yang
mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat
menggambarkan proses paralel yang mungkin terjadi pada beberapa
eksekusi.Activity diagram merupakan state diagram khusus, di mana sebagian

12
besar state adalah action dan sebagian besar transisi di-trigger oleh
selesainya state sebelumnya (internal processing).
Tabel 2.2 Notasi dalam Activity Diagram

SIMBOL KETERANGAN

Initial State

Menggambarkan permulaan dari


sebuah sistem yang akan dikerjakan.

Final State

Menggambarkan akhir darisebuah


sistem yang telah dikerjakan.

Activities

Menggambarkan proses bisnis.

Association

Menggambarkan hubungan antara


initial node,activities, fork,decision
point dan activity final code dalam
sebuah sistem.

Decision

Menggambarkan asosiasi
percabangan dimana jika ada pilihan
aktivitas lebih dari satu atau pilihan
untuk mengambil keputusan dan
akhiri kondisi.

13
Fork & Join

Untuk menunjukkan kegiatan yang


dilakukan secara paralel dan
digabungkan kembali.

c) Sequence Diagram

Sequence diagram adalah suatu diagram yang menggambarkan interaksi


antar obyek dan mengindikasikan komunikasi diantara obyek-obyek dan
mengindikasikan komunikasi diantara obyek-obyek tersebut. Diagram ini
juga menunjukkan serangkaian pesan yang dipertukarkan oleh obyek-obyek
yang melakukan suatu tugas atau aksi tertentu. Obyek-obyek tersebut
kemudian diurutkan dari kiri ke kanan, aktor yang menginisiasi interaksi
biasanya ditaruh di paling kiri dari diagram.
Tabel 2.3 Notasi dalam Sequence Diagram

SIMBOL KETERANAGAN
Objeck Lifeline
-Object
Ditempatkan di bagaian atas diagram
dan dipertisipasikan secara berurutan
dengan mengirimkan dan menerima
pesan. Merupakan instance dari sebuah
class.
-Lifeline
Menandakan kehidupan objek selama
urutan.

Activation
Adalah persegi panjang yang
menyempit panjang ditempatkan di atas
sebuah garis hidup dan

14
menandakan ketika suatu objek
mengirim atau menerima pesan dan
melakukan sebuah aksi.
Message (Call)
Menggambarkan komunikasi yang
terjadi antara obyek.

Message (Return)
Objek/metode menghasilkan suatu
kembalian ke objek tertentu,arah panah
mengarah pada objek yang menerima
kembali.

Message (Call)
Looping terhadap objek itu sendiri.

d) Class Diagram
Clas Diagram adlah desain koneksi antara class dan penulisan
variabel serta method-method yang digunakan pada class tersebut. Atau
sebuah spesifikasi yang jika diinstanisiasi akan menghasilkan sebuah
objek dan merupakan inti dari pengembangan dan desain berorientasi
objek. Class menggambarkan keadaan(atribut/properti) suatusistem,
sekaligus menawarkan layaran untuk memani[ulasi keadaan tersebut
(method/fungsi). Berikut notasi yang digunakan dalam pembuatan class

15
Tabel 2.4 Notasi dalam Class Diagram

SIMBOL KETERANGAN

Top Package::Top Package Class

Clas adalah blok-blok pembangunan


pada pemrograman berorientasi objek.
Sebuah class diagram sebagai sebuah
kotak yang terdiri dari 3 bagian. Bagian
atas adalah bagian nama dari class.
Bagian tengah mengidentifikasi
property/atribut class. Bagian akhir
mengidentifikasi method-method dari
sebuah class.

Composition

Jika sebuah class tidak bisa berdiri


sendiri dan harus merupakan bagian dari
class yang lain, maka class tersebut
memiliki relasi composition terhadap
class tempat dia bergantung tersebut.
Sebuah relationship composition
digambarkan sebagai garis dengan
ujung berbentuk jajaran genjang
berisi/solid.

16
BAB III
METODOLOGI
3.1 Metode Penelitian
Metode penelitian adalah prosedur atau langkah sistematis dalam
melakukan pengamatan secara benar melalui tahapan yang disusun secara
ilmiah untuk mencari, menyusun, menganalisis, dan menyimpulkan data
sehingga dapat digunakan untuk menemukan, mengembangkan, dan menguji
kebenaran suatu ilmu.
Metode penelitian yang digunakan pada penelitian ini adalah metode
waterfall yang dimana proses pengerjaan dilakukan dari atas ke bawah secara
berurutan. Berikut tahap-tahap yang akan dilakukan dalam penelitian:

Gambar 3. Metodologi Pengembangan

Gambar 3.1 Tahapan Penelitian.

Gambar 3.1 merupakan tahapan-tahapan yang dilakukan dalam


perancangan sistem aplikasi jasa pengiriman yang menerapkan metode
nearest neighbor dan insertion:
1. Initialization, yaitu tahapan yang dilakukan dengan tujuan melakukan
perencanaan awal untuk mengumpulkan segala sumber daya yang
dibutuhkan dalam menyelesaikan proyek. Pada tahap ini persiapan
teknologi sudah ditentukan dari awal baik instalasi software maupun
persiapan hardware/device yang digunakan untuk membantu proses
pengembangan aplikasi. Selain itu terdapat pembuatan git repository
yang digunakan untuk mendokumentasikan fitur yang telah
dikembangkan. Setiap satu fitur disimpan dalam satu branch git.

17
2. Analysis & Design, yaitu tahapan yang dilakukan untuk menguraikan
segala kebutuhan dan bagaimana proyek dikerjakan. Dalam hal ini ada
beberapa dokumentasi yang mendukung pelaksanaan pengembangan
seperti dokumentasi spesifikasi API dan dokumentasi desain UI/UX.
Dokumentasi spesifikasi API sudah dibuat oleh tim dalam bentuk file
pdf yang terdiri dari path, request definition, url, format request,
response definition, success response code, response success, error
response code, dan response (error). Desain tampilan aplikasi sudah
dibuat oleh bagian UI/UX designer. desain sistem aplikasi yang dibuat
juga sesuai dengan bentuk UML diagram berdasarkan analisis yang
sudah dilakukan. Selama proses pengembangan bagian frontend
engineer juga diberi akses kedalam Figma untuk melihat desain
aplikasinya.
3. Development, yaitu tahapan pengerjaan pengembangan fitur aplikasi
dengan cara mengimplementasikan desain dan kebutuhan yang
diperlukan ke dalam code pemrograman. Pada tahap ini bagian frontend
engineer menerapkan metode Nearest Neighbor dan Insertion kedalam
salah satu fitur dalam aplikasi dan membuat integrasi API. Selama
proses pengembangan engineer harus melihat panduan dokumentasi
spesifikasi API dan desain UI/UX yang sudah diberikan. Apabila
terdapat kesalahan ataupun perbedaan data antara bagian backend
dengan frontend maka frontend mobile engineer harus berkoordinasi
dahulu dengan anggota yang lain demi hasil yang diinginkan sesuai
dengan kebutuhan.
4. Testing & Evaluation, yaitu tahapan untuk melakukan pengujian
terhadap fitur yang telah dibuat serta melakukan review hasil kepada
team developer. Tahap ini juga digunakan untuk mendapatkan saran
serta improvement yang diperlukan terhadap fitur yang dibuat agar
dapat berjalan dengan baik. Pengujian dilakukan untuk mengetahui
apakah fugsionalitas dalam fitur tersebut sudah berjalan dengan baik.
Weekly meeting dilaksanakan oleh team developer dan team marketing
terkait progress pengembangan fitur sedangkan restropective meeting
dilakukan oleh team developer dan scrum master untuk membahas
kendala/hambatan pelaksanaan teknis pengembangannya.
5. Deployment, yaitu tahapan yang dilakukan untuk mendokumentasikan
hasil dari fitur yang telah selesai dikembangkan. Deployment yang
dilakukan tidak sampai pada stage production namun masih pada stage
pengembangan saja. Hasil pengembangan fitur yang telah dilakukan
nantinya akan dideploy kedalam platform DigiLabs dengan bantuan
Jenkins sebagai tools automation deploy.

18
3.2 Analisa Sistem UML
3.2.1 Arsitektur Sistem
Arsitektur sistem merupakan model konseptual yang
mendefinisikan struktur, perilaku dari suatu sistem. Tujuannya adalah
merancang struktur untuk memenuhi kebutuhan pengguna.

Gambar 3 Arsitektur Sistem

Pada gambar 3 menunjukkan tahap perancangan arsitektur


dari salah satu fitur yang menerapkan metode Nearest Neighbor
dan Insertion yaitu pencarian agen terdekat, untuk memudahkan
pemahaman alur kerja. Ketika pengguna menginputkan suatu
perintah, maka perintah akan diproses di dalam sistem, yang
dimana smartphone harus tersambung dengan jaringan internet
terlebih dahulu. Komponen GPS digunakan untuk mencari atau
menemukan titik koordinat lokasi dari keberadaan perangkat
pengguna, setelah titik koordinat lokasi ditemukan maka titik
koordinat akan disimpan ke dalam Firebase secara realtime ketika
sudah tersimpan, maka sistem akan melakukan tracking untuk
menampilkan lokasi dari agen terdekat dari lokasi sekarang (Real-
Time Location) pengguna.

3.2.2 Perancangan Desain Sistem


Perancangan Desain sistem aplikasi dibuat berdasarkan identifikasi
masalah yang sudah ada, desain digambarkan dalam bentuk UML
diagram diantaranya yaitu: Use case diagram, Actvity diagram dan
Sequence diagram.
1. Use case diagram.
Use case diagram berfungsi untuk menggambarkan sistem dengan
memasukkan fungsi yang ada pada subsistem yang bekerja dalam
alur sehingga dapat menjelaskan hubungan aktor dalam
menjelaskan sistem aplikasi.

19
Gambar 4. Use Case Diagram

Pada gambar 4 menunjukan dalam aplikasi terdapat 3 aktor


yang berperan dalam penggunaan aplikasi yaitu (Pengguna, Agen,
dan Server). Pengguna yang mengakses aplikasi dengan perangkat
android dapat tersambung pada Firebase Database Realtime, dan
pengguna bisa melakukan login melakukan pembayaran dan
mencari agen menurut lokasi dari agen. Kemudian oleh server data
yang diinputkan oleh pengguna akan disimpan kedalam database
selain itu server juga memaintenance data dari agen, jika pengguna
menggunakan fitur pencarian maka server yang bertindak
mengirimkan notifikasi kepada agen yang jasanya akan digunakan
oleh pengguna. Dan setelah sampai kepada agen maka tugas agen
tinggal mengkonfirmasi pesanan dari pengguna yang nantinya akan
dimasukkan oleh server kedalam database dan dikirim ulang
kepada pengguna.

2. Activity Diagram
Activity Diagram digunakan untuk menjelaskan alur pengguna
sistem dalam aplikasi. Dalam aplikasi jasa pengiriman ini terdapat
aktivitas yang dapat dideskripsikan dari pengguna dengan aplikasi.
Proses inti dari aplikasi pencarian agen terdekat ini adalah proses
mencari agen pengiriman dengan cara menampilkan lokasi agen
yang dekat dengan lokasi pengguna.

20
Gambar 5. Activity Diagram

Pada Gambar 5 menunjukkan proses pengguna untuk


melakukan kegiatan pencarian agen, pengguna harus melakukan
login dan mengaktifkan GPS untuk diambil kordinatnya
dikarenakan activity membutuhkan sebuah informasi lokasi,
supaya dapat ditampilkan lokasi pada map.

3. Sequence Diagram
Sequence Diagram digunakan untuk mennggambarkan skenario
atau rangkaian langkah – langkah yang dilakukan user dari sebuah
aplikasi.

21
Gambar 6. Sequence Diagram
Pada Gambar 6, menunjukkan Proses pengguna
menggunakan fungsi pencarian. Sequence diagram berfungsi
untuk memberikan gambaran fungsionalitas dari use case.

3.3 Desain Form


Form adalah halaman antarmuka antara pengguna dengan aplikasi.
Didalam form sebuah objek kontrol penampung dari objek kontrol lain, dapat
menerima tugas dan memberikan reaksi terhadap tindakan dari pengguna
untuk kelangsungan sebuah program aplikasi. Beberapa form yang digunakan
didalam pembuatan aplikasi jasa pengiriman dijabarkan pada poin-poin di
bawah ini:

3.3.1 Form Login


Form login akan tampil pada saat pengguna akan masuk
kedalam menu admin. Maka pengguna akan menginputkan
username dan password yang dimilikinya agar dapat masuk
kedalam menu utama.

22
3.3.2 Form Pencarian
From pencarian merupakan form yang digunakan untuk
menemukan agen pengiriman berdasarkan lokasi dari pengguna.
Terdapat beberapa submenu dalam halaman ini antara lain lokasi
pengguna, lokasi yang dicari, maps, estimasi, jarak, dan pesan

sekarang.

23
3.3.3 Form Estimasi
Form estimasi merupakan form yang digunakan untuk melacak dan
memastikan lokasi barang yang dikirim oleh pengguna. Terdapat
beberapaa submenu dalam halaman ini antara lain status
pengiriman, detail status, lokasi barang, dan waktu tanggal.

24

Anda mungkin juga menyukai