PERKIRAAN USAHA PENGEMBANGAN PERANGKAT LUNAK MENGGUNAKAN FUZZY - INTERMEDIATE COCOMO
AUSSIE KOMALA RANI
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2014
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 NIM G64100080
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 development cost (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. Keywords: software effort estimation, COCOMO, fuzzy logic, membership function
PERKIRAAN USAHA PENGEMBANGAN PERANGKAT LUNAK MENGGUNAKAN FUZZY - INTERMEDIATE COCOMO
AUSSIE KOMALA RANI
Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Ilmu Komputer pada Departemen Ilmu Komputer
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2014
Penguji : Ir Meuthia Rachmaniah, MSc Rina Trisminingsih, SKom MT
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
Tanggal Lulus:
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 Aussie Komala Rani
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
RIWAYAT HIDUP
29
DAFTAR TABEL 1. 2. 3. 4.
COCOMO cost drivers Koefisien mode pengembangan proyek Effort multipliers COCOMO cost drivers Hasil evaluasi
5 6 8 10
DAFTAR GAMBAR 1 Metode Penelitian 2 Perbedaan nilai MMRE dari ketiga perlakuan penelitian
3 11
DAFTAR LAMPIRAN 1. 2. 3. 4. 5. 6. 7. 8. 9.
Fungsi keanggotaan trapezoidal cost drivers Daftar titik fungsi keanggotaan trapezoidal cost drivers Fungsi keanggotaan bell-shaped cost drivers Daftar titik fungsi keanggotaan bell-shaped cost drivers Fungsi keanggotaan trapezoidal dan bell-shaped cost drivers Daftar titik fungsi keanggotaan trapezoidal dan bell-shaped cost drivers Contoh perhitungan Intermediate COCOMO Nilai Magnitude of Relative Error (MRE) pada tiga perlakuan Contoh perhitungan evaluasi Magnitude of Relative Error (MRE)
13 14 16 17 19 20 22 23 26
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 dibandingkan dengan 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. Metode fuzzy memiliki banyak fungsi keanggotaan dengan karakteristik yang unik. Seperti fungsi keanggotaan bell-shaped dan trapezoidal yang keduanya memiliki batas atas. Penelitian ini mengaplikasikan logika fuzzy dengan fungsi keanggotaan bell-shaped dan trapezoidal pada COCOMO. Terdapat tiga
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. 2 Atribut yang dipakai adalah 15 jenis cost drivers COCOMO, jumlah baris kode program, tipe proyek, dan usaha aktual pengembangan proyek.
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.
Gambar 1 Metode Penelitian
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 Data yang dipakai adalah data NASA yang diperoleh melalui situs PROMISE (Menzies et al. 2012). Penelitian ini memakai situs PROMISE karena situs tersebut menyediakan data untuk eksperimen software engineering.
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. Cost Drivers 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 Product
1 2 3
Cost Driver
Simbol
Required Software Reliability Data Base Size Process Complexity
RELY DATA CPLX
Time Constraint for CPU Main Memory Constraint Machine Volatility Turnaround Time
TIME STOR VIRT TURN
Analyst Capability Application Experience Programmers Capability Virtual Machine Experience Language Experience
ACAP AEXP PCAP VEXP LEXP
Platform 4 5 6 7 Personnel 8 9 10 11 12 Project 13 14 15
Modern Programinimumg Practices MODP Use of Software Tools TOOL Schedule Constraint SCED
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). Tabel 2 Koefisien mode pengembangan proyek No 1. 2. 3.
Mode Organic Semidetached Embedded
A 3.2 3.0 2.8
B 1.05 1.12 1.20
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’.
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
N
∑ M i
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. 2001) setiap cost driver. Contohnya untuk cost driver proyek A dengan kategori
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 masingmasing 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 Effort multipliers COCOMO cost drivers No 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Cost Driver Required Software Reliability (RELY) Data Base Size (DATA) Process Complexity (CPLX) Time Constraint for CPU (TIME) Main Memory Constraint (STOR) Machine Volatility (VIRT) Turnaround Time (TURN) Analyst Capability (ACAP) Application Experience (AEXP) Programmers Capability (PCAP) Virtual Machine Experience (VEXP) Language Experience (LEXP) Modern Programinimumg Practices (MODP) Use of Software Tools (TOOL) Schedule Constraint (SCED)
Very Low
Low
Normal
High
Very Extra High High
0.75
0.88
1.00
1.15
1.40
0.70
0.94 0.85
1.00 1.00
1.08 1.15
1.16 1.30
1.65
1.00
1.11
1.30
1.66
1.00
1.06
1.21
1.56
1.46
0.87 0.87 1.19
1.00 1.00 1.00
1.15 1.07 0.86
1.30 1.15 0.71
1.29
1.13
1.00
0.91
0.82
1.42
1.17
1.00
0.86
0.70
1.21
1.10
1.00
0.90
1.14
1.07
1.00
0.95
1.24
1.10
1.00
0.91
0.82
1.24
1.10
1.00
0.91
0.83
1.23
1.08
1.00
1.04
1.10
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 berbedabeda 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 bellshaped 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 Hasil perkiraan usaha pengembangan proyek akan dibandingan dengan usaha aktual proyek. Untuk mengukur keakuratan perkiraan usaha yang diajukan maka penelitian ini menggunakan MRE. MRE melihat seberapa mendekatinya hasil perkiraan usaha dengan usaha aktualnya. Semakin kecil nilai MRE semakin bagus hasil perkiraan usaha tersebut (lihat Lampiran 8). Grafik perbandingan nilai
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. Tabel 4 Hasil evaluasi No Perlakuan MF1 MF2 MF3
Min MRE (%) 0.02 0.00 70.12
Maks MRE (%) 1014.53 1039.62 5316.87
Standar deviasi MRE (%) 132.30 139.55 526.91
600 MF1 500
MF2 MF3
400
Threshold
300 200 100 0 1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96 101
MRE (%)
1 2 3
MMRE (%) 65.51 92.74 163.36
Urutan Proyek Gambar 2 Perbandingan nilai MRE setiap perlakuan
11
Mean MRE (%)
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. 200
163.36
150 100
92.74 65.51
50 0 MF1
MF2 Perlakuan
MF3
Gambar 3 Perbedaan nilai MMRE dari ketiga perlakuan penelitian
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 institusiinstitusi penyedia data NASA untuk menguji model perkiraan usaha. Penelitian baru juga diharapkan dapat memberikan data yang lebih baru.
12
DAFTAR PUSTAKA Boehm BW, Abts C, Culani S. 2000. Software development cost estimation approaches-A survey. Ann. Software Eng. 10: 177-205. doi: 10.1023/A:1018991717352. Idri A, Kjiri L, Abran A. 2000a. COCOMO Cost model using fuzzy logic. Proceedings of the 7th International conference on Fuzzy theory and Technology [Internet]. [2000 Feb 27 – Mar 3; Atlantic City, NJ]. pp. 219223; [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/ref2062/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. [SGI] The Standish Group International. 2013. CHAOS MANIFESTO 2013. The Standish Group International. [Internet]. [diacu 2014 Jan 20]. Tersedia pada: http://www.versionone.com/assets/img/files/CHAOSManifesto2013.pdf Zadeh LA. 1965. Fuzzy sets. Information and Control. 8: 338-353.
13 Lampiran 1 Fungsi keanggotaan trapezoidal cost drivers
DATA
TIME
STOR
ACAP
PCAP
TURN
AEXP
VIRT
SCED
VEXP
LEXP
(Idri et al. 2001) (Idri et al. 2001b).
14 Lampiran 2 Daftar titik fungsi keanggotaan trapezoidal cost drivers No.
Cost Drivers
Kategori
1
DATA
2
TIME
3
STOR
4
VIRT
5
TURN
6
ACAP
7
AEXP
8
PCAP
9
VEXP
Low Nominal High Very High Nominal High Very high Extreme high Nominal High Very high Extreme high Low Nominal High Very high Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High
Titik fungsi keanggotaan trapezoidal [a b c d] [0 0 5 10] [5 10 55 100] [55 100 550 1000] [550 1000 1100 1100] [0 0 25 50] [25 50 60 70] [60 70 77.5 85] [77.5 85 95 95] [0 0 25 50] [25 50 60 70] [60 70 77.5 85] [77.5 85 95 95] [0 0 7.5 15] [7.5 15 37.2 60] [37.5 60 120 180] [120 180 365 365] [0 0 0 1] [3 4 8 12] [8 12 20 20] [0 1 3 4] [0 0 7.5 15] [7.5 15 25 35] [25 35 45 55] [45 55 65 75] [65 75 90 90] [0 0 2 4] [2 4 8 12] [8 12 24 36] [24 36 54 72] [54 72 144 144] [0 0 7.5 15] [7.5 15 25 35] [25 35 45 55] [45 55 65 75] [65 75 90 90] [0 0 0.5 1] [0.5 1 2.5 4] [2.5 4 8 12] [8 12 36 36]
15 Lampiran 2 Lanjutan No.
Cost Drivers
Kategori
10
LEXP
11
SCED
Very low Low Nominal High Very low Low Nominal High Very high
(Idri et al. 2001)
Titik fungsi keanggotaan trapezoidal [a b c d] [0 0 0.5 1] [0.5 1 2.5 4] [2.5 4 8 12] [8 12 36 36] [0 0 37.5 75] [37.5 75 80 85] [80 85 92.5 100] [92.5 100 115 130] [115 130 160 160]
16 Lampiran 3 Fungsi keanggotaan bell-shaped cost drivers
DATA
TIME
STOR
ACAP
PCAP
AEXP
ACED
VEXP
LEXP
TURN
VIRT
17 Lampiran 4 Daftar titik fungsi keanggotaan bell-shaped cost drivers No. Cost Drivers
Kategori
1
DATA
2
TIME
3
STOR
4
VIRT
5
TURN
6
ACAP
7
AEXP
8
PCAP
9
VEXP
Low Nominal High Very High Nominal High Very high Extreme high Nominal High Very high Extreme high Low Nominal High Very high Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High
Titik fungsi keanggotaan bell-shaped [a b c] [2.75 5 2.75] [39.7 27 57.83] [351.83 7.13 511] [252.5 2.80 1028] [23.5 3.58 11.04] [9.67 2.45 47] [8.62 4.31 73.63] [8.38 3.35 91.36] [23.5 3.58 11.03] [8.62 4.31 73.63] [8.38 3.35 91.35] [9.67 2.45 47] [14.7 5.01 -3.59] [49.9 4.92 104.45] [120 6.96 274.82] [21.9 10.4 32.69] [1.09 6.86 -0.53] [3.19 5.49 6.78] [5.8 7.25 15.8] [1.5 7.5 2.05] [7.89 3.21 2.70] [10.6 5.53 40] [9.83 4.44 60.3] [8.79 3.59 20.1] [12.6 5.35 83] [3.28 2.58 -0.42] [9.6 3.96 19.2] [44.1 9.71 105.47] [3.1 2.78 6.48] [15.5 5.83 44.49] [7.89 3.21 2.70] [10.6 5.53 40] [12.6 5.35 83] [8.79 3.59 20.1] [9.83 4.44 60.3] [0.72 3.6 -0.01] [3.54 9.9 6.41] [13.8 17.25 23.8] [1.20 10.5 2.08]
18 Lampiran 4 Lanjutan No. Cost Drivers
Kategori
10
LEXP
11
SCED
Very low Low Nominal High Very low Low Nominal High Very high
Titik fungsi keanggotaan bell-shaped [a b c] [0.72 3.6 -0.01] [3.54 9.9 6.41] [13.8 17.25 23.8] [1.20 10.5 2.08] [34.21 3.94 20.6] [6.37 6.37 88.88] [22.3 7.25 143.15] [13.6 3.26 68.8] [12.3 6.67 108]
19 Lampiran 5 Fungsi keanggotaan trapezoidal dan bell-shaped cost drivers
DATA
TIME
STOR
ACAP
PCAP
AEXP
ACED
VEXP
LEXP
TURN
VIRT
20 Lampiran 6 Daftar titik fungsi keanggotaan trapezoidal dan bell-shaped cost drivers No
Cost Drivers
Kategori
1
DATA
2
TIME
3
STOR
4
VIRT
5
TURN
6
ACAP
7
AEXP
8
PCAP
9
VEXP
Low Nominal High Very High Nominal High Very high Extreme high Nominal High Very high Extreme high Low Nominal High Very high Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal High Very high Very low Low Nominal
Fungsi keanggotaan Trapezoidal Bell-shaped Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Trapezoidal Bell-shaped
Titik fungsi keanggotaan [0 0 5 10] [39.7 27 57.83] [55 100 550 1000] [550 1000 1100 1100] [23.5 3.58 11.04] [25 50 60 70] [60 70 77.5 85] [77.5 85 95 95] [23.5 3.58 11.03] [25 50 60 70] [60 70 77.5 85] [77.5 85 95 95] [0 0 7.5 15] [49.9 4.92 104.45] [37.5 60 120 180] [120 180 365 365] [0 0 0 1] [3.19 5.49] [8 12 20 20] [0 1 3 4] [0 0 7.5 15] [7.5 15 25 35] [9.83 4.44 60.3] [45 55 65 75] [65 75 90 90] [0 0 2 4] [2 4 8 12] [44.1 9.71 105.47] [24 36 54 72] [54 72 144 144] [0 0 7.5 15] [7.5 15 25 35] [12.6 5.35 83] [45 55 65 75] [65 75 90 90] [0 0 0.5 1] [0.5 1 2.5 4] [13.8 17.25 23.8]
21 Lampiran 6 Lanjutan No. Cost Drivers 10
LEXP
11
SCED
Kategori High Very low Low Nominal High Very low Low Nominal High Very high
Fungsi keanggotaan Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal Trapezoidal Bell-shaped Trapezoidal Trapezoidal
Titik fungsi keanggotaan [8 12 36 36] [0 0 0.5 1] [0.5 1 2.5 4] [13.8 17.25 23.8] [8 12 36 36] [0 0 37.5 75] [37.5 75 80 85] [22.3 7.25 143.159] [92.5 100 115 130] [115 130 160 160]
22 Lampiran 7 Contoh perhitungan Intermediate COCOMO Proyek 1 No. Cost Driver Kategori Effort Multipliers 1
RELY
High
1,15
2
DATA
Low
0,94
3
CPLX
High
1,15
4
TIME
Nominal 1,00
5
STOR
Nominal 1,00
6
VIRT
Low
0,87
7
TURN
Low
0,87
8
ACAP
Nominal 1,00
9
AEXP
Nominal 1,00
10
PCAP
Nominal 1,00
11
VEXP
Nominal 1,00
12
LEXP
Nominal 1,00
13
MODP
High
14
TOOL
Nominal 1,00
15
SCED
Low
0,91 1,08
Project termasuk tipe semi-detached No.
Koefisien
Nilai
1
Koefisien A 3
2
Koefisien B
1,12
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 KSLOCKoef B = 0.925 x 3 x 25,91,12 = 106,208 Person-Months
23 Lampiran 8 Nilai Magnitude of Relative Error (MRE) pada tiga perlakuan No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
MF1 14,23 19,03 16,90 22,72 33,25 24,12 0,73 17,66 36,85 54,19 56,16 44,43 22,23 121,34 15,58 16,17 51,68 24,65 38,84 134,17 23,74 3,16 2,75 30,87 13,06 35,52 100,00 100,00 100,00 100,00 100,00 100,00 1,19 27,39 15,59 23,13 1,69 18,81 26,66 25,04 3,63
MF2 42,62 31,87 49,79 28,85 146,17 0,90 71,93 36,97 46,24 15,15 62,24 55,35 35,61 69,53 37,31 144,10 244,27 64,11 2,17 212,38 125,68 60,57 55,54 47,34 90,86 40,19 30,75 72,77 67,26 98,03 35,25 38,32 54,30 36,44 25,04 185,34 70,45 106,36 147,31 53,72 0,08
MF3 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00
24 Lampiran 8 Lanjutan No. 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
MF1 MF2 MF3 54,77 28,77 100,00 16,70 40,77 100,00 39,13 223,03 100,00 30,04 15,72 100,00 52,34 0,00 99,37 4,03 150,98 100,00 22,92 60,78 100,00 58,99 46,71 100,00 3,98 34,47 99,92 35,56 13,61 100,00 25,93 1,43 99,98 20,61 59,64 100,00 29,65 36,36 100,00 22,92 54,27 100,00 4,71 122,06 100,00 0,02 85,12 100,00 267,57 499,00 100,00 442,25 563,02 5316,87 67,99 317,19 100,00 2,99 33,78 100,00 2,68 80,09 100,00 18,52 47,27 100,00 45,37 33,95 100,00 14,63 19,04 100,00 51,05 7,34 100,00 492,88 64,05 100,00 199,07 2,75 100,00 42,55 44,20 84,40 74,30 115,34 132,41 96,91 113,77 97,18 54,66 88,00 88,49 31,88 75,02 70,12 73,35 87,64 99,64 27,33 61,48 91,85 43,76 42,55 81,73 127,33 165,73 188,42 1014,53 1039,62 1325,54 6,45 48,33 100,00 0,47 1,43 100,00 100,00 75,06 100,00 27,66 4,49 99,97 53,51 11,08 100,00
25 Lampiran 8 Lanjutan No. 84 85 86 87 88 89 90 91. 92 93 94 95 96 97 98 99 100 101 102
MF1 65,94 14,89 34,40 32,83 44,03 83,99 34,48 41,14 638,09 2,46 53,50 7,04 7,16 100,00 41,47 0,80 24,06 24,71 11,79
MF2 29,49 22,24 16,40 25,90 33,69 84,62 26,08 98,64 624,98 4,52 146,38 235,09 130,89 30,89 19,17 59,95 220,89 73,14 122,62
MF3 100,00 98,60 99,69 88,96 99,99 100,00 99,96 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00 100,00
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 ∑
......... (2) , dengan N = jumlah data
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)
)
28 Lampiran 9 Lanjutan
( √
)
(
)
(
√ √
)
29
RIWAYAT HIDUP Penulis dilahirkan di Bogor tanggal 26 Februari 1993. Penulis merupakan anak kedua dari tiga bersaudara pasangan Almarhum Bapak Prof Dr Komari, MSc dan Dr Astuti Lamid, MCN. Kakak penulis merupakan Adini Alvina yang merupakan alumni Fakultas Kedokteran Hewan, IPB dan adik penulis yang telah meninggal bernama Agna. Pada tahun 2010, penulis lulus dari SMU Negeri 1 Bogor dan pada tahun yang sama diterima menjadi mahasiswa S1 Departemen Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor melalui jalur Undangan Seleksi Masuk IPB (USMI).