Comparing PaaS offerings in light of SaaS development | Computing Skip to main content
Log in

Comparing PaaS offerings in light of SaaS development

A comparison of PaaS platforms based on a practical case study

  • Published:
Computing Aims and scope Submit manuscript

Abstract

Software vendors increasingly aim to apply the Software-as-a-Service (SaaS) delivery model instead of the traditional on-premise model. Platforms-as-a-Service (PaaS), such as Google App Engine and Windows Azure, deliver a computing platform and solution stack as a service, but they also aim to facilitate the development of cloud applications (SaaS). Such PaaS offerings should enable third parties to build and deliver multi-tenant SaaS applications while shielding the complexity of the underpinning middleware and infrastructure. This paper compares, on the basis of a practical case study, three different and representative PaaS platforms with respect to their support for SaaS application development. We have reengineered an on-premise enterprise application into a SaaS application and we have subsequently deployed it in three PaaS-based cloud environments. We have investigated the following qualities of the PaaS platforms from the perspective of SaaS development: portability of the application code base, available support for creating and managing multi-tenant-aware applications, and quality of the tool support.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
¥17,985 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (Japan)

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

Notes

  1. http://distrinet.cs.kuleuven.be/software/PaaS-evaluation/.

  2. This is a generic observation, early practitioners of parallel computing shared similar and essential concerns.

References

  1. Amazon Web Services LLC. Amazon Elastic Compute Cloud (Amazon EC2). http://aws.amazon.com/ec2/ (Accessed 6 July 2013)

  2. Amazon Web Services LLC. Amazon Web Services (AWS). http://aws.amazon.com/ (Accessed 6 July 2013)

  3. Amazon Web Services LLC. AWS Elastic Beanstalk. http://aws.amazon.com/elasticbeanstalk/ (Accessed 6 July 2013)

  4. Andrikopoulos V, Binz T, Leymann F, Strauch S (2013) How to adapt applications for the cloud environment. Computing 95(6):493–535

    Google Scholar 

  5. Apprenda Inc. Apprenda—the leading private PaaS. http://apprenda.com/platform/ (Accessed 6 July 2013)

  6. Armbrust M, Fox A, Griffith R, Joseph AD, Katz RH, Konwinski A, Lee G, Patterson DA, Rabkin A, Stoica I, Zaharia M (2009) Above the clouds: a berkeley view of cloud computing. Tech. Rep. 28, EECS Department, University of California, Berkeley

  7. Aulbach S, Grust T, Jacobs D, Kemper A, Rittinger J (2008) Multi-tenant databases for software as a service: schema-mapping techniques. In: SIGMOD ’08: Proceedings of the ACM SIGMOD international conference on management of data. ACM, New York, pp 1195–1206

  8. Aulbach S, Jacobs D, Kemper A, Seibold M (2009) A comparison of flexible schemas for software as a service. In: SIGMOD ’09: Proceedings of the ACM SIGMOD international conference on management of data. ACM, New York, pp 881–888

  9. Azeez A, Perera S, Gamage D, Linton R, Siriwardana P, Leelaratne D, Weerawarana S, Fremantle P (2010) Multi-tenant SOA middleware for cloud computing. IEEE international conference on cloud computing. IEEE Computer Society, Los Alamitos, pp 458–465

  10. Baker J, Bond C, Corbett JC, Furman JJ, Khorlin A, Larson J, Léon JM, Li Y, Lloyd A, Yushprakh V (2011) Megastore: providing scalable, highly available storage for interactive services. In: CIDR ’11: Proceedings on conference on innovative data, systems research

  11. Bezemer CP, Zaidman A, Platzbeecker B, Hurkmans T, Hart A (2010) Enabling multi-tenancy: an industrial experience report. In: ICSM ’10: Proceedings of the 26th international conference on software, Maintenance, pp 1–8

  12. Bezemer CP, Zaidman A (2010) Challenges of reengineering into multi-tenant SaaS applications. Software Engineering Research Group (SERG) 12, TU Delft

  13. Bhuyan LN, Agrawal DP (1984) Generalized hypercube and hyperbus structures for a computer network. IEEE Trans Comput C-33(4):323–333

    Google Scholar 

  14. Bozman J, Chen G (2010) Cloud computing: the need for portability and interoperability. IDC Analyze the Future, Sponsored by Red Hat, Inc

  15. Chang F, Dean J, Ghemawat S, Hsieh WC, Wallach DA, Burrows M, Chandra T, Fikes A, Gruber RE (2008) Bigtable: a distributed storage system for structured data. ACM Trans Comput Syst 26(2): 1–4

    Article  MATH  Google Scholar 

  16. Chappell D (2010) Introducing the Windows Azure Platform. http://www.davidchappell.com/writing/white_papers/Introducing_the_Windows_Azure_Platform,_v1.4-Chappell.pdf. Sponsored by Microsoft Corporation

  17. Chen PPS (1976) The entity-relationship model—toward a unified view of data. ACM Trans Database Syst 1(1):9–36

    Article  Google Scholar 

  18. Chohan N, Bunch C, Pang S, Krintz C, Mostafa N, Soman S, Wolski R (2010) AppScale: scalable and open AppEngine application development and deployment. CloudComp ’09: First international conference on cloud computing. Springer, Berlin, pp 57–70

  19. Chong F, Carraro G (2006) Architecture strategies for catching the long tail. Microsoft Corporation. http://msdn.microsoft.com/en-us/library/aa479069.aspx

  20. Chong F, Carraro G, Wolter R (2006) Multi-tenant data architecture. Microsoft Corporation. http://msdn.microsoft.com/en-us/library/aa479086.aspx

  21. Citrix Systems, Inc. CloudStack—Open Source Cloud Computing Project. http://cloudstack.org (Accessed 6 July 2013)

  22. CloudBees Inc. CloudBees: the Java PaaS Company. http://www.cloudbees.com (Accessed 6 July 2013)

  23. Cordys: Cordys: the enterprise cloud platform. http://www.cordys.com/platform-as-a-service (Accessed 6 July 2013)

  24. DeMichiel L (2009) JSR 317: \(\text{ Java }^{TM}\) Persistence 2.0. http://www.jcp.org/en/jsr/detail?id=317 (Accessed 6 July 2013)

  25. DeMichiel L (2010) JSR 318: Enterprise JavaBeans\(^{TM}\) 3.1. http://jcp.org/en/jsr/detail?id=318 (Accessed 6 July 2013)

  26. DeMichiel L, Shannon B (2011) JSR 342: Java\(^{TM}\) Platform, Enterprise Edition 7 (Java EE 7) Specification. http://www.jcp.org/en/jsr/detail?id=342 (Accessed 6 July 2013)

  27. Engelsen N (2010) Multi tenant architecture via dependency injection. http://blog.tallan.com/2010/07/11/multi-tenant-architecture-via-dependency-injection-part-1/ (Accessed 6 July 2013)

  28. Fowler M (2004) Inversion of control containers and the dependency injection pattern. http://martinfowler.com/articles/injection.html

  29. Garen K (2007) Software portability: weighing options. Making choices. CPA J 77(11):10–12

    Google Scholar 

  30. Giessmann A, Stanoevska-Slabeva K (2012) Platform as a service: a conjoint study on consumers’ preferences. In: ICIS ’12: 33rd international conference on information systems. Association for Information Systems (AIS)

  31. GigaSpaces Technologies, Inc. XAP—Elastic Application Platform. http://www.gigaspaces.com/xap/ (Accessed 6 July 2013)

  32. Google, Inc.: Google App Engine. http://code.google.com/appengine/ (Accessed 6 July 2013)

  33. Google Inc.: Guice. http://code.google.com/p/google-guice/ (Accessed 6 July 2013)

  34. Google, Inc. The JRE Class White List. http://code.google.com/appengine/docs/java/jrewhitelist.html (Accessed 6 July 2013)

  35. Google, Inc. Will it play in Java. http://code.google.com/p/googleappengine/wiki/WillItPlayInJava (Accessed 6 July 2013)

  36. Guo CJ, Sun W, Huang Y, Wang ZH, Gao B (2007) A framework for native multi-tenancy application development and management. In: CEC/EEE ’07: 9th IEEE international conference on E-commerce technology and 4th IEEE international conference on enterprise computing, E-Commerce, and E-Services. pp 551–558

  37. Heroku, Inc. Heroku Cloud Application Platform. http://www.heroku.com/ (Accessed 6 July 2013)

  38. Hillyer S (2013) An introduction to environments. http://wiki.developerforce.com/index.php/An_Introduction_to_Environments (Accessed 6 July 2013)

  39. Hiranandani S, Kennedy K, Tseng CW (1992) Compiling Fortran D for MIMD distributed-memory machines. Commun ACM 35(8):66–80

    Article  Google Scholar 

  40. IBM Corporation. IBM SmartCloud Application Services. http://www.ibm.com/cloud-computing/us/en/paas.html (Accessed 6 July 2013)

  41. jclouds, Inc. jclouds: cloud interfaces, Simplified. http://www.jclouds.org/ (Accessed 6 July 2013)

  42. Kohari N (2013) Ninject! open source dependency injector for .NET. http://ninject.org/ (Accessed 6 July 2013)

  43. Mell P, Grance T (2011) The NIST definition of cloud computing. Special publication 800-145. National Institute of Standards and Technology (NIST). http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf

  44. Microsoft Corp.: ADO.NET Entity Framework. http://msdn.microsoft.com/en-us/data/aa937723 (Accessed 6 July 2013)

  45. Microsoft Corp. ASP.NET MVC. http://www.asp.net/mvc (Accessed 6 July 2013)

  46. Microsoft Corp. Windows Azure. http://www.windowsazure.com/ (Accessed 6 July 2013)

  47. Microsoft Corp. Windows Azure AppFabric. http://www.microsoft.com/windowsazure/AppFabric (Accessed 6 July 2013)

  48. Microsoft Corp. Windows Communication Foundation (WCF). http://msdn.microsoft.com/en-us/netframework/aa663324 (Accessed 6 July 2013)

  49. Microsoft Corp. Windows Azure Architecture Guide. http://wag.codeplex.com/ (Accessed 6 July 2013)

  50. Mietzner R, Leymann F, Papazoglou MP (2008) Defining composite configurable SaaS application packages using SCA, variability descriptors and multi-tenancy patterns. In: ICIW ’08: third international conference on internet and web applications and services, pp 156–161

  51. Mooney JD (1990) Strategies for supporting application portability. Computer 23(11):59–70

    Article  Google Scholar 

  52. Mordani R (2009) JSR 315: \(\text{ Java }^{TM}\) servlet 3.0 specification. http://www.jcp.org/en/jsr/detail?id=315 (Accessed 6 July 2013)

  53. Natis YV, Smith DM, Cearley DW (2010) Windows Azure AppFabric: a strategic core of Microsoft’s cloud platform. http://www.gartner.com/id=1469531

  54. Noelios Technologies: Restlet. http://www.restlet.org/ (Accessed 6 July 2013)

  55. Nurmi D, Wolski R, Grzegorczyk C, Obertelli G, Soman S, Youseff L, Zagorodnov D (2009) The eucalyptus open-source cloud-computing system. CCGRID ’09: Proceedings of the 9th IEEE/ACM international symposium on cluster computing and the grid. IEEE Computer Society, Washington, pp 124–131

  56. Open Grid Forum (OGF) Open cloud computing interface. http://occi-wg.org/ (Accessed 6 July 2013)

  57. OpenStack, LLC: OpenStack Open Source Cloud Computing Software. http://www.openstack.org/ (Accessed 6 July 2013)

  58. Oracle Corporation: Jersey. http://jersey.java.net/ (Accessed 6 July 2013)

  59. Oracle Corporation: Oracle Cloud Platform. https://cloud.oracle.com/mycloud/f?p=service:java:0 (Accessed 6 July 2013)

  60. Paraiso F, Haderer N, Merle P, Rouvoy R, Seinturier L (2012) A federated multi-cloud PaaS infrastructure. In: CLOUD ’12: IEEE 5th international conference on cloud, computing, pp 392–399

  61. Petcu D ((2011)) Portability and interoperability between clouds: challenges and case study. In: Abramowicz W, Llorente I, Surridge M, Zisman A, Vayssiè J (eds) ServiceWave ’11: towards a service-based internet. Springer, Berlin, pp 62–74

    Google Scholar 

  62. Prodan R, Ostermann S (2009) A survey and taxonomy of infrastructure as a service and web hosting cloud providers. In: 10th IEEE/ACM international conference on grid, computing, pp 17–25

  63. Red Hat, Inc. Red Hat OpenShift. https://openshift.redhat.com/ (Accessed 6 July 2013)

  64. Reese G (2009) Cloud application architectures. Theory in practice. O’Reilly

  65. Rimal BP, Choi E, Lumb I (2009) A taxonomy and survey of cloud computing systems. In: NCM ’09: 5th international joint conference on INC, IMS and IDC, pp 44–51

  66. Rosenberg J, Mateos A (2010) The cloud at your service. Manning Pubs Co Series, Manning Publications, Greenwich

    Google Scholar 

  67. Salesforce.com, Inc. Force.com. http://www.salesforce.com/platform/ (Accessed 6 July 2013)

  68. Salesforce.com, Inc. Salesforce CRM. http://www.salesforce.com/ (Accessed 6 July 2013)

  69. SAP, AG: SAP NetWeaver. http://www.sap.com/platform/netweaver/components (Accessed 6 July 2013)

  70. Schubert L, Jeffery K, Neidecker-Lutz B (2010) The future of cloud computing: opportunities for European cloud computing beyond 2010. Expert Group Report, Public Version 1.0, European Commission, Information Society and, Media

  71. Shroff G, Agarwal P, Devanbu P (2009) InstantApps: a WYSIWYG model driven interpreter for web applications. In: ICSE-companion ’09: 31st international conference on software engineering—companion volume, pp 417–418

  72. Shroff G (2008) Dev 2.0: model driven development in the cloud. In: SIGSOFT ’08/FSE-16: Proceedings of the 16th ACM SIGSOFT international symposium on foundations of software engineering. ACM, New York, pp 283–283

  73. Shroff G (2010) Enterprise cloud computing: technology, architecture, applications. Cambridge University Press, Cambridge

    Book  Google Scholar 

  74. Siegel HJ (1979) Interconnection networks for SIMD machines. Computer 12(6):57–65

    Article  Google Scholar 

  75. Singh JP, Weber WD, Gupta A (1992) SPLASH: Stanford parallel applications for shared-memory. SIGARCH Comput Archit News 20(1):5–44

    Article  Google Scholar 

  76. Snir M, Otto SW, Walker DW, Dongarra J, Huss-Lederman S (1995) MPI: the complete reference. MIT Press, Cambridge

    Google Scholar 

  77. Sotomayor B, Montero RS, Llorente IM, Foster I (2009) Virtual infrastructure management in private and hybrid clouds. IEEE Internet Comput 13(5):14–22

    Article  Google Scholar 

  78. Sun W, Zhang X, Guo CJ, Sun P, Su H (2008) Software as a service: configuration and customization perspectives. In: SERVICES-2 ’08: IEEE congress on services Part II, pp 18–25

  79. Vaquero LM, Rodero-Merino L, Caceres J, Lindner M (2009) A break in the clouds: towards a cloud definition. SIGCOMM Comput Commun Rev 39(1):50–55

    Article  Google Scholar 

  80. VMware, Inc. Cloud Foundry. http://www.cloudfoundry.org/ (Accessed 6 July 2013)

  81. Walraven S, Truyen E, Joosen W (2011) A middleware layer for flexible and cost-efficient multi-tenant applications. Middleware ’11: Proceedings of the 12th ACM/IFIP/USENIX international conference on middleware. Springer, Berlin, pp 370–389

  82. Weissman CD, Bobrowski S (2009) The design of the force.com multitenant internet application development platform. In: SIGMOD ’09: Proceedings of the 35th SIGMOD international conference on management of data. ACM, New York, pp 889–896

  83. Wolf Frameworks India Pvt. Ltd.: WOLF. http://www.wolfframeworks.com/overview.asp (Accessed 6 July 2013)

  84. \(\text{ WSO }_{2}\) Inc. WSO2 Stratos. http://wso2.com/cloud/stratos/ (Accessed 6 July 2013)

Download references

Acknowledgments

We thank the anonymous reviewers for their constructive comments to improve this paper. We also thank Wouter De Borger, Maarten Decat and Dimitri Van Landuyt for proofreading. This research is partially funded by the Research Fund KU Leuven, the iMinds CUSTOMSS and SecCAS projects and by the EU FP7 project NESSoS. The iMinds CUSTOMSS is a project co-funded by iMinds (Interdisciplinary institute for Technology), a research institute founded by the Flemish Government. Companies and organizations involved in the project are Agfa Healthcare, Televic Healthcare and UnifiedPost, with project support of IWT (government agency for Innovation by Science and Technology).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefan Walraven.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Walraven, S., Truyen, E. & Joosen, W. Comparing PaaS offerings in light of SaaS development. Computing 96, 669–724 (2014). https://doi.org/10.1007/s00607-013-0346-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-013-0346-9

Keywords

Mathematics Subject Classification

Navigation