There are some very significant benefits of an agile approach in many situations. However, many proponents of agile oversell the benefits and sometimes position agile as a panacea that should be used for all projects. The real benefit to a typical project manager of developing an agile project management approach is not in throwing away any notion of using a plan-driven approach, converting to agile, and using a totally agile approach for all projects. Rather, the benefit results from recognizing that a traditional, plan-driven approach is not the best way to manage all projects and thus learning to blend adaptive/agile and plan-driven principles and practices in the right proportions to fit a given situation. Even if a project manager never uses a fully agile approach, I believe that knowledge of agile concepts and principles will make him/her a better project manager. It’s really a matter of learning a broader range of approaches (adding more tools to your tool box) and developing a more adaptive project management approach (developing more skill in using those tools).
- A good cook might have the ability to create some very good meals, but those dishes might be limited to a repertoire of standard dishes, and his/her knowledge of how to prepare those meals might be primarily based on following some predefined recipes out of a cookbook.
- A chef, on the other hand, typically has a far greater ability to prepare a much broader range of more sophisticated dishes using much more exotic ingredients in some cases. The chef’s knowledge of how to prepare those meals is not limited to predefined recipes, and in many cases, a chef will create entirely new and innovative recipes for a given situation. The best chefs are not limited to a single cuisine and are capable of combining dishes from entirely different kinds of cuisine.
I think that sums up the transformation that needs to take place—we need to develop more project managers who are “chefs” rather than “cooks.”
Here are five specific benefits of developing an agile project management approach:
- Increased focus on business outcomes: Many people think that the primary benefit of an agile project is just getting it done faster, but that is not always the case. The primary emphasis in an agile project is really to deliver value in the form of very successful business outcomes by taking an adaptive approach to maximize the value that is delivered. That doesn’t always result in the fastest delivery times. In some cases, it may require some experimentation and trial-and-error prototyping to find an optimum solution—that may or may not be the quickest way to get it done, but it should result in a better product in the end.
- Reduced time to market: Time to market is, of course, an important consideration, and agile accomplishes that in a couple of ways:
- By reducing the startup time required for projects as a result of simplifying some of the requirements definition practices
- By improving the efficiency of the overall project and delivering functionality incrementally as much as possible
- By focusing on simplicity and eliminating non–value-added work
- Higher productivity and lower costs: Agile can also result in higher productivity and lower costs by eliminating unnecessary overhead and bottlenecks and doing work concurrently rather than sequentially.
- Higher quality: A very important benefit of agile is higher quality. In a traditional waterfall project, quality is sequential and is often perceived as a separate effort that is the responsibility of the quality assurance (QA) department. The developers many times develop the software and then “toss it over the wall” to be tested by QA. In an agile project, the team, as a whole (which includes QA testers) jointly owns responsibility for building quality into the design of the products that they produce—it’s not someone else’s responsibility. The development effort is broken up into short iterations called sprints that are typically two to four weeks in length. There is an emphasis on producing a shippable product at the end of every sprint, which means that quality testing must be more integrated with development and cannot be put off indefinitely.
In the traditional environment, the developers may pass software over to QA that has not been fully tested, expecting QA to test it and find any bugs. In an agile environment, code is not considered “done” until it has been tested and proven to be working without defects.
- Organizational effectiveness: Finally, a very important benefit of agile is a more effective organization with higher morale:
- People at all levels are motivated and empowered to do their work and take pride in doing it well because the environment is built on solid values, including respect for people.
- All parts of the organization work together more collaboratively in a spirit of partnership toward common goals.
Content From: https://www.amazon.com/Project-Managers-Guide-Mastering-Agile/dp/1118991044
Book: The Project Manager’s Guide to Mastering Agile
Author: Charles G. Cobb