If we need synchronized efforts… Then the contribution of any single person to the organization’s purpose is strongly dependent upon the performance of others.
—Eli Goldratt
ART Flow
ART Flow describes a state where an ART delivers a continuous flow of valuable features to the customer.
ARTs, working with their extended stakeholders, can get closer to their customers and build Continuous Delivery Pipelines (CDPs) to accelerate the delivery of valuable products and services. This has proven highly effective in improving business outcomes for SAFe Enterprises.
But this type of digital transformation is complex, as any enterprise is complicated, and adopting a Lean-Agile way of working is a significant change. Many individuals and teams have not worked in an Agile way before, and impediments abound. In addition, there is no apparent limit to how effective an ART can be. There is always an opportunity to improve the flow of value delivery. Indeed, because of the scope and impact on customer value delivery, each ART may be the primary opportunity for improving business outcomes via improving continuous flow.
Note: About the Flow Article Series
SAFe is a flow-based system. As such, any interruptions to flow must be identified and addressed systematically to enable continuous value delivery. While flow-based guidance is embedded throughout SAFe, a special collection of six articles directly addresses impediments to flow. These are Value Stream Management, Principle #6- Make value flow without interruptions, Team Flow, ART Flow, Solution Train Flow, Portfolio Flow, and summarized in the extended Guidance article Accelerating Flow with SAFe. These articles define flow along with a set of ‘eight flow accelerators’ that teams can use to address, optimize, and debug issues with achieving continuous flow. This article describes how to make value flow without interruption.
Details
As highlighted in Principle 6 – Make value flow without interruptions, SAFe defines a set of eight flow accelerators that can address, optimize, and debug issues to achieve a continuous flow of customer value. This article describes how to accelerate the flow of value through Agile Release Trains by applying the eight flow accelerators.
#1 Visualize and Limit WIP
Why it matters
Excessive Work In Process (WIP) significantly decreases ART productivity and impedes value flow. It overloads people and teams, confuses priorities, causes frequent context switching, and creates long waits for new functionality.
An ART strives to do its best. However, it’s normal for an ART to have lots of WIP, often far more than it can achieve over time. But that’s counterproductive, as an overloaded ART will complete less work than it would otherwise.
What to do about it
- Visualize all features in process. An ART should manage the inventory of all the Features currently in flight. These are maintained and WIP-limited in the ART Backlog Kanban system.
- Establish control with capacity allocation. Not all of the ART’s work is expressed in features. Therefore, an ART’s total WIP combines effort in current features and non-feature-related work: exploration, infrastructure, tooling, improvement actions, and more. It’s easy to underestimate the time devoted to these other essential activities. To address the total WIP, establish capacity allocations for ART feature and other work and adjust over time.
#2 Address Bottlenecks
Why it matters
A bottleneck constrains the productivity of the entire ART, so teams must address them to improve flow. Once the current bottleneck has been resolved, the next one materializes and must then be taken care of to reach the next level of performance. It’s a continuous process.
What to do about it
- Identify the bottleneck. An ART can only address known bottlenecks. Some ART bottlenecks can be identified during PI Planning; others will only materialize during PI execution or Inspect and Adapt. Typical symptoms of a bottleneck may include:
- An overloaded individual team or a group of teams
- Repeated slippage of an activity (such as integration, testing, deployment, refactoring) from one iteration to another
- Delayed execution of certain types of dependencies
SAFe metrics and tools like Value Stream Mapping, the planning board, and the ART Kanban system may help identify bottlenecks.
- Understand the full impact. An ART needs to understand how its current bottlenecks affect the value flow. For example, slow customer feedback may lead to the ART building the wrong solution functionality, significant rework, and dissatisfaction. A deteriorating system architecture makes the development process significantly longer and less predictable.
- Increase capacity at the bottleneck when possible. Once the problem has been identified and understood, increasing capacity at the bottleneck is an obvious remedy. For example, an ART that has an insufficient number of front-end developers may bring in more people. Or, in the case of poor architecture, the ART may allocate more time for tech-debt reduction.
- Bypassing the bottleneck. However, increasing capacity at the chokepoint can sometimes be tricky as additional people and resources may not always be available. Near term, avoiding the blockage may be more productive. Selecting the next-most-valuable feature that does not have dependencies is one way to do this. For example, instead of launching a large-scale architectural improvement of a legacy system, an ART may choose to hasten the system’s retirement.
#3 Minimize Handoffs and Dependencies
Why it matters
A ‘handoff’ of information and assets occurs when a work product transitions from one process step to another. And when situations require a specific person or unique input from another person or a team, a dependency occurs. While some handoffs and dependencies are inevitable, excessive and unnecessary dependencies and handoffs, impede flow.
What to do about it
- Use the ART planning board to visualize dependencies. The ART planning board helps track significant dependencies across teams and optimize execution throughout the PI. It is adjusted as new facts emerge.
- Foster incremental execution of dependencies. A significant handoff from one team to another is fraught with uncertainty, rework, and delays. Instead, dependencies can often be divided into smaller, more manageable items. This approach fosters frequent cross-team integration, proactive discovery of issues and inconsistencies, and a more predictable and faster process.
- Synchronize frequently. The ART Sync provides an excellent venue to synchronize dependencies and handoffs. Additionally, establishing direct communication across teams that have dependencies helps sort out implementation details.
- Optimize the structure of teams. Excessive dependencies and handoffs often suggest a poorly structured ART. To reduce dependencies, build cross-functional, cross-disciplinary Agile Teams and apply team topologies.
- Visualize and manage dependencies with external parties. An ART may have internal and external handoffs with other ARTs or organizations that should also be identified, tracked, and handled.
#4 Get Faster Feedback
Why it matters
Solution development relies on the fast feedback that guides the ART in the right direction. Mistakes pile up quickly when feedback is delayed or missing, leading to substantial rework for multiple teams, slow delivery, and unsatisfied customers. Two types of feedback are typically required, as Figure 1 illustrates:
- Is the ART creating the right thing for the Customer?
- Is the ART building it right
What to do about it
- Assure both types of feedback. Continuous customer engagement is the only way to ensure that ART is building the right thing. In many situations, shortcuts to reaching the Customer may be necessary. In addition, the ART must confirm that the technology is viable and that the solution meets quality expectations. This testing should be continuous and address functional and Nonfunctional Requirements (NFRs).
- Provide solution telemetry. Application telemetry can capture valuable system usage and behavior data. These application-specific and context-dependent measures require the planning and execution of enablers.
- Engage with customers early and often. At every opportunity, demonstrate the product to the Customer. Test new trial versions of functionality to select customers whenever possible.
- Integrate and test frequently. Integration is required within and across the train’s Agile Teams. Supported by test automation, it provides the fastest and most productive way to ensure that the implementation is progressing in the right direction.
- Use research spikes and MVPs. Spikes and Minimum Viable Products are examples of intentional, experimental design. They are valuable shortcuts to acquiring knowledge about the Customer and the solution.
# 5 Work in Smaller Batches
Why it matters
Operating in large batches of work leads to information decay, delayed feedback, rework, and high variability.
What to do about it
- Understand the types and respective sizes of batches. There are multiple types in play — planning, integration, testing, release, customer feedback, etc. Each must be understood and sized to minimize the total sum of the transaction and holding cost.
- Use cadence. ART cadence naturally constrains a few major batch types. Sticking to recommended iteration and PI duration helps planning, integration, and customer feedback and keeps batch size small.
- Manage team and ART size. Applying the recommended size of Agile Teams and ARTs also reduces batch sizes.
- Automate a delivery pipeline. An effective Continuous Delivery Pipeline (CDP) reduces optimum integration, test, and deployment batch size.
- Plan for smaller batches. Explicitly planning for smaller batches can contribute to reducing their size. For example, planning for specific, frequent releases may help keep the release batch in check.
- Use thin vertical slices of work. Thin vertical slices of work can reduce most batch sizes. So do smaller and more manageable features. Taking fewer features within each iteration also reduces batch sizes.
#6 Reduce Queue Lengths
Why it matters
The ART backlog queue contains all the committed feature work awaiting service. The longer that queue, the longer the wait for the new features to reach the Customer.
What to do about it
- Keep roadmaps flexible. A fixed long-term roadmap is an example of a long queue. While some milestones must be fixed, the roadmap should keep dates and the scope of work flexible whenever possible. That enables the ART to respond to market changes and new learnings during the implementation.
- Establish a strong Product Management function. Often, queues occur because the organization can’t say no and cannot prioritize work effectively. Product managers must exert positive yet firm scope management leadership, demonstrated during PI Planning, the PI itself, and Inspect & Adapt.
- Leave capacity for emergent priorities. An ART can plan only for the work it knows about ahead of planning. During execution, some areas will require further exploration or depend on future market events. Other events are unforeseeable. As a precaution, allocate reserve capacity so the teams can incorporate it into the plan when an event triggers new work.
#7 Optimize Time ‘In the Zone’
Why it matters
Solution development relies on creativity and the focused intellectual effort of team members. For example, implementing a new software feature may require developers and teams to navigate hundreds of dependencies between different systems. Cooperation requires a high degree of focus and many work sessions. Optimizing the time spent in the zone — both for individuals and the team together — makes a substantial difference in ART productivity.
What to do about it
- Keep work-in-process low. Too much work-in-process (WIP) often results in context switching. Fewer active items at any given time mean fewer work interruptions.
- Frequently integrate work. Performing cross-team integration regularly resolves inconsistencies and issues quickly. Otherwise, they pile up and cause teams with dependencies to interrupt one another frequently and then have to revisit earlier work.
- Maintain solution health. If teams don’t continuously address technical debt, they will spend too much time chasing ambiguous dependencies and newly-created defects.
- Ensure efficient events. Continually optimize all events for team productivity—especially PI planning, systems demos, and I&A.
#8 Remediate Legacy Policies and Practices
Why it matters
As described in the Team Flow article, legacy policies and practices present pernicious problems that may occur during and even after a SAFe implementation. And it’s not just the teams that are affected. Given that ARTs deliver the primary economic value of solutions and consume most of the R&D investment, they are sure to get much attention from critical stakeholders. And unfortunately, some of those stakeholders may not have participated in the Lean-Agile transformation, so they may unknowingly contribute to a lack of flow.
What to watch for
The first step is to know that these impediments are likely to exist. The second is to recognize them when they occur. Common impediments include:
- Traditional project and program management (EVM, WBS, IMS, cost accounting) layered on top of Agile teams
- Quality systems and governance models containing embedded waterfall stage-gate milestones
- Committed scope and hard deadlines that did not include input from the people who will do the work
- Redundant reporting and release meetings with overlapping agendas and attendees
- Separating product design, architecture, and UX from the ARTs and value streams
- ‘Freezing’ assets to prevent needed changes that customers need
- Slow and ineffective provisioning of required tooling and work environments
- Verification & Validation and compliance activities and teams engaged only at the end
What to do about it
Once identified, teams must take corrective action. But the action depends on the impediment’s specific stakeholders, nature, and context. Change agents often discover that many of these stakeholders have not been on the transformation journey and require additional training and coaching. No change journey is complete until the changes are fully embedded in the culture.
Measuring ART Flow
Measuring flow is critical to improving ART flow. SAFe’s Measure and Grow system provides three measurement categories—competency, flow, and outcomes—that can assess and improve an enterprise’s ability to deliver innovative business solutions quickly. This measurement system includes six measures specific to flow: flow distribution, velocity, time, load, efficiency, and predictability. Regarding ART flow, they are all relevant, but predictability, time, load, and efficiency are particularly useful and highlighted below.
ART Flow Predictability
Art Flow predictability measures how well a train can plan and meet its PI objectives. For a business to plan and execute effectively, ARTs should generally satisfy most of the committed objectives and one or more of the uncommitted. This approach typically results in an average of 80-100% of the total planned. Figure 2 shows an example where the ART is taking a fairly conservative approach to its PI commitments, as the average predictability regularly runs above 100%. Scoring above 100% requires teams to complete their committed and uncommitted objectives.
ART Flow Time
ART flow time measures the total elapsed time to deliver new features. It’s typically calculated from ideation to production. Figure 3 illustrates an example with a reasonably steady flow time average of around 36 days. Outliers are common, as they may indicate features blocked due to outside dependencies, unanticipated risks, or other common factors.
ART Flow Load
ART flow load measures the total amount of work in the system at any point. It is often derived as an automated report based on the ART Kanban states, illustrated with an area chart, as shown in Figure 4.
This chart illustrates a dramatic increase in WIP for this ART. Additional insights into the ‘why’ would require knowledge of that ART’s context. For example, the ART may indeed be overloaded with WIP, or perhaps the size of the ART has increased dramatically, and the increase in WIP is simply a function of size.
ART Flow Efficiency
Flow efficiency is the ratio of total active time to flow time. Flow efficiency can be very low in a system that has not been optimized, indicating that most of the time the backlog item spends in the system is waiting for service from another activity. The starting point to understanding flow efficiency is developing a value stream map and estimating (or gathering the actual times) how long a backlog item spends in various process states.
An example is the value stream map in Figure 5 below, taken from an actual DevOps value stream mapping exercise. It can be observed that this system is highly inefficient, with a flow efficiency of 5%. It can also be observed that almost all the wait time occurs in front of one specific step. That step is the bottleneck in the process, and working to increase flow in other steps will not produce much economic return. The ART must address the bottleneck to increase efficiency, and when that happens, flow time should also decrease dramatically.
Flow Metrics Summary
SAFe’s Flow metrics will help highlight ART flow improvement opportunities. However, the numbers alone cannot tell the whole story. Qualitative analysis, along with good judgment, is needed.
Last Updated: 26 September 2023