Laporkan Masalah

MUCPSO: Metode Estimasi Usaha Perangkat Lunak Menggunakan Uniform Chaotic Personal Particle Swarm Optimization

ARDIANSYAH, Dr. Ir Ridi Ferdiana, S.T., M.T., IPM; Adhistya Erna Permanasari, S.T., M.T., Ph.D

2022 | Disertasi | DOKTOR TEKNIK ELEKTRO

Estimasi usaha merupakan salah satu aktivitas penting dalam proyek perangkat lunak. Estimasi yang akurat bisa membantu keberhasilan suatu proyek dan begitu pula sebaliknya. Ada tiga jenis metode estimasi usaha yaitu formal, pakar, dan kombinasi antara keduanya. Use Case Points (UCP) termasuk kategori metode estimasi perangkat lunak formal. UCP banyak digunakan karena ukuran perangkat lunak dihasilkan berdasarkan konstruksi kebutuhan fungsional yang dimodelkan menggunakan diagram use case dengan paradigma pemrograman berorientasi objek. Salah satu elemen penting UCP adalah pembobotan kompleksitas use case. Parameter pembobotan kompleksitas use case saat ini sepenuhnya mengandalkan bobot yang memiliki perbedaan nilai yang tinggi. Pembobotan ini menyebabkan sulitnya memperoleh nilai parameter yang tepat sehingga berimbas pada berkurangnya performa akurasi. Di sisi lain, sebagai algoritme pencarian nilai parameter, particle swarm optimization (PSO) memiliki dua masalah klasik yaitu partikel solusinya sering mengalami konvergen prematur dan mudah terjebak pada optimum lokal, sehingga jarang mendapatkan solusi optimum global. Masalah sulitnya memperoleh nilai parameter kompleksitas use case yang tepat telah dipecahkan menggunakan metode fuzzy UCP. Namun, metode ini ternyata masih kurang efektif memperkecil perbedaan nilai bobot tersebut. Oleh karena itu, penelitian ini mengusulkan UCW+PSO karena memiliki kekuatan dalam eksplorasi solusi optimum dengan konvergensi yang cepat. Sedangkan dua masalah klasik particle swarm optimization diselesaikan dengan mengusulkan MUCPSO yang menerapkan tiga pendekatan secara simultan yaitu inisialisasi populasi awal yang uniform, bobot inersia chaotic, dan personal learning strategy. Inisialisasi populasi uniform terbukti menghasilkan populasi yang diverse sehingga mampu menjangkau titik solusi yang dicari dan mengurangi potensi terjadinya partikel-partikel berkumpul pada area solusi tertentu, sedangkan bobot inersia chaotic dan personal learning strategy mampu menyeimbangkan proses pergerakan partikel pada fase eksplorasi dan eksploitasi, sehingga mencegah partikel terjebak pada optimum lokal. Hasil eksperimen menunjukkan bahwa pemilihan parameter bobot kompleksitas use case menggunakan UCW+PSO berhasil memperoleh standardized accuracy sebesar 99,3%, lebih unggul dari lima metode pembanding lainnya dalam hal performa akurasi estimasi. Sedangkan MUCPSO berhasil memperoleh nilai mean absolute error paling kecil yaitu 1009,8, lebih unggul dibanding keempat algoritme optimasi lain untuk mengatasi prematur konvergen dan jebakan optimum lokal. Kedua hasil penelitian ini menunjukkan bahwa dengan UCW+PSO dan MUCPSO, pemilihan nilai parameter kompleksitas use case bisa menjadi lebih tepat, akurat, dengan nilai error yang lebih rendah, sehingga bisa memungkinkan untuk diintegrasikan dengan alat bantu (tools) estimasi usaha perangkat lunak yang biasa digunakan oleh para manajer proyek.

Estimation is one of the important activities in software projects. Accurate estimates can help the success of a project and vice versa. There are three types of effort estimation methods: formal, expert, and a combination of the two. Use Case Points (UCP) is one of the formal software estimation methods. UCP is widely used because the size of the software is generated based on the construction of functional requirements, which are modeled using use case diagrams with an object-oriented programming paradigm. One of the essential elements of UCP is the use case complexity weighting. The current use case complexity weighting parameters rely entirely on weights that have a high difference in values. This weighting makes it challenging to get the correct parameter values, which results in reduced accuracy performance. On the other hand, as a parameter value search algorithm, particle swarm optimization (PSO) encounters two classic problems. First, the solution particles often experience premature convergence, and second, they are easily trapped at the local optimum. Hence, those solutions rarely get a global optimum solution. The problem of the difficulty of obtaining appropriate use case complexity parameter values has been solved using the UCP fuzzy method. However, this method turned out to be less effective in reducing the difference in the weight values. Therefore, this study proposes UCW+PSO because it has strengths in exploring optimum solutions with fast convergence. Meanwhile, the two classic particle swarm optimization problems are solved by proposing MUCPSO, which simultaneously applies three approaches: uniform initial population initialization, chaotic inertia weights, and personal learning strategy. Uniform population initialization produces a diverse population to reach the desired solution point and reduces the potential for particles to gather in specific solution areas. At the same time, chaotic inertia weights and personal learning strategies can balance the movement of particles in the exploration and exploitation phases, thus preventing particles from collapsing and getting stuck at a local optimum. The experimental results show that the selection of use case complexity weight parameters using UCW+PSO obtained a standardized accuracy of 99.3%, superior to the other five comparison methods in estimation accuracy performance. In contrast, MUCPSO yielded the smallest mean absolute error value of 1009.8 and outperformed the other four optimization algorithms for overcoming convergent premature and local optimum traps. Both results of this study indicate that with UCW+PSO and MUCPSO, the selection of use case complexity parameter values can be more precise and accurate. The proposed methods gained lower error values so that it is possible to integrate with standard software effort estimation tools used by project managers.

Kata Kunci : use case points, optimasi metaheuristik, estimasi usaha perangkat lunak, particle swarm optimization

  1. S3-2022-437758-abstract.pdf  
  2. S3-2022-437758-bibliography.pdf  
  3. S3-2022-437758-tableofcontent.pdf  
  4. S3-2022-437758-title.pdf