How I finally stopped worrying and learnt to love Conways Law - - PowerPoint PPT Presentation

how i finally stopped worrying and learnt to love conway
SMART_READER_LITE
LIVE PREVIEW

How I finally stopped worrying and learnt to love Conways Law - - PowerPoint PPT Presentation

How I finally stopped worrying and learnt to love Conways Law James Lewis 1 ORGANIZATIONS WHICH DESIGN SYSTEMS ARE CONSTRAINED TO PRODUCE DESIGNS WHICH ARE COPIES OF THE COMMUNICATION STRUCTURE OF THOSE ORGANIZATIONS Melvyn


slide-1
SLIDE 1 1

How I finally stopped worrying and learnt to love Conway’s Law

James Lewis

slide-2
SLIDE 2

“…ORGANIZATIONS WHICH DESIGN SYSTEMS … ARE CONSTRAINED TO PRODUCE DESIGNS WHICH ARE COPIES OF THE COMMUNICATION STRUCTURE OF THOSE ORGANIZATIONS”

Melvyn Conway, 1968

2
slide-3
SLIDE 3
slide-4
SLIDE 4

The mirroring phenomenon is consistent with two rival causal

  • mechanisms. First, designs may evolve to reflect their development
  • environments. In tightly-coupled organizations, dedicated teams

employed by a single firm and located at a single site develop the

  • design. Problems are solved by face-to-face interaction, and

performance “tweaked” by taking advantage of the access that module developers have to information and solutions developed in

  • ther modules. Even if not an explicit managerial choice, the

design naturally becomes more tightly-coupled. By contrast, in loosely-coupled organizations, a large, distributed team of volunteers develops the design. Face-to-face communications are rare given most developers never meet. Hence fewer connections between modules are established. The architecture that evolves is more modular as a result of the limitations on communication between developers.

4 http://www.hbs.edu/faculty/Publication%20Files/08-039_1861e507-1dc1-4602-85b8-90d71559d85b.pdf

"Exploring the Duality between Product and Organizational Architectures : A Test of the “Mirroring” Hypothesis"

slide-5
SLIDE 5 5
slide-6
SLIDE 6 6
slide-7
SLIDE 7 7

microservices should be:

cheap to replace and should allow you to go as “fast as possible”? quick to scale withstand failure

slide-8
SLIDE 8 8

Difficulties I hear about a lot:

slide-9
SLIDE 9 8

Difficulties I hear about a lot:

End-to-end testing

slide-10
SLIDE 10 8

Difficulties I hear about a lot:

End-to-end testing Independent deployment

slide-11
SLIDE 11 8

Difficulties I hear about a lot:

End-to-end testing Independent deployment Service versioning / evolution

slide-12
SLIDE 12

THE THING I MOST WORRY ABOUT IS NOT TESTING, DEPLOYMENT OR VERSIONING

IT’S ORGANISATIONAL DESIGN

slide-13
SLIDE 13

A TYPICAL COMPANY

I got approximately 5 problems out of a maximum of about 20- I reckon

10
slide-14
SLIDE 14

develop- ment

11

testing architects

  • ps

PMO HR sales marketing finance

slide-15
SLIDE 15

develop- ment

12

testing architects

  • ps

PMO HR sales marketing finance

slide-16
SLIDE 16 13 Project(process( 1( Business IT Solutions dev QA Support Idea High level Estimation and decision to proceed Deploymen t Testing Business Requirement Document Business Case Project Brief Functional spec Initiation Doc reqs. matrix Detailed Estimate Project Approve d TDD PM docs Test Script s Change Request Requirement s clarification and estimation 1010100010100101011010 Dev Kick off Coding (Dev) Additional <thing> raised >10 % CAPE X <10 % CAPE X Support handover User Acceptance Testing Normal Flow Data Flow Alternate Process Flow KEY Dropped requirements become Enhancements
slide-17
SLIDE 17 14
slide-18
SLIDE 18 15
slide-19
SLIDE 19

develop- ment

16

testing architects

  • ps

PMO HR sales marketing finance

slide-20
SLIDE 20 17

each of these chords represents a delay

slide-21
SLIDE 21

“There is nothing so useless as doing efficiently that which should not be done at all”

Peter Drucker

18
slide-22
SLIDE 22

CASE STUDY

19
slide-23
SLIDE 23 20
slide-24
SLIDE 24 21

Fulfilment Retail

slide-25
SLIDE 25 22

Fulfilment Retail

slide-26
SLIDE 26 23

Fulfilment Retail

slide-27
SLIDE 27 24

Fulfilment Retail

slide-28
SLIDE 28 25

Fulfilment Retail

slide-29
SLIDE 29 26

A capability is a combination of people, processes, systems that provides value to customers (internal or external)

slide-30
SLIDE 30 27

Fulfilment Retail

EACH CAPABILITY WAS BUILT BY A LARGE TEAM

slide-31
SLIDE 31 28

Fulfilment Retail

WHICH WERE FORMED INTO SHORT-LIVED PROJECT TEAMS

slide-32
SLIDE 32 28

Fulfilment Retail

WHICH WERE FORMED INTO SHORT-LIVED PROJECT TEAMS

slide-33
SLIDE 33 28

Fulfilment Retail

WHICH WERE FORMED INTO SHORT-LIVED PROJECT TEAMS

slide-34
SLIDE 34 28

Fulfilment Retail

WHICH WERE FORMED INTO SHORT-LIVED PROJECT TEAMS

slide-35
SLIDE 35 28

Fulfilment Retail

WHICH WERE FORMED INTO SHORT-LIVED PROJECT TEAMS

slide-36
SLIDE 36 29

AND THE SYSTEMS ENDED UP LOOKING LIKE THIS:

slide-37
SLIDE 37
slide-38
SLIDE 38

Feature starts dev

iteration 2 iteration 1 iteration 3

Feature deployed

regression testing performance testing deployment tests

cycle time

BUILT USING SCRUMERFALL

slide-39
SLIDE 39 32 Unit Tests Build Service Tests

Service A

Build

Service B

End-to-end Tests Build

Service C

Build

Service D

Service Tests Unit Tests Unit Tests Unit Tests Service Tests Service Tests

NEEDED TO BE TESTED TOGETHER

slide-40
SLIDE 40

AND DEPLOYED TOGETHER

write spec write code test release

Without deploying into production, inventory is built up - inventory costs money and the more we have the more risky our deployments

?

slide-41
SLIDE 41 34

beware the distributed monolith!

slide-42
SLIDE 42

this is a recipe for a nervous breakdown

this is not “as fast as possible”

slide-43
SLIDE 43

WHAT MIGHT GOOD LOOK LIKE?

36
slide-44
SLIDE 44 37
slide-45
SLIDE 45

Pauline Cafferkey

slide-46
SLIDE 46 39

Team at the Royal Free

slide-47
SLIDE 47

infectious diseases

40

lab services facilities domestic services physio micro biology estates pharmacy finance

Royal Free Hospital Capabilities

<other> <other>

slide-48
SLIDE 48

infectious diseases

41

lab services facilities domestic services physio micro biology estates pharmacy finance

slide-49
SLIDE 49 42

“The approach favors agility over raw power <snip>”

http://en.wikipedia.org/wiki/OODA_loop
slide-50
SLIDE 50 43 1 Dr Rebecca Lester, Infectious diseases, Specialist registrar 2 Dr Damien Mack, Microbiology, Consultant 3 Dr Ruaridh Buchanan, Infectious diseases, Specialist registrar 4 Dr Simon Warren, Infectious diseases, Consultant 5 Oliver Carpenter, Infectious diseases, Nurse clinical practice educator 6 Breda Athanasopoulos, Infectious diseases, Senior matron lead high level isolation unit 7 Dr Tabitha Mahungu, Infectious diseases, Specialist registrar 8 Susan Coath, Infectious diseases, Ward sister 9 Zenaida Pandio, Domestic services, Housekeeper 10 Claire Harawa, Domestic services, Domestic team leader 11 Renato Pandio, Domestic services, Deep cleaner 12 Sheila Connolly, Patient environment, Head of patient environment 13 Peter Williams, Facilities, Security manager 14 Marchito Tumibay, Domestic services, Support worker 15 Michael Campo, Facilities, Porter 16 Lauren Geddes, Physiotherapy, Clinical lead cardiorespiratory care 17 Victoria Maddox, Laboratory service, Senior health care scientist 18 Nikki Williams, Infectious diseases, Ward sister 19 Dr Sanjay Bhagani, Infectious diseases, Consultant 20 Sarah Stanley, Patient at risk team, Nurse consultant 21 Dr Susan Hopkins, Infectious diseases and microbiology, Consultant 22 Torrain Exall, Physiotherapy, Clinical lead critical care 23 Dr Stephen Mepham, Infectious diseases and microbiology, Consultant 24 Dr Michael Jacobs, Infectious diseases, Consultant 25 Simon Rattenbury, Laboratory service, Head of laboratory service 26 Bryan O’Farrell, Pharmacy, Senior Pharmacist 27 Adrien Cooper, Estates, Director of estates 28 Robert Elliot-Cooke, Pharmacy, Senior pharmacist 29 Allan Harris, Estates, Engineering supervisor 30 Sumal Kuranaratne, Facilities, Support services manager 31 Dave Reavy, Facilities, Head of security and support services 32 Garba Ibrahim, Domestic services, Domestic team leader 33 Stephen King, Royal Free Charity, Head of finance
slide-51
SLIDE 51 44 1 Dr Rebecca Lester, Infectious diseases, Specialist registrar 2 Dr Damien Mack, Microbiology, Consultant 3 Dr Ruaridh Buchanan, Infectious diseases, Specialist registrar 4 Dr Simon Warren, Infectious diseases, Consultant 5 Oliver Carpenter, Infectious diseases, Nurse clinical practice educator 6 Breda Athanasopoulos, Infectious diseases, Senior matron lead high level isolation unit 7 Dr Tabitha Mahungu, Infectious diseases, Specialist registrar 8 Susan Coath, Infectious diseases, Ward sister 9 Zenaida Pandio, Domestic services, Housekeeper 10 Claire Harawa, Domestic services, Domestic team leader 11 Renato Pandio, Domestic services, Deep cleaner 12 Sheila Connolly, Patient environment, Head of patient environment 13 Peter Williams, Facilities, Security manager 14 Marchito Tumibay, Domestic services, Support worker 15 Michael Campo, Facilities, Porter 16 Lauren Geddes, Physiotherapy, Clinical lead cardiorespiratory care 17 Victoria Maddox, Laboratory service, Senior health care scientist 18 Nikki Williams, Infectious diseases, Ward sister 19 Dr Sanjay Bhagani, Infectious diseases, Consultant 20 Sarah Stanley, Patient at risk team, Nurse consultant 21 Dr Susan Hopkins, Infectious diseases and microbiology, Consultant 22 Torrain Exall, Physiotherapy, Clinical lead critical care 23 Dr Stephen Mepham, Infectious diseases and microbiology, Consultant 24 Dr Michael Jacobs, Infectious diseases, Consultant 25 Simon Rattenbury, Laboratory service, Head of laboratory service 26 Bryan O’Farrell, Pharmacy, Senior Pharmacist 27 Adrien Cooper, Estates, Director of estates 28 Robert Elliot-Cooke, Pharmacy, Senior pharmacist 29 Allan Harris, Estates, Engineering supervisor 30 Sumal Kuranaratne, Facilities, Support services manager 31 Dave Reavy, Facilities, Head of security and support services 32 Garba Ibrahim, Domestic services, Domestic team leader 33 Stephen King, Royal Free Charity, Head of finance
slide-52
SLIDE 52 45 1 Dr Rebecca Lester, Infectious diseases, Specialist registrar 2 Dr Damien Mack, Microbiology, Consultant 3 Dr Ruaridh Buchanan, Infectious diseases, Specialist registrar 4 Dr Simon Warren, Infectious diseases, Consultant 5 Oliver Carpenter, Infectious diseases, Nurse clinical practice educator 6 Breda Athanasopoulos, Infectious diseases, Senior matron lead high level isolation unit 7 Dr Tabitha Mahungu, Infectious diseases, Specialist registrar 8 Susan Coath, Infectious diseases, Ward sister 9 Zenaida Pandio, Domestic services, Housekeeper 10 Claire Harawa, Domestic services, Domestic team leader 11 Renato Pandio, Domestic services, Deep cleaner 12 Sheila Connolly, Patient environment, Head of patient environment 13 Peter Williams, Facilities, Security manager 14 Marchito Tumibay, Domestic services, Support worker 15 Michael Campo, Facilities, Porter 16 Lauren Geddes, Physiotherapy, Clinical lead cardiorespiratory care 17 Victoria Maddox, Laboratory service, Senior health care scientist 18 Nikki Williams, Infectious diseases, Ward sister 19 Dr Sanjay Bhagani, Infectious diseases, Consultant 20 Sarah Stanley, Patient at risk team, Nurse consultant 21 Dr Susan Hopkins, Infectious diseases and microbiology, Consultant 22 Torrain Exall, Physiotherapy, Clinical lead critical care 23 Dr Stephen Mepham, Infectious diseases and microbiology, Consultant 24 Dr Michael Jacobs, Infectious diseases, Consultant 25 Simon Rattenbury, Laboratory service, Head of laboratory service 26 Bryan O’Farrell, Pharmacy, Senior Pharmacist 27 Adrien Cooper, Estates, Director of estates 28 Robert Elliot-Cooke, Pharmacy, Senior pharmacist 29 Allan Harris, Estates, Engineering supervisor 30 Sumal Kuranaratne, Facilities, Support services manager 31 Dave Reavy, Facilities, Head of security and support services 32 Garba Ibrahim, Domestic services, Domestic team leader 33 Stephen King, Royal Free Charity, Head of finance
slide-53
SLIDE 53

“If you imagine all the functions a hospital has to have, not only the doctors and nurses and physiotherapists and pharmacists but estates management and food and facilities and laundry — they all have to be involved, and they all have to be specially trained to be safe to work in that environment. “

Dr Michael Jacobs - Consultant, infectious disease

46
slide-54
SLIDE 54

infectious diseases

47

lab services facilities domestic services physio micro biology estates pharmacy finance

Royal Free Hospital Capabilities

<other> <other>

slide-55
SLIDE 55

infectious diseases

48

Ebola treatment

slide-56
SLIDE 56 49

single purpose

cross-functional teams

focussed entirely on ‘customer’ outcome

slide-57
SLIDE 57 50

In our study at a large Australian Telco, we found that stories leaving a team cycled 12 times slower than those that stayed in the team.

slide-58
SLIDE 58 51

This is true for Trauma teams in hospitals And Formula 1 teams And “reinforced battle groups”

slide-59
SLIDE 59

A SOFTWARE EXISTENCE PROOF…

52
slide-60
SLIDE 60

develop- ment

53

testing architects

  • ps

PMO HR sales marketing finance

slide-61
SLIDE 61

x-func teams organised around lines of business

54
  • ps

HR sales marketing finance

slide-62
SLIDE 62

insurance company

slide-63
SLIDE 63

insurance company

slide-64
SLIDE 64

separate lines of business

home motor life

slide-65
SLIDE 65

separate lines of business

and cross-cutting capabilities home motor life my account

slide-66
SLIDE 66

cross-functional teams delivering lines of business

slide-67
SLIDE 67
slide-68
SLIDE 68

x-func teams organised around lines of business

61
  • ps

HR sales marketing finance

slide-69
SLIDE 69

x-func teams organised around lines of business

62
  • ps

HR sales marketing finance

slide-70
SLIDE 70

x-func teams organised around lines of business

63
  • ps

HR sales marketing finance

slide-71
SLIDE 71
slide-72
SLIDE 72 65
slide-73
SLIDE 73 66

DEVOPS!!!

slide-74
SLIDE 74 66

DEVOPS!!!

Well, continuous delivery…

slide-75
SLIDE 75

x-func teams organised around lines of business

67
  • ps

HR sales marketing finance

slide-76
SLIDE 76 68
  • ps

HR sales marketing finance Continuous Delivery

slide-77
SLIDE 77 68
  • ps

HR sales marketing finance

Continuous Delivery

slide-78
SLIDE 78

Continuous Delivery

69

HR sales marketing finance

slide-79
SLIDE 79

Continuous Delivery

69

HR sales marketing finance

slide-80
SLIDE 80

each of these capabilities can be tested and deployed independently

and cross-cutting capabilities home motor life my account

slide-81
SLIDE 81

CAN WE GO FURTHER?

slide-82
SLIDE 82 72

Lines of business

slide-83
SLIDE 83 72

Lines of business

slide-84
SLIDE 84 73

Value streams

slide-85
SLIDE 85 73

Value streams

slide-86
SLIDE 86 74

teams

slide-87
SLIDE 87 74

teams

slide-88
SLIDE 88

each team

  • wns one or more services
slide-89
SLIDE 89 76
slide-90
SLIDE 90 76

~10-20

slide-91
SLIDE 91 76

~160-200 ~10-20

slide-92
SLIDE 92 76

~160-200 ~10-20

multiples thereof

slide-93
SLIDE 93 77

Thomas J. Allen, 1977

slide-94
SLIDE 94 78

10 20 30 40 50 60 70 80 90 100 0.05 0.10 0.15 0.20 0.25 0.30 m Probability of weekly interaction

x x x x x xxxxxxxx x x x x x x x x

The effect of distance on communication

slide-95
SLIDE 95 79

co-locate as much as possible

take advantage of serendipitous conversations

slide-96
SLIDE 96

HOW DOES THIS HELP WITH TESTING AND DEPLOYMENT?

slide-97
SLIDE 97 81

The microservice stability onion

slide-98
SLIDE 98 82

Low change rate

inter-line of business

High stability Semantic Versioning Contract Testing Tolerant Reader “Conversational change”

slide-99
SLIDE 99 83

higher change rate

inter-value stream

lower stability Semantic Versioning Contract Testing Tolerant Reader “Conversational change”

slide-100
SLIDE 100 84

higher change rate

inter-team

lower stability Semantic Versioning Contract Testing Tolerant Reader “Conversational change”

slide-101
SLIDE 101 85

highest change rate

intra-team

lowest stability Semantic Versioning Contract Testing Tolerant Reader “Conversational change”

slide-102
SLIDE 102 86

https://www.flickr.com/photos/snippets101/2686592689/ https://creativecommons.org/licenses/by-nd/2.0/

Thoughts to finish

slide-103
SLIDE 103 87

The Inverse Conway Manoeuvre

Design the organisation you want, the architecture will follow (kicking and screaming).

Evan Bottcher, ThoughtWorks

slide-104
SLIDE 104

WATCH OUT FOR SIGNALS:

constantly ordering work across capabilities splitting stories between teams moving people around deploying in lock-step fan-in for end-to-end testing

88

IT BECOMES MUCH EASIER TO TEST AND DEPLOY INDEPENDENTLY WITH CONWAY’S LAW HELPING

slide-105
SLIDE 105

THE THING I MOST WORRY ABOUT IS NOT TESTING, DEPLOYMENT OR VERSIONING

IT’S ORGANISATIONAL DESIGN

slide-106
SLIDE 106

and that’s why I finally learned to stop worrying and love Conway’s Law

slide-107
SLIDE 107 91

Questions?

Please remember to evaluate via the GOTO Guide App

slide-108
SLIDE 108

FSM: Sarah Pierce. albinobloodsugar.deviantart.com ebola virus: CDC/Cynthia Goldsmith - Public Health Image Library, #10816 Jez Humble face - Release! the game - https://inedo.com/release