Identifikasi Peluang Refaktorisasi Pada Kasus God Class Berdasarkan Kesamaan Konsep

Putra, Widhy Hayuhardhika Nugraha (2017) Identifikasi Peluang Refaktorisasi Pada Kasus God Class Berdasarkan Kesamaan Konsep. Masters thesis, Institut Teknologi Sepuluh Nopember.

[img]
Preview
Text
5112201044-Master_Theses.pdf - Published Version

Download (2MB) | Preview

Abstract

Sebuah kelas dalam Pemrograman Berbasis Objek (PBO) harus memiliki desain yang spesifik untuk menangani dan mengimplementasikan sebuah konsep. Kelas harus memiliki tanggungjawab spesifik terhadap sebuah konsep yang diimplementasikan dalam operasi. Pada pengembangannya, seringkali pengembang perangkat lunak tidak memperhatikan desain konsep kelas sehingga kelas menjadi berkembang dan memiliki implementasi yang kompleks atau biasa disebut dengan “God Class”. Dalam hal ini diperlukan metode untuk mengidentifikasi peluang refaktorisasi God Class menjadi beberapa kelas baru yang nantinya akan direfaktorisasi menggunakan metode refaktorisasi kelas seperti ExtractClass. Pada penelitian sebelumnya, telah diusulkan metode identifikasi peluang refaktorisasi kelas menggunakan tiga pembobotan yaitu SSM (Structural Similariy between Methods), CDM (Call based Dependency between Methods) dan CSM (Conceptual Similarity between Methods). Perhitungan CSM telah dilakukan dengan pendekatan LSI (Latent Semantic Indexing). Namun metode penilaian kesamaan konsep tersebut tidak dapat mendeteksi kesamaan konsep pada kalimat penyusun nama operasi. Kecenderungan pengembang menggunakan pilihan kata yang memiliki makna dan penggunaan kalimat kerja dalam membentuk nama operasi menjadikan peluang pada penelitian ini untuk dikembangkannya perhitungan CSM menggunakan pendekatan semantik dan word dependency sebagai lokasi konsep pada nama operasi. Penelitian ini mengajukan metode dalam mengidentifikasi peluang refaktorisasi kelas dengan menghitung tingkat kedekatan konsep pada operasi. Operasi pada kelas diekstrak menjadi corpus dan dihitung nilai kedekatannya dengan operasi yang lain menggunakan SSM, CDM, dan CSM. Pada perhitungan CSM dilakukan penilaian kesamaan konsep secara semantik menggunakan kedekatan konsep term-term penyusun korpus menggunakan library Standford Dependency. Dimana untuk menghitung kedekatan konsep antar operasi diusulkan menggunakan pendekatan vector space models dengan memodifikasi pembobotan TF-IDF dengan word distance dan word dependency. Kemudian nilai kedekatan antar operasi tersebut direpresentasikan dalam bentuk graf dan dilakukan pemotongan graf menggunakan metode Max-Flow Min-Cut untuk mendapatkan identifikasi operasi yang harus dipisahkan dari kelas God Class. Dengan mekanisme tersebut diatas maka pemrogram mendapatkan rekomendasi peluang refaktorisasi kelas dengan mudah. Hasil penelitian ini mencapai hasil dengan tingkat precision 0,708% dan recall 0,936%. =========================================================== A class in Object-Oriented Programming (OOP) must have a specific de-sign for handle and implement a concept. The class must have a specific respon-sibility to a concept which is implemented in the methods. In its development, software developers often do not pay attention to the design concept of the class so that the class be growing and has a complex implementation or commonly called the "God Class". In this case the necessary methods to identify refactoring opportunities to split God Class into several new classes that will be refactored using methods such ExtractClass Class Refactoring. In previous studies, it has been proposed methods for identification of refactoring opportunities using the three weighting which is SSM (Structural Similariy between Methods), CDM (Call-based Dependency between Methods) and CSM (Conceptual Similarity be-tween Methods). CSM calculations have been done with the approach of LSI (La-tent Semantic Indexing). But the concept of similarity assessment methods can not detect a similar concept to the sentences making up the name of the opera-tion. The tendency of developers using choice words have meaning and use of the phrase work in shaping the operation name on this research creates the opportuni-ty for the development of CSM calculation using semantic approach and word dependency as a concept on the location name of the operation. This study propose a method for identifying refactoring opportunities by identifying the concept location of methods. Methods of classes will be extracted into a corpus and calculated the value of its similarity to other operations using the SSM, CDM, and CSM. In the calculation of CSM assessment semantically similar concept of using concept similarity detection using StandfordDependen-cy. Where to calculate the proposed operation to the similarities between the ap-proach vector space models by modifying the TF-IDF weighting distance and word by word dependency. Then the similarity between these operations repre-sented in the form of graphs and graph cuts made using Max-Flow Min-Cut to get identification operations must be separated from God class Class. With proposed method, software developer can easily get recomendation for class refactoring opportunities. The result of this research is precision 0,708% and recall 0,936%.

Item Type: Thesis (Masters)
Uncontrolled Keywords: Class Refactoring; Extract Class; God Class; Similarity; Penyusunan kembali kelas; Similaritas
Subjects: Q Science > QA Mathematics > QA76 Computer software
Divisions: Faculty of Information Technology > Informatics Engineering > 55101-(S2) Master Thesis
Depositing User: HAYUHARDHIKA WIDHY
Date Deposited: 09 May 2017 03:07
Last Modified: 05 Mar 2019 01:43
URI: https://repository.its.ac.id/id/eprint/41218

Actions (login required)

View Item View Item