Олексій Кривицький: Чому масштабування agile – це не...

77
Complexity of organizations and its effect on scaling agility krivitsky.com @alexeykri

Upload: lviv-startup-club

Post on 18-Feb-2017

70 views

Category:

Presentations & Public Speaking


0 download

TRANSCRIPT

Page 1: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Complexity of organizations and its effect on scaling agility

krivitsky.com @alexeykri

Page 2: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

flickr.com/photos/89228431@N06

Page 3: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 4: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Inherent complexity

Page 5: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 6: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 7: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

2012-2013

Page 8: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Spaghetti code and tech debt

Page 9: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

flickr.com/photos/89228431@N06

Page 10: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

flickr.com/photos/varunshiv

Added complexity

Page 11: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

the classical answer

Page 12: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

BACK-END

FRONT-END teams

Page 13: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

BACK-END

FRONT-END teams ???

Page 14: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 15: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 16: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

What’s happening to Complexity?

•  More roles •  More meetings •  More indirection •  More documentation

Page 17: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Uneven flow

Page 18: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Workload and RESOURCE management

Page 19: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Resource management

Page 20: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Resource management

$$

Page 21: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

And More complexity

•  More roles •  More meetings •  More indirection •  More documentation •  More managers •  More coordination •  More people

Page 22: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Resource management

$$

Page 23: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Cost optimization

Page 24: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

No Cost optimization

Page 25: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Out-of-sync development

Page 26: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

?

Out-of-sync development

?

Page 27: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

We can always make up work

Page 28: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 29: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

… And More complexity •  More roles •  More meetings •  More indirection •  More documentation •  More managers •  More coordination •  More people •  More focus on workers (instead of work) •  More complex solutions (more code) •  More complex engineering processes

Page 30: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Indirection

Page 31: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

But WHY?

Page 32: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 33: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 34: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Optimization goals

Page 35: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Spaghetti code and tech debt

Page 36: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Spaghetti ORG and org debt

Page 37: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Technical ORG

OMFG...

Page 38: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 39: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

(1) Form groups of the same card color

Put your color card up and make groups.

Guidelines: – 4-6 people in a group – you have something to write with

(pens and pencils are OK, sharing is fine too)

When done put your cards down :)

Page 40: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

(2) Write one word matching criteria

Each group member needs to write one word on his/her card based on these rules:

Color coding of your cards: Yellow – adjectives describing the nature Green – verbs from sport, dancing, walking, love Blue – nouns from the agile terminology

All words written by one group ideally have to be:

unique in Russian have 2+ syllables

Page 41: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

(3) Form new group of mixed colors

Put your color cards up

Guidelines: –  4-6 people in a group –  all 3 colors in each group –  duplicate colors are OK

When done put your cards down :)

Page 42: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

now, Compose a haiku!

Page 43: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

WTF IS HAIKU?

(a very quick guide)

Page 44: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

俳句 [ high-koo ]

Haiku are short poems that use sensory language to capture a feeling or an image. They are often inspired by an element of nature, a moment of beauty, or another internalized experience.

Page 45: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

THE STRUCTURE

17 ons (syllables) in 3 phrases: 5, 7 and 5

Example: line#1: blah blah blah blah blah line#2: blah blah blah blah blah blah blah line#3: blah blah blah blah blah

Page 46: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

A Haiku

Shoelaces untied

become a tripping hazard. Hope she falls for me.

Page 47: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Debugging the haiku

Shoelaces untied

become a tripping hazard Hope she falls for me

Page 48: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

A Monday morning haiku

Oh! no no no no

No no no no no no no No no no and no

Page 49: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

A bot haiku

Seven hundred ten

Seven hundred eleven Seven hundred twelve

Page 50: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

404 haiku

The Web site you seek cannot be located but endless others exist

Page 51: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Internal server error

Three things are certain:

Death, taxes, and lost data. Guess which has occurred

Page 52: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

(4) Compose a haiku! Guidelines: 1.  Use as many words from the cards as you

can.

2.  Use the topic of this conference: organizations, complexity, management, agility, TDD, scaling…

3.  Don’t forget to add emotional experience, nature, love and sadness of being.

Page 53: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Haiku at scale

Page 54: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Creativity vs. consistency

Page 55: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 56: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

SO How to get agile?

Page 57: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

the modern answer …

Page 58: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

manager’s task #1

Page 59: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Organizing self-organization

1. High Alignment our goal is …

2.  Clear Constraints Here are some guidelines to help you …

3. High Autonomy now go and figure out how!

Page 60: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

structure optimized for value delivery

product managers

managers

users

product teams collocated, multi-site

Page 61: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

multiple product organizations

managers

product managers

product managers

product managers

users

product teams

users

product teams

users

product teams

Page 62: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

manager’s task #2

Page 63: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути
Page 64: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Looks a little over-complicated

to be able to help you reduce complexity

Page 65: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

we are too <foo>*, Let’s introduce <BLAH>** !

* Replace it with a negative adjective of your choice. ** Replace it with your favorite scaling approach.

Page 66: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

How (NOT) to choose a scaling method Is it reducing complexity or just sugar-coating it? Is it adding new system elements (roles, functions, departments, silos) or removing them? Is it centralizing or decentralizing decision-making? Is it redefining system elements or simply renaming them? Is it changing system dynamics (how people think, work, collaborate) or it will remain the same despite of the “new process” in place?

Page 67: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

#2: understanding system dynamics

Page 68: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

bonus

More examples and thought food

Page 69: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Products on a shared platform

TECHNICAL PLATFORM / ENGINE

CONSUMER PRODUCTS

Page 70: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

consumer-facing teams doing platform work

TECHNICAL PLATFORM / ENGINE

CONSUMER PRODUCTS

Page 71: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Satellite products

BACK-END

REST API

CORE FRONT-END MOBILE APPS

Page 72: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

All teams working on back-end

BACK-END

CORE FRONT-END MOBILE APPS

Page 73: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

h)p://bit.ly/xing-mobile

Page 74: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Many small sub-products

Page 75: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Many small sub-products

Page 76: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Organize by customer value

Page 77: Олексій Кривицький: Чому масштабування agile – це не правильне рішення не тієї проблеми. Або як повернути

Agile Coach

developer, scrum master, scrum trainer, free-rider

Alexey KRIVITSKY www.agiletrainings.eu

www.krivitsky.com

Lego4scrum.com – scrum simulation with lego retrospective-cheat-sheet.com – mini-book on retros Agilecoachingcanvas.org – toolkit for agile coaches