Software Methodoligies:
Why are software projects so prone to failure?
According to Dana Gardner, noted analyst and ZDNet columnist, “Today’s software development projects are highly distributed and complex, which makes the need for accurate metrics more critical than ever. The challenge is gaining accurate and transparent visibility into the actual work patterns of developers, and, more importantly, amassing the metadata of development productivity analytics. Organizations without visibility into development processes are putting business goals at risk.”
“You can’t manage what you can’t measure” is the famous mantra of author and thought leader Tom DeMarco. This message is profound in its simplicity, and it has inspired many believers.
However, many organizations were ultimately disappointed with their early software development metrics initiatives. It’s not uncommon to hear managers lament about software development metrics programs gone awry. Metrics are said to be artificial, inaccurate, costly to collect, and even unethical. And despite the tremendous importance of metrics, many organizations have resigned themselves to failure because of a negative experience with first-generation initiatives.
Like many other first-generation management techniques, software development metrics programs often imposed far too much process—crushing organizations under their weight and erasing any potential for promised benefits. But today’s approach to metrics is different. Just as other management techniques evolve, “enlightened failures” have informed fundamentally new approaches.
Managers who believe they understand project metrics programs are advised to take another look.
Today’s approach to metrics calls for automation over process and in-process adjustment over post-mortem analysis. And instead of a centralized approach to management control, today’s metrics programs are inclusive, making information available to all stakeholders in the lifecycle. And rather than trying to serve up a sea of data just because it’s available, today’s programs are based on manageable scale and scope and are designed to deliver simple, actionable insights.
Of course, no software development metrics program is a silver-bullet solution. To be effective, metrics must be properly planned, managed and acted upon. What is measured, how it’s collected and how it’s interpreted are the difference between brilliant insights and blind alleys on the path to metrics-driven software development. This whitepaper discusses the five essential elements of software development metrics success, providing a framework for planning a metrics program within your organization.
Why Metrics Fail Us
Today’s systems for collecting and reporting on metrics are simply not fit for their intended purpose. According to Forrester Research, software development processes are managed today based on traditional project management tools, which they characterize as a “state-of-the-art 40-year-old process.” While project management tools play an important role in managing broad initiatives, they are fundamentally limited as it relates to software development processes.
Some of the key limitations and software development resources:
Manual – All data is hand-keyed by people, which is time-consuming and distracting
Static – Provides a snapshot in time, but doesn’t reflect the dynamism of a project
Subjective – Data input is based on individual interpretations, assumptions and biases
Coarse – Provides high-level information, but limited detail or context at the process level
Incomparable – Data varies from project to project, which limits comparability
The reality is that today’s traditional project management tools are simply not fit for the purpose of understanding and tracking software development projects. But there is a new class of solutions that are emerging to make accurate and up-to-date software development metrics a reality.
The balance of this whitepaper will discuss the requirements for a successful developement of metrics programs, followed by an introduction to a unique and powerful solution for automating metrics collection.