keeping scope in sight is key

Just finishing up on a 'largish' project, working with esteemed colleagues Ben and Dave on lovemoney.com's online banking service. This was a tricky one for a few reasons:
- NEVER delivered anything like this product before. Transactions, currency, 'banks,' net income statements, gazillions of security features, consumer 'trust' issues. That's before you get in to features, usability blah blah blah.
- A third party was involved.
- Pressure. Pressure to 'get it right.' It's a niche and innovative service that simply has to 'work' for our customers.
The single guiding principle for tackling a 'largish' project like this has to be:
If you control scope, and stick to it, things are going to be ok.
When controlling scope you have to decide:
- What's the core idea or principle for your product?
- What's the minimum functionality required to fulfil this core principle or idea for your product? (Note: I don't mean for Beta, I mean to actually ship a formed product.)
Once you know this, moving forward to a release is made so much easier.
That's it. That's the point I felt worthy of scribing. Defining scope and keeping scope in sight is key.
Any thoughts on the brand spanking new online banking service are very very welcome, I'd love to hear your thoughts. In particular, of-course, do you agree with my point on scope and did we get the scope of the online banking service correct for this new release?


Carl Knibbs
Reader Comments (2)
Hi Carl -
After seeing your comment on my guest post at The Mad Peacock (http://www.themadpeacock.com/2010/01/04/perfection-is-the-enemy-of-good-enough/) I had to followup and read your post on scope.
YES! Scope is clearly part of the key when it comes to good enough. Scope creep can happen at all phases of a project. It usually happens during the requirements and design phase. I think that's when people expect it most. This is when those epic battles over what *needs* to get done occur. Everyone is aware of the the scope at this point in the project (they might not understand the ramifications of it yet, but they are aware!)
Unfortunately creep can happen silently at the desk of a junior developer as well. "Let me just add this one more little whistle to the bells I've already implemented - it will make the product BETTER!" This is the harder form of creep to fight, many times you don't find out about it until it is in the product and working. What do you do then? Rip it out? Adds more work... and there are other things that should have been done that still need to be completed.
Linda
Hi Linda,
Thanks for the comment. Agreed! It's rare to find people who have the ability to accurately judge 'good enough' and not lose control of scope. Hence, I guess, why I continually find it an interesting topic!
Carl