APLIKASI PENCARIAN RUTE PENGIRIMAN TERCEPAT MENGGUNAKAN GREEDY ALGORITHM
(Studi Kasus: PT Cepat Kirim)
SKRIPSI
Karya tulis sebagai salah satu syarat untuk memperoleh gelar Tingkat Sarjana
Oleh
UJANG SUMARNA NPM : 411550050130014
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK
UNIVERSITAS LANGLANGBUANA 2021
LEMBAR PENGESAHAN
APLIKASI PENCARIAN RUTE PENGIRIMAN TERCEPAT MENGGUNAKAN GREEDY ALGORITHM
(Studi Kasus: PT Cepat Kirim)
Oleh
UJANG SUMARNA NPM : 411550050130014
untuk memperoleh gelar Tingkat Sarjana dari Program Studi Teknik Informatika
Universitas Langlangbuana
Menyetujui
Pembimbing 1 Pembimbing 2
(Prof. Dr. Pembimbing 1, M.T.) (Dr. Pembimbing 2, S.T., M.T.)
NIDN: <NIDN> NIDN: <NIDN>
Mengetahui
Dekan Ketua Program Studi
Fakultas Teknik Teknik Informatika
(Dr. Dekan Fakultas Teknik, M.T.) (Dr. Kaprodi TIF, M.Si)
NIDN: <NIDN> NIDN: <NIDN>
ii
LEMBAR PERNYATAAN KEASLIAN TUGAS AKHIR
Saya yang bertanda tangan dibawah ini :
Nama : UJANG SUMARNA
NPM : 411550050130014
Judul Tugas Akhir : APLIKASI PENCARIAN RUTE PENGIRIMAN
TERCEPAT MENGGUNAKAN GREEDY ALGORITHM (Studi Kasus: PT Cepat Kirim)
Menyatakan dengan sebenarnya bahwa penulisan Tugas Akhir ini berdasarkan hasil penelitian, pemikiran dan pemaparan asli dari saya sendiri, baik untuk naskah laporan maupun kegiatan pembangunan aplikasi yang tercantum sebagai bagian dari Tugas Akhir ini. Jika terdapat karya orang lain, saya akan mencantumkan sumber yang jelas.
Demikian pernyataan ini saya buat dengan sesungguhnya dan apabila dikemudian hari terdapat penyimpangan dan ketidakbenaran dalam pernyataan ini, maka saya bersedia menerima sanksi akademik berupa pencabutan gelar yang telah diperoleh karena karya tulis ini dan sanksi lain sesuai dengan peraturan yang berlaku di Universitas Langlangbuana. Demikian pernyataan ini saya buat dalam keadaan sadar tanpa paksaan dari pihak manapun.
Bandung, 07 Juli 2016 Yang membuat pernyataan,
___UJANG SUMARNA___
NPM : 411550050130014
iii
Dipersembahkan kepada kedua orang tuaku dan guru-guruku, \ semoga Allah selalu memberkati mereka.
iv
KATA PENGANTAR
Penulis sangat berterima kasih pada Prof. Dr. Marsilam Hutabarat, M.T. Dam Dr.
Jaya Sumarna, S.T., M.T. sebagai Pembimbing, atas segala saran, bimbingan dan nasehatnya selama penelitian berlangsung dan selama penulisan Skripsi ini.
Terima kasih disampaikan kepada Kementerian Riset Teknologi dan Pendidikan Tinggi atas bantuan Beasiswa Pendidikan Pascasarjana (BPPs) yang diterima selama pendidikan program Tingkat Sarjana ini.
(dan seterusnya)
v
ABSTRAK
Pengiriman barang dalam sebuah ekspedisi idealnya dilakukan oleh para kurir dengan membawa sejumlah barang ke sejumlah tujuan, dengan tujuan-tujuan yang dipilih memiliki jalur yang kurang lebih searah. Namun dalam kenyataannya, tidak selalu terpenuhi, sehingga kadang seorang kurir mendapatkan suatu rute pengiriman dengan jalur yang terpencar-pencar. Tujuan-tujuan dengan jalur yang terpencar ini perlu dicarikan alternatif rute yang paling efektif sehingga bisa menghemat biaya bahan bakar serta mempercepat waktu pengiriman. Untuk keperluan tersebut, berbagai kemungkinan jalur tersebut dimasukkan ke dalam struktrur data graf, dan dicari rute-rute yang paling efektif untuk ditempuh. Rute- rute yang muncul biasanya bersifat acak, karena itu berbagai kemungkinan rute akan dimaksukkan ke dalam sistem komputasi setiap saat pencarian rute ini dibutuhkan. Permodelan dan simulasi pencarian rute ini dibuat dengan memanfaatkan kepustakaan API grafis OpenGL, dengan bahasa pemrograman C+
+, serta dimodelkan dengan pendekatan berorientasi objek menggunakan notasi UML.
Kata Kunci: Greedy Algorithm, OpenGL, Unified Modelling Language
vi
ABSTRCT
Delivery of goods on an expedition is ideally carried out by couriers carrying a number of goods to several destinations, with the selected destinations having a likely similar route. But in reality, this ideal condition is not always fulfilled, so sometimes a courier gets a delivery route with scattered routes. Within the destinations of these scattered routes, it’s need to be find the most effective alternative route so that it can save fuel costs and speed up delivery times. For this purpose, the various possible paths are organized in the graph data structure, and the most effective routes are searched for. The routes are usually random, therefore various possible routes will be input into the computation system whenever this route search is needed. This route search modeling and simulation application was created using the OpenGL graphical API library, using the C ++
programming language, and modeled with an object-oriented approach using UML notation.
Keywords: Greedy Algorithm, OpenGL, Unified Modeling Language
vii
DAFTAR ISI
LEMBAR PENGESAHAN...ii
LEMBAR PERNYATAAN KEASLIAN TUGAS AKHIR...iii
KATA PENGANTAR...v
ABSTRAK ...vi
ABSTRCT ...vii
DAFTAR ISI ...viii
DAFTAR GAMBAR...x
DAFTAR TABEL...xi
DAFTAR SINGKATAN DAN ISTILAH...xii
DAFTAR SIMBOL...xiii
DAFTAR LAMPIRAN...xiv BAB I PENDAHULUAN...I-1 I.1 Latar Belakang...I-1 I.2 Rumusan Masalah...I-1 I.3 Batasan Masalah...I-1 I.4 Tujuan Penelitian...I-1 I.5 Keluaran Penelitian...I-1 I.6 Sistematika Penulisan...I-1 BAB II LANDASAN TEORI...II-1 II.1 Teori Terkait Permasalahan...II-1 II.1.1 Greedy Algorithm...II-1 II.1.2 Service Oriented Architecture (SOA)...II-1 II.2 II.1 Teori Pendukung...II-2 II.2.1 Metode Penelitian Rekayasa...II-2 II.2.2 Metode SCRUM...II-2 II.2.3 Personal Hypertext Preprosessor (PHP)...II-2 II.3 II.2 Penelitian-penelitian Terdahulu...II-2 II.3.1 <Judul Penelitian 1>...II-2 II.3.2 <Judul Penelitian 2>...II-2 II.3.3 <Judul Penelitian 3>...II-2
viii
BAB III METODOLOGI PENELITIAN...III-1 III.1 Metode Penelitian...III-1 III.2 Metodologi Pengembangan Sistem...III-1 III.2.1 (Misal) Object Oriented Sofware Engineering (OOSE)...III-1 III.2.2 (Misal) Permodelan Berorientasi Objek...III-1 III.2.3 (Misal) Forward Engineering...III-1 III.2.4 (Misal) UML...III-1 III.2.5 (Misal) BPMN...III-1 III.3 Tahapan Penelitian...III-1 BAB IV HASIL DAN PEMBAHASAN...IV-1 IV.1 Inception Phase...IV-1 IV.1.1 Analisis Proses Bisnis...IV-1 IV.1.2 Requirements...IV-1 IV.2 Elaboration Phase...IV-1 IV.2.1 Analisis...IV-1 IV.2.2 Design...IV-1 IV.3 Construction Phase...IV-2 IV.3.1 Implementasi...IV-2 IV.3.2 Pengujian...IV-2 IV.3.3 Deployment...IV-2 BAB V SIMPULAN DAN SARAN...V-1 V.1 Simpulan...V-1 V.2 Saran...V-1 DAFTAR PUSTAKA...xv
ix
DAFTAR GAMBAR
Gambar 2.1 Diagram Konektivitas Modul-modul GPS ...3
Gambar 2.2 Contoh Diagram Usecase...5
Gambar 3.1 Business Usecase Sistem Yang Sedang Berjalan...25
Gambar 3.2 Business Usecase Sistem Yang Akan Dikembangkan...30
Gambar 4.1 Diagram Sekuens Use Case Authentication...60
x
DAFTAR TABEL
Tabel 3.1 Tabel Kebutuhan Fungsional Sistem ...26
Tabel 3.2 Tabel Skenario Usecase Authencitacion...29
Tabel 4.1 Daftar Kebutuhan Tabel-tabel Database...62
Tabel 4.2 Tabel Rencana Pengujian Perangkat Lunak...70
xi
DAFTAR SINGKATAN DAN ISTILAH
Singkatan Kepanjangan
RUP Rational Unified Process UML Unified Modelling Language GPS Global Positioning System
OOSE Object Oriented Software Engineering
xii
DAFTAR SIMBOL 1. SImbol-simbol Dalam Diagram Usecase
Simbol Arti
Aktor, pelaku dari sebuah usecase
Usecase, sekumpulan aksi yang membentuk suatu kesatuan lojik untuk menyelesaikan suatu kebutuhan fungsional
Asosiasi, menunjukkan siapa aktor yang bertanggung jawab atas suatu usecase
Sumber: Booch, 2005 2. Simbol-simbol Dalam Diagram Sekuens
Arti
Kelas/Objek Interface/Boundary, kelas/objek yang merupakan penghubung antara aktor dengan sistem, atau menghubungkan sistem dengan sistem lain yang terkait (API)
Kelas/Objek Controller, kelas//objek yang mengandung lojik dari sistem/usecase, library, atau kumpulan fungsi- fungsi dan prosedur yang digunakan dalam sistem.
Kelas/Objek Etitas, kelas yang merepresentasikan data yang diolah di dalam sistem
Sumber: Booch, 2005
xiii
DAFTAR LAMPIRAN
LAMPIRAN A: STRUKTUR ORGANISASI PT CEPAT KIRIM...xvi LAMPIRAN B: HASIL SURVEY PENGGUNA...xvii LAMPIRAN C: KODE PROGRAM...xviii
xiv
BAB I PENDAHULUAN I.1 Latar Belakang
< Isi Latar Belakang>
I.2 Rumusan Masalah
<Rumusan Masalah>
I.3 Batasan Masalah
<Batasan Masalah>
I.4 Tujuan Penelitian
<Tujuan Penelitian>
I.5 Keluaran Penelitian
<Keluaran Penelitian>
I.6 Sistematika Penulisan
<Sistematika Penulisan>
1
BAB II LANDASAN TEORI II.1 Teori Terkait Permasalahan
II.1.1 Greedy Algorithm
<Teori pengertian Greedy Algorythm disertai sumber kutipan>
Gambar II.1.1.A.1.i.1.1 Contoh Graf Berbobot untuk dipecahkan dengan Greedy Algorithm (Sunarto, 2019)
II.1.2 Service Oriented Architecture (SOA)
<Teori pengertian SOA disertai sumber kutipan>
Gambar II.1.2.A.1.i.1.1 Ilustrasi Layer-layer SOA (Sunarto, 2019)
1
dst.
II.2 II.1 Teori Pendukung II.2.1 Metode Penelitian Rekayasa
<Tentang Metode Penelitian yang digunakan disertai sumber kutipan>
II.2.2 Metode SCRUM
<Tentang Metode Pengembangan sistem yang digunakan disertai sumber kutipan>
II.2.3 Personal Hypertext Preprosessor (PHP)
<Tentang PHP disertai sumber kutipan>
Tabel II.2.3.A.1.i.1.1.1 Tabel API Grafik PHP (Wicked, 2020)
Fungsi Kegunaan
gd_info Mengambil informasi tentang versi OpenGL yang digonakan getimagesize Mengambil ukuran imej getimagesizefromstring Mengambil ukuran string image_type_to_extension Mengambil tipe berdasar
ekstension
image_type_to_mime_type Mengambil tipe berdasar MIME image2wbmp Menampilkan imej di broser atau
menyimpan sebagai file
imagearc Menggambar lengkungan
dst.
II.3 II.2 Penelitian-penelitian Terdahulu II.3.1 <Judul Penelitian 1>
<Garis besar, kesimpulan, dan saran dari Jurnal/Skripsi/Penelitian lain>
II.3.2 <Judul Penelitian 2>
<Garis besar, kesimpulan dan saran dari Jurnal/Skripsi/Penelitian lain:>
2
II.3.3 <Judul Penelitian 3>
< Garis besar, kesimpulan dan saran dari Jurnal/Skripsi/Penelitian lain>
dst.
3
BAB III METODOLOGI PENELITIAN III.1 Metode Penelitian
Khusus untuk Program Studi Informatika, pada umumnya metode penelitian yang digunakan adalah Metode Penelitian Rekayasa (Engineering Research Methode) dengan beberapa pendekatan, misalnya obeservasi, survey, wawancara, simulasi, dan prototyping, dan sebagainya. Pilih beberapa pendekatan yang memang dilakukan dalam pelaksanaan Skripsi. Namun tidak menutup kemungkinan penggunaan Metode Penelitian yang lain, bila memang sesuai dengan penelitian yang dilakukan.
III.2 Metodologi Pengembangan Sistem
III.2.1 (Misal) Object Oriented Sofware Engineering (OOSE)
<Alasan pemilihan model proses yang digunakan>
III.2.2 (Misal) Permodelan Berorientasi Objek
<Alasan pemilihan permodelan yang digunakan >
III.2.3 (Misal) Forward Engineering
<Alasan pemilihan pendekatan yang digunakan >
III.2.4 (Misal) UML
<Alasan pemilihan tools permodelan yang digunakan >
III.2.5 (Misal) BPMN
<Alasan pemilihan tools permodelan yang digunakan >
III.3 Tahapan Penelitian
<Tahapan penelitian ini menggabungkan langkah-langkah Metode Penelitian dan Metode Pengembangan Sistem yang dilakukan dalam kegiatan Skripsi. Ini adalah variasi dari Rencana Kegiatan pada Proposal namun dalam bentuk rincian langkah demi langkah penelitian yang dilakukan.
Contoh berikut adalah Tahapan Penelitian Rekayasa dengan model proses Metode Waterfall>
1
1. Mendefinisikan Masalah <dilaksanakan di Bab I>
2. Mengkaji penelitian terdahulu <dilaksanakan di Bab II dan III>
3. Menganalisis proses bisnis <dilaksanakan di Bab VI.I>
4. Menganalisis kebutuhan fungsional sistem <dilaksanakan di Bab IV.2>
5. Membuat desain sistem <dilaksanakan di Bab IV.3>
6. Membuat implementasi sistem <<dilaksanakan di Bab IV.4>
7. Melakukan pengujian sistem <<dilaksanakan di Bab IV.5>
2
BAB IV HASIL DAN PEMBAHASAN
<CONTOH di sini untuk Pengembangan Perangkat Lunak menggunakan Rational Unified Process (RUP), jadi Proses Bisnis masuk ke dalam Inception Phase.
Untuk Model Proses yang lain, biasanya sistematikanya adalah Bab IV.1 Proses Bisnis, dengan rincian, Bab IV.1.1 Proses Bisnis Sistem Berjalan dam IV.1.2 Proses Bisnis Sistem Usulan>
IV.1 Inception Phase
IV.1.1 Analisis Proses Bisnis
A. Proses Bisnis Sistem Berjalan
<Gambar Proses Bisnis Sistem yang sedang berjalan disertai narasi>
B. Proses Bisnis Usulan (Bila ada)
<Gambar Proses Bisnis Usulan yang sedang berjalan disertai narasi>
C. Business Usecase Diagram D. Business Object Model IV.1.2 Requirements
A. Daftar Kebutuhan Fungsional B. Daftar Kebutuhan Non Fungsional IV.2 Elaboration Phase
IV.2.1 Analisis
A. System Usecase Diagram B. Usecase Scenario
IV.2.2 Design
A. Sequence Diagram
1
B. State Chart Diagram C. Class Diagram
D. Desaim Kelas-kelas Interface/View E. Desain Kelas-kelas Controller F. Desain Kelas-kelas Model IV.3 Construction Phase
IV.3.1 Implementasi
A. Realisasi Usecase B. Spesifikasi Kelas
C. Screenshoot/Pseudocode Kelas-kelas Inteface/View D. Implementasi/Pseudocode Kelas-kelas Controller E. Desain Tabel/Pseudocode Kelas-kelas Model IV.3.2 Pengujian
A. Rencana Pengujian B. Deskripsi Pengujian C. Hasil Pengujian IV.3.3 Deployment
A. Package Diagram B. Deployment Diagram
2
BAB V SIMPULAN DAN SARAN V.1 Simpulan
<Sampaikan simpulan sesuai dengan point-point tujuan penelitian>
V.2 Saran
<Sampaikan saran-saran yang bisa dilakukan oleh pengguna atau peneliti selanjutnya untuk menyempurnakan penelitian ini>
1
DAFTAR PUSTAKA
Albarda (2010): Portal Kantor Digital, Proceeding Seminar TIK Nasional ke-6., STEI Institut Teknologi Bandung.
Ali, N., Babar, M.A. (2009):Modeling Service Oriented Architectures of Mobile Applications by Extending SoaML with Ambients, IEEE Computer Society vol. 978-0-7695-3784-9/09
Budi, Setiawan, “Panduan Penggunaan Notasi UML dalam Pengembangan Aplikasi GIS”, http://setiawanbudi.blogspot.com/artikel?17 , diambil pada tanggal 17 Agustus 2018 pukul 19.00 WIB
Creswell, J.W. (2003): Research Design Qualitative, Quantitive, and Mixed Methods Approaches, Sage Publications, Second Edition, London
Dörner, D., Draxler,S., Pipek, V., and Wulf, V.(2009): End Users at the Bazaar:
Designing Next-Generation Enterprise Resource Planning Systems, IEEE Software vol. 0740-7459/09
Erl, Thomas. (2005): Service Orienterd Architecture, Prentice Hall, New Jersey.
Fei, H.R., Xiang, W.H., Qian, X., Pei, J.X., Hui, L. (2009): Service oriented decentralized access control for military systems in Net-Centric Environment, IEEE Computer Society vol. 978-0-7695-3643-9
Sugiman, A., Djubiantono, T., Aziz, F., Subandi, J.S., Wagiman, R. A., Aceng, D.C., Hardi, W.E., Elan, J.M., Darsono, A.C, dan Agus (2015) : Pengukuran Kadar Gangguang Sinyal GPS Menggunakan Model Bernoulli, Jurnal Telematika, 48, 661-667.
Wijaya, R. (1996) : Diagnosis Penyakit Tipus dengan Metode PCR, Disertasi Program Doktor, Universitas Langlangbuana, 25 – 29.
Zuckerberg, Mark, “How to Obtain Accurate GPS Location With Android OS”, IEEE Online Journal, Edition IX/18, 2018, http://ejournal.ieee.org/artickel?1123 , diambil pada tanggal 20 Semptember 2018 pukul 19.00 WIB
Galih, Sandika, “Belajar NodeJS | 1. Apa Itu NodeJS?”, Tutorial Web Programming UNPAS, https://youtu.be/sSLJx5t4OJ4?t=687, diambil pada tanggal 20 Februari 2021 pukul 19.00 WIB
gcuomo (24 October 2013). "JavaScript Everywhere and the Three Amigos (Into the wild BLUE yonder!)". www.ibm.com,
https://en.wikipedia.org/wiki/Node.js#cite_note-6, diambil pada tanggal 20 Februari 2021 pukul 19.00 WIB
LINK JURNAL PROSIDING
BUKU
JURNAL
BUKU
JURNAL
BUKU + EDITOR
DISERTASI/
TESIS/
SKRIPSI LINK
Sumber YouTube
Sumber Wikipedia
LAMPIRAN A: STRUKTUR ORGANISASI PT CEPAT KIRIM
xvi
LAMPIRAN B: HASIL SURVEY PENGGUNA
xvii
LAMPIRAN C: KODE PROGRAM
xviii