At it’s heart, recovery is about fixing problems. Before we get into individual and combination problems let me lay my definition on the table for your consideration and comment.
A problem is only a problem if it causes the team to underperform. Underperformance is determined by plotting the teams current performance at any moment in time against a projected ideal performance baseline. Something like this.
Given that a problem worth fixing should drive the team off the ideal line. Here then are the top 5 reasons a problem is worth fixing;
#1. A problem is worth fixing if it prevents delivery of a solution to users that they can use. If it fails to function as intended, fails to function at all, or fails to return a reliably correct result it’s not done. You have problems.
#2. A problem is worth fixing if it increases risk beyond the tolerance of the project. Much like buying stock, when a team undertakes an activity it has to balance risk against reward. The corollary being the bigger the risk the bigger the problem when things go wrong. Unfortunately it is common for a troubled project to indulging in high risk gambles hoping for the big score to buy back all their prior losses.
#3. A problem is worth fixing if it increases cost beyond the budget of the project. Ever have a someone tell you to use a free tool that is the perfect solution for your problem only to find out you need to higher consultants, pay under expressed fees, and burn that most valuable asset... time. Throwing money at a problem is one way, but understanding exactly how much you can throw before you are simply exchanging one problem for another … priceless.
#4. A problem is worth fixing if it reduces project velocity below the speed necessary to deliver, in the time remaining, the agreed on scope, at the agreed on time. No matter how much easier it would be to deal with, velocity is not constant throughout the lifecycle of a project. Moving from start to finish in a time-box requires constant and precise adjustments to velocity.
#5. A problem is worth fixing if it if everyone knows the answer but no one is doing anything about it. All too often the team knows something that, left unchecked, will kill the project. Sometimes it is a staffing issue, sometimes it is building the wrong although clearly stated scope, and sometimes its defects yet to be addressed. No matter what the specifics are, if more than a couple team members know the issue is laying around unresolved it is clearly worth fixing.