This paper provides a helpful model for thinking about the different types of metrics that can be used to understand engineering productivity.
When we think about productivity in software development, it’s reasonable to start with a basic concept of work per unit of effort. The more work a developer accomplishes with their efforts, the better. But when researchers have investigated how developers think about productivity, some surprising nuance surfaces about what software engineering “work” actually is and at what level this work should be considered. In particular, there are four lenses through which one can reason about productivity and each of these has different implications for what actions one might take to increase productivity in a company.