Agile project management describes the iterative approach to collaborative work used by Agile teams. There are countless benefits to Agile project management for teams – but as organizations begin to scale Agile, they often run into limitations that require coordination at a more macro level.
Agile Program Management: Make Work Connected and Visible
Learn the challenges facing organizations undergoing transformation and how enterprise Kanban software can help you effectively practice Agile Program Management.Les e-boken • Agil programledelse
Agile Program Management Software Buyer’s Guide
Learn what you need in a program-level Agile software solution.View the guide • Agile Program Management Software Buyer’s Guide
If this sounds familiar, it might be time to “level up,” from Agile project management, to Agile program management: the Agile approach to coordinating, funding, planning, and executing the work of interrelated teams. Read on to learn more about the evolution of work and delivery, from Agile project management to Agile program management.
What is Agile Project Management?
Agile project management is an iterative approach to collaborative work. Although Agile is most closely associated with software development, it has been widely adopted outside of software as a more (lowercase) agile way to quickly develop, test, and improve upon anything from software to marketing campaigns.
Agile project management was born out of necessity.
In the early days of software development, teams were finding it increasingly difficult to retrofit their new ways of working into old project management methods, including waterfall and others.
At the heart of this disconnect is this: Developing software, but more broadly, developing anything new, requires teams to plan for change. This is different from industries where processes are fixed and outputs are reliable and predictable – for example, the manufacture of physical products on an assembly line.
These types of processes follow a predictable sequence – plan, build, deliver–that, by design, discourages deviation from the plan. Any deviation, in these types of processes, is a sign that something has gone wrong.
By contrast, developing software is an exploratory, iterative process. Teams start with an end goal in mind, certainly, but need to be able to adapt to changes – whether those changes come from technical limitations, user feedback, or a change in requirements. Deviation from the plan is neither inherently bad nor good – it’s simply a part of the process. Project management methods that do not allow for this type of adaptation simply are not well-suited for managing software development.
Instead of long-term planning, software developers needed a way to develop, test, and iterate upon their work quickly. In 2001, a group of developers gathered to discuss the core tenets of this new way of working, and drafted the Agile Manifesto – a document that outlines the core principles and practices of Agile.
Agile project management methodology
Although the Agile Manifesto was specifically written as guidance for software developers, its principles can be more broadly applied to virtually any industry. Agile has evolved significantly since the days when the Manifesto was written, and many forms of Agile have been developed since then to apply the main concepts to specific types of teams and organizations.
As a result, there is not a single “correct” approach to Agile project management. However, all implementations and versions of Agile can be described as two things: Collaborative and people-driven.
Agile project management principles
The original Agile Manifesto outlines four values that are the foundation of all Agile project management approaches. They are:
- Individuals and interactions over processes and tools.
- Working software over comprehensive documentation.
- Customer collaboration over contract negotiation.
- Responding to change over following a plan.
While there is value in processes and tools, comprehensive documentation, contract negotiation, and following a plan, the manifesto states, there is greater value in individuals and interactions, working software, customer collaboration, and responding to change.
You can be (lowercase) agile without being Agile, and you can technically be practicing Agile without truly experiencing agility.
Dictionary.com defines agility (of any kind) as “the power of moving quickly and easily; nimbleness,” with this secondary definition: “the ability to think and draw conclusions quickly; intellectual acuity.” Meanwhile, (uppercase) Agile describes the specific set of practices, values, and beliefs that aim to enable business agility.
Agile Approach to Project Management
The phrase “Agile project management” describes a set of practices that teams and organizations use to put the Agile mindset into practice. There are many methods that could be considered Agile project management methods.
These include, but are not limited to, the following:
- Extreme Programming (XP)
- Lean Software Development
- Feature-Driven Development (FDD)
- Dynamic Systems Development Method (DSDM)
Agile project management methods
Each of these Agile project management methods has its strengths and limitations, which you can read in further detail on this page. In general, they aim to help Agile teams navigate the unique challenges of working iteratively, and resolve the discrepancies between the needs of Agile teams and traditional project management methods.
More specifically, each of these Agile project management methods contains some version of the following:Iterative Development
Iterative development sets Agile project management apart from other project management methodologies. Iterative development is based on the idea that customer feedback should drive project decisions.
Rather than waiting until something is “perfect” before releasing it, Agile teams aim to release bits of value quickly and frequently – and then use customer feedback to make improvements over time. Iterative development allows teams using Agile project management to ensure that their efforts are being used to create products, processes, and services that are truly valuable to customers.Product Backlogs
Agile teams use product backlogs to record ideas for future work to move quickly from one high-value initiative to the next. This enables Agile teams to stay focused on delivering increments of value as quickly as possible, while methodically organizing ideas so they don’t get lost.
How does this work? When a new idea or request arises, it’s placed in the backlog and prioritized against existing work. This helps Agile teams ensure that their efforts are being used to meet the most pressing customer needs first, rather than simply completing work as it arises.Frequent, Short Meetings
Another key element of Agile project management is the use of frequent, short meetings. These meetings, called standups (because their short duration doesn’t require you to sit), provide Agile teams with the opportunity to quickly review recently completed work, identify anything blocking progress in ongoing projects, and collaborate to deliver work as quickly and efficiently as possible.
Kanban can be an incredibly helpful tool for visualizing and managing work in this way. Holding these meetings daily (or frequently) helps teams coordinate their efforts, so they can more effectively collaborate to deliver value.Reviews and Retrospectives
Agile teams move quickly – which could make it easy to lose track of valuable learnings and run the risk of repeating the same mistakes over and over. This is why Agile teams hold regular reviews and retrospectives, to take time to reflect, document, learn, and identify opportunities for improvement.Focus on Creating Customer Value
Every Agile team shares a similar goal: To deliver customer value faster and more efficiently than ever before. With this goal in mind, teams use Agile project management methods to optimize processes, eliminate waste, and get more done with fewer resources. This efficiency not only helps teams better satisfy customers, it also can drastically improve project ROI.
Agile vs. traditional project management
Before the Agile project management method emerged, software development teams often used the waterfall methodology to manage projects. Waterfall is a linear, sequential method of project management, in which teams move sequentially through the various phases in a project, from concept through deployment and maintenance. This method generally supported highly coordinated software launches, which happened periodically (usually a few times a year).
A waterfall approach is practical in theory, but in practice, it produces a considerable amount of waste.
To coordinate efforts across teams, organizations would have to undergo extensive planning cycles, relying heavily on estimates. If estimates were inaccurate or projects were delayed due to unforeseen circumstances, teams would have to regroup, create new plans, also based on estimates, and race to meet deadlines – often to find that customer requirements and goals had shifted in the process.
Agile emerged as the more flexible, iterative approach to project management. The Agile project management method helps companies strike a balance between reducing waste, cutting cost and preserving the quality of the product.
Rather than planning work months in advance across multiple teams, Agile teams can plan in short (usually 2-week) sprints, in focused, cross-functional teams, allowing them to more easily respond to new information, market shifts, delays, and other changes.
Breaking work into smaller chunks and working iteratively to improve products and services allows Agile teams to hone their processes, isolate problems, and achieve specific objectives quickly. This makes teams using Agile project management better suited for achieving any organization’s goal: To satisfy the needs of customers, quickly and effectively.
Benefits of agile project management
The benefits of Agile project management mirror those of Agile as a whole. They include:
- Iterative development (as opposed to linear development, used in traditional project management methods including waterfall), allows teams to develop, test, learn, and improve upon their work in quick feedback loops.
- Reduced risk: Shorter development cycles and gathering feedback “early and often” means that Agile teams are more likely to deliver products that meet the customer’s requirements.
- More predictable delivery: Due to the continuous/iterative nature of Agile project management, teams are able to better understand what, when, and how to deliver value.
Challenges of Outgrowing Agile Project Management: When Is It Time to Evolve?
Agile project management helps teams apply Agile principles to the way they manage their work. Practicing Agile project management helps teams better meet the demands of their customers, with less risk and better business outcomes. After embracing Agile principles, teams are able to achieve higher levels of performance and efficiency than ever before.
However, as an Agile initiative grows within an organization, a disconnect tends to emerge between the way Agile teams (and teams of teams) form and operate, and the way their work is typically funded and executed at the program level. This is exacerbated by the fact that Agile teams of teams are often operating in silos. These “islands” of Agile teams are running as hard and fast as they can, but are unable to achieve larger organizational goals because they aren’t running with a unified strategy, or even in the same direction.
In order to scale Agile successfully, there needs to be a better (read: more Agile) way to manage the work of interrelated teams. In other words, Agile project management can take organizations only so far – but there comes a point at which organizations outgrow Agile project management, and need to be able to coordinate, plan, and execute work at a higher level.
Specific challenges faced when you outgrow agile project management
Program management is a term commonly used to describe the management of multiple interrelated projects with intersecting goals, requirements, and outcomes. Program management is typically done by the Project Management Office (PMO), which is responsible for financials, risk and security management, and making sure that work is delivered on time and on budget.
In many organizations, the work of the PMO is to make sure that plans are implemented as agreed to by all stakeholders. The problem with this approach to program management is by focusing on execution, teams are systematically incentivized not to focus on what really matters: Creating value.
The goal within Agile is different. Teams are centered and aligned around delivering value. Some of the functional concepts of traditional program management remain, but the core philosophy changes with Agile program management.
It’s worth noting here that Agile program management is not meant to replace Agile project management, but rather, to build upon the benefits of Agile project management by providing the necessary structure and processes to practice Agile at the program level. This is also a necessary step in scaling Agile teams across an organization.
Agile program management is designed to help tackle the specific challenges that organizations face when they outgrow Agile project management, such as:
- Breaking down silos and coordinating teams of teams (also known as Agile Release Trains) across projects, larger initiatives, programs, products, and value streams
- Utilizing different work styles and Agile methodologies (for example, some teams using Scrum while others use Kanban)
- Aligning different cadences and delivery schedules (for example, sprints of various lengths)
- Supporting different tools or the same tool with different configurations (for example, some teams using Atlassian Jira and others using another team tool, or teams using Jira with different workflows, fields, and custom fields)
- Managing complex dependencies, risks, and other conflicts across many teams
- Funding practices that are not aligned with the operations of Agile teams
Understandably, leaders within Agile organizations usually don’t know how to get to this level of coordination across and between Agile teams. Organizations that started with islands of Agile may start to “scale” by adding additional teams.
These additional teams may increase velocity and “output,” but value delivery is not necessarily created at the pace expected. What got them from point A to point B cannot take them to point C and beyond. This is because in order to level up agility at the program level, you have to have systems to coordinate, plan, fund, and execute work at the program level, together. This is where Agile program management comes in.
When to Evolve to Agile Program Management
If any of the above resonates with you, it’s likely that your organization has started to outgrow Agile project management. Agile evolves in each organization differently, so it can be difficult to pinpoint exactly when your organization has reached the limitations of Agile project management.
Unlike team-level issues, issues of coordination between teams or value streams might not be as obvious – it’s not that something is broken, it’s just not operating as well as it should. It’s not that individual teams aren’t performing well, it’s that the organization as a whole is not reaching its full potential because of a lack of visibility and coordination between teams.
To borrow a concept from Lean management, without visibility into what different teams are working on and when, it’s impossible to truly “optimize the whole.”
When Agile teams are siloed, there’s an inherently greater risk of redundant/duplicative work. Without visibility into dependencies, unsurfaced risks, etc., there’s an inherently greater risk of delivery delays. Predictable delivery requires optimizing the whole. To do that well requires visibility and coordination–otherwise you’re just optimizing the parts, at the risk of sub-optimizing the whole.
Agile project management is a great way to optimize the parts. But when optimizing the parts seems to be sub-optimizing the whole, it’s time to graduate to Agile program management.
The good news is it’s never too early or too late to evolve from Agile project management to Agile program management.
Agile Program Management: The Evolution of Agile Project Management
What is agile program management?
Agile program management is a term used to describe the way Agile organizations plan, launch, and execute initiatives in a complex, iterative environment.
Agile program management builds upon the foundation of Agile project management, and provides guidance for how to coordinate, fund, plan, and execute initiatives at scale.
Difference between agile project management vs. agile program management
It’s important to reiterate that Agile program management does not replace or negate the building blocks established in Agile project management. The same values, principles, and practices that make up Agile project management still hold true with Agile program management – they just are just applied to tackle a different set of challenges.
For example, whereas Agile project management encourages teams to practice basic work visibility, Agile program management builds upon that, by encouraging organizations to increase visibility of the relationships between work items.
Agile program management benefits
Similarly, the benefits of Agile program management build upon those of Agile project management. Agile program management also helps organizations develop more predictably, reduce risk, and practice iterative development, but it goes beyond that as well, enabling cross-team visibility, better coordination and planning, and greater alignment between Agile teams.Cross-Team Visibility
Agile project management enables visibility within teams, which helps teams manage, plan, and execute their work with greater agility. Agile program management enables visibility across teams, which enables teams to understand how their work is related to the work of other teams, anticipate risks and dependencies, and work to mitigate roadblocks before delivery delays happen.Better Coordination
Agile program management allows teams to better visualize and coordinate their work, overcoming those islands or pockets of Agile to better sequence work, reduce waste/rework, and improve communication between teams.Greater Strategic Alignment
It is hard to appropriately plan or dial into the larger planning purpose when your Agile teams are operating on different cadences, following different processes, or working in different tools.
With Agile program management, all the Agile teams are brought together to align to common purpose, and break down their work together. Agile program management enables greater strategic alignment through the organization, by providing the visibility and planning processes necessary to take larger initiatives and break them into actionable steps at the team level.
Agile program management best practices
As there are many approaches to Agile project management, there are also many approaches to Agile program management. However, the following practices seem to be a common thread between the most successful Agile program management implementations.Synchronized Planning: PI and ART Planning
Program Increment, or PI, planning, is a routine, usually face-to-face event where teams create their plans and objectives for the next Program Increment. It’s a critical part of Agile Program Management, because it’s a time for Agile teams to:
- Align development to business goals and Team and Program PI objectives
- Identify dependencies and foster cross-team and cross-ART collaboration
- Analyze demand and capacity
Aligning Agile teams around a synchronized planning cadence is essential for unlocking the benefits of Agile program management.Dependency Management and Visualization
Understanding and managing cross-team and cross-ART dependencies is key for success with Agile program management. Many enterprise Kanban tools have the capability to connect related work items (cards) across multiple boards, visualize hierarchical relationships between cards, and visualize dependencies with card features like custom icons. These advanced collaboration features enable Agile teams to stay aligned and keep work moving even as dependencies become more complex.Integrating Tooling
Much of the work of Agile program management involves getting teams to work in a way that allows for coordination where it was perhaps not previously possible. One of the major challenges facing Agile organizations is that teams use different tools, in different ways, on different cadences.
Although it is not realistic (or necessarily wise) to force all teams to abandon the tools they know and use, it’s important to look for opportunities to integrate all the tools teams use to manage their work so that coordination is possible.
Ideally, you can find a tool that integrates with the tools your teams are already using, in a way that makes the information from those tools meaningful and usable to others within the organization. Many Agile organizations rely on enterprise Kanban tools to integrate all the existing tools in their stack to create a single, shared view of the work of all Agile teams.
It’s equally important to find a tool that is highly configurable, so that it can be configured to accurately reflect your organization’s unique processes and to facilitate ART events like PI planning.
Agile program management software
The right Agile tools will give Agile organizations the ability to sequence work across teams of teams, to minimize rework and wasted time / effort. They will also help teams manage and visualize dependencies and roadblocks, so teams can proactively prevent issues that get them off track and therefore create waste.
Without a way to understand how value is flowing through an Agile organization, it is difficult to make a case for funding Agile teams. The best technology will provide business owners with the insight and confidence that their ARTs are delivering the right work at the right time to ensure the success of their Agile initiatives.
Evolve Your Work & Delivery with Agile Program Management
If you’ve found success with Agile project management, but are facing challenges related to coordinating, planning, and executing the work of your Agile teams, you are not alone. It might simply be time to evolve your work and delivery with Agile program management.
Wherever you are on your journey, you can learn more about Agile program management with the resources below:
- [Guide] What is Agile Program Management? – Dive deep into Agile program management and learn about Agile frameworks, metrics, release trains, and more. Read next.
- [eBook] Agile Program Management: Make Work Connected and Visible – Learn the challenges facing organizations undergoing transformation and how enterprise Kanban software can help you effectively practice Agile program management. Read next.
- [eBook] The Agile Program Management Software Buyer’s Guide – Learn what’s necessary in a program-level Agile solution with this checklist of nine criteria and purchase worksheet with vendor questions. Read next.