How does it work?

At its core, Agile does the same thing you and I do when faced with too much to do and not enough time.

You make a list

Sitting down with your customer you make a list of features they would like to see in their software. We call these things user stories and they become the To Do list for your project.

agile in a nutshell

You size things up

Then, using Agile estimation techniques, you size your stories relatively to each other, coming up with a guess as to how long you think each user story will take.

agile in a nutshell

You set some priorities

Like most lists, there always seems to be more to do than time allows. So you ask your customer to prioritize their list so you get the most important stuff done first, and save the least important for last.

agile in a nutshell

You start executing

Then you start delivering some value. You start at the top. Work your way to the bottom. Building, iterating, and getting feedback from your customer as you go.

agile in a nutshell

You update the plan as you go.

Then, as you and your customer starting delivering, one of two things is going to happen. You'll discover:

  1. You're going fast enough. All is good. Or,
  2. You have too much to do and not enough time.

At this point you have two choices. You can either a) do less and cut scope (recommended). Or you can b) push out the date and ask for more money.

agile in a nutshell