Everyone is looking for a competitive edge. It’s not surprising, then, that solutions promoting decreased time to market and increased productivity would be appealing. As more organizations begin to implement agile into their software development practices, it is logical to wonder whether agile development methodologies truly differ from traditional waterfall methods and what quantifiable advantages may be realized by adopting agile.
To tackle these questions with some objective numbers and data, software estimation company Quantitative Software Management Inc. conducted a case study for a large technical business organization (that wishes to remain anonymous). Initially a waterfall shop, this company attempted to adopt agile on a small scale in 2010. The results were less than optimal, primarily because the company lacked the necessary infrastructure and organizational mind shift necessary to truly embrace the principles of agile in its environment.
In 2011 it made a second attempt, this time using a more integrated approach. To start, it had organizational support and buy-in from senior management and key stakeholders. The process consisted of conducting an initial baseline assessment of development systems using an integrated set of tools and methods that would support agile and help manage the backlog, as well as a training component.
What QSM found from this instance (and others) was that successfully adopting agile may take upfront investment of both time and resources in order to realize optimal results.
Figure 1 shows a comparison over time between the average productivity of agile and waterfall projects. Productivity was measured in index points, a calculated proprietary QSM unit that ranges from 0.1 to 40. They allow for meaningful comparisons to be made between projects and account for variable software development factors such as management influence, development methods, tools, experience levels, and application type complexity. The projects developed using waterfall methods increased their average productivity ratings between 1.5 and 2 index points per year, which is fairly typical of this organization’s industry. As organizations improve their software development techniques and become more efficient, they also tend to improve their productivity over time.
You can see that the projects developed using agile methods did not have the highest productivity ratings when first adopted in 2010. However, by 2011, productivity not only increased dramatically—by 7.5 index points—but also surpassed the average productivity of the projects using waterfall methods.