Refactoring Modul Role-Based Access Control Menggunakan Reusable Component pada Aplikasi PPDB Jawa Timur 2022 dengan Metode Continuous Test-Driven Development Menggunakan Cypress dan GitHub Actions

Tsani, Muhammad Rizqi (2023) Refactoring Modul Role-Based Access Control Menggunakan Reusable Component pada Aplikasi PPDB Jawa Timur 2022 dengan Metode Continuous Test-Driven Development Menggunakan Cypress dan GitHub Actions. Other thesis, Institut Teknologi Sepuluh Nopember.

[thumbnail of Buku TA.pdf] Text
Buku TA.pdf - Accepted Version
Restricted to Repository staff only until 1 September 2023.

Download (2MB) | Request a copy

Abstract

Role-Based Access Control (RBAC) adalah salah satu metode pembagian hak akses menggunakan model struktur jabatan. Salah satu aplikasi yang menggunakan RBAC adalah aplikasi Pendaftaran Peserta Didik Baru (PPDB) SMA/SMK Provinsi Jawa Timur di mana terdapat beberapa pengguna seperti operator sekolah, kepala sekolah, cabang dinas, dan dinas provinsi. Pembagian akses pada aplikasi ini sangat penting karena kesalahan sedikit saja dapat berakibat sangat fatal. Pengembangan yang berulang setiap tahunnya dengan spesifikasi kebutuhan yang berbeda-beda menyebabkan kualitas kode semakin menurun. Telah dilakukan beberapa perbaikan pada tahun-tahun sebelumnya seperti pemindahan session, optimasi query, dan penggunaan multistep form. Namun belum ada usaha perbaikan pada modul RBAC di mana ditemukan banyak duplikasi kode sehingga proses scale-up menjadi rumit. Tugas Akhir ini akan membahas proses refactoring modul RBAC menggunakan reusable component dengan metode Continuous Test-Driven Development. Pertama, skenario pengujian end-to-end testing dibuat terlebih dahulu. Proses selanjutnya adalah pengecekan otorisasi pengguna yang sebelumnya dijalankan di tiap controller akan dipindah ke satu buah komponen baru yang dapat digunakan di semua controller. Komponen yang dipanggil dalam halaman aplikasi. Hasil refactoring dievaluasi secara kontinu dengan bantuan GitHub Actions. Hasil refactoring membuat proses implementasi RBAC menjadi lebih cepat dan mudah dengan menggunakan komponen yang sudah ada tanpa menulis ulang kode. Reusable component yang dibuat pada penelitian ini dapat diterapkan pada semua aplikasi yang menggunakan role pengguna sebagai access control. Hasil penelitian ini menunjukkan tingkat reusability sebesar 50% mengacu pada ISO 25010 subkualitas reusability of assets. Pengujian metrik maintainability dengan membagikan survei kepada tim pengembang aplikasi PPDB Jawa Timur mendapatkan skor 94,2%. Jumlah baris kode pada program hasil refactoring berkurang sebanyak 84,62% dibanding program lama.
=================================================================================================================================
Role-Based Access Control (RBAC) is a method of distributing access rights using a position structure model. One RBAC application is the East Java Province High School / Vocational High School New Student Registration (PPDB) application which has several users, including school operators, principals, the provincial education office, and its regional branches. Sharing access to this application is essential because even a slight mistake can be fatal. Development repeated every year with different requirements specifications causes the quality of the code to decrease. Several improvements have been made in previous years, such as moving sessions, optimizing queries, and using multistep forms. However, there has yet to be any effort to improve the RBAC module, where a lot of code duplication was found, so the scale-up process became complicated. This final project will discuss refactoring RBAC modules using reusable components using the Continuous Test-Driven Development method. First, an end-to-end testing scenario is created in advance. The following process is checking user authorization that was previously executed in each controller will be moved to a new component that can be used in all controllers. The component is called on the application page. Refactoring results are continuously evaluated with the help of GitHub Actions. The refactoring results make the RBAC implementation process faster and easier by using existing components without rewriting code. The reusable components created in this study can be applied to all applications that use user roles as access control. The results of this study indicate a reusability level of 50%, referring to the ISO 25010 sub-quality of assets reusability. Testing maintainability metrics by distributing surveys to the East Java PPDB application development team obtained a score of 94.2%. The number of lines of code in the refactored program is reduced by 84.62% compared to the old program.

Item Type: Thesis (Other)
Uncontrolled Keywords: Role-Based Access Control, Refactoring, Reusable Component, Continous Test-Driven Development.
Subjects: Q Science > QA Mathematics > QA76.754 Software architecture. Computer software
Divisions: Faculty of Intelligent Electrical and Informatics Technology (ELECTICS) > Informatics Engineering > 55201-(S1) Undergraduate Thesis
Depositing User: Muhammad Rizqi Tsani
Date Deposited: 04 Aug 2023 02:41
Last Modified: 04 Aug 2023 02:41
URI: http://repository.its.ac.id/id/eprint/100489

Actions (login required)

View Item View Item