This is the final post about Dan Vacanti’s book Actionable Agile Metrics for Predictability, An Introduction. In the previous installments we have summarized the topics covered in the chapter’s of the book, and highlighted how they relate to the TameFlow Approach.

The topics covered were:

  • Flow, Flow Metrics and Predictability
  • Actionable Metrics for Predictability
  • Definition of Process Boundaries
  • Cycle Time as the Key Metric
  • The importance of Little’s Law and its Assumptions
  • Cumulative Flow Diagrams
  • Conservation of Flow
  • Commitment
  • Flow Conditioning
  • Flow Debt
  • Scatterplots
  • Service Level Agreements
  • Classes of Service
  • Pull Policies
  • Slack and Excess Capacity
  • Forecasting, the Monte Carlo Method and Analytics

In this last episode we will comment about the book as a whole and draw some conclusions.

Review Summary

We have examined Dan’s book in great detail because all of it is very much applicable to TameFlow, and specifically to how Operational Flow is handled. Looking at how value is created through a process is essential not only from operational perspective, but also at the foundation of one of the other flows of TameFlow, namely the Financial Flow.

While Dan’s book does not cover Financial Flow, anything that helps improving the management of Operational Flow will have a tangible effect on the organization’s Financial Flow.

Operational Flow and Flow Metrics

Operational Flow is very much concerned about due date performance, and thus predictability is an extremely important aspect. There is a strong concern in order to design the process so that it becomes predictable. The process should be designed to favor flow. In this respect, the lessons of the book are very close to those of TameFlow.

Flow can only be managed if it is adequately measured, and thus Flow Metrics are of preeminent significance. The metrics that matter are:

  • Cycle Time
  • Work in Progress
  • Throughput
  • Flow Efficiency
  • Flow Debt

The advantage of using such metrics is that they are easily interpreted by stake holders and customers. Clarity of communication supports building a Community of Trust, which is one of the pillars of TameFlow.

The metrics need also to be actionable, meaning that they give clear signals about when to act and intervene in the process. Such signals are difficult to game, manipulate or interpret. In this sense, they support establishing Unity of Purpose and create Focus around what needs attention. Unity of Purpose and Focus are hallmarks of TameFlow.

Process Boundaries and Clarity of Understanding

The book sustains clarity and agreement of understanding about where the process starts and ends, and what to consider as Work in Progress. This precision in definition and agreement on terms is likewise constructive of the Unity of Purpose pattern of TameFlow, and contributes increasing Psychological Flow.

With clear process boundaries, it becomes easy to see where commitment actually happens. By using pull rather than push it is necessary for the organization to clearly establish where the pull begins from. Push systems are sources of disharmony, as there can be debate around where works starts, and who is accountable for it. With a pull system, and clear process boundaries, there are no such debates. Again this helps establishing Unity of Purposes.

Cycle Time as Key Metric

Dan cares about reducing Cycle Time and considers that as an important improvement target, just like TameFlow. Cycle Time reduction has many positive consequences, and maybe the most compelling is that it has a direct correlation to time-to-market.

It is your own process policies that have the most impact on your process’s predictability. When process policies guarantee the assumption’s of Little’s Law then the process becomes more predictable. In TameFlow there is a strong emphasis on always maintaining the process in a stable state, precisely to guarantee the assumptions of Little’s Law. The law still applies even when work is segmented and categorized.

Cumulative Flow Diagrams

Dan stresses that in a Cumulative Flow Diagram (CFD) backlog lines should not be displayed, unless they represent work that has been truly committed to.

TameFlow considers a Minimum Marketable Release (MMR) as a work package that has been truly committed to. Hence a MMR can rightfully be depicted as the topmost line in a CFD.

All the techniques Dan teaches about how to read and interpret the data off a CFD are useful for any TameFlow practitioner.

Bottlenecks and Constraints

Dan is highly critical about using CFDs to identify bottlenecks in the process. This is the same kind of critique that underpins employing a different approach to identify a process constraint in TameFlow.

In TameFlow the process constraint is identified by considering the average Cycle Time per work state — the state with the largest average Cycle Time is considered as the constraint. While this technique is not directly taught by Dan, it is also not explicitly contradicted. In fact, basing the technique on Cycle Time analytics seems to be consistent with Dan’s usage of Cycle Time as a key metric.

Limiting Work in Progress

To create the conditions required by Little’s Law, arrivals into the process must match departures. You have to limit Work in Progress (WIP).

Dan states he does not care about how WIP is limited, as long as it is.

In TameFlow, this happens through the Drum-Buffer-Rope (DBR) mechanism of the Theory of Constraint, which is arguable the method that minimizes the overall WIP, and hence minimizes the Cycle Time too.

Matching arrivals to departures — that is limiting Work in Progress — is the single most important step for predictability.

Commitment

The process boundary determines where Commitment starts and finishes.

In TameFlow commitments are expressed in terms of MMRs too. A MMR is considered as a work package, that is a set of work-items that are all committed to as a whole.

In TameFlow, a MMR that is pulled into the process must be finished completely. A MMR is pulled into the process, and crosses the starting process boundary, as a whole.

Conservation of Flow and Flow Conditioning

Conservation of Flow is considered so important that it is expressed as an explicit commitment. It is a commitment to keep the process in a state of predictability.

Flow Conditioning is one example of caring about Conservation of Flow. Flow Conditioning is about deciding what items to pull into the process. The choice of items to pull should be determined by all knowledge available at the moment of pulling, including knowledge about the state of the process itself.

Flow disruptions will always happen (Murphy’s Law). Even a single flow disruption incident should always be considered as an event that trigger investigation and learning. Flow Conditioning is one way to preempt or minimize flow disruption.

Flow Debt

Certain flow disruptions are self-imposed. They happen for instance when certain items get priority treatment, and other items have to stand still in the process waiting. The effect is accumulation of Flow Debt.

Flow Debt happens when items are ageing because of some artificial interference to their natural flow.

TameFlow does not explicitly mention the handling of Flow Debt, because it has some natural antidotes. The packaging of work as MMRs has the intent of avoiding flow disruptions and interferences as much as possible. Once a MMR is started, it should be finished as soon as possible. If work items age artificially in the work process, Buffer Management signals will raise awareness about the problem. Finally, TameFlow is extremely careful and conservative about how to handle any extra work — meaning work that was not originally included in the current MMR. The continuous flow variation of TameFlow, on the other hand, can effectively be enriched with an explicit attention to Flow Debt accumulation.

Scatterplots

Dan presents a lot of useful information about how to build and interpret Scatterplots. Particularly useful is the notion that the patterns that form on a Scatterplot reflect the process’s health. Some common patterns are triangles, clusters and gaps.

Scatterplots can be used to monitor the execution of a project. The circumstance when a single work item crosses certain percentile lines should be considered as an intervention trigger.

When using continuous flow in TameFlow then the techniques described by Dan are very useful in their own right. When using MMRs in TameFlow further useful execution monitoring advantages, in addition to Dan’s techniques, can be achieved through Buffer Management.

Common and Special Cause Variation

Dan stress the utility of trying to understand the source of any variation, and in particular if it is internal or external. Yet, Dan also gripes about how some practitioners use Scatterplots with the intent of identifying Common Cause Variation and Special Cause Variation.

Dan, correctly, says that is not possible.

This is one area where the techniques of TameFlow are more effective. TameFlow uses Frequency Analysis on Reason Logs to find common cause variation. TameFlow can also improve on Dan’s attention about distinguishing between internal and external variability, by making the distinction between what is within your Span of Control and what falls in your Sphere of Influence. If external variability is still in your Sphere of Influence you can still hope to do something about it by resorting to the tools of persuasion of TameFlow’s Psychological Flow.

Service Level Agreements

When a delivery commitment is given, it must be expressed as a date range with a confidence level. Such commitments should be based on Cycle Time data, and determine different Service Level Agreements (SLA) for different kinds of work.

Service Level Agreements can be used instead of planning and estimation.

Dan teaches to use Cycle Time distributions and percentiles to size work items, and as intervention triggers when monitoring project execution. The same ideas can be adapted to TameFlow to both size and position MMR Buffers. Simply select a starting and ending percentile line to set the buffer limits.

Classes of Service

A Class of Service is a policy that decides priorities of pulling committed work. While it might seem to cater for work items with special needs, the disruptions of flow caused by Classes of Service can have huge impact on Cycle Time distribution.

The best pull policy is the simple FIFO queue.

Variability is best handled with Slack (excess capacity), rather than priority rules. Classes of Service basically break the conditions of Little’s Law.

Dan claims that if one works on streamlining the process and making it truly predictable, then Classes of Service might not be needed at all.

From a TameFlow perspective, Classes of Service create preferential treatment in the form of expedition. Expedition invariably becomes a cause of conflicts, which erode the fundamental Unity of Purpose pattern. While Dan rejects employing Classes of Service on the basis of the harm they do to the conditions of Little’s Law, in the case of TameFlow they are rejected because they harm the Unity of Purpose. In either case, it is good to avoid Classes of Service.

There are some instances of expedition that cannot be avoided — typically when there is some kind of emergency work item. If such work happens, one should try to handle it with the least disruption of flow possible. TameFlow goes to great lengths about how to handle such emergency work, without compromising the delivery of the current MMR.

Forecasting

Dan promotes using Cycle Time distributions to support forecasting, namely Single Item forecasts and Linear Projection forecasts.

For single items, a target percentile line will provide the time interval and the confidence.

For linear projections, there are many cautions that must be taken — but if they are, then the forecast is reliable.

In either case, the better the conditions of Little’s Law are granted, the more dependable the forecast.

In TameFlow forecasts are expressed as a date range with a probability, typically represented by the MMR Buffer. When employing MMRs, linear projections are used both to provide a forecast and to compute the Buffer Burn Rate, and get actionable signals. Linear projections are thus essential in TameFlow to monitor the execution of the project and get leading signals of oncoming problems.

The same Cycle Time distribution data can be used to arrive at even better forecasts through the Monte Carlo method — and the same approach can be used with TameFlow too.

Conclusions

Dan’s book is a tremendous contribution to the body of knowledge pertaining to flow and quantitative flow management. At times, Dan might seem overly concerned about precision in definitions. Yet such precision is necessary to fully appreciate what you need to do to make a process predictable by creating and maintaining the conditions that support Little’s Law.

His book is simply a must read for any TameFlow practitioner, especially when concerned about managing Operational Flow.

The explanations about how to build Cumulative Flow Diagrams and Scatterplots not only expose common traps that practitioners might fall into, but also give practical advise on how to do it correctly. In particular, the recommendations he gives about how to correctly account for flow exceptions (like abandonment or skipping of stages) are very important for the quality of the data that is collected. Likewise how to read and interpret such diagrams and the patterns of shapes that happen on them.

The treatment of Commitment, Conservation of Flow, Flow Conditioning and Flow Debt are essential concepts for fully understanding how you can design a process in order to be predictable.

His critique of Classes of Service and explanation how they adversely impact predictability is a lesson for the whole industry that seems to be driven by exceptions rather than systemic focus.

The probabilistic forecasting techniques are significant improvement over the expert opinion based estimations that most of the industry still uses today.

The ideas, concepts, techniques, and practices described in the book directly support Operational Flow management, and even add some new techniques that can further enrich the TameFlow practitioner’s arsenal.

Dan’s book must be considered as mandatory reading for anybody implementing the TameFlow Approach.


Links: