Software QA FYI - SQAFYI

Software Testing - Performance Testing Requirements

By:

The scope of this article is limited to the need, approach for requirement collection and the steps involved for Performance Testing.
We all know and understand that not “one-size-fits-all”. The approach discussed in this article predominantly fits in to most scenarios but is not limited to or the only process to go about.

Introduction
Performance is a "must have" feature. No matter how rich your product is functionally, if it fails to meet the performance expectations of your customer the product will be branded a failure.

Application architectural design decisions may be greatly influenced by the importance placed by the customer on one or more specific requirements. Incorrect design decisions, made at the outset of a project as a result of invalid assumptions, may become impossible to remedy downstream. The goal of performance testing is not to find bugs, but to eliminate bottlenecks and establish a baseline for future regression testing. Where do you start?

Identify your customer needs
It is extremely important that you fully understand your customer's intentions and requirements as early as possible regarding software performance i.e. the operating environment (both hardware and software) in which your product will be deployed and the manner in which it will be used.

So, how do you understand your customer’s requirements? Classify their needs

End-User Requirements
The users of your application don’t know or care what the results of the performance tests are, how many seconds it takes something to display on the screen past their threshold for "too long," or what the throughput is. The only thing application users know is that they either notice that the application seems slow or not based on what they have become accustomed to.

In order to quantify what the end user needs, Determine Application Functionality and the scenarios that they use frequently for their regular work.

Verbalize and Capture Performance Requirements and Goals
Quantify Captured Performance Requirements and Goals
Record Performance Requirements and Goals based on their past and current experience
Summarize it back to them reassure what you have recorded and ask for a formal sign off

Business Requirements
The Business Requirements would look like
Transaction response times < 3 seconds
Support 10000 users in standard conditions
The Amount of hardware they have currently that could be used to max capabilit
Technical Requirements
Technical requirements are usually not directly related to other categories of requirement .These would look something like

CPU utilization rate of over 80% is observed for more than a few seconds is a defect For knowing these kind of requirements ask the architects, or other team members who may be responsible for enforcing and/or making decisions regarding targets and thresholds, to share those decisions with you.

Full article...


Other Resource

... to read more articles, visit http://sqa.fyicenter.com/art/

Software Testing - Performance Testing Requirements