The ultimate goal of agile project management is to quickly respond to customer needs and market changes. The emphasis is placed on speedy iteration of releases to assess the response of customers and other external environmental factors.
In Project Management, Agile is often referred to in software development, but it can also be applied to other fields. In this article, we will explain what agile project management is, define its process, tell you why agile might be right for your next project, and finally a few downfalls of this methodology.
The Agile process encourages accountability, teamwork and organization from each and every team member. The process is disciplined and calls for consistent adaptation, heavily relying on collaboration between cross-functional teams. Their objective is to constantly deliver iterations of the project that can be delivered and to include customer feedback in the next iteration.
This is a popular process for aligning development with customer needs. Moreover, it corresponds directly to the concepts of the Agile Manifesto. It was created by fourteen leaders in the software development industry who set up a process based on their past successes and failures while managing software development projects.
Agile also subscribes to a set of roles that includes:
- Project owner, who represents the customer and clarifies requirements
- Project manager whose role is to support the project team
- Project team, which is the group that executes the project
- Stakeholders, being anyone with an interest in the project
The Agile Process
The Agile process can be broken down into seven steps. The final four steps are in fact a cycle, which will be repeated and only end when the project is deemed finished.
The first step is to identify the project vision. This step is typically performed by the project owner and it defines what the project is, how it will support the overall business strategy, who will benefit from the project and how that will happen.
The second step consists of building a project roadmap. Also part of the project owner’s duties, this stage is required for the methodology to work. Project requirements should be set, along with a timeframe. Prioritizing is a critical part of this step. However, all of this should be considered a rough estimate, as part of the Agile method is to adapt to the customer’s response.
The third step is to create a release plan. The release plan consists of a timeframe for sprints. Sprints are iterative release of the product/service built by the team in order to get feedback from customers. The release plan should set the pace on how often these iteration are released to customers for feedback.
The fourth step is to plan and execute each sprint. In each sprint requirements are prioritized according to the feedback and the original roadmap.
The fifth step is to hold daily meetings. These meetings should last around 15 minutes and include the whole the project team discussing what was done the previous day and what will be done that day. It also gives the opportunity for team members to discuss roadblocks and other problems.
The sixth step is to hold sprint reviews. These occur at the end of each sprint and consist of releasing the new version of the product/service to stakeholders for feedback.
The seventh step is to hold a retrospective sprint. This meeting discusses the previous sprint, and pinpoints what went well and what went wrong to improve on the next sprint.
Why use Agile?
Agile offers more flexibility relative to other methodologies, such as Waterfall. To illustrate, the Waterfall process sets the scope and features before design and implementation. These two features are non-negotiable. With Agile, the scope changes in order to meet business demands.
In addition, Agile methodology works best on products that have faster release cycles. Corrections and suggestions are quickly shared with the project team and project owner who then makes the final judgment call on the viability and effectiveness of the suggestions.
When this type of collaboration takes place on a continual basis, the final product often comes out with fewer defects. This is because quality assurance is tested throughout each cycle. Each iteration comes up with a finished product or service. As a result, defects are spotted earlier in the process.
Using Agile outside of software
As mentioned before, although Agile is mostly seen in the software development field, it can be used for any field.
In a paper published on the Project Management Development Journal by the University of Latvia, research from previous scientific publications found that using agile project management can be successful.
It also underlines that “The main benefits reported from case studies in a non-software development context were related to teamwork, customer interaction, productivity and flexibility.”
According to Allan Kelly, a London-based software consultant, a good way to adapt Agile methodology to your next project is to look at the Agile tool box and choose which practices will be useful to your field.
He also states that many of agile principles actually originated outside of the software development industry. For example, daily stand-up meetings (step 5) were used in Japanese local governments as well as on oil-rigs. Similarly, retrospectives (step 7) were used by the US military and go by the name of “After Action Review”.
Downfalls of Agile
Agile truly is one of the most popular project management methodologies, but there are instances where improvement can be made. For example, end users may make continuous suggestions that endanger the scope of the project.
When they see how easy it is to implement changes, at any iteration, they soon can become insatiable. Why settle for this iteration when another could be even better? This boils down to managing expectations. If the project manager does not know how to say no, development may never end.
Then there is the issue of documentation. Agile isn't a means of avoiding documentation, but it can easily get left behind. Using Agile makes development quite fluid, with rapid changes in scope. Communication happens throughout the project, but much of it is left undocumented.
And holding daily stand-up meetings can potentially harm progress, especially if not managed properly. For most project members these meetings take up time that could be used to getting work done. There may come a point when daily meetings need to be transitioned to weekly or bi-weekly meetings so that they can focus on the work at hand instead.
Yet even with its drawbacks, the Agile methodology can help create a high-quality product through iterations. It is the constant feedback process and quick responses that ensure success.
Beyond Agile Project Management Methodology
Agile project management evolved into different project management methodologies. The most common agile methodologies are Scrum, Kanban, Lean, extreme programming (XP) and test-driven development (TDD).
Read our article on SCRUM methodology
Additional information about Agile
The Agile methodology is rich in information, passionate communities and recognized certifications. Here are some useful links.
How to get certified:
- The PMI institute offers certifications for less than $500
- The APMG international is an international accreditation institute and offers Agile Project Management certifications all over the world through a network of training centers
- The International Consortium for Agile also provides certifications worldwide through training centers
- All About Agile, a blog devoted to the Agile methodology
- Agile Connection, an online community around Agile
- Does Agile work outside of software?, a presentation by Allan Kelly
The agile methodology is rich and flexible. It can be adapted to many projects types and has many derivate methodologies. However, make sure to take a look at other project management methodologies to pick the one that best fits your project.