The SPACE framework is an acronym for an approach to measuring, understanding, and optimizing engineering productivity. Outlined by researchers from GitHub, Microsoft, and the University of Victoria, it encourages leaders to look at productivity holistically, placing leading metrics in context with each other and linking them to output, often team goals, rather than individual effort. The SPACE framework breaks productivity into five metrics:
- Satisfaction and wellbeing
- Communication and collaboration
- Efficiency and flow
Why the SPACE metrics for developer productivity?
- Satisfaction and wellbeing
Productivity and satisfaction are correlated. Many surveys like DORA’s annual Accelerate State of DevOps report place emphasis on understanding developer satisfaction as beneficial in understanding and even predicting productivity.
Producing a large amount of code does not automatically mean high-quality code. Software is often the sum of contributions from a team of developers. For these reasons, performance is often better evaluated as an outcome instead of output, e.g., the team effort.
Activity can be a count of actions or outputs completed while performing work. Some easy examples include the volume or count of design documents and specs, work items, pull requests, commits, and code reviews. It can also involve less tangible activities like team meetings, team sharing of code, helping team members, etc.
- Communication and Collaboration
Effective teams that successfully contribute to and integrate each other’s work rely on high transparency and awareness. Effective collaboration can drive down the need for some activities like unnecessary code reviews and rework.
- Efficiency and Flow
Many software development teams measure their performance using the four key DevOps metrics outlined in Accelerate: The Science of Lean Software and DevOps by Nicole Forsgren, Jez Humble, and Gene Kim. An example of team performance or development waste can be duplicated work, rework, or time-consuming manual activities.
How do you measure developer productivity?
The SPACE framework is relatively new and builds on previous models but has been increasingly adopted or trialed in software companies as a framework to understand and then focus on the key factors that can influence developer productivity.
Even more effort has been placed and invested in this area since the pandemic forced people out of the office where their very attendance was a baseline measure. Of course, many will agree that hours worked is a false metric and not one that incorporates the multi-faceted nature of many jobs, but it is an easy one. The SPACE framework highlights many myths about measures such as ‘Productivity is all about developer activity’1 and, instead, places emphasis on ‘Performance is often best evaluated as outcomes instead of ouput’1.
As with any working environment, is a person working eight hours more productive than someone who works five? Average salaries are often reported and actual hours worked on coding in an average contracted 40-hour week vary considerably, based on deadlines, sprints and features.
Picking the right elements from the SPACE framework and tracking them over time in connection with each other can give valuable insights into the real productivity influences of a team.
What’s the difference between the SPACE framework and the DORA metrics?
The four key DevOps metrics explained in the Accelerate book were based on research conducted by DORA for its annual State of DevOps report, and measure software delivery performance across four key areas:
- Deployment frequency
- Lead time for changes
- Time to restore service
- Change failure rate
The SPACE framework is complementary to DORA and goes a level deeper in trying to build a picture of the metrics for individuals and teams involved in development. Nicole Forsgren helped develop both frameworks and comments that the DORA metrics are ‘the signal’ (how we are doing), while SPACE is the ‘action required’ to improve in the most effective way possible. You can find out more in this DORA Community Discussion with Nicole Forsgren, DORA in SPACE.
One key way to improve the performance of software development teams is to reduce manual, time-consuming work and increase productivity by standardizing workflows and practices. Find out how SQL Toolbelt Essentials can help with the industry-standard tools for SQL Server development and deployments.
If you’d like to discover more, catch up on our product article, The Essential Tools for Standardizing SQL Server Database Development.
And if you’d like to see how just one of those tools, SQL Prompt, can help increase productivity, improve code quality, and make collaboration easier, read: Exploring New SQL Prompt Features in SQL Toolbelt and SQL Toolbelt Essentials.
1. The SPACE of Developer Productivity. https://queue.acm.org/detail.cfm?id=3454124. Accessed August 2023.
Was this article helpful?