Specialty Digest

Global English edition Learners’ Study Dashboard — in development

Agile Software Development

nounSoftware & the Webalso agile methodology; agile development

In one line

An approach to building software that delivers working increments frequently and adapts plans continuously based on feedback.

Agile software development is an approach to building software that emphasizes delivering working software in small, frequent increments, adapting plans continuously based on feedback, and maintaining close, ongoing collaboration between developers and the people who actually need the software, rather than attempting to plan every detail of a large project upfront and only delivering a finished result at the very end. Agile approaches emerged as a direct reaction to earlier, more rigid development methods that often produced software years behind schedule and poorly matched to what users actually needed by the time it was finally delivered, after requirements had typically already shifted considerably in the meantime.

Core Values and Principles

Agile development is grounded in a short set of values articulated in 2001 by a group of software practitioners, prioritizing individuals and direct interactions over rigid processes and tools, working software over extensive upfront documentation, ongoing collaboration with customers over strictly fixed contractual terms negotiated far in advance, and responding flexibly to change over rigidly following an original plan regardless of what has been learned since. These values do not reject planning, documentation, or formal processes entirely; they instead argue that software teams should prioritize actually delivering value and adapting quickly to new information over clinging to upfront plans that may no longer accurately reflect genuine current needs.

In practice, agile teams typically break a larger project into small units of work that can realistically be completed within a short, fixed time period, often called a sprint or iteration, delivering a working, reviewable piece of functionality at the end of each one rather than waiting months or years for one single, final release. This short feedback loop lets a team gather real input from users or stakeholders early and often, catching misunderstandings or changing requirements far sooner than a traditional long-cycle approach would, and adjusting the next unit of work accordingly before too much effort has been invested in a direction that ultimately proves to be the wrong one.

Common Frameworks

Scrum is among the most widely adopted specific frameworks built around agile values, organizing work into fixed-length sprints, typically one to four weeks long, with defined roles, including a product owner who represents business priorities and a facilitator who helps the team follow the process smoothly, along with a structured set of regular meetings for planning upcoming work, a brief daily check-in to surface blockers quickly, and a review and retrospective at the end of each sprint to inspect both the resulting software and the team’s own working process for possible improvement. Kanban, another popular approach rooted in the same underlying agile values, instead visualizes work as it flows continuously through defined stages on a shared board, deliberately limiting how much work can be in progress at any one time to avoid overloading the team and to help surface bottlenecks quickly wherever they occur.

Despite widespread adoption across the software industry, agile methods are not universally suited to every single project or organization; projects with firmly fixed, well-understood requirements and strict external regulatory constraints, for example, may benefit less from agile’s emphasis on continuous, iterative change than a project exploring a genuinely new, far less certain problem space would. Critics have also noted that agile practices are sometimes adopted only superficially, retaining surface-level rituals such as daily meetings or sprint planning sessions without genuinely embracing the deeper underlying values of flexibility, close collaboration, and rapid, honest feedback that originally motivated the whole approach in the first place.

From a Mountain Retreat to Mainstream Practice

Before agile, many software teams followed the waterfall model, a sequential approach borrowed loosely from manufacturing and engineering disciplines, which moved through distinct phases such as requirements gathering, design, implementation, and testing in strict order, with each phase expected to be essentially complete before the next one began. Throughout the 1990s, a number of lighter-weight alternative methods, including Scrum and Extreme Programming, developed independently in different pockets of the software industry, each responding to similar frustrations with how poorly rigid, sequential planning handled the fast-changing, uncertain nature of real software projects.

In 2001, a group of practitioners representing several of these different lighter-weight methods met at a ski resort in Utah and jointly published the Manifesto for Agile Software Development, articulating the shared underlying values connecting their otherwise distinct specific practices and giving the broader movement a unifying name. Agile approaches spread rapidly across the software industry in the following two decades and have since been adapted, with varying degrees of success, well beyond pure software development into broader project management and product development practices across many other industries entirely.

Frequently Asked Questions

How is agile development different from the traditional waterfall approach? Waterfall plans an entire project upfront in detailed, sequential phases and delivers a finished result only at the very end, while agile breaks work into small, frequent increments, delivering working software regularly and adapting plans continuously based on ongoing feedback rather than committing rigidly to one single original plan.

What is the difference between Scrum and Kanban? Scrum organizes work into fixed-length sprints with defined roles and a structured set of regular meetings, while Kanban visualizes work flowing continuously through stages on a shared board, limiting how much work is in progress at once, without necessarily dividing work into Scrum’s fixed time-boxed sprints at all.

Can agile methods fail if adopted poorly? Yes. Teams sometimes adopt agile’s surface-level rituals, such as daily meetings or sprint planning, without genuinely embracing its deeper underlying values around flexibility, close collaboration, and honest feedback, a shallow adoption that critics often describe as going through agile motions without actually gaining its intended real benefits.

Key facts

  • Agile prioritizes working software and collaboration over rigid upfront plans.
  • Work is typically broken into short, fixed-length sprints or iterations.
  • Scrum and Kanban are among the most widely used agile frameworks.
  • Frequent feedback loops help teams catch misunderstandings early.
  • Superficial adoption of agile rituals without its underlying values can undermine its benefits.
Quick checkHow does agile development differ from the traditional waterfall approach?Show answer

Waterfall plans an entire project upfront in sequential phases and delivers a result only at the end, while agile delivers working software in small, frequent increments and continuously adapts plans based on ongoing feedback rather than a fixed original plan.

Sources

  1. Manifesto for Agile Software Development (2001); Scrum Guide (Schwaber & Sutherland)

Editorially reviewed by Specialty Digest Editorial TeamLast reviewed November 2, 2026Researched and drafted with AI assistanceReport an issue