• Tidak ada hasil yang ditemukan

Perkiraan usaha pengembangan perangkat lunak menggunakan fuzzy - intermediate COCOMO

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perkiraan usaha pengembangan perangkat lunak menggunakan fuzzy - intermediate COCOMO"

Copied!
39
0
0

Teks penuh

(1)

PERKIRAAN USAHA PENGEMBANGAN PERANGKAT

LUNAK MENGGUNAKAN

FUZZY - INTERMEDIATE

COCOMO

AUSSIE KOMALA RANI

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR

(2)
(3)

PERNYATAAN MENGENAI SKRIPSI DAN

SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA

Dengan ini saya menyatakan bahwa skripsi berjudul Perkiraan Usaha Pengembangan Perangkat Lunak Menggunakan Fuzzy - Intermediate COCOMO adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini.

Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor.

Bogor, Agustus 2014

Aussie Komala Rani

(4)

ABSTRAK

AUSSIE KOMALA RANI. Perkiraan Usaha Pengembangan Perangkat Lunak Menggunakan Fuzzy - Intermediate COCOMO. Dibimbing oleh IRMAN HERMADI.

Memprediksi biaya (atau usaha) pengembangan perangkat lunak adalah bagian yang paling menantang dalam proyek pengembangan perangkat lunak. Keberhasilan proyek dapat diprediksi sebelumnya baik dari perencanaan dan proses penjadwalan. Prediksi diukur dalam istilah person month yang diperlukan untuk mengembangkan proyek. Penelitian ini menggunakan logika fuzzy dan

Constructive Cost Model (COCOMO) model dengan tiga variasi fungsi keanggotaan (MF), yaitu trapesium (MF1), berbentuk lonceng (MF2), dan kombinasi trapesium dan berbentuk lonceng (MF3). Data set yang digunakan dikumpulkan dari NASA yang terdiri atas 102 proyek dari tahun 1971 sampai 1990. Beberapa ukuran evaluasi yang digunakan adalah Mean Magnitude of Relative Error (MMRE) dan Magnitude of Relative Error (MRE) untuk mengukur keakuratan prediksi. Percobaan ini menghasilkan MMRE untuk MF1 65,51%, 92,74% MF2, dan MF3 163,36%. Meskipun MF2 memiliki MRE terkecil, yaitu, 0%, MF1 memiliki akurasi terbaik.

Kata kunci: perkiraan usaha perangkat lunak, COCOMO, logika fuzzy, fungsi keanggotaan

ABSTRACT

AUSSIE KOMALA RANI. Software Development Effort Estimation Using Fuzzy – Intermediate COCOMO. Supervised by IRMAN HERMADI.

Predicting software developmentcost (or effort) is the most challenging part in software development project. The success of a project can be predicted earlier from both planning and scheduling processes. The prediction is measured in term of person month that is required to develop the project. This research used fuzzy logic and Constructive Cost Model (COCOMO) model with three variations of membership function (MF), i.e. trapezoidal (MF1), bell-shaped (MF2), and combination of trapezoidal and bell-shaped (MF3). The dataset used is collected from NASA that consists of 102 projects from 1971 to 1990. Some evaluation measures used are Mean Magnitude of Relative Error (MMRE) and Magnitude of Relative Error (MRE) to measure the accuracy of the prediction. The experiments resulted MMRE for MF1 65.51%, MF2 92.74%, and MF3 163.36%. While MF2 has the least MRE, i.e., 0%, MF1 has the best accuracy.

(5)

Skripsi

sebagai salah satu syarat untuk memperoleh gelar Sarjana Ilmu Komputer

pada

Departemen Ilmu Komputer

PERKIRAAN USAHA PENGEMBANGAN PERANGKAT

LUNAK MENGGUNAKAN

FUZZY - INTERMEDIATE

COCOMO

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR

BOGOR 2014

(6)
(7)

Judul Skripsi : Perkiraan Usaha Pengembangan Perangkat Lunak Menggunakan

Fuzzy - Intermediate COCOMO Nama : Aussie Komala Rani

NIM : G64100080

Disetujui oleh

Irman Hermadi, SKomp MSc PhD Pembimbing I

Diketahui oleh

Dr Ir Agus Buono, MSi MKom Ketua Departemen

(8)

PRAKATA

Alhamdulillah hirobil alamin, puji dan syukur penulis panjatkan kepada Allah S.W.T. atas segala karunia dan rahmat-Nya sehingga tugas akhir dengan judul Perkiraan Usaha Pengembangan Perangkat Lunak Menggunakan Fuzzy - Intermediate COCOMO dapat diselesaikan.

Terima kasih penulis ucapkan kepada semua pihak yang telah membantu dalam penelitian ini, antara lain kepada orang tua penulis Almarhum Bapak Prof Dr Komari, MSc, Ibu Dr Astuti Lamid, MCN, dan Adini Alvina atas kasih sayang, dukungan dan doa yang terus mengalir, serta Bapak Irman Hermadi, SKom MSc PhD selaku pembimbing pertama atas bimbingan dan arahannya selama penelitian dan penyusunan skripsi.

Penulis juga mengucapkan terimakasih kepada Aries Fitriawan, Diba Safitri, Asfi Rohyani Latifah atas semangat, motivasi, kesabaran, dan bantuannya dalam senang maupun susah, teman-teman satu bimbingan Bayu, Adit, Uki, dan Umam atas kebersamaan dan bantuan selama bimbingan, serta Nurul, Laura dan Arin yang telah bersedia menjadi pembahas seminar. Terima kasih juga penulis ucapkan kepada Dwi, Colin, Ajeng dan teman-teman Ilmu Komputer 47 semuanya, serta kepada pihak-pihak lain yang telah membantu penulisan skripsi ini.

Bogor, Agustus 2014

(9)

DAFTAR ISI

DAFTAR TABEL vi

DAFTAR GAMBAR vi

DAFTAR LAMPIRAN vi

PENDAHULUAN 1

Latar Belakang 1

Perumusan Masalah 2

Tujuan Penelitian 2

Manfaat Penelitian 2

Ruang Lingkup Penelitian 2

METODE 3

Studi Pustaka 4

Pengumpulan Data 4

Identifikasi variabel 5

Fuzzy - Intermediate COCOMO 6

Evaluasi 7

HASIL DAN PEMBAHASAN 7

Pengumpulan Data 7

Identifikasi variabel 8

Fuzzy – Intermediate COCOMO 9

Evaluasi 9

SIMPULAN DAN SARAN 11

Simpulan 11

Saran 11

DAFTAR PUSTAKA 12

LAMPIRAN 13

(10)

DAFTAR TABEL

1. COCOMO cost drivers 5

2. Koefisien mode pengembangan proyek 6

3. Effortmultipliers COCOMO cost drivers 8

4. Hasil evaluasi 10

DAFTAR GAMBAR

1 Metode Penelitian 3

2 Perbedaan nilai MMRE dari ketiga perlakuan penelitian 11

DAFTAR LAMPIRAN

1. Fungsi keanggotaan trapezoidalcost drivers 13 2. Daftar titik fungsi keanggotaan trapezoidalcost drivers 14 3. Fungsi keanggotaan bell-shaped cost drivers 16 4. Daftar titik fungsi keanggotaan bell-shapedcost drivers 17 5. Fungsi keanggotaan trapezoidal dan bell-shaped cost drivers 19 6. Daftar titik fungsi keanggotaan trapezoidal dan bell-shapedcost drivers 20

7. Contoh perhitungan Intermediate COCOMO 22

(11)

PENDAHULUAN

Latar Belakang

Memperkirakan pengerjaan proyek yang masih dalam pengembangan merupakan tugas yang paling menantang dalam manajemen proyek (Malik et al. 2013). Pada tahun 2012, studi tingkat keberhasilan proyek menunjukkan bahwa terdapat 39% proyek sukses (tepat waktu, sesuai anggaran, dan dengan fitur dan fungsi yang diperlukan), 43% proyek terhambat (terlambat, melebihi anggaran, dengan kurang dari fitur yang diperlukan dan fungsi), dan 18% proyek gagal (dibatalkan sebelum selesai atau disampaikan dan tidak pernah digunakan) (SGI 2012). Studi tersebut menegaskan bahwa suatu proyek dapat dikatakan sukses jika perencanaan dan penjadwalan dilakukan dengan baik sehingga proyek perangkat lunak tidak melebihi anggaran ataupun melebihi tenggat waktu.

Proses memprediksi usaha yang dibutuhkan untuk menyelesaikan suatu proyek perangkat lunak merupakan hal yang dikerjakan dalam perkiraan usaha pengembangan perangkat lunak. Akan tetapi model perkiraan selalu berubah dikarenakan teknik pengembangan perangkat lunak yang selalu berkembang. Banyak model perkiraan usaha pengembangan perangkat lunak seperti Software Life Cycle Management (SLIM), CoStar, CostXpert, PRICE S, SEER, SoftCost, dan Constructive Cost Model (COCOMO). Penelitian ini menggunakan COCOMO karena model tersebut tidak proprietary, bebas untuk digunakan, dan relatif mudah untuk dipelajari dan dioperasikan.

COCOMO merupakan model perkiraan usaha perangkat lunak berbasis regresi yang dibuat oleh Boehm (Boehm et al. 2000). Model COCOMO transparan, sehingga orang dapat melihat cara kerjanya tidak seperti model lain (Merlo-Schett 2002). Akan tetapi akurasi COCOMO masih jauh dari yang diharapkan oleh pengembang proyek, yaitu mendekati usaha aktual pengembangan sebuah proyek.

Oleh karena itu, banyak penelitian yang dilakukan guna meningkatkan akurasi COCOMO. Penelitian sebelumnya dilakukan oleh Mulyadi (2008) dengan membandingkan Intermediate COCOMO dan Fuzzy Intermediate COCOMO menggunakan fungsi keanggotaan trapezoidal. Data yang digunakan adalah data NASA pada tahun 1980 hingga 1990. Hasil pengujian menunjukkan bahwa pendekatan terbaik adalah melalui pendekatan Fuzzy Intermediate COCOMO dibandingkandengan Intermediate COCOMO.

Logika fuzzy merupakan metodologi untuk menyelesaikan masalah yang terlalu rumit untuk dipahami secara kuantitatif, berdasarkan teori fuzzy set, yang dikenalkan oleh Prof. Zadeh pada tahun 1965 (Zadeh 1965). Metode ini merepresentasikan variabel linguistik dengan baik yang mampu mewakili data masukan dan keluaran dibandingkan dengan pendekatan lainnya seperti, neuro networks atau genetic algorithms.

(12)

2

perlakuan dalam penelitian guna melihat model yang menghasilkan akurasi terbaik untuk perkiraan usaha pengembangan perangkat lunak dengan COCOMO.

Perumusan Masalah

Perkiraan usaha pengembangan perangkat lunak dengan COCOMO memiliki akurasi yang masih jauh jika dibandingkan dengan usaha nyata yang dilakukan. Penelitian ini menggunakan logika fuzzy yang diaplikasikan pada

Intermediate COCOMO untuk mendapatkan akurasi yang lebih baik.

Logika fuzzy memiliki fungsi keanggotaan untuk merepresentasikan variabel secara linguistik. Seperti fungsi keanggotaan bell-shaped dan trapezoidal yang keduanya memiliki batas atas. Akan tetapi, fungsi keanggotaan bell-shaped

memiliki satu parameter lebih dari fungsi keanggotaan trapezoidal, sehingga dapat mendekati non-fuzzy set jika parameter bebas disesuaikan.

Untuk mendapatkan akurasi yang paling baik, dalam penelitian terdapat tiga perlakuan. Dari ketiga perlakuan tersebut diharapkan menghasilkan sebuah model yang terbaik untuk memprediksi usaha yang dibutuhkan dalam pengembangan perangkat lunak.

Tujuan Penelitian

Tujuan dari penelitian ini adalah memodelkan perkiraan usaha pengembangan perangkat lunak dengan Fuzzy - Intermediate COCOMO menggunakan fungsi keanggotaan bell-shaped dan trapezoidal. Penelitian ini juga membandingkan tingkat akurasi dari tiga perlakuan.

Manfaat Penelitian

Penelitian ini diharapkan dapat memberikan masukan dalam perkiraan usaha pengembangan perangkat lunak. Sehingga perkiraan usaha pengembangan perangkat lunak yang akan datang lebih baik dalam hal akurasi dan hasil perkiraan yang didapat.

Ruang Lingkup Penelitian

Ruang lingkup penelitian ini adalah sebagai berikut:

1 Data yang digunakan untuk pengujian metode Fuzzy - Intermediate COCOMO adalah kelompok data NASA yang merupakan 102 data proyek dari tahun 1971 hingga 1990.

(13)

3

METODE

Penelitian perkiraan usaha pengembangan perangkat lunak dilakukan dengan menggunakan beberapa tahapan. Tahapan-tahapan tersebut seperti studi pustaka, pengumpulan data, data set, identifikasi variabel, Fuzzy - Intermediate

COCOMO, evaluasi, dan hasil evaluasi seperti pada Gambar 1.

(14)

4

Studi Pustaka

COCOMO

COCOMO adalah model perkiraan biaya perangkat lunak berbasis regresi yang dibuat oleh Boehm (Boehm et al. 2000). Model ini merupakan model empiris yang berasal dari kumpulan data proyek perangkat lunak yang besar. Model COCOMO dapat digunakan untuk mengetahui usaha untuk menyelesaikan suatu proyek perangkat lunak.

Intermediate COCOMO

Intermediate COCOMO memakai perhitungan Basic COCOMO, tetapi terdapat 15 cost drivers yang dikategorikan dari ‘very low’ hingga ‘very high’

untuk menghitung effort multiplier (Merlo-Schett 2002). Penghitungan cost esimation diamati lebih detail dengan banyak faktor proyek seperti jumlah penyimpanan eksternal yang diperlukan, pengalaman programmer dalam tim, pengalaman dengan bahasa pemrograman dan implementasi, penggunaan tool

perangkat lunak, dan lain sebagainya.

Cost Drivers

Cost drivers adalah karakteristik dari pengembangan perangkat lunak yang mempengaruhi upaya dalam melaksanakan proyek tertentu. Cost drivers dipilih berdasarkan alasan bahwa cost drivers mempengaruhi usaha secara liniear. Anotasi oleh Boehm tahun 2000 adalah kemungkinan untuk menetapkan transisi peringkat kategori dan berat untuk effort multipliers. Effort multipliers selanjutnya diratakan untuk membentuk nilai rata-rata yang mencerminkan pada sosok yang lebih masuk akal. Semua cost drivers memiliki kategori, yaitu ‘very low’, ‘low’, ‘nominal’, ‘high’, dan ‘very high’ yang mengungkapkan dampak dari cost driver

dan effort multipliers yang sesuai. Kategori ‘nominal’ selalu memiliki effort multipliers bernilai 1,00 yang tidak mengubah usaha pembuatan perangkat lunak. (Merlo-Schett 2002)

Logika Fuzzy

Logika fuzzy adalah metodologi untuk menyelesaikan masalah yang terlalu rumit secara kuantitatif berdasarkan teori fuzzy set. Fuzzy set dalam ekspresi logika banyak dikenal sebagai logika fuzzy. Logika fuzzy banyak dipakai untuk merepresentasikan variabel dalam nilai liguistik dari data yang sulit dikategorikan seperti data yang berada di antara dua kategori berbeda. Data yang didapatkan direpresentasikan menggunakan fungsi keanggotaan yang memiliki tingkatan yang berbeda-beda.

Pengumpulan Data

(15)

5

Data set

Kumpulan data yang digunakan berupa data proyek pengembangan perangkat lunak. Terdapat dua kumpulan data yang dipakai di dalam penelitian, yaitu data-data NASA yang terdiri atas 93 data proyek dikumpulkan dari tahun 1971 hingga 1987 dan data proyek sebanyak 60 data yang dikumpulkan dari tahun 1980 hingga 1990. Tetapi pada data tahun 1980 hingga 1990 terdapat data yang

overlap. Sebelum perhitungan, data set dikonversi ke dalam fail Excel untuk memudahkan perhitungan.

Identifikasi variabel

Pada tahapan ini, data yang ada kemudian diidentifikasi untuk mendapatkan variabel-variabel penting bagi penelitian dan membuang variabel tidak penting.

Data set NASA memiliki 23 variabel, yaitu 15 jenis cost drivers, tujuh deskripsi proyek, jumlah baris kode program, dan usaha aktual pengembangan proyek. Penelitian ini hanya mengambil 15 jenis cost drivers, jumlah baris kode program, tipe proyek, dan usaha aktual pengembangan proyek.

CostDrivers

Perkiraan usaha pengembangan perangkat lunak disesuaikan dengan faktor

cost drivers yang mempengaruhi usaha pengembangan perangkat lunak. Cost drivers penelitian ini dibagi menjadi empat kategori (lihat Tabel 1).

Tabel 1 COCOMO cost drivers

No Kategori Cost Driver Simbol

Product

1 Required Software Reliability RELY 2 Data Base Size DATA 3 Process Complexity CPLX

Platform 9 Application Experience AEXP 10 Programmers Capability PCAP 11 Virtual Machine Experience VEXP 12 Language Experience LEXP

Project

(16)

6

Tipe proyek

Terdapat tiga mode pengembangan dasar, yaitu organic, semidetached, dan

embedded (Saliu 2003). Dalam COCOMO, mode organic terkait sistem dengan kompleksitas rendah, dikembangankan oleh tim kecil pembuat perangkat lunak.

Proyek perangkat lunak dengan mode embedded beroperasi dengan kendala yang ketat, seperti real-time system, sedangkan mode semidetached berada di atara organic dan embedded.

Setiap mode pengembangan memiliki nilai koefisien. Nilai koefisien setiap mode digunakan untuk menghitung perkiraan usaha pengembangan perangkat lunak (lihat Tabel 2).

Jumlah baris kode program

Ukuran jumlah baris kode program yang dipakai adalah Kilo Source Line of Code (KSLOC). Tujuannya adalah mengukur jumlah karya intelektual yang dimasukkan ke dalam pengembangan program (Merlo-Schett 2002). Jumlah baris kode program ini digunakan untuk menghitung perkiraan usaha yang dibutuhkan dalam menyelesaikan proyek perangkat lunak.

Fuzzy - Intermediate COCOMO

Penelitian dilakukan berdasarkan model Intermediate COCOMO dan logika

fuzzy dengan masukan data cost drivers, jumlah baris kode program, tipe proyek, dan usaha aktual pengembangan proyek.

Cost drivers merupakan faktor yang mempengaruhi perubahan usaha pada perkiraan usaha pengembangan perangkat lunak. Cost driver yang digunakan dalam penelitian ini berjumlah 15. Tetapi tidak semua cost driver akan didefinisikan menjadi fuzzy set.

Variabel masukan pada Fuzzy - Intermediate COCOMO diubah menjadi variabel fuzzy berdasarkan proses fuzzification. Data akan dihitung melalui fuzzy set dan diberikan tiga perlakuan, yaitu MF1, MF2, dan MF3. Setelah melewati salah satu dari tiga perlakuan, data akan dihitung dengan perhitungan Intermediate

COCOMO.

Sebelum memasuki perhitungan Intermediate COCOMO, untuk perlakuan MF1, data set akan diproses menggunakan fungsi keanggotaan trapezoidal.

Sedangkan pada MF2, data set akan diproses menggunakan fungsi keanggotaan

bell-shaped. Perlakuan MF3 menerapkan gabungan fungsi keanggotaan bell dan

trapezoidal. Dalam MF3, fungsi keanggotaan bell diaplikasikan untuk kategori ‘nominal’, sedangkan fungsi keanggotaan trapezoidal diaplikasikan untuk kategori ‘very low’, ‘low’, ‘high’, dan ‘very high’.

Tabel 2 Koefisien mode pengembangan proyek

No Mode A B

(17)

7 Pada fungsi keanggotaan trapezodial terdapat empat parameter yang dipakai, yaitu parameter a, b, c, dan d. Parameter a dan d merupakan titik ‘kaki’ dari trapezoidal, sedangkan parameter b dan c merupakan lokasi ‘punggung’ atau

puncak trapezoidal. Namun pada fungsi keanggotaan bell-shaped hanya diperlukan tiga parameter, yaitu parameter a yang menunjukkan lebar fungsi keanggotaan, parameter c merupakan pusat fungsi, dan parameter b yang biasanya positif.

Evaluasi

Usaha dalam model COCOMO digambarkan sebagai Person Months (PM). PM adalah usaha yang diperlukan seseorang atau sekelompok orang untuk menyelesaikan suatu proyek. Penelitian ini menggunakan Magnitude of Relative Error (MRE) dan Mean Magnitude of Relative Error (MMRE) dalam mengevaluasi hasil penelitian. Selain dua rumus tersebut, pada penelitian juga dilihat nilai maksimum, minimum, median, dan standar deviasi dari MRE.

M

MM N ∑ M i N

i

Hasil Evaluasi

Hasil MRE dari setiap proyek akan dihitung sebagai MMRE. Nilai MMRE perlakuan MF1, MF2, dan MF3 kemudian dibandingkan satu sama lain. Dari hasil analisis dapat ditarik kesimpulan perlakuan mana yang menghasilkan akurasi lebih baik dan mendekati usaha nyata pembuatan perangkat lunak.

HASIL DAN PEMBAHASAN

Pengumpulan Data

Pada tahap awal penelitian diputuskan akan memakai model COCOMO II, akan tetapi data scale factor tidak tersedia dalam situs PROMISE. Maka diputuskan agar penelitian ini memakai data COCOMO I, yaitu 93 data proyek dari tahun 1971 hingga 1987 dan 60 data proyek dari tahun 1980 hingga 1990. Jumlah data yang terkumpul adalah sebanyak 153 data proyek.

Data set

Data set yang dikumpulkan berupa data linguistik berupa kategori ‘very low’, ‘low’, ‘nominal’, ‘high’, dan ‘very high’. Untuk diproses kedalam Fuzzy – Intermediate COCOMO, data set terlebih dahulu diubah menjadi data nominal. Data nominal diperoleh dengan mengambil nilai puncak logika fuzzy (Idri et al.

(18)

8

‘low’ nilai nominal cost driver tersebut adalah nilai puncak cost driver pada logika fuzzy. Nilai puncak, yaitu nilai batas atas berada di antara 0 hingga 5, nilai nominalnya adalah nilai random di antara nilai tersebut.

Kumpulan data didapat dari tahun 1971 hingga 1990, tetapi pada data tahun 1980 hingga 1990 terdapat data yang overlap. Setelah melalui pengecekan ulang, dari 60 data jumlah sebanyak 9 data yang tidak overlap. Sehingga didapatkan jumlah data penelitian sebanyak 102 data proyek.

Identifikasi variabel

Pada penelitian ini terdapat 15 variabel dengan effort multipliers masing-masing memiliki nilai dari 0.70 hingga 1.46 (lihat Tabel 3) yang akan dikalikan dengan cost drivers. Effort multipliers dipelajari oleh Boehm pada tahun 1981 setelah analisis regresi proyek dalam kumpulan data COCOMO I.

Tabel 3 Effortmultipliers COCOMO cost drivers

No Cost Driver Very 4 Time Constraint for CPU

(TIME) 1.00 1.11 1.30 1.66

5 Main Memory Constraint

(STOR) 1.00 1.06 1.21 1.56 14 Use of Software Tools

(TOOL) 1.24 1.10 1.00 0.91 0.83

(19)

9 Akan tetapi tidak semua cost drivers didefinisikan dalam fuzzy sets karena

cost drivers tersebut hanya berupa sebuah deskripsi biasa (Saliu 2003). Cost drivers tersebut adalah RELY, CPLX, MODP, dan TOOL (Idri et al. 2000a). Sedangkan untuk jumlah baris kode program pada penelitian ini menggunakan

Kilo Size Line Of Code (KSLOC).

Fuzzy Intermediate COCOMO

Selanjutnya menentukan fungsi keanggotaan untuk proses fuzzyfication. Fungsi keanggotaan yang digunakan diambil dari jurnal Cost Model Using Fuzzy Logic (Idri et al. 2001). Pembuatan fungsi keanggotaan ini dibantu dengan Fuzzy Logic Toolbox dalam MATLAB. Fungsi keanggotaan dalam jurnal adalah fungsi keanggotaan trapezoidal (lihat Lampiran 1). Pada grafik fungsi keanggotaan digambarkan range setiap cost drivers. Titik-titik fungsi keanggotaan berbeda-beda setiap cost drivers (lihat Lampiran 2). Perlakuan dengan fungsi keanggotaan

trapezoidal merupakan perlakuan MF1.

Penelitian ini akan membandingkan penggunaan fungsi keanggotaan

trapezoidal dengan fungsi keanggotaan bell-shaped. Untuk perlakuan MF2 menggunakan fungsi keanggotaan bell-shaped. Fungsi keanggotaan bell-shaped

didapatkan dengan bantuan MATLAB dengan mengubah trapezoid sehingga didapatkan titik-titik bell-shaped dan grafik fungsinya. Fungsi keanggotaan bell-shaped dibuat dengan melihat pendekatan interval yang memiliki kemiripan dengan fungsi keanggotaan trapezoidal (lihat Lampiran 3).

Pada bell-shaped, jumlah titik yang digunakan berbeda dengan trapezoidal. Fungsi keanggotaan trapezoidal menggunakan empat titik untuk membuat grafik sedangkan bell-shaped hanya membutuhkan tiga titik (lihat Lampiran 4).

Perlakuan terakhir, yaitu MF3 merupakan gabungan fungsi keanggotaan

trapezoidal dan bell-shaped (lihat Lampiran 5). Perlakuan ini bertujuan untuk mencari model yang terbaik. Untuk kategori ‘nominal’ digunakan fungsi keanggotaan bell-shaped, sedangkan kategori ‘very low’, ‘low’, ‘high’, dan ‘very high’ digunakan fungsi keanggotaan trapezoidal. Untuk MF3 dipilih kategori ‘nominal’ pada cost drivers untuk diubah menjadi fungsi bell-shaped dengan pertimbangan bahwa kategori ‘nominal’ memliki interval yang lebar. Titik-titik yang digunakan pada perlakuan MF3 dapat dilihat pada Lampiran 6.

Data yang telah masuk diproses dengan logika fuzzy akan dihitung dengan perhitungan Intermediate COCOMO, contoh perhitungan Intermediate COCOMO dapat dilihat pada Lampiran 7. Setelah hasil perkiraan usaha didapatkan untuk setiap perlakuan maka akan diukur keakuratannya.

Evaluasi

(20)

10

MRE setiap perlakuan dapat dilihat pada Gambar 2. Penelitian ini memakai nilai

threshold sebesar 20% (Idri et al. 2000b). Dari grafik nilai MRE pada perlakuan MF1, hanya 32 proyek yang memenuhi nilai threshold. Sedangkan pada MF2 terdapat 17 proyek dan MF3 tidak ada proyek yang memenuhi threshold. Tetapi sebagian besar proyek tidak memenuhi threshold yang ditentukan.

Semakin kecil nilai MRE maka hasil perkiraan usaha perangkat lunak semakin mendekati nilai usaha aktual. Untuk mengukur keakuratan terhadap data set maka dipakailah rata-rata nilai MRE (MMRE) pada ketiga perlakuan. Hasil penelitian dari ketiga perlakuan dapat dilihat pada Tabel 4. Nilai MMRE perlakuan MF1 terkecil dibanding perlakuan lain. Maka perlakuan MF1 mempunyai hasil perkiraan yang lebih baik. Nilai maksimum dan standar deviasi MRE perlakuan MF1 juga lebih bagus dibanding perlakuan MF2 dan MF3. Contoh perhitungan evaluasi MRE dapat dilihat pada Lampiran 9.

Gambar 2 Perbandingan nilai MRE setiap perlakuan 0

(21)

11 Hasil Evaluasi

Pembandingan perlakuan dari nilai MMRE didapatkan bahwa MF1 memiliki nilai terkecil, kemudian MF2 dengan perbedaan 27.23% dan MF3 dengan nilai MMRE terbesar (lihat Gambar 3). Grafik tersebut menggambarkan tingkat akurasi MF1 lebih tinggi dibanding dua perlakuan lainnya. Karena jika nilai MMRE semakin tinggi maka perbedaan hasil perkiraan semakin jauh dengan nilai aktual usaha.

Perlakuan MF1 memiliki nilai minimum MRE sebesar 0.02% tetapi perlakuan MF2 memiliki nilai minimum MRE lebih kecil, yaitu 0%. Perbandingan presentase nilai minimum MRE memperlihatkan bahwa MF2 dapat menjangkau data lebih baik, walaupun begitu MF1 memiliki hasil yang baik dalam perhitungan MRE secara keseluruhan.

SIMPULAN DAN SARAN

Simpulan

Setelah dilakukannya percobaan dengan menggunakan perlakuan MF1, MF2 dan MF3. Hasil yang diperoleh bahwa MF1 merupakan perlakuan lebih baik dibanding MF2 dan MF3. Karena nilai MF1 memiliki nilai MMRE terkecil di antara perlakuan lainnya. Sedangkan pada poin minimum MRE, MF2 memiliki nilai terkecil 0% dibanding MF2 dan MF3. Dapat ditarik kesimpulan bahwa fungsi keanggotaan trapezoidal memberikan akurasi yang lebih bagus dibanding menggunakan bell-shaped. Tetapi bell-shaped memiliki hasil nilai MRE terkecil.

Saran

Semakin cepatnya pertumbuhan teknologi menyebabkan semakin banyak metode dan logika baru yang lebih efektif dalam menyelesaikan sebuah permasalahan. Penelitian selanjutnya diharapkan bekerjasama dengan institusi-institusi penyedia data NASA untuk menguji model perkiraan usaha. Penelitian baru juga diharapkan dapat memberikan data yang lebih baru.

Gambar 3 Perbedaan nilai MMRE dari ketiga perlakuan penelitian

(22)

12 223; [diunduh 2014 Mar 26]. Tersedia pada: http://publicationslist. org/data /a.abran/ref-1933/465.pdf

Idri A, Abran A, Khoshgoftaar TM. 2000b. Fuzzy case-based reasoning models for software cost estimation. Soft Computing in Software Engineering: Studies in Fuzziness and Soft Computing. [Internet]. [diunduh 2014 April 20]; 159: 64-96. Tersedia pada: http://publicationslist.org/data/a.abran/ref-2062/803.pdf

Idri A, Abran A. 2001. La Logique Appliquee Aux Modeles d’ stimation de Development de Logiciels Cas du Modele COCOMO’81. IEEE Computer Society. [Internet]. [diacu 2014 Jan 5]. Tersedia pada: http://s3.amazonaws. com/publicationslist.org/data/a.abran/ref-1920/560.pdf

Malik A, Pandrey V, Kaushik A. 2013. An analysis of fuzzy approaches for COCOMO II. IJ Intelligent Systems and Applications. 05: 68-75. doi: 10.5815/ijisa.2013.05.08.

Menzies T, Caglayan B, Kocaguneli E, Krall J, Peters F, and Turhan B. 2012. The PROMISE Repository of empirical software engineering data.West Virginia University, Department of Computer Science. [Internet]. [diunduh 2013 Okt 19]. Tersedia pada: http://promisedata.googlecode.com

Merlo-Schett N. 2002. COCOMO (Constructive Cost Model). Seminar on Cost Estimation WS 02/03. Zurich (CH): University of Zurich. [Internet]. [diacu 2014 Okt 19]. Tersedia pada: http://ifi.uzh.ch/req/courses/seminar_ws02/ reports/Seminar_4.pdf.

Mulyadi DS. 2008. Perkiraan biaya perangkat lunak menggunakan logika fuzzy

[skripsi]. Bogor (ID): Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor

Saliu MO. 2003. Adaptive Fuzzy Logic Based Framework For Software Development Effort Prediction [thesis]. Dhahran (SA): King Fahd University of Petroleum & Minerals.

(23)

13 Lampiran 1 Fungsi keanggotaan trapezoidalcost drivers

(Idri et al. 2001)

DATA TIME

STOR ACAP

PCAP TURN

AEXP VIRT

SCED VEXP

(24)

14

Lampiran 2 Daftar titik fungsi keanggotaan trapezoidalcost drivers

No. Cost Drivers Kategori Titik fungsi keanggotaan trapezoidal

(25)

15

Lampiran 2 Lanjutan

No. Cost Drivers Kategori Titik fungsi keanggotaan trapezoidal

[a b c d]

10 LEXP Very low [0 0 0.5 1]

Low [0.5 1 2.5 4]

Nominal [2.5 4 8 12]

High [8 12 36 36]

11 SCED Very low [0 0 37.5 75]

Low [37.5 75 80 85]

Nominal [80 85 92.5 100]

High [92.5 100 115 130]

Very high [115 130 160 160]

(26)

16

Lampiran 3 Fungsi keanggotaan bell-shaped cost drivers

DATA TIME

STOR ACAP

PCAP AEXP

ACED VEXP

LEXP TURN

(27)

17 Lampiran 4 Daftar titik fungsi keanggotaan bell-shapedcost drivers

(28)

18

Lampiran 4 Lanjutan

No. Cost Drivers Kategori Titik fungsi keanggotaan bell-shaped [a b c]

10 LEXP Very low [0.72 3.6 -0.01]

Low [3.54 9.9 6.41]

Nominal [13.8 17.25 23.8] High [1.20 10.5 2.08] 11 SCED Very low [34.21 3.94 20.6]

Low [6.37 6.37 88.88]

(29)

19 Lampiran 5 Fungsi keanggotaan trapezoidal dan bell-shaped cost drivers

DATA TIME

STOR ACAP

PCAP AEXP

ACED VEXP

LEXP TURN

(30)

20

Lampiran 6 Daftar titik fungsi keanggotaan trapezoidal dan bell-shapedcost drivers

No Cost Drivers Kategori Fungsi

keanggotaan Titik fungsi keanggotaan

(31)

21 Lampiran 6 Lanjutan

No. Cost Drivers Kategori Fungsi

keanggotaan Titik fungsi keanggotaan High Trapezoidal [8 12 36 36]

10 LEXP Very low Trapezoidal [0 0 0.5 1] Low Trapezoidal [0.5 1 2.5 4] Nominal Bell-shaped [13.8 17.25 23.8] High Trapezoidal [8 12 36 36] 11 SCED Very low Trapezoidal [0 0 37.5 75]

(32)

22

Lampiran 7 Contoh perhitungan Intermediate COCOMO Proyek 1

No. Cost Driver Kategori Effort Multipliers

1 RELY High 1,15

Jumlah Baris Kode Program (KLSOC) = 25,9

Usaha aktual pengembangan proyek = 117,6

Misalkan dari contoh data proyek di atas akan dihitung nilai usaha menggunakan model Intermediate COCOMO

Effort Adjustment Factor (EAF) = 1,15 x 0,94 x 1,15 x 1,00 x 1,00 x 0,87 x 0,87 x 1,00 x 1,00 x 1,00 x 1,00 x 1,00 x 0,91 x 1,00 x 1,08

=

0.925

Effort Adjustment Factor

(Effort) = EAF x Koef A x KSLOC

Koef B = 0.925 x 3 x 25,91,12

(33)

23 Lampiran 8 Nilai Magnitude of Relative Error (MRE) pada tiga perlakuan

(34)
(35)

25 Lampiran 8 Lanjutan

No. MF1 MF2 MF3

84 65,94 29,49 100,00

85 14,89 22,24 98,60

86 34,40 16,40 99,69

87 32,83 25,90 88,96

88 44,03 33,69 99,99

89 83,99 84,62 100,00

90 34,48 26,08 99,96

91. 41,14 98,64 100,00 92 638,09 624,98 100,00

93 2,46 4,52 100,00

94 53,50 146,38 100,00 95 7,04 235,09 100,00 96 7,16 130,89 100,00 97 100,00 30,89 100,00 98 41,47 19,17 100,00

99 0,80 59,95 100,00

(36)

26

Lampiran 9 Contoh perhitungan evaluasi Magnitude of Relative Error (MRE) Data untuk perhitungan MRE diambil dari contoh kasus Lampiran 7.

Nilai usaha aktual pengembangan project = 117.6 person per month

Nilai perhitungan perkiraan usaha Fuzzy - Intermediate COCOMO = 106,208

person per month

| | ... (1) Berdasarkan rumus (1), maka

| |

| |

MRE = 0.0969

Dari hasil perhitungan, didapatkan nilai MRE sebesar 9.69%

MMRE didapatkan apabila ada sekumpulan data hasil perhitungan MRE, dimisalkan sebuah array berisi sekumpulan data hasil perhitungan MRE yang didefinisikan seperti di bawah ini.

dataMRE = [0.1131 0.432 0.322 0.065 0.021 0.5326 0.4322 0.54311] Sedangkan rumus MMRE didefinisikan sebagai berikut

(37)

27 Lampiran 9 Lanjutan

Berdasarkan rumus (2), maka

Dari hasil perhitungan, didapatkan nilai Mean MRE sebesar 30.76%

Untuk mendapatkan nilai minimum MRE dan maksimum MRE dapat dicari dengan cara melihat nilai minimum dan maksimum di dalam elemen array.

Minimum MRE = min (dataMRE) ... (3)

Minimum MRE = 0.021

Maximmum MRE = max (dataMRE) ... (4)

Maximmum MRE = 0.54311

Untuk mendapatkan nilai standar deviasi MRE dicari dengan melihat dari standar deviasi data

√ ∑ ... (5)

(38)

28

Lampiran 9 Lanjutan

(39)

29

RIWAYAT HIDUP

Gambar

Gambar 1  Metode Penelitian
Tabel 1  COCOMO cost drivers
Tabel 2  Koefisien mode pengembangan proyek
Tabel 3  Effort multipliers COCOMO cost drivers
+3

Referensi

Dokumen terkait

Pernyataan ini didukung oleh Penelope Brown, 1990 yang menjelaskan ada tiga alasan kesantunan berbahasa terjadi, yaitu: (1) karena hubungan sosial lebih superior

Latar belakang diatas kemudian menjadi sebuah permasalahan yang akan diteliti dalam penulisan skripsi dengan judul “Analisis Pola Dialog dalam Scene Parallel

Penelitian ini didasarkan pada metode deskriptif kualitatif dan kuantitatif, yang bertujuan untuk mengumpulkan data siswa agar dapat Mengetahui kemampuan siswa

Keunggulan kompetitif perusahaan juga merupakan bagian dari aspek kinerja perusahaan yang perlu menjadi perhatian dalam suatu proses yang dinamis yang

Merupakan tampilan untuk pemeriksaan diagnosa penyakit pada pasien, dan untuk menindak lanjuti penyakit pasien, form pemeriksaan akan menentukan kemana pasien akan

pengendalian pencemaran air secara terpadu yang dilakukan dengan cara optimasi pemanfaatan airnya dengan sistem yang terkoordinasi secara baik dalam melibatkan berbagai

Dari kenyataan di atas, dapat dipahami bahwa Allah telah meletakkan prinsip dasar dengan memberikan petunjuk yang jelas lewat al-Qur’an, agar seseorang tidak

Demikian halnya terhadap industri metil merkaptan yang banyak digunakan untuk pembuatan produk lain, seperti bahan baku pembuatan metionin, bahan bakar jet, dan