Productivity Measurement
TL;DR
Do you know how much metadata is generated during software development?
DevOps teams leave a trail of artifacts stored in places like GitHub, Jira, or local repositories.
The MECOIS team identifies the activity-based artifacts that give the broadest range of viewpoints on your software development work and continuously extracts them.
These artifacts are then converted into usable metrics like lines of code, timestamps and more.
We then work our magic (some call it high-dimensional data analysis) on these metrics to generate a composite index that objectively measures productivity.
During this process, other metrics are generated which can be used to support managerial decision-making and monitor ongoing software development to find potential improvements in the software development workflow.
Our research has shown that this productivity index can be used to compare projects, teams, and even the same team across time. Want a deeper dive into our methodology? Keep scrolling! 👇
We are currently in private beta. Please subscribe to connect with us and be among the first to learn about general availability.
We are on a mission to empower software developers and remove the barriers of global engineering collaboration.
Key Questions
Measuring productivity in software development is essential, providing invaluable insights for both developers and management. It serves as a key indicator to help answer important questions such as:
Are there sufficient resources for development?
Are processes functioning as intended?
Can we learn something from other projects?
Challanges
However, one of the biggest challenges in measuring productivity is the need to compile diverse metrics from different phases of the software development lifecycle. The MECOIS Productivity Index does just that.
Current approaches segment and aggregate all available metrics into hand-crafted categories. However, this approach has several issues:
Complexity and Interpretation - Aggregating a large number of metrics can make the final output confusing and difficult to interpret, rather than providing clear insights.
Overlapping Metrics - Many metrics measure similar aspects of development. For example, tracking both the number of commits and the number of lines of code added in a given time frame will likely correlate. This can distort the evaluation by unintentionally overvaluing certain aspects of productivity.
Incompatible Value Ranges - Different metrics have different scales and meanings. A single commit and a single bug fix carry very different levels of significance, making it nearly impossible to aggregate these values into a meaningful metric.
Our Approach
To address these and more, we apply a method commonly used in the social sciences to evaluate complex, multidimensional constructs: the creation of a composite index. This approach effectively counteracts the three challenges above, making the MECOIS Productivity Index an ideal solution for measuring productivity in software development.
Instead of relying on individual metrics in isolation, we group correlating metrics into key dimensions using data-driven statistical methods. Each dimension–or principal component– represents the most influential aspects of development. Doing so drastically reduces the number of dimensions required.
During our research, we applied this productivity index to a variety of software projects, tracking their progress over a three-month period. Using the MECOIS Productivity Index, we established a relative ranking which highlighted the highest and lowest performing teams at any given moment.
This live ranking allowed us to uncover key insights into team dynamics, development patterns, and potential factors influencing productivity; both the good and the bad.
The Results
The MECOIS Productivity Index identified a team, Team 16, who demonstrated consistently high performance throughout their development. Their workflows aligned well with intended processes, resulting in efficient development time for all team members. By identifying this high-performing team, we were able to conduct a deeper analysis of their processes allowing us to discover best practices.
Team 13, on the other hand, started off with a high ranking but trended downward. A closer look revealed the cause to be miscommunication between the product owner and customers regarding feature requirements, which prevented the development team from working at full capacity. Catching issues like this early is critical to customer retention.
In contrast, Team 8 faced the opposite challenge. Their project began with difficulties, but thanks to effective intervention by the scrum master and product owner, misunderstandings were resolved, leading to a much smoother and more efficient development process in the latter half.
The MECOIS Productivity Index enables intelligently identifying potential issues in their early stages so problem solving is proactive instead of reactive.
We are currently in private beta. Please subscribe to connect with us and be among the first to learn about general availability.