point
The Smart Techie was renamed Siliconindia India Edition starting Feb 2012 to continue the nearly two decade track record of excellence of our US edition.

June - 2011 - issue > Technology

Evolving Landscape of Software Testing

Anuradha Biswas
Monday, June 6, 2011
Anuradha Biswas
Software testing has evolved over the last several decades. The ever increasing sophistication of applications and the underlying technologies have forced the testing community to continue to optimize. While earlier the developers took care of the testing, as the applications required more reliability, a separate test team was setup to ensure that the reliability was a key criterion across all stages of the project. With time, people realized that an independent test team can provide a different perspective and help identify more defects. Today, business scenarios demand greater flexibility and require us to be cognisant of the financial cuts while still ensuring the application quality.

The customer space has also evolved with different customers being at different stages of maturity in the Evolution cycle. Large enterprises have stabilized their development and testing processes are now focusing on optimizing their already evolved and mature practices. They are looking for holistic sustainable testing solutions which cover areas like domains, technology, processes and tools. The mid-sized customers have realised the need to be on par with the best of breed industry benchmarks in testing services and have taken initiatives to put in place mature testing processes by setting up Test Centres of Excellence. The smaller customers, specially the new generation that provides niche software solutions in the Mobile and Internet space, are looking for quicker and cost effective testing solutions which are in sync with their market release timelines. It is important for a testing company today to understand the varied needs of these different customer segments and recommend the right solution after analysis of maturity levels.

Several companies are moving towards server consolidation based on virtualization to optimize costs. Cloud computing is also exceedingly finding adoption in enterprises. However, this situation presents two major challenges. First, how to test applications hosted on the cloud and second, how to leverage the cloud to test effectively.

For applications hosted on the cloud, the features do not change much, but the way they are deployed becomes more distributed. While the cloud helps optimize infrastructure, the flip side is that it has pitfalls like performance and security issues due to too many layers and options in the environment. Testers require a more holistic approach for testing such issues since the usual approach of looking at them only from a testing or domain point of view may not always work. Their learning efforts should be directed towards gaining in-depth understanding of how cloud technologies are implemented and bottlenecks possible. To be an effective tester in the cloud world, a tester needs to have a combination of excellent testing skills, the ability to use the basic tools when testing and good understanding of the underlying technology and other software products which go into enabling the application on the cloud. The emphasis should be more on understanding the infrastructure and test environment solutions, areas which was not very critical in the non-cloud world.

Let us now discuss how cloud can be leveraged to test effectively. The whole reason for cloud or virtualization becoming a hot topic is that it gives end customers a flexible pay as you go model to reduce their overall spend and also does not hoard too much infrastructure. The same benefits can be extended to testing as a service. The testing services market, both in-house and outsourced is in the range of $80-100 billion now and customers are expecting optimization in their huge testing infrastructure. At Prakat, we are focusing on leveraging the cloud effectively by building frameworks and solutions on top of existing products and tools which will make it easy for customers to use them as required and not invest in them up front. Also, the customers will not have too many skills to learn, thereby reducing re-skilling expenditure.


Share on Twitter
Share on LinkedIn
Share on facebook