Devops Workshop (Section 2)€¦ · Devops Value Stream ... Value Stream Mapping. The Value Stream...

Post on 11-Aug-2020

6 views 2 download

Transcript of Devops Workshop (Section 2)€¦ · Devops Value Stream ... Value Stream Mapping. The Value Stream...

Devops Workshop (Section 2)

John Willis @botchagalupe

Section 2 - Analyzing the Technology Value Stream

What is Value?

Customer Value

vs

Business Value

Organizational Fact Finding

The Seven Archetypes

1. Work Visibility 2. Work Management Systems 3. Tribal vs Institutional Knowledge 4. Misalignment 5. Organizational Orientation 6. Observability 7. Security and Compliance Theater

You can’t Lean, Agile, SAFE or Devops your way around bad

organizational culture.

Solutions

1. Make All Work Visible 2. Consolidate Work Management Systems 3. Theory of Constraints Methodology 4. Collaboration Hacks 5. Toyota Kata (Coaching Kata) 6. Market Oriented Organized 7. Shift Left Auditors

Graphical StoryTelling

Classic Value Stream Mapping

Graphical Storytelling

Map end-to-end process1

Identify wastes, inefficiencies, bottlenecks2

Identify countermeasures3

Black Pen

Red Pen

Blue Pen

Graphical Storytelling (Day One)

Graphical Storytelling (Day Two)

Graphical Storytelling (Day Two)

Understanding the Value Stream

The Value Stream

If you can't describe what you are doing as a process, you don't know what you're doing.

Dr W. Edwards Deming

3

The Value Stream

▪ Value Stream

▪ The sequence of activities an organization undertakes to deliver upon a customer request.

▪ The sequence of activities required to design, produce, and deliver a service to a customer.

3

The Value Stream

▪ Workflow (flow)

▪ The workflow of a Value Stream ▪ The waste (Muda) of the work ▪ The evenness (Mura) of the work

3

The Value Stream

▪ Lead Time

▪ The time it takes one piece to move all the way through a process of the value stream from start to finish.

▪ Lead time clock starts when the request is made and ends at delivery.

▪ Lead time is what the customer sees.

3

The Value Stream

▪ Cycle Time

▪ How Often a part or product actually is completed by a process, as timed by observation.

▪ Cycle time clock starts when work begins on the request and ends when the item is ready for delivery.

▪ Cycle time is a more mechanical measure of process capability.

3

The Value Stream

3

Request StartWork

Delivery

The Value Stream

▪ Devops Value Stream

▪ Create an idea ▪ Add work to the backlog ▪ Create a user story ▪ Implement as code ▪ Check into version control ▪ Deploy into production ▪ Validate the customer experience

3

Lead Time

The Value Stream

▪ Devops Value Stream

▪ Create an idea ▪ Add work to the backlog ▪ Create a user story ▪ Implement as code ▪ Check into version control ▪ Deploy into production ▪ Validate the customer experience

3

Cycle Time

The Value Stream

▪ Two Types of Lead Time

▪ Design Lead Time ▪ Design and Development

▪ Deployment Lead Time ▪ Test and Operations

3

The Value Stream

▪ Design Lead Time Example

▪ Create an idea ▪ Add work to the backlog ▪ Create a user story ▪ Implement as code ▪ Check into version control ▪ Deploy into production ▪ Validate the customer experience

3

DesignLead Time

The Value Stream

▪ Design Lead Time

▪ Typically new work ▪ Uncertain estimates ▪ Outcomes have high variability

3

The Value Stream

▪ Deployment Lead Time

▪ Create an idea ▪ Add work to the backlog ▪ Create a user story ▪ Implement as code ▪ Check into version control ▪ Deploy into production ▪ Validate the customer experience

3

Deployment Lead Time

The Value Stream

▪ Deployment Lead Time

▪ Repeatable process (automated) ▪ Process times should be predictable ▪ Outcomes have lower variability

3

The Value Stream

▪ How do we reduce Deployment Lead Time in the Workflow

▪ Small Batch ▪ Reduce Work in Process (WIP) ▪ 1x1 Flow ▪ Reduce Bottlenecks (TOC) ▪ Optimize Globally

3

Value Stream Mapping

The Value Stream

3

Source: Damon Edwards - DTO Solutions

We are doing Graphical Storytelling with VSM notation

Apply Lean Waste Analysis

Structured Waste Identification

Free-form waste identification

Start with Structured Waste Classification

Inspired by Mary Poppendieck (original) and Jeff Anderson (adaptation)

Countermeasures

Countermeasures should be:

● Actionable

● Preferably backlog ready

● Preferably small batches of work

Use the VSM to design Kanban Board. Use Kanban to track/manage daily work.

Flow

Maximize Flow

Flow

▪ Maximize Flow (The Work)

▪ Make Work Visible ▪ Reduce Batch Sizes ▪ Limit WIP ▪ Eliminate Waste ▪ Reduce Bottlenecks

3

Flow

▪ Maximize Flow (The Work)

▪ Make Work Visible ▪ Reduce Batch Sizes ▪ Limit WIP ▪ Eliminate Waste ▪ Reduce Bottlenecks

3

The Five Thieves of Time

• To Much Work in Process (WIP) • Unknown Dependancies • Unplanned Work • Conflicting Priorities • Neglected Work

Making Work Visible - Dominica DeGrandis

Flow

▪ Make work visible with storyboards

▪ Scrum ▪ Scrumban ▪ Kanban

3

Flow

▪ Kanban

▪ Card Wall ▪ Activities ▪ Work Items

3Source: Wikipedia - Kanban Board

Flow

▪ Kanban (advanced)

▪ Two Tiered ▪ Swim Lanes ▪ WIP Limits ▪ Blockers

3Source: David J Anderson - jaa.com

Flow

▪ Metrics and Management Reporting

▪ Tracking WIP ▪ Lead Time ▪ Throughput ▪ Flow Efficiency ▪ Failure Load

3Source: Gene Kim - itrevolution.com

Flow

▪ The Kanban Game

3Source: Gene Kim - itrevolution.com

Flow

3

The Phoenix Project

I conclude, “So… For the Phoenix task, assuming we have seven handoffs, and that each of those resources is busy ninety percent of the time, the tasks would spend in queue a total of nine hours times the seven steps…”

“What? Sixty-three hours, just in queue time?” Wes says, incredulously. “That’s impossible!”

The Phoenix Project

I conclude, “So… For the Phoenix task, assuming we have seven handoffs, and that each of those resources is busy ninety percent of the time, the tasks would spend in queue a total of nine hours times the seven steps…”

“What? Sixty-three hours, just in queue time?” Wes says, incredulously. “That’s impossible!”

Work Management Improvement Cycle

Make Work Visible

Use Visibility to Improve

System Behavior

System Behavior • Flow of Work • Handoffs • Batch Size • Work Process • Nature of Work* • Knowledge Sharing • Common Awareness

Adjust or Consolidate

Work Management to Make Work

Visible

Overcoming Inefficiencies in Multiple Work Management Systems - IT Revolution Press

Countermeasures

• Make Work Visible • Work can be Accurately Classified • Better Understand Waste (5 Thieves) • Complete Information • Better E2E Understanding • Can Analyze Bottlenecks (TOC) • Can Create Repeatability (Automation)

Flow

▪ Maximize Flow (The Work)

▪ Make Work Visible ▪ Reduce Batch Sizes ▪ Limit WIP ▪ Eliminate Waste ▪ Reduce Bottlenecks

3

Flow

3

Flow

▪ Small Batch

▪ Faster Feedback ▪ Mean Time to Detect is Faster ▪ Mean Time to Resolve is faster ▪ Reduces Risk ▪ Less Overhead

3

Flow

▪ Single Piece Flow vs Mass Production

▪ The Envelope Stuffing Exercise ▪ Mass Production

▪ Stuff 10 envelopes in mass ▪ Single Piece Flow

▪ Do one envelope at a time

3

Flow

3

https://www.youtube.com/watch?v=Dr67i5SdXiM

Flow

▪ Single Piece Flow (1X1)

▪ No inventory reduces Cycle Time ▪ Create smoother workflow ▪ Catch errors earlier ▪ Creates learning opportunities

3

Flow

▪ Small Batch and Single Piece Flow (Software)

▪ Small piece of code (e.g., feature) ▪ Checkin to source control ▪ Merge into truck ▪ Testing ▪ Deployment

3

Flow

▪ Small Batch Summary

▪ Easier to identify the source of a bug ▪ Easier to debug recently written code ▪ Fewer external dependancies ▪ Instant feedback

3

Flow

▪ Maximize Flow (The Work)

▪ Make Work Visible ▪ Reduce Batch Sizes ▪ Limit WIP ▪ Eliminate Waste ▪ Reduce Bottlenecks

3

Flow

▪ Understanding Knowledge Work

▪ Cognitive Work ▪ Interruptions ▪ Context Switching ▪ Multitasking ▪ Reduce Handoffs

3

Flow

▪ WIP Limits

▪ Regulates Flow ▪ Reduces Multitasking ▪ Reduces Context Switching ▪ Emergent

3

Source: David J Anderson - jaa.com

Flow

▪ WIP Limits

▪ Queues ▪ Buffers

3

Flow

▪ Maximize Flow (The Work)

▪ Make Work Visible ▪ Reduce Batch Sizes ▪ Limit WIP ▪ Eliminate Waste ▪ Reduce Bottlenecks

3

Flow (Waste)

▪ Lean Principles (Review)

▪ Eliminate waste ▪ Amplify learning ▪ Decide as late as possible ▪ Deliver as fast as possible ▪ Empower the team ▪ Build integrity in ▪ See the whole

3

Flow (Waste)

▪ Three Types of Waste (Toyota Production Systems)

▪ Muda (Unproductive) ▪ Mura (Inconsistent) ▪ Muri (Unreasonableness)

3

Flow (Waste)

▪ Seven Wastes

3Source: https://en.wikipedia.org/wiki/Muda_(Japanese_term)#Seven_wastes

Flow (Waste)

▪ Lean Software Development (Principles)

▪ Eliminate Waste ▪ Build Quality In ▪ Create Knowledge ▪ Defer Commitment ▪ Deliver Fast ▪ Respect People ▪ Optimize The Whole

3

Flow (Waste)

▪ Lean Software Development (Wastes)

▪ Unnecessary code or functionality ▪ Starting more than can be completed ▪ Delay in the software development process ▪ Unclear or constantly changing requirements ▪ Bureaucracy ▪ Slow or ineffective communication ▪ Partially done work ▪ Defects and quality issues ▪ Task switching

3

Example (Ticketing Systems)

• Too Many Ticketing Systems? • Hard to Manage Work (No Visibility) • Inconsistent Messaging • Hard to impossible to Correlation • Low Accurately • Perpetuates Toil • Motivates Workarounds (gamification)

Countermeasures

Overcoming Inefficiencies in Multiple Work Management Systems - IT Revolution Press

Countermeasures

Overcoming Inefficiencies in Multiple Work Management Systems - IT Revolution Press

Countermeasures

Overcoming Inefficiencies in Multiple Work Management Systems - IT Revolution Press

Requires Development Based

Methodology

Flow (Bottlenecks)

▪ Maximize Flow (The Work)

▪ Make Work Visible ▪ Reduce Batch Sizes ▪ Limit WIP ▪ Eliminate Waste ▪ Reduce Bottlenecks

3

Flow (Bottlenecks)

3

“In any value stream, there is always a direction of flow, and there is always one and only one constraint; any improvement not made at that

constraint is an illusion.”

Eliyahu Goldratt

Flow

▪ Drum-Buffer-Rope

3

Source: Wikipedia - Drum-Buffer-Rope

Flow (Bottlenecks)

▪ The five focusing steps

▪ Identify the system's constraint(s). ▪ Decide how to exploit the system's constraint(s). ▪ Subordinate everything else to the above decision(s). ▪ Elevate the system's constraint(s). ▪ Warning! If in the previous steps a constraint has been broken, go

back to step 1

3

Source: Wikipedia - Theory of Constraints

Flow (Bottlenecks)

▪ Smoothing Bottlenecks

▪ WIP Limit ▪ Queues ▪ Buffers

3

Drum Buffer Rope (TOC)

3

Drum Buffer Rope (TOC)

3

Drum Buffer Rope (TOC)

3