More organizations are pursuing continuous delivery as a means to shorten production schedules while maintaining software quality.
One of the major repercussions to occur in the wake of agile’s rise to prominence has been the increasing popularity of continuous development. Many software creators have viewed continuous development – and agile principles in general – as a roadmap to follow in order to bring products to market with a quicker turnaround time. At the heart of this concept is the drive to speed along development and testing processes without necessarily sacrificing quality. By shifting away from traditional waterfall methods, companies may be able to streamline QA processes and deliver their software products within a shorter time frame.
Based on the findings of a recent Perforce Software study, developers have begun pursuing these concepts whole heartedly. Sixty-five percent of survey respondents stated that they adhere to continuous delivery practices on some of their projects. Meanwhile, more than a quarter of participants claimed to be following these principles on all of their software productions.
“Constant, ongoing, business-driven change is expediting the growth of continuous delivery practices across multiple industry verticals,” said Julie Craig, research director at Enterprise Management Associates. “Software code is being developed in smaller increments, released more often and deployed more frequently than in the past. Some large companies deliver thousands of code changes per day, and even small companies can deliver 50 or 60 production changes daily, particularly in the online world.”
Addressing QA challenges
Making the move to a continuous delivery model may not always be easy for organizations, particularly regarding the quality assurance challenges. SD Times contributor G. Arnold Koch recently highlighted some of the inherent difficulties testers face in the ongoing pursuit to release high-performing software, noting that oversights can lead to troubled – if not disastrous – launches. One of the most important components to successful continuous delivery is the use of automated test scripts as these tools can quickly and effectively identify software errors. Mixing speed with precision is key to producing a high-performing product, and automated testing enables QA management to strike that balance.
QA teams can take the benefits of automated testing even further by reusing particularly effective scripts for projects down the road. The best way to do this is to upload these tools through a centralized test management system. That way, individuals can freely share automated test scripts with other members of their team as well as preserve them for later use.
Perforce survey respondents cited another factor as being vital to the success of their continuous delivery efforts: collaboration. Ninety-five percent of participants stated that their collaboration platform was important to the overall effectiveness of their agile processes. Keeping every member of the team on the same page can be difficult, particularly if organizations are utilizing off-shored resources to shoulder some of the QA workload. Bridging the communications gaps between these disparate units is essential to maintaining lightning-fast production times while remaining dedicated to releasing only the best software.
About The Author
Sanjay Zalavadia is a VP of Client Service for Zephyr, Sanjay brings over 15 years of leadership experience in IT and Technical Support Services. His areas of interest include test Management, Agile, and Performance Testing. Recently he was Associate Vice President at Patni Computers (NYSE: PTI) responsible for the Telecoms IT Managed Services Practice where he established IT Operations teams supporting Virgin Mobile, ESPN Mobile, Disney Mobile and Carphone Warehouse.