Throughput
What is Throughput?
The concept of throughput originates from manufacturing and operations management, where it refers to the rate at which a system produces its output. In the realm of software development, particularly within Lean and Kanban methodologies, throughput was adopted to quantify the flow of value through a development pipeline. Early proponents of Lean software development recognized the need for objective, observable metrics to manage and improve the delivery process, moving beyond subjective estimates and focusing on actual completed work.
The primary purpose of tracking throughput is to gain an empirical understanding of a team's capacity and predictability. By observing the historical rate of completed work, teams can make more accurate forecasts about future deliveries, identify systemic issues that impede flow, and measure the impact of process improvements. It shifts the focus from how much work is *started* to how much work is *finished*, aligning with the Lean principle of "stop starting, start finishing."
Throughput is important because it provides an objective, verifiable metric that is less susceptible to manipulation or subjective interpretation than effort-based estimates. It helps teams answer crucial questions like: "How much work can we realistically deliver in the next month?" or "Are our process changes actually making us more efficient?" It fosters a culture of continuous improvement by providing concrete data points against which changes can be evaluated.
Throughput is intrinsically linked to other key Agile metrics. It is a core component of Little's Law, which describes the relationship between Work In Progress (WIP), Lead Time, and Throughput. Specifically, Little's Law states that Average Lead Time = Average WIP / Average Throughput. This relationship highlights that by managing WIP, teams can directly influence both their throughput and lead time. It is often visualized using a Cumulative Flow Diagram (CFD), where the slope of the "Done" line indicates the throughput rate. While related to Velocity (a Scrum-specific metric), throughput offers a more generalized and often more objective measure of delivery, particularly for Kanban teams or those focusing on continuous flow rather than fixed-length iterations.
How It Works
Workflow and Process
The core process for calculating throughput involves:
- Define "Work Item": Establish a clear, consistent definition of what constitutes a "work item." This could be a user story, a bug, a task, a feature, or even a specific type of request. The key is that the definition remains stable over time for meaningful comparisons.
- Define "Done": Crucially, define what "done" means for a work item. This "Definition of Done" (DoD) should be unambiguous and signify that the item is fully completed, tested, and potentially deployed or ready for release. Without a consistent DoD, throughput numbers can be misleading.
- Select a Time Interval: Choose a regular time interval for measurement, such as daily, weekly, bi-weekly (sprint length), or monthly. Consistency in this interval is vital for tracking trends.
- Count Completed Items: At the end of each defined time interval, count the number of work items that have met the "Definition of Done" within that period.
- Record and Track: Maintain a historical record of these counts. This data forms the basis for analyzing throughput trends.
Principles
The effective use of throughput is guided by several Lean and Agile principles:
- Focus on Flow: Throughput emphasizes the continuous movement of work through the system, rather than maximizing individual utilization or starting many items simultaneously.
- Limit Work In Progress (WIP): By limiting WIP, teams reduce multitasking, decrease context switching, and allow work items to flow more smoothly and quickly to completion, thereby improving throughput and reducing lead time.
- Empirical Measurement: Throughput relies on observable, historical data rather than subjective estimates. This empirical approach provides a more realistic basis for planning and forecasting.
- Continuous Improvement: Throughput data serves as feedback. When throughput fluctuates or declines, it signals potential issues in the process, prompting teams to investigate and implement improvements.
Visualizing Throughput
Throughput is often visualized using:
- Throughput Run Chart: A simple line graph showing the number of items completed per time period. This helps identify trends and variations.
- Throughput Histogram: A bar chart showing the frequency of different throughput values over a longer period. This helps understand the probability distribution of throughput, which is useful for probabilistic forecasting.
- Cumulative Flow Diagram (CFD): While not directly a throughput chart, the slope of the "Done" line on a CFD indicates the average throughput over a given period. A steeper slope means higher throughput.
Key Concepts
Work In Progress (WIP)
WIP refers to the number of work items that have been started but are not yet completed. Limiting WIP is a core Kanban practice that directly impacts throughput. By reducing the number of active tasks, teams can focus better, reduce context switching, and complete items faster, leading to improved flow and higher throughput.
Lead Time
Lead Time is the total time elapsed from when a work item is requested by a customer until it is delivered. Throughput is inversely related to Lead Time; generally, higher throughput (more items completed per unit of time) leads to shorter Lead Times, assuming WIP is managed effectively.
Cycle Time
Cycle Time measures the time an item spends actively being worked on, from when work begins until it is completed. While Lead Time includes waiting time, Cycle Time focuses on the active development phase. Improving Cycle Time often contributes to higher throughput, as items move through the active stages more quickly.
Little's Law
Little's Law is a fundamental theorem in queueing theory that states: Average Lead Time = Average Work In Progress / Average Throughput. This law highlights the mathematical relationship between these three flow metrics, demonstrating that to improve throughput or reduce lead time, WIP must be managed.
Cumulative Flow Diagram (CFD)
A CFD is a powerful visualization tool that shows the cumulative number of items in different workflow states over time. The vertical distance between the "Started" and "Done" lines represents WIP, and the horizontal distance between these lines indicates Lead Time. The slope of the "Done" line directly represents the team's throughput.
Predictability and Forecasting
Historical throughput data is invaluable for forecasting future delivery capabilities. By analyzing past throughput, teams can use statistical methods (like Monte Carlo simulations) to predict the probability of completing a certain amount of work by a specific date, or how long a given backlog will take to clear.
Practical Considerations
Benefits
- Enhanced Predictability: Provides an empirical basis for forecasting future deliveries, improving stakeholder confidence and planning accuracy.
- Identifies Bottlenecks: Fluctuations or plateaus in throughput can signal impediments or bottlenecks in the workflow, prompting investigation and resolution.
- Focuses on Completion: Encourages teams to "finish what they start" rather than accumulating large amounts of Work In Progress (WIP).
- Objective Measurement: Offers a quantifiable, less subjective measure of delivery capability compared to effort-based estimates.
- Supports Continuous Improvement: Provides concrete data to evaluate the impact of process changes and experiments.
- Vendor and Framework Neutral: Applicable across various Agile frameworks (Scrum, Kanban, Lean) and technology stacks.
Limitations
- Doesn't Measure Value Directly: Throughput quantifies output, not the business value or impact of that output. A high throughput of low-value items is not ideal.
- Requires Consistent Item Size: While not strictly necessary for raw throughput, comparing throughput over time is more meaningful if the "size" or complexity of work items is relatively consistent.
- Can Be Gamed: If used as a sole performance metric, teams might be incentivized to break down work into smaller, less valuable pieces to inflate numbers.
- Ignores Quality: High throughput at the expense of quality can lead to increased technical debt and future rework.
- Historical Data Bias: Past performance is not always a perfect predictor of future results, especially if the team, context, or type of work changes significantly.
Common Mistakes
- Comparing Teams: Throughput is highly context-dependent. Comparing throughput between different teams, even within the same organization, is generally unhelpful and can be demotivating.
- Using as an Individual Performance Metric: Throughput is a team-level metric. Using it to evaluate individual performance undermines collaboration and can lead to unhealthy competition.
- Inconsistent Definition of "Done": If the "Definition of Done" changes frequently or is not strictly adhered to, throughput data becomes unreliable.
- Ignoring Quality: Pushing for higher throughput without maintaining quality standards can lead to a build-up of defects and technical debt.
- Confusing Throughput with Velocity: While both measure completed work, Velocity typically uses story points (estimates of effort/complexity), whereas throughput uses raw counts of items. They serve different purposes and are used in different contexts.
- Focusing Solely on Throughput: Optimizing for throughput in isolation without considering Lead Time, WIP, or customer satisfaction can lead to suboptimal outcomes.
Real-world Examples
- Kanban Team: A software development team using Kanban tracks that they consistently complete between 8 and 12 user stories per week. This historical data allows them to confidently forecast that they can deliver approximately 32-48 user stories in the next month.
- Support Desk: A customer support team measures that they resolve an average of 50 tickets per day. When they implement a new knowledge base, they observe their daily throughput increase to 65 tickets, indicating the improvement was effective.
- Feature Delivery: An engineering manager observes that the team's throughput of "large features" has dropped from 2 per month to 1 per month. Investigating this, they discover a new dependency on an external team, which is causing a bottleneck.
Best Practices
- Define "Done" Clearly and Consistently: Ensure all team members understand and adhere to the Definition of Done for every work item.
- Measure Consistently: Track throughput over regular, fixed intervals to build a reliable historical dataset.
- Combine with Other Metrics: Use throughput in conjunction with Lead Time, Work In Progress (WIP), and quality metrics (e.g., Defect Density, Change Failure Rate) for a holistic view of flow and performance.
- Focus on Trends, Not Just Numbers: Look for patterns and trends in throughput data rather than fixating on individual data points.
- Use for Self-Improvement: Leverage throughput data for internal team reflection, process improvement discussions, and forecasting, not for external comparisons or individual performance reviews.
- Understand Little's Law: Recognize the relationship between WIP, Lead Time, and Throughput to make informed decisions about managing flow.
- Visualize Data: Use run charts, histograms, and Cumulative Flow Diagrams to make throughput data easily understandable and actionable.
Frequently Asked Questions
Q: What's the difference between Throughput and Velocity?
A: Throughput measures the count of completed work items (e.g., 10 stories) over time, while Velocity measures the sum of story points (estimated effort/complexity) for completed items (e.g., 50 story points) over time. Throughput is typically used in Kanban, Velocity in Scrum.
Q: Is higher throughput always better?
A: Not necessarily. While generally desirable, high throughput without considering the value of work, quality, or stability can lead to delivering low-value features, accumulating technical debt, or burning out the team. It should be balanced with other metrics.
Q: How do I calculate throughput?
A: Simply count the number of work items that meet your "Definition of Done" within a specific, consistent time period (e.g., 15 user stories completed in a week).
Q: Can throughput be used for forecasting?
A: Yes, historical throughput data is excellent for probabilistic forecasting. By analyzing past throughput distributions, teams can predict the likelihood of completing a certain amount of work by a future date or how long a backlog will take.
Q: What impacts a team's throughput?
A: Many factors, including Work In Progress (WIP) limits, team size and stability, skill sets, process efficiency, external dependencies, the clarity of requirements, and the presence of bottlenecks or impediments.
Q: Is throughput only for Kanban teams?
A: While most commonly associated with Kanban, throughput is a universal flow metric applicable to any team or system that completes discrete units of work over time. Scrum teams can also track throughput alongside or instead of Velocity.
Q: Does throughput account for the size or complexity of work items?
A: Raw throughput does not inherently account for size or complexity; it's a simple count. For more meaningful comparisons over time, it's beneficial if work items are relatively similar in size, or to analyze throughput for different classes of service or item types.
Explore Related Topics
References & Further Reading
- Anderson, David J. Kanban: Successful Evolutionary Change for Your Technology Business. Blue Hole Press, 2010.
- Vacanti, Daniel. Actionable Agile Metrics for Predictability: An Introduction. LeanDog, 2015.
- Reinartsen, Donald G. The Principles of Product Development Flow: Second Generation Lean Product Development. Celeritas Publishing, 2009.
- The Kanban Guide. kanbanguide.org
- Lean Enterprise Institute. lean.org