DEVELOPMENT OF API FOR MANAGING METADATA IN METADATA-DRIVEN SAAS

In SaaS development, there are functional requirements of SaaS which can be generalized as metadata. These metadata can be used in metadata-driven architecture to build SaaS application that supports multi-tenancy, in the form of metadata-driven SaaS. In this thesis, an API was built for managing...

Full description

Saved in:
Bibliographic Details
Main Author: Benjamin L, Reinhard
Format: Final Project
Language:Indonesia
Online Access:https://digilib.itb.ac.id/gdl/view/39491
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Institut Teknologi Bandung
Language: Indonesia
Description
Summary:In SaaS development, there are functional requirements of SaaS which can be generalized as metadata. These metadata can be used in metadata-driven architecture to build SaaS application that supports multi-tenancy, in the form of metadata-driven SaaS. In this thesis, an API was built for managing metadata in metadata-driven SaaS which capable to serve multiple metadata-driven SaaS. In order to develop the API, literature studies had been done on SaaS, SaaS implementation challenges, and metadata-driven architecture. API functional requirements were derived from analysis of SaaS implementation challenges, analysis of metadata-driven architecture, and analysis of three SaaS applications, which were Dropbox, G Suite, and GitLab. These three application were chosen because they were easy to be explored. By the end of analysis phase, 7 metadata had been identified, they were pricing scheme, pricing history, user, application resource, application business logic, role, and role assignment. All of these metadata requires 42 endpoints to be managable. API was designed using REST (Representational State Transfer) approach because it fits with the majority of API requirements, which are CRUD operations on metadata. Testing were done using 2 functional tests, the first was Postman test and the second was case study test using a metadata-driven SaaS application. The goal of Postman test was to prove the correctness of API against its specification, meanwhile the goal of case study test was to prove API’s capability to serve multiple metadata-driven SaaS. Test results have shown API is correct and capable to serve multiple metadata-driven SaaS.