Scalability Testing: 7 Steps Towards Success
Systems that work very well during development, deployed on a little scale, can neglect to meet performance goals once the deployment is scaled around support real degrees of use.
An apposite exemplory case of this originates from a significant blue chip company that recently outsourced the development of a forward thinking high technology platform. Though development was behind schedule this is deemed acceptable. The machine gradually passed through functional components of an individual acceptance testing and finally it appeared as if a deployment date could possibly be set. But the supplier started load testing and scalability testing. There followed an extended and costly amount of architectural changes and changes to the machine requirements. The supplier battled heroically to supply a satisfactory system, until finally the project was mothballed.
This isn't an isolated case. IT folklore abounds with similar tales. From ambulance dispatch systems to web-sites for the electronic submission of taxation statements, systems fail because they scale and experience peak demands. All these projects appear never to have identified and ordered the major risks they faced. This can be a fundamental stage of risk based testing, and applies equally to scalability testing or load testing since it does to functionality testing or business continuity testing. Without risk assessment they didn't recognise that scaling was between the biggest risks, a lot more in order that delivering all of the functionality
Recent trends towards Service Oriented Architecture (SOA) try to address the problem of scalability but additionally introduce new issues. Incorporating externally provided services into your current solution implies that your capability to scale now is dependent upon these external system operate under load. Assuring this can be a demanding task and sadly the strain testing and stress testing here's often overlooked.
Better practice would be to start the development of a big scale software system using its performance clearly at heart, particularly scalability testing, volume testing and load testing. To generate this performance testing focus: