"The Mythical-Man Month" recently came up in a conversation and I realized that a 40 year old tome is still one of mainstream development's primary references. Despite this, the software industry is dominated by fads, trends and cargo cults, without any way of measuring the value they add, if any. Consultants are especially likely to push change for its own sake. Is it possible to define and measure improvement? How?
Yes, if you look at bigger companies like Google, teams and individuals have Key Performance Indicators (KPIs) that are tracked and used to evaluate performance. The trick is to define your KPIs to align with the organization's values. Some useful metrics to look at in terms of software development are: Mean time to delivery, mean time to recovery, bugs per line of code, number of deploys per time period. Really it comes down to delivering business value, usually defined as return on investment (ROI).
Measuring KPIs doesn't necessarily highlight the cause of the improvement or problem. If someone isn't meeting their KPI do you fire them or see if the tech stack or process they are being made to use is inappropriate.
What I think is needed is a more scientific analysis of software methods to get an understanding of what really works.
What I often see is the methods used to solve problems are either fad driven or the way it was always done here.