Software applications are so closely intertwined with modern business models that demand for their development has never been higher. But challenges exist, particularly for geographically dispersed teams. In this tip, we find out how the use of the cloud can provide many benefits for test management of a geographically dispersed team.
Demand for software continues
The constant search for competitive advantage has fostered an increase in global demand for software development. With that demand comes an escalating pressure to deliver software that’s effective straight out of the box, with minimal defects, and all in double quick time. Given the increasing complexity of software, it’s perhaps not surprising that less than a third of development projects started are brought to a successful conclusion.
While the co-location of teams may still be the preferred solution for effective software development, the emergence of technically competent, low cost workforces in traditionally non-technical countries, has added a new dynamic. With most obviously India, but increasingly Eastern Europe and elsewhere, now being able to offer skilled IT resources, work has flowed in their direction.
Nearly 60% of Agile testing teams are geographically dispersed
A striking illustration of this trend is contained in a recent survey, which revealed that nearly 60% of all Agile testing teams are now geographically dispersed. Close-proximity working, even in Agile teams, is ever less the norm and increasingly the exception.
But while globalization offers the opportunity to access lower-cost resources and maintain momentum through 24/7 working, it also brings with it the potential for delay and disruption. Most particularly, trying to utilize and manage geographically dispersed resources to the full poses a problem for standard and Agile testing methods, which have traditionally assumed development and test teams to be located in a single room or campus.
The heart of the difficulty: communication
At the heart of this difficulty lies just one thing -- communication -- or rather lack of it. This alone has the disruptive ability to throw off schedules and inject costs and inefficiencies into testing projects.
For though our ‘village’ may well be global, it is far from a tight-knit community, with people spread around the world speaking in different first languages, underpinned by different cultures and operating in different time zones. Introduce these elements to the mix, and test management, particularly of Agile projects, immediately becomes a much more complex task, especially where Agile testing runs alongside development and so is 'requirements driven.'
Security and reliability of data transfer is complex
With dispersed teams, the security and reliability of data transfer becomes more complex. Companies looking to offshore their development and test management regimes, must extend their networks, typically Virtual Private Networks (VPN) to far away locations. Yet deploying a leased line or VPN to a developing country, where the infrastructure is still catching up, can be an expensive option. Add in the need to configure servers and set up databases, and this becomes a process not to be undertaken lightly.
Companies are turning to the cloud
These unfavorable ground conditions are leading more and more companies to turn to the cloud. For companies working with teams all over the world, using the cloud offers the opportunity to bring distant resources into the equation as and when needed, while doing away with the daunting requirement to invest in proprietary communications infrastructure. This method of working doesn't just deliver great time savings, but also removes the embedded costs of running private networks between onshore and offshore locations.
What's more, the set-up and process of management testing is immediately simplified in the cloud, with no complicated training of personnel required, since team members can access a project simply and instantly via a familiar browser.
Though cloud-based systems may not yet be able to cope with all the complexities of software development, when combined with cheap internet communication systems such as Skype, the cloud offers the perfect environment for test management. It even lets teams work within Scrum's iterative framework: enabling Sprint meetings; conducting meetings; the public posting of real-time, up-to-date burn down charts; and immediate collaborative thinking and comment for faster defect resolution.
The cloud is also well suited for the storage of test assets. Test scripts, recorded defects and results analysis can be all be stored in one place, readily accessible to all who need them, no matter what time zone they are working from. Projects become much easier and more effective, with performance improved as no work effort is lost through duplication or compromised through the introduction of errors and omissions during updates.
In an ever-more 'distributed world' where even relatively simple software projects can generate many hundreds of tests, the ability to communicate and access shared information is an enormous advantage.
By using the power of cloud-based test management, companies can do this simply and more cost-effectively than ever before. For that reason, those involved in overseeing projects, irrespective of scale or location, should consider it as a primary option.
Francis Miers is a Director of Automation Consultants, an IT testing consultancy with a specialist interest in cloud-based test management tools. The company has consulted on testing projects and IT transformations for clients that include BSkyB, Vodafone, HSBC and T-Mobile.