Agile (method)

Agile (method) is an iterative, incremental approach to software development and project management in which work is delivered in short cycles, requirements evolve through collaboration, and teams adapt continuously to feedback rather than following a single fixed plan defined upfront.

The Agile Manifesto and its values

Agile was formalized in 2001 when seventeen software practitioners published the Manifesto for Agile Software Development. The manifesto sets out four core values, each expressed as a preference between two options while acknowledging that both have worth:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

These values are supported by twelve principles, including delivering working software frequently, welcoming changing requirements even late in development, and maintaining a sustainable pace. Agile is not a single tool but an umbrella covering several frameworks, the most widely adopted being Scrum, alongside Kanban and Extreme Programming (XP).

How Scrum operates in practice

Scrum is the most common Agile framework. It organizes work into fixed-length iterations called sprints, typically one to four weeks long, each producing a potentially shippable increment. Scrum defines three accountabilities:

  • Product Owner — owns and prioritizes the product backlog, representing business value
  • Scrum Master — facilitates the process and removes impediments for the team
  • Developers — the cross-functional team that builds the increment

Scrum prescribes recurring events: sprint planning to select the work, a short daily scrum to synchronize, a sprint review to inspect the increment with stakeholders, and a sprint retrospective to improve the team's way of working. Progress is tracked against the product backlog and the sprint backlog.

Agile versus waterfall

The waterfall model is sequential: each phase (requirements, design, build, test, deploy) is completed and signed off before the next begins. Agile replaces this linear flow with repeated short cycles that revisit every activity. The practical differences matter most when requirements are uncertain or expected to change.

CriterionAgileWaterfall
DeliveryIncremental, in short iterationsSingle release at the end
RequirementsEvolve throughout the projectFixed and signed off upfront
Change handlingWelcomed at any stageCostly, managed via change requests
Customer involvementContinuous, every cycleMainly at start and end
Feedback loopFrequent and earlyLate, after delivery
Best suited toEvolving or unclear scopeStable, well-defined scope

Neither approach is universally superior. Waterfall remains appropriate for projects with fixed, well-understood scope and strict regulatory or contractual constraints, while Agile fits products where learning from real usage is expected to reshape the roadmap.

Questions fréquentes

Agile is a broad mindset defined by the Agile Manifesto's values and principles, not a specific process. Scrum is one concrete framework that implements Agile through sprints, defined roles, and prescribed events. Put simply, Scrum is Agile, but Agile is not only Scrum; Kanban and Extreme Programming are also Agile frameworks.

Agile originated in software development, where the Agile Manifesto was written in 2001. Its principles of iterative delivery, frequent feedback, and adaptive planning have since been applied to marketing, hardware, and general project management. That said, Agile delivers the most value when work can be broken into increments and when requirements are likely to change.

Waterfall suits projects with stable, fully understood requirements that are unlikely to change, and where strict sequencing or formal sign-off is required by contracts or regulation. If the scope is clear from the outset and early feedback offers little benefit, the predictability of waterfall can be an advantage. Agile is better when scope is uncertain.

In Scrum, a sprint is a fixed-length iteration of one to four weeks, with two weeks being a common choice. The duration stays consistent across a project to create a predictable rhythm. Each sprint produces a potentially shippable product increment and ends with a review and a retrospective.

Building a custom software project? We design bespoke software aligned with your roadmap.

See our custom software expertise