
One of our 2010 goals is to become more agile in our approach to design and development. We've been applying agile principles for roughly 2 years now (with great results), but their application has generally been limited to internal, Dynamo-specific projects like our new online store.
The Agile Manifesto reads as follows:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
These principles, when properly applied, have yielded powerful results for us. It's simply a more human way to work. What's allowed us to be agile with our internal projects? We launched with less. Our store project had a fixed timeline a fixed budget and, most importantly, a flexible scope. These types of projects lend themselves wonderfully to agile principles. The flexible scope and fuzzy project plan allowed us to respond quickly to change and to make intelligent choices during the design and development process. The final product launched on time and we had a feature set that just made sense (versus launching late with a bunch of obscure, useless features that might have been part of a conventional, elaborate project plan).
We've struggled to universally applying agile principles however, as we're commonly faced with fixed price, fixed scope projects. Our clients have generally been afraid to stray from the perceived "safety net" offered by fixing a budget and scope at the outset of the project (our friend Sean recently blogged about this - it's worth a read).
Fixed scope and fixed budget projects will always require a crystal clear set of features and requirements. This reality can result in weeks of negotiating, delaying the start of project. Worse than that though, they can also (in many cases) result in a final product that includes features that just don't make sense. Agile encourages working with a "fuzzy" set of requirements, making sensible choices and embracing change right up until launch. Change happens, we all know it. Instead of stopping the work to evaluate overages, scope creep, etc, why not just work with a process that more accurately reflects reality?
For your next project, big or small, ask us how agile can work for you. We know you'll love the results.