PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
SISTEM PENDUKUNG PENGAMBILAN KEPUTUSAN OPTIMASI ANGGARAN MENGGUNAKAN ALGORITMA KNAPSACK
HALAMAN JUDUL SKRIPSI
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Jurusan Teknik Informatika
Disusun oleh : Yohanes Satrio Prabowo 115314039
JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2016
i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DECISION SUPPORT SYSTEM OPTIMIZE BUDGET USING KNAPSACK ALGORITHM
TITLE PAGE A Thesis
Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Komputer Degree In Informatics Engineering Study Program
By: Yohanes Satrio Prabowo 115314039
INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2016
ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSETUJUAN
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PENGESAHAN
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN MOTTO
“Jangan mencari ketakutanmu melainkan carilah harapan dan mimpimu. Jangan berpikir tentang frustrasimnu, tapi tentang potensi yang belum terpenuhi. Perhatikan dirimu bukan dengan apa yang telah kamu coba dan gagal, tapi dengan apa yang masih mungkin bagimu untuk melakukan sesuatu.” – Paus Yohanes XXIII
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis tidak mengandung atau memuat hasil karya orang lain, kecuali yang telah disebutkan dalam daftar pustaka dan kutipan selayaknya karya ilmiah
Yogyakarta, 8 Desember 2016
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma Yogyakarta Nama
: Yohanes Satrio Prabowo
NIM
: 115314039
Demi pengembangan ilmu pengetahuan, saya memeberkan kepada perpustakaan Universitas Sanata Dharma kataya ilmiah yang berjudul : SISTEM PENDUKUNG PENGAMBILAN KEPUTUSAN OPTIMASI ANGGARAN MENGGUNAKAN ALGORITMA KNAPSACK Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada perpustakaan Universitas Sanata Dharma Yogyakarta hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelola dalam bentuk pangkalan data, mendistribusikan sercara terbatas, dan mempublikasikan di internet atau media lain untuk kepentingan akademis tanpa meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis. Demikian pernyataan yang saya buat dengan sebenarnya. Dibuat di Yogyakarta, Pada Tanggal : 8 Desember 2016 Yang menyatakan,
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRAK
Sistem pendukung pengambilan keputusan optimasi anggaran ini merupakan sebuah sistem pendukung pengambilan keputusan yang dibuat untuk membantu pengguna dalam mengelola anggaran sesuai dengan bobot dan proiritas barang agar optimal sesuai dengan maksimal anggaran. Sistem pendukung pengambilan keputusan optimasi anggaran ini menggunakan metode knapsack problems dengan penyelesaian greedy by weigh, semakin tinggi bobot barang yang diberikan maka barang tersebut semakin penting dan di prioritaskan. Data masukkan pada sistem ini berupa file excel yang berekstensi .xlxs. Sistem ini dibangun menggunakan bahasa pemrograman Java dengan database MySql yang berbasis dekstop. Hasil akhir dari sistem ini yaitu, sistem ini melakukan perhitungan dari jumlah total anggaran yang akan di bandingkan dengan maksimal anggaran yang di-input-kan. Jika jumlah total anggaran melebihi maksimal anggaran maka akan dilakukan penghapusan dan atau pemotongan jumlah barang yang tidak di prioritaskan. Data output rekomendasi dari sistem ini berupa file excel yang berekstensi .xlxs.
Kata Kunci : Knapsack Problems, Greedy, Sistem Pendukung Pengambilan Keputusan (SPPK)
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRACT The decision-making support system of optimization of this budget is a decision-making support system created to aid users in managing the budget in accordance with the weights and proiritas the goods in order for optimal fit with a maximum budget.
Decision-making support system this budget optimization method using knapsack problems with greedy finalization by weigh, the higher the weighting of goods that are given then the goods are increasingly important and in priority. The data entered on the system in the form of an excel file with extension. xlxs. The system is built using the Java programming language with database MySql based desktop.
The end result of the system, the system performs the calculation of the total amount of the budget that will be compared with the maximum budget that you input. If the total amount of the budget exceeded the maximum budget it will be done the removal and or cutting the number of items that are not in priority. Output data the recommendations of this system in the form of an excel file with extension. xlxs.
Keyword : Knapsack Problems, Greedy, Decision Support System
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGATAR
Puji syukur kehadirat Tuhan Yesus Kristus, atas segala berkat, penyertaan, dan anugrah_Nya sehingga penulis dapat penyelesaikan skripsi dengan judul “Sistem Pendukung Pengambilan Keputusan Optimasi Anggaran Menggunakan Algoritma Knapsack” dengan baik dan lancar. Skripsi ini disusun sebagai salah satu syarat guna memperoleh gelar Sarjana Komputer Program Studi Teknik Informatika Universitas Sanata Dharma. Penulis menyadari banyak hal yang terjadi selama proses pengerjaan skripsi ada begitu banyak pihak yang telah memberikan bantuan dan perhatiaannya selama penulis mengerjakan skripsi ini. Oleh karena itu penulis ingin menyampaikan terima kasih kepada : 1. Orang tua saya Pramudiyamurti dan Ch Niken Sumekar yang telah memberikan dukungan moral, priritual dan financial dalam penyusunan skripsi. 2. Sudi Mungkasi,S.Si.,M.Math.Sc.,Ph.D selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta. 3. Dr.Anastasia Rita selaku Ketua Program Studi Teknik Informatika Universitas Sanata Dharma Yogyakarta. 4. Bapak Albertus Agung Hadhiamta S.T., M.T., selaku dosen pembimbing skripsi yang telah bersedia meluangkan waktu dan tenaga untuk memberikan bimbingan, bantuan, dukungan, serta masukan dari awal samapi akhir penulisan skripsi ini. 5. Bapak JB. Budi Darmawan, S.T.,M.Sc., selaku dosen pembimbing akademik Jurusan Teknik Informatika angjatan 2011. 6. Mas Susilo selaku Kepala pada laboratorium komputer dasar Universitas Sanata Dharma yang telah meluangkan waktu dan tenaga untuk memberikan penjelasan, pengarahan serta dukungan dalam proses pembuatan skripsi ini.
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7. Bapak dan Ibu dosen Program Studi Teknik Informatika yang telah memberikan ilmu selama proses perkuliahan. 8. Adik saya Stephani Nindya Kirana yang telah mendukung, support, dan mendoakan sehingga terselesaikan skripsi ini. 9. Teman yang selalu support saya Beny, Bagus, Dio, Tea, Bee, Priska, Monik, Agung, Kevin, Lukas, Candra, Bagus 2012, Angela Risma Viani dalam proses penulisan skripsi ini 10. Teman-teman Teknik Informatika angkatan 2011, terima kasih banyak atas semangat dan kebersamaannya. 11. Semua pihak yang tidak dapat disebutkan satu persatu yang telah membantu penulis dalam menyelesaikan tugas akhir ini.
Dalam penulisan skripsi ini tentunya masih banyak kekurangan. Oleh karena itu penulis mengharapkan saran dan kritik dari pembaca agar skripsi ini dapat berguna bagi semua pihak.
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI
HALAMAN JUDUL ..................................................................................................i TITLE PAGE ........................................................................................................... ii HALAMAN PERSETUJUAN .................................................................................. iii HALAMAN PENGESAHAN ................................................................................... iv HALAMAN MOTTO ............................................................................................... v PERNYATAAN KEASLIAN KARYA..................................................................... vi LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ................................................................. vii ABSTRAK ............................................................................................................. viii ABSTRACT ............................................................................................................. ix KATA PENGATAR .................................................................................................. x DAFTAR ISI........................................................................................................... xii DAFTAR TABEL .................................................................................................. xvi DAFTAR GAMBAR ............................................................................................. xvii BAB I ........................................................................................................................1 PENDAHULUAN .....................................................................................................1 1.1 Latar Belakang ................................................................................................1 1.2 Rumusan Masalah ...........................................................................................2 1.3 Tujuan .............................................................................................................2 1.4 Batasan Masalah..............................................................................................2 1.5 Metodologi Penelitian ......................................................................................3 1.6 Sistematika Penulisan ......................................................................................3 LANDASAN TEORI .................................................................................................5 2.1 Sistem Pendukung Pengambilan Keputusan (SPPK) .......................................5 2.1.1 Tujuan SPPK ............................................................................................5 2.1.2 Struktur Keputusan ..................................................................................6 2.1.3 Karateristik Sistem Pendukung Pengambil Keputusan .............................7 2.1.4 Arsitektur Sistem Pendukung Pengambil Keputusan ................................9 2.1.5 Langkah – langkah Pemodelan dalam Sistem Pengambil Keputusan ...... 10 2.2 Knapsack Problem .......................................................................................... 11
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.2.1. Knapsack Interger 0/1 ............................................................................. 12 2.3 Greedy ............................................................................................................ 12 2.3.1. Penyelesaian Dengan Kriteria Greedy ..................................................... 13 BAB III ................................................................................................................... 15 METODOLOGI PENELITIAN .............................................................................. 15 3.1 Rumusan Masalah ......................................................................................... 15 3.1.1 Tahap Perencanaan ................................................................................. 15 3.1.2 Pengumpulan Data .................................................................................. 16 3.2
Pengembangan Sistem .............................................................................. 16
3.2.1
Metode Pengembangan Sistem .......................................................... 16
BAB IV ................................................................................................................... 19 ANALISA DAN PERANCANGAN SISTEM .......................................................... 19 4.1 Analisa Sistem ............................................................................................... 19 4.1.1 Gambaran Umum Sistem Lama .............................................................. 19 4.1.2
Fase Definisi Ruang Lingkup (Scope Definition Phase) ..................... 19
4.1.3
Analisis Masalah (Problem analysis).................................................. 20
4.1.4
Gambaran Umum Sistem Yang Akan Dibuat ................................... 20
4.2
Analisis Kebutuhan (Requirement Analysis) ............................................. 22
4.2.1 Use Case Diagram ................................................................................... 22 4.3 Desain Subsistem Manajemen Data ............................................................... 32 4.3.1 Diagram Conceptual Design..................................................................... 32 4.3.2 Physical Database Design ......................................................................... 32 4.4 Desain Manajemen Model ............................................................................. 35 4.5 Desain Subsistem Manajemen Dialog ............................................................ 37 4.5.1 Antarmuka Pengguna ............................................................................. 38 4.6 Perancangan Sistem ....................................................................................... 43 4.6.1 Diagram Kelas......................................................................................... 43 BAB V..................................................................................................................... 45 IMPLEMENTASI DAN ANALISA HASIL ............................................................ 45 5.1 Implementsi .................................................................................................. 45 5.1.1 Implementasi GUI ................................................................................... 45 5.1.2
Implementasi Sistem ......................................................................... 52
5.2 Pengujian....................................................................................................... 55
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5.2.1 Kompleksitas Algoritma .......................................................................... 55 5.2.2 5.3
Pengujian Sistem............................................................................... 56
Kelebihan dan Kekurangan Sistem .......................................................... 67
5.3.1
Kelebihan Sistem .............................................................................. 67
5.3.2
Kekurangan Sistem ........................................................................... 67
BAB VI ................................................................................................................... 68 PENUTUP .............................................................................................................. 68 6.1
Kesimpulan .............................................................................................. 68
6.2 Saran ........................................................................................................... 68 DAFTAR PUSTAKA .............................................................................................. 69 LAMPIRAN............................................................................................................ 70 DIAGRAM SQUENCE ....................................................................................... 70 Tambah Golongan Pos..................................................................................... 70 Update Golongan Pos ...................................................................................... 70 Hapus Golongan Pos........................................................................................ 71 Tambah Jenis Pos ............................................................................................ 71 Update Jenis Pos .............................................................................................. 71 Hapus Jenis Pos ............................................................................................... 72 Tambah Data RAB .......................................................................................... 72 Update Data RAB ............................................................................................ 73 Hapus Data RAB ............................................................................................. 73 Tambah Data Pos ............................................................................................ 74 Update Data Pos ............................................................................................... 74 Hapus Data Pos ............................................................................................... 75 Tambah Data Prioritas Barang ....................................................................... 75 Update Data Prioritas Barang .......................................................................... 76 Hapus Data Prioritas Barang .......................................................................... 76 Insert File Excel ............................................................................................... 77 Knapsack.......................................................................................................... 77 DIAGRAM AKTIVITAS .................................................................................... 78 Input Excel....................................................................................................... 78 Tambah Golongan Pos..................................................................................... 78 Update Golongan Pos ....................................................................................... 79
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Hapus Golongan Pos........................................................................................ 79 Tambah Jenis Pos ............................................................................................ 80 Update Jenis Pos .............................................................................................. 80 Hapus Jenis Pos ............................................................................................... 81 Tambah Data RAB .......................................................................................... 81 Update Data RAB ............................................................................................ 82 Hapus Data RAB ............................................................................................. 83 Tambah Data Prioritas Barang ....................................................................... 84 Update Data Prioritas Barang .......................................................................... 84 Hapus Data Prioritas Barang .......................................................................... 85 Tambah Data Pos ............................................................................................ 85 Update Data Pos ............................................................................................... 86 Hapus Data Pos ............................................................................................... 87 Knapsack.......................................................................................................... 88
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL
Tabel 2.0.1 Penghitungan Knapsack menggunakan Greedy ...................................... 14 Tabel 4.0.1 Analisis Masalah.......................................................................................... 20 Tabel 4.0.2 Komponen Use Case.................................................................................... 22 Tabel 3 Skenario Import file xlxs .................................................................................. 24 Tabel 4 Skenario Tambah Data RAB ........................................................................... 25 Tabel 5 Skenario Update DataRAB .............................................................................. 25 Tabel 6 Skenario Hapus DataRAB ................................................................................ 25 Tabel 7 Skenario Tambah Data Prioritas Barang ....................................................... 26 Tabel 8 Skenario Update Data Prioritas Barang ......................................................... 26 Tabel 9 Skenario Hapus Data Prioritas Barang .......................................................... 27 Tabel 10 Skenario Tambah Golongan Pos ................................................................... 27 Tabel 11 Skenario Update Golongan Pos ..................................................................... 28 Tabel 12 Skenario Hapus Golongan Pos ....................................................................... 28 Tabel 13 Skenario Tambah Jenis Pos ........................................................................... 28 Tabel 14 Skenario Update Jenis Pos ............................................................................. 29 Tabel 15 Skenario Hapus Jenis Pos ............................................................................... 29 Tabel 16 Skenario Tambah Data Pos ............................................................................ 30 Tabel 17 Skenario Update Data Pos .............................................................................. 30 Tabel 18 Skenario Hapus Data Pos ............................................................................... 31 Tabel 19 Knapsack.......................................................................................................... 31 Tabel 20 Data Pos............................................................................................................ 33 Tabel 21 Data RAB ......................................................................................................... 33 Tabel 22 Golongan Pos ................................................................................................... 34 Tabel 23 Jenis Pos ........................................................................................................... 34 Tabel 24 Kata Kunci ....................................................................................................... 35 Tabel 25 Penghitungan Knapsack 1 .............................................................................. 35 Tabel 26 Penghitungan Knapsack 2 .............................................................................. 36 Tabel 27 Penghitungan Knapsack 3 .............................................................................. 36 Tabel 28 Perhitungan jumlah operasi sistem algoritma .............................................. 55
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR
Gambar 2.0.1.4 Arsitektur Sistem Pengambil Keputusan .......................................... 10 Gambar 0.1 Use Case ...................................................................................................... 24 Gambar 4.0.3 Diagram Conceptual Design .................................................................. 32 Gambar 4.0.4 Physical Database Design ....................................................................... 32 Gambar 4.0.5 Flowchart Algoritma Knapsack ............................................................ 37 Gambar 4.0.6 Menu Home ............................................................................................. 38 Gambar 4.0.7 Menu Import Excel ................................................................................. 38 Gambar 4.0.8 Menu Golongan Pos................................................................................ 39 Gambar 4.0.9 Menu Jenis Pos........................................................................................ 39 Gambar 4.0.10 Menu Data RAB.................................................................................... 40 Gambar 4.0.11 Menu Data Pos ...................................................................................... 40 Gambar 4.0.12 Menu Data Prioritas Barang ............................................................... 41 Gambar 4.0.13 Menu Knapsack .................................................................................... 41 Gambar 4.0.14 Data Tidak Optimal.............................................................................. 42 Gambar 4.0.15 Diagram Kelas 1.................................................................................... 43 Gambar 4.0.16 Diagram Kelas 2.................................................................................... 44 Gambar 5.0.1 Implementasi Tampilan Home .............................................................. 45 Gambar 5.0.2 Implementasi Import File Excel ............................................................ 46 Gambar 5.0.3 Implementasi Windows Explorer.......................................................... 46 Gambar 5.0.4 Implementasi Data RAB ........................................................................ 47 Gambar 5.0.5 Implementasi Data Pos........................................................................... 48 Gambar 5.0.6 Implemetasi Data Prioritas Barang Knapsack .................................... 49 Gambar 5.0.7 Implementasi Golongan Pos .................................................................. 50 Gambar 5.0.8 Implementasi Jenis Pos .......................................................................... 51 Gambar 5.0.9 Implementasi Knapsack ......................................................................... 52 Gambar 5.0.10 Pengujian Bobot Barang Default ........................................................ 56 Gambar 5.0.11 Hasil Penghitungan Sistem 1 ............................................................... 57 Gambar 5.0.12 Penghitungan Manual 1 ....................................................................... 59 Gambar 5.0.13 Penghitungan Manual 2 ....................................................................... 60 Gambar 5.0.14 Penghitungan Manual 3 ....................................................................... 60 Gambar 5.0.15 Penghitungan Manual 4 ....................................................................... 61 Gambar 5.0.16 Penghitungan Manual 5 ....................................................................... 61 Gambar 5.0.17 Pengujian Bobot Barang Masukkan Pengguna ................................. 62 Gambar 5.0.18 Penghitungan Sistem 2 ......................................................................... 62 Gambar 5.0.19 Penghitungan Manual 6 ....................................................................... 64 Gambar 5.0.20 Penghitungan Manual 7 ....................................................................... 65 Gambar 5.0.21 Penghitungan Manual 8 ....................................................................... 65 Gambar 5.0.22 Penghitungan Manual 9 ....................................................................... 66 Gambar 5.0.23 Penghitungan Manual 10 ..................................................................... 66 Gambar 5.0.24 Penghitungan Manual 11 ..................................................................... 66 Gambar 7.0.1 Diagram Squence Tambah Golongan Pos ............................................ 70 Gambar 7.0.2 Diagram Squence Update Golongan Pos .............................................. 70 Gambar 7.0.3 Diagram Squence Hapus Golongan Pos ............................................... 71
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 7.0.4 Diagram Squence Tambah Jenis Pos .................................................... 71 Gambar 7.0.5 Diagram Squence Update Jenis Pos ...................................................... 71 Gambar 7.0.6 Diagram Squence Hapus Jenis Pos ....................................................... 72 Gambar 7.0.7 Diagram Squence Tambah Data RAB .................................................. 72 Gambar 7.0.8 Diagram Squence update Data RAB..................................................... 73 Gambar 7.0.9 Diagram Squence Hapus Data RAB ..................................................... 73 Gambar 7.0.10 Diagram Squence Tambah Data Pos .................................................. 74 Gambar 7.0.11 Diagram Squence Update Data Pos .................................................... 74 Gambar 7.0.12 Diagram Squence Hapus Data Pos ...................................................... 75 Gambar 7.0.13 Diagram Squence Tambah Data Prioritas Barang............................ 75 Gambar 7.0.14 Diagram Squence Update Data Prioritas Barang.............................. 76 Gambar 7.0.15 Diagram Squence Hapus Data Prioritas Barang ............................... 76 Gambar 7.0.16 Diagram Squence Insert File Excel ..................................................... 77 Gambar 7.0.17 Diagram Squence Knpasack ............................................................... 77 Gambar 7.0.18 Diagram Input Excel ............................................................................ 78 Gambar 7.0.19 Diagram Tambah Golongan Pos ......................................................... 78 Gambar 7.0.20 Diagram Update Golongan Pos ........................................................... 79 Gambar 7.0.21 Diagram Hapus Golongan Pos ............................................................ 79 Gambar 7.0.22 Diagram Tambah Jenis Pos ................................................................. 80 Gambar 7.0.23 Diagram Update Jenis Pos ................................................................... 80 Gambar 7.0.24 Diagram Hapus Jenis Pos .................................................................... 81 Gambar 7.0.25 Diagram Tambah Data RAB ............................................................... 81 Gambar 7.0.26 Diagram Update Data RAB ................................................................. 82 Gambar 7.0.27 Diagram Hapus Data RAB .................................................................. 83 Gambar 7.0.28 Diagram Tambah Data Prioritas Barang ........................................... 84 Gambar 7.0.29 Diagram Update Data Prioritas Barang ............................................. 84 Gambar 7.0.30 Diagram Hapus Data Prioritas Barang .............................................. 85 Gambar 7.0.31 Diagram Tambah Data Pos ................................................................. 85 Gambar 7.0.32 Diagram Update Data Pos ................................................................... 86 Gambar 7.0.33 Diagram Hapus Data Pos ..................................................................... 87 Gambar 7.0.34 Diagram Knapsack ............................................................................... 88
xviii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN
1.1 Latar Belakang Penyusun anggaran pada umumnya akan memasukkan biaya yang menurut mereka penting untuk dimasukkan kedalam proses penganggaran tersebut. Dari sekian banyak hal yang ditemukan dalam penyusunan anggaran banyak dijumpai permasalahan dalam penyusunan anggaran tersebut. Dalam Rancangan Rencana Anggaran Pendapatan dan Belanja akan melalui beberapa proses. Proses tersebut adalah rencana pengajuan, anggaran telah disetujui dan anggaran yang direalisasikan. Dalam rencana pengajuan pada umumnya tidak ditemukan masalah yang terlalu rumit. Masalah yang terdapat pada rencana pengajuan umumnya berkaitan dengan kebutuhan barang atau item yang terdapat pada rencana anggaran tersebut. Penganggar anggaran akan memasukkan barang yang menurutnya penting dan segera harus didanai. Pada umumnya masalah akan muncul setelah rencana anggaran tersebut diajukan kepada pihak yang mendanai anggaran tersebut. Seringkali tidak semua anggaran yang diajukan akan disetujui oleh pihak pendana. Pihak pemberi dana pasti akan memberikan batas maksimal untuk membatasi anggaran yang telah diajukan tersebut. Masalah umum yang kerap terjadi dana anggaran yang telah diajukan mengalami pemotongan dari pihak memberi dana. Dari hal tersebut masalah akan bertambah lagi jika semua barang yang dianggap penting oleh penganggar harus masuk kedalam anggaran. Seringkali akibat dari pemotongan dana anggaran, fungsi dari anggaran yang semula menjadi tidak optimal karena keterbatasan data yang disetujui. Masalah lain saat anggaran tersebut telah disetujui dan ditetapkan adalah anggaran yang direalisasikan. Anggaran realisasi pasti akan dilaporankan kembali kepada pihak pemberi dana untuk laporan pertanggungjawaban atas dana yang telah digunakan.
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2
Untuk mengatasi beberapa masalah yang terjadi dalam persoalan anggaran tersebut terdapat cara yang dapat digunakan untuk mengatasinya. Cara tersebut salah satunya dengan mengganti jumlah item yang dapat dikurangkan agar barang tersebut dapat dibeli tetapi jumlah banyak dikurangi. Selain itu item pada anggaran dapat dihilangkan dan atau diganti dengan item yang lebih penting atau lebih diprioritaskan. Dalam dunia teknologi terdapat pula solusi yang dapat digunakan dalam mengatasi masalah tersebut. Salah satu algoritma dalam teknologi yang dapat dipakai untuk menangani masalah tersebut dengan knapsack. Knapsack dapat digunakan untuk mengoptimalkan anggaran yang telah disetujui agar semua prioritas yang penting dapat diatasi dengan biaya yang terbatas.
1.2 Rumusan Masalah Berdasarkan latar belakang diatas maka dapat dibuat beberapa rumusan masalah antara lain : 1. Bagaimana memperoleh hasil optimal dengan batas maksimal anggaran? 2. Bagaimana cara memperoleh hasil optimal suatu anggaran dengan metode knapsack? 3. Bagaimana membantu pengguna untuk menentukan prioritas anggaran dengan cepat?
1.3 Tujuan Tujuan dari tugas akhir ini adalah membantu pengguna dalam mengolah anggaran dengan memberikan hasil optimal menggunakan metode knapsack.
1.4 Batasan Masalah Batasan masalah dalam penelitian ini adalah sebagai berikut: 1. File hasil optimasi hanya berupa file teks berformat .xlxs 2. File import data hanya berupa file excel berformat .xlxs 3. File bisa di proses harus sesuai format. 4. Nama item anggaran tidak bisa dituliskan lebih dari 1 kali.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 3
1.5 Metodologi Penelitian Metode pengembangan perangakat lunak dengan metode Waterfall : a. Pengumpulan Data Tahapan ini digunakan untuk mengumpulkan data anggaran yang ada di lab untuk melakukan analisis perancangan sistem. b. Analisis Sistem Tahapan ini digunakan untuk menganalisa proses bisnis yang ada dalam suatu anggaran serta fungsi yang akan digunakan dalam sistem beserta user interface program. c. Perancangan Perangkat Lunak Tahapan ini memusatkan pada karakteristik dan user interface dan prosedur atau fungsi secara mendetail. d. Implementasi Tahapan ini merubah semua rancangan ke dalam program. e. Pengujian Sistem Tahapan ini merupakan pengujian atau analisa sejauh mana program yang telah dibangun dapat memenuhi kebutuhan user atau pengguna.
1.6 Sistematika Penulisan Dokumen tugas akhir ini akan memuat 6 bab, yaitu: 1. BAB I
Pendahuluan
Bab ini berisi tentang latar belakang, rumusan masalah, batasan masalah, tujuan, metodologi dan sistematika penulisan. 2. BAB II
Landasan Teori
Dalam bab ini akan dijelaskan mengenai pengetahuan yang menjadi dasar teori
untuk
mengimplementasikan
Knapsack
Problems
dengan
penyelesaian Greedy 3. BAB III
Metodologi Penelitian
Bab ini berisi metodologi penelitian yang akan digunakan pada penelitian yang terdiri dari rumusan masalah yang diselesaikan, metodologi penelitian yang akan digunakan, tahap perencanaan, pengumpulan data,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 4
survei awal, data, studi literatur, pengembangan sistem, dan metode pengembangan sistem. 4. BAB IV
Analisa Dan Perancangan
Bab ini berisi tentang penjelasan mengenai proses implementasi program sesuai dengan analisa dan perencanaan yang telah dibut. Dalam bab ini juga menjelaskan hasil analisa sistem yang telah dibuat. 5. BAB V
Implementasi Dan Analisa Hasil
Bab ini memuat implementasi metode dan hasil implementasi dari algoritma yang digunakan, yaitu algoritma Knapsack dengan penyelesaian Greedy. 6. BAB VI
Penutup
Bab ini berisi penjelasan tentang kelebihan dan kekurangan sistem, kesimpilan dan saran.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II LANDASAN TEORI
2.1 Sistem Pendukung Pengambilan Keputusan (SPPK) Pengambilan keputusan merupakan hasil suatu proses pemilihan dari berbagai alternatif tindakan yang mungkin dipilih dengan mekanisme tertentu, dengan tujuan untuk menghasilkan keputusan yang terbaik. Dimana proses keputusan secara bertahap, sistematik, konsisten, dan dalam setiap langkah sejak awal telah mengikutsertakan semua pihak, akan memberikan hasil yang baik (Suryadi, 1998).
2.1.1 Tujuan SPPK Menurut Turban (2005) Tujuan dari Sistem Pendukung Keputusan adalah: 1.
Membantu manajer dalam pengambilan keputusan atas masalah semi-terstruktur.
2.
Memberikan dukungan atas pertimbangan manajer bukan untuk menggantikan fungsi manajer.
3.
Meningkatkan efektivitas keputusan yang diambil manajer lebih dari pada perbaikan efisiensinya.
4.
Kecepatan komputasi. Komputer memungkinkan para pengambil keputusan untuk melakukan banyak komputasi secara cepat dengan biaya yang rendah.
5.
Peningkatan produktivitas. Membangun satu kelompok pengambil keputusan, terutama para pakar. Pendukung terkomputerisasi bisa mengurangi ukuran kelompok dan memungkinkan para anggotanya untuk berada di berbagai lokasi yang berbeda-beda (menghemat biaya perjalanan). Selain itu, produktivitas staff pendukung (misalnya analis keuangan dan hukum) bisa ditingkatkan. Produktivitas juga bisa ditingkatkan menggunakan peralatan 5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 6
optimalisasi yang menentukan cara terbaik untuk menjalankan sebuah bisnis. 6. Dukungan kualitas. Komputer bisa meningkatkan kualitas keputusan yang dibuat. Sebagai contoh, semakin banyak data yang diakses, makin banyak juga alternatif yang bisa dievaluasi. Analisis risiko bisa dilakukan dengan cepat dari para pakar (beberapa dari mereka berada di lokasi yang jauh) bisa di kumpulkan dengan cepat dan dengan biaya lebih rendah. Keahlian bahkan bisa diambil langsung dari sebuah sistem komputer melalui metode kecerdasan tiruan. Dengan komputer, para pengambil keputusan bisa melakukan simulasi yang kompleks, memeriksa banyak skenario yang memungkinkan, dan menilai berbagai pengaruh secara cepat dan ekonomis. Semua kapabilitas tersebut mengarah kepada keputusan yang lebih baik. 7. Berdaya saing. Manajemen dan pemberdayaan sumber daya perusahaan. Tekanan persaingan menyebapkan tugas pengambilan keputusan menjadi sulit. Persaingan didasarkan tidak hanya pada harga, tetapi juga pada kualitas, kecepatan, kustomasi produk, dan dukungan pelanggan. Organisasi harus mampu secara sering dan cepat mengubah mode operasi, merekayasa ulang proses dan struktur, memberdayakan karyawan, serta berinovasi. Teknologi pengambilan keputusan bisa menciptakan pemberdayaan yang signifikan dengan cara memperbolehkan seseorang untuk membuat keputusan yang baik secara cepat, bahkan jika mereka memiliki pengetahuan yang kurang. 8. Mengatasi
keterbatasan
kognitif
dalam
pemrosesan
dan
penyimpanan.
2.1.2 Struktur Keputusan Sistem Pengambil Keputusan dapat menyelesaikan masalah dilihat dari keterstrukturannya dibagi menjadi:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 7
1. Keputusan terstruktur (structured decision). Keputusan terstruktur adalah keputusan yang dilakukan secara berulang-ulang dan bersifat rutin. Prosedur pengambilan keputusan sangatlah jelas. Keputusan tersebut terutama dilakukan pada manajemen tingkat bawah. 2. Keputusan semiterstruktur (semistructured decision). Keputusan semiterstruktur adalah keputusan yang memiliki dua sifat. Sebagian keputusan bisa ditangani oleh komputer dan yang lain tetap harus dilakukan oleh pengambil keputusan. Prosedur dalam pengambilan keputusan tersebut secara garis besar sudah ada, tetapi ada beberapa hal yang masih memerlukan kebijakan dari pengambil keputusan. Biasanya keputusan seperti ini diambil oleh manajer level menengah dalam suatu organisasi. 3. Keputusan tak terstruktur (unstructured decision). Keputusan tak terstruktur adalah keputusan yang penanganannya rumit karena tidak terjadi berulang-ulang atau tidak selalu terjadi. Keputusan tersebut menuntut pengalaman dan berbagai sumber yang bersifat eksternal. Keputusan tersebut umumnya terjadi pada manajemen tingkat atas. 2.1.3 Karateristik Sistem Pendukung Pengambil Keputusan Terdapat 14 karateristik dalam Sistem Pengambil Keputusan (Turban, E.,2005) diantaranya yaitu: 1. Dukungan kepada pengambil keputusan, terutama pada situasi semiterstruktur dan tak terstruktur, dengan menyertakan penilaian manusia dan informasi terkomputerisasi. 2. Dukungan untuk semua level manajerial, dari eksekutif sampai manajer lini. 3. Dukungan untuk individu dan kelompok. Masalah yang kurang terstruktur sering memerlukan keterlibatan individu dari departement
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 8
dan tingkat organisasional yang berbeda atau bahkan dari organisasi lain. 4. Dukungan untuk keputusan independen atau sekuensial. Keputusan bisa dibuat satu kali, atau berulang (dalam interval yang sama). 5. Dukungan disemua fase proses pengambilan keputusan: inteligensi, desain, pilihan, dan implementasi. 6. Dukungan diberbagai proses dan gaya pengambilan keputusan. 7. Adaptivitas sepanjang waktu. Pengambilan keputusan harusnya reaktif, bisa menghadapi perubahan kondisi secara cepat, dan mengadaptasi sistem pengambil keputusan untuk memenuhi perubahan tersebut. Sistem pengambil keputusan bersifat fleksibel. Oleh karena itu, pengguna bisa menambahkan, menghapus, menggabungkan, mengubah, atau menyusun kembali elemen-elemen dasar. 8. Pengguna merasa seperti dirumah. Ramah-pengguna, kapabilitas grafis yang sangat kuat, dan antarmuka manusia-mesin yang interaktif dengan satu bahasa alami bisa sangat meningkatkan efektivitas sistem pengambil keputusan. 9. Peningkatan efektifitas pengambilan keputusan (akurasi, timelines, kualitas) ketimbang efisiensinya (biaya pengambilan keputusan). Ketika sistem pengambil keputusan disebarkan, pengambil keputusan sering membutuhkan waktu lebih lama, tetapi hasilnya lebih baik. 10. Kontrol penuh oleh pengambil keputusan terhadap semua langkah proses pengambil keputusan dan memecahkan suatu masalah. Sistem pengambil keputusan secara khusus menekankan untuk mendukung pengambilan keputusan, bukan menggantikannya. 11. Pengguna akhir bisa mengembangkan dan memodifikasi sendiri sistem sederhana. Sistem yang lebih besar bisa dibangun dengan bantuan ahli sistem informasi. 12. Biasanya, model-model digunakan untuk menganalisis situasi pengambilan keputusan. Kapabilitas pemodelan memungkinkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 9
eksperimen dengan berbagai strategi yang berbeda di bawah konfigurasi yang berbeda. 13. Akses disediakan untuk berbagai sumber data, format dan tipe, mulai dari sistem informasi geografis sampai sistem, berorientasi-objek. Dapat digunakan sebagai alat standalone oleh seorang pengambil keputusan pada satu lokasi atau didistribusikan disuatu organisasi. Secara keseluruhan dan dibeberapa organisasi sepanjang persediaan. Dapat diintegrasikan secara dengan sistem pengambil keputusan lain atau aplikasi lain, serta bisa didistribusikan secara internal dan eksternal menggunakan networking dan teknologi web.
2.1.4 Arsitektur Sistem Pendukung Pengambil Keputusan Aplikasi sistem pendukung keputusan bisa terdiri dari beberapa subsistem, diantaranya yaitu: 1. Subsistem manajemen data Subsistem manajemen data memasukkan satu database yang berisi data yang relevan untuk suatu situasi dan dikelola oleh perangkat lunak yang disebut sistem manajemen database (DBMS/Data Base Management System). 2. Subsistem manajemen model Merupakan paket perangkat lunak yang memasukkan model kuantitatif lain yang memberikan kapabilitas analitik dan manajemen perangkat lunak yang tepat. Perangkat lunak disebut manajemen basis model (MBMS). 3. Subsistem antarmuka pengguna Pengguna berkomunikasi dengan sistem pendukung keputusan melalui subsistem tersebut. Pengguna adalah bagian yang dipertimbangkan dari sistem. 4. Subsistem manajemen berbasis-pengetahuan Subsistem tersebut mendukung semua subsistem lain atau bertindak langsung sebagai suatu komponen independen dan bersifat opsional.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 10
Berikut merupakan gambar arsitektur dari sistem pengambil keputusan.
Gambar 2.0.1.4 Arsitektur Sistem Pengambil Keputusan 2.1.5 Langkah – langkah Pemodelan dalam Sistem Pengambil Keputusan 1. Studi kelayakan (Intelligence). Pada langkah ini, sasaran ditentukan dan dilakukan pencarian prosedur, pengumpulan data, identifikasi masalah, identifikasi kepemilikan masalah, hingga akhirnya terbentuk sebuah pernyataan masalah. Kepemilikan masalah berkaitan dengan bagian apa yang akan dibangun oleh DSS dan apa tugas dari bagian tersebut sehingga model tersebut bisa relevan dengan kebutuhan pemilik pemasalah. 2. Perancangan (Design) Pada tahap ini akan diformulasikan model yang akan digunakan dan kriteria-kriteria yang ditentukan. Setelah itu, dicari alternatif model yang bisa menyelesaikan permasalahan tersebut. Langkah selanjutnya adalah memprediksi keluaran yang mungkin. Kemudian, ditentukan variabel-variabel model. 3. Pemilihan (Choice). Setelah pada tahap design ditentukan berbagai alternatif model beserta variabel-variabelnya, pada tahap ini akan dilakukan pemilihan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 11
modelnya, termasuk solusi dari model tersebut. Selanjutnya, dilakukan analisis sensitivitas, yakni dengan mengganti beberapa variabel. 4. Membuat Sistem Pengambil Keputusan. Setelah
menentukan
modelnya,
berikutnya
adalah
mengimplementasikan-nya dalam aplikasi DSS.
2.2 Knapsack Problem Knapsack adalah tas atau karung yang digunakan untuk memasukkan sesuatu. Tetapi tidak semua barang dapat ditampung kedalam karung tersebut. Karung tersebut hanya dapat menyimpan beberapa objek dengan total ukurannya lebih kecil atau sama dengan ukuran kapasitas karung. Knapsack problem merupakan masalah dimana orang dihadapkan pada persoalan optimasi pada pemilihan benda yang dapat dimasukkan ke dalam sebuah wadah yang memiliki keterbatasan ruang atau daya tampung. Dengan adanya optimasi dalam menghasilkan keuntungan yang maksimum. Bendabenda yang akan dimasukkan ini masing-masing memiliki berat dan sebuah nilai yang digunakan untuk menentukan prioritasnya dalam pemilihan tersebut. Nilainya dapat berupa tingkat kepentingan, harga barang, nilai sejarah, atau yang lainnya. Wadah yang dimaksud disini juga memiliki nilai konstanta yang merupakan nilai pembatas untuk benda-benda yang akan dimasukkan kedalam wadah tersebut sehingga harus diambil sebuah cara memasukkan benda-benda tersebut kedalam wadah sehingga menghasilkan hasil yang optimum tetapi tidak melebihi kemampuan wadah untuk menampungnya. Jenis –jenis knapsack problem :
0/1 Knapsack Problem Setiap barang hanya tersedia 1 unit, take it or leave it.
Fractional Knapsack Problem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 12
Barang boleh dibawa sebagian saja. Versi problem ini menjadi masuk akal apabila barang yang tersedia dapat dibagi-bagi. Sebagai contoh : gula, tepung, garam, dan sebagainya.
Bounded Knapsack Problem Setiap barang tersedia sebanyak N unit (jumlahnya terbatas).
Unbounded Knapsack Problem Setiap barang tersedia lebih dari 1 unit, jumlahnya tidak terbatas.
2.2.1. Knapsack Interger 0/1 Didalam persoalan ini terdapat n buah berat (Wi) dan n buah nilai benda (Pi) serta sebuah nilai M yang merupakan kapasitas knapsack. Dalam memilih sebuah subset dari berat benda tersebut, ditentukan nilai maksimal = ∑𝑛𝑖=1 Pi Xi dengan batasan ∑𝑛𝑖=1 Wi Xi ≤ M ,
(2.1)
dan nilai maksimum dengan z bernilai vektor zero-one. Ruang solusi ini terdiri dari dua permasalahan, menentukan secara jelas pada nilai 0 dan 1 pada nilai x. Jadi pada ruang solusi ini sama seperti pada penjumlahan permasalahan subset.
2.3 Greedy Pada penyelesaian Knapsack Problem terdapat tiga jenis algoritma Greedy yang dapat digunakan yaitu: A. Greedy By Weight Pada setiap langkah pilih objek yang mempunyai berat teringan. Mencoba memaksimumkan keuntungan dengan memasukkan sebanyak mungkin objek kedalam knapsack. Pertama kali yang dilakukan adalah program mengurutkan secara menaik objek-objek berdasarkan weight-nya. Kemudian baru diambil satu-persatu objek yang dapat ditampung oleh knapsack sampai knapsack penuh atau sudah idak ada objek lagi yang bisa dimasukkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 13
B. Greedy By Profit Pada setiap langkah, pilih objek yang mempunyai keuntungan terbesar. Mencoba memaksimumkan keuntungan dengan memilih objek yang paling menguntungkan terlebih dahulu. Pertama kali yang dilakukan adalah program mengurutkan secara menurun objek-objek berdasarkan profit-nya. Kemudian baru diambil satu-persatu objek yang dapat ditampung oleh knapsack sampai knapsack penuh atau sudah tidak ada objek lagi uang bisa dimasukkan. C. Greedy By Density Pada setiap langkah knapsack di isi dengan objek yang mempunyai p1/w1 terbesar, dimana p adalah keuntungan dan w adalah berat barang. Mencoba memaksimumkan keuntungan dengan memilih objek yang mempunyai density per unit berat terbesar. Pertama kali yang dilakukan adalah program mencari nilai profit per berat tiap-tiap unit (density) dari tiap-tiap objek. Kemudian objek-objek tersebut diurutkan berdasarkan density-nya. Kemudian baru diambil satu-persatu objek yang dapat ditampung oleh knapsack sampai knapsack penuh atau tidak ada objek lagi yang bisa dimasukkan.
2.3.1. Penyelesaian Dengan Kriteria Greedy Kriteria Greedy merupakan salah satu metode untuk mendapatkan solusi optimal. Dengan metode ini solusi optimal bisa diperoleh dengan cepat, efisien, dan efektif. Konsep dari kriteria greedy adalah :
Pilih objek dengan nilai Pi maksimal atau objek dengan ukuran terbesar.
Pilih objek dengan berat Wi yang minimal terlebih dahulu.
Pilih objek dengan nilai rasio berat (Pi/Wi) yang terbesar. Dalam metede Greedy hanya dibutuhkan tiga kemungkinan dari
sekian banyak solusi feasible yang mungkin. Dengan demikian perhitungan yang dilakukan tidak terlalu banyak dan tidak perlu waktu lama dalam mendapatkan nilai profit maksimal dari objek yang akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 14
dimuat dalam knapsack. Kelemahan pada metode ini adalah jika jumlah objek atau barang yang akan dimuat lebih dari tiga, maka akan ditemui banyak perhitungan untuk beberapa solusi feasible dan memmerlukan waktu relatif lama. Tinjauan persoalan Integer Knapsack dengan n = 3. Misalkan objek-objek tersebut kita beri nomor 1, 2, 3. Setiap objek i dan kapasitas knapsack adalah sebagai berikut : w1 = 4;
p1 = 10
w2 = 6;
p2 = 20
w3 = 5;
p3 = 30
kapasitas Knapsack W = 10 Maka tabel solusi dengan menggunakan algoritma greedy adalah sebagai berikut : Tabel 2.0.1 Penghitungan Knapsack menggunakan Greedy Properti Objek
Greedy by
Solusi
i
wi
pi
wi/pi
Weight
Profit
Density
Optimal
1
4
10
2,5
1
0
0
1
2
6
20
3,3
0
1
1
0
3
5
30
6
1
1
1
1
Total Bobot
9
11
11
9
Total Keuntungan
40
50
50
40
Dari tabel diatas objek yang akan dimasukkan kedalam knapsack adalah objek no 1 dan no 3, sedangkan objek no 2 tidak dimasukkan kedalam knapsack.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB III METODOLOGI PENELITIAN
Bab ini berisi bagaimana cara pengambilan data untuk penelitian. Cara pengambilan data dapat dilakukan dengan berbagai langkah seperti yang akan dijelaskan dibawah ini.
3.1 Rumusan Masalah Rumusan masalah dalam penelitan ini adalah bagaimana membangun SPPK untuk membantu pengguna dalam optimasi anggaran sesuai dengan kebutuhan dan tidak melebihi maksimal anggaran menggunakan algoritma knapsack problems dengan penyelesaian greedy. Untuk menjawab masalah tersebut maka metode penelitan yang akan digunakan dalam penelitan ini terdiri dari : 1. Tahap Perencanaan 2. Pengumpulan Data 3. Studi Literatur 4. Pengembangan Sistem
3.1.1 Tahap Perencanaan Pada tahap ini dilakukan penentuan tujuan dibangunnya Sistem Pendukung Pengambilan Keputusan. Langkah ini merupakan langkah awal yang sangat penting, karena akan menentukan pemilihan jenis Sistem Pendukung Pengambilan Keputusan yang akan dirancang serta metode pendekatan yang akan dipergunakan dalam penelitian ini. Proses yang akan dilakukan yaitu mempelajari kebutuhan sistem yang akan digunakan dalam penelitian dan kriteria apa saja yang digunakan untuk proses pendukung keputusan. Setelah proses perencanaan dilakukan maka akan dilakukan proses pembuatan sistem.
15
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 16
3.1.2 Pengumpulan Data Metode pengumpulan data yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut : 3.1.2.1 Survei Awal Dilakukan
wawancara
dengan
menemui
Kepala
Laboratorium Komputer Dasar Kampus 3 Universitas Sanata Dharma Yogyakarta berkaitan dengan proses dan prosedur yang menjadi pertimbangan dalam pengambilan keputusan pengolahan anggaran yang selama ini telah diterapkan. 3.1.2.2 Sumber Data Data yang digunakan pada penelitian ini diperoleh dari Kepala Laboratorium Komputer Dasar Kampus 3 Universitas Sanata Dharma Yogyakarta. Data yang diperoleh merupakan data asli dari anggaran Laboratorium Komputer Dasar Kampus 3 Universitas Sanata Dharma Yogyakarta. 3.1.2.3 Studi Literatur Mempelajari
teori
Sistem
Pendukung
Pengambilan
Keputusan dan metode Knapsack dengan penyelesaian Greedy dalam pembuatan SPPK untuk optimasi anggaran. Sumber literatur berupa buku teks, situs-situs penunjang, dan karya ilmiah.
3.2 Pengembangan Sistem 3.2.1 Metode Pengembangan Sistem Pembangunan sistem untuk SPPK Optimasi Anggaran dilakukan menggunakan metode FAST (Framework for the Applications of Systems Thingking). Terdapat 6 tahapan dalam metode FAST (Whitten, 2001), yaitu: a) Scope definition (definisi ruang lingkup) dalam proses scope definition terdapat pernyataan masalah seputar ruang lingkup sesuai dengan sistem yang dianalisis. Tahap ini meliputi tahap: gambaran
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 17
sistem yang ada saat ini dan problem statement yang didefinisikan dalam PIECES (Performance, Information, Economic, Control Problem, Efficiency, Service). b) Problem Analysis, pada tahap ini yaitu menganalisa masalah yang ada pada saat ini. Oleh sebab itu, dari hasil analisa tersebut diketahui layak apa tidaknya sistem baru dibangun. Tahap ini meliputi tahap: PIECES Cause Efect Analysis dan System Improvement Objective, serta gambaran sistem yang baru. c) Requirements Analysis, tahap ini merupakan tahap analisa kebutuhan sistem yang akan dibangun. Fase ini meliputi: use-case diagram, dan use-case narrative. d) Logical Design (analisis terstruktur), tahap ini merupakan tahap untuk menterjemahkan kebutuhan pengguna ke dalam sistem model dan desain. Fase ini meliputi: Diagram berjenjang, diagram konteks, DFD (Data Flow Diagram), dan desain data model. e) Physical Design and integration, tahap ini merupakan tahap menterjamahkan syarat kebutuhan sistem ke sebuah perancangan perangkat lunak yang dapat diperkirakan sesuai dengan rancangan yang telah ada. Hasil yang didapatkan dari fase ini yaitu design of spesification dan design of prototyping. f) Construction and Testing, tahap ini merupakan tahap untuk implementasi sistem sesuai dengan rancangan yang telah dibuat. Setelah itu, tahap testing dilakukan dengan memfokuskan pada logika internal dari perangkat lunak, fungsi eksternal, dan mencari segala kemungkinan
kesalahan.
Tujuan
testing
adalah
menemukan
kesalahan-kesalahan terhadap sistem tersebut dan kemudian bisa diperbaiki. Sedangkan pengujian, akan dilakukan dengan menguji sistem yang telah dibuat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 18
Uji coba sistem dilakukan dengan dua tahap yaitu : 1. Perbandingan perhitungan manual Excel dan perhitungan Sistem Perbandingan perhitungan manual Excel dan perhitungan sistem yaitu pengujian terhadap proses-proses dalam sistem yang dibuat untuk memastikan bahwa sistem sudah berjalan dengan baik. Uji coba proses yaitu dengan mencoba seluruh proses yang ada di dalam sistem apakah sudah berjalan dengan benar. Proses selanjutnya yaitu mencocokkan hasil perhitungan dengan metode Knapsack Problems menggunakan penyeselaian Greedy secara manual, dan kemudian mencocokan
hasil
perhitungan
metode
Knapsack
Problems
menggunakan penyeselaian Greedy sesuai dengan sistem yang telah dibuat. Hasil yang akan didapatkan yaitu berupa perhitungan secara manual yang harus sama dengan hasil perhitungan yang dihasilkan oleh sistem. 2. Pengujian oleh Kepala LKD Kampus 3 Universitas Sanata Dharma Yogyakarta Tahap Pengujian oleh Kepala LKD Kampus 3 Universitas Sanata Dharma Yogyakarta dilakukan dengan menguji sistem yang telah dibuat kepada pengguna untuk memastikan bahwa sistem sudah sesuai dengan kriteria kebutuhan pengguna dan sesuai dengan tujuan yang diharapkan. Proses pengujian dilakukan dengan meminta Kepala Laboran untuk mencoba sistem yang dibuat dengan metode Knapsack Problems menggunakan penyeselaian Greedy, untuk memastikan apakah sistem yang telah dibuat sesuai dengan sistem yang diinginkan pengguna, dan apakah sistem yang dibuat menggunakan metode Knapsack Problems dan menggunakan penyeselaian Greedy, dapat membantu pengguna dalam merekomendasikan optimasi anggaran.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB IV ANALISA DAN PERANCANGAN SISTEM
4.1 Analisa Sistem 4.1.1 Gambaran Umum Sistem Lama Pengolahan data anggaran belanja pada laboratorium masih menggunakan cara manual dengan Microsoft Excel. Data belanja tersebut
disimpan
berdasarkan
posnya
masing-masing.
User
memasukkan data, menambah, serta mengurangi barang secara manual menurut batas anggaran yang disetujui. Pada sistem lama ini pengguna mengajukan Rencana Anggaran Belanja (RAB) kepada bagian keuangan. Bagian keuangan akan membatasi maksimal dana yang akan dikeluarkan, jika RAB yang telah diajukan melebihi batas maksimal pengguna akan merevisi RAB-nya, dengan memotong atau menghapus data barang yang terdapat didalamnya. Pemotongan tersebut berdasarkan apa saja yang dibutuhkan di dalam labroraturium. Setelah direvisi, RAB tersebut diajukan kembali kepada bagian keuangan.
4.1.2 Fase Definisi Ruang Lingkup (Scope Definition Phase) Sistem anggaran yang dikelola dengan cara yang masih manual ini mengakibatkan berbagai kesulitan. Kesulitan-kesulitan tersebut seperti : Performance : proses pengambilan keputusan pemotongan dana untuk prioritas barang masih kurang cepat dan efektif, dikarenakan sistem yang dikelola saat ini masih manual. Control : belum ada kontrol dalam sistem, karena sistem yang ada saat ini masih dikelola dengan cara manual. Service : tidak adanya sistem yang membantu pengguna atau user dalam menentukan pemotongan dana agar hasil optimal.
19
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 20
4.1.3 Analisis Masalah (Problem analysis) 4.1.3.1 Analisis Sebab Akibat (Cause-effect analysis) Tabel 4.0.1 Analisis Masalah Analisis Penyebab dan Akibat Masalah
Tujuan Memperbaiki sistem
Sebab dan Akibat
Tujuan Sistem
Memperoleh
Penyebab :
Membantu
hasil optimal
pengelolaan data
pengguna
optimasi
dengan batas
dan pengambilan
dalam
hanya berupa
maksimal
keputusan
mengolah
file teks
anggaran dan
yang masih
anggaran
berformat
menentukan
manual
dengan
.xlxs
prioritas
memberikan
Batasan Sistem
1. File hasil
2. File import
anggaran
Akibat :
hasil yang
data hanya
membutuhkan
pemilihan
optimal
berupa file
waktu lama
prioritas barang
dengan
excel
serta melakukan
menggunakan
berformat
pemotongan
metode
.xlxs
anggaran terlalu
knapsack
3. File bisa di
lama dan belum
proses harus
tentu optimal
sesuai format. 4. Nama item anggaran tidak bisa dituliskan lebih dari 1 kali.
4.1.4 Gambaran Umum Sistem Yang Akan Dibuat Sistem baru yang akan dibuat diharapan dapat mempermudah kerja user dalam mengelola data anggaran. Sistem yang akan diirancang berbasis dekstop. Aplikasi ini dapat membaca file excel (.xlxs) dan dapat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 21
membuat secara manual. Keluaran dari aplikasi ini berupa file excel (.xlxs). File excel yang di-input-kan akan dipecah atau dibagi sesuai pos dan dimasukkan ke dalam database sesuai tabel pos masing-masing. Fungsi database disini hanya bersifat sementara dan untuk membantu proses optimasi saja. Database yang digunakan tidak bisa untuk menyimpan berbagai masukkan file excel. Setiap user meng-input-kan file excel secara otomatis, yang kemudian isi dalam tabel database akan dihapus dan digantikan oleh data yang baru saja diinputkan. Setelah itu, data excel yang masuk akan dicek apakah termasuk barang yang dianggap penting oleh pengguna atau tidak. Barang yang masuk akan diberi bobot secara otomatis untuk mengetahui prioritas barang tersebut. Bobot default berdasarkan urutan dalam tabel excel, tetapi pengguna bisa merubah bobot tersebut jika memang barang tersebut termasuk barang yang dianggap penting. 4.1.4.1 Optimasi Anggaran Sebelum melakukan optimasi anggaran, pengguna diminta memasukkan maksimal anggaran. Maksimal anggaran tersebut berfungsi sebagai pembatas anggaran yang disetujui dan sebagai patokan anggaran yang akan dioptimasi. Maksimal anggaran dapat di-input-kan oleh pengguna karena setiap tahun dan setiap laboratorium memiliki maksimal anggaran yang berbeda. Selain dapat meng-input-kan maksimal anggaran, pengguna juga dapat meng-input-kan, meng-edit, dan menghapus data yang telah masuk ke dalam sistem. Langkah kerja optimasi pada penelitian ini yaitu semua harga total dari semua pos dijumlahkan, lalu dibandingkan dengan maksimal anggaran. Jika total harga melebihi maksimal anggaran, maka sistem akan memotong atau menghapus barang yang tidak masuk dalam kategori penting, sesuai dengan bobot dari data barang-barang tersebut. Jika bobot besar maka barang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 22
tidak akan dihapus. Sistem ini dapat memotong jumlah barang yang dianggap penting jika kapasitas anggaran melebihi maksimal anggaran.
4.2 Analisis Kebutuhan (Requirement Analysis) 4.2.1 Use Case Diagram Use Case merupakan dokumen behavior sistem dari sudut pandang user, yang melibatkan dua elemen, yaitu sistem (dengan komponen dan deskripsinya) dan user (elemen eksternal) (Jacobson, 1991). Use case merupakan dokumen naratif yang mendeskripsikan rangkaian kegiatan yang ditampilkan aktor dalam menggunakan sistem. Diagram Use Case mengandung tiga komponen, yaitu : •
Use cases (komponen sistem) : unit fungsionalitas yang saling berkaitan.
•
Actors (user sistem) : segala sesuatu yang mengakses sistem, tidak hanya orang.
•
Asosiasi komunikasi : menghubungkan antara aktor dan use case.
Komponen yang digunakan dalam pembuatan use-case diagram, digambarkan dengan simbol berikut : Tabel 4.0.2 Komponen Use Case Simbol
Deskripsi Fungsi
Nama Use Case
sebagai
yang
disediakan
unit-unit
yang
sistem saling
bertukar pesan antara unit dan aktor, biasanya
dinyatakan
dengan
menggunakan kata kerja di awal frase nama use case.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 23
Proses
atau
sistem
lain
yang
berinteraksi dengan sistem informasi yang akan dibuat, di luar sistem informasi yang akan dibuat itu
Aktor
sendiri. Sehingga, walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang. Biasanya dinyatakan menggunakan kata benda di awal frase nama aktor.
Asosiasi
Komunikasi antara aktor dan use case yang berpartisipasi pada use case,
atau
use
case
memiliki
interaksi dengan aktor. <<ekstensi>>
Relasi use case tambahan ke sebuah use case, dimana use case yang ditambah dapat berdiri sendiri walau tanpa use case tambahan itu, mirip dengan prinsip inheritance pada Pemrograman Berorientsi Objek. Biasanya
use
case
tambahan
memiliki nama depan yang sama dengan use case yang ditambahkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 24
Menambah jenis pos
Menambah data RAB
Mengedit jenis pos
Mengedit data RAB
Menghapus jenis pos
Menghapus data RAB
Menambah data pos
Menginput maksimal anggaran
Mengedit data pos
Mengkonversi file excel
Pengguna
Menghapus data pos
Menginput Max Anggaran
Menambah data kata kunci
Menambah data jenisa pos
Mengupdate data kata kunci
Mengedit data jenis pos
Menginput data excel
Menghapus data jenis pos
Menghapus data kata kunci
Gambar 0.1 Use Case
Case
Tabel 3 Skenario Import file xlxs : ImportXlsx
Aktor
: Pengguna
Kondisi Awal : Kondisi Akhir : Berhasil Meng-input File Aksi Aktor 1. Aktor klik tombol browse
Reaksi Sistem 2. Sistem membuka windows explorer
3. Aktor membuka file xlxs
4. File masuk kedalam kolom browse
5. Aktor klik tombol Proses File
6. Sistem meng-input-kan dan mengload file kedalam database
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 25
Tabel 4 Skenario Tambah Data RAB Case : DataRAB Aktor : Pengguna Kondisi Awal : Data Sudah di-load Kondisi Akhir : Berhasil Meng-input Data Aksi Aktor
Reaksi Sistem
1. Aktor meng-input-kan data melalui text area 2. Aktor klik tombol Tambah
3. Sistem meng-input kedalam database 4. Sistem menampilkan data update terakhir kedalam JTabel
Tabel 5 Skenario Update DataRAB Case : DataRAB Aktor : Pengguna Kondisi Awal : Data sudah di-load Kondisi Akhir : Berhasil meng-update data Aksi Aktor 1. Aktor memilih data yang akan di-update
Reaksi Sistem 2. Sistem menampilkan data kedalam text area
3. Aktor meng-edit data 4. Aktor klik tombol Update
5. Sistem meng-update data kedalam database 6. Sistem menampilkan data update terakhir kedalam Jtable
Tabel 6 Skenario Hapus DataRAB Case : DataRAB Aktor : Pengguna
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 26
Kondisi Awal : Data sudah di-load Kondisi Akhir : Berhasil menghapus data Aksi Aktor 1. Aktor memilih data yang akan dihapus
Reaksi Sistem 2. Sistem menampilkan data kedalam text area
3. Aktor klik tombol Hapus
4. Sistem menghapus data didalam database 5. Sistem menampilkan data update terakhir kedalam Jtable
Tabel 7 Skenario Tambah Data Prioritas Barang Case : DataKataPrioritasBarang Aktor : Pengguna Kondisi Awal : Kondisi Akhir : Berhasil Menambahkan Data Aksi Aktor
Reaksi Sistem
1. Aktor meng-input-kan data melalui text area 2. Aktor klik tombol Tambah
3. Sistem meng-input kedalam database 4. Sistem menampilkan data update terakhir kedalam JTabel
Tabel 8 Skenario Update Data Prioritas Barang Case : DataKataPrioritasBarang Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil Di-update Aksi Aktor 1. Aktor memilih data yang akan di-update
Reaksi Sistem 2. Sistem menampilkan data kedalam text area
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 27
3. Aktor meng-edit data 4. Aktor klik tombol Update
5. Sistem meng-update data kedalam database 6. Sistem menampilkan data update terakhir kedalam Jtable
Tabel 9 Skenario Hapus Data Prioritas Barang Case : DataKataPrioritasBarang Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil dihapus Aksi Aktor
Reaksi Sistem
1. Aktor memilih data yang akan
2. Sistem menampilkan data kedalam
dihapus
text area
3. Aktor klik tombol Hapus
4. Sistem menghapus data didalam
database 5. Sistem menampilkan data update terakhir kedalam Jtable Tabel 10 Skenario Tambah Golongan Pos Case : GolonganPos Aktor : Pengguna Kondisi Awal : Data Sudah di-load Kondisi Akhir : Berhasil Menambah Data Aksi Aktor
Reaksi Sistem
1. Aktor menginputkan data melalui text area 2. Aktor klik tombol Tambah
3. Sistem meng-input kedalam database 4. Sistem menampilkan data update terakhir kedalam JTabel
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 28
Tabel 11 Skenario Update Golongan Pos Case : GolonganPos Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil Di-update Aksi Aktor 1. Aktor memilih data yang akan di-update
Reaksi Sistem 2. Sistem menampilkan data kedalam text area
3. Aktor meng-edit data 4. Aktor klik tombol Update
5. Sistem meng-update data kedalam database 6. Sistem menampilkan data update terakhir kedalam Jtable
Tabel 12 Skenario Hapus Golongan Pos Case : GolonganPos Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil dihapus Aksi Aktor 1. Aktor memilih data yang akan dihapus
Reaksi Sistem 2. Sistem menampilkan data kedalam text area
3. Aktor klik tombol Hapus
4. Sistem menghapus data didalam
database 5. Sistem menampilkan data update terakhir kedalam Jtable
Tabel 13 Skenario Tambah Jenis Pos Case : JenisPos Aktor : Pengguna
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 29
Kondisi Awal : Data Sudah di-load Kondisi Akhir : Berhasil Menambah Data Aksi Aktor
Reaksi Sistem
1. Aktor meng-input-kan data melalui text area 2. Aktor klik tombol Tambah
3. Sistem meng-input kedalam database 4. Sistem menampilkan data update terakhir kedalam JTabel
Tabel 14 Skenario Update Jenis Pos Case : JenisPos Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil Di-update Aksi Aktor 1. Aktor memilih data yang akan di-update
Reaksi Sistem 2. Sistem menampilkan data kedalam text area
3. Aktor meng-edit data 4. Aktor klik tombol Update
5. Sistem meng-update data kedalam database 6. Sistem menampilkan data update terakhir kedalam Jtable
Tabel 15 Skenario Hapus Jenis Pos Case : JenisPos Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil dihapus Aksi Aktor
Reaksi Sistem
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 30
1. Aktor memilih data yang akan
2. Sistem menampilkan data kedalam
dihapus
text area
3. Aktor klik tombol Hapus
4. Sistem menghapus data didalam
database 5. Sistem menampilkan data update terakhir kedalam Jtable Tabel 16 Skenario Tambah Data Pos Case : DataPos Aktor : Pengguna Kondisi Awal : Data Sudah di-load Kondisi Akhir : Berhasil Menambah Data Aksi Aktor
Reaksi Sistem
1. Aktor meng-input-kan data melalui text area 2. Aktor klik tombol Tambah
3. Sistem meng-input kedalam database 4. Sistem menampilkan data update terakhir kedalam JTabel
Tabel 17 Skenario Update Data Pos Case : DataPos Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil Di-update Aksi Aktor 1. Aktor memilih data yang akan di-update
Reaksi Sistem 2. Sistem menampilkan data kedalam text area
3. Aktor meng-edit data 4. Aktor klik tombol Update
5. Sistem meng-update data kedalam database
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 31
6. Sistem menampilkan data update terakhir kedalam Jtable Tabel 18 Skenario Hapus Data Pos Case : DataPos Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data berhasil dihapus Aksi Aktor
Reaksi Sistem
1. Aktor memilih data yang akan dihapus
2. Sistem menampilkan data kedalam text area
3. Aktor klik tombol Hapus
4. Sistem menghapus data didalam
database 5. Sistem menampilkan data update terakhir kedalam Jtable
Tabel 19 Knapsack Case : Knapsack Aktor : Pengguna Kondisi Awal : Data telah di-load Kondisi Akhir : Data di konversi ke file excel (.xlxs) Aksi Aktor
Reaksi Sistem 1. Data di-load kedalam Jtable
2. Aktor memasukkan maksimal anggaran 3. Aktor klik tombol Optimalkan Anggaran 5. Aktor klik tombol Konversi Ke File Excel
4. Sistem memotong data anggaran yang terdapat didalam Jtabel 6. Sistem mengkonversi Jtable kedalam file excel(xlxs) dan menyimpan didalam windows explorer
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 32
4.3 Desain Subsistem Manajemen Data 4.3.1 Diagram Conceptual Design
Gambar 4.0.2 Diagram Conceptual Design 4.3.2 Physical Database Design
Gambar 4.0.3 Physical Database Design
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 33
Physical Database Design merupakan gambaran implementasi database yang digunakan dalam sistem. Tabel-tabel Physical Database Design adalah sebagai berikut: 1.
Tabel Data Pos Nama Field ID_POS
Tabel 20 Data Pos Tipe Int (10)
Keterangan PK untuk tabel Data Pos
ID_GOLONGAN
Int (10)
Field untuk id golongan
TAHUN_POS
Varchar(10)
Field untuk tahun pos
JUMLAH
Varchar(20)
Field untuk jumlah barang
SISA_UANG
Varchar(20)
Field untuk sisa uang
2.
Tabel Data RAB Nama Field NO
Tabel 21 Data RAB Tipe Int(10)
Keterangan Field untuk no barang
ID_POS
Int(10)
PK untuk Data RAB
NAMA_BARANG
Varchar(50)
Field untuk nama barang
NON_USD
Varchar(20)
Field untuk harga barang
JADWAL
Varchar(20)
Field untuk jadwal
STATUS
Varchar(20)
Field untuk status
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 34
JUMLAH
Varchar(20)
Field untuk jumlah
HARGA_SATUAN
Varchar(20)
Field unutk harga satuan
USD
Varchar(20)
Field untuk USD
ISSELECTED
Enum(‘Y’,’N’)
Untuk mengetahui barang termasuk penting atau tidak
BOBOT
Int(5)
Untuk memberi bobot prioritas knapsack
3.
Tabel Golongan Pos Tabel 22 Golongan Pos Nama Field Tipe ID_GOLONGAN
Int(10)
Keterangan PK untuk tabel golongan pos
NAMA_GOLONGAN Varchar(50)
Field untuk nama golongan
4.
Tabel Jenis Pos Nama Field ID_JENIS_POS
Tabel 23 Jenis Pos Tipe Int(20)
Keterangan PK untuk tabel jenis pos
NAMA_JENIS_POS
Varchar(50)
Field untuk nama jenis pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 35
5.
Tabel Kata Kunci Tabel 24 Kata Kunci Tipe Keterangan
Nama Field NO
Int(10)
Field untuk no
KATA_KUNCI
Text
Field
untuk
kata
kunci knapsack 4.4 Desain Manajemen Model Sistem Pendukung Pengambilan Keputusan Optimasi Anggaran ini menggunakan metode Knapsack dengan penyelesaian Greedy, untuk menentukan bobot kepentingan serta pemotongan dana anggaran nantinya. Langkah-langkah proses SPPK Optimasi Anggaran : 1. Maksimal anggaran kita tetapkan 100.000.000 wi = bobot berat barang pi = jumlah atau keuntungan barang M = 100.000.000 wi
pi
Tabel 25 Penghitungan Knapsack 1 pi/wi Weigh Profit Density Solusi Optimal
2
21
10,5
1
1
1
1
1
1
1
1
0
0
1
3
1
0,333333
1
0
0
1
Total Bobot
6
2
2
6
Keuntungan
23
21
21
23
21 * 5.250.000 = 110.250.000 1 * 6.750.000 =
6.750.000
1 * 1.000.000 = 1.000.000 Jumlah
= 118.000.000 > 100.000.000
2. Hasil total anggaran masih lebih besar dibandingkan maksimal anggaran yang telah ditetapkan, maka barang dengan bobot paling besar dihilangkan dan dilakukan proses knapsack lagi yaitu sebagai berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 36
wi
pi
Tabel 26 Penghitungan Knapsack 2 pi/wi Weigh Profit Density Solusi Optimal
2
21
10,5
1
1
1
1
1
1
1
1
0
0
1
Total Bobot
3
2
2
3
Keuntungan
22
21
21
22
21 * 5.250.000 = 110.250.000 1 * 6.750.000 = Jumlah
6.750.000
= 117.000.000 > 100.000.000
3. Hasil total anggaran masih lebih besar dibandingkan maksimal anggaran yang telah ditetapkan, maka barang dengan bobot paling besar, jumlah barangnya dikurangi dan dilakukan proses knapsack lagi, yaitu sebagai berikut: Tabel 27 Penghitungan Knapsack 3 pi/wi Weigh Profit Density Solusi Optimal
wi
pi
2
17
8,5
1
1
1
1
1
1
1
1
0
0
1
Total Bobot
3
2
2
3
Keuntungan
18
17
17
18
17 * 5.250.000 = 89.250.000 1 * 6.750.000 = 6.750.000 Jumlah
= 96.000.000 ≤ 100.000.000
4. Jika maksimal anggaran sudah lebih besar sama dengan jumlah anggaran, maka proses knapsack dihentikan. Hasil tersebut telah dianggap paling optimal.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 37
Jalannya algoritma knapsack dan bentuk flowchart adalah sebagai berikut: Start
Input data dari Database
Input maxAng
countAng maxAng && !sackIsFull
False
For (int i = jumlahBarang; i> 0 && !sackIsFull; i—) maxHarPerBar = MaxHarPerBar – harSat;
True
maxHarPerBarPlusCountAng maxAng
False
Output
True
End
Gambar 4.0.4 Flowchart Algoritma Knapsack
4.5 Desain Subsistem Manajemen Dialog Desain subsistem manajemen dialog menggambarkan perancangan tampilan sistem, yang berfungsi sebagai media komunikasi data antara pemakai dengan sistem komputer guna memperlancar arus data Sistem Pendukung Pengambilan Keputusan Pemilihan Optimasi Anggaran.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 38
4.5.1 Antarmuka Pengguna a.
Home Home adalah halaman utama atau beranda dari program yang akan dibuat. Halaman home hanya berisikan judul dan menu yang menghubungkan halaman-halaman lain.
Gambar 4.0.5 Menu Home b.
Import Excel Menu ini berfungsi untuk meng-import-kan file excel yang berada di windows explorer. Ketika file telah di-input-kan, nama file tersebut akan muncul di text field, disamping tombol Browse.
Gambar 4.0.6 Menu Import Excel
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 39
c.
Golongan Pos Berisi golongan pos yang terdapat didalam anggaran yang telah diinput-kan. Halaman ini mempunyai tugas menambah, meng-update dan menghapus golongan dalam suatu anggaran.
Gambar 4.0.7 Menu Golongan Pos d.
Jenis Pos Berisi jenis pos yang terdapat didalam suatu anggaran yang telah diinput-kan. Halaman jenis pos ini, mempunyai tugas menampilkan, menambah, meng-update dan menghapus jenis pos.
Gambar 4.0.8 Menu Jenis Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 40
e.
Data RAB Berisi seluruh data barang, jumlah barang, harga barang dan status barang. Halaman data RAB ini mempunyai tugas untuk menampilkan, menambah, meng-edit, serta menghapus data RAB.
Gambar 4.0.9 Menu Data RAB f.
Data Pos Menampilkan data pos yang berada didalam anggaran. Menu data pos ini mempunyai tugas menambah, meng-update serta menghapus data pos yang terdapat didalam anggaran.
Gambar 4.0.10 Menu Data Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 41
g.
Data Prioritas Barang Menu data prioritas barang mempunyai fungsi untuk menambah, meng-update dan menghapus prioritas barang yang membantu dalam proses knapsack.
Gambar 4.0.11 Menu Data Prioritas Barang h. Knapsack Menu knapsack mempunyai fungsi untuk menampilkan hasil anggaran yang tealah dipotong dengan maksimal biaya dan telah dioptimalkan. Selain
itu menu ini
juga
mengkonversi data menjadi file excel.
Gambar 4.0.12 Menu Knapsack
berfungsi
untuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 42
i. Data Tidak Optimal Menu data tidak optimal, berfungsi untuk menampilkan semua data yang tidak optimal atau barang yang dipotong dari sebuah anggaran setelah dilakukan proses optimalisasi pada menu knapsack.
Gambar 4.0.13 Data Tidak Optimal
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 43
4.6 Perancangan Sistem 4.6.1 Diagram Kelas ImportXlsx
GolonganPos
DataRAB
+ ImportXlsx () + kosongkanDB : void + convertXlsxToDB : void + doSimpanXlsxToDB : void - pembobotanData : void - jButton1ActionPerformed : void
- dtm : DefaultTableModel - selectedRow : int + DataRAB () - populate : void - updateJTable : void - jTable1MouseClicked : void - Update_ButtonActionPerformed : void - Tambah_ButtonActionPerformed : void - Hapus_ButtonActionPerformed : void
- dtm : DefaultTableModel - selectedRow : int + DataRAB () - populate : void - updateJTable : void - jTable1MouseClicked : void - Update_ButtonActionPerformed : void - Tambah_ButtonActionPerformed : void - Hapus_ButtonActionPerformed : void
JenisPos - dtm : DefaultTableModel - selectedRow : int + DataRAB () - populate : void - updateJTable : void - jTable1MouseClicked : void - Update_ButtonActionPerformed : void - Tambah_ButtonActionPerformed : void - Hapus_ButtonActionPerformed : void
Home + Home()
DataKataKunciKnapsack - dtm : DefaultTableModel - selectedRow : int + DataKataKunciKnapsack() - populate() : void - updateJTable : void - Tambah_ButtonActionPerformed : void - Update_ButtonActionPerformed : void - Hapus_ButtonActionPerformed : void - jTable2MouseClicked : void
Knapsack
Gambar 4.0.14 Diagram Kelas 1
- isdioptimalkan : boolean + Knapsack () - setReportView : void - setExcelValues : void + resizeColumnWidth : void - hitungTotal : string - jButtonOptimalkanActionPerformed : void - jTextFieldMaxAngKeyTyped : void
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 44
JenisPos
DataRAB
- idJenisPos : int - namaJenisPos : string + getIdjenisPos() : int + setIdJenisPos() : void + getNamaJenisPos() : string + setNamaJenisPos() : void + selectJenisPos(Arraylist<String>) + insertJenisPos() : boolean + updateJenisPos() : boolean + deleteJenisPos() : boolean + getAutoIncrementJenisPos() : int + getNamaJenisPos1() : string
DataBarang - noBarang : int - namaBarang : string - hargaSatuan : string - penting : string + getNoBarang() : int + setNoBarang() : void + getNamaBarang() : int + setNamaBarang() : void + getHargaSatuan() : string + setHargaSatuan() : void + getPenting() : string + setPenting() : void + selectDataBarang(Arraylist<>) + insertDataBarang() : boolean + updateDataBarang() : boolean + deleteDataBarang() : boolean + getAutoIncrementDataBarang() : int
-no : int -idGolonganPos : int - bobot : Int - namaBarang : string - jadwal : string - nonUSD : string - status : string - jumlah : string - hargaSatuan : string - USD : string + getNo() : int + setNo() : void + getIdGolonganPos () : int + setIdPos() : void + getNamaBarang() : string + serNamaBarang() : string + getNonUSD() : string + setNonUSD() : void + getJadwal() : string + setJadwal() : void + getStatus() : string + setStatus() : void + getJumlah() : string + setJumlah() : void + getHargaSatuan() : string + setHargaSatuan() : void + getUSD() : string + setUSD() : void + getBobot() : int + setBobot() : void + selectDataRAB(ArrayList<string>) + selectDataRabSortByBobot(arrayList<stri ng>) + selectDataRabOptimalIsSelected(Arraylis t<string> ) + insertDataRab() : boolean + updateDataRab() : boolean + deleteDataRab() : boolean + getAutoIncrementDataRab() : int + selectDataRabbyID_Pos(arraylist<string> ) + selectDataRabbyID_Posnisselected(array list<string>) + updateIsSelectedDataRab : boolean + updateIsSelectedToNoDataRab() : boolean + isDataRabPenting(arraylist<string>) + updatebobotDataRab() : boolean + insertDataRabOptimal() : boolean + selectDataRabOptimalbyID_Pos(arraylist <string>) + selectDataRabOptimalbyNo(arraylist
) + updateDataRabOptimal() : boolean + truncateDataRabOptimal : booelan
Gambar 4.0.15 Diagram Kelas 2
DataKataKunciKnapsack - no : int - kataKunci : string + getNo() : int + setNo() : void + getKataKunci() : string + setKataKunci() : void + selectDataKataKunciKnapsack(arraylist<s tring>) + insertDataKataKunciKnapsack() : boolean + updateDataKataKunciKnapsack() : boolean + deleteDataKataKunciKnapsack() : boolean + getAutoIncrementDataKataKunciKnapsa ck() : int + insertDataKataKunciKnapsackDasar() : boolean
DataPos - idPos : int - idGolongan : int - tahunPos : string - jumlah : string - sisaUang : double + getIdPos() : int + setIdPos() : void + getIdGolongan() : int + setIdGolongan() void + getTahunPos() : string + setTahunPos() : void + getJumlah() : string + setJumlah() : void + getSisaUang() : double + setSisaUang : void + selectDataPos(arraylist<string>) + insertDataPos() : boolean + updateDataPos() : boolean + deleteDataPos() : boolean + getAutoIncrementDataPos() : int + getLastIndexDataPos() : int + getTahunAnggaran() : string + selectDataPosbyID_Golongan(Arraylist)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB V IMPLEMENTASI DAN ANALISA HASIL
5.1 Implementsi Pada implementasi ini, akan dijelaskan mengenai jalannya program atau proses aplikasi ini bekerja. Implementasi dibagi menjadi 2 bagaian yaitu Implementasi GUI dan Implementasi Sistem. Pada aplikasi ini, user adalah pengguna aplikasi.
5.1.1 Implementasi GUI 5.1.1.1 Home Pada halaman Home, terdapat menu yang menghubungan masing masing halaman. Dari menu home kita dapat melihat anggaran yang sudah masuk atau yang akan dimasukkan.
Gambar 5.0.1 Implementasi Tampilan Home
5.1.1.2 Import File Excel Setelah masuk halaman import, klik tombol Browse untuk menambahkan atau memasukkan file anggaran (xlsx) yang akan di proses.
45
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 46
Gambar 5.0.2 Implementasi Import File Excel Setelah klik tombol Browse, maka akam masuk Windows Explorer untuk memilih file yang akan di-input-kan kedalam aplikasi. Ketika klik open file, kemudian akan masuk kedalam halaman import file excel, lalu data akan dimasukkan kedalam database.
Gambar 5.0.3 Implementasi Windows Explorer
5.1.1.3 Data RAB Di dalam menu item Data RAB, terdapat semua keterangan data barang yang terdapat dalam file anggaran. Pada menu ini terdapat 3 fasilitas, yaitu: Tambah untuk menambah data barang, Update untuk meng-edit keterangan data barang, serta Delete
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 47
untuk menghapus data barang dari file anggaran. Ketika suatu barang di dalam tabel diklik, maka text field akan menampilan keterangan barang tersebut. Pengguna dapat mengubah data barang melalui text field tersebut.
Gambar 5.0.4 Implementasi Data RAB
5.1.1.4 Data Pos Dalam menu item Data Pos, terdapat tabel untuk menampilkan data dari masing-masing pos yang berada didalam file anggaran. Selain tabel di menu ini, juga terdapat 3 fasilitas, yaitu: Tambah untuk menambah data dalam file anggaran, Update untuk meng-edit data yang sudah ada, serta Hapus untuk menghapus data yang terdapat dalam file anggaran tersebut. Ketika suatu barang di dalam tabel diklik, maka text field akan menampilan keterangan barang tersebut. Pengguna dapat mengubah data barang melalui text field tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 48
Gambar 5.0.5 Implementasi Data Pos
5.1.1.5 Data Prioritas Barang Knapsack Data
Prioritas
Barang
Knapsack
berfungsi
untuk
memprioritaskan barang yang dianggap penting, sehingga akan masuk kedalam knapsack. Dalam menu ini memiliki beberapa fitur antara lain tabel untuk menampilkan data prioritas barang yang telah di-input-kan, tambah untuk meng-input-kan data prioritas barang, update untuk mengubah atau meng-edit prioritas barang, serta hapus untuk menghapus data prioritas barang dari database.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 49
Gambar 5.0.6 Implemetasi Data Prioritas Barang Knapsack
5.1.1.6 Golongan Pos Menu golongan pos berfungsi untuk menampilkan data golongan pos yang terdapat didalam file anggaran. Selain fasilitas tabel untuk menampilkan data, dalam menu ini juga terdapat fasilitas tambah untuk menambah golongan pos, update untuk meng-edit data golongan pos yang terdapat dalam file anggaran, serta hapus untuk menghapus data anggaran yang ada di dalam file anggaran. Ketika suatu barang di dalam tabel diklik maka text field akan menampilan keterangan barang tersebut. Pengguna dapat mengubah data barang melalui text field tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 50
Gambar 5.0.7 Implementasi Golongan Pos 5.1.1.7 Jenis Pos Menu jenis pos berfungsi untuk menampilkan data jenis pos yang terdapat dalam file anggaran. Dalam menu ini terdapat tabel untuk menampilkan data jenis pos yang ada di dalam anggaran. Fitur lainnya yaitu fungsi tambah untuk menambah data jenis pos, update untuk meng-edit data yang sudah ditambahkan atau yang sudah ada. Serta hapus untuk menghapus data jenis pos yang sudah ada. Ketika suatu barang di dalam tabel diklik maka text field akan menampilan keterangan barang tersebut. Pengguna dapat mengubah data barang melalui text field tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 51
Gambar 5.0.8 Implementasi Jenis Pos 5.1.1.8 Knapsack Dalam menu knapsack, semua data file ditampilkan. Terdapat fasilitas untuk memaksimalkan biaya. Kolom maksimal biaya diisi dengan batasan biaya yang ditetapkan. Setelah itu klik tombol optimalkan, maka data yang ada akan dipotong sesuai jumlah maksimal biaya yang telah dimasukkan. Setelah selesai dapat meng-klik tombol konversi file excel untuk membuka file yang telah diolah di dalam Microsoft Excel.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 52
Gambar 5.0.9 Implementasi Knapsack
5.1.2 Implementasi Sistem 5.1.2.1 Input File Excel Sebelum data dari file excel dimasukkan kedalam database, dilakukan beberapa proses. Proses-proses tersebut yaitu: 1.
Pengosongan Database Proses ini dimaksudkan untuk mengosongkan database dari data sebelumnya agar tidak terjadi penumpukan data didalam database.
Kode Program 5.0.1 Kosongankan Database
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 53
2.
Konversi file excel kedalam database Proses ini untuk mengambil data yang ada di dalam baris dan kolom di dalam file excel. Data dibuat array, setelah terambil dimasukkan ke dalam tabel menurut golongan, jenis, dan data barang.
Kode Program 5.0.2 Konvert File Excel
5.1.2.2 Knapsack 1. Tombol Optimalkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 54
Kode Program 5.0.3 Tombol Optimalkan 2. Method pengoltimalan Knapsack
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 55
Kode Program 5.0.4 Method pengoptimalan Knapsack
5.2 Pengujian 5.2.1 Kompleksitas Algoritma Tabel 28 Perhitungan jumlah operasi sistem algoritma No
Operasi Sistem
Jumlah Looping
1.
Penghitungan Jumlah list Data RAB
N kali
2.
Penghitungan jumlah dengan kapasitas
N kali
Knapsack Total
𝑁2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 56
Dari tabel diatas dapat disimpulkan bahwa operasi sistem algoritma Knapsack sebagai algoritma yang kompleks, sehingga algoritma knapsack tersebut membutuhkan waktu proses yang lama. Looping dilakukan sebanyak 2 kali, kompleksitas dihitung berdasarkan worst case (kemungkinan terburuk), sehingga kemungkinan terburuk masih sesuai dengan jumlah maksimal looping yaitu sebanyak jumlah iterasi. O = 𝑁 2 .
5.2.2 Pengujian Sistem Dalam pengujian ini, dilakukan perbandingan hasil perhitungan secara manual menggunakan microsoft excel dan perhitungan dengan sistem. Di dalam pengujian ini, dilakukan dengan beberapa skenario pengujian. Skenario pengujian sebagai berikut: 1.
Bobot sesuai default sistem Bobot sesuai default sistem yang dimaksud disini adalah bobot sesuai dengan data yang dimasukkan ke dalam sistem.
Gambar 5.0.10 Pengujian Bobot Barang Default Setelah bobot ditetapkan seperti diatas, lalu akan dilakukan proses perhitungan oleh sistem sebagai berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 57
Gambar 5.0.11 Hasil Penghitungan Sistem 1 Pada skenario ini, di masukkan maksimal anggaran ekploitasi sebesar 74.553.000 dan anggaran investasi sebesar 100.000.000. Setelah dilakukan optimasi anggaran, eksploitasi yang optimal sebesar 74.553000 dan anggaran investasi yang optimal sebesar 95.800.000. Setelah
dilakukan
perhitungan
manual
menggunakan
microsoft excel dengan bobot dan data yang sama, diperoleh hasil sebagai berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 58
a.
Pos Eksploitasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 59
Gambar 5.0.12 Penghitungan Manual 1 Dari gambar diatas diperoleh hasil perhitungan secara manual menggunakan microsoft excel pada pos eksploitasi sebesar 73.553.000. Dari sini dapat disimpulkan bahwa perhitungan sistem dan perhitungan manual dikatakan sama dikarenakan mendapatkan hasil perhitungan yang sama. Dari perhitungan tersebut hanya terdapat 1 iterasi penghitungan optimasi. Hal tersebut dikarenakan tidak ada pemotongan anggaran pada pos tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 60
b.
Pos Investasi
Gambar 5.0.13 Penghitungan Manual 2 Pada perhitungan iterasi pertama belum mendapatkan hasil yang optimal. Hal tersebut dikarenakan jumlah anggaran masih melebihi maksimal anggaran yang di masukkan. Maka dilakukan perhitungan iterasi kedua.
Gambar 5.0.14 Penghitungan Manual 3 Pada iterasi kedua juga belum mendapatkan hasil yang optimal. Jumlah anggaran masih melebihi maksimal anggaran yang dimasukkan. Maka dilakukan perhitungan iterasi ketiga.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 61
Gambar 5.0.15 Penghitungan Manual 4 Pada iterasi ketiga juga belum mendapatkan hasil yang optimal. Jumlah anggaran masih melebihi maksimal anggaran yang dimasukkan. Maka dilakukan perhitungan iterasi keempat.
Gambar 5.0.16 Penghitungan Manual 5 Pada perhitungan iterasi keempat sudah mendapatkan hasil yang optimal. Jumlah anggaran sudah kurang dari sama dengan maksimal anggaran. Hasil perhitungan yang didapatkan oleh perhitungan manual sama dengan perhitungan sistem yaitu 95.800.000. 2.
Bobot Barang diatur pengguna Bobot barang diatur pengguna, yang dimaksud disini adalah bobot barang yang ada di menu data RAB diubah sesuai dengan prioritas kebutuhan pengguna.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 62
Gambar 5.0.17 Pengujian Bobot Barang Masukkan Pengguna Setelah bobot ditetapkan seperti diatas, lalu akan dilakukan proses perhitungan oleh sistem sebagai berikut.
Gambar 5.0.18 Penghitungan Sistem 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 63
Pada skenario ini, di masukkan maksimal anggaran ekploitasi sebesar 74.553.000 dan anggaran investasi sebesar 100.000.000. Setelah dilakukan, optimasi anggaran eksploitasi yang optimal sebesar 74.553000 dan anggaran investasi yang optimal sebesar 100.000.000. Setelah dilakukan perhitungan manual menggunakan microsoft excel dengan bobot dan data yang sama, diperoleh hasil sebagai berikut: a.
Pos Eksploitasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 64
Gambar 5.0.19 Penghitungan Manual 6 Dari gambar diatas diperoleh hasil perhitungan secara manual menggunakan microsoft excel pada pos eksploitasi sebesar 73.553.000. Dari sini dapat disimpulkan bahwa perhitungan sistem dan perhitungan manual dikatakan sama dikarenakan mendapatkan hasil perhitungan yang sama. Dari perhitungan tersebut hanya terdapat 1 iterasi penghitungan optimasi. Hal tersebut dikarenakan tidak ada pemotongan anggaran pada pos tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 65
b.
Pos Investasi
Gambar 5.0.20 Penghitungan Manual 7 Pada perhitungan iterasi pertama belum mendapatkan hasil yang optimal. Hal tersebut dikarenakan jumlah anggaran masih melebihi maksimal anggaran yang di masukkan. Maka dilakukan perhitungan iterasi kedua.
Gambar 5.0.21 Penghitungan Manual 8 Pada perhitungan iterasi kedua belum mendapatkan hasil yang optimal. Hal tersebut dikarenakan jumlah anggaran masih melebihi maksimal anggaran yang di masukkan. Maka dilakukan perhitungan iterasi ketiga.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 66
Gambar 5.0.22 Penghitungan Manual 9 Pada perhitungan iterasi ketiga belum mendapatkan hasil yang optimal. Hal tersebut dikarenakan jumlah anggaran masih melebihi maksimal anggaran yang di masukkan. Maka dilakukan perhitungan iterasi keempat.
Gambar 5.0.23 Penghitungan Manual 10 Pada perhitungan iterasi keempat belum mendapatkan hasil yang optimal. Hal tersebut dikarenakan jumlah anggaran masih melebihi maksimal anggaran yang di masukkan. Maka dilakukan perhitungan iterasi kelima.
Gambar 5.0.24 Penghitungan Manual 11 Pada perhitungan iterasi kelima sudah mendapatkan hasil yang optimal. Jumlah anggaran sudah kurang dari sama dengan maksimal anggaran. Hasil perhitungan yang didapatkan oleh perhitungan manual sama dengan perhitungan sistem yaitu 100.000.000.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 67
5.3 Kelebihan dan Kekurangan Sistem Pada subbab ini penulis akan membahas tentang kelebihan dan kekurangan dari sistem yang dibangun oleh penulis.
5.3.1 Kelebihan Sistem Kelebihan dari sistem yang dibangun adalah sebagai berikut: 1.
Pengguna dapat memasukkan data dan dapat keluaran proses dari sistem berupa file excel (.xlxs).
2.
Pengguna dapat menambah,meng-edit, dan menghapus data anggaran didalam sistem tanpa edit manual melalui Microsoft Excel.
3.
Pengguna mendapat rekomendasi pemotongan anggaran dari sistem.
4.
Sistem mudah untuk diperbaharui atau di update.
5.
Menggunakan java sehingga dapat digunakan dengan mudah.
5.3.2 Kekurangan Sistem Kekurangan dari sistem yang dibangun adalah sebagai berikut: 1.
Hanya dapat memproses file excel (.xlxs) sesuai format.
2.
Pengguna harus memasukan prioritas barang sebelum melakukan pemotongan anggaran.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB VI PENUTUP
Pada bab akhir dari tugas akhir ini, berisikan tentang kesimpulan dan saran. Kesimpulan berisi tentang hal-hal yang berkaitan dengan hasil pengujian Sistem Pendukung Pengambilan Keputusan Optimasi Anggaran menggunakan metode Knapsack dengan penyelesaian Greedy ini. Saran akan memuat hal-hal yang berkaitan tentang pengembangan sistem dalam tulisan ini.
6.1 Kesimpulan Dari hasil implementasi dan analisa yang telah dilakukan, dapat disimpulkan bahwa algoritma knapsack mempunyai kompleksitas yang padat dan membutuhkan banyak waktu. Akan tetapi dengan adanya aplikasi ini banyak membantu pengguna untuk mengoptimalkan anggaran.
6.2 Saran Aplikasi yang dibuat dalam penelitian ini digunakan untuk membantu pengguna dalam mengolah dan mengoptimalkan anggaran. Akan tetapi aplikasi pengolahan anggaran ini masih memerlukan banyak pengembangan. Oleh karena itu, penulis memberikan beberapa saran antara lain : 1.
Bagi Mahasiswa Diharapkan
penelitian
ini
dapat
membantu
mahasiswa
dalam
pembelajaran terkait dengan algoritma atau kasus yang diteliti. 2.
Bagi Peneliti Lain Penelitin ini hanya terbatas file (.xlxs) dengan format letak kolom yang telah ditentukan. Diharapan peneliti selanjutnya bisa membaca file (.xlx) dengan format letak kolom yang sedemikian rupa.
68
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR PUSTAKA
Rachmawati, D., Candra, A., IMPLEMENTASI ALGORITMA GREEDY UNTUK MENYELESAIKAN MASALAH KNAPSACK PROBLEM. Ilmu Komputer: Universitas Sumatra Utara. Budi, P. E. (2008). Perancangan dan Analisis Algoritma. Yogyakarta: Penerbit GRAHA ILMU. Fox, K. (2009). CS 598CSC: Approximation Algorithms. Lecture date: February 9, 2011. Instructor: Chandra Chekuri. Jurnal Momentum: APLIKASI SISTEM DATABASE RUMAH SAKIT TERPUSAT PADA RUMAH SAKIT UMUM (RSU) ‘AISYIYAH PADANG DENGAN MENERAPKAN OPEN SOURCE (PHP-MYSQL). Vol.15 No.2. Agustus 2013. Kadir, A. (1999). Konsep dan Tuntunan Praktis Basis Data. Yogyakarta: Penerbit Andi. Kroenke, M. D. (1998). Database Processing. Prentice Hall International, Inc. Kusrini (2011). Konsep dan Aplikasi Sistem Pendukung Keputusan. Yogyakarta: Andi. Efraim, T., Aronson, J. E., & Liang, T. P. (2005). Decision Support Systems and Intelligent Systems-7th Ed. Yogyakarta: Penerbit Andi. Winarni, E. (2013). Sistem Pendukung Pengambilan Keputusan Paket Wisata Manggarai Barat Menggunakan Metode Smart (Simple Multi Attribute Rating Technique). Yogyakarta: Universitas Sanata Dharma.
69
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
DIAGRAM SQUENCE Tambah Golongan Pos
Gambar 7.0.1 Diagram Squence Tambah Golongan Pos
Update Golongan Pos
Gambar 7.0.2 Diagram Squence Update Golongan Pos
70
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 71
Hapus Golongan Pos
Gambar 7.0.3 Diagram Squence Hapus Golongan Pos
Tambah Jenis Pos
Gambar 7.0.4 Diagram Squence Tambah Jenis Pos
Update Jenis Pos
Gambar 7.0.5 Diagram Squence Update Jenis Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 72
Hapus Jenis Pos
Gambar 7.0.6 Diagram Squence Hapus Jenis Pos
Tambah Data RAB
Gambar 7.0.7 Diagram Squence Tambah Data RAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 73
Update Data RAB
Gambar 7.0.8 Diagram Squence update Data RAB
Hapus Data RAB
Gambar 7.0.9 Diagram Squence Hapus Data RAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 74
Tambah Data Pos
Gambar 7.0.10 Diagram Squence Tambah Data Pos
Update Data Pos
Gambar 7.0.11 Diagram Squence Update Data Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 75
Hapus Data Pos
Gambar 7.0.12 Diagram Squence Hapus Data Pos
Tambah Data Prioritas Barang
Gambar 7.0.13 Diagram Squence Tambah Data Prioritas Barang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 76
Update Data Prioritas Barang
Gambar 7.0.14 Diagram Squence Update Data Prioritas Barang
Hapus Data Prioritas Barang
Gambar 7.0.15 Diagram Squence Hapus Data Prioritas Barang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 77
Insert File Excel
Gambar 7.0.16 Diagram Squence Insert File Excel
Knapsack
Gambar 7.0.17 Diagram Squence Knpasack
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 78
DIAGRAM AKTIVITAS Input Excel Aktor
Sistem
Aktor memilih menu “Browse”
Membuka windows explorer
Mencari dan menambahkan file excel (xlsx)
Membaca dan memecah menjadi variabel, lalu memasukkan kedalam database
Gambar 7.0.18 Diagram Input Excel
Tambah Golongan Pos Aktor
Sistem
Aktor memilih menu “golongan pos”
Sistem menampilkan halaman golongan pos
Aktor Menginputkan : Nama Golongan, ID Golongan, dan Max Anggaran
Sistem mengcreate dalam database serta menampilkan dalam tabel sesuai inputan aktor
Gambar 7.0.19 Diagram Tambah Golongan Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 79
Update Golongan Pos Aktor
Sistem
Aktor memilih menu "Golongan Pos"
Sistem Menampilkan menampilkan Halaman golongan pos
Aktor memilih golongan yang akan diedit, lalu klik tombol "Update"
Sistem akan mengupdate didalam database serta menampilkan hasil sesuai yang diupdate oleh aktor
Gambar 7.0.20 Diagram Update Golongan Pos
Hapus Golongan Pos Aktor
Sistem
Aktor memilih menu "Golongan Pos"
Sistem Menampilkan menampilkan Halaman golongan pos
Aktor memilih golongan yang akan dihapus, lalu klik tombol "Hapus"
Sistem akan menghapus golongan didalam database serta menampilkan hasil sesuai yang diupdate terakhir database
Gambar 7.0.21 Diagram Hapus Golongan Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 80
Tambah Jenis Pos Aktor
Sistem
Aktor memilih menu "Jenis Pos"
Sistem menampilkan halaman Jenis Pos
Aktor Menginputkan Jenis pos lalu klik "Simpan"
Sistem menampilkan hasil inputan aktor didalam tabel
Gambar 7.0.22 Diagram Tambah Jenis Pos
Update Jenis Pos Aktor
Sistem
Aktor memilih menu "Jenis Pos"
Sistem menampilkan halaman Jenis Pos
Aktor mengupdate Jenis pos lalu klik "Update"
Sistem menampilkan hasil update terakhir aktor didalam tabel
Gambar 7.0.23 Diagram Update Jenis Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 81
Hapus Jenis Pos Aktor
Sistem
Aktor memilih menu "Jenis Pos"
Sistem menampilkan halaman Jenis Pos
Aktor memilih Jenis pos yang akan dihapus lalu klik "Hapus"
Sistem menampilkan hasil update terakhir aktor didalam tabel
Gambar 7.0.24 Diagram Hapus Jenis Pos
Tambah Data RAB Aktor
Sistem
Aktor menginput data dan pilih tombol "Tambah"
Sistem menampilkan data yang telah diinputkan aktor pada tabel Sistem menambahkan data yang telah diinputkan sktor ke dalam database
Gambar 7.0.25 Diagram Tambah Data RAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 82
Update Data RAB Aktor
Sistem
Aktor Mengklik/ memilih data yang akan diupdate
Sistem menampilkan data di text area
Aktor mengupdate data yang ada di text area, lalu menekan tombol "Update"
Sistem menampilkan data yang telah terupdate didalam Tabel
Sistem mengupdate data yang berada didalam database
Gambar 7.0.26 Diagram Update Data RAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 83
Hapus Data RAB Aktor
Sistem
Aktor memilih data yang akan dihapus
Sistem menampilkan data di text area
Aktor memilih tombol "Hapus"
Sistem menghapus data yang dipilih aktor didalam database Sistem menampilkan update data terakhir didalam database ke dalam tabel
Gambar 7.0.27 Diagram Hapus Data RAB
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 84
Tambah Data Prioritas Barang Aktor
Aktor menginput kata kunci, lalu pilih tombol "Tambah"
Sistem
Sistem menginput kedalam database
Setelah merefresh didalam database, sistem menampilkan data kedalam tabel
Gambar 7.0.28 Diagram Tambah Data Prioritas Barang
Update Data Prioritas Barang Aktor
Sistem
Aktor memilih data yang akan diupdate
Sistem menampilkan data di textarea
Aktor mengupdate data, lalu klik tombol "Update
Sistem mengupdate data didalam database Sistem menampilkan data terupdate didalam tabel
Gambar 7.0.29 Diagram Update Data Prioritas Barang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 85
Hapus Data Prioritas Barang Aktor
Sistem
Aktor memilih data yang akan dihapus
Sistem menampilkan data di textarea
Aktor klik tombol "Hapus"
Sistem menghapus data didalam database Sistem menampilkan data terupdate didalam tabel
Gambar 7.0.30 Diagram Hapus Data Prioritas Barang
Tambah Data Pos Aktor
Aktor mengginput data, lalu klik tombol "Tambah"
Sistem
Sistem menginput data kedalam database
Sistem menampilkan data didalam database ke tabel
Gambar 7.0.31 Diagram Tambah Data Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 86
Update Data Pos Aktor
Sistem
Aktor Mengklik/ memilih data yang akan diupdate
Sistem menampilkan data di text area
Aktor mengupdate data yang ada di text area, lalu menekan tombol "Update"
Sistem menampilkan data yang telah terupdate didalam Tabel
Sistem mengupdate data yang berada didalam database
Gambar 7.0.32 Diagram Update Data Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 87
Hapus Data Pos Aktor
Sistem
Aktor memilih data yang akan dihapus
Sistem menampilkan data di text area
Aktor memilih tombol "Hapus"
Sistem menghapus data yang dipilih aktor didalam database Sistem menampilkan update data terakhir didalam database ke dalam tabel
Gambar 7.0.33 Diagram Hapus Data Pos
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 88
Knapsack Sistem
Aktor
Aktor memasukkan maksimal anggaran
Sistem menampilkan data dari database kedalam tabel
Aktor memilih tombol Optimalkan
Sistem memotong anggaran yang tidak masuk dalam kategori penting, dan menampilkan didalam tabel
Aktor memilih tombol "Konversi ke file Excel"
Sistem melakukkan proses koneversi file ke format .xlxs
Gambar 7.0.34 Diagram Knapsack