Given the nature SCRUM, two quality characteristics that takes back seat and considered as implicit are performance and security. I shall discuss the approach on how to address application performance while working with agile SCRUM teams.
Before I go and list down the tips and techniques, let’s understand some of the constraints:
- Not all developers working in SCRUM teams are very familiar with application performance aspects
- It may get difficult to do performance testing at the end of each sprint.
- It may get difficult to articulate performance related user stories in each sprint.
Given above constraints, it becomes much more important to address performance related issues in SCRUM model. Following is a proposed model which I have found to work and take care of application performance issues on ongoing basis:
- Create a centralized performance team consisting of appropriate number of performance engineers/testers.
- Have the performance team work on SCRUM model where performance related stories such as performance testing are entered in their sprint backlogs by different SCRUM teams.
- The performance stories such as performance testing can be dealt during integration testing phase or so after all the sprints are done and the release readiness is going on.