“Not everything that counts can be counted, and not everything that can be counted counts” ― Albert Einstein
Many customers ask us about metrics for development organizations (1), obviously the practice of measuring software development has been around for a while, in fact back in 1975, almost 40 years ago, IBM discovered the link between quality and productivity. Since then (even before?) we have measured efficiency or productivity, with things like project planning, work organization, control indicators, resource allocation, quality, lines of code, improvements, etc. both process and technical aspects of software development are being assessed.
However as business changes, the measurement practices should as well. Nowadays the challenges are more related to complexity than efficiency: Globalization, localization, distributed teams, more platforms and languages to maintain, dealing with more maintenance than new development, multiple processes to follow and report on, etc. make things not only complicated but complex (2). And business is changing rapidly, requiring the software development organization to adapt quickly.
Talking to our customers they all, pretty much, want the same things:
So how do we insure that, as a software organization, we deliver the right software, given the complexity of the environment? Bottom line: it is about making sure we best utilize dollars spent.
I remember listening to the state of the union (on February 12, 2013)… What if we could measure the Return on Investment of our software development organization like POTUS described (3):
Wouldn’t it be great? So, how can we calculate the ROI of software development?
Assuming we define Return on Investment as Value (gain) divided by Cost (investment) - continue part 2