-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoperations_iwc_d1.html
269 lines (244 loc) · 11.4 KB
/
operations_iwc_d1.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Operational Excellence</title>
<meta name="description" content="A set of ideas around r-thinking and re-shaping operations">
<meta name="author" content="Martin Sumner">
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
<link rel="stylesheet" href="css/reveal.css">
<link rel="stylesheet" href="css/theme/black.css" id="theme">
<!-- Code syntax highlighting -->
<link rel="stylesheet" href="lib/css/zenburn.css">
<!-- Printing and PDF exports -->
<script>
var link = document.createElement( 'link' );
link.rel = 'stylesheet';
link.type = 'text/css';
link.href = window.location.search.match( /print-pdf/gi ) ? 'css/print/pdf.css' : 'css/print/paper.css';
document.getElementsByTagName( 'head' )[0].appendChild( link );
</script>
<!--[if lt IE 9]>
<script src="lib/js/html5shiv.js"></script>
<![endif]-->
</head>
<body>
<div class="reveal">
<!-- Any section element inside of this container is displayed as a slide -->
<div class="slides">
<section>
<h2>Operational Excellence - Day 1</h2>
</section>
<section>
<h2>Today we will cover ....</h2>
<p align="left">Introductions</p>
<p align="left">Health Warning and Overview</p>
<p align="left">Discuss the Meaning of Availability</p>
<p align="left">Top Ten Causes of Unavailability</p>
<p></p>
<p><small>http://martinsumner.github.io/presentations/operations_iwc_d1.html#/</small></p>
</section>
<section>
<h2>About Me</h2>
<p align="left">'94 - '97: Local IT Support</p>
<p align="left">'97 - '03: Network, Security then Applications</p>
<p align="left">'03 - '05: Spine I - Shock and Awe</p>
<p align="left">'05 - '08: Mini projects and discovery</p>
<p align="left">'08 - '11: National Monitoring Service</p>
<p align="left">'11 - '16: Spine II - Redemption</p>
<p align="left">'16 - '20: Product development</p>
</section>
<section data-background="#A3C2FF">
<h2>A Health Warning - The Agile Journey</h2>
</section>
<section data-background="#A3C2FF">
<h2>In the beginning there was an Act of Rebellion</h2>
<p align="left">The manifesto didn't just state what we would do ...</p>
<p align="left">... it stated the negative practices we would no longer do</p>
<p align="left">There was a view of normal... </p>
<p align="left">... which people sensed wasn't working</p>
</section>
<section data-background="#A3C2FF">
<h2>Someone noticed humans were involved - and they may not be perfect</h2>
<p align="left">Lake wobegon principle</p>
<p align="left">Hindsight bias</p>
<p align="left">Confirmation bias</p>
<p align="left">Dissonance reduction</p>
<p align="left">Sunk cost effects</p>
<p align="left">Zero-risk bias</p>
</section>
<section data-background="#A3C2FF">
<h2>Understanding biases shaped our understanding</h2>
<p align="left">Of why we previously thought another way would work</p>
<p align="left">Of the traps that lay ahead if we took a new path</p>
</section>
<section data-background="#A3C2FF">
<h2>A parallel in history is detected</h2>
<p align="left">From Frederick Taylor and Scientific Management</p>
<p align="left">To Deming</p>
<p align="left">To Ohno and TPS</p>
<p align="left">To Poppendieck</p>
</section>
<section data-background="#A3C2FF">
<h2>Toyota Production System - Timeline & Copycats</h2>
<blockquote >
<p>“ You need to change the way you think. You need to change the way you look at things ”</p>
</blockquote>
<p><small>Taiichi Ohno</small></p>
</section>
<section data-background="#A3C2FF">
<h2>What happened post the Agile revolution?</h2>
<p align="left">A fundamental change driven by explosion of kaizen?</p>
<p align="left">An epidemic of ineffective stand-ups?</p>
<p align="left">A constant dilution of ideals as cognitive biases went unchallenged?</p>
</section>
<section data-background="#A3C2FF">
<h2>Operational Excellence Perspectives</h2>
<p align="left">Spine I vs Spine II</p>
<p align="left">Spine II vs Google</p>
<p align="left">Amazon/Netflix/Github vs Spine II</p>
</section>
<section data-background="#A3C2FF">
<h2>What might we learn about Operational Excellence</h2>
<p align="left">To be in a position to challenge conventional wisdom</p>
<p align="left">To understand the depth and breadth of the problem</p>
<p align="left">To be open to the possibility of dramatic improvement</p>
<p align="left">To search beyond technology for answers</p>
<p align="left">BUT STILL NO SILVER BULLET</p>
</section>
<section data-background="#A3C2FF">
<h2>Agenda</h2>
<p align="left">Session 1: Availability</p>
<p align="left">Session 2: Human Interaction, Perception and Automation</p>
<p align="left">Session 3: Observability</p>
<p align="left">Session 4: Patterns and Anti-Patterns</p>
</section>
<section>
<h2>Nines</h2>
</section>
<section>
<h2>Over to you ... three simple questions</h2>
<p align="left">How do you measure nines?</p>
<p align="left">How do you determine the required number of nines?</p>
<p align="left">How do you determine if you can meet those nines?</p>
</section>
<section>
<h2> ... </h2>
</section>
<section>
<h2>Google Meaningful Availability</h2>
<img width="600" height="600" data-src="images/GoogleAvailability.png" alt="Availability Measures"/>
</section>
<section>
<blockquote >
<p>“ People told me technology changes would make things easier and give me more leisure time, but technology changes just mean customers demand things sooner and understand failure less ”</p>
</blockquote>
<p><small>Anon</small></p>
</section>
<section>
<blockquote >
<p>“ Item #1 for the agenda should be "what are you going to do when Spine fails?" ”</p>
</blockquote>
<p><small>Anon</small></p>
</section>
<section>
<blockquote >
<p>“ In a real business situation, many organizations will throw up their hands and say, we will wait for a complaint and do a manual adjustment. Airlines are a case in point. If an airline system loses a reservation ... this will be detected when the passenger attempts to check in. All airlines have procedures to handle this kind of problem ... It is therefore not worthwhile to implement complex software processes to guarantee no loss of records. ”</p>
</blockquote>
<p><small>IT Architectures and Middleware, 2004</small></p>
</section>
<section>
<h2>BA Apologises</h2>
<img width="600" height="600" data-src="images/ba_apologises.png" alt="BA Apologises"/>
</section>
<section>
<h2>Google Apologises</h2>
<img width="600" height="300" data-src="images/google_apologises.png" alt="Google Apologises"/>
</section>
<section>
<h2>Pre-live Gates</h2>
<p align="left">Is our target to overcome each hurdle?</p>
<p align="left">Is our target to assess ourselves overcoming hurdles?</p>
<p align="left">Is our target to improve how we overcome hurdles?</p>
</section>
<section data-background="#A3C2FF">
<h2>Top Ten Causes of Unavailability</h2>
</section>
<section data-background="#A3C2FF">
<h2>A Guiding Hypothesis</h2>
<p align="left">Most unavailability is related to recovery time ...</p>
<p align="left">... not frequency of incidents</p>
<p align="left">Almost everyone can handle known knowns competently</p>
<p align="left">Top ten is ordered by the Spine experience</p>
</section>
<section data-background="#A3C2FF">
<h2>10 - Domino Failure</h2>
</section>
<section data-background="#A3C2FF">
<h2>9 - Noticing you're Live</h2>
</section>
<section data-background="#A3C2FF">
<h2>8 - Guess-Fix Debt</h2>
</section>
<section data-background="#A3C2FF">
<h2>7 - Never-Fail Components</h2>
</section>
<section data-background="#A3C2FF">
<h2>6 - Novelty in Live</h2>
</section>
<section data-background="#A3C2FF">
<h2>5 - Competitive Resilience</h2>
</section>
<section data-background="#A3C2FF">
<h2>4 - Unexpected Growth</h2>
</section>
<section data-background="#A3C2FF">
<h2>3 - Catchphrase Incident Management</h2>
</section>
<section data-background="#A3C2FF">
<h2>2 - Denial</h2>
</section>
<section data-background="#A3C2FF">
<h2>1 - Botched Transition</h2>
</section>
<section data-background="#A3C2FF">
<h2>Some Fun Problems to Ponder</h2>
<p align="left">OpenOffice won't print on Tuesday</p>
<p align="left">I can't send email more than 500 miles</p>
<p align="left">My password doesn't work when standing up</p>
</section>
<section>
<h2>Challenge to take away</h2>
<p align="left">Out of Memory - Attempt to Allocate 1212498244 bytes</p>
<!--<p align="left">RPC: fragment too large: 1195725856</p> -->
<!--<p align="left">malloc(1212498244) at some/path/to/foo.cc:1234</p> -->
</section>
<section>
</div>
</div>
<script src="lib/js/head.min.js"></script>
<script src="js/reveal.js"></script>
<script>
// Full list of configuration options available at:
// https://github.com/hakimel/reveal.js#configuration
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: true,
transition: 'slide', // none/fade/slide/convex/concave/zoom
// Optional reveal.js plugins
dependencies: [
{ src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
{ src: 'plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: 'plugin/highlight/highlight.js', async: true, condition: function() { return !!document.querySelector( 'pre code' ); }, callback: function() { hljs.initHighlightingOnLoad(); } },
{ src: 'plugin/zoom-js/zoom.js', async: true },
{ src: 'plugin/notes/notes.js', async: true }
]
});
</script>
</body>
</html>