Agile Development


What is Agile Development?

  • A style of software development that aims for speed and adaptability
  • Instead of spending months designing everything up front…
    Release early, then improve continuously
  • Focus on user feedback, iteration, and value delivery

A good fit for web services, mobile apps, and fast-changing markets


Why Agile?

  • Traditional (waterfall) development often:
    • Takes too long
    • Delivers features no one uses
    • Misses market timing
  • Agile aims to:
    • Deliver early and often
    • Respond to change
    • Prioritize working software

Agile vs. Non-Agile: The Car Analogy

We want to build a vehicle:

  • Non-Agile (Waterfall)
    • Release 1: Tires
    • Release 2: Engine
    • Release 3: Steering wheel
    • … → Finally, a car (but too late)

No one wants just tires


  • Agile
    • Release 1: Skateboard
    • Release 2: Bicycle
    • Release 3: Motorcycle
    • … → Car (validated step-by-step)

Always deliver something usable


center width:700
Henrik Kniberg: Making sense of MVP


Agile in Practice

  • Work is divided into iterations (e.g., 1–2 weeks)
  • Each iteration delivers a working product
  • Continuous cycle of:
    1. Plan
    2. Build
    3. Test
    4. Review
    5. Improve

Summary

Agile development is a flexible and user-focused approach.
It emphasizes:

  • Fast and frequent releases
  • Continuous improvement
  • Collaboration and customer feedback
  • Well-suited for web and mobile products