An integrated platform for managing multi-tenant single instance SaaS variability at runtime

  • Fatma Omer Mohammed Abdul Rahman

Student thesis: Master's Thesis

Abstract

Recent advances in information and communication technology (ICT) have shifted the use of conventional licensed-based software to widely accessible cloud-based applications. Softwareas- a-Service (SaaS) has recently been adopted by many organizations, tenants, to get their work done through subscription-based services. To leverage economies of scale, software and hardware resources are shared among multiple tenants who have different requirements that rapidly change with time. Responding to tenants’ diverse needs requires SaaS providers to carefully manage software variability so that every tenant feels like having a distinct instance of the application. Tenants’ evolvable requirements require the SaaS instance to dynamically adapt. Currently, there are few proposed frameworks addressing this problem. However, almost all of them aren’t entirely addressing the main challenges of developing a single instance including supporting a seamless instance evolution and managing design time and runtime software variability. Thus, cohesive solutions are needed. This thesis presents an integrated platform that supports deriving a customized configuration per tenant and facilitates the dynamic adaptation of the shared instance. The proposed solution is mainly based on three concepts: Service-Orientation, Software Product Lines (SPLs), and Model Driven Architecture (MDA). The solution spans over two dimensions: Design time variability management and runtime variability management filling the gap between them. We raise the level of abstraction in which we address the whole evolution process. The proposed approach increases the customizability and the flexibility of the adaptation platform to a point where a tenant is able to select the desired data scheme per feature not per configuration as suggested in the literature. Verifiers at design time and Connectors at runtime are responsible for maintaining the consistency of the evolving instance. We illustrate the feasibility of our approach via a functioning prototype. Then, we use a realworld SaaS application to exercise the different adaptation scenarios and evaluate the platform implementation. The preliminary performance evaluation of our platform shows that the multitenant single instance evolutions affect only the evolving tenant.
Date of Award2015
Original languageAmerican English
SupervisorMahmoud Al Qutayri (Supervisor)

Keywords

  • SaaS
  • dynamic adaptation
  • data schemes
  • multi-tenant applications

Cite this

'