In recent times, various productive and performative software engineering metrics have been enlisted. According to professional consultants’ opinion, there are more than 20 KPI-style metrics for efficiency and quality in the field of software engineering. The market leaders in this market are Waydev, Gitprime (Pluralsight Flow), Code Climate.
If someone is knowledgeable of the software engineering field, its developments and applicability in a broader sense, then he or she must be familiar with the metrics below.
Velocity: This is the average speed in which something passes by on a very short distance.
Burndown: It measures the rate at which short distance has been covered.
Story point variance: It shows how much all points differ and are inconsistent.
Labor: The man force which has been spent on tasks that are manual and are not valuable in the long term. Defect Escape Ratio: The ratio of defects filed by the customer or end-user, for a particular release to the total number of defects for that release (filed by QA and Developers before deployment).
All these metrics are useful, but the flaw comes at the time when they are implied. There are certain qualities of metrics that can prove handy.
These are:
Discoverable: The metric should be applied within a short period of time with few human resources. It means that the metric should be in such a way that it shouldn’t consume a lot of time and required a lot of people.
Actionable: The metric should address what is meant to be done. It should be clearly explained with a comprehensible plan. If the metric is challenging and raises questions, then it is of no use.
Consequential: The metric should relate to the results of the business. It is applicable by a few teams because it considers the efforts but not the outcomes.
These criteria can be implied to the taken sample of metrics to check the efficient performance and resulted in productivity.
Velocity, burndown, and story points can be grouped as a whole because they all consider the points to evaluate the results. They use story points to analyze the data for productive outcomes.
Actually, story points give an insight into the estimated proportion of effort which
is used for work. These points do not consider the hours of
time which have been put in the work. This is designed in such a way to ignore the debates among businessmen and stakeholders about how long work takes in. No matter that these points
have ignored an essential element of time, teams say that points are
important and effective. Teams
claim their worth, which is to make points differ from the most useable and common currency.
It is said by Ron Jeffries, who is an initiator of points, that if both teams have different perspectives of the same thing, then there is no interest in it. According to him, comparing two teams is just useless.
As points are so hard to remember and difficult to understand, the metrics are not able to compare the performance and productivity of products. The performance of teams cannot be compared to examine their performances.
It is a big issue to evaluate the performance of one team in isolation by using such metrics. There is a particular time period when a team agrees to the points. If a team has 20 points at one time and 18 points on another, then it means that the team is lacking efficiency or the perspectives have been changed?
According to the criteria which have been mentioned above, velocity, burndown, and story point variance can fall into the criteria of discoverable but not in the actionable and consequential criteria.
What about labor?
Labor is the man force that is used to consume manual work. This is used to estimate the efficiency of work. Labor is actionable and consequential because efficient work shows the leader the right path of action. It also allows a leader to have smoother work by having less efficient labors.
Then comes that whether labor is discoverable or not? Actually, to take a lot of time to calculate and assume which work is doable and has long term value. There is always a significant stream in which various tasks involve one another.
To have an insight of how much labor is used, one needs to calculate the ratio between the labor work activities and nonlabor activities. Also, this calculation has to be done weekly or monthly for effective outcomes.
There are also doubts about Defect Escape Ratio. It provides a clear insight into being fall in the criteria of actionable and consequential because if there is a high Defect Escape Ratio, then, there is a high decrease in production.
There are two things which are needed to be known in order to calculate the Defect Escape Ratio.
- The total number of software defects filed.
- The number of software defects that have been eliminated before the release.
There are a lot of complexities and issues in simple software, which are hard to find before there production and release. The big bug must be detected prior to production, and all teams should agree upon those defects.
Concludingly, Defect Escape Rates do not meet the criteria of discoverability because it’s hard to identify who is responsible for that big issue. It can’t be measured. It has no proper figurative scale.
Criticism is always easy to make. The question is if these metrics are not applicable and useless, then what is the alternative of these metrics?
The answer is Git Analytics. Git Analytics were created for engineering leaders to rely on concrete data, rather than burndown charts and story points. It works by automatically analyzing your codebase from your Git provider and aggregating it into quantifiable metrics. These metrics help you direct one-on-ones effectively, hold nondisruptive daily standups, and improve your code review workflow.