“Tests” to Determine how Agile you are

I just finished reading “Making Agility Stick:  What’s Working, What’s Not” from the Cutter Consortium(http://www.cutter.com/offers/makingagilitystick.html).  It starts with an article called “On the Stickiness of Agility in Software Development” by Laurie Williams.  There were 3 “tests” from Scott Ambler to determine if a company is truly agile or not:

  1.  Do you have an automated test suite, and are you running your tests?
  2. Can I talk to your stakeholders today?
  3. Do you have working software?

I think these are 3 fantastic questions.  This reminded me of the “Scrum test” from Jeff Sutherland’s talk at the Agile 2007 conference where he had the following three questions (I am paraphrasing them):

  1.  Are you running iterations < 6 weeks?
  2. Is your application tested and working at the end of each iteration?
  3. Does your iteration start without the specs fully fleshed out?

I think Jeff’s 3 questions are a good gauge of how well you are following the Scrum framework but I like Ambler’s questions even better.  You can answer Sutherland’s question 2 with a yes but still be running a mini-waterfall by developing for  2 weeks and testing for 2 weeks.  Same with his 3rd question.  I know of organizations that have 4 weeks iterations that go like this:  week 1 detailed design, week 2 and 3 code, week 4 test.  That isn’t very agile 🙂  However, it would be very hard to answer Ambler’s 1st question if you were operating in a mini-waterfall environment.  If you have an automated test suite that you are running, then you shouldn’t need a testing phase at the end of your iterations.  I think both of these sets of “tests” are good but there more we could ask.

This got me thinking about what 3 questions I would ask to determine how agile a team truly is.  I’m sure I will change my mind 10 times in the next 10 days but for now, here is what I would ask:

  1. Are your developers still writing code during the last few days of your iteration?
  2. Are you writing your acceptance tests before you start coding?  Are those tests automated at the end of the iteration?
  3. Can you show me your product backlog that is prioritized by business value?

I am interested in hearing what the top 3 questions would be for anyone else!

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: