Abstract:
SaaS applications are deployed on a shared environment that can be accessed by the users from client-end software by using the Internet. Organizations using SaaS applications do not have control over the infrastructure. SaaS applications are built using multi-tenant system architecture. Multi-tenancy refers to a principle in software architecture where a single instance of the software runs on a server, serving multiple client organizations (tenants). Multi-tenant applications provide a common UI for all the organizations and data of multiple tenants is saved in a single database.
The problem in existing standards of multi-tenant SaaS applications is that data have to be migrated from one tenant to another for many reasons like mergers, joint marketing campaign, moving from pilot to production SaaS instance. Data migration requires a very skilled and time consuming human effort and results in data duplication.
The suggested solution will share data between organizations rather than making a copy of data for each organization, thus reducing human effort in data migration and eliminating data duplication.
The contribution of this thesis are several folds: 1) middleware for data sharing between different organizations; 2) a design pattern and algorithm for the implementation of the middleware; 3) extension to current multi-tenant data-centric models for SaaS applications; 4) identification of constraints; and 5) suitability of proposed solution for existing SaaS applications.
Results show that data can be shared between different tenants of a SaaS efficiently and accurately without making any to presentation and business layer in existing architecture of SaaS.
The suggested solution shares all the data of one organization with another organization. Restricted data sharing between organizations can be an extension of the suggested solution and basis for future work.