Running with Agile
We decided up front when launching Billing Manager to adopt an Agile development methodology to foster rapid evolution of our web site. At Intuit we’ve decided we want to iterate quickly on team ideas, employee suggestions, and Voice of the Customer feedback. We want to have many small incremental changes and enhancements, and measure their customer response each time.
To attain this speed, we develop using the Agile development model. The Agile method means we work on many small, fast releases (called sprints) instead of a few large, feature-heavy releases only once or twice a year.
Agile is certainly a trend, following on the heels of Extreme Programming and iterative development. As one of the leaders of our Billing Manager team, to me it means we walk a balanced line between releasing new features and UI experiences as fast as we can; but without any significant loss of quality or degradation of features. We achieve this via the following steps:
- Take on a smaller chunk of work for easier manageability. Prioritize and limit the work for each sprint to focus on specific customer needs. We want the chunk to be no more than 2-4 weeks of development work, so that we are continuously enhancing the usefulness of the site.
- In our software development processes, we follow best practices to ensure that our product remains stable.
- And here is a key: overlap the Quality Assurance work so that it is not all back-end scheduled.
- The last part is getting constant feedback from our users to measure how we are doing. We have a Feedback page, email address, customer council meetings, and host usability sessions to provide a measurement. We use a QuickBase application to analyze and categorize the results.
Small teams are critical to the success of agile projects.
Because we’re small, we can move fast, and we have the freedom granted from our leaders to innovate and take risks.
Intuit executives are passionate about us delivering something good quickly – and doing so sometimes means we “fail”, which is ok. And not just fail, but fail fast. So our goal is to get new features out quickly to see if they meet customer needs, while keeping things simple. Sometimes they don’t, and we learn. Other times, they take off and we know we’re on the right track, without a huge time investment. Rapid experiments help us make progress quickly.
What does Agile mean to you? Who do you think is good at it?
Tags: agile, best practices, Feedback, Innovation, process, risk, software development, speed, sprint
You can comment below, or link to this permanent URL from your own site.