NOTE
First published on Medium in February 2017 and republished here in August 2026. The surveys and figures are as of the original publication.
A quick guide to Agile development for non-engineers.
If you were managing 100 software developers you would have to choose the best way to maximize their productivity. Since the dawn of the computer era many software project management approaches have been tried. The waterfall model dominated software project management up until the 1990s. In the early days of computing, project management was adapted from the manufacturing and construction industries, which required detailed planning and a great degree of structure. Projects were organized into phases (conception, initiation, analysis, design, construction, testing, production/implementation and maintenance) and progressed through these phases sequentially. Once a phase was done, the team moved forward to the next phase.
The waterfall model is better suited to situations where the requirements are fixed and well understood up front. This is nothing like the technology industry, where the competitive environment evolves rapidly. In the 1980s a typical software project required about 12 calendar months. In technology-driven businesses (which is nearly everyone these days) customers demand new features and services, and competitive pressures change priorities on a seemingly daily basis. The waterfall model has no mechanism to respond to these changes. This led to a seemingly endless cycle of planning and replanning, causing delays and resulting in project budget overruns.
What Agile changed
In the early 2000s, the software industry embraced a new approach for code production called Agile development. Agile is an umbrella term for several different iterative and incremental software development methodologies.
In Agile software development, the team and its processes and tools are organized around the goal of publishing releases to the users every few weeks, or at most every few months. A development cycle is called an iteration, or a sprint. At the beginning of an iteration, the team commits to completing working and valuable changes to the code base. With iterations occurring at short intervals, the organization can continuously reassess its priorities and incorporate them into future iterations. This allows the development team to more easily adapt to changing requirements.
In an average software team, the developers don’t always understand user environments and applications. In Agile development, features are associated with user stories, which help the development team understand the context behind requirements. User stories include descriptions of features and acceptance criteria.
What the numbers said
Agile is widely credited with boosting software productivity. One study sponsored by the Central Ohio Agile Association and the Columbus Executive Agile Special Interest Group found that Agile projects were completed 31 percent faster and with a 75 percent lower defect rate than the industry norm. The vast majority of companies are getting on board. In a survey of 400 IT professionals by TechBeacon, two-thirds described their company as either “pure agile” or “leaning towards agile.” Among the remaining third, most use a hybrid approach, leaving only nine percent using a pure waterfall approach.
In an increasingly competitive marketplace, Agile methods allow companies to become more responsive to customer requirements and accelerate time to market. Agile also improves ROI, because features delivered in each iteration can be monetized immediately instead of waiting months for a big release. 
Average release frequency over time.
Agile is the major reason that release frequency improved from around three months in the 1990s to about three weeks in the 2000s.
Improvements didn’t stop there. Today releases happen every few seconds, using an approach that builds on Agile: how software teams went from three weeks to three minutes.
Agile development is one of the three traditions behind DataOps, alongside DevOps and the statistical process control that comes out of lean manufacturing.