I needed to predict the level of concurrency that will naturally occur given a level of traffic and a time frame. For example:
A test case takes 3 minutes to run (including think time). 20 iterations need to run in 1 hour but be random, just as traffic to a web site is. Straight math says EXACTLY 20 cases of 3 minutes each can execute consecutively with zero concurrency. However we intuitively know that such a distribution is extremely unlikely. Given random starting times, there will certainly be SOME amount of concurrency but how much?
Here’s the model that I came up with and I welcome any feedback.
Since there are (20) 3 minute time slots in 60 minutes, randomly draw a number between 1 and 20 for each iteration. Count the results by slot. Any slot that has more than one test = concurrency.
I plugged this into Excel and looked at sample sizes of up to 3000 and the answer is ~27% of the time.
See below for a small sample.
I'm not a mathematician and this may not hold true under different circumstances but it was a useful way of illustrating the concept with my client.