Scrum teams can fail for many reasons just like any other team, agile or not. Describing how to succeed is tough because success is often situational. Describing how to avoid failure is simpler. Let’s explore some of most preventable ways to fail.
1. Wrong people on the team especially SM or PO
Every project team needs the right people with the right attitude. If you’ve got the wrong people on the team or people with the right skills but a poor fit, the project will suffer. This is particularly true of anyone in a leadership role such as the ScrumMaster or the Product Owner. Find good people. [If you end up with a bad apple, eliminate that person from the team at the earliest opportunity. You, the team and person being eliminated will be better off.]
2. Team over-commits and loses credibility
Many of us have a tendency to over-commit. We’re generally optimists and it often hurts us. Teams need to find an equilibrium between commitment and delivery as quickly as possible. Credibility is hard to gain and easy to lose.
3. Poor definition of done or poor control over done
Much has been written about the subject of being “done”. I won’t belabor it here. Get the team to agree on what actions must occur before a team member can move from one objective to another. Then, enforce it.
4. Velocity is not tracked or not used properly
Measuring velocity is critical to understanding how much the team can get done in a unit of time. You have to measure it and you have to refer to it when planning future sprints. No excuses.
5. Skipping retrospectives or not following through
Retrospectives are a critical learning tool. How can the team improve without assessing it’s strengths and weaknesses regularly? Those assessments must be translated into actionable improvement steps at every opportunity.
6. Technical debt piles up
Every Scrum team will incur technical debt. That’s not such a bad thing as long as the team recognizes the debt and takes action to reduce it in the current or subsequent sprints. If technical dept is allowed to pile up, the project will topple. Don’t let that happen.
7. Disorganized backlog(s) and not adding defects to them
Product, release and sprint backlogs have to be managed regularly. New defects that cannot be repaired during the current sprint must be added to the product or release backlog. Ignoring these actions will result in increasing chaos over time.
8. Version control and branching mismanaged
Good configuration management practices are important to any moderately sized project regardless of methodology. CM is even more important to Scrum and other agile projects because of the frequent builds and releases. Find a good open source or commercial CMS and use it.
9. Sprints and product release cycles are too long
Sprints of more than four weeks are too long. Product releases composed of more than three to four sprints are too long. Sure, there are exceptions but these general guidelines are worth remembering.
10. Inadequate testing (too manual)
The Achilles heel of waterfall is testing — it often gets shortchanged because it’s jammed at the end of the project. The same thing can happen to Scrum teams at the end of sprints or release cycles. Don’t let it. Automate as much testing as you reasonably can and test, test, test.