What is Agile Project Management?
Agile Project Management is an iterative approach to planning and guiding project processes that breaks them down into smaller cycles called sprints, or iterations.
Just as in Agile software development, an Agile project is completed in small sections. In Agile software development, for instance, an iteration refers to a single development cycle. Each section or iteration is reviewed and critiqued by the project team, which should include representatives of the project's various stakeholders. Insights gained from the critique of an iteration are used to determine what the next step should be in the project.
The main benefit of getting started with Agile Project Management is its ability to respond to issues that arise throughout the course of the project. Making a necessary change to a project at the right time can save resources and help to deliver a successful project on time and within budget.
What is Agile project methodology?
The Agile project methodology breaks projects into small pieces. These project pieces are completed in work sessions that are often called sprints. Sprints generally run anywhere from a few days to a few weeks. These sessions run from the initial design phase to testing and quality assurance (QA).
The Agile methodology enables teams to release segments as they are completed. This continuous release schedule enables teams to demonstrate that these segments are successful and, if not, to fix flaws quickly. The belief is that this helps reduce the chance of large-scale failures, because there is continuous improvement throughout the project lifecycle.
How APM works
Agile teams build rapid feedback, continuous adaptation and QA best practices into their iterations. They adopt practices such as continuous deployment and continuous integration using technology that automates steps to speed up the release and use of products.
Additionally, Agile Project Management calls for teams to continuously evaluate time and cost as they move through their work. They use velocity, burndown and burnup charts to measure their work, instead of Gantt charts and project milestones to track progress.
Agile Project Management does not require the presence or participation of a project manager. Although a project manager is essential for success under the traditional project delivery methodologies, such as the waterfall model -- where the position manages the budget, personnel, project scope and other key elements -- the project manager's role under APM is distributed among team members.
For instance, the product owner sets project goals, while team members divvy up scheduling, progress reporting and quality tasks. Certain Agile approaches add other layers of management. The Scrum approach, for example, calls for a Scrum Master who helps set priorities and guides the project through to completion.
But project managers can still be used in Agile Project Management. Many organizations still use them for Agile projects -- particularly larger, more complex ones. These organizations generally place project managers in more of a coordinator role, with the product owner taking responsibility for the project's overall completion.
Given the shift in work from project managers to Agile teams, Agile Project Management demands that team members know how to work within the framework. They must be able to collaborate with each other and with users. They must be able to communicate well to keep projects on track. And they should feel comfortable taking appropriate actions at the right times to keep pace with delivery schedules.
The 5 phases of APM
There are five main phases involved in the APM process.
- Envision. The project and overall product are first conceptualized in this phase and the needs of the end customers are identified. This phase also determines who is going to work on the project and its stakeholders.
- Speculate. This phase involves creating the initial requirements for the product. Teams will work together to brainstorm a features list of the final product, then identify milestones involving the project timeline.
- Explore. The project is worked on with a focus on staying within project constraints, but teams will also explore alternatives to fulfill project requirements. Teams work on single milestones and iterate before moving on to the next.
- Adapt. Delivered results are reviewed, and teams adapt as needed. This phase focuses on changes or corrections that occur based on customer and staff perspectives. Feedback should be constantly given, so each part of the project meets end-user requirements. The project should improve with each iteration.
- Close. Delivered results are reviewed and teams adapt as needed. The final project is measured against updated requirements. Mistakes or issues encountered within the process should be reviewed to avoid similar issues in the future.
History of APM
The 21st century saw a rapid rise in the use of the Agile Project Management methodology, particularly for software development projects and other IT initiatives.
However, the concept of continuous development dates back to the mid-20th century and has taken various forms, championed by different leaders over the decades. For example, there was James Martin's Rapid Iterative Production Prototyping, an approach that served as the premise for the 1991 book Rapid Application Development and the approach of the same name, RAD.
A specific Agile Project Management framework that has evolved in more recent years is Scrum. This methodology features a product owner who works with a development team to create a product backlog, a prioritized list of the features, functionalities and fixes required to deliver a successful software system. The team then delivers the pieces in rapid increments.
Additional Agile frameworks include lean, kanban and Extreme programming (XP).
Benefits of Agile Project Management
Advocates for Agile Project Management say the methodology delivers numerous benefits. These include the following:
- more freedom -- project management lets designers work on models that utilize their strengths;
- efficient use of resources, which enables rapid deployment;
- greater flexibility and adaptability to changing needs -- developers can better adapt to and make needed changes;
- rapid detection of problems, which enables quicker fixes;
- increased collaboration with users, leading to products that better meet user needs; and
- does not require as clearly defined goals and processes at the start of development when compared to traditional project management methods, like waterfall.
Drawbacks of Agile Project Management
There are also potential drawbacks, however, including the following:
- A project can go off track because there are less predetermined courses of action at the start of a project.
- Off-track projects lead to less predictable outcomes.
- Agile management relies on making decisions quickly, so it is not suitable for organizations that take a long time to analyze issues.
- Collaboration between teams or end users must continually happen to make the best possible product. Challenges in communication could impact the end product.
APM vs. waterfall
Agile Project Management was, and remains, a counter to the waterfall methodology. The waterfall methodology features a strict sequential approach to projects, where initiatives start with gathering all requirements before the work begins. The next steps are scoping out the resources needed, establishing budgets and timelines, performing the actual work, testing and delivering the project as a whole when all the work is complete.
In response to what were recognized problems in that approach, 17 software developers in 2001 published the Agile Manifesto outlining 12 principles of Agile Software Development. These principles continue to guide Agile Project Management even today. They include:
- Satisfy customers through continuous delivery of valuable software.
- Welcome requirements that change. Even changes that come late in development.
- Deliver working software at regular, frequent intervals.
- Have businesspeople and developers work together.
- Construct projects around motivated workers.
- Host face-to-face conversations for effective conveying of information.
- Measure progress by being able to produce working software.
- Promote sustainable development, leading to a constant pace for workers.
- Pay attention to technical excellence and design to boost agility.
- Simplify by prioritizing the work not done. Follow the 80/20 rule, where 80% of results come from 20% of the work.
- Recognize that the best requirements, architectures and designs will come from self-organizing teams.
- Reflect on how to become more effective at regular time intervals and adjust accordingly.
Examples of Agile Project Management
Some of the more prominent examples of APM include the following:
- feature-driven development
- lean software development
- adaptive software development
Teams normally pick one or two APM methods to implement. For example, the Scrum project management framework emphasizes teamwork, accountability and frequent progress toward a well-defined goal. Progress is tracked and tweaked as necessary. Scrum roles include product owner, Scrum Master and Scrum development team. These roles support the three pillars of Scrum -- transparency, inspection and adaptation.
Discover 10 benefits of Scrum and tips on how to achieve them.