Flow EFFICIENCIES

Do More By Doing Less

Thomas Ploch - Principal Engineer - Team Illuminati

Quick Outlook

"The Goal"
Eliyahu M. Goldratt

"Scarcity"
Eldar Shafir
Sendhil Mullainathan

"Sooner, Safer, Happier"
Jonathan Smart

What's The Problem?

What's the Problem?

TIME

Scope

Budget

We can reduce scope to reduce the risk.

We can increase budget and capacity to reduce risk.

Unfortunately we are constrained by the timeline!

Scope & Budget

We are currently putting our focus on the capacity of the teams as well as cutting necessary scope, but are still uncertain if we will be able to deliver until the deadline.

Increase Flow!

By increasing flow of work we can dramatically improve how much work can be fitted into the fixed timeline by identifying and reducing wait times and process bottlenecks.

  • Make the best of our limited time by increasing the amount of work flowing through the system.

The Goal

Understanding Flow

  • All cars go the same speed without volatility
    Right. As if that's possible in Germany.
    This translates to each work item being 100% predictable in cost/time.

  • Increase the number of lanes
    Expensive and slow, targeted at long-term
    This translates to adding more capacity to a team to deal with the amount of concurrent work.

  • Reduce the amount of cars
    Immediate and cheap, targeted at short-term
    This translates to reduce the amount of concurrent work within the system.

Which options do we have to increase flow?

  • Reduce the amount of surgeries
    Impossible, people will get sick and have emergencies

  • Build more surgery rooms
    Very expensive and sometimes not even possible

  • Reserve capacity for emergency surgeries
    No need to reschedule planned surgeries
    Even though we reduce the "efficiency" we increase the overall throughput, reduce operational expenses and enable optimizations on stable processes.

Which options do we have to increase flow?

Understanding Flow

  • The motorway needs to have enough slack to accommodate cars accelerating and braking due to unforeseen maneuvers, otherwise all traffic comes to a halt. 

  • Surgery room availability must accommodate unforeseen emergency surgeries, otherwise all surgeries need to be constantly rescheduled.

  • Calendars have to provide enough slack to accommodate for unforeseen events that need urgent decisions or discussions, otherwise work starts to pile up.

The importance of slack

Understanding Flow

  • Less cars on the motorway increases the flow efficiency and in the end more cars are passing through the limited available space.

  • Reserving one surgery room for emergencies and planning less surgeries decreases the operational expense and enables optimizations on stable processes.

  • Less meetings lets teams have more focus time on high-priority epics even though some individual resources may be idle.

The importance of Reducing Work-in-progress

When resource utilization exceeds 80%, lead time rises exponentially.

– Jonathan Smart

Understanding Flow

1

Discovery of a feature starts with a kickoff.

2

Blocking questions are identified by the team and forwarded to relevant people.

3

A week later some of the questions are addressed.

5

The workshop is done and the team continues working.

4

A Design workshop is planned, the next possible time slot for all relevant people is 2 weeks later.

6

The feature is deployed and feedback can be collected.

ACTIVE

WAIT

ACTIVE

WAIT

ACTIVE

3 days

1 week

4 days

2 weeks

2 days

Dev A starts a new task while waiting - adding another car to the motorway.

Dev B starts a new task while waiting - adding another car to the motorway.

In traditional organizations,
flow efficiency is typically 10% or less;
work really does wait 90% of the time.

– Jonathan Smart

  • Systems of work need at least 20% of slack time to react timely to unforeseen events - remember the emergency surgeries.
     

  • Limiting the work-in-progress has a positive effect on increasing flow efficiency - remember less cars on the motorway.
     

  • Lead & wait times are growing exponentially when resource utilization increases above 80% - remember the work queuing example

Understanding Flow - Summary

What Can We Do?

What Can We Do?

Visualize

STABILIZE

Optimize

Visualize

STabilize

  • We want to reduce the amount of cars on our motorway!
    This means we set a WIP limit on our epics (not individual stories). We want to start with a max of three epics and continuously revisit this decision depending on the measured wait times.

    Even when some individual resources will be idle - which is additional slack to react to unforeseen event - we believe it will make us going faster.

Introducing WIP Limits

Optimize

There is no Silver Bullet!

Every context is unique!

Each bottleneck will require a custom solution.

Summary

  • Reduce the amount of cars on the motorway by introducing WIP limits on epics.

  • Reserve slack/focus time for the team to react to emergency surgeries and other requests. This is enabled by additional time freed through WIP limits.

  • Measure and track wait times within the system of work to identify bottlenecks and tackle them individually;
    one at a time.

Do More By Doing Less

Thank You!

Questions?