DEV Community

Jonathan Hall
Jonathan Hall

Posted on • Originally published at jhall.io on

Inputs, outputs, and outcomes

How do you measure the effectiveness of your team or project?

Broadly speaking, there are three categories of things we can measure with regard to a human endeavour (and non-human endeavours as well): Inputs, outputs, and outcomes.

The trouble is that the easiest ones to measure (inputs and outputs) are the least interesting or valuable.

Examples of inputs:

  • Hours worked
  • Money spent
  • Meetings attended
  • Raw materials consumed

With the strange exception of the first, it’s usually pretty widely accepted that measuring inputs is of very low value, because it’s so far removed from the business goals. We can spend millions of dollars, or invest countless person years into a project, but if the project never works, it’s all waste.

Examples of outputs:

  • Lines of code produced
  • Features created
  • Bugs fixed
  • Server up time
  • Units shipped
  • Reports generated

Measuring outputs is pretty universally better than measuring inputs. All else equal, if person A produces 5 units in 8 hours, and person B produces 10 units, the greater number of units is probably better.

Of course, many, if not most or all, of these have their own drawbacks. Measuring lines of code is a famously bad measure of effectiveness, because it’s so easily gamed. Truth be told, practically all of these can be gamed.

So that leaves us with measuring outcomes. Outcomes are the actual business goals achieved.

How do you measure the outcomes of the work your team or project produces?


If you enjoyed this message, subscribe to The Daily Commit to get future messages to your inbox.

Top comments (0)