Skip to main content

Why are scrum teams hung up on Velocities ?

Many teams are measured on the velocity numbers. There are scrum masters who forces the team to "achieve" the numbers without understating the science behind it. Sometime such people even ask team to put numbers against the "research and learning  " work which the team has to do. And because of this velocity focus sometime they don't allow the team to learn or invest the time to reduce the technical debt.

Velocity is only a forecast - that x amount of work can be done. This might change. I usually take an average of sprints to get this value so any change in one Sprint doesn't impact much. Overall the pluses and minuses balances themselves out. But I do keep track of changes like people resigning, long vacation, long sick leaves , holiday season , new product /domain or technology , new members joining team. Such events will impact the velocity (and sometimes the story points) . Based on the change sometime I will ask my team to revisit the story points or even re estimate the story points and velocity.

The objective of the Sprint is to work on the item(s) which product owner thinks can get maximum ROI. Learning something new which you need in upcoming sprints or working on the technical debt is like investing for future Sprints. In that future sprint your team will be able to work more efficiently because of this small investment you made many sprints ahead. Some of my teams had reserved their 10% capacity every Sprint to learn something new or to reduce the technical debts. The teams who followed this rule became better than other teams I had. But spend this time judiciously. Always ask the product owner. It is their job to get the max ROI from Sprint so if learning something new or reducing the tech debts can be the ideal thing to do in one Sprint and some other time working on the next item in the backlog.

If your company is only focused on getting the high velocity numbers then there is big need of cultural change. You have to go slow to go fast.

Velocity is only a number which can be manipulated. To look good team can easily game the system, an in many occasion have seen them finishing all the work much ahead of the time. Finishing early is good but of it happens regularly then there is a problem. It could be a problem with the team or with the company which is putting pressure to meet the commitment without any failure.    In this case maybe the team was trying to look good by taking less work. They will go into defensive mode which is not good. As long as the delivery is transparent its fine to not meet the commitment once in awhile. This shows that the team is pushing the boundaries to achieve more. But keep out an eye for team who never meets their commitment. There might be a problem. 

My only advice is not to hung up on velocity numbers. They are only a forecast.

Comments

Popular posts from this blog

PDCA & SCRUM (or Agile); Why is it important?

The PDCA (Plan DO Check Act) cycle was made popular by Dr. W. Edwards Deming. This is a scientific cyclic process which can be used to improve the process (or product). This is cyclic in nature and usually time boxed. Plan  This is the first stage of the process. During this step the team discusses the objectives, the process and the clear conditions of exit (conditions of acceptance). This stage sets the measurable and achievable goals for the team. DO Team works together to achieve the objective set in the planning phase. Team works with the set of agreed process. Check Once the implantation is done team regroups and verifies the output and compares it to the agreed conditions of acceptance decided during the planning phase. The deviation, if any, is noted down. ACT If any deviation in planned tasks is observed during the Check stage, a root cause analysis is conducted. Team brainstorms and identifies the changes required to prevent such deviatio...

SQL Server: GETDATE() & GETUTCDATE() & different time zones

Most of us will use GetDate() function for providing default value in SQL server columns. This function Returns the current database system timestamp as a   datetime   value without the database time zone offset. This value is derived from the operating system of the computer on which the instance of SQL Server is running. This works perfectly if you don’t have to show reports and such stuffs for users from different time zones. In case you want to store time independent of time zones in some universal format; what will do? Well there is GetUtcDate() function for you. This function will return then UTC date based on the setting of the server on which SQL server is installed. I executed the following function & I got the two different date output values. SELECT  GETDATE() AS Expr1, GETUTCDATE () AS Expr2 2/28/2010 1:27:17 PM ,  2/28/2010 7:57:17 AM SQL Server 2008 SQL Server 2008 has two new DataTypes: date & time You can use them to ret...

Product Backlog: Should you write everything in user story format?

I like user stories a lot. They help everyone talk the same language and results in a better product. User story alone does not constitute product requirement. User story is supposed to be a place holder for discussion which should happen between the team, Product Owner and the customer. This discussion result in a common understanding which along with the user story content is the product requirement. This format captures the essence of requirement without confusing the readers User Story is only one of the many different ways in which requirements can be represented. This is not mandatory in any Agile “process”. But many have made this mandatory. I have seen many spending countless hours trying to write the requirements in user story format when they could have easily written that in simple one-line sentence in few minutes.   I have seen team members refusing to even discuss the requirement until product owner rewrote the requirement in user story format. ...