10 research outputs found

    Proses Refactoring Paket Menggunakan Teknik Clustering

    Get PDF
    Salah satu tantangan terbesar dalam persoalan Rekayasa Perangkat Lunak adalah ketika dihadapkan pada kondisi adanya kompleksitas internal perangkat lunak. Salah satu cara yang dapat digunakan untuk mengatasi persoalan kompleksitas pada perangkat lunak adalah dengan melakukan refactoring. Refactoring perangkat lunak merupakan sebuah teknik untuk melakukan perubahan struktur internal perangkat lunak tanpa merubah perilaku eksternal dari perangkat lunak itu sendiri. Banyak bagian dari perangkat lunak yang dapat direfactoring, salah satunya adalah paket. Proses refactoring pada level paket dilakukan dengan tujuan untuk meningkatkan hubungan keterkaitan (interdependensi) kelas-kelas dalam satu paket (intra package cohesion). kelas-kelas yang sebelumnya sudah berada dalam paketnya masing-masing akan di restrukturisasi. Kelas-kelas akan dikelompokkan menjadi satu paket berdasarkan pada hubungan kedekatan. Hubungan kedekatan antar kelas ini yang digunakan sebagai ukuran (similarity measure) antara kelas satu dengan kelas lainnya, sehingga kelas yang memiliki hubungan kedekatan tinggi akan ditempatkan dalam satu kelompok paket. Untuk mendukung proses pengelompokan kelas-kelas ini diperlukan suatu teknik yang dikenal dengan clustering. Metode yang digunakan untuk melakukan proses pengelompokan kelas-kelas dengan menggunakan metode SLINK (Single Linkage) dengan harapan akan memberikan hasil cluster baru yang akan berpengaruh pada peningkatan kohesi paket. =================================================================================================== One of the big challenges on Software Engineering is when we faced with the internal complexity. The way that can be used to overcome it is to do refactoring process. Refactoring is a technique to make changes internal structure without changing external behaviour. Many part of software can be refactoring, one of them is refactoring at the level package. The aims refactoring at the level package is to improve intra package relation, its call with package cohesion. classes that previously located in the package will be restructured. The classes will be grouped into one package based on closes relation. The close Relation between classes is used as a measure (similarity measure) between pair class, so classes that have high close relation will be placed in a one package. To support of the process, required a technique known as clustering. The method used to carry out the grouping process class by using SLINK (Single Linkage) with the hope of a new cluster can giving results that impact on improving cohesion package. Keywords: Clustering, Package , Refactoring, SLINK, Similarity Measuremen

    Software module clustering: An in-depth literature analysis

    Get PDF
    Software module clustering is an unsupervised learning method used to cluster software entities (e.g., classes, modules, or files) with similar features. The obtained clusters may be used to study, analyze, and understand the software entities' structure and behavior. Implementing software module clustering with optimal results is challenging. Accordingly, researchers have addressed many aspects of software module clustering in the past decade. Thus, it is essential to present the research evidence that has been published in this area. In this study, 143 research papers from well-known literature databases that examined software module clustering were reviewed to extract useful data. The obtained data were then used to answer several research questions regarding state-of-the-art clustering approaches, applications of clustering in software engineering, clustering processes, clustering algorithms, and evaluation methods. Several research gaps and challenges in software module clustering are discussed in this paper to provide a useful reference for researchers in this field

    TOWARDS AN INTEGRATED METAMODEL BASED APPROACH TO SOFTWARE REFACTORING

    Get PDF
    corecore