Organizations today are adopting cloud technologies and are transforming their IT estates to stay competitive. Key characteristics such as On Demand capacity/resourcing, ease of provisioning, scalability & elasticity and service models (Subscription based, Pay as you go etc.) makes cloud a promising consideration for IT decision makers. Be it migration of existing IT assets (On-premise infrastructure & applications) to the cloud or leveraging cloud based services (Cloud infrastructure & Cloud native applications), quality assurance (QA) plays a vital role across the three layers viz. Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS).
The QA considerations such as the kind of strategy and service to adopt significantly vary as a result of combinations of aforementioned service models and applicable cloud models - Public, Private, Hybrid and Community.
Considerations for QA Strategy
Assurance on the Cloud - Move to cloud with confidence on Infrastructure and Application availability, Stability, Security and Efficiency. Here, the cloud services such as multi-tenancy, on demand capacity, resilience & performance are validated for vital parameters under an enterprise's IT landscape.
Workload / Application Assurance - Build trust on the functionality of Cloud-Fit Apps, assuring hassle-free day-to-day operations. In alignment with the business criticality of the applications being migrated, up-front assurance of the core processes and functionality would negate bottlenecks and conflicts on day-to-day operations post migration.
Faster time to market and ROI - Move away from "Exhaustive Testing to Effective Assurance" and "Traditional Automation to New-Age Automation". Here we address two aspects of Assurance that relate to time, One addressing - when and what testing needs to be performed and second - How and how much of testing is required.
QA Considerations for different Cloud Services
Infrastructure as a Service: Given the business objective of utilizing IaaS capabilities around Compute, Storage, Content, Database and Network, the QA focus areas are largely classified as Technical Assurance, Data Assurance, Functional and Non-Functional Assurance.
Platform as a Service: QA considerations for PaaS, specifically from a strategy view, remains more or less similar to that of IaaS. Test strategy however varies on how PaaS cloud service is adopted. PaaS can be leveraged to build and deploy custom applications on the cloud or base the applications on virtualized environment and supported hardware components. In either case, given that the application inherits cloud characteristics, testing would largely focus on validating interfaces, performance, scalability, high availability and user experience.
Software as a Service: For SaaS, QA assumes full service consideration to assure the quality of a Cloud Native application. The test strategy for SaaS solutions will require full spectrum of testing that includes testing for seasonal upgrades, configurations and custom build validations, browser compatibility checks, compliance, legacy integrations, data testing, scalability, elasticity and user experience tests. Apart from Business Process Testing that marks essential quality checkpoints while moving to the cloud, there are additional focus areas to consider while testing in a cloud based environment. Some of them are,
- Risk and Compliance
- Infrastructure and Application readiness (Compatibility, Resilience, Interfaces)
- Data migrations
In summary, as enterprise cloud journeys ranges from Infra/Platform/Application migration to adoption of cloud native applications, tailored & reliable test processes and service offerings aided with flexible pricing models are essential to drive efficiency and effectiveness across the Quality Assurance lifecycle. A robust Cloud Assurance strategy thus helps businesses with a risk free migration/transformation by assuring the Quality of their cloud journey preserving IT stability, availability and reliability.