How do we measure something that we can’t see? How do we evaluate the performance of something that, in some ways, almost doesn’t exist? Measuring performance in software is hard, in part because we can’t see it. Our inventory doesn’t move down a production like parts do in a manufacturing plant. It’s also difficult because software is a relatively new field.
Other disciplines, like accounting, have been around for centuries. There are two keys to measuring software performance. The first is to focus on outcomes, and not just outputs. The second is to focus on team or global measures, and not just individual or local measures. Most attempts to measure performance, often through productivity, have done the opposite. I’ll share these quickly. The first example is lines of code. This has a long history in software. However, we would prefer a 10-line solution to a thousand-line solution to a problem.
Continue reading →