Home > Ask the Software Quality Experts > Software Testing and Quality Assurance Questions & Answers > What to do when the test environment doesn't match production
Ask The Software Quality Expert: Questions & Answers
EMAIL THIS

What to do when the test environment doesn't match production

Scott Barber EXPERT RESPONSE FROM: Scott Barber

Pose a Question
Other Software Quality Categories
Meet all Software Quality Experts
Become an Expert for this site


Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


>
QUESTION POSED ON: 12 February 2007
How can I predict the performance of an application in a production environment that doesn't match the test environment? Is there some kind of extrapolation I can do or formula I can apply?

>
EXPERT RESPONSE
There is no formula or methodology that is any more accurate than a guess if you are starting from load simulations. In fact, an educated guess is probably the most accurate prediction in this case. For all practical purposes, most organizations have no way to extrapolate performance results from a test environment to predict production performance. Even the best performance testers in the field refer to this kind of extrapolation as "black magic" unless they've been trained by Connie Smith, Ph.D., or Daniel Menasce, Ph.D.

That said, I am a proponent of not doing all of your performance testing in the production environment because it is the most complex environment, obscuring bottlenecks and making them more difficult to pinpoint and resolve. I recommend starting in the most simple, limited, isolated environment possible and adding components only when the performance of the previous configuration is at least understood. This progressive approach saves a fantastic amount of time and effort every time you detect a performance issue.

Now, all this is not to say that I am against testing in the production environment, or an environment that mirrors production. What I am saying, however, is that should account for something like 10% of your total test time, which often means that it can actually be done in production during scheduled maintenance periods, thus saving the money of building a test environment that mirrors production and mitigating the risk of performance testing in production.

The fact is that extrapolation, no matter how scientific or accurate in a controlled, sterile environment, cannot account for someone installing a hard drive with a slower seek speed than planned for in the model, or for a mouse-chewed network cable, or for that one configuration setting that didn't get changed to allow the application to make use of the hyper-threading technology on the new hardware that the model had accounted for. Even Connie Smith and Daniel Menasce caution that their highly scientific and precise techniques are only as accurate as their models and that their predictions need to be validated via simulation before being viewed as anything other than best case scenarios.


Sound Off! -   Be the first to post a message to Sound Off!


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


RELATED CONTENT
Software Testing and Quality Assurance
Functional testing: Unit testing, integration testing and beyond
Soak testing and performance testing terms
Performance testing SOA
Acceptance testing for websites
When to begin testing in the SDLC
Building automated tests for legacy applications
Test cases from requirements specifications and use cases
Software testing in a virtual environment
The benefits of user acceptance testing
The scope of user acceptance testing

Software performance, load and stress testing
Soak testing and performance testing terms
Performance testing SOA
Why do we test for performance?
Web app load testing tool monitors user experience
Software testing in a virtual environment
What to include in a performance test plan
Application performance management today, part 4: The challenges of Ajax performance testing
Core activities of performance testing -- Expert Webcast
Software testing fundamentals: Performance testing
Magic formula for successful performance testing

Advice from Scott Barber
Performance testing SOA
Acceptance testing for websites
GUI automated testing projects
How to set up a test environment
Prioritizing software testing on little time
Software testing processes and development methodologies
Smoke and sanity testing
Automating regression test cases
Test plan and test strategy
User acceptance testing that satisfies users and requirements

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
integration testing  (SearchSoftwareQuality.com)
performance testing  (SearchSoftwareQuality.com)
shotgun debugging  (SearchSoftwareQuality.com)
stress testing  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary



Search and Browse the Expert Answer Center
Search and browse more than 25,000 question and answer pairs from more than 250 TechTarget industry experts.
Browse our Expert Advice

About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides enterprise IT professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective IT purchase decisions and managing their organizations' IT projects - with its network of technology-specific Web sites, events and magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Reprints  |  Site Map




All Rights Reserved, Copyright 2006 - 2008, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts