Code Debt is the debt we incur when we write sloppy code. We might do this to rush something out the door, with the plan to refactor later. Agile methodologies focus on delivering functionality quickly. They also invoke a mantra of refactoring – “make it better next release.” This can create pressure to “get it done” that overwhelms the objective of “get it done right.” Taking on code debt like this is about as smart as using one credit card to pay off another one.
Ten Common Mistakes of Going Agile
This concludes and summarizes our winter-holiday series on the 10 common mistakes of going agile. The ten mistakes that Levent Gurses identified in the Dec 2006 edition of Dr. Dobb’s journal. Here are links to the ten previous articles, and a summary of the mistakes.
Going Agile, 10 Mistakes: Make Agile the New Religion
Don’t over-hype the approach. Don’t be one-dimensional in your message. You will lose credibility. And if you over-promise, you risk making agile the scapegoat.
Going Agile, 10 Mistakes: Choose Key People Poorly
Agile projects succeed or fail largely on the strength of the team. Don’t pick people based on experience or cost. The former is backward-looking and the latter is unrelated (or inversely related) to potential. Make staffing decisions based upon the likelihood of the team succeeding.
Going Agile, 10 Mistakes: Trash Computer-Based Tools
In short, this mistake is the mistake of not documenting. Computers make documentation tasks easier. Don’t discard them as “overhead.â€
Going Agile, 10 Mistakes: Overdo the Team Room
If everyone is forced to sit in the same room too early, then some people will be underutilized. At the start of a project, not everyone can start working – there is some up-front planning that has to happen before getting started.
Going Agile, 10 Mistakes: Don’t Create a Project Plan
After doing the ‘prep work’ for the project, you are ready to begin. When “the boss†asks for a project plan, tell him to wait 6 weeks.
Going Agile, 10 Mistakes: Fail To Define Roles
We have to define the roles and responsibilities of each person within the team. This helps both with execution and communication (to people outside the team).
Going Agile, 10 Mistakes: Fail to Identify The Sponsor
If we don’t identify the champion of the endeavor to convert to agile processes, we can’t keep them informed of progress. Their expectations need to continually adapt to progress just like every element of agile.