Post on 12-Jan-2017
transcript
Complexity of organizations and its effect on scaling agility
krivitsky.com @alexeykri
flickr.com/photos/89228431@N06
Inherent complexity
2012-2013
Spaghetti code and tech debt
flickr.com/photos/89228431@N06
flickr.com/photos/varunshiv
Added complexity
the classical answer
BACK-END
FRONT-END teams
BACK-END
FRONT-END teams ???
What’s happening to Complexity?
• More roles • More meetings • More indirection • More documentation
Uneven flow
Workload and RESOURCE management
Resource management
Resource management
$$
And More complexity
• More roles • More meetings • More indirection • More documentation • More managers • More coordination • More people
Resource management
$$
Cost optimization
No Cost optimization
Out-of-sync development
?
Out-of-sync development
?
We can always make up work
… 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
Indirection
But WHY?
Optimization goals
Spaghetti code and tech debt
Spaghetti ORG and org debt
Technical ORG
OMFG...
(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 :)
(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
(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 :)
now, Compose a haiku!
WTF IS HAIKU?
(a very quick guide)
俳句 [ 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.
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
A Haiku
Shoelaces untied
become a tripping hazard. Hope she falls for me.
Debugging the haiku
Shoelaces untied
become a tripping hazard Hope she falls for me
A Monday morning haiku
Oh! no no no no
No no no no no no no No no no and no
A bot haiku
Seven hundred ten
Seven hundred eleven Seven hundred twelve
404 haiku
The Web site you seek cannot be located but endless others exist
Internal server error
Three things are certain:
Death, taxes, and lost data. Guess which has occurred
(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.
Haiku at scale
Creativity vs. consistency
SO How to get agile?
the modern answer …
manager’s task #1
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!
structure optimized for value delivery
product managers
managers
users
product teams collocated, multi-site
multiple product organizations
managers
product managers
product managers
product managers
users
product teams
users
product teams
users
product teams
manager’s task #2
Looks a little over-complicated
to be able to help you reduce complexity
we are too <foo>*, Let’s introduce <BLAH>** !
* Replace it with a negative adjective of your choice. ** Replace it with your favorite scaling approach.
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?
#2: understanding system dynamics
bonus
More examples and thought food
Products on a shared platform
TECHNICAL PLATFORM / ENGINE
CONSUMER PRODUCTS
consumer-facing teams doing platform work
TECHNICAL PLATFORM / ENGINE
CONSUMER PRODUCTS
Satellite products
BACK-END
REST API
CORE FRONT-END MOBILE APPS
All teams working on back-end
BACK-END
CORE FRONT-END MOBILE APPS
h)p://bit.ly/xing-mobile
Many small sub-products
Many small sub-products
Organize by customer value
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