MethodologiesBasic

Agile

Software development philosophy that prioritizes incremental value delivery, customer collaboration, and adaptation to change over rigid planning.

Pronunciation

/ˈædʒ.aɪl/
"AJ-ile"

What is it

Agile is a software development philosophy articulated in the Agile Manifesto published in 2001 by 17 industry leaders. It’s not a concrete methodology — it’s a set of values and principles that guide how software teams should work.

Concrete methodologies that implement Agile include Scrum, Kanban, XP (Extreme Programming), and SAFe (Scaled Agile Framework).

The 4 Values of the Agile Manifesto

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

The items on the right have value, but the items on the left are valued more.

The 12 Agile Principles (summarized)

  1. Satisfy the customer through early and continuous delivery of software
  2. Welcome changing requirements, even late in development
  3. Deliver working software frequently (from a couple of weeks to a couple of months, with a preference for the shorter timescale)
  4. Business people and developers work together daily
  5. Build projects around motivated individuals
  6. Face-to-face conversation is the most efficient communication
  7. Working software is the primary measure of progress
  8. Sustainable development — constant pace indefinitely
  9. Continuous attention to technical excellence
  10. Simplicity — maximizing the work not done
  11. The best architectures, requirements, and designs emerge from self-organizing teams
  12. The team regularly reflects and adjusts behavior

Agile vs Waterfall

Aspect Waterfall Agile
Planning All upfront Iterative, by cycle
Deliverables One big final launch Frequent small deliveries
Changes Expensive (require replanning) Welcome and expected
Customer At the start (requirements) and end (delivery) Involved throughout
Risk High (discovered at the end) Low (discovered early)
Visibility Limited until the end Continuous in each iteration

Agile in Practice

A typical Agile project using Scrum:

Sprint 1 (2 weeks):
├── Monday: Sprint Planning — team + client define what to build
├── Tuesday-Friday: Development
├── Daily: Standup (15 min)
└── Last day: Sprint Review + Retrospective

→ Working software is delivered
→ Client gives immediate feedback
→ Next Sprint adjusts based on that feedback

Why It Matters for Companies Hiring Development

When your vendor works with Agile methodology:

Real visibility:

  • You don’t wait 6 months to see a result — you see progress every 2 weeks
  • Problems emerge early when they’re cheap to fix

Adaptation:

  • If the market changes or you learn something new, the plan can change
  • You’re not locked into specifications written 6 months ago

Collaboration:

  • Your internal team participates actively — not “I hand over requirements and wait”
  • The resulting software reflects real business needs, not the original specification

Reduced risk:

  • In Waterfall, risk is discovered at the end (when it’s most expensive)
  • In Agile, risks emerge in the first iteration (when they’re cheap to resolve)

Common Misunderstandings

❌ “Agile means no planning” → Agile plans continuously — just not everything all at once upfront

❌ “Agile is only for small teams” → Frameworks (SAFe, LeSS) exist to scale Agile to hundreds of people

❌ “With Agile there’s no documentation” → There is documentation, but working software is prioritized over exhaustive documents

  • Scrum - The most widely adopted Agile framework worldwide
  • Sprint - Scrum’s fixed-length work cycle (one month or less, often 2 weeks)
  • Kanban - Visual Agile method for workflow management
  • CI/CD - The technical practice that makes Agile’s frequent deliveries possible

Additional Resources: