Software-as-a-service (SaaS): Perspectives and challenges

WeiTek T. Tsai, XiaoYing Y. Bai, Yu Huang

Research output: Contribution to journalArticle

46 Scopus citations

Abstract

Software-as-a-service (SaaS) has received significant attention recently as one of three principal components of cloud computing, and it often deals with applications that run on top of a platform-as-a-service (PaaS) that in turn runs on top of infrastructure-as-a-service (IaaS). This paper provides an overview of SaaS including its architecture and major technical issues such as customization, multi-tenancy architecture, redundancy and recovery mechanisms, and scalability. Specifically, a SaaS system can have architecture relating to a database-oriented approach, middleware-oriented approach, service-oriented approach, or PaaS-oriented approach. Various SaaS customization strategies can be used from light customization with manual coding to heavy customization where the SaaS system and its underlying PaaS systems are customized together. Multi-tenancy architecture is an important feature of a SaaS and various trade-offs including security isolation, performance, and engineering effort need to be considered. It is important for a SaaS system to have multi-level redundancy and recovery mechanisms, and the SaaS system needs to coordinate these with the underlying PaaS system. Finally, SaaS scalability mechanisms include a multi-level architecture with load balancers, automated data migration, and software design strategies.

Original languageEnglish (US)
Pages (from-to)1-15
Number of pages15
JournalScience China Information Sciences
Volume57
Issue number5
DOIs
StatePublished - Jan 1 2014

Keywords

  • SaaS architecture
  • customization
  • multi-tenancy architecture
  • redundancy and recovery
  • scalability
  • software-as-a-service

ASJC Scopus subject areas

  • Computer Science(all)

Fingerprint Dive into the research topics of 'Software-as-a-service (SaaS): Perspectives and challenges'. Together they form a unique fingerprint.

  • Cite this