Define performance requirements

Hello, can anybody give me tips regardig the best way to define requirements for performance?
We are using agile metodologies, shall we define them as User stories or normal requirements?

I expect user stories would be best if youโ€™re in an agile team. I start off by trying to get a feel for what the expected usage is, for example online forum software you could ask

  • how many users and profile must be stored
  • how many users will log in at once
  • how big is a post likely to be

And the like, then if you have identified where the risks are you can create tests around those. Your immediate team may not know the answers, so you may need help from people elsewhere in the business to find answersโ€ฆ


I did some performance testing some years ago on an API messaging hub. From memory, the requirements looked like this:

  • Total Transactions per Second - I was supplied with projected values for 1, 3 and 5 years in the future of the service.
  • Total Transaction Time - I had a value to be achieved whilst observing the tests for requirement 1.

I also included monitoring of memory and CPU usage whilst tests were running. Anything other than a linear increase was indicative of a problem.

Hope this helps!