Rancang Bangun Kerangka Kerja Modul Tenant Management Untuk Aplikasi Software As A Service

Janitra, Marcellino (2024) Rancang Bangun Kerangka Kerja Modul Tenant Management Untuk Aplikasi Software As A Service. Other thesis, InstitutTeknologi Sepuluh Nopember.

[thumbnail of 5025201105-Undergraduate_Thesis.pdf] Text
5025201105-Undergraduate_Thesis.pdf - Accepted Version

Download (4MB)

Abstract

Model Software as a Service (SaaS) semakin marak digunakan, karena kemudahan dan fleksibilitas yang ditawarkan. Bisnis yang menggunakan model SaaS dapat menghemat biaya operasional dan menghemat waktu dalam mendirikan sistem bisnisnya. Salah satu bentuk populer dari model ini adalah SaaS multi-tenant. Satu instance dari aplikasi pelanggan (Tenant) melayani banyak tenant sekaligus. SaaS multi-tenant memiliki keuntungan diantaranya efisiensi biaya, kemudahan skala, dan pembaruan perangkat lunak yang terpusat. Hal ini membuat model SaaS multi-tenant menjadi pilihan menarik bagi banyak organisasi.
Modul Tenant Management dalam SaaS multi-tenant bertugas untuk mengelola berbagai aspek operasional dari setiap tenant, yaitu: migrasi sumber daya, aktivasi tenant, deaktivasi tenant dan berkomunikasi dengan modul lain dalam sistem.
Tugas akhir ini berhasil merancang dan mengembangkan modul Tenant Management menggunakan arsitektur CQRS (Command Query Responsibility Segregation) pada pola DDD (Domain Driven Design). Penggunaan CQRS pada DDD memudahkan pengembang untuk menggunakan kerangka kerja ini sebagai basis pembuatan modul Tenant Management, karena abstraksi dari domain bisnis sudah terdefinisi dengan jelas. Komunikasi dilakukan menggunakan EDA (Event Driven Architecture) yang menurunkan tingkat ketergantungan langsung antar modul. Hasil dari tugas akhir ini dibangun menggunakan bahasa Go sebagai bahasa pemrograman backend, GCP sebagai wadah deployment dan berkomunikasi menggunakan event dan terraform sebagai alat melakukan deployment sumber daya tenant.
=============================================================================================
The Software as a Service (SaaS) model is increasingly popular due to the convenience and flexibility it offers. Businesses using the SaaS model can save on operational costs and time when setting up their business systems. A popular form of this model is multi-tenant SaaS, where a single instance of an application serves multiple customers (Tenants) simultaneously. Multi-tenant SaaS has advantages such as cost efficiency, easy scalability, and centralized software updates, making it an attractive choice for many organizations.
The Tenant Management module in multi-tenant SaaS is responsible for managing various operational aspects of each tenant, such as resource migration, tenant activation, tenant deactivation, and communication with other system modules.
This final project successfully designed and developed a tenant management module using CQRS (Command Query Responsibility Segregation) architecture in a DDD (Domain Driven Design) pattern. The use of CQRS in DDD facilitates developers in using this framework as the basis for creating the Tenant Management module because the business domain abstraction is clearly defined. Communication is conducted using EDA (Event Driven Architecture), which reduces direct dependencies between modules. The outcome of this project was built using Go as the backend programming language, GCP for deployment, and event-driven communication, with Terraform used for deploying tenant resources.

Item Type: Thesis (Other)
Uncontrolled Keywords: Multi-tenant, SaaS, Golang, GCP, Tenant Management, Multi-tenant, SaaS, Golang, GCP, Tenant Management
Subjects: T Technology > T Technology (General) > T58.6 Management information systems
Divisions: Faculty of Intelligent Electrical and Informatics Technology (ELECTICS) > Informatics Engineering > 55201-(S1) Undergraduate Thesis
Depositing User: Marcellino Mahesa Janitra
Date Deposited: 01 Aug 2024 08:37
Last Modified: 01 Aug 2024 08:37
URI: http://repository.its.ac.id/id/eprint/110098

Actions (login required)

View Item View Item