February 13, 2011

...Learn TDD with Codemanship

Software Development Team Top Trumps

One thing that really gets my goat is how, unlike in many other industries (like film production, for example), the best projects don't attract the best software developers - or is that the other way around?

Take start-ups, for example. Johnny Entrepreneur comes up with a cracking idea fo a Social Web 2.0 Semantic Crowd-sourcing & Dating web site. He secures $10 Squillion in venture capital and now needs a team of code monkeys to make his dream a reality, via the medium of Java or whatever.

How does he select this team of top-flight developers? From the evidence I've seen, by sticking pins in a telephone directory whilst wearing a blindfold.

If only there was some way for Johnny Entrepreneur to distinguish the good eggs from the bad apples.

Help may be at hand, in the form of Software Development Team Top Trumps.

Some Top Trumps, yesterday

With these handy cut-out-and-keep summaries of the relative software development capabilities of suppliers, Johnny Entrepreneur can see at a glance who does the best work, at the best price.

These are just a random bunch of measures I pulled out of my arse for the purposes of illustration, of course. But hopefully you get the gist.

TCO/KLOC is the total cost of development and support per thousand lines of code delivered by this supplier/team over a 5-year lifespan of software products developed initially by this supplier/team. Even if they only work on the first release, the total cost is taken into account. There's no walking away from it.

Defects/KLOC is self-explanatory. Bugs reported per thousand lines of code. This may help paint a picture for customers of the real relationship between quality and cost.

Project scope tells us the range of project sizes this supplier has successfully completed. Note that suppliers with a much larger TCO/KLOC will appear to take on larger projects. Maybe finally customers will cotton on to the fact that big projects are often just very expensive small projects.

Code Cleanliness gives a score out of 5 based on things like simplicity, readability, lack of duplication and modularity. Again, maybe this well help educate customers as to the real relationship between quality and cost.

Delivery reliability is the percentage of releases to the customer that stick first time. Basically, it's a measure of the faith they can put in us that when we say we're done, we really are done.

You probably have your own ideas about what should be on these Top Trump cards. Answers on a Top Trump card please to my @jasongorman Twitter wotsit.

FOOTNOTE: It's just occurred to me that a really useful statistic to have on these cards might be Average cycle time, a measure of average elapsed time between a requirement being requested and that requirement being satisfied in a working release. One for the Agile folks out there.

Posted 7 years, 2 months ago on February 13, 2011