Agile project management may be one of the most misunderstood concepts in our line of work. Let's dig into what it really means and how it can benefit you and your project team.
Projects that are using an agile framework are best managed in agile project management software.
What Is Agile Project Management?
Agile project management is an approach that prioritizes iterative and incremental product delivery, allowing teams to retain the flexibility and adaptability needed to respond to and incorporate stakeholder feedback.
Rather than following a linear path, as some project management methodologies do, agile encourages being responsive and adapting to changes at any point in the development or project life cycle, without having to go back to the beginning.
While some refer to agile as a methodology, it's really more of a mindset oriented around the Agile Manifesto. It involves staying open to change, and prioritizing progress over perfection.
For a quick explanation (using burgers!), check out this video.
Agile Vs. Traditional Waterfall Methods
The main difference between agile and waterfall project management methods is that agile approaches prioritize quick increments of work and frequent feedback from stakeholders, while waterfall is sequential and focuses on completing a project in one, linear process.
Here's a table comparing the main qualities of agile and waterfall.
Agile | Waterfall |
---|---|
Breaks down the project into smaller parts, allowing for faster completion of smaller tasks | Follows a more structured project plan that relies on rigid timelines and defined processes |
Solicits regular feedback to make sure that all aspects of the work are on track | Requires each stage of the project to be completed before moving onto the next step, which can lead to bottlenecks if any issues arise with any individual part of the project |
Encourages collaboration between teams | Makes it more difficult to adapt quickly when changes need to be made due to external factors such as customer feedback |
Is flexible to adapt to changes | N/A |
Quickly resolves any issues that may arise | N/A |
Allows teams to course-correct quickly if needed without having to redo or scrap any previous progress | N/A |
Check out this video to learn more.
Agile Project Management Values & Principles
Agile Values
The four core values of agile are:
- Prioritizing people and interactions over processes and tools
- Prioritizing a working product over comprehensive documentation
- Prioritizing customer collaboration over contract negotiation
- Responding to change over following a plan
These four values make agile an extremely responsive and iterative approach that favors flexibility over rigidity. It focuses on problem solving over record keeping.
The 12 Fundamental Principles of Agile in Project Management
The creators of the Agile Manifesto introduced the 12 agile principles that still underpin today's philosophy. They are:
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software [but this can be applied to non-software projects, too!].
- Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Business people and developers must work together daily throughout the project.
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- Working software [or value of project outcomes] is the primary measure of progress.
- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- Continuous attention to technical excellence and good design enhances agility.
- Simplicity—the art of maximizing the amount of work not done—is essential.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
When To Use Agile
There are several project situations that lend themselves well to agile project management.
- Unclear or changing requirements: If you’re expecting your project’s requirements to change (or you’re not sure what they are), agile will keep you flexible. This is the case with many software development projects—things change and move quickly as you receive feedback from stakeholders and users.
- High need for stakeholder engagement: Agile is useful when you need ongoing feedback or input from stakeholders and decision-makers. If you’re working on a marketing campaign for a client that includes multiple rounds of feedback and requires final approval on designs, copy, taglines, or logos, agile is the way to go.
- Rapid testing and prototyping: If you’re required to create a variety of prototypes with different levels of fidelity, like you might if you’re working on a mobile app or website, agile allows you to get started quickly and to be able to adapt your prototypes without going all the way back to the beginning.
- Need for incremental delivery: Projects that require phases to be delivered separately or where final approval is needed before moving on to a new phase, such as a website project that requires a front-end build as well as a user login portal, are well-suited for agile.
Agile Project Management Pros & Cons
The Benefits of Agile Project Management
Agile project management offers projects the following benefits:
- It increases collaboration and engagement between clients and end users.
- By focusing on small changes over time, it supports organizational culture change.
- It reduces wasted time and effort, and removes unnecessary meetings, allowing the team more time to focus on completing their deliverables.
- It increases flexibility and allows the team to make changes without needing to start from scratch.
- It increases the speed of your feedback loops due to quicker turnarounds, quicker feedback, and rapid detection of issues. If the team is going in the wrong direction, they can be corrected quickly to reduce wasted time.
- It increases accountability from the team by clearly delineating who is responsible for what, and builds trust by allowing the team to work closely with the project sponsor to ensure alignment through the project.
Drawbacks of Agile
Consider these potential drawbacks and challenges before jumping headfirst into agile:
- It can make predicting a final delivery date and total costs up front difficult.
- It can lead to unnecessary scope creep if teams (or clients) take advantage of the flexibility it offers.
- It requires complete buy-in and commitment from team members and other stakeholders, some of whom may prefer to be more hands-off or high-level.
- It doesn’t work in large organizations that have a strict hierarchy, because it requires quick decision-making and close collaboration.
- Documentation is often lacking or completely missing, due to the prioritization of working products.
4 Popular Agile Methodologies
There are over 50 agile methodologies under the umbrella of the agile mindset. This implies that even though we can talk about an “agile methodology,” the reality is that the concept means different things to different people.
By the term methodology, we refer to the system or strategy used by a development team or project team that follows the agile approach. Here are some of the most popular agile methods:
- Scrum uses a rigid schedule of events including sprints and meetings (known as Scrum ceremonies) at intervals to address a set amount of work from the product backlog within a project. The 3 roles are the Scrum master, the product owner, and the Scrum team members. Scrum is great for teams who value predictability in delivery and transparency with stakeholders. It provides a simple process for delegating tasks and prioritizing them appropriately.
- Kanban is based on the visual display of current tasks, future tasks, and completed tasks on a Kanban board while limiting work in progress. The visual display assists agile team members in seeing where their tasks are in the process. Work in progress is limited to encourage the team to collectively finish what they started before taking on new work.
- Scrumban combines the collaboration cadence of Scrum with the flexibility of Kanban and almost always leverages a Kanban board. Scrumban teams often engage in daily scrum meetings (also known as daily standups), sprint planning meetings, sprint reviews, and sprint retrospectives, but might skip story point estimation, as an example.
- Lean aims to keep a project or ongoing operations trimmed by discouraging waste. This helps to keep the system clutter-free while improving the flow of value.
Other popular agile methodologies with agile practices are eXtreme Programming, Crystal, and the Dynamic System Development Method (DSDM). There are even some advocates of agnostic agile, an agile framework that prioritizes what’s best for the software development project, rather than a specific agile methodology.
Example of Agile in Action
One instance where agile is particularly useful is in website design and development projects. Paul Naybour, Business Development Director at Parallel Project Training, is currently using an agile approach for a website redesign and development project, in order “to both speed up the development process and better control changes to the design of the website as we move into the development phase.”
Agile brings other benefits to Naybour’s project as well:
By using Kanban board-style tools we have implemented a user-friendly way to more easily visualise workflows and manage backlogs – all underpinned by an agile framework. The result is a re-designed website that is on track to fully deliver on the initial objectives of the project on a short timescale.
Similarly, agile is useful for mobile app development projects. Airteam, a digital agency based in Australia, recently completed an app for Doctors’ Health Fund. Delivery Manager Ben Mullaley noted that “agile rituals like weekly stand-ups played a pivotal role in ensuring the app's success. By promptly addressing emerging requirements through these sessions, we directly benefited our client, Doctor[s’] Health Fund.”
He continued:
The agile approach enabled us to swiftly adapt to their evolving needs, resulting in a tailored solution that enhances their service offerings to their members, ultimately strengthening their position as a provider of private health insurance in Australia.
8 Myths About Agile
Agile has become quite a buzzword in digital industries recently. With any good buzz word comes a bunch of misunderstandings about what it is or isn’t. A few of my favorite well-socialized myths about agile include:
- Agile is only for software projects: While agile gained popularity as a method of software development, its approach to iterative development can be used in many different types of project management contexts, from web design and product development to marketing campaigns and customer service.
- Agile replaces traditional project management: Agile doesn't replace traditional project management but rather complements it, by providing new methods and project management tools to aid teams in better meeting their goals faster and more efficiently.
- Agile focuses mainly on speed at the expense of quality: While agile encourages teams to move quickly, it's still important to maintain high quality standards throughout the process. Quality should be a priority when implementing agile strategies.
- Agile is all about team structure: Although team structure is important in agile and communication within the team is highly valued, it's not the only factor that contributes to successful implementation of an agile approach. The values and principles behind agile are just as important as any team structure or methodology that may be applied.
- Agile avoids committing to delivery dates: While agile allows for more flexibility in delivery, schedule-focused planning can be accomplished with close collaboration between stakeholders and delivery teams. “Doing agile” does not mean you can stop planning projects or go-live dates (read more about agile planning here).
- Agile eliminates the need for documentation: Documentation plays an important role in an agile environment as it provides a single source of truth for all stakeholders involved in a project, allowing them to stay informed and up-to-date on progress at all times. In high-compliance environments, documentation is simply treated as a requirement.
- Agile does not involve stakeholders: Stakeholders remain involved throughout agile projects, from initiation through delivery, in order to provide feedback and ensure that all requirements are being handled appropriately. Agile is communication-heavy and requires swift feedback loops.
- Agile avoids accountability to the business: Agile teams value collaboration, value creation, transparency and accountability to each other. Teams that are agile and are not acting in service of the business needs typically have other underlying issues at play such as politics, fear, or unnecessary bureaucracy.
How To Implement Agile Into Your Projects
Transitioning to agile requires more than a change or process, it requires the whole team to have a change of mindset, of heart, and fully buy-in to a new way of working.
Here are a few tips for implementing agile into your projects:
- Teams need significant psychological safety and trust to make agile work. The change is not easy, and teams often hit bumps along the way, which requires an open and curious mind to overcome.
- Encourage open communication and team-focused decision making. Talk with the team about the purpose behind implementing agile on the project, and ask for their participation in the process.
- If you select a specific methodology, such as Scrum, I highly suggest having one or more members of your team attend formal training in Scrum and trying to “run it by the book” for the first 6-months or so before fine-tuning specific items. This trial period allows enough time for the team to give it a go, but not so much time that a bad practice feels never-ending.
- The key is open communication and project retrospectives. Be sure you’re hearing from everyone as the team makes decisions on how to operate—everyone’s voice matters!
Best Practices For Delivering Projects In Agile
Agile is great for all the reasons listed above. However, when considering agile for your approach, there are a couple of things to be mindful of:
- Constant communication about estimation: As agile is based on the premise that teams won’t always know what the end product will look like, it can be difficult to accurately predict the cost, time, or resources needed at the beginning of a project. Constant communication between stakeholders and the project team will be key to navigating this challenge.
- Keep track of long-term goals: Whereas on one hand agile provides refreshing flexibility, on the other hand, it can be hard to keep track of progress on long-term goals or projects that require significant architectural or infrastructural builds. Agile values incremental delivery and sometimes it is hard to visualize the end result when the blueprint is not 100% set before you begin building.
- Maintain collaboration: While agile fosters greater collaboration between teams both internally and externally, this approach does require considerable and continued commitment from all stakeholders. The best Scrum masters and agile project leaders are excellent communicators—do not undervalue this.
Of course, the above can be mitigated by having an experienced, committed team well as by using the right tools.
Follow this step-by-step project guide to ensure nothing is overlooked.
What’s Next?
Agile project management frameworks and other project management approaches are covered more in-depth in our Mastering Digital Project management course. You’ll learn about the entire project life cycle from start to finish, specific agile project management methodologies, and how to create important project documentation like risk management plans and estimates (with templates)! If you're serious about upskilling, these agile project management courses can also help you stay ahead of the curve.