Thanks to the emergence of Digital as the new business default, and the Internet of Things (IoT), there has been an unprecedented surge in customer expectations and experiences. These customer expectations must be managed (and met) with continuous (and fast) innovation. At a minimum, this calls for collaborative working and smarter processes, continuous integration (CI), and continuous development (CD) all essential components of the DevOps. While this release acceleration enables businesses to address the customer expectations challenge, it also results in some suggesting that the quality assurance (QA) function will lose control, and developers will be responsible for everything from requirements to development, testing and release. This myth is far from reality, and must be busted.
In fact, with Digital, QA's responsibilities have increased from mere test execution, to 360 degree assurance, which equips management with a holistic view of products, businesses including multiple channels and multiple platforms, risks, security, regulation, usability, and customer experience. QA today plays a catalytic role for business success, by collaborating with IT and business stakeholders, fostering new skills, and connecting three critical components of the digital landscape – Cloud, Analytics and Mobility. Along with businesses, QA too, has clearly outlasted the digital storm from its inception during the software development lifecycle (SDLC) waterfall days, to its current Agile avatar.
SDLC still starts with requirements and analysis, and will always do, but its execution methodology has evolved from a time when weekly status meetings and periodic releases were considered good practice, to the current Agile scenario, where daily stand-up calls and continuous, accelerated releases are a norm. With Continuous Integration and Continuous Delivery becoming the new default, the role of QA automation cannot be ignored. Given today's accelerated (sometimes even hourly) releases, manual testing is not an option anymore. By implementing test automation tools such as Selenium, Cucumber, Junit, TestNG, JMeter, and Python, QA teams not only ensure 100% test coverage, but also assure release quality, while reducing overall effort and cost of testing.
Instead of merely detecting defects, QA folks now plan and execute tests for desktop, web and mobile platforms to prevent defects. They also define and deploy testing standards, processes and frameworks, provision test environment and data, automate regression and performance testing, facilitate service virtualization, ensure adequate security, validate Big Data, drive cloud adoption, and develop automation scripts. The release acceleration reality has in fact, resulted in a merger of QA skill sets the role QA progression I mentioned at the outset. QA professionals today, are automation engineers with functional knowledge, testing skills, and development capability. With such improved competencies, they match up with Agile's accelerated release cycles, and deliver faster results.
From the business and customer perspectives too, QA has moved much beyond mere validation of business requirements, to risk management, customer experience, and regulatory compliance, including geography specific privacy laws. Armed with the right metrics portfolio, QA professionals today are equal stakeholders in addressing business challenges, and creating long term, sustainable business value. Smart QA approaches and frameworks can dismantle departmental silos and traditional organizational structures, without business downtime or chaos.
Staying true to Agile, QA professionals, with their emerging roles and enhanced skills, can play diverse roles as and when required. I will be at STARWEST on Thursday 6th October, 2016 and will speak on 'Outlasting the digital storm: Survival guide for QA'. Do join my session to find out more about why modern QA clearly is the true DevOps driver and value creator.