10 Good Reasons To Do Agile Development
10 Good Reasons To Do Agile Development
10 Good Reasons To Do Agile Development
Here are 10 good reasons to apply agile development principles and practices...
1. Revenue
The iterative nature of agile development means features are delivered incrementally, enabling some benefits to be
realised early as the product continues to develop.
2. Speed-to-market
Research suggests about 80% of all market leaders were first to market. As well as the higher revenue from
incremental delivery, agile development philosophy also supports the notion of early and regular releases, and
'perpetual beta'.
3. Quality
A key principle of agile development is that testing is integrated throughout the lifecycle, enabling regular inspection
of the working product as it develops. This allows the product owner to make adjustments if necessary and gives the
product team early sight of any quality issues.
4. Visibility
Agile development principles encourage active 'user' involvement throughout the product's development and a
very cooperative collaborative approach. This provides excellent visibility for key stakeholders, both of the project's
progress and of the product itself, which in turn helps to ensure that expectations are effectively managed.
5. Risk Management
Small incremental releases made visible to the product owner and product team through its development help to
identify any issues early and make it easier to respond to change. The clear visibility in agile development helps to
ensure that any necessary decisions can be taken at the earliest possible opportunity, while there's still time to make
a material difference to the outcome.
6. Flexibility / Agility
In traditional development projects, we write a big spec up-front and then tell business owners how expensive it is to
change anything, particularly as the project goes on. In fear of scope creep and a never-ending project, we resist
changes and put people through a change control committee to keep them to the essential minimum. Agile
development principles are different. In agile development, change is accepted. In fact, it's expected. Because the
one thing that's certain in life is change. Instead the timescale is fixed and requirements emerge and evolve as the
product is developed. Of course for this to work, it's imperative to have an actively involved stakeholder who
understands this concept and makes the necessary trade-off decisions, trading existing scope for new.
7. Cost Control
The above approach of fixed timescales and evolving requirements enables a fixed budget. The scope of the
product and its features are variable, rather than the cost.
9. Right Product
Above all other points, the ability for agile development requirements to emerge and evolve, and the ability to
embrace change (with the appropriate trade-offs), the team build the right product. It's all too common in more
traditional projects to deliver a "successful" project in IT terms and find that the product is not what was expected,
needed or hoped for. In agile development, the emphasis is absolutely on building the right product.