This post is from the CollabNet VersionOne blog and has not been updated since the original publish date.
Agile Credit Scores – Technical Debt for Managers
So, I know what you are thinking.. Has he lost his marbles? What on Earth does a good credit score have to do with all things agile project management related? Actually, I would argue the two are more tethered than one might imagine. In fact, the two are nearly synonyms. Allow me to explain.
From a very early age we are taught to save for what we want and spend only for what we really need, yet more and more young people are being introduced to the concept of credit cards. Colleges are allowing creditors to offer students exclusive accounts without educating them about the risks. Often they don’t see the warning signs, and don’t understand the longterm ramifications until they are in over their heads.
Every agile team has been issued in essence a platinum credit card. A card with no limit that they have been instructed to use wisely. Even with this as a consideration, cardholders still spend far in excess of what would be considered a reasonable amount. This is done under the premise that as long as they meet the minimum required monthly payments, that the debt will eventually go away.
Realistically, however, when making only the minimum monthly payment, the debt almost never goes away and in some cases even increases! How can this be so? This is the often overlooked concept of compounding interest. Even if we meet the obligation the best we feel we can, the debt continues to grow in size and severity until we become a slave to the debt. How do you identify that you have become enslaved by mounting technical debt? In an Agile environment, there are signs of debt overextension:
- If quality in the current product or project is continuing to suffer and the teams are never reaching a point where the existing bug log is diminishing, they are suffering from growing technical debt.
- When developers are drained because the QA process takes far longer than it should, and the development team calls for a better process to handle testing, this is a sign that technical debt could be nearing a breaking point.
- When the product is nearing release and only the absolutely required test cases have been addressed, technical debt could be an issue.
- When the customer is enraged that the product does not perform in an expected manner, that also can be tied to increased technical debt.
Now that we have identified a few of the signs of technical debt, let’s talk about what we can do to address this before it gets out of hand.
The first required step to get past any growing debt cycle is to identify each creditor and the amount you owe each one. Once each has been identified, you need to communicate to each one about your plan to eliminate each debt in a concise and planned way. Anyone who has ever dealt with a creditor knows that one of the most difficult tasks is convincing the creditor that they will need to wait until you have paid other creditors and are in a position to pay them their share. The same holds true with stakeholders. We need to help them realize that we will focus on their project and all of the new features and enhancements as soon as possible.
In the real world, this means letting the customers and stakeholders know that at the risk of slowing down new development and enhancements on current or future projects, the debt must be addressed. This news is never easy to deliver, and people are never happy to find out there will be a delay. However, they are forever grateful once all is said and done and the Agile development project turns out all the better because of the addressed debt. In fact, once the dust settles, the key stakeholders will be even more thankful to have a product or project that exceeds their expectations.
The next key is negotiating what is reasonable and customary. Often we agree to bite off more than we can chew. We need to only commit to what we can do, and make certain we are transparent in our work in order to allow others to see the benefit in addressing and taking care of our debts. Creditors will never take you at your word if you make promises and fail to deliver. As part of the structured repayment program, you need to meet all obligations.
Even once all of this has been done, you need to realize that your credit score does not instantly increase. It is through consistently meeting your obligations and eliminating debt over time that your creditors will deem you responsible and extend credit to you. This change does not happen overnight and trust is something that needs to be re-established as soon as possible with all key stakeholders on the project.
Another consideration is that we need to only focus on the debt that is not forgiven. Corporations do not embrace the concept of technical bankruptcy. There is no debt scrubber that automatically enables agile teams to eliminate all debt and re-structure. Once an organization has been burdened with debt, it needs to work to remove the said debt. The keys to success are simple:
- Act NOW!
- Identify key areas for repayment.
- Enable testers.
- Stop forward work as needed.
- Make commitments and keep them.
- Remain transparent.
- Avoid additional debt at ALL cost!
The lesson learned is that debt is easy to build and hard to eliminate. It takes grit and determination to be successful in the quest to eliminate or drastically reduce debt. As mentioned earlier, the key is to have a plan and stick to it. Snowball to eliminate debt and make certain everyone can see and relish in your success. Reading this blog post could be the first step towards your organization’s success.