How much do you know about your software development projects? Really know, with numbers to back it up?
I offer the proposition that we typically have more detailed information available about a baseball game played a century ago than a software project that ended last month.
Example, from the last MLB game of 1909,
It is easy to find box scores for all 7 games. We know who the players were, their roles, how many runs scored, each batting average, it goes on and on.
Now compare to the International Software Benchmarking Standards Group
There are about 130 questions varying in detail, but an example is list the distribution of experience of people who worked on the project “< 1 yr 1 to 5 yr > 5yr” have in the
- application area,
- business area,
- and programming language.
How about the number of defects (not changes, that’s a separate question) in your initial requirements document?
Seriously, most projects I encounter can only guess at the numbers. Some values can be looked up, others will be estimated, some are just flat out guesses. That said, the revolution in actually learning something from baseball statistics took about 50 years, starting with Branch Rickey in the 1950s, then Bill James in the 1970s with a few in between, but not going mainstream until Sandy Alderson and Billy Beane
Collecting data doesn’t guarantee you are getting the right data, or are interpreting it correctly. But having the data beats not having the data every time. Even a small project can cost upwards of a million dollars. Shouldn’t we be ashamed that we know less about our work than we know about a turn of the 20th century game?