• Tidak ada hasil yang ditemukan

PROGR FAK UN RIBUSI MA METO s PenerbitP kan untuk M Memperoleh rogram Stu

N/A
N/A
Protected

Academic year: 2019

Membagikan "PROGR FAK UN RIBUSI MA METO s PenerbitP kan untuk M Memperoleh rogram Stu"

Copied!
257
0
0

Teks penuh

(1)
(2)
(3)
(4)
(5)

v

“ Trimalah didikanku, lebih dari pada

perak dan pengetahuan lebih dari pada

emas pilihan “ (Amsal 8:10)

“ Sukses tidak diukur dari posisi yang

dicapai seseorang dalam hidup, tapi dari

kesulitan – kesulitan yang berhasil

diatasi ketika berusaha meraih sukses”

(Booker T Washington

)

“ Segala sesuatu yang awalnya sulit akan

terasa mudah bila kita selalu berfikir positif,

(6)

vi

Kupersembahkan karya ini

kepada :

Tuhan Yesus Kristus yang selalu menyertai

setiap langkah hidupku dan selalu

mendengarkan permohonanku

Bunda Maria penolongku

Kedua orang tua, dan saudaraku tercinta

(7)

vii

PERNYATAAN KEASLIAN KARYA

Saya menyatakan bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, Oktober 2010 Penulis

(8)

viii

LEMBAR PERNYATAAN PERSETUJUAN

PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma : Nama : Nikolas Catur Pandoyo

NIM : 055314011

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :

OPTIMASI DISTRIBUSI MAJALAH DENGAN MENGGUNAKAN METODE DIJKSTRA

(Studi Kasus Penerbit/Percetakkan Kanisius Yogyakarta)

Beserta perangkat yang diperlukan ( bila ada ). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.

Demikian pernyataan ini yang saya buat dengan sebenarnya.

Dibuat di Yogyakarta

Pada tanggal : Oktober 2010 Yang menyatakan

(9)

ix INTISARI

Algoritma Dijkstra adalah algoritma pemilihan jalur terpendek yang dapat digunakan untuk berbagai aplikasi. Salah satu aplikasi yang menerapkan prinsip kerja algoritma ini adalah Aplikasi Optimasi Distribusi Majalah. Dengan aplikasi ini, dapat ditentukan jalur pendistribusian majalah secara optimal.

Pada tugas akhir ini, penggunaan algoritma Dijkstra lebih ditekankan pada penerapan jalur pendistribusian majalah yang tercepat dari penerbit / percetakan Kanisius hingga sampai ke agen – agen majalah. Pendistribusian majalah terbatas pada agen – agen yang terletak di kawasan Yogyakarta, sebagian Kabupaten Sleman, dan sebagian Kabupaten Bantul yang masih masuk dalam lingkup ringroad. Hal yang dijadikan tolak ukur penentuan jalur tercepat pendistribusian majalah adalah volume dan kepadatan di setiap jalan yang akan dilalui pada situasi tertentu. Data volume dan kepadatan jalan yang diperoleh akan diolah menggunakan rumus Greenshield. Setelah membagi jarak dengan kecepatan sementara yang diperoleh dari rumus Greenshield, akan diperoleh hasil waktu tempuh. Waktu tempuh itulah yang digunakan sebagai bobot untuk menentukan jalur pendistribusian tercepat.

(10)

x

ABSTRACT

The Dijkstra's algorithm is the shortest path selection of algorithm that can be used for various applications. One of the applications that implement the working principle of this algorithm is Magazine Distribution Application Optimization. With this application, it can be determined optimally magazine distribution routes.

In this thesis, the use of the Dijkstra's algorithm is more emphasized on the implementation of the fastest magazine distribution routes from the publisher or Kanisius Printing to get to magazine agents. Magazine distribution is limited to agents who are located in the area of Yogyakarta, in part of Sleman and Bantul, and other area that are still included in the scope of Ringroad. A measuring rod of the fastest magazine distribution routes is the volume of magazine and density in each road to be traversed in a particular situation. Data volumes and road densities are processed using Greenshield formula. Dividing the distance with the speed obtained from the formula of Greenshield, results in the travel time, it is the time used as a weight to determine the fastest distribution route.

(11)

xi

KATA PENGANTAR

Puji dan syukur penulis panjatkan kehadirat Tuhan Yesus Kristus atas rahmat, kasih, karunia serta penyertaan-Nya yang diberikan kepada penulis selama penyusunan skripsi yang berjudul “OPTIMASI DISTRIBUSI MAJALAH DENGAN MENGGUNAKAN METODE DIJKSTRA (Studi Kasus Penerbit / Percetakkan Kanisius Yogyakarta)”. Skripsi ini disusun sebagai salah satu syarat untuk memperoleh gelar sarjana teknik di Program Studi Teknik Informatika Fakultas Sains dan Teknologi, Universitas Sanata Dharma Yogyakarta.

Penulis menyadari bahwa penyusunan skripsi ini dapat terselesaikan dengan baik karena adanya bantuan dari berbagai pihak. Oleh karena itu, pada kesempatan ini penulis ingin mengucapkan terima kasih kepada:

1. Bunda Maria yang telah mendengarkan segala doa dan permohonan penulis.

2. Bapak Yosef Agung Cahyanta, S.T., M.T. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

3. Dr. C. Kuntoro Adi, SJ., M.A., M.Sc selaku dosen pembimbing skripsi, yang dengan penuh kesabarannya telah membimbing, membantu, menyemangati serta meluangkan waktunya kepada penulis selama perkuliahan, penelitian dan proses penulisan skripsi ini.

(12)

xii

5. DS. Bambang Soelistijanto, S.T., M.Sc. selaku dosen penguji yang telah meluangkan waktu untuk menguji dan memberikan saran bagi penulis. 6. Segenap Dosen prodi Teknik Informatika, FST Universitas Sanata Dharma

Yogyakarta yang telah mendidik dan membagikan ilmunya kepada penulis selama ini.

7. Penerbit / percetakkan Kanisius yang telah memberikan ijin kepada penulis untuk mengambil data dan melakukan penelitian, sehingga penulis dapat menyelesaikan skripsi ini

8. Segenap karyawan penerbit / percetakkan Kanisius yang dengan sabar telah membantu dan membimbing penulis dalam melakukan penelitian, sehingga penulis dapat menyelesaikan skripsi ini.

9. Segenap karyawan FST Universitas Sanata Dharma yang telah membantu selama masa studi.

10. Ayahku, Antonius Pulunggono dan ibuku, Maria Suwartini, yang sabar membimbing, memberikan dukungan, doa dan kasih sayangnya kepada penulis.

11. Stefanus Kristianto Cahyo Purwanto, Benedictus Nugroho Dwi Handoko, Laurensia Triemeta Platini dan Eduwardus Cahyo Bintoro selaku saudara kandung, yang selalu memberikan doa, semangat dan dukungannya kepada penulis.

(13)

xiii

13. Andreas Hemawan, Ignatius Dimas Sukma Sadewa, Cahyo Herdian, Adi Susila, Charlie Douglash Saragih, Andriyanto, Maria Yesse Gracinta, I Gusti Nyoman Sedana, dan semua angkatan TI 05 yang senantiasa memberikan motivasi dan memberikan masukan kepada penulis.

14. Maria Kania Ayu Prawerti, Esti Seliastuti dan semua teman – teman UKM Karawitan yang senantiasa mendukung dan memberikan motivasi kepada penulis dalam menyelesaikan tugas akhir ini.

15. Veronika Hery M, Maria Hety E, Diksi Kresnawati Teman-teman Teknik Informatika angkatan 2006 yang senantiasa membantu serta menguatkan penulis.

16. Semua pihak yang tidak dapat penulis sebutkan satu persatu yang telah banyak membantu selama penulis menyelesaikan studi.

Penulis menyadari bahwa dalam penyusunan skripsi ini masih banyak kekurangan. Oleh karena itu penulis mengharapkan kritik dan saran dari semua pihak. Penulis berharap semoga skripsi ini dapat bermanfaat bagi para pembaca dan memberikan sedikit sumbangan buat Ilmu Pengetahuan.

Yogyakarta, 25 Oktober 2010

(14)

xiv

DAFTAR ISI

  

HALAMAN JUDUL ... ii

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN MOTO ... v

HALAMAN PERSEMBAHAN ... vi

PERNYATAAN KEASLIAN KARYA ... vii

LEMBAR PERNYATAAN PERSETUJUAN ... viii

INTISARI ... ix

ABSTRACT ... x

KATA PENGANTAR ... xi

DAFTAR ISI ... xiv

DAFTAR GAMBAR ... xx

DAFTAR TABEL ... xxiii

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang... 1

1.2 Rumusan Masalah ... 2

1.3 Tujuan ... 2

1.4 Batasan Masalah ... 3

1.5 Metodologi Penelitian ... 3

1.6 Sistematika Penulisan ... 5

BAB 2 LANDASAN TEORI ... 6

(15)

xv

2.1.1 Fase-fase RUP ... 9

2.2 Graf ... 10

2.2.1 Tipe ... 10

2.2.2 Terminologi Dasar ... 11

2.2.3 Komponen ... 15

2.3 Network Model ... 15

2.3.1 Algoritma Shortest – route ... 16

2.4 Jenis Jalan ... 24

2.4.1 Jalan Nasional ... 27

2.4.2 Jalan Provinsi ... 28

2.4.3 Jalan Kabupaten/kota ... 28

2.4.4 Jalan desa ... 29

2.5 Volume, kepadatan, kecepatan ... 32

2.5.1 Greenshield ... 35

2.5.2 Skala Peta ... 35

BAB 3 ANALISA DAN PERANCANGAN SISTEM ... 36

3.1 Data ... 36

3.2 Gambaran Umum Sistem ... 40

3.2.1 Struktur Data Program ... 40

3.2.2 Analisis Kebutuhan ... 50

3.3 Analisa Sistem ... 51

3.3.1 Model Use Case ... 51

(16)

xvi

3.3.1.2 Actor ... 52

3.3.1.3 Tabel Use Case ... 53

3.3.2 Skenario Use Case ... 55

3.3.3 Model Analisis ... 56

3.3.3.1 Realisasi Use Case ... 56

3.3.3.2 Diagram kelas keseluruhan ... 57

3.3.4 Desain Sistem ... 58

3.3.4.1 Kelas Perancangan ... 58

3.3.5 Attribut dan Method ... 66

3.3.6 Prototype Antarmuka ... 66

3.3.7 Attribut ... 67

3.3.7.1 Halaman Login ... 67

3.3.7.2 Halaman StaffBagianPemasaranMainFrame ... 67

3.3.7.3 Halaman AgenInternalFrame ... 69

3.3.7.4 Halaman PilihNodeFrame ... 71

3.3.7.5 Halaman TransaksiInternalFrame ... 72

3.3.7.6 Halaman CariAgenDialog ... 73

3.3.7.7 Halaman DaftarPengirimanInternalFrame ... 74

3.3.7.8 Halaman PetaPengirimanFrame ... 75

3.3.7.9 Halaman UbahAccountFrame ... 76

3.3.7.10 Halaman AdminMainframe ... 77

3.3.7.11 Halaman SatuanPerhitunganForm ... 78

(17)

xvii

3.3.8 Desain Database ... 81

3.3.8.1 Entity Relationalship Diagram... 81

3.3.8.2 Perancangan Tabel ... 83

BAB 4 IMPELMENTASI DAN ANALISA HASIL ... 89

4.1 Implementasi ... 89

4.1.1 Spesifikasi Software dan Hardware ... 89

4.1.1.1 Spesifikasi Software : ... 89

4.1.1.2 Spesifikasi Hardware : ... 89

4.1.2 Implementasi Sistem ... 90

4.1.2.1 Pembuatan Database ... 90

4.1.2.2 Tabel Agen ... 90

4.1.2.3 Tabel Hitungkepadatan ... 91

4.1.2.4 Tabel Jalan ... 91

4.1.2.5 Tabel Kabupaten ... 92

4.1.2.6 Tabel Kecamatan ... 92

4.1.2.7 Tabel Kelurahan ... 93

4.1.2.8 Tabel Transaksi ... 93

4.1.2.9 Tabel User ... 94

4.1.3 Koneksi Java ke MYSQL... 94

4.1.4 Implementasi kelas ... 95

4.1.4.1 Implementasi Antarmuka / View... 95

4.1.4.1.1 AdminMainFrame ... 96

(18)

xviii

4.1.4.1.3 CariAgenDialog ... 98

4.1.4.1.4 DaftarPengirimanInternalFrame ... 99

4.1.4.1.5 kondisiJalanInternalFrame ... 100

4.1.4.1.6 LoginFrame ... 101

4.1.4.1.7 PetaPengirimanFrame ... 101

4.1.4.1.8 pilihNodeFrame ... 102

4.1.4.1.9 UbahAccountFrame ... 103

4.1.4.1.10 TransaksiInternalFrame ... 103

4.1.4.1.11 StaffBagianPemasaranMainFrame ... 104

4.1.4.1.12 satuanPerhitunganForm ... 105

4.1.4.2 Implementasi Control ... 106

4.1.4.3 Implementasi Model ... 107

4.2 Analisa Hasil ... 107

4.2.1 Pengumpulan data ... 107

4.2.2 Sasaran Penyebaran Kuesioner ... 108

4.2.3 Form Kuesioner ... 108

4.2.4 Hasil dan pembahasan ... 109

BAB 5 KESIMPULAN DAN SARAN ... 114

5.1 Kesimpulan ... 114

5.2 Saran ... 114

DAFTAR PUSTAKA ... 116

LAMPIRAN 1 ... 118

(19)

xix

LAMPIRAN 3 ... 170

LAMPIRAN 4 ... 171

LAMPIRAN 5 ... 221

(20)

xx

DAFTAR GAMBAR

Gambar 2.1 Arsitektur Rational Unified Process, dari Rational Software(1998) .. 7 

Gambar 2.2 Contoh bentuk graf ... 10 

Gambar 2.3 Graf tak berarah ... 10 

Gambar 2.4 Graf berarah... 11 

Gambar 2.5 Graf Kosong N5 ... 12 

Gambar 2.6 Graf tak-berarah tidak terbubung ... 13 

Gambar 2.7 GrafG1, (b) sebuah upagraf dari G1, dan komplomen dari upagraf yang bersesuaian ... 13 

Gambar 2.8 (a) GrafG (b) upagraf merentang dari G, dan (c) bukan upagraf merentang dari G ... 14 

Gambar 2.9 Cut-set ... 14 

Gambar 2.10 Graf berbobot ... 15 

Gambar 2.11 Network(N,A)... 16 

Gambar 2.12 Graf berarah berlabel ... 18 

Gambar 2.13 Peta jaringan jalan perkotaanYogyakarta ... 32 

Gambar 2.14 Kecepatan vs volume ... 33 

Gambar 2.15 Kerapatan vs kecepatan ... 33 

Gambar 2.16 Volume vs kecepatan ... 34 

Gambar 3.1 Gambar Pembagian peta menjadi cluster ... 40 

Gambar 3.2 Gambar Cluster peta ... 41 

Gambar 3.3 Flowchart menset tujuan pengiriman ... 44 

(21)

xxi

Gambar 3.5 Mencari jalur pengiriman tercepat ... 48 

Gambar 3.6 Mencari jalur pengiriman tercepat ... 49 

Gambar 3.7 Diagram Use Case ... 51 

Gambar 3.8 Entity Relationalship Diagram ... 81 

Gambar 3.9 Perancangan Tabel ... 83 

Gambar 4.1 Database distribusi_majalah ... 94 

Gambar 4.2 Tampilan utama admin ... 96 

Gambar 4.3 Tampilan halaman agen ... 97 

Gambar 4.4 Tampilan halaman cari agen ... 98 

Gambar 4.5 Tampilan halaman daftar pengiriman ... 99 

Gambar 4.6 Tampilan halaman kondisijalaninternal frame ... 100 

Gambar 4.7 Tampilan halaman login ... 101 

Gambar 4.8 Tampilan peta pengiriman ... 101 

Gambar 4.9 Tampilan pilih node frame ... 102 

Gambar 4.10 Halaman tampilan ubah account frame ... 103 

Gambar 4.11 Halaman transaksi InternalFrame ... 103 

Gambar 4.12 Halaman staff bagian pemasaran mainframe ... 104 

Gambar 4.13 Halaman satuan perhitungan form ... 105 

Gambar 4.14 Grafik hasil kuesioner tampilan sistem ... 110 

Gambar 4.15 Grafik hasil kuesioner kemudahan sistem ... 110 

Gambar 4.16 Grafik hasil kuesioner perhitungan jalur terpendek ... 111 

Gambar 4.17 Grafik hasil kuesioner perhitungan jalur terpendek ... 112 

(22)

xxii

Gambar 4.19 Grafik hasil kuesioner pengaruh sistem dalam mempercepat

(23)

xxiii

DAFTAR TABEL

(24)

xxiv

(25)

1

BAB 1 PENDAHULUAN

1.1 Latar Belakang

Fungsi utama dari media massa adalah mengabarkan suatu berita kepada masyarakat. Dalam penyampaian berita, suatu media massa dituntut untuk mengungkapkan kejadian tersebut secara aktual dan sesuai dengan fakta yang ada. Berita yang disampaikan kepada masyarakat harus dapat dipertanggung jawabkan kebenarannya.

Sebagai salah satu bagian dari media massa, majalah diharuskan melakukan hal yang sama dengan media massa pada umumnya. Suatu majalah dituntut untuk melakukan segala sesuatu secara efektif dan efisien dalam segala aktifitas kegiatannya. Hal tersebut harus dilakukan mulai dari proses produksi hingga proses pemasaran ke masyarakat luas.

Salah satu bagian aktifitas penerbit majalah adalah proses distribusi. Keberhasilan proses ini, dapat mendukung peningkatan laba suatu perusahaan dan kepuasan dari pelanggan. Namun dalam proses pendistribusian, seringkali terjadi masalah yang terkait dengan bagaimana cara mendistribusikan majalah secara optimal. Maksud dari pengertian optimal disini adalah bagaimana memilih jalur pendistribusian majalah yang tercepat dari penerbit ke agen.

(26)

mendukung optimasi dalam mendistribusikan semua majalahnya. Selama ini sistem pemilihan jalur pendistribusian majalah hanya dilakukan oleh pengirim majalah saja. Hal tersebut dirasa kurang optimal karena dalam memilih jalur pengiriman, infomasi perkiraan kepadatan di tiap jalan tidak diperhatikan. Padahal, hal tersebut dapat mempengaruhi waktu pendistribusian majalah hingga sampai ke agen.

Dalam tugas akhir ini, akan dibuat suatu sistem optimasi dalam mendistribusikan majalah pada penerbit / percetakkan Kanisius. Hal tersebut dapat membantu untuk memprediksikan jalur distribusi majalah yang tercepat. Untuk memprediksikan pemilihan jalur yang optimal dalam mendistribusikan majalah tersebut, akan dilakukan dengan menggunakan metode Dijkstra.

1.2 Rumusan Masalah

Berdasarkan latar belakang masalah diatas dapat dirumuskan menjadi beberapa rumusan masalah berikut

1. Bagaimana cara memilih jalur distribusi agar, pemasaran majalah dapat dilakukan secara optimal ?

2. Bagaimana membuat aplikasi optimasi distribusi majalah yang sesuai dengan penerbit/percetakkan Kanisius dengan menggunakan metode

Dijkstra ?

1.3 Tujuan

(27)

pendistribusian majalah dari penerbit ke agen.

1.4 Batasan Masalah

Berdasarkan latar belakang masalah yang ada, penulis membatasi masalah sebagai berikut:

1. Distribusi yang dilakukan adalah distribusi dari penerbit ke agen dan kembali ke penerbit.

2. Metode yang digunakan adalah metode Dijkstra.

3. Cakupan wilayah distribusi adalah wilayah kabupaten Yogyakarta dan sebagian Sleman yang masih dalam lingkup jalur RingRoad.

4. Tool yang digunakan Java (J2SE) dan menggunakan database MYSQL. 5. Jalan yang masuk ke dalam peta adalah jalan nasional arteri, nasional

kolektor dan jalan propinsi kolektor.

6. Kondisi pengemudi, kendaraan (mesin, bahan bakar, ban) dikondisikan dalam keadaan normal.

7. Cuaca, traffic light tidak menjadi menjadi pertimbangan sistem. 8. Waktu pengirman dimulai dari pukul 6 pagi hingga 6 sore. 9. Hari pengiriman dimulai dari hari Senin hingga Jumat.

1.5 Metodologi Penelitian

Dalam penyusunan skripsi dan pembuatan aplikasi “Optimasi Distribusi Majalah”, dipakai beberapa metode untuk mencari informasi yang diperlukan, yaitu:

(28)

a. Studi literature

Mencari dan mengumpulkan literature-litaratur yang berkaitan dengan permasalahan yang dikerjakan, yaitu mengenai pemilihan jalur dengan Dijkstra dan penghitungan nilai volume menjadi kecepatan.

b. Studi Lapangan

Melakukan wawancara ke pihak penerbit/percetakkan Kanisius dan meminta data tiap – tiap agen Kanisius yang ada di Yogya

2. Metode pengembangan sistem

Metode perancangan sistem yang digunakan adalah metode berorientasi objek Rational Unified Process. Adapun langkah-langkahnya adalah :

a. Inception

Mempelajari masalah-masalah yang timbul dan menentukan kebutuhan-kebutuhan bagi pemakai sistem untuk mengidentifikasi pemecahan yang beralasan.

b. Elaboration

Menggambarkan bagaimana suatu sistem dibentuk termasuk menyangkut konfigurasi dari komponen-komponen perangkat lunak dari suatu sistem.

c. Konstruksi

(29)

1.6 Sistematika Penulisan BAB 1 PENDAHULUAN

Bab ini berisi tentang latar belakang masalah, batasan masalah, tujuan dan manfaat penelitian, rumusan masalah, dan metodologi penelitian yang digunakan serta sistematika isi penulisan laporan.

BAB 2 LANDASAAN TEORI

Bab ini berisi penjelasan konsep dan dasar-dasar teori yang mendukung penulisan tugas akhir ini.

BAB 3 ANALISA DAN PERANCANGAN

Berisi gambaran umum sistem, metode pengumpulan data, usecase diagram, sekenario perancangan, analisa peracangan, perancangan basis data, perancangan tampilan masukan dan keluaran untuk pengguna.

BAB 4 IMPLEMENTASI DAN ANALISA HASIL

Pada bab ini berisi penerapan rancangan yang telah dibuat didalam program, dan hasil dari pengujiannya dianalisa

BAB 5 KESIMPULAN DAN SARAN

Pada bab ini membahas mengenai kesimpulan akhir dari program yang telah dibuat dan isi dari tugas akhir yang telah dibuat, serta saran untuk pengembangan lebih lanjut program.

(30)

6

BAB 2 LANDASAN TEORI

Bab ini membahas landasan teori mengenai pengertian Network Model

dalam riset operasi, pengertian Graph, Edge, Vertex, konsep-konsep algoritma

Shortest – route.

2.1 RUP (Rational Unified Process)

Menurut Rational Software(1998), Rational Unified Process (RUP) merupakan suatu metode rekayasa perangkat lunak yang dikembangkan dengan mengumpulkan berbagai best practises yang terdapat dalam industri pengembangan perangkat lunak. Ciri utama metode ini adalah menggunakan use-case driven dan pendekatan iteratif untuk siklus pengembangan perankat lunak.

RUP menggunakan konsep object oriented, dengan aktifitas yang berfokus pada pengembangan model dengan menggunakan Unified Model Language (UML). Melalui gambar dibawah dapat dilihat bahwa RUP memiliki, yaitu:

• Dimensi pertama digambarkan secara horizontal. Dimensi ini mewakili

(31)
(32)

Standar ini dapat memanfaatkan kembali komponen-komponen yang telah tersedia/dibuat sehingga dapat meningkatkan produktifitas

9 Deliver high quality system

Kualitas sistem informasi dapat ditingkatkan sebagai sistem yang dibuat pada komponen-komponen yang telah teruji (well-tested dan well-proven) sehingga dapat mempercepat delivery sistem informasi yang dibuat dengan kualitas yang tinggi.

9 Lower maintenance cost

Standar ini dapat membantu untuk menyakinkan dampak perubahan yang terlokalisasi dan masalah dapat dengan mudah terdeteksi sehingga hasilnya biaya pemeliharaan dapat dioptimalkan atau lebih rendah dengan pengembangan informasi tanpa standar yang jelas.

9 Facilitate reuse

Standar ini memiliki kemampuan yang mengembangkan komponen-komponen yang dapat digunakan kembali untuk pengembangan aplikasi yang lainnya.

9 Manage complexity

Standar ini mudah untuk mengatur dan memonitor semua proses dari semua tahapan yang ada sehingga suatu pengembangan sistem informasi yang amat kompleks dapat dilakukan dengan aman dan sesuai dengan harapan semua manajer proyek IT/IS yakni kualitas perangkat linak yang baik dalam biaya dan waktu yang akan diterima user.

(33)

2.1.1 Fase-fase RUP

1. Inception

• Menentukan ruang lingkup proyek

• Membuat ‘Business Case’

• Menjawab pertanyaan “apakah yang dikerjakan dapat menciptakan

good business sense” sehingga proyek dapat dilanjutkan.

2. Elaboration

• Menganalisa berbagai persyaratan dan resiko

• Menetapkan ‘baseline’

• Merencanakan fase berikutnya yaitu construction

3. Construction

• Melakukan sederetan iterasi

• Pada setiap iterasi akan melibatkan proses berikut: analisa desain,

implementasi dan testing 4. Transistion

• Membuat apa yang sudah dimodelkan menjadi suatu produk jadi

• Dalam fase ini dilakukan:

a) Beta dan performancetesting

b) Membuat dokumentasi tambahan seperti; training, user guides dan sales kit

(34)

2.2 Graf

Menurut Chrisitan, Glen.(2006) Graph adalah himpunan benda-benda yang disebut verteks (node) yang terhubung oleh edge-edge (arc). Biasanya graf digambarkan sebagai kumpulan titik-titik (verteks) yang dihubungkan oleh garis-garis (edge). Seperti terlihat pada gambar 2.2

Gambar 2.2 Contoh bentuk graf

2.2.1 Tipe

Graf memiliki beberapa tipe yaitu :

Directed dan undirected ( linknya)

Undirected graph adalah graf yang sisinya tidak mempunyai orientasi arah, seperti terlihat pada gambar 2.3

(35)

Directed graph adalah graf yang setiap sisinya diberikan orientasi arah, seperti pada gambar 2.4

Gambar 2.4 Graf berarah

Simple graph dan unsimple graph

Simple graph adalah graf yang tidak mengandung gelang maupun sisi-ganda. Unsimple graph adalah graf yang mengandung sisi ganda atau gelang.

Graf berhingga(limited graph) dan graf tak-berhingga(unlimited graph)

Limited graph adalah graf yang jumlah simpulnya, n ,berhingga.

Unlimited graph adalah graf yang jumlah simpulnya, n , tidak berhingga banyaknya

2.2.2 Terminologi Dasar

1. Bertetangga (Adjacent) dua buah simpul pada graf tak-berarah dikatakan bertetangga bila keduanya terhubung langsung dengan sebuah sisi

(36)

3. Simpul terpencil( Isolated Vertex) ialah simpul yang tidak mempunyai sisi yang bersisian dengannya. Atau, dapat juga dinyatakan bahwa simpul terpencil adalah simpul yang tidak satupun bertetangga dengan simpul-simpul lainnya.

4. Graf kosong (Null Graph atau Empty Graph) ialah graf yang himpunan sisinya merupakan himpunan kosong disebut sebagai graf kosong dan ditulis sebagai , yang dalam hal ini n adalah jumlah simpul. Contoh

graf kosong dapat dilihat pada gambar 2.5

Gambar 2.5 Graf Kosong N5

5. Lintasan (Path) sebuah path dari vertex a ke vertex b adalah urutan (=a), ,…,vm(=b) dari vertex yang berbeda, dimana setiap pasang

vertex bersebelahan ( -1, ) dihubungkan oleh sebuah edge. Panjang

(length) dari path tersebut adalah m.

(37)

7. Terhubung (Connected) dikatakan demikian jika untuk setiap pasang simpul dan di dalam himpunan V terdapat lintasan dari ke (yang juga harus berarti ada lintasan dari ke ). Jika tidak maka G

disebut graf tak-terhubung (disconnected graph). Seperti dapat dilihat pada gambar 2.6.

Gambar 2.6 Graf tak-berarah tidak terbubung

8. Upagraf (Subgraph) dan komplemen Upagraf dari UpagrafG1

terhadap grafG adalah grafG2= ( , )sedemikian sehingga

= dan adalah himpunan simpul yang anggota – anggota bersisian dengannya. Seperti pada gambar 2.7.

1

2

3

4 5

6

(a)

1

3

2 5 (b)

1

2

3

5

6

(c) Gambar 2.7 GrafG1, (b) sebuah upagraf dari G1, dan komplomen dari upagraf

(38)

9. Upagraf merentang (Spanning Subgraph) upagraf G1 =( , ) dari

G=(V,E) dikatakan upagraf merentang jika =V (yaitu G1 mengandung semua simpul G). Seperti pada gambar 2.8

1

2

3

4 5

1

2

3

4 5

1

2

3

(a) (b) (c)

Gambar 2.8 (a) GrafG (b) upagraf merentang dari G, dan (c) bukan upagraf

merentang dari G

10. Cut-Set dari graf terhubung G adalah himpunan sisi yang bila dibuang dari G menyebabkan G tidak terhubung. Jadi, cut-set selalu

menghasilkan dua buah komponen terhubung. {(1,2),(1,5),(3,5),(3,4)} adalah cut-set. Seperti terlihat pada gambar 2.9

(a) (b)

(39)

11. Graf berbobot(weighted Graph) adalah graf yang setiap sisinya siberi sebuah harga(bobot). Seperti pada gambar 2.10.

Gambar 2.10 Graf berbobot

2.2.3 Komponen Konsep Graf

Suatu graph G dapat dinyatakan sebagai G = (v,E). Graph G terdiri atas himpunan V yang berisikan verteks/node pada graph tersebut dan himpunan dari E

yang berisi edge pada graph tersebut. Himpunan E dinyatakan sebagai pasangan dari verteks yang ada dalam v. Sebagai contoh definisi dari graf pada gambar diatas adalah : v = {1,2,3,4,5,6} dan E = {(1,2),(1,5),(2,3),(3,4),(4,5),(5,2),(4,6)}.

Size dari graf adalah jumlah verteks yang dimilikinya, sedangkan Order adalah jumlah edge seperti pada gambar 1 di atas, Size bernilai 6, sedangkan Order bernilai 7. Nilai order minimum adalah 0, bila tida ada verteks yang terhubung, sedangkan order maksimum adalah n(n-1)/2 (untuk graf komplit), artinya semua verteks terhubung.

2.3 Network Model

Menurut Taha, Hamdy A(2008), network merupakan kumpulan node-

(40)

menggambarkan sebuah network adalah (N,A) dimana N adalah sebuah node dan

A adalah sebuah cabang. Contoh notasi (N,A) adalah

N={1,2,3,4,5}

A={(1,2),(1,3),(2,3),(2,5),(3,4),(3,5),(4,2),(4,5)}

Dan gambar aliran suatu network dapat dilihat pada gambar 2.11

Gambar 2.11 Network(N,A)

Dalam network dikenal ada 4 algoritma optimasi yaitu : a. Algoritma Minimal Spanning Tree

b. Algoritma Shortest – route

c. Algoritma Maximal - flow

d. Algoritma Critical path (CPM)

Pada tugas akhir ini hanya menggunakan model yang kedua yaitu model

Shortest – route.

2.3.1 Algoritma Shortest – route

Menurut Taha, Hamdy A (2008), algoritma Shortest – route dapat diartikan sebagai penentuan jalur terpendek antara sumber dan tujuan didalam

network transportasi. Berbeda dengan Minimum Spanning Tree, Shortest-Route

(41)

Salah satu algoritma yang cukup terkenal untuk menyelesaikan masalah ini adalah algoritma Dijkstra. Algoritma ini hanya dapat digunakan apabila semua cabang pada jaringannya mempunyai bobot non-negatif.

Langkah-langkah algoritma Dijkstra adalah sebagai berikut :

Misalkan G adalah graf berarah berlabel dengan titik- titik

V(G)={ , 2,…, } dan path terpendek yang dicari adalah ke . Algoritma Dijkstra dimulai dari titik . Dalam iterasinya, algoritma akan mencari satu titik yang jumlah bobotnya dari titik 1 terkecil. Titik – titik yang terpilih dipisahkan, dan titik – titik tersebut tidak diperhatikan lagi dalam iterasi berikutnya.

Misalkan :

= , 2, … ,

= himpunan titik-titik V(G) yang sudah terpilih dalam alur path terpendek

= jumlah bobot path terkecil dari ke . , = bobot garis dari titik ke titik ..

1, = jumlah bobot path terkecil dari ke .

Secara formal, algoritma Dijkstra untuk mencari path terpendek adalah sebagai berikut :

1. ;

2, , … , .

(42)

a. Pilih titik Vk V-L dengan D (k) terkecil. L=L { } b. Untuk setiap = V-L lakukan :

Jika , maka ganti dengan ,

4. Untuk setiap , ,

Menurut algoritma diatas path terpendek dari titik ke adalah melalui titik – titik dalam L secara berurutan, dan jumlah bobot path terkecilnya adalah . Contoh kasus : carilah path terpendek dari titik ke dalam graf berarah berlabel gambar 2.12

Gambar 2.12 Graf berarah berlabel

Matriks hubungan W untuk menyelesaikan graf gambar 2.12 adalah sebagai berikut :

(43)

Mula – mula dan , , … ,

2 1,2 3 ; 3 1,3 9

4 1,4 ∞ ; 5 1,5 ∞

6 1,6 ∞ ; 7 1,7 ∞

, , … , , , … , . 7 , sehingga

langkah 3(a)-3(b) dilakukan 3(a) : terkecil adalah 2 , sehingga

2 3 : , , … ,

2 , , … , 2 (dari langkah 3(a)). Diselidiki tiap titik dalam .

Untuk j=3, 3 9 ; , 2 2,3 3 ∞

∞. Karena 3 2 2,3 maka 3 tetap 9. Untuk j=4,

4 ∞ ; , 2 2,4 3 7 10. Karena 4

2 2,4 maka harga 4 diubah menjadi 10 ini berarti bahwa untuk

mencapai titik 4 dan 1, jalur melalui 2, yaitu : , , 2 2,4 mempunyai bobot lebih kecil dibandingkan jalur langsung 4 . Untuk

j=5, 5 ∞; , 2 2,5 3 1 4. Karena

5 2 2,5 , maka harga 5 diubah menjadi 4. Untuk j=6,

6 ∞. , 2 2,6 3 ∞ ∞. Karena

6 2 2,6 maka harga 6 tetap seperti sebelumnya yaitu

∞.Untuk j=7, 7 ∞ , , 2 2,7 3 ∞

∞. Karena 7 2 2,7 maka harga 7 tetap seperti sebelumnya yaitu

∞.Langkah selanjutnya kembali ke langkah 3(a). Karena 7

(44)

3 , yang terkecil adalah 5 , sehingga . Maka sekarang,

, 3 : , , , , ,

, , , , . Langkah 3(b) untuk mengecek setiap titik dalam

(45)
(46)

} , ,

8 (tetap) Min(D(4),D (3)+w(3,4)) =min(9,8+7 )=9

(47)

, }

7 { ,

,

,

,

,

(48)

Karena , maka iterasi dihentikan. Path terpendek dari ke

adalah 15 dengan jalur yang dibaca mundur sebagai berikut : Pada iterasi dengan indeks 6, diperoleh penurunan jarak pada kolom 7 dari 17 ke 15. Ini berarti titik yang terpilih pada baris tesebut ) adalah jalur path (jalur

). Berikutnya pada kolom 6 diperoleh penurunan jarak dari 13 ke

11. Ini berarti titik pada indeks 4 adalah jalur path (jalur adalah ). Pada kolom 4 tidak terjadi penurunan jarak (dari 9 tetap 9 ). Ini berati bahwa titik pada indeks 3 bukan jalur path. Naik 1 baris diatasnya, terjadi penurunan jarak dari 10 ke 9 yaitu pada baris yang sesuai dengan indeks 5. Jadi 5 adalah jalur path (jalur adalah

) . Pada kolom D[5] terjadi penurunan jarak dari ∞ke 4. Baris tersebut sesuai dengan indeks k=2. Jadi adalah jalur path (jalur

). Jadi path terpendek adalah dengan

total panjang = 15. Hasil akhir dari algoritma Dijkstra adalah path terpendek dari titik kesemua titik lain.Untuk mencari path terpendek dari semua titik, algoritma Dijkstra dapat diulang-ulang sebanyak n kali yang dimulai dari semua titik.

2.4 Jenis Jalan

Menurut Munawar (2007) ,wewenang pembinaan atau status, jalan dapat

dibagi menjadi beberapa jenis yaitu

(49)

2. Jalan provinsi: ditingkat provinsi

3. Jalan kabupaten / kota: ditingkat kabupaten / kota

4. Jalan desa: ditingkat desa

5. Jalan lingkungan: lingkungan yang bersangkutan.

Menurut SK Menteri Kimpraswil No. No. 375/KPTS/M/2004 jalan berdasarkan fungisnya dibedakan menjadi 3 jenis yaitu

1. Jalan Arteri

2. Jalan Kolektor

3. Jalan Lokal

Tabel 2.2 Peranan jalan menurut fungsinya

Peranan Jalan

Fungsi Arteri Kolektor Lokal

Aktivitas utama

1. Pergerakan 2. Cepat

3. Perjalanan jauh 4. Tidak ada

pejalan kaki 5. & akses

langsung

1. Perjalanan jarak sedang

2. Menuju ke jaringan primer

3. Pelayanan angkutan umu

(50)

sekitar

Pergerakan pejalan kaki

Tidak ada, kecuali diberi pemisah secara vertikal

Aktivitas pejalan kaki dibatasi dengan

Tidak ada, terpisah dari pusat kegiatan utama.

(51)

Pergerakan beberapa lokasi yang dilayani

2. Pengaturan jarak persimpangan.

Aktivitas utama

Pergerakan

Fungsi utama untuk lalulintas jarak sedang

Tidak ada

1. Berkisar antara 45– 65 km/jam.

2. Ada pengurangan kecepatan pada

2.4.1 Jalan Nasional

Yang termasuk kelompok jalan nasional adalah jalan arteri primer, jalan

(52)

mempunyai nilai strategis terhadap kepentingan nasional. Penetapan status suatu

jalan sebagai jalan nasional dilakukan dengan keputusan menteri.

2.4.2 Jalan Provinsi

Yang termasuk kelompok jalan provinsi:

1. Jalan kolektor primer yang menghubungkan ibukota provinsi dengan

ibukota kabupaten/kota.

2. Jalan kolektor primer yang menghubungkan antar ibukota

kabupaten/kota.

3. Jalan lain yang mempunyai kepentingan strategis terhadap kepentingan

provinsi.

4. Jalan dalam daerah khusus ibukota Jakarta yang tidak termasuk jalan

nasional.

Penetapan status suatu jalan sebagai jalan provinsi dilakukan dengan

keputusan mentri dalam negeri atas usul pemerintah provinsi yang bersangkutan,

dengan memperhatikan pendapat mentri.

2.4.3 Jalan Kabupaten/kota

Yang termasuk kelompok jalan kabupaten adalah:

1. Jalan kolektor primer yang tidak termasuk jalan nasional dan jalan

provinsi.

(53)

3. Jalan sekunder dan jalan lain yang tidak termasuk dalam kelompok jalan

nasional dan jalan provinsi.

Penetapan status suatu jalan sebagai jalan kabupaten dilakukan dengan

keputusan gubernur, atas usul pemerintah kabupaten / kota yang bersangkutan.

2.4.4 Jalan desa

Jalan umum yang menghubungkan kawasan dan / atau antar pemukiman

didalam desa, serta jalan lingkungan.

Kep. Menhub14/2006 tingkat pelayanan yang diinginkan pada ruas jalan

sistem jaringan jalan primer:

1. Jalan arteri primer, minimal B

2. Jalan kolektor primer, minimal B

3. Jalan local primer, minimal C

4. Jalan tol, minimal B

Tingkat pelayanan yang diinginkan pada ruas jalan sistem jaringan jalan sekunder

1. Jalan arteri sekunder, minimal C

2. Jalan kolektor sekunder, minimal C

3. Jalan lokal sekunder, minimal D

4. Jalan lingkungan, minimal D

Tingkat pelayanan pada ruas jalan diklasifikasikan atas :

a. Tingkat pelayanan A, dengan kondisi:

(54)

2) Kepadatan lalu lintas sangat rendah dengan kecepatan yang dapat

dikendalikan oleh pengemudi berdasarkan batasan kecepatan

maksimum/minimum dan kondisi fisik jalan.

3) Pengemudi dapat mempertahankan kecepatan yang diinginkannya

tanpa atau dengan sedikit tundaan.

b. Tingkat pelayanan B, dengan kondisi:

1) Arus stabil dengan volume lalu lintas sedang dan kecepatan mulai

dibatasi oleh kondisi lalulintas.

2) Kepadatan lalu lintas rendah hambatan internal lalulintas belum

mempengaruhi kecepatan.

3) Pengemudi masih punya cukup kebebasan untuk memilih

kecepatannya dan lajur jalan yang digunakan.

c. Tingkat pelayanan C, dengan kondisi:

1) Arus stabil tetapi kecepatan dan pergerakan kendaraan dikendalikan

oleh volume lalu lintas yang lebih tinggi.

2) Kepadatan lalu lintas sedang karena hambatan internal lalu lintas

meningkat.

3) Pengemudi memiliki keterbatasan untuk memilih kecepatan, pindah

(55)

d. Tingkat pelayanan D, dengan kondisi:

1) Arus mendekati tidak stabil dengan volume lalu lintas tinggi dan

kecepatan masih ditolerir namun sangat terpengaruh oleh perubahan

kondisi arus.

2) Kepadatan lalu lintas sedang namun fluktuasi volume lalu lintas dan

hambatan temporer dapat menyebabkan penurunan kecepatan yang

besar.

3) Pengemudi memiliki kebebasan yang sangat terbatas dalam

menjalankan kendaraan, kenyamanan rendah, tetapi kondisi ini masih

dapat ditolerir untuk waktu yang singkat.

e. Tingkat pelayanan E, dengan kondisi:

1) Arus lebih rendah daripada tingkat pelayanan D dengan volume lalu

lintas mendekati kapasitas jalan dan kecepatan sangat rendah.

2) Kepadatan lalu lintas tinggi karena hambatan internal lalu lintas

tinggi.

(56)

Gambar 2.13 Peta jaringan jalan perkotaanYogyakarta

2.5 Volume, kepadatan, kecepatan

Untuk mencari nilai kecepatan suatu jalan ini dikenal ada 3 parameter utama yang saling berhubungan yaitu:

1. Arus (volume) lalu lintas 2. Kerapatan (densitas) lalu lintas 3. Kecepatan (speed) lalu lintas

(57)

V = D . S ……….…………(2.1) dimana:

V = arus

D = kepadatan

S = kecepatan

Hubungan di atas bila dijelaskan dalam gambar 2.14, gambar 2.15, dan gambar 2.16.

Gambar 2.14 Kecepatan vs volume

(58)

Gambar 2.16 Volume vs kecepatan

Keterangan gambar 2.14, gambar 2.15, dan gambar 2.16 sebagai berikut:

VM = kapasitas atau arus maksimum (kendaraan /jam)

SM = kecepatan pada kondisi arus lalu lintas maksimum ( km/jam)

DM = kerapatan pada kondisi arus lalu lintas maksimum ( kendaraan/ km)

Dj = kerapatan pada kondisi arus lalu lintas macet total ( kendaraan/ km ) Penurunan model yang dapat menyatakan atau merepresentasikan hubungan antara kerapatan dan kecepatan ada 3 yaitu:

1. Model Greenshield

2. Model Greenberg

3. Model Underwood

(59)

2.5.1 Greenshield

Hubungan antara kecepatan dan kepadatan adalah :

= - D………...………..(2.2)

Hubungan antara volume dan kepadatan :

. ………..………..(2.3)

Hubungan antara volume dan kecepatan diperoleh bila :

. ……….………….(2.4)

keterangan :

= kecepatan rata-rata ruang

= kecepatan rata-rata ruang keadaan arus bebas Dj = jam density (kepadatan pada saat macet)

D = kepadatan

V= volume

2.5.2 Skala Peta

Menurut Sumadi Sutrijat(1999), skala peta adalah perbandingan antara jarak di peta dengan jarak sebenarnya dipermukaan bumi.

Rumus :

(60)

36

BAB 3 ANALISA DAN PERANCANGAN SISTEM

Dalam bab ini akan dijelaskan mengenai rancangan sistem aplikasi yang hendak dibuat oleh penulis. Diantaranya data, gambaran sistem secara umum, analisa kebutuhan sistem, metode pengumpulan data dan perancangan sistem.

3.1 Data

Dalam aplikasi Optimasi distribusi majalah, membutuhkan beberapa Informasi yang berhubungan dengan peta yang diperoleh dari beberapa sumber. Berikut ini data-data yang digunakan oleh penulis

1. Data jarak jalan

Untuk data panjang jalan penulis memperoleh data dari proses pengcapturean peta dari google earth, kemudian penulis melakukan pengukuran tiap jalan menggunkan corel draw sehingga diperoleh panjang jalan dalam bentuk centimeter.

Proses selanjutnya penulis mencari panjang salah satu jalan dalam ukuran sebenarnya yaitu km. Kemudian panjang jalan itu dilakukan proses perhitungan skala dengan rumus 2.5:

Perhitungan :

(61)

Panjang dipeta = 66.65 cm

3100 76.4

Skala peta = 1: 46.51163

Selanjutnya data tiap jalan dalam peta dikalikan dengan perbandingan skala sesuai dengan hasil pada perhitungan skala diatas. Seperti terlihat pada tabel dibawah :

Tabel 3.1 Perhitungan Peta

Nama Jalan Jarak Dipeta(cm) Jarak Sebenarnya (m)

Laksda Adi Sucipto 8.5 395

Laksda Adi Sucipto 5.8 270

Laksda Adi Sucipto 8.4 391

Janti 14 651

Janti 17.4 809

Janti 7.5 349

Babarsari 9.5 442

Babarsari 9.5 442

Babarsari 12.9 600

Babarsari 12.9 600

Babarsari 16.2 753

Babarsari 16.2 753

Laksda Adi Sucipto 16.4 763

(62)

Laksda Adi Sucipto 1.4 65

Laksda Adi Sucipto 5.4 251

Ngentak - Puluhdadi 13.2 614

Ngentak - Puluhdadi 13.2 614

Ngentak - Puluhdadi 10.2 474

Ngentak - Puluhdadi 10.2 474

Sumber : Hasil Analisis, 2010

2. Pengolahan data volume menjadi kecepatan

Untuk data kecepatan penulis peroleh dari hasil perhitungan volume jumlah kendaraan yang diperoleh dari dinas perhubungan DIY. Data volume yang penulis gunakan adalah data tahun 2008.

Untuk proses perhitungan data volume menjadi data kecepatan penulis menggunakan rumus 2.2, 2.3 dan 2.4.

Perhitungan : V = 3049 smp/jam Dj = 602 smp/jam

= 70 km / jam

Mencari nilai D (menggunakan rumus 2.3)

3049 70 60270

Dengan menggunakan rumus abc dapat diperoleh nilai D

70 70 4 70602 3049

(63)

D minimal = 554.73 smp/jam

D maksimal = 47.26 smp/jam

Mencari kecepatan rata-rata ( / menggunakan rumus 2.2

dengan D minimal :

Jadi nilai kecepatan rata-rata adalah 5.4965 km/jam

Tabel 3.2 Data volume jumlah kendaraan

(64)

Sumber : Dinas Perhubungan DIY, 2008

3.2 Gambaran Umum Sistem

Secara umum sistem aplikasi yang dibuat penulis bertujuan untuk mencari jalur pengiriman majalah tercepat dari penerbit/percetakaan Kanisius ke agen-agen sebagai pelanggan dan kembali lagi ke Kanisius menggunakan metode Dijkstra.

3.2.1 Struktur Data Program

Dalam pembuatan tugas akhir ini penulis menggunakan sistem struktur data untuk mengaplikasikan pembuatan aplikasi. Adapun komponen peta dapat penulis jelaskan sebagai berikut :

Gambar 3.1 Gambar Pembagian peta menjadi cluster

4 Bantul Niten arah

(65)

Gambar 3.2 Gambar Cluster peta

1. Konsep Node

Pengaplikasian algoritma Dijkstra sangat erat kaitannya dengan node. Di aplikasi yang penulis buat, node diletakkan pada persimpangan jalan dan pada jalan yang mempunyai jarak yang panjang penulis letakkan node pada bagian tengah jalan.

2. Pemecahan Peta

Dalam pembuatan aplikasi ini penulis memecah peta menjadi 10 bagian peta yang lebih kecil seperti yang terlihat pada gambar 3.1. Hal ini penulis lakukan karena terlalu luasnya cakupan masalah yaitu wilayah kawasan Yogya yang berada didalam lingkup ringroad. Ada beberapa keuntungan yang penulis perhitungkan bila peta itu penulis pecah menjadi 10 bagian. Keuntungan itu antara lain :

a. Dapat memperingan kerja sistem. Karena tidak semua node dalam peta dicari jalur terpendeknya, hanya node yang berada dalam cluster yang menjadi urutan pencarian saja yang akan dicari jalur terpendeknya. b. Mempermudah pengembangan sistem kedepan. Hal ini berhubungan

(66)

penulis hanya tinggal mendeskripsikan peta baru dan menghubungkan peta itu dengan peta yang lama.

Sedangkan kerugian yang menjadi pertimbangan penulis apabila peta tidak dipecah menjadi bagian yang lebih kecil yaitu :

a. Sistem bekerja sangat berat karena tiap node akan dicek jalur terpendek satu persatu walaupun node itu kecil kemungkinan untuk dilewati. b. Untuk mengembangkan sistem penulis harus merombak peta secara

total.

Berdasarkan beberapa perhitungan itu maka penulis memutuskan untuk memecah-mecah peta menjadi bagian yang lebih kecil. Bentuk pemecahan peta itu dapat penulis jelaskan sebagai berikut:

a. Peta, penulis pecah menjadi 10 bagian. Tiap bagian peta penulis istilahkan sebagai cluster. Cluster itu merupakan peta – peta kecil yang tersendiri, tiap cluster apabila digabungkan akan membentuk peta secara keseluruhan. b. Untuk menghubungkan antara cluster satu dengan cluster lain penulis

menggunakan node. Node penghubung itu dimiliki oleh kedua cluster yang saling berhubungan.

c. Untuk proses pencarian jalur sistem akan mencari urutan cluster tercepat, kemudian setelah didapat urutan cluster sistem akan mulai mencari jalur tercepat ditiap clusternya dengan titik awal node adalah node sumber dan node persimpangan antar cluster. Sedangkan node akhirnya adalah node tujuan pengiriman dan node persimpangan antar cluster.

(67)

penulis jelaskan pada diagram alur dibawah ini: 1. Menset tujuan pengiriman

(68)
(69)

2. Mencari urutan cluster pengiriman

(70)

Gambar 3.4 Flowchart mencari urutan cluster pengiriman

3. Mencari jalur pengiriman tercepat

(71)
(72)
(73)
(74)

3.2.2 Analisis Kebutuhan

Kebutuhan yang diperlukan oleh pengguna aplikasi Optimasi Distribusi majalah di penerbit / percetakkan Kanisius adalah :

1. User membutuhkan program untuk membantu dalam mencari jalur pengiriman majalah tercepat dari Kanisius ke agen dan kembali ke agen.

2. User membutuhkan program inputan alamat agar user dapat menginputkan tujuan pengiriman majalah tiap- tiap agen.

3. User membutuhkan peta jalur tercepat secara visual dari Kanisius ke agen dan kembali ke Kanisius.

(75)

3.3 Analisa Sistem 3.3.1 Model Use Case 3.3.1.1Diagram Use Case

Berikut ini adalah gambar use case system yang akan dibangun :

Gambar 3.7 Diagram Use Case

Administrator Mengisi data agen baru

Ubah Kecepatan jalan

(76)

3.3.1.2 Actor

Dalam aplikasi Optimasi Distribusi Majalah terdapat 2 aktor yang terlibat yaitu :

Tabel 3.3 Actor

Aktor Hak Akses

Administrator • Login Administrator

• Mengubah data kecepatan tiap jalan

• Mengubah kondisi jalan yang tidak dapat

dilewati

• Mengubah Account Administrator

• Logout Administrator

Staff Bagian Pemasaran

• Login Staff Bagian Pemasaran.

• Menambah,mengubah, menghapus data agen

• Menambah,mengubah, menghapus data

transaksi majalah

• Melihat daftar pengiriman

• Melihat peta jalur pengiriman majalah yang

telah dipilih oleh sistem

• Mengubah account staff bagian pemasaran

(77)

3.3.1.3 Tabel Use Case

Tabel 3.4 Use Case

No Use Case Deskripsi Aktor

1 Login Fasilitas login digunakan oleh admin dan staff bagian pemasaran untuk masuk ke account masing – masing

Administrator dan StaffBagianPemasaran

2 Logout Digunakan oleh staff bagian pemasaran dan admin untuk keluar dari account masing-masing

Administrator dan StaffBagianPemasaran

3 Mengubah Account

Digunakan staff bagian pemasaran dan admin untuk mengubah username dan password account yang digunakan untuk login

Administrator dan StaffBagianPemasaran

4 Mengisi data agen baru

Digunakan staff bagian pemasaran untuk menambah data agen baru.

StaffBagianPemasaran

5 Mengubah data agen

Digunakan staff bagian pemasaran untuk mengubah atau

memperbaharui data Agen.

StaffBagianPemasaran

6 Menghapus Digunakan staff bagian pemasaran untuk menghapus data agen yang

(78)

data agen diinginkan.

7 Mengisi transaksi baru

Digunakan StaffBagianPemasaran untuk mencatat transaksi

pemesanan tiap agen

StaffBagianPemasaran

8 Mengubah transaksi

Digunakan untuk mengubah data transaksi pemesanan

StaffBagianPemasaran

9 Menghapus transaksi

Digunakan staff bagian pemasaran untuk menghapus transaksi yang diinginkan

StaffBagianPemasaran

10 Melihat daftar pengiriman

Digunakan oleh Staff bagian pemasaran untuk melihat daftar pengiriman majalah dan

menentukan daftar agen yang akan dikirim

StaffBagianPemasaran

11 Melihat peta pengiriman

Staff bagian pemasaran menggunakan fungsi ini untuk melihat jalur pengiriman majalah yang sesuai rekomendasi sistem

StaffBagianPemasaran

12 Mengupdate kondisi jalan yang tidak bisa

Digunakan oleh Administrator untuk mengupdate jalan mana yang tidak bisa dilewati

(79)

dilewati

13 Ubah Kecepatan jalan

Digunakan Admin untuk mengubah data bobot dari tiap-tiap jalan

Administrator

3.3.2 Skenario Use Case

Setiap use case pada bagian sebelumnya akan dirinci dalam sebuah skenario yang merupakan deskripsi tekstual dari suatu proses dan bagaimana pengguna berinteraksi dengan sistem. Untuk lebih jelsnya dapat dilihat pada tabel 3.5 berikut ini :

Tabel 3.5 Tabel skenario Use Case

Use Case Detail Skenario

Login Lampiran 1.1

Logout Lampiran 1.2

Mengubah Account Lampiran 1.3

Mengisi data agen baru Lampiran 1.4

Mengubah data agen Lampiran 1.5

Menghapus data agen Lampiran 1.6

Mengisi transaksi baru Lampiran 1.7

Mengubah transaksi Lampiran 1.8

Menghapus transaksi Lampiran 1.9

(80)

Melihat peta pengiriman Lampiran 1.11 Mengupdate kondisi jalan yang tidak bisa dilewati Lampiran 1.12

Ubah Kecepatan jalan Lampiran 1.13

3.3.3 Model Analisis

Model analisis adalah salah satu proses untuk menterjemahkan skenario

use case menjadi kelas analisis. Dalam kelas analisis terdapat 3 jenis, yakni:

Form/boundary Controller, dan Entitas.

3.3.3.1 Realisasi Use Case

Pada tahap ini, analisis kelas dilakukan setiap use case. Setiap use case

dicari kelas analisis sehingga kebutuhan kelas dapat ditentukan. untuk lebih lengkapnya dapat dilihat pada tabel 3.6 berikut ini :

Tabel 3.6 Tabel realisasi use case

Use Case Detail Skenario

Login Lampiran 2.1

Logout Lampiran 2.2

Mengubah Account Lampiran 2.3

Mengisi data Agen Lampiran 2.4

Mengubah data agen Lampiran 2.5

Menghapus data agen Lampiran 2.6

Mengisi transaksi baru Lampiran 2.7

(81)

Menghapus transaksi Lampiran 2.9 Melihat daftar pengiriman Lampiran 2.10

Melihat peta pengiriman Lampiran 2.11

Mengupdate kondisi jalan Lampiran 2.12

Ubah Kecepatan jalan Lampiran 2.13

3.3.3.2 Diagram kelas keseluruhan

(82)

3.3.4 Desain Sistem

3.3.4.1 Kelas Perancangan

Tabel 3.7 Kelas perancangan

No Kelas Analisis Kelas Perancangan Jenis UseCase

1 AdminControl AdminControl Control logout

mengubah Account mengubah kecepatan jalan mengupdate kondisi jalan mengubah waktu lampu merah

2 AdminMainFrame AdminMainFrame Boundary login

(83)

mengubah waktu lampu merah mengupdate kondisi Jalan

3 AgenData AgenData Entity melihat daftar pengiriman

melihat peta pengiriman menghapus data agen mengisidataagen mengisitransaksibaru mengubah data agen 4 AgenInternalFrame AgenInternalFrame Boundary menghapus data agen

mengisidataagen mengubah data agen

5 AutentikasiLogin autentikasiLogin Control login

(84)

mengisidataagen mengubah data agen

8 DaftarPengirimanInternalFrame DaftarPengirimanInternalFrame Boundary melihat daftar pengiriman melihat peta pengiriman 9 hitungKepadatanData hitungKepadatanData Entity mengubah kecepatan jalan

10 JalanData JalanData Entity menghapus data agen

mengisidataagen mengubah data agen mengubah kecepatan jalan mengupdate kondisi jalan

11 KabupatenData KabupatenData Entity menghapus data agen

(85)

mengisidataagen mengubah data agen

13 KelurahanData KelurahanData Entity menghapus data agen

mengisidataagen mengubah data agen 14 KondisiJalanInternalFrame kondisiJalanInternalFrame Boundary mengupdate kondisi jalan

15 LoadPeta LoadPeta Control login

16 LoginFrame LoginFrame Boundary login

logout 17 PathSearchDestination PathSearchDestination

DistPar Edge Graph

(86)

Vertex

18 PetaPengirimanFrame PetaPengirimanFrame petaPengiriman

Boundary melihat peta pengiriman

19 pilihNodeFrame pilihNodeFrame

peta

Boundary mengisidataagen mengubah data agen

20 satuanPerhitunganForm satuanPerhitunganForm Boundary mengubah kecepatan jalan 21 StaffBagianPemasaranMainFrame StaffBagianPemasaranMainFram

e

Boundary login logout

(87)

mengubah account mengubah data agen mengubahtransaksi

22 StaffControl StaffControl Control logout

menghapus transaksi melihat daftar pengiriman mengubah data agen mengubahtransaksi menghapus data agen mengubah account melihat peta pengiriman mengisidataagen

(88)

melihat peta pengiriman menghapus transaksi mengisitransaksibaru mengubahTransaksi

24 TransaksiData TransaksiData Entity melihat daftar pengiriman melihat peta pengiriman menghapus transaksi mengisitransaksibaru mengubahTransaksi

25 TransaksiInternalFrame TransaksiInternalFrame Boundary menghapus transaksi mengubahTransaksi

(89)

28 UserData UserData Entity login

(90)

3.3.5 Attribut dan Method

Bagian ini akan menjelaskan lebih detail mengenai attribut dan method dari kelas desain. Daftar detail mengenai attribut dan method tersebut dapat dilihat pada lampiran 4

3.3.6 Prototype Antarmuka

Dari analisa attribut dan method pada tahap sebelumnya, maka akan ditentukan kelas yang akan dijadikan user interface. Kemudian dari kelas tersebut dibuat suatu rancangan antarmuka yang akan digunakan dalam implementasi program. Rancangan prototype antar muka dapat dilihat pada tabel 3.8 berikut ini:

Tabel 3.8 Prototype Antarmuka

No Kelas Analisis Lampiran

1 Halaman Login Lampiran 5.1 2 Halaman

StaffBagianPemasaranMainFrame

Lampiran 5.2

3 Halaman AgenInternalframe Lampiran 5.3 4 Halaman PilihNodeFrame Lampiran 5.4 5 Halaman TransaksiInternalFrame Lampiran 5.5 6 Halaman CariAgenDialog Lampiran 5.6 7 Halaman

DaftarPengirimanInternalFrame

Lampiran 5.7

8 Halaman PetaPengirimanFrame Lampiran 5.8 9 Halaman UbahAccountFrame Lampiran 5.9 10 Halaman AdminMainframe Lampiran 5.10 11 Halaman SatuanPerhitunganForm Lampiran 5.11 12 Halaman

KondisiJalanInternalframe

(91)

3.3.7 Attribut

3.3.7.1Halaman Login

Tabel 3.9 Halaman login

No Nama Jenis Deskripsi

1 btnCancel Button Untuk membatalkan proses Login

2 btnOK Button Untuk melakukan proses login 3 cmbStatus comboBox Untuk memilih mau login

sebgai administrator atau StaffBagianPemasaran 4 txtPassword PasswordField Untuk tempat input password 5 txtUsername TextField Untuk input username 6 judulLabel Label Untuk keterangan judul form 7 userNameLabel Label Untuk keterangan nama 8 loginAsLabel Label Untuk keterangan login as 9 passwordLabel Label Untuk keterangan password

3.3.7.2Halaman StaffBagianPemasaranMainFrame

Tabel 3.10 Halaman StaffBagianPemasaranMainFrame

No Nama Jenis Deskripsi

(92)

program

2 mnAccount Menu Berisi menu ubah account menuitem

3 mnFile Menu Untuk meletakkan

Agen,Transaksi,Daftar Pengiriman, dan logout menu Item

4 desktopPanel Panel Untuk tempat tampilnya form-form yang dipanggil user 5 jMenuBar1 MenuBar Untuk meletakkan menu - menu 6 mnItemAgen MenuItem Untuk menampilkan form

agenInternalFrame

7 mnItemDaftarPengirman MenuItem Untuk menampilkan form DaftarPengirimanInternalFrame 8 mnItemEditAccount MenuItem Untuk menampilkan form

UbahAccountFrame

9 mnItemKeluar MenuItem Untuk keluar dari menu Utama Staff menuju ke form login 10 mnItemTransaksiBaru MenuItem Untuk menampilkan form

TransaksiInternalFrame

(93)

3.3.7.3Halaman AgenInternalFrame

Tabel 3.11 Halaman Agen

No Nama Jenis Deskripsi

1 agenTable Table Untuk menampilkan data agen yang telah diinputkan

2 alamatTextArea TextArea Untuk input alamat lengkap agen 3 cariButton Button Untuk melakukan proses pencarian 4 cariCmbBox ComboBox Untuk memilih mencari agen

berdasarkan apa

5 cariTextField TextField Untuk menginputkan pencarian agen

6 cekPosisionButton Button Untuk menampilkan form pilihNodeFrame yang digunakan untuk memilih letak posisi agen 7 faxTextField textField Untuk inputan nomor fax

8 hapusButton Button Untuk menghapus data agen 9 jalanComboBox ComboBox Untuk memilih nama jalan tempat

posisi agen

10 kecamatanComboBox ComboBox Untuk memilih nama kecamatan 11 kelurahanComboBox ComboBox Untuk memilih nama kelurahan 12 koordLabel Label Untuk menampilkan kordinat

(94)

13 kordXLabel Label Untuk menampilkan koordinat X di peta tempat posisi agen

14 kordYlabel Label Untuk menampilkan koordinat Y di peta tempat posisi agen

15 kosongButton Button Untuk mengkosongan field 16 kotaComboBox ComboBox Untuk memilih nama kabupaten 17 nama1TextField TextField Untuk menginputkan nama agen 18 simpanButton Button Untuk menyimpan data agen

kedalam database

19 teleponTextField TextField Untuk menginputkan data telepon agen

20 jalanLable Label Label keterangan jalan textField 21 kelurahanLable Label Label keterangan kelurahan

textField

22 kecamatanLable Label Label keterangan kecamatan textField

(95)

29 nama1Lable Label Label keterangan nama textField 30 kotaLable Label Label keterangan kota textField

3.3.7.4Halaman PilihNodeFrame

Tabel 3.12 Halaman PilihNodeFrame

No Nama Jenis Deskripsi

1 upButton Button Untuk mengarahkan peta keatas 2 piliButton Button Untuk menyimpan node alamat agen,

menutup form pilihNode dan kembali ke form agenInternalFrame

3 rightButton Button Untuk mengarahkan peta kekanan 4 mapPanel Panel Untuk tempat tampil peta

5 leftButton Button Untuk mengarahkan peta kekiri 6 kordinatYlabel Label Untuk menampilkan koordinat Y

lokasi node dipeta

7 kordinatXLabel Label Untuk menampilkan koordinat X lokasi node dipeta

(96)

3.3.7.5Halaman TransaksiInternalFrame

Tabel 3.13 Halaman Transaksi

No Nama Jenis Deskripsi

1 idTransaksiLabel Label Keterangan id transaksi 2 hidupPesanTextField TextField Untuk inputan jumlah pesanan

majalah hidup

3 hidupPesanLabel Label Keterangan hidup textfield 4 hapusButton Button Untuk menghapus data transaksi 5 cariTextField TextField Untuk menginputkan kata

pencarian

6 cariButton Button Untuk melakukan pencarian data transaksi

7 cariBerdasarkanLabel Label

8 cariBerdasarkanCmbBox ComboBox Untuk memilih jenis pencarian 9 basisPesanTextField TextField Untuk menginputkan jumlah

pesanan majalah basis

10 basisPesanLabel Label Keterangan label basistextfield 11 jMonthChooser1 ComboBox Untuk memilih bulan pemesanan 12 jYearChooser1 ComboBox Untuk memilih tahun pemesanan 13 kosongButton Button Untuk mengkosongkan field

inputan

(97)

15 namaAgenLabel2 Label Untuk menampilkan nama agen yang dipilih pada tabel pilih agen 16 nmrAgenButton Button Untuk menampilkan form

bantuan data agen

17 nmrAgenLabel Label Keterangan nomor agen

18 simpanButton Button Untuk menyimpan data transaksi kedalam database

19 transaksiTabel Table Keterangan transaksi textfield 20 ubahButton Button Untuk mengubah data transaksi 21 utusanLabel Label Keterangan utusan textfield 22 utusanTextField TextField Untuk menginputkan jumlah

pesanan majalah utusan

3.3.7.6Halaman CariAgenDialog

Tabel 3.14 Halaman Cari Agen

No Nama Jenis Deskripsi

1 pilihButton Button Untuk memilih agen yang telah terseleksi ditable

2 jenisPencarianCombo ComboBox Untuk menentukan pencarian jenis tabel

(98)

4 cariLabel Label Keterangan label cari

5 cariButton Button Untuk mencari agen

berdasarkan kriteria pada cari textfield

6 agenTabel Table Keterangan agen

3.3.7.7Halaman DaftarPengirimanInternalFrame

Tabel 3.15 Halaman Daftar Pengiriman

No Nama Jenis Deskripsi

1 HidupLabel Label Keterangan hidup

2 alamatTextArea TextArea Alamat lengkap dari agen

3 basisJml Label Untuk menampilkan keterangan jumlah pesanan majalah basis

4 basisLabel Label Keterangan basis

5 berangkatLabel Label Keterangan waktu berangkat

6 daftarPengirimanTable Table Digunakan untuk menampilkan daftar pemesanan majalah

7 hidupJml Label Untuk menampilkan keterangan jumlah pesanan majalah hidup 8 idAgen Label Untuk menampilkan id agen yang

(99)

10 namaAgenLabel Label Keterangan nama agen

11 pesananBulanCmbBox ComboBox Untuk menampilkan pilihan bulan pengiriman

12 pesananBulanLabel Label Keterangan bulan

13 petaButton Button Untuk menampilkan peta pengiriman

14 utusanJml Label Untuk menampilkan keterangan jumlah pesanan majalah utusan 15 utusanLabel Label Keterangan utusan

16 wktBrangkatCombo ComboBox Untuk memilih waktu berangkat 17 statusLabel Label Keterangan status

18 statusCmbBox Combobox Untuk memilih apakah agen mau dikirm atau tidak

19 ButtonSimpan Button Untuk menyimpan status agen

3.3.7.8Halaman PetaPengirimanFrame

Tabel 3.16 Halaman peta pengiriman

No Nama Jenis Deskripsi

1 upButton Button Untuk mengarahkan peta

ke atas

2 rightButton Button Untuk mengarahkan peta

(100)

3 petaJalurPanel Panel Untuk menampilkan peta jalur pengiriman

4 leftButton Button Untuk mengarahkan peta

ke kiri

5 ketWaktuBrngkatLabel Label Untuk menampilkan waktu pengiriman dimulai

6 jalurPengirmanJalanTextArea TextArea Untuk menampilkan keterangan jalur

pengiriman

7 bottomButton Button Untuk mengarahkan peta

ke bawah

3.3.7.9Halaman UbahAccountFrame

Tabel 3.17 Halaman Ubah Akun

No Nama Jenis Deskripsi

1 batalButton Button Untuk membatalkan proses

ubah username dan password

2 loginAs Label Keterangan aktorlogin

sebagai admin atau sebagai StaffBagianPemasaran

Gambar

Gambar 2.1  Arsitektur Rational UUnified Proceess, dari Rational Softwaare(1998)
Gambar 2.2 Contoh bentuk graf
Gambar 2.4 Graf berarah
Gambar 2.5 Graf Kosong N5
+7

Referensi

Dokumen terkait

Dalam pembangunan prasarana bidang cipta karya, untuk mencapai hasil yang optimal diperlukan kelembagaan yang dapat berfungsi sebagai motor penggerak RPIJM agar

NEWS READER: KECIL JADI KAWAN, BESAR JADI LAWAN. KECIL JADI KAWAN/ BESAR JADI

Perancangan perangkat lunak untuk mengamankan data dengan algoritma kriptografi Einstein telah berhasil direalisasikan untuk tipe-tipe file yang umum digunakan, seperti

Obyektif iklan Gamelan United adalah untuk membangun citra gamelan sebagai instrumen musik yang dapat menjadi media berekspresi generasi muda berusaha dicapai

Penelitian pengembangan ini menggunakan model pengembang- an media intruksional menurut Suyanto (2009) Penelitian dilakukan di SMP N 1 Way Jepara pada siswa

Meyerhoff (2006) states that code mixing “generally refers to the alternation between varieties, or codes within a clause or phrase.” Code mixing occurs when speaker use

Permainan putaran gambar binatang adalah salah satu kegiatan yang dapat meningkatkan kemampuan membaca anak di Taman Kaman Kanak-kanak Tunas Bangsa Lubuk Basung.Hasil

Kehadiran mineral zirkon dasar laut di lokasi penelitian dengan memperhatikan LQWHQVLWDV SHQDPSDNDQ SHQ\HEDUDQ EHQWXN NULVWDO GDQ DVRVLDVL NHKDGLUDQ PLQHUDO ODLQ PHQXQMXNNDQ