Perekayasaan Ulang Perangkat Lunak SIMPEL ITS Menggunakan Pendekatan Domain-Driven Design dan Onion Architecture

Wibawa, Setya (2021) Perekayasaan Ulang Perangkat Lunak SIMPEL ITS Menggunakan Pendekatan Domain-Driven Design dan Onion Architecture. Undergraduate thesis, Institut Teknologi Sepuluh Nopember.

[img] Text
05111740000028-Undergraduate_Thesis.pdf - Accepted Version
Restricted to Repository staff only until 1 April 2023.

Download (5MB) | Request a copy

Abstract

Sistem Informasi Penelitian Institut Teknologi Sepuluh Nopember (SIMPEL ITS) merupakan sistem informasi yang menampung semua kegiatan penelitian di ITS. Aplikasi ini memiliki daur hidup yang cukup lama. Namun, bentuk arsitektur aplikasi yang monolithic dan tidak modular dapat mempersulit pemeliharaan sistem. Komponen-komponen dalam sistem saat ini memiliki tanggung jawab yang cukup besar dan mencakup keseluruhan domain permasalahan, sehingga perubahan pada salah satu komponen dapat menyebabkan perubahan yang tidak terduga pada bagian lain. Implementasi kode pada sistem saat ini juga tidak mencerminkan pengetahuan domain dengan baik, sehingga dapat mempersulit pemahaman kode dalam rangka perbaikan dan penambahan fitur. Tugas akhir ini membahas proses reengineering (perekayasaan ulang) perangkat lunak SIMPEL ITS menggunakan domain-driven design dan onion architecture, untuk memecah sistem yang monolithic menjadi lebih modular. Pendekatan domain-driven design digunakan agar implementasi dari perangkat lunak mencerminkan pengetahuan domain dengan penggunaan istilah-istilah yang dipahami pengembang dan domain expert. Implementasi dari hasil domain-driven design dilakukan dalam bentuk onion architecture karena arsitektur ini juga mengedepankan pengetahuan domain sebagai bagian utama dari perangkat lunak, dibandingkan dengan bentuk arsitektur perangkat lunak lain seperti MVC, serta bentuk penyusunan lapisan-lapisan yang dapat menurunkan kompleksitas masingmasing komponen dalam sistem. Implementasi dari reengineering ini dilakukan menggunakan framework Laravel. Evaluasi keberhasilan dalam tugas akhir ini dilakukan menggunakan pengukuran cyclomatic complexity sebagai representasi dari kualitas maintainability perangkat lunak. Dari pendekatan yang dijabarkan dalam tugas akhir ini, sistem yang baru memiliki cyclomatic complexity yang jauh lebih rendah dibandingkan dengan sistem lama, sehingga sistem baru menjadi lebih mudah untuk dipelihara. =================================================================================================== Sistem Informasi Penelitian Institut Teknologi Sepuluh Nopember (SIMPEL ITS) is an information system which recordsal l research activities in ITS. This system has a long lifecycle, but its monolithic structure may result in maintenance difficulty. Components implemented in the current system try to solve the hole problem domain. Modification to the components may result in unexpected changes in other parts of the system. Implementation of the code in the existing system does not reflect the domain knowledge, causing difficulty in comprehension for modification and maintenance. This thesis discusses the reengineering process of SIMPEL ITS using domain-driven design and onion architecture approach to decouple the monolithic structure into modular and manageable parts. Domain-driven design approach is used to reflect the domain knowledge into implementation level. Domain-driven design is implemented using onion architecture, which is compatible with domain-driven design concepts, and promotes less complex and more modular components compared to the MVC architecture. The reengineering process is implemented using Laravel framework. This thesis evaluates the reengineering outcome by calculating its cyclomatic complexity as a representative of maintainability measure. From the approach discussed in this thesis, the newly reengineered system has significantly lower cyclomatic complexity ompared to the old system, which can lead to better maintainability overall.

Item Type: Thesis (Undergraduate)
Uncontrolled Keywords: perekayasaan ulang perangkat lunak, software reengineering, domain-driven design, onion architecture
Subjects: Q Science > QA Mathematics > QA76.754 Software architecture. Computer software
Q Science > QA Mathematics > QA76.758 Software engineering
Divisions: Faculty of Intelligent Electrical and Informatics Technology (ELECTICS) > Informatics Engineering > 55201-(S1) Undergraduate Thesis
Depositing User: Setya Wibawa
Date Deposited: 04 Mar 2021 23:15
Last Modified: 22 Aug 2021 07:20
URI: https://repository.its.ac.id/id/eprint/83464

Actions (login required)

View Item View Item