I am currently working on one of the highest profile projects in the company at the moment and I am really trying my best to nail early performance testing!
So I’m not from a performance testing background. Historically I have passed this phase of testing on to the official performance tester(s). By doing this I have removed all responsibility! Or have I?
What I have actually done here is miss out on an excellent learning opportunity and completely missed the importance of gathering performance stats early on in the project.
Over the last couple of weeks I have done some work to understand our projects “Performance Route to Live” along with some support from our performance consultants for guidance.
“Do you understand the performance requirements?”
Here is a draft of what I have come up with so far:
In my opinion it is important to gain an understanding of how individual services perform early on to give us an indication and enable us to plan for later stages. This can be done as early as System test or even in Integration.
I see the performance lab as my projects most important stage in the performance route to live, Not at all saying the other steps along the way are no important though.
We use a private on premise cloud in order for us to spin up new servers and tear down servers upon request so for us it’s pretty easy to create an isolated performance environment.
The benefits of having an isolated performance lab for us are:
- Uncontended resources
- Early indications of the effect of new functionality
- Performance defects found much earlier
- Much more confidence in the software
- Able to regularly update the business expectations
What I am aiming for now is regular deployments to my performance lab so that throughout the project I can monitor the impact as we increase functionality setting realistic expectations and reducing the likelihood of severe performance defects at point of go live!
Maybe a future post will be to tell you about the outcome?!?!