background image
<< Quantify Captured Performance Requirements | Performance Acceptance Criteria >>
<< Quantify Captured Performance Requirements | Performance Acceptance Criteria >>

Record Performance Requirements and Goals

·
Since it is unlikely that you will have the opportunity to determine the intention of the
person who chose the term "concurrent," you have to use your best judgment based
on the application. Generally, the safest interpretation is "overlapping, active
sessions" where an "active session" is one user's activity between the time they
access the application until the time they complete their task -- without stopping to
do something else -- whether or not the application technically tracks sessions.
·
Using this interpretation, if a user typically has session duration of 15 minutes,
statistically, it would take a total of about 5,000 users over a 30-minute period with a
realistic ramp-up/ramp-down model to simulate 2,500 overlapping active sessions.
·
Also, in this example you have no information about the expected activity of those
users. As in the previous example, it is probably safe to assume that the only
reasonable way to test this requirement are either "with all pages being accessed
equally often" or "under the most likely workload distribution" -- although in this
case, "under the mostly likely workload distribution" is more likely to be the original
author's intent.

See Chapter 12 ­ Modeling Application Usage for more information on defining
concurrent users.
Record Performance Requirements and Goals
The preferred method for recording goals and requirements will necessarily be particular
to your team and tools. However your team manages requirements and goals, you must
remember to record both the quantitative and the qualitative versions of the goals and
requirements together. By doing so, when it is late in the project and someone tries to
decide if the application is performing well enough to be released, you can quickly refer
not just to the numbers, but to the intent behind the numbers to help you and your team
make a more informed decision.
Summary
Quantifying response-time goals is tightly related to expressing the user's perception of
the application's performance. Most often, users of your application are not able to
articulate how long it should take to display data onscreen, what the application
throughput should be, or how many transactions per second a database must support.
However, users do notice the performance behavior of the application, based on their
impressions, which are the result of several factors: previous experience, the criticality of
the task, and how their expectations have been set.