Welcome!

Government Cloud Authors: Elizabeth White, Yeshim Deniz, Liz McMillan, Gopala Krishna Behara, Raju Myadam

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.

@ThingsExpo Stories
Cloud-enabled transformation has evolved from cost saving measure to business innovation strategy -- one that combines the cloud with cognitive capabilities to drive market disruption. Learn how you can achieve the insight and agility you need to gain a competitive advantage. Industry-acclaimed CTO and cloud expert, Shankar Kalyana presents. Only the most exceptional IBMers are appointed with the rare distinction of IBM Fellow, the highest technical honor in the company. Shankar has also receive...
It is of utmost importance for the future success of WebRTC to ensure that interoperability is operational between web browsers and any WebRTC-compliant client. To be guaranteed as operational and effective, interoperability must be tested extensively by establishing WebRTC data and media connections between different web browsers running on different devices and operating systems. In his session at WebRTC Summit at @ThingsExpo, Dr. Alex Gouaillard, CEO and Founder of CoSMo Software, presented ...
WebRTC is great technology to build your own communication tools. It will be even more exciting experience it with advanced devices, such as a 360 Camera, 360 microphone, and a depth sensor camera. In his session at @ThingsExpo, Masashi Ganeko, a manager at INFOCOM Corporation, introduced two experimental projects from his team and what they learned from them. "Shotoku Tamago" uses the robot audition software HARK to track speakers in 360 video of a remote party. "Virtual Teleport" uses a multip...
Business professionals no longer wonder if they'll migrate to the cloud; it's now a matter of when. The cloud environment has proved to be a major force in transitioning to an agile business model that enables quick decisions and fast implementation that solidify customer relationships. And when the cloud is combined with the power of cognitive computing, it drives innovation and transformation that achieves astounding competitive advantage.
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, discussed the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
IoT is rapidly becoming mainstream as more and more investments are made into the platforms and technology. As this movement continues to expand and gain momentum it creates a massive wall of noise that can be difficult to sift through. Unfortunately, this inevitably makes IoT less approachable for people to get started with and can hamper efforts to integrate this key technology into your own portfolio. There are so many connected products already in place today with many hundreds more on the h...
When shopping for a new data processing platform for IoT solutions, many development teams want to be able to test-drive options before making a choice. Yet when evaluating an IoT solution, it’s simply not feasible to do so at scale with physical devices. Building a sensor simulator is the next best choice; however, generating a realistic simulation at very high TPS with ease of configurability is a formidable challenge. When dealing with multiple application or transport protocols, you would be...
Detecting internal user threats in the Big Data eco-system is challenging and cumbersome. Many organizations monitor internal usage of the Big Data eco-system using a set of alerts. This is not a scalable process given the increase in the number of alerts with the accelerating growth in data volume and user base. Organizations are increasingly leveraging machine learning to monitor only those data elements that are sensitive and critical, autonomously establish monitoring policies, and to detect...
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an overview of the evolution of the Internet and the Database and the future of their combination – the Blockchain. Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settl...
In his session at @ThingsExpo, Dr. Robert Cohen, an economist and senior fellow at the Economic Strategy Institute, presented the findings of a series of six detailed case studies of how large corporations are implementing IoT. The session explored how IoT has improved their economic performance, had major impacts on business models and resulted in impressive ROIs. The companies covered span manufacturing and services firms. He also explored servicification, how manufacturing firms shift from se...
DevOpsSummit New York 2018, colocated with CloudEXPO | DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City. Digital Transformation (DX) is a major focus with the introduction of DXWorldEXPO within the program. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of bus...
The Jevons Paradox suggests that when technological advances increase efficiency of a resource, it results in an overall increase in consumption. Writing on the increased use of coal as a result of technological improvements, 19th-century economist William Stanley Jevons found that these improvements led to the development of new ways to utilize coal. In his session at 19th Cloud Expo, Mark Thiele, Chief Strategy Officer for Apcera, compared the Jevons Paradox to modern-day enterprise IT, examin...
IoT solutions exploit operational data generated by Internet-connected smart “things” for the purpose of gaining operational insight and producing “better outcomes” (for example, create new business models, eliminate unscheduled maintenance, etc.). The explosive proliferation of IoT solutions will result in an exponential growth in the volume of IoT data, precipitating significant Information Governance issues: who owns the IoT data, what are the rights/duties of IoT solutions adopters towards t...
Amazon started as an online bookseller 20 years ago. Since then, it has evolved into a technology juggernaut that has disrupted multiple markets and industries and touches many aspects of our lives. It is a relentless technology and business model innovator driving disruption throughout numerous ecosystems. Amazon’s AWS revenues alone are approaching $16B a year making it one of the largest IT companies in the world. With dominant offerings in Cloud, IoT, eCommerce, Big Data, AI, Digital Assista...
Organizations planning enterprise data center consolidation and modernization projects are faced with a challenging, costly reality. Requirements to deploy modern, cloud-native applications simultaneously with traditional client/server applications are almost impossible to achieve with hardware-centric enterprise infrastructure. Compute and network infrastructure are fast moving down a software-defined path, but storage has been a laggard. Until now.
Digital Transformation is much more than a buzzword. The radical shift to digital mechanisms for almost every process is evident across all industries and verticals. This is often especially true in financial services, where the legacy environment is many times unable to keep up with the rapidly shifting demands of the consumer. The constant pressure to provide complete, omnichannel delivery of customer-facing solutions to meet both regulatory and customer demands is putting enormous pressure on...
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
DXWorldEXPO LLC announced today that All in Mobile, a mobile app development company from Poland, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. All In Mobile is a mobile app development company from Poland. Since 2014, they maintain passion for developing mobile applications for enterprises and startups worldwide.
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, 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.
IoT is at the core or many Digital Transformation initiatives with the goal of re-inventing a company's business model. We all agree that collecting relevant IoT data will result in massive amounts of data needing to be stored. However, with the rapid development of IoT devices and ongoing business model transformation, we are not able to predict the volume and growth of IoT data. And with the lack of IoT history, traditional methods of IT and infrastructure planning based on the past do not app...