Does Agile Process need a must have Performance Testing/Engineering cycle?

  • perf-test.com need your contributions to build up a strong repository of performance engineering resources.

Vaibhav

Administrator
Staff member
Dec 10, 2015
21
1
3
36
We are now seeing that Software Industry has slowly started implementing AGILE process. Fast software delivery, continuous new requirements and balanced team engagement has put AGILE as a preferred process to follow.There are many benefits involved with AGILE process :
  1. Proper Clint Engagement and Transparency : Now customers are involved throughout the life cycle of software development, this is a very transparent approach to engage customers.
  2. Timely and Predictable Delivery : This Process makes sure predictable delivery time, based on sprints progress its easy to predict delivery date.
  3. Feature Acceptance and Feedback : Every feature getting delivered is well demonstrated among team and stakeholders which gives chance to get on time feedback and make changes if required.
  4. Regular Cost Analysis : Since everyone including customers are involved during the development life cycle timely cost analysis can be done.
  5. Improved Quality : Breaking projects into small deliverables makes sure in-depth focus on maintaining delivering Quality Product.
In general AGILE Process administer tasks based on sprints, usually there will be 3 Sprints of 2 to 3 weeks each.Team has to groom/understand story/requirement, developer has to release feature,QA has to test it thoroughly then the Release.

For better customer satisfaction and to be in race with the competitors, one has to deliver features/products on time, this creates pressure among team and this might reflect in
  • Poorly coded product. Even there are code reviews which doesn't ensure better code in terms of performance especially on load conditions.
  • QA may skip any Poorly Performing non functional design which can cause ripple effect during load condition or even while dealing with large set of data.
  • Both developer and QA might be right on delivering stories on time, this doesn't ensure the better performing one.
While testing new stories (functionally), one best practice QA does is to ensure that this feature doesn't impact or break the old ones. What about performance?

To make sure no rework(almost) is required to improve performance especially when everyone has sprint after sprint commitments, we must involve Performance Testing/Engineering Cycle after each sprint.
Failure to do this will take extra cycle of changes after final release, this might delay in next deliverables with same number of resources.
 
@Vaibhav

I have worked in several pseudo agile performance projects and understand that it is slightly difficult to implement for performance. test automation can be done for products working in release cycles