Tuesday 17 November 2015

Benefits of Agile Project Management

I have recently been reading Agile Project Management in Easy Steps by John Carroll. In the book, it details some key benefits when it comes to using Agile methodologies to deliver projects. If you are keen to understand more about what these advantages are, I have included more information below.

Traditional project management (waterfall) has been heavily criticised for not being able to cope with changing requirements on software projects. This is probably the single most significant benefit of using agile methodology. Below details some of the key benefits of using agile project management.


Changing Requirements
Not only does the agile approach deal well with changing requirements, it also conquers the difficulty the business have in sufficiently specifying their requirements in the first place. Defining the requirements before the development begins places an unnecessary overhead on the project and is likely to cause delays in starting the project and actually producing anything.

Business Involvement
Failure to involve the business in the project is likely to lead to their eventual disapproval of the final product. Agile promotes close involvement from the business, which means they can share the decision making, set the priorities and agree on the best solution to any issues. Involving the business in the project will ensure they are committed to the final product and it will fit the business need.

Quick Results
Agile ensures that the projects delivers a quality product much earlier than would happen on a traditional project. Although the product may not have all the required features yet, those of most value will be delivered first and likely to bring lots of the benefits(Pareto principle).

Progress Measurement
Using the delivery of a series of incremental working products as the main form of progress is one that everyone involved can understand. The project manager can measure and report on it, the developers can work to delivering it and the business can touch and feel it.

Team Motivation
By empowering the development team, allowing them to organise themselves and having effective involvement from the business, the team will be more motivated and produce better results. Close cooperation on a daily basis with the business will also add to their motivation, they will feel valued and be committed to the delivery of a successful product.

Product Quality
The focus on technical excellence, careful design and continuous testing in an agile project will ensure that a product of great quality is delivered. Involving the business along the way will ensure that their feedback is taken on board and the delivered product is what the business needs.

The Ideal Project
Given the above, it becomes clearer the type of project that can benefit the most from the use of agile methods. Any software project that has poorly defined requirements will benefit from the agile approach. The project should also have a fairly short time-line, ideally less than one year. The business has to be able to make use of iterative product delivery with gradually enhanced features. The development team should also not be too large because of the close cooperation and the face to face working methods. A large team would begin to place a heavy communications burden on the project.

Disadvantages
Having established the ideal type of project to benefit from the agile approach, we can now see where it would not be beneficial.

Many agile practitioners believe that agile methods do not scale well. Hence large-scale projects should probably still be conducted using the traditional waterfall approach.

The strength and usefulness of agile methods are both clearly demonstrated in projects with poorly defined and frequently changing requirements. It does not offer much advantage over traditional methodology when it comes to projects where the requirements are clearly defined and unlikely to change over the course of the project duration. An example of such project which may still benefit form traditional methods may be major construction projects.

Reference: Agile Project Management in Easy Steps by John Carroll