Agile Program Management is a term used to describe the way Agile organizations plan, launch, and execute initiatives in a complex, iterative environment. It’s a key element for success with scaling Agile.
The 7 Benefits of Scaling Agile : Key Steps to Implementation Across Your Organization
Ladda ner vitboken för mer viktiga fördelar med att skala Agile, inklusive rekommenderade bästa metoder för att implementera dem.
Gartner 2020 Critical Capabilities for Enterprise Agile Planning Tools ReportRead the report: Gartner 2020 Critical Capabilities for Enterprise Agile Planning Tools Report
Agile is a value-driven approach to managing work that emphasizes collaboration, speed, and efficiency and minimizes waste. Practicing Agile helps teams and organizations better meet the demands of their customers, with less risk and better business outcomes.
When an Agile initiative grows within an organization, a disconnect tends to emerge between the way Agile teams form and operate, and the way projects are traditionally funded and executed in organizations. In order to scale Agile successfully, there needs to be a better (read: more Agile) way to manage the work of interrelated teams.
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 centered around “checking boxes:” Making 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 tradition program management remain, but the core philosophy changes with Agile Program Management.
Agile Program Management is a way of managing, planning and coordinating interrelated work in a way that emphasizes the delivery of value for teams, stakeholders, and organizations.
Many times, organization 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.
While these additional teams may increase velocity and “output,” value delivery is not necessarily created at the pace expected. This is because teams need to come together in a more cohesive manner, typically forming an Agile Release Train.
An Agile Release Train is the backbone of scaling Agile. It is a collection of stable and persistent Agile teams that coordinate, plan and manage their work on the same delivery cadence.
This allows the teams on the trains to work toward a common goal more easily. And it allows leadership to more easily organize and understand how strategic commitments are broken up and worked across many teams at one time.
Key Concepts of Agile Program Management
1. Change is constant.
Traditional project management tends to follow a waterfall approach, where teams work one phase at a time toward a single, large “launch.” If the project gets delayed in one phase, it causes further delays down the line. If the project gets blocked due to changing requirements, progress stalls until a resolution is reached. This approach does not plan for change, and thus, change is viewed as an inherently negative force.
In Agile Program Management, the goal isn’t simply to deliver as planned, but to deliver something the customer wants. Teams take an iterative approach to development with regular feedback intervals, welcoming any changes that will increase the value they deliver. Developing in iterations means that teams can adapt quickly, keep progress moving forward as conditions change, and incorporate customer feedback in real time as requirements evolve.
2. Collaboration is key.
When the emphasis is on checking boxes and moving work forward instead of delivering customer value, teams aren’t incentivized to collaborate. In Agile Program Management, teams are able to realize the benefits of collaborating with other teams, because they rely on each other to achieve the shared goal of maximizing customer value. Agile teams operate as an integrated, evolving system where all stakeholders are actively involved in both development and delivery.
3. Focus on (true) value.
Agile Program Management fundamentally changes how success, or value, is measured. In traditional project management, value is defined as efficiency and reliability: Being able to quickly and predictably deliver the thing we said we would deliver.
In Agile Program Management, it’s defined as responsiveness: Being able to deliver the things our customers want and need, when they want and need them. Delivering that value efficiently and reliably is important, but not as important as delivering the right value. In other words, Agile organizations work to improve their responsiveness, as a way to become more efficient and reliable to their customers.
Roles in Agile Program Management
Practicing Agile Program Management effectively involves the work of many key roles, including product managers, system architects / engineers, Release Train Engineers (RTE), and business owners.
Product Management: “What should we do next?”
In Agile Program Management, product managers serve as an important intermediary between customers, internal stakeholders, and development teams. The primary objective of the product manager is to set and adapt the product roadmap: An outline of how a product or solution will develop over time. In other words, they work to answer the question, “What should we do next?”
Product managers are tasked with keeping the product roadmap focused on current market conditions and long-term goals: deciding what to build when, and how to sequence the development of various features to optimize development capacity and best meet customer demands.
To do their role well, much of product management involves asking thoughtful questions, synthesizing information, and communicating to ensure alignment between these various groups.
System Architect / Engineering: “How can we do it?”
System architects / engineers are responsible for defining the architectural vision for an Agile Release Train (ART). They are the technical leadership of the ART, working to ensure that the system or solution that is being developed is fit for its intended purpose and developed with respect to the broader technology and architectural capabilities of the system. If product management’s role is to answer, “What should we do next?”, system architect / engineering is responsible for: “How can we do it?”
In Agile Program Management, system architects / engineers play a vital role in aligning teams to a shared technical direction and vision. They work with Agile teams to:
- Describe the technical context and intent of each program
- Analyze technical trade-offs
- Determine the primary components and subsystems involved
- Define nonfunctional requirements (such as security, reliability, maintainability, scalability, etc.)
- Work with various internal and external groups to ensure fitness for purpose
Release Train Engineers (RTEs): “What’s the best way to get it done?”
Release Train Engineers, or RTEs, are the leaders and coaches of Agile teams. In Agile Program Management, they play the vital role of facilitating ART events and processes, like PI (Program Increment) planning, IP (Innovation & Planning) iterations, and I&A (Inspect & Adapt) events.
In organizations not using the SAFe approach to scaling Agile, the person in this role is likely called a Program Manager. RTEs / Program Managers are also responsible for making sure Agile teams deliver value as expected, which includes communicating with internal and external stakeholders, escalating impediments, encouraging continuous improvement, and helping to manage risk.
Business Owners: “What value are we trying to deliver?”
Business owners are the people responsible for the value delivery and return on investment of the Agile Release Train. Typically, they are responsible for the entity that the ART roles into, the value stream.
In Agile Program Management, business owners ensure that the ART(s) are delivering value that aligns to established strategic objectives and desired outcomes. By communicating changes and pivots in Lean Portfolio Management meetings or Delivery Steering meetings, the Business Owners keep priorities aligned to the most important business drivers.
How Enterprise Kanban Supports Agile Program Management
Enterprise Kanban is a tool for visualizing work that enables Agile Program Management at scale. The highly flexible and visual nature of Kanban makes it the ideal solution for visualizing processes, illustrating dependencies, highlighting potential roadblocks, and facilitating productive conversations within and between Agile teams.
Here are some key elements of Agile Program Management that benefit from the use of enterprise Kanban.
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
Enterprise Kanban tools play a vital role in helping leaders and teams to plan, coordinate their efforts, and communicate their plans in a single, shared view. Using an enterprise Kanban tool for PI planning means that Agile Release Trains can plan and execute their work in the same place, providing an exceptional level of visibility and accountability.
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. This advanced collaboration features enable Agile teams to stay aligned and keep work moving even as dependencies become more complex.
Team of Teams (ART) Coordination
Coordinating the work of multiple, interrelated, self-organizing teams is not easy–but the right enterprise Kanban tool can make it possible.
- Robust integrations allow teams to stay in their native tools while providing visibility across the ART
- Connected boards and cards allow teams and leaders to have the view they need to do their jobs
- Enterprise Kanban tools help teams stay focused on their highest priorities, while staying in sync with other, related teams
Enterprise Kanban tools can also be an excellent tool for product roadmapping, allowing product managers to create, communicate, and evolve their plans in the same tool where they delegate, track, and manage the work of teams. Product managers can use a Kanban board to communicate progress on roadmap initiatives at a glance, by connecting cards on a roadmap board to cards on a team or ART execution board.
Benefits of Leveraging the Right Technology for Agile Program Management
Having the right technology in your stack to support Agile Program Management is key for success with scaling Agile. It’s important to not disrupt existing success by forcing all teams to adopt a new tool.
Ideally, you can find a tool thatyour 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.
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.