Software as a Service (SaaS) Testing Challenges- An Indepth



Similar documents
View Point. Overcoming Challenges associated with SaaS Testing. Abstract. - Vijayanathan Naganathan, Sreesankar Sankarayya

GETTING THE MOST FROM THE CLOUD. A White Paper presented by

A Study on Analysis and Implementation of a Cloud Computing Framework for Multimedia Convergence Services

CLOUD COMPUTING SOLUTION - BENEFITS AND TESTING CHALLENGES

Accelerating Time to Market:

TOP 7 THINGS Every Executive Should Know About Cloud Computing EXECUTIVE BRIEF

Hadoop in the Hybrid Cloud

CLOUD ERP AND ACCOUNTING: SELECTION AND PLANNING GUIDE

Why Cloud BI? of Software-as-a-Service Business Intelligence. Executive Summary. This white paper explores the 10 substantial

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

Who moved my cloud? Part I: Introduction to Private, Public and Hybrid clouds and smooth migration

On Premise Vs Cloud: Selection Approach & Implementation Strategies

Developing SAP Enterprise Cloud Computing Strategy

Building the Business Case for Cloud: Real Ways Private Cloud Can Benefit Your Organization

THE QUEST FOR A CLOUD INTEGRATION STRATEGY

Get Significant Application Quality Improvement without Major Investment Performance driven. Quality assured.

Ananthakrishnan J Architect, Sonata Software. Ananth B Product Manager Testing Practice. Sonata Software Limited. Sonata Software Limited

Survey on software testing techniques in cloud computing

Intellika is a strategic alliance partner of leading On-Demand ERP solution provider Ramco who is specialized and globally recognized in building

Infopaper. Demystifying Platform as a Service

Can Cloud Database PaaS Solutions Replace In-House Systems?

CLOUD PERFORMANCE TESTING - KEY CONSIDERATIONS (COMPLETE ANALYSIS USING RETAIL APPLICATION TEST DATA)

How cloud computing can transform your business landscape

A Study of Infrastructure Clouds

Cloud vision and capabilities

Designing Cloud Computing Solutions for Integration with SAP

SURVEY OF ADAPTING CLOUD COMPUTING IN HEALTHCARE

Implementing Microsoft Azure Infrastructure Solutions

Realizing the Value Proposition of Cloud Computing

Cloud Based Document Management

vision realize your software-defined with the Digital Data Center from Atos Whitepaper

Essential Characteristics of Cloud Computing: On-Demand Self-Service Rapid Elasticity Location Independence Resource Pooling Measured Service

Overview. The Cloud. Characteristics and usage of the cloud Realities and risks of the cloud

Sage ERP I White Paper. ERP and the Cloud: What You Need to Know

The cloud - ULTIMATE GAME CHANGER ===========================================

Course 20533: Implementing Microsoft Azure Infrastructure Solutions

SaaS A Product Perspective

How To Understand Cloud Computing

Microsoft Azure Cloud on your terms. Start your cloud journey.

Migrating SaaS Applications to Windows Azure

Why Cloud BI? The 10 Substantial Benefits of Software-as-a-Service Business Intelligence

LOW RISK ADOPTION OF CLOUD INFRA- STRUCTURE FOR ENTERPRISES

Cisco Secure Network Container: Multi-Tenant Cloud Computing

Securing the Cloud with IBM Security Systems. IBM Security Systems IBM Corporation IBM IBM Corporation Corporation

The Key Components of a Cloud-Based Unified Communications Offering

The NREN s core activities are in providing network and associated services to its user community that usually comprises:

Cloud creates path to profitability for Australian businesses. A complimentary report from cloud-based business management software provider NetSuite

The Service, The Cloud & The Method: The Connection Points

Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION

W H I T E PA P E R. Cloud Migration Methodology -Janaki Jayachandran (Director of Technology) a t t e n t i o n. a l w a y s.

Multi Tenancy and Customizations Issues in e-health SaaS Applications

CHAPTER 8 CLOUD COMPUTING

Implementing Microsoft Azure Infrastructure Solutions 20533B; 5 Days, Instructor-led

Session 3. the Cloud Stack, SaaS, PaaS, IaaS

Course 20533B: Implementing Microsoft Azure Infrastructure Solutions

Cloud Testing: A Review Article

Cloud Security Who do you trust?

How To Integrate With Salesforce Crm

Cloud Computing: What IT Professionals Need to Know

Architecting the Cloud

Accenture Cloud Platform Unlocks Agility and Control

Planning the Migration of Enterprise Applications to the Cloud

vcloud Virtual Private Cloud Fulfilling the promise of cloud computing A Resource Pool of Compute, Storage and a Host of Network Capabilities

Cloud Testing Testing on the Cloud

Modern SOA Testing. A Practitioners Guide to. July 2011

GET CLOUD EMPOWERED. SEE HOW THE CLOUD CAN TRANSFORM YOUR BUSINESS.

The Key Components of a Cloud-Based UC Offering

20 th Year of Publication. A monthly publication from South Indian Bank.

WHITE PAPER. A Practical Guide to Choosing the Right Clouds Option and Storage Service Levels.

SaaS-Based Budget Planning

NAREIM Session: Dangers and challenges of The Cloud. President, NiceNets Consulting, LLC

Testing Network Virtualization For Data Center and Cloud VERYX TECHNOLOGIES

SOA and Cloud in practice - An Example Case Study

Cloud Infrastructure Services for Service Providers VERYX TECHNOLOGIES

Radware ADC-VX Solution. The Agility of Virtual; The Predictability of Physical

Moving Network Management from OnSite to SaaS. Key Challenges and How NMSaaS Helps Solve Them

The New Economics of Cloud Computing

Hybrid Cloud Computing

TaaS: An Evolution of Testing Services using Cloud Computing

Managing the Real Cost of On-Demand Enterprise Cloud Services with Chargeback Models

The Cisco Powered Network Cloud: An Exciting Managed Services Opportunity

Private vs. Public Cloud Solutions

Cloud Computing in Banking

The Advantages of Security as a Service versus On-Premise Security

Hexaware E-book on Q & A for Cloud BI Hexaware Business Intelligence & Analytics Actionable Intelligence Enabled

Cost effective methods of test environment management. Prabhu Meruga Director - Solution Engineering 16 th July SCQAA Irvine, CA

Transcription:

www.ijcsi.org 506 Software as a Service (SaaS) Testing Challenges- An Indepth Analysis Prakash.V Ravikumar Ramadoss Gopalakrishnan.S Assistant Professor Department of Computer Applications, SASTRA University, Tamilnadu, India Technology Architect, Infosys, Bangalore, Karnataka, India Associate Dean Department of Computer Applications, SASTRA University, Tamilnadu, India ABSTRACT Organizations in this modern era are interested in deploying and making use of readymade business applications. The reasons are in a plenty - short time to market, lack of capital budget which is required to develop new software and for on-premise deployment and of course the rapid emergence of the Cloud. In fact cloud has attractive Software as a Service jargon which drives the idea of making use of readymade and on-demand business solutions. Since there is an increasing demand in SaaS usage there is more in for SaaS Testing. This paper focuses on the challenges for testers in Saas and also analyses the ways in which SaaS testing differs from testing conventional applications Keywords: Testing, cloud testing, cloud testing challenges, SaaS, SaaS Testing 1. INTRODUCTION Delivering Business applications as a service is one of the backbones of the success of Cloud Computing. SaaS is basically a software delivery model where the software vendor hosts the software and its associated data on the cloud through a cloud service provider which can be made to be used by enterprises and they are billed based on the usage. 2. WHY INCREASING DEMAND FOR SaaS? Worldwide software-as-a-service (SaaS) revenue is expected to reach USD 22.1 billion by 2015 as more companies invest in cloud technology, research firm Gartner said [9] This increasing demand for SaaS based applications for business is characterized primarily by the following factors [1] Improved availability Better reliability Need for Quick deployment Reduced internal system dependencies Multi-tenancy Pay-per-usage Higher system accessibility Resource scaling based on needs Flexible pricing There has also been lot of debate going on to quote whether the transition from a CapEx model to an OpEx model should be a real benefit for enterprises. Some argue it is and some argue it is not [2]. Any how the focus of this paper is not a CapEx vs. OpEx let us stop discussing on that our view is you need to buy servers, networking equipment software licenses and other necessary IT infrastructure up-front Which are all termed as the Capital Expenditure, while with cloud computing (whether it's IaaS, SaaS or PaaS), you pay as you go, based on usage which is termed as the Operational Expense. So there might be a shift towards Operational expenses but this is further under debate. Billing and Logistics modules are deployed on Cloud Infrastructure and Database on Cloud Storage [7][8] Various Web Services are deployed on the Cloud Infrastructure and it will be invoked and Consumed from the Corporate/Enterprise Infrastructure and routed

www.ijcsi.org 507 to the Clients who are requesting the Services. In Fig I. the Billing and logistics users invoking the required service components deployed/hosted on to the cloud infrastructure. This model facilitates the enterprise customers to leverage all the benefits the SAAS model adopts. customers [3].The figure shows the SaaS overall architecture Fig II. SaaS Architecture Fig I. SaaS Billing and Logistics 3 WHY SaaS TESTING TAKES THE CENTRE STAGE: Testing SaaS applications has got its own set of new challenges which forms the centre stage of this paper Based on our interaction with testers from different parts of the world we have identified some testing challenges. The first and foremost challenge is to test SaaS upgrades followed by many like impact on multiple subscriber organizations, data integrity and privacy needs, testing of live upgrades and primarily testing for the much expected high quality and ease of deployment. These requirements take SaaS through multiple validation cycles before continuing with that. The intention of this paper itself is to review the challenges faced by software organizations during SaaS validation.ramco s OnDemand ERP2.0 is one of the greatest examples of a very successful SaaS based application. Organizations can successfully make use of this for integrating the various department activities and customization is also possible based on the needs of the Different geographical based client requests are routed to the required service components deployed on cloud data centers. The Service mediation layer is the ESB gateways, which does the aggregation, routing and transformation of the requests got from the clients. Based on the service providers WSDL (Web service definition language) the different protocols (SOAP,HTTP,REST) will be used to invoke and consume the respective services. On demand replication and scalability will be honored by the data centers based on the SAAS model characteristics. 4. MAJOR DIFFERENTIAL ATTRIBUTES: There are some attributes which differentiates SaaS applications from that of the conventional applications. Key Attribute Conventional Applications Time to Market Need to built applications and to host it in client s data centre Shelf Risk ware Yes there is risk in managing multiple versions of the applications SaaS Applications Readily available business solutions Reduced risk. Applications can focus more on innovation

www.ijcsi.org 508 Total Ownership cost High costs because of maintenance and upgrades Low costs. ROI Low to moderate Moderate to high Table 1. Conventional VS SaaS applications 5 WHAT IS SAAS TESTING? SaaS testing comprises of validating SaaS applications with respect to business workflows, multi-tenancy, integrity, reliability, ease of deployment, scalability, availability, accuracy, deployability, ease of use, testability, portability live updating. All these applications are tested with cloud based resources and among the testing criteria mentioned above the focus will be on three key components they are performance, compatibility and security. 6 COMPONENTS OF SaaS TESTING: The core components are: Application Infra structure Network 6.1 APPLICATIONS: A very high degree of accuracy is needed here as organizations adapt these applications as it is and completely hand over their operations on it. It is assumed that the subscribing organizations have perceived them as a complete end-to-end product which provides solutions to their ever increasing business demands. Sql Injection which is another major threat to the security. It targets poorly designed web forms and manipulate some queries which sometimes even change the database content [4]. So SaaS testing targets on testing Sql injection, testing cookies, multi-tenant isolation and access privilege validations for application data. Testing should also be carried out for standards imposed by government. This comprises functional and security testing. Another important aspect of testing SaaS application is testing the performance. This can be done with some realistic usage scenarios. The scenarios can be simulated with some large user base volumes and loads from different geographic locations. In order to identify any network related performance issues it is always better to test these applications on isolated networks. 6.2 INFRASTRUCTURE: Large volume of tests should be conducted on infrastructure with production like configurations for a huge impact on the end-user experience. Testers are advised to perform live update tests and recovery tests for reliability issues to the end use. The focus is primarily on testing backups secure connections and storage policies. 6.3 NETWORK: As the data from a SaaS application is travelling to a client application through a client network test for a network bandwidth should be carried out and also the security of the data along with the various encryption and decryption techniques to be tested for the smooth flow of sensitive data over the network. 7 SaaS TESTING CHALLENGES: 7.1 SaaS UPGRADES: Software are meant to be updated that too software which runs business needs frequent updates as the way of doing business changing every day as new technologies are just streaming in. For example the way in which we are doing our banking was not the same as we were doing ten years before. The same software cannot be retained for a longer period due to the changing needs of business. The same is true for our SaaS applications. Providers make fast and frequent updates and that will be communicated to all subscribers. They are all expected to read the new release notes, access the changes and analyze the impact of the changes to their business data and to their business processes within a period of about two weeks. Every change should be carefully tested to have not an impact over the correctly working features. An

www.ijcsi.org 509 extensive amount of regression testing is needed at this place and testers can make use of some automation testing tools like JAZZ which is the latest IBM offering [5] or conventional tools like the QTP. Validating all the SaaS application changes within a very short span of time will be a huge bottleneck [6] 7.2 DOMAIN AND BUSINESS KNOWLEDGE: SaaS applications always contain configurable and nonconfigurable components. It requires a great deal of business and domain knowledge to identify these and also the impact of the change done on these components. 7.3 INTERFACE TESTING: This is a continuation of the SaaS upgrade issue. Sometimes SaaS upgrades demand changes in their respective interfaces also. Subscribers need to know is it possible for them to work with the new upgraded interfaces because there might have been some amount of integration of their internal applications with the SaaS solutions. 7.4 DATA SECURITY: The nature of SaaS applications are muliti-tenant. So SaaS testing must ensure that one subscriber should not be accessed by another subscriber this will create confidence in data security among the subscribers. These tests need to be performed by simulating a huge customer load. Even though there are some tools to do it is a huge challenge. 7.5 INTEGRATING ENTERPRISE APPLICATIONS: The biggest challenge faced by testers is the integration of the existing enterprise application with SaaS applications, which is the current industry practice. There must be a smooth data transition between the SaaS applications and the enterprise applications. This demands a great deal of integration validation. A thorough validation of data privacy is needed to ensure a complete guarantee for SaaS subscribers about data privacy and security. 7.6 DATA MIGRATION BETWEEN SAAS APPLICATIONS: Subscribers always have the freedom to move from one SaaS application to another. in that scenario data migrations between the past and present posts a major challenge to testers. One cannot expect to have the same database schema available in both the SaaS applications. So a tester here must have a basic understanding of the various data types, their relationships in two different databases and they must also know how to map SaaS applications across two different SaaS providers. These are all the places where organizations need testers who are not just testers and people with a good database and programming knowledge too. 8. CONCLUSION: SaaS applications definitely help non-software organizations to concentrate their core business areas. It eliminates the effort required to develop, maintain and support software which is not their cup of tea. SaaS makes them to use their resources in a much productive form in their core business areas. On the other hand the expectations SaaS are so high and it has been projected as software which is readily used. This gives clients who are subscribing to SaaS, a complete product which is ready for consumption. It is the job of testers to make it true in majority of cases so this definitely throws upon some new challenges among testers. A comprehensive testing is necessary so that subscribers can make use of all the benefits offered by SaaS. Organizations must also need to realize the demand for End-to-End testing on these types of applications. And most importantly organizations who opt for SaaS must realize that they need a testing team which contains not only testers a team of but domain and business experts for carrying out tests with the right strategy. AUTHOR PROFILES: Prakash is a highly effective teacher and Assistant Professor SASTRA University, Tanjore; Tamilnadu India He has more than 13 years of experience in computer science education. Prakash has a special interest towards software testing and is working towards gaining a Ph.D in Software Testing. Goplakrishnan is an Associate Dean at SASTRA University, Tanjore; Tamilnadu He has more than 20 years of experience in education and Research. His

www.ijcsi.org 510 areas of research are Soft Computing and he holds a doctorate from SASTRA University. Ravikumar is a senior system Architect at Infosys, Bangalore. He has got more than ten years of IT experience. His specialization is cloud computing and he is working towards gaining a PhD in ROI in cloud Computing REFERENCES: 1. Testing SaaS as a platform on the Agile World Joel Montvelisky, Practitest Publications, June 2010 2. Accounting for Clouds: Stop Saying CapEx Vs. OpEx http://gevaperry.typepad.com/main/2009/01/accou nting-for-clouds-stop-saying-capex-vs-opex.html 3. Say No To Conventional ERP - http://www.ramcoondemand.com/ 4. Sql Injection - http://en.wikipedia.org/wiki/sql_injection 5. IBM Rational Jazz Technology Platform - http://www-01.ibm.com/software/rational/jazz/ 6. SaaS Testing Overview Ram Garg, Software Performance Assurance Publications October 2010. 7. Software as a Service - http://www.wikinvest.com/concept/software_a s_a_service 8. Software as a Service Storage as a Service - http://www.webopedia.com/term/s/saas.ht ml 9. Global SaaS revenue - Gartner, http://articles.economictimes.indiatimes.com/2 012-03-27/news/31245209_1_saas-modelgartner-today-usd