Scrum is an agile development method based on some of the key principles of lean manufacturing, pioneered by Toyota.
Advanced Development Methodologies, Inc is the home of Scrum. On their web site, I recently noticed their strapline: ‘It’s about Common Sense’.
When you think about it, it is.
In fact, it’s so ludicrously simple, it’s almost funny.
Think about it.
Think about the basic framework, only without the jargon:
- Make a list of the things you need to do (Product Backlog)
- Get someone (Product Owner) to decide what’s most important and put the list in priority order
- Set a fixed deadline in the foreseeable future (Sprint)
- Estimate how much you’ll be able to complete by the deadline (Sprint Planning/Sprint Backlog)
- Work through the list in priority order, completing each thing before moving on to the next
- Check your list every day to see how you’re doing (Daily Scrum)
- Even if you haven’t completed everything on the list, release the software when the time is up, in order to realise some benefits
- Review how it went to see if there’s anything you would do differently in future (Sprint Review)
- Repeat (iterate)
So if it’s so simple – if it’s such Common Sense – why do so many software development teams tend not to work this way?
Why instead do so many development teams tend to work on long projects. Seeking to understand and define the entire scope up-front. Seeking to resist change. Seeking to develop everything before getting it tested. Seeking to complete *everything* before releasing *anything*.
Perhaps the makers of Scrum should have tagged it ‘Uncommon Sense’.
Personally I think that would be closer to the truth.
10 Key Principles of Agile Development