d Fungsi Kelayakan Feasible Fungsi ini digunakan untuk memeriksa suatu kandidat yang telah dipilih
dapat memberikan solusi yang layak atau tidak, yakni kandidat tersebut bersama-sama dengan himpunan solusi yang sudah terbentuk tidak
melanggar kendala contraints yang ada. e Fungsi Obyektif
Fungsi ini merupakan fungsi yang memaksimumkan atau meminimumkan nilai solusi Safitri dan Wijanarto, 2011.
Dalam menentukan solusi optimum dari persoalan optimasi dengan algoritma greedy, pembuatan prosedur greedy dilakukan dengan masukan berupa himpunan
kandidat C, dan keluaran berupa himpunan solusi S Safitri dan Wijanarto, 2011. Skema umum algoritma greedy adalah sebagai berikut Safitri dan Wijanarto,
2011:
Procedure greedy input C: himpunan_kandidat, Output S: himpunan solusi
{Mengembalikan solusi optimum dari persoalan optimasi dengan algoritma greedy
Masukan: himpunan kandidat C Keluaran: himpunan kandidat solusi S}
Deklarasi x
: kandidat Algoritma:
S { }
while belum Solusi S and C ? { } do x
SELEKSI C; C
C – {x}
if LAYAK S ∪ {X} then
S S
∪ {x} endif
endwhile {SOLUSI S sudah diperoleh or C={ }}
2.3 Extreme Programming
Extreme Programming merupakan metode agile yang paling populer saat ini. XP digunakan untuk mengatasi masalah requirements yang tidak jelas dan sering
berubah-ubah. XP pertama kali diperkenalkan menjadi metodologi pengembangan perangkat lunak oleh Kent Beck. XP dimunculkan untuk mengatasi berbagai
perubahan yang biasa terjadi pada saat pengembangan berlangsung Widodo, 2008.
Menurut Pressman 2010, terdapat 4 tahapan pada pengembangan perangkat lunak yang menggunakan XP yaitu planning, design, coding, dan testing. Gambar
1 merupakan penggambaran dari tahapan-tahapan yang ada pada extreme programming.
Gambar 1. Tahapan extreme programming Pressman, 2010
Planning merupakan aktivitas yang dimulai dengan membentuk user stories, developer menilai setiap story dan menentukan cost untuk diukur dalam
development week. Design merupakan fase dimana user stories yang diperoleh dirancang ke dalam desain-desain. Coding merupakan fase pembangunan sistem
kedalam bentuk kode-kode program. Pada fase coding, apabila sistem akan dirilis ke dalam bentuk kecil dan ditunjukkan kepada customer. Apabila terjadi
perubahan, maka akan dilakukan pengkodean ulang. Testing merupakan fase pengujian terhadap sistem yang telah dibuat, apabila sistem telah disetujui oleh
customer maka selanjutnya sistem akan dirilis Pressman, 2010.
2.4. Flowchart
Flowchart merupakan langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang direpresentasikan dalam bentuk grafis yang terdiri dari
sekumpulan simbol, dimana simbol-simbol tersebut merepresentasikan kegiatan tertentu. Penggunaan flowchart diawali dengan input dan diakhiri dengan output.
Flowchart digunakan untuk menjelaskan suatu gambaran pembacaan data, pemrosesan data, pengambilan keputusan terhadap data, dan penyajian hasil
pemrosesan data Yatini, 2010. Simbol-simbol flowchart standar dikeluarkan oleh ISO dan ANSI. Berikut adalah
simbol-simbol yang digunakan pada flowchart: