• Tidak ada hasil yang ditemukan

Sistem pendukung pengambilan keputusan optimasi anggaran menggunakan algoritma knapsack.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem pendukung pengambilan keputusan optimasi anggaran menggunakan algoritma knapsack."

Copied!
108
0
0

Teks penuh

(1)

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.

(2)

The 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.

(3)

i

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

(4)

ii

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

(5)

iii

(6)

iv

(7)

v

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

(8)

vi

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

(9)

vii

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

(10)

viii

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

(11)

ix

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.

(12)

x

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

(13)

xi

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

(14)

xii

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

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

(15)

xiii

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

(16)

xiv

5.2.1 Kompleksitas Algoritma ... 55

5.2.2 Pengujian Sistem... 56

5.3 Kelebihan dan Kekurangan Sistem ... 67

5.3.1 Kelebihan Sistem ... 67

5.3.2 Kekurangan Sistem ... 67

BAB VI ... 68

Tambah Golongan Pos... 70

Update Golongan Pos ... 70

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

(17)

xv

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

(18)

xvi

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 25 Penghitungan Knapsack 1 ... 35

Tabel 26 Penghitungan Knapsack 2 ... 36

Tabel 27 Penghitungan Knapsack 3 ... 36

(19)

xvii

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

(20)

xviii

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

(21)

1

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

(22)

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.

(23)

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

(24)

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,

(25)

5

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.

(26)

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

(27)

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

semi-terstruktur dan tak semi-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

(28)

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

(29)

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

(30)

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

(31)

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.

Benda-benda 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

(32)

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 = ∑��= Pi Xi dengan batasan ∑��= 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

(33)

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

(34)

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

Optimal i wi pi wi/pi Weight Profit Density

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

(35)

15

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

(36)

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:

(37)

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

(38)

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

(39)

19

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

(40)

4.1.3 Analisis Masalah (Problem analysis)

4.1.3.1Analisis Sebab Akibat (Cause-effect analysis)

Tabel 4.0.1 Analisis Masalah

Analisis Penyebab dan Akibat Tujuan Memperbaiki sistem

Masalah Sebab dan Akibat Tujuan Sistem Batasan Sistem

Memperoleh

lama dan belum

tentu optimal

4.1.4 Gambaran Umum Sistem Yang Akan Dibuat

Sistem baru yang akan dibuat diharapan dapat mempermudah kerja

(41)

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

(42)

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

Nama Use Case

Fungsi yang disediakan sistem

sebagai unit-unit yang saling

bertukar pesan antara unit dan aktor,

biasanya dinyatakan dengan

menggunakan kata kerja di awal

(43)

Aktor

Proses atau sistem lain yang

berinteraksi dengan sistem informasi

yang akan dibuat, di luar sistem

informasi yang akan dibuat itu

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

(44)

Menambah

Gambar 0.1 Use Case

Tabel 3 Skenario Import file xlxs

Case : ImportXlsx Aktor : Pengguna

Kondisi Awal : -

Kondisi Akhir : Berhasil Meng-input File

Aksi Aktor Reaksi Sistem

1. Aktor klik tombol browse 2. Sistem membuka windows

explorer

3. Aktor membuka file xlxs 4. File masuk kedalam kolom browse

5. Aktor klik tombol Proses File 6. Sistem input-kan dan

(45)

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 Reaksi Sistem

1. Aktor memilih data yang akan

di-update

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

(46)

Kondisi Awal : Data sudah di-load

Kondisi Akhir : Berhasil menghapus data

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 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 Reaksi Sistem

1. Aktor memilih data yang akan

di-update

2. Sistem menampilkan data kedalam

(47)

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

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 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

(48)

Tabel 11 Skenario Update Golongan Pos

Case : GolonganPos Aktor : Pengguna

Kondisi Awal : Data telah di-load

Kondisi Akhir : Data berhasil Di-update

Aksi Aktor Reaksi Sistem

1. Aktor memilih data yang akan

di-update

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 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 13 Skenario Tambah Jenis Pos

(49)

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 Reaksi Sistem

1. Aktor memilih data yang akan

di-update

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

(50)

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 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 Reaksi Sistem

1. Aktor memilih data yang akan

di-update

2. Sistem menampilkan data kedalam

text area

3. Aktor meng-edit data

4. Aktor klik tombol Update 5. Sistem meng-update data kedalam

(51)

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

4. Sistem memotong data anggaran

yang terdapat didalam Jtabel

5. Aktor klik tombol Konversi Ke

File Excel

6. Sistem mengkonversi Jtable

kedalam file excel(xlxs) dan

menyimpan didalam windows

(52)

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

(53)

Physical Database Design merupakan gambaran implementasi database yang digunakan dalam sistem. Tabel-tabel Physical Database Design adalah sebagai berikut:

1. Tabel Data Pos

Tabel 20 Data Pos

Nama Field Tipe Keterangan

ID_POS Int (10) 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

Tabel 21 Data RAB

Nama Field Tipe Keterangan

NO Int(10) 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

(54)

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 Keterangan

ID_GOLONGAN Int(10) PK untuk tabel

golongan pos

NAMA_GOLONGAN Varchar(50) Field untuk nama

golongan

4. Tabel Jenis Pos

Tabel 23 Jenis Pos

Nama Field Tipe Keterangan

ID_JENIS_POS Int(20) PK untuk tabel

jenis pos

NAMA_JENIS_POS Varchar(50) Field untuk nama

(55)

5. Tabel Kata Kunci

Tabel 24 Kata Kunci

Nama Field Tipe Keterangan

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

Tabel 25 Penghitungan Knapsack 1

wi pi pi/wi Weigh Profit Density Solusi Optimal

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

(56)

Tabel 26 Penghitungan Knapsack 2

wi pi 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 = 6.750.000

Jumlah = 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

wi pi pi/wi Weigh Profit Density Solusi Optimal

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

Gambar

Gambar 2.0.1.4 Arsitektur Sistem Pengambil Keputusan
Tabel 2.0.1 Penghitungan Knapsack menggunakan Greedy
Tabel 4.0.1 Analisis Masalah
Tabel 4.0.2 Komponen Use Case
+7

Referensi

Dokumen terkait

Dalam skripsi ini akan dibangun Sistem Pendukung Pengambilan Keputusan (SPPK) Untuk Menentukan Penjurusan Siswa SMA yang bertujuan untuk membantu kesulitan dari

Untuk mengatasi permasalahan di atas maka dibutuhkan sebuah sistem pendukung pengambilan keputusan yang bertujuan untuk memberikan rekomendasi kelompok obat dengan

Penelitian ini bertujuan untuk melakukan analisis dalam pengambilan keputusan prioritas penataan pemakaman di Kota Mataram berbasis sistem informasi geografis dengan

Kriteria untuk menentukan karyawan yang memiliki prioritas untuk mendapatkan bonus gaji meliputi tanggung jawab,sikap kerja,dan kejujuran.Selain masih menggunakan

Metode AHP-TOPSIS dapat digunakan untuk pengambilan keputusan pada keadaan dimana bobot tiap kriteria berasal dari pengguna dan perhitungan prioritas alternatif juga

Telah dapat dibangun suatu sistem pengambilan keputusan dengan menggunakan metode analytical hierarchy process untuk menentukan urutan prioritas dalam penentuan

SPK dirancang untuk mendukung seluruh tahap pengambilan keputusan mulai dari mengidentifikasi masalah, memilih data yang relevan, dan menentukan pendekatan yang digunakan dalam proses

METODE PENELITIAN Penelitian ini merupakan penelitian terapan dari teori fuzzy tahani sebagai sistem pendukung pengambilan keputusan dalam perekrutan guru berdasarkan nilai dari