Welcome!

@CloudExpo Authors: Elizabeth White, Liz McMillan, Pat Romanski, Nate Vickery, William Schmarzo

Related Topics: @CloudExpo, Containers Expo Blog

@CloudExpo: Article

Testing Considerations for Application Migration to Cloud Computing

Cloud application testing

Cloud computing adds a new dimension to conventional models of testing services delivery. Gartner highlights the five attributes of cloud computing as service-based, scalable and elastic, shared, metered by use, uses internet technologies (1). Cloud computing characteristics such as virtualization, on-demand scale up/down of infrastructure resources, self service capabilities and pay per use pricing models are allowing cloud platform vendors to provide infrastructure and software services at lower costs to organizations utilizing cloud computing services (2).

There is a growing trend of organizations taking up cloud computing initiatives to consolidate infrastructure that is geographically spread in multiple data centers to a single cloud platform vendor. Minimizing upfront infrastructure investment, ability to scale up/down quickly, high availability and disaster recovery are the other key factors contributing to early cloud adoption. Organizations are interested in having greater visibility into how infrastructure resources are consumed, aligning infrastructure needs to actual demand and lowering infrastructure management and support costs. Organizations should be aware of the application considerations for migration to cloud platforms to ensure a smooth transition to cloud environment (3).

Testing considerations and focus areas
The following are the key considerations that are helpful in locating areas that would require focus during test planning:

  • Application changes and on-premise interfaces - Moving an application to the cloud may require changes to the application to suit with the environment available on the cloud platform. For example, if the application is running on Solaris on-premise and the operating systems available on the cloud platform are RedHat Linux and Suse Linux, the application will require additional testing on the cloud platform. In addition, requirements such as authentication against on-premise active directory and new interfaces built with on-premise systems lead to additional areas for application testing.
  • Data migration - The data migrated from on-premise to cloud to take advantage of the storage services available on the cloud platform for additional storage needs, backup and archival requires new test cases to be developed as part of test planning.
  • Security - Organizations may decide to enforce access to application features utilizing on-premise user directories for authentication and authorization. In addition, web applications being migrated from with-in the firewall to a public internet on cloud require transport security mechanisms such as SSL. Data stored in cloud storage may have to be encrypted for security and compliance needs. The best practice is to secure the data in transit as well as the data at rest (4). Security testing of these new features has to be incorporated in to overall test planning.
  • Performance - The application needs to be load and stress tested on the cloud platform to ensure that system response is as per SLAs. As cloud platforms are often used for consolidating infrastructure in multiple regions to a specific region, special attention is needed to ensure that system performance is at optimum levels. This will require testing the latency in system response in comparison to response from on-premise environment for taking appropriate steps for performance improvement.
  • Scalability - Applications are usually migrated to cloud to take advantage of the elasticity features provided by cloud platforms for quick ramp up/down of computing resources to align with actual demand. The ability of the cloud environment to meet the on-demand needs of the application requires careful planning of the test scenarios and load for performance testing.
  • Availability and Disaster Recovery - Load balancers and elastic computing features for auto-provisioning play a critical role in ensuring high availability on the cloud. The ability of the cloud environment to withstand peak load and server failures has to be tested prior to releasing the application for producing use. Cloud platforms such as Amazon EC2 allow placing multiple instances in different availability zones in a region to protect applications from failure of a single location (5). The availability of the application has to be tested by simulating the failure of an application instance in a location. Also, data recovery mechanisms in place have to be tested for ensuring proper disaster recovery.

Cloud computing aspects conducive to testing
Testing an application being migrated to a cloud platform requires the test environment to be setup in the cloud environment. The following are some aspects of cloud computing that are conducive for setting up test environments on cloud platforms:

  • Reduce the lead-time for procuring infrastructure - Less time to provision infrastructure resources using self-service interfaces
  • Optimal use of hardware resources - In-house test environments require hardware, which most of the time goes unused. With cloud, the resources can be scaled  up or down to keep pace with demand which leads to efficient utilization of resources
  • Pay-per-use - With cloud, there is no need to budget for extra hardware. Additional resources can be procured easily for the test environment using pay per use models
  • Quick resource ramp-up - Cloud is ideal for quickly ramping up resources for the following testing needs: Testing an application on multiple operating systems, multiple browser types and multiple software versions (JVM, App Server etc.)
  • Setting-up multiple test regions - Cloud makes it cost-effective for creating separate test regions for system testing. Often, minimal infrastructure is enough for testing functional aspects of an app location. Large infrastructure needed to simulate production environment can be procured quickly for the duration of testing
  • Reduce software licensing costs - On-demand testing tools on cloud are cost effective and the pay per use models provide relief from costly one-time licensing of testing tools (6)

Enhancements to Testing Methodology for Cloud Testing
The enhancements proposed to the conventional software testing methodology are based on our experience with deploying and testing J2EE, .Net applications, and commercial as well as open source packages on Amazon EC2 and Microsoft Azure cloud platforms.

A typical cloud testing methodology is comprised of the following phases: Test Planning, Test Design, Cloud Setup, Test Execution, Remediation and Closure. The methodology for testing applications on the cloud platform requires additional activities in the following phases:

  • Cloud Setup - The setup of test environment on the cloud requires familiarity of the target cloud platform. Testing teams need training on key functions such as setting up a cloud account, provisioning cloud resources (Virtual Machines (VMs), storage, load balancers, software licenses). An understating of the cloud monitoring tools is essential to monitor system response and resource usage.
  • Test Execution - Based on the test requirements for the application, additional resources may have to be procured for computing as well as storage. For example, performance testing of the application will require a true representation of the production data for effective results. It may also require additional VMs to simulate computing support for handling larger loads. Testing application security will require understanding of the firewall rules, routing of requests and data access rules.
  • Closure - Cloud platforms provide storage at low cost and are ideal for archiving test cases, test results and test data. The VMs used for testing can be saved as images in cloud storage and can be restored later to recreate the test environment quickly for subsequent releases. Once the testing phase is complete, all the cloud resources can be released to keep the overall testing costs low.

Conclusion
Testing applications that are being migrated to the cloud requires a careful assessment of the testing considerations from the perspective of what application changes are undertaken for cloud deployment. This will help testing members in understanding application areas that need specific focus during testing on the cloud platform. In addition, knowledge of the cloud platform capabilities for scalability, availability and disaster recovery is useful for test planning. Testing teams should get acquainted with the cloud platform for accessing the test environment, monitoring and perform all test related activities. An understanding of the innovations cloud computing brings to testing services, especially test environment on the cloud and cloud based testing tools, will enable better utilization of the cloud computing capabilities by organizations for effective gains.

References

  1. Gartner Highlights Five Attributes of Cloud Computing, http://www.gartner.com/it/page.jsp?id=1035013
  2. The Five Characteristics of Cloud Computing, Maria Spínola, Cloud Computing Journal, http://cloudcomputing.sys-con.com/node/1087426
  3. Application Migration Considerations for Cloud Computing, Rajagopal Sattaluri, Cloud Computing Journal, http://cloudcomputing.sys-con.com/node/1686320
  4. Architecting for the Cloud: Best Practices, http://media.amazonwebservices.com/AWS_Cloud_Best_Practices.pdf
  5. Amazon Elastic Computing Cloud, Features - Multiple Locations, http://aws.amazon.com/ec2/
  6. HP and Amazon Web Services, http://aws.amazon.com/hp/

More Stories By Rajagopal Sattaluri

Rajagopal Sattaluri currently heads the Solution Architecture Team at Mahindra Satyam. He is a TOGAF certified enterprise architect. He has over 20 years experience in software development with expertise in Solution Architecture Consulting, Technology Evaluation, New Technology Research and Development, Product Development and Offshore Software Development. He is a staunch promoter of Agile, Cloud Computing and SOA. Rajagopal has a Masters degree in Management from North Carolina State University, USA and an under graduate degree in Computer Engineering from Andhra University, India.

@CloudExpo Stories
The past few years have brought a sea change in the way applications are architected, developed, and consumed—increasing both the complexity of testing and the business impact of software failures. How can software testing professionals keep pace with modern application delivery, given the trends that impact both architectures (cloud, microservices, and APIs) and processes (DevOps, agile, and continuous delivery)? This is where continuous testing comes in. D
Modern software design has fundamentally changed how we manage applications, causing many to turn to containers as the new virtual machine for resource management. As container adoption grows beyond stateless applications to stateful workloads, the need for persistent storage is foundational - something customers routinely cite as a top pain point. In his session at @DevOpsSummit at 21st Cloud Expo, Bill Borsari, Head of Systems Engineering at Datera, explored how organizations can reap the bene...
In a recent survey, Sumo Logic surveyed 1,500 customers who employ cloud services such as Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). According to the survey, a quarter of the respondents have already deployed Docker containers and nearly as many (23 percent) are employing the AWS Lambda serverless computing framework. It’s clear: serverless is here to stay. The adoption does come with some needed changes, within both application development and operations. Tha...
"I focus on what we are calling CAST Highlight, which is our SaaS application portfolio analysis tool. It is an extremely lightweight tool that can integrate with pretty much any build process right now," explained Andrew Siegmund, Application Migration Specialist for CAST, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Digital transformation is about embracing digital technologies into a company's culture to better connect with its customers, automate processes, create better tools, enter new markets, etc. Such a transformation requires continuous orchestration across teams and an environment based on open collaboration and daily experiments. In his session at 21st Cloud Expo, Alex Casalboni, Technical (Cloud) Evangelist at Cloud Academy, explored and discussed the most urgent unsolved challenges to achieve f...
With tough new regulations coming to Europe on data privacy in May 2018, Calligo will explain why in reality the effect is global and transforms how you consider critical data. EU GDPR fundamentally rewrites the rules for cloud, Big Data and IoT. In his session at 21st Cloud Expo, Adam Ryan, Vice President and General Manager EMEA at Calligo, examined the regulations and provided insight on how it affects technology, challenges the established rules and will usher in new levels of diligence arou...
To get the most out of their data, successful companies are not focusing on queries and data lakes, they are actively integrating analytics into their operations with a data-first application development approach. Real-time adjustments to improve revenues, reduce costs, or mitigate risk rely on applications that minimize latency on a variety of data sources. In his session at @BigDataExpo, Jack Norris, Senior Vice President, Data and Applications at MapR Technologies, reviewed best practices t...
In his general session at 21st Cloud Expo, Greg Dumas, Calligo’s Vice President and G.M. of US operations, discussed the new Global Data Protection Regulation and how Calligo can help business stay compliant in digitally globalized world. Greg Dumas is Calligo's Vice President and G.M. of US operations. Calligo is an established service provider that provides an innovative platform for trusted cloud solutions. Calligo’s customers are typically most concerned about GDPR compliance, application p...
Mobile device usage has increased exponentially during the past several years, as consumers rely on handhelds for everything from news and weather to banking and purchases. What can we expect in the next few years? The way in which we interact with our devices will fundamentally change, as businesses leverage Artificial Intelligence. We already see this taking shape as businesses leverage AI for cost savings and customer responsiveness. This trend will continue, as AI is used for more sophistica...
Smart cities have the potential to change our lives at so many levels for citizens: less pollution, reduced parking obstacles, better health, education and more energy savings. Real-time data streaming and the Internet of Things (IoT) possess the power to turn this vision into a reality. However, most organizations today are building their data infrastructure to focus solely on addressing immediate business needs vs. a platform capable of quickly adapting emerging technologies to address future ...
In his Opening Keynote at 21st Cloud Expo, John Considine, General Manager of IBM Cloud Infrastructure, led attendees through the exciting evolution of the cloud. He looked at this major disruption from the perspective of technology, business models, and what this means for enterprises of all sizes. John Considine is General Manager of Cloud Infrastructure Services at IBM. In that role he is responsible for leading IBM’s public cloud infrastructure including strategy, development, and offering m...
"Evatronix provides design services to companies that need to integrate the IoT technology in their products but they don't necessarily have the expertise, knowledge and design team to do so," explained Adam Morawiec, VP of Business Development at Evatronix, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and simple way to introduce Machine Leaning to anyone and everyone. He solved a machine learning problem and demonstrated an easy way to be able to do machine learning without even coding. Raju Shreewastava is the founder of Big Data Trunk (www.BigDataTrunk.com), a Big Data Training and consulting firm with offices in the United States. He previously led the data warehouse/business intelligence and B...
Most technology leaders, contemporary and from the hardware era, are reshaping their businesses to do software. They hope to capture value from emerging technologies such as IoT, SDN, and AI. Ultimately, irrespective of the vertical, it is about deriving value from independent software applications participating in an ecosystem as one comprehensive solution. In his session at @ThingsExpo, Kausik Sridhar, founder and CTO of Pulzze Systems, discussed how given the magnitude of today's application ...
The 22nd International Cloud Expo | 1st DXWorld Expo has announced that its Call for Papers is open. Cloud Expo | DXWorld Expo, to be held June 5-7, 2018, at the Javits Center in New York, NY, brings together Cloud Computing, Digital Transformation, Big Data, Internet of Things, DevOps, Machine Learning and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding busin...
Nordstrom is transforming the way that they do business and the cloud is the key to enabling speed and hyper personalized customer experiences. In his session at 21st Cloud Expo, Ken Schow, VP of Engineering at Nordstrom, discussed some of the key learnings and common pitfalls of large enterprises moving to the cloud. This includes strategies around choosing a cloud provider(s), architecture, and lessons learned. In addition, he covered some of the best practices for structured team migration an...
The “Digital Era” is forcing us to engage with new methods to build, operate and maintain applications. This transformation also implies an evolution to more and more intelligent applications to better engage with the customers, while creating significant market differentiators. In both cases, the cloud has become a key enabler to embrace this digital revolution. So, moving to the cloud is no longer the question; the new questions are HOW and WHEN. To make this equation even more complex, most ...
As you move to the cloud, your network should be efficient, secure, and easy to manage. An enterprise adopting a hybrid or public cloud needs systems and tools that provide: Agility: ability to deliver applications and services faster, even in complex hybrid environments Easier manageability: enable reliable connectivity with complete oversight as the data center network evolves Greater efficiency: eliminate wasted effort while reducing errors and optimize asset utilization Security: imple...
The dynamic nature of the cloud means that change is a constant when it comes to modern cloud-based infrastructure. Delivering modern applications to end users, therefore, is a constantly shifting challenge. Delivery automation helps IT Ops teams ensure that apps are providing an optimal end user experience over hybrid-cloud and multi-cloud environments, no matter what the current state of the infrastructure is. To employ a delivery automation strategy that reflects your business rules, making r...
SYS-CON Events announced today that Synametrics Technologies will exhibit at SYS-CON's 22nd International Cloud Expo®, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. Synametrics Technologies is a privately held company based in Plainsboro, New Jersey that has been providing solutions for the developer community since 1997. Based on the success of its initial product offerings such as WinSQL, Xeams, SynaMan and Syncrify, Synametrics continues to create and hone in...