Thursday, May 14, 2015

Continuous improvement

Continuous improvement is an important part of being Agile. There are several aspects of continuous improvement, I'd like to discuss them one by one.

Continuous product improvement

There is no such things as a perfect product. The idea behind Agile is to keep making improvements to the product by continuously delivering updated working versions to your end users. 

The end users, who are represented by the product owner usually will keep adding items to the backlog, which a Scrum team burns through. This cycle helps deliver a continuously improving product to the customer.

I recently worked on an app where the user ratings were dismal when we took over the work. We invested time to understand the greatest needs of our customers and made small but quick improvements in those areas. We delivered each improvement to customer as soon as it was ready. Instead of waiting for several big features to be ready, which could potentially have taken months, we resorted to doing small changes in the areas that were most needed. By the time we focused our attention away from the project, we had increased the user ratings by about 75%. 

It is commonplace to see app updates and website updates very frequently these days. It can however be quite tough for teams to achieve. I am a big advocate of 'not sitting on ready features' however small they may be, but to let the customers have it as quickly as possible.

Continuous process improvement

At the end of every sprint, it is essential that teams meet for a short while to discuss what went well and what didn't go so well. This is done in a Scrum retrospective meeting. It is important for Scrum Masters to create a safe environment where everyone feels empowered to raise concerns and discuss issues. There are 5 stages to a good retrospective - Setting the stage, Gather Data, Generate Insights, Decide what to do, and Closing. It is only by having good retrospectives that continuous process improvement can be achieved. 

I have 2 quick recommendations for Scrum Masters as their team decides how to tweak their processes:
  1. I recommend reading this short article - Shu Ha Ri by Martin Fowler. In the article, the author compares talks about various stages of knowledge that a team is in. It is important that you make sure your team follows the rules depending on your team's stage of Scrum knowledge.
  2. If your team has gotten in a groove where they work well with the current set of processes, I believe it is the Scrum Master's responsibility to try and poke the team into experimentation. You learn best by experimenting, so don't be afraid to do that. The worst thing that you can do is to limit yourself by sticking to a set of rigid rules. This is the last knowledge stage discussed in the article above.

Continuous self (and team) improvement

Just like products and processes, there is no such things as a perfect teams. It is important to think about how you can improve yourself and your team continuously in order to achieve excellence. Persistence is the key to success. In the book - Outliers, Malcom Gladwell talks about the 10,000-hour rule in order to achieve success and excellence. Slow and steady but continuous self improvement is crucial to success. Remember, it takes time for teams to figure out how to work with each other. However, when a team gets over that stage, it can make progress quite quickly. I believe in investing that time in a team to give them a chance to excel.
Rate this post!

No comments:

Post a Comment