“So, you are saying that the main problem with productivity measurements like velocity is that, story points, the basis on which these velocities are measured against, cannot be trusted…”
“Yes. Mainly because there are no standards for story points. It is actually a relative measurement. And the main focus of velocity measurements based on story points should be for forecasting and planning than for productivity measurements and comparison of productivity across teams.”
“So, instead of measuring burnup, and focusing on improving its rate, it is better to concentrate on some issues like the following:
- testers having to wait for an unnecessarily long time before the developed system reaches them to be tested for features during a sprint
- changes taking place during a sprint
and many such issues that impede the progress of work.
Addressing these will ensure that the flow of work from the customer is more efficiently addressed, than measuring productivity and trying to improve it.”
The challenge: What is the Agile lesson here? Can you elaborate on this? What can be done here?
Clue: Rabbits run in a zig-zag, while hares run straight
Agile and Lean are complementary, and can bring benefits if implemented together. And in this, it should be emphasised that Lean thinking should take priority over productivity measurements.
The main problem with productivity measurements is that people, mostly subconsciously, give you estimates and results to satisfy any measurement yardstick you use. Story points, on which measurements like velocity are based are also subject to this. Many a time, therefore, these productivity measurements may satisfy any set goals of the measurement. But this may not reflect real productivity or customer outcomes.
The important thing, therefore, is to focus on the process of eliminating waste and not just on results. Results will then come naturally. In the Bhagavad Gita, Krishna advises Arjuna to focus on selfless action and not worry about results. This is exactly what Lean is – focus on doing things right, and eliminate inefficiencies and waste relentlessly, as you go along. There is no undue focus on results.
Taking the particular situations mentioned in the problem, the first one happens when people in a team take up several individual stories simultaneously, rather than collaborating on one or two stories. In the first case, each developer finishes their story and all the finished stories are dumped on to the testers at the end of the sprint. This leads to very little or no time at all for testing. This is almost a waterfall-like approach. Instead, if they had collaborated on one story or a smaller number of stories at a time, a process that Agilists call swarming, and if there were better developer- tester collaboration, developed or developing features would have reached the testers early enough for them to do a thorough test. Establishing good limits on work-in-progress can help here.
Another key area of inefficiency is changes taking place during a sprint. Development work on a story is in progress in a sprint, when the Product Owner brings in a change to the story. This makes for lost work and the need for rework.
The scrum master has to be a very tactful and strong person in this situation. Too many changes during the sprint will create a lot of stress among teams. The scrum master has to mediate discussions between the PO and the developers to ensure that an absolutely critical change does indeed get addressed, but less critical ones do not create a stress situation. It is also important to address this at the highest level, to understand why some of these changes are being brought in in this fashion. This could be a symptom of poor coordination with the customer.
The hares challenged the rabbits to a race. The rabbits accepted the challenge and they decided that they will run a 10 x 10 km relay race.
The hares knew that they could achieve a top speed of 55 km/hr whereas the rabbits could do only 48 km/hr. So, the hares decided that if they ran at a speed of 50 km/her, they could easily beat the rabbits. The rabbit knew that their main problem was that they ran in a zigzag fashion rather than straight like the hares. So, they decided that they would eliminate tis wasteful zigzagging and try to run straight.
The race started. At each change of baton, the hares measured the speed achieved and they were happy they were getting the desired speed of 50 km/hr. The rabbits concentrated on eliminating their zigzag sort of running and running straight. They did not worry about what speed they were getting.
Lo and behold when the race ended it was the rabbits that had won. They had achieved a speed of 51 km/hr by just eliminating their zigzags.