ABSTRAK

Nama : Christopher Samuel Program Studi : Ilmu Komputer Judul : Penyempurnaan Fitur dan Library Software Product Line Engineering Framework WinVMJ Pembimbing : Dr. Ade Azurat Maya Retno Ayu Setyautami, M. Kom. Software Product Line Engineering (SPLE) adalah sebuah pendekatan pengembangan beberapa perangkat lunak yang bisa digolongkan ke dalam satu kelompok atau keluarga yang sama berdasarkan berbagai commonality dan variability keluarga tersebut. Salah satu framework pengembangan berbasis SPLE ini adalah WinVMJ yang dibangun berdasarkan pola arsitektur Variability Modules for Java (VMJ). WinVMJ sudah bisa digunakan untuk pengembangan perangkat lunak berbasis SPLE, namun masih ada beberapa kekurangan yang bisa diperbaiki atau di-refactor untuk menjadikan WinVMJ sebagai framework yang lebih stabil. Hal-hal yang kurang optimal ini terkait dengan pengelolaan request-response yang kurang lengkap, pembaharuan jenis database yang digunakan dan juga pemodelan entitas di dalam database tersebut. Penelitian ini difokuskan untuk memberikan pembaharuan dan perbaikan WinVMJ, termasuk library yang mendukung framework tersebut. Kekurangan-kekurangan tersebut dicari dengan melakukan percobaan atau testing pada produk yang memiliki fitur-fitur yang berpotensi memiliki kekurangan, dan jika memang ditemukan, kekurangan tersebut dicatat dan diperbaiki. Penelitian ini pada akhirnya berhasil menghasilkan versi baru WinVMJ yang sudah memiliki banyak fitur yang diperbaiki atau diperbaharui. WinVMJ versi terbaru yang dihasilkan penelitian ini dievaluasi dengan melakukan penambahan modul fitur yang berupa sebuah varian dari fitur yang sudah ada, membangun produk baru, membandingkan jumlah berkas dan baris kode yang perlu diubah untuk menambah modul fitur maupun produk dengan framework Spring Boot, dan membandingkannya dengan versi WinVMJ yang lama. Penelitian ini dan juga hasilnya diharapkan dapat memberikan kontribusi kepada bidang pengembangan perangkat lunak, terutama SPLE. Kata kunci: Software product line engineering, variability modules for java, refactor