SlideShare a Scribd company logo
1 of 24
Conway’s Law &
Organizational Change
Allan Kelly
allan@softwarestrategy.co.uk
http://www.softwarestrategy.co.uk
Twitter: @allankellynet
Pipeline conference
London
April 2014
Allan Kelly…
Chapters in…
• Business Analysis and Leadership, Pullan & Archer 2013
• 97 Things Every Programmer Should Know, Henney, 2010
• Context Encapsulation in Pattern Languages of Program
Design, vol #5, 2006
 Consulting on software
development & strategy
 Training for Agile
Author
– Changing Software Development: Learning to be
Agile (2008, Wiley)
– Business Patterns for Software Developers (2012,
Wiley - ISBN: 978-1119999249)
– Xanpan: Team Centric Agile Software Development
https://leanpub.com/xanpan
Conway’s Law? Continuous Delivery?
Jonathon’s Run Fall, Pennsylvania by Hubert Stoffels (http://flickr.com/photos/22195940@N00)
Creative Commons License
The Laws which Rule over Us
Moore’s Law Computing power doubles every 18-
24 months
Metcalf’s
Law
Network becomes more useful the
more devices are connected to it
Conway’s
Law
Organizations design systems which
copy the organization
Brook’s Law Adding more people to a late
project makes it later
Goodhart’s
Law
Making a target from a measure
changes the measure
Conway’s Law
Melvin Conway, Datamation, 1968
http://www.melconway.com/Home/Conways_Law.html
organizations which design systems (in
the broad sense used here) are
constrained to produce designs which are
copies of the communication structures
of these organizations
Raymond on Conway
Eric Raymond, Hacker’s Dictionary, 1996
Conway’s Law prov. The rule that
organization of the software and the
organization of the software team will
be congruent; originally stated as ‘If you
have four groups working on a
compiler, you’ll get a 4-pass compiler’.
Coplien & Harrison
Coplien & Harrison, Organizational Patterns of Agile
Software Development, 2004
If the parts of an organization (e.g. teams,
departments, or subdivisions) do not closely reflect
the essential parts of the product, or if the
relationship between organizations do not reflect
the relationships between product parts, then the
project will be in trouble. ...
Therefore: Make sure the organizations is
compatible with the product architecture.
The Homomorphic Force
Leads to Reverse Conway’s Law:
“Organizations with long lived systems will
adopt a structure modeled on the system”
Definition:
Homomorphism is a structure-preserving map
between two structures
Taken from algebra
Kelly’s Corollary
Allan Kelly
Many times since 2005
Organization design is system design.
Architect the organization to architect
the system.
e.g. Collective Code
Ownership leads to more
integrated team & code
e.g. Separate Teams ->
Separate Modules
Why do large systems disintegrate?
3 steps to disintegration (from Conway):
1. Designers realize the system will be large … irresistible the
temptation to assign too many people to a design effort
2. Conventional management of large design organization
causes its communication structure to disintegrate
3. Homomorphism: system structure disintegrates to reflect
design organization
http://en.wikipedia.org/wiki/File:Shiptriplet2wiki.jpg
CCL image from Lance Rolf
Kelly’s Laws
Kelly’s first law of project complexity
Project scope will always increase in
proportion to resources
Inside every large project there is a small
one struggling to get out
Kelly’s second law of project complexity
May the Force be with you
Can you break
Conway’s Law? No
The (Homomorphic)
force is stronger than
you
Use the (Homomorphic)
force, Matthew
Go against it and
you’ll get a mess
Use the force
Work with it
Wood picture from Böhringer, Creative Commons License
http://commons.wikimedia.org/wiki/File:Zebrano01.jpg
Therefore…
Advice for continuous delivery….
Whole team: Include everyone
• Developers, Testers, Analysts, Product
Managers, etc. etc.
– Don’t add communication barriers
• Absorb/Embed the business
– Keep communication paths short
• One team to rule them all
– No communication divide
– No “us & them”
– One goal
Start small: Delay staffing
• Minimize communication boundaries
• Start with smallest team possible
– Minimally Viable Team
– Slightly smaller than you think you need
– Co-locate!
• Get a small system working
– Piecemeal growth
– Grow the team with the system
Multi-skilled Willing Staff
• All hands, one team
– Minimize titles
• Don’t use technologies that
require black arts specialists
– e.g. Databases which need DBA
Every man an rifle man
US Marine Corps
Ameba teams
• Start small
– 1, prototype or research
– 2, get going: Engineer & BA
• Grow
• Split as appropriate
– Focus team
– 1 project or area
• Fully staff each team – stand alone
Team & Duration
Prefer
– Short and Fast
Over
– Long and Thin
• Faster time to market
• Higher Rate On Investment
• Less resource contention
• Requires clear prioritization & closure
#BeyondProjects
#NoProjects
• Keep the team together
– Grow them, shrink them,
– Bend them, shake them
– But never disband them
• Why break up a performing team?
– Flow the work to the team
– Continuous flow
Conway’s Second Law?
Melvin Conway, Datamation, 1968
http://www.melconway.com/Home/Conways_Law.html
This point of view has produced
the observation that there's never
enough time to do something
right, but there's always enough
time to do it over.
You must remember this…
Start small
and grow
What ever you do….
… incremental is not a dirty word
Read all about it
How to Committee invent?
– Original paper, Mel Conway
– http://www.melconway.com/Home/Conways_Law
.html
What do we think about Conway’s Law now?
– Hvatum & Kelly, 2005
– http://www.allankelly.net/static/presentations/Eu
roPLoP2005/ConwaysLawFocusGroup.pdf
Allan Kelly
allan@softwarestrategy.co.uk
http://www.softwarestrategy.co.uk
Twitter: @allankellynet
Questions?
Xanpan: Team Centric Agile Software
Development
https://leanpub.com/xanpan
Discount code: Pipeline2014
Half price $9 till 31 April

More Related Content

What's hot

Strategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationStrategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationNishanth K Hydru
 
Introduction agile scrum methodology
Introduction agile scrum methodologyIntroduction agile scrum methodology
Introduction agile scrum methodologyAmit Verma
 
Kanban in 4 easy steps
Kanban in 4 easy steps Kanban in 4 easy steps
Kanban in 4 easy steps Shore Labs
 
Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...
Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...
Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...Alan McSweeney
 
Scrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumScrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumArrielle Mali
 
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.Boardroom Metrics
 
Pi Planning with Easy Agile Programs for Jira
Pi Planning with Easy Agile Programs for JiraPi Planning with Easy Agile Programs for Jira
Pi Planning with Easy Agile Programs for JiraSean Blake
 
Flow Metrics: What They Are & Why You Need Them
Flow Metrics: What They Are & Why You Need ThemFlow Metrics: What They Are & Why You Need Them
Flow Metrics: What They Are & Why You Need ThemTasktop
 
Agile Transformation in Telco Guide
Agile Transformation in Telco GuideAgile Transformation in Telco Guide
Agile Transformation in Telco GuideACM
 
What is the purpose of Sprint planning meeting in Agile?
What is the purpose of Sprint planning meeting in Agile?What is the purpose of Sprint planning meeting in Agile?
What is the purpose of Sprint planning meeting in Agile?Mario Lucero
 
Conway's Law & Continious Delivery
Conway's Law & Continious DeliveryConway's Law & Continious Delivery
Conway's Law & Continious Deliveryallan kelly
 
Agile Transformation v1.27
Agile Transformation v1.27Agile Transformation v1.27
Agile Transformation v1.27LeadingAgile
 
DevOps Patterns - Team Topologies
DevOps Patterns -  Team TopologiesDevOps Patterns -  Team Topologies
DevOps Patterns - Team TopologiesMatthew Skelton
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Developmentsushant.1409
 
Sustainable Agility at Scale
Sustainable Agility at ScaleSustainable Agility at Scale
Sustainable Agility at ScaleRowan Bunning
 
Kanban - Back to Basics
Kanban - Back to BasicsKanban - Back to Basics
Kanban - Back to BasicsHelen Meek
 

What's hot (20)

Strategies for Large Scale Agile Transformation
Strategies for Large Scale Agile TransformationStrategies for Large Scale Agile Transformation
Strategies for Large Scale Agile Transformation
 
Kanban 101
Kanban 101Kanban 101
Kanban 101
 
Introduction agile scrum methodology
Introduction agile scrum methodologyIntroduction agile scrum methodology
Introduction agile scrum methodology
 
Kanban in 4 easy steps
Kanban in 4 easy steps Kanban in 4 easy steps
Kanban in 4 easy steps
 
Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...
Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...
Conway's Law, Cognitive Diversity, Organisation Transformation And Solution D...
 
Scaling agile with sa fe v1.0
Scaling agile with sa fe v1.0Scaling agile with sa fe v1.0
Scaling agile with sa fe v1.0
 
Scrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumScrum 101: Introduction to Scrum
Scrum 101: Introduction to Scrum
 
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
Executive Presentation on Agile Project Management by Boardroom Metrics Inc.
 
Pi Planning with Easy Agile Programs for Jira
Pi Planning with Easy Agile Programs for JiraPi Planning with Easy Agile Programs for Jira
Pi Planning with Easy Agile Programs for Jira
 
Scaled Agile Framework SAFe 4.0
Scaled Agile Framework SAFe 4.0Scaled Agile Framework SAFe 4.0
Scaled Agile Framework SAFe 4.0
 
Flow Metrics: What They Are & Why You Need Them
Flow Metrics: What They Are & Why You Need ThemFlow Metrics: What They Are & Why You Need Them
Flow Metrics: What They Are & Why You Need Them
 
Agile Transformation in Telco Guide
Agile Transformation in Telco GuideAgile Transformation in Telco Guide
Agile Transformation in Telco Guide
 
What is the purpose of Sprint planning meeting in Agile?
What is the purpose of Sprint planning meeting in Agile?What is the purpose of Sprint planning meeting in Agile?
What is the purpose of Sprint planning meeting in Agile?
 
Conway's Law & Continious Delivery
Conway's Law & Continious DeliveryConway's Law & Continious Delivery
Conway's Law & Continious Delivery
 
Agile Transformation v1.27
Agile Transformation v1.27Agile Transformation v1.27
Agile Transformation v1.27
 
DevOps Patterns - Team Topologies
DevOps Patterns -  Team TopologiesDevOps Patterns -  Team Topologies
DevOps Patterns - Team Topologies
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Sustainable Agility at Scale
Sustainable Agility at ScaleSustainable Agility at Scale
Sustainable Agility at Scale
 
Kanban - Back to Basics
Kanban - Back to BasicsKanban - Back to Basics
Kanban - Back to Basics
 
Agile introduction
Agile introductionAgile introduction
Agile introduction
 

Similar to Conways Law & Continuous Delivery

Here Be Dragons - Scaling Agile
Here Be Dragons - Scaling AgileHere Be Dragons - Scaling Agile
Here Be Dragons - Scaling AgilePeter Hundermark
 
ELMSLN: Rethinking System Architecture
ELMSLN: Rethinking System ArchitectureELMSLN: Rethinking System Architecture
ELMSLN: Rethinking System ArchitectureBryan Ollendyke
 
Rethinking system design
Rethinking system designRethinking system design
Rethinking system designBryan Ollendyke
 
Evolutionary architecture guiding principles
Evolutionary architecture guiding principlesEvolutionary architecture guiding principles
Evolutionary architecture guiding principlesAidan Casey
 
Applying Systems Thinking to Software Architecture
Applying Systems Thinking to Software ArchitectureApplying Systems Thinking to Software Architecture
Applying Systems Thinking to Software ArchitectureMatt McLarty
 
Systems Thinking workshop, given at Lean UX NYC
Systems Thinking workshop, given at Lean UX NYCSystems Thinking workshop, given at Lean UX NYC
Systems Thinking workshop, given at Lean UX NYCjohanna kollmann
 
Building Scalable Organizations
Building Scalable OrganizationsBuilding Scalable Organizations
Building Scalable Organizationsmfisher5kavika
 
Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201
Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201
Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201Amazon Web Services
 
How to Maximize Effectiveness of Developers Contributing to Free Software
How to Maximize Effectiveness of Developers Contributing to Free SoftwareHow to Maximize Effectiveness of Developers Contributing to Free Software
How to Maximize Effectiveness of Developers Contributing to Free SoftwareStefano Maffulli
 
Ferature team composition : A workshop
Ferature team composition : A workshopFerature team composition : A workshop
Ferature team composition : A workshopAshwinee Kalkura
 
Large Scale Scrum: More with LeSS
Large Scale Scrum: More with LeSSLarge Scale Scrum: More with LeSS
Large Scale Scrum: More with LeSSRam Srinivasan, CST
 
Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...
Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...
Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...Institut Lean France
 
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...Skelton Thatcher Consulting Ltd
 
META for Microservices: Getting your enterprise migration in motion
META for Microservices: Getting your enterprise migration in motionMETA for Microservices: Getting your enterprise migration in motion
META for Microservices: Getting your enterprise migration in motionMatt McLarty
 
Architecting systems for continuous delivery
Architecting systems for continuous deliveryArchitecting systems for continuous delivery
Architecting systems for continuous deliveryMarcel de Vries
 
Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)Giovanni Asproni
 

Similar to Conways Law & Continuous Delivery (20)

feature vs component teams
feature vs component teamsfeature vs component teams
feature vs component teams
 
Here Be Dragons - Scaling Agile
Here Be Dragons - Scaling AgileHere Be Dragons - Scaling Agile
Here Be Dragons - Scaling Agile
 
ELMSLN: Rethinking System Architecture
ELMSLN: Rethinking System ArchitectureELMSLN: Rethinking System Architecture
ELMSLN: Rethinking System Architecture
 
Rethinking system design
Rethinking system designRethinking system design
Rethinking system design
 
Evolutionary architecture guiding principles
Evolutionary architecture guiding principlesEvolutionary architecture guiding principles
Evolutionary architecture guiding principles
 
Applying Systems Thinking to Software Architecture
Applying Systems Thinking to Software ArchitectureApplying Systems Thinking to Software Architecture
Applying Systems Thinking to Software Architecture
 
Systems Thinking workshop, given at Lean UX NYC
Systems Thinking workshop, given at Lean UX NYCSystems Thinking workshop, given at Lean UX NYC
Systems Thinking workshop, given at Lean UX NYC
 
Building Scalable Organizations
Building Scalable OrganizationsBuilding Scalable Organizations
Building Scalable Organizations
 
Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201
Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201
Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201
 
Microservices why?
Microservices   why?Microservices   why?
Microservices why?
 
How to Maximize Effectiveness of Developers Contributing to Free Software
How to Maximize Effectiveness of Developers Contributing to Free SoftwareHow to Maximize Effectiveness of Developers Contributing to Free Software
How to Maximize Effectiveness of Developers Contributing to Free Software
 
Teams and monoliths - Matthew Skelton - LondonCD 2016
Teams and monoliths - Matthew Skelton - LondonCD 2016Teams and monoliths - Matthew Skelton - LondonCD 2016
Teams and monoliths - Matthew Skelton - LondonCD 2016
 
Ferature team composition : A workshop
Ferature team composition : A workshopFerature team composition : A workshop
Ferature team composition : A workshop
 
Large Scale Scrum: More with LeSS
Large Scale Scrum: More with LeSSLarge Scale Scrum: More with LeSS
Large Scale Scrum: More with LeSS
 
Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...
Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...
Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ...
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
How to choose tools for DevOps and Continuous Delivery - Unicom DevOps Summit...
 
META for Microservices: Getting your enterprise migration in motion
META for Microservices: Getting your enterprise migration in motionMETA for Microservices: Getting your enterprise migration in motion
META for Microservices: Getting your enterprise migration in motion
 
Architecting systems for continuous delivery
Architecting systems for continuous deliveryArchitecting systems for continuous delivery
Architecting systems for continuous delivery
 
Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)
 

More from allan kelly

Agile Digital and the new management paradigms
Agile Digital and the new management paradigmsAgile Digital and the new management paradigms
Agile Digital and the new management paradigmsallan kelly
 
Planning for Value: How much? When?
Planning for Value: How much? When?Planning for Value: How much? When?
Planning for Value: How much? When?allan kelly
 
Software Development is Upside Down
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Downallan kelly
 
Beyond Projects/#NoProjects
Beyond Projects/#NoProjectsBeyond Projects/#NoProjects
Beyond Projects/#NoProjectsallan kelly
 
Planning for Value: how much? when?
Planning for Value: how much? when?Planning for Value: how much? when?
Planning for Value: how much? when?allan kelly
 
Creating a culture of continuous delivery & value
Creating a culture of continuous delivery & valueCreating a culture of continuous delivery & value
Creating a culture of continuous delivery & valueallan kelly
 
Planning for Value
Planning for ValuePlanning for Value
Planning for Valueallan kelly
 
#NoProjects - Beyond Projects
#NoProjects - Beyond Projects#NoProjects - Beyond Projects
#NoProjects - Beyond Projectsallan kelly
 
#NoProjects - Teams over Projects
#NoProjects - Teams over Projects#NoProjects - Teams over Projects
#NoProjects - Teams over Projectsallan kelly
 
Every business a software business
Every business a software businessEvery business a software business
Every business a software businessallan kelly
 
Agile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSWAgile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSWallan kelly
 
No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)allan kelly
 
No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)allan kelly
 
Agile Outside Software
Agile Outside SoftwareAgile Outside Software
Agile Outside Softwareallan kelly
 
Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)allan kelly
 
Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)allan kelly
 
Xanpan extended presentation
Xanpan extended presentationXanpan extended presentation
Xanpan extended presentationallan kelly
 

More from allan kelly (20)

Agile Digital and the new management paradigms
Agile Digital and the new management paradigmsAgile Digital and the new management paradigms
Agile Digital and the new management paradigms
 
Planning for Value: How much? When?
Planning for Value: How much? When?Planning for Value: How much? When?
Planning for Value: How much? When?
 
Software Development is Upside Down
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Down
 
Beyond Projects/#NoProjects
Beyond Projects/#NoProjectsBeyond Projects/#NoProjects
Beyond Projects/#NoProjects
 
Planning for Value: how much? when?
Planning for Value: how much? when?Planning for Value: how much? when?
Planning for Value: how much? when?
 
Creating a culture of continuous delivery & value
Creating a culture of continuous delivery & valueCreating a culture of continuous delivery & value
Creating a culture of continuous delivery & value
 
Planning for Value
Planning for ValuePlanning for Value
Planning for Value
 
#NoProjects - Beyond Projects
#NoProjects - Beyond Projects#NoProjects - Beyond Projects
#NoProjects - Beyond Projects
 
#NoProjects - Teams over Projects
#NoProjects - Teams over Projects#NoProjects - Teams over Projects
#NoProjects - Teams over Projects
 
What isagile
What isagileWhat isagile
What isagile
 
Every business a software business
Every business a software businessEvery business a software business
Every business a software business
 
Agile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSWAgile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSW
 
No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)
 
Agile Contracts
Agile ContractsAgile Contracts
Agile Contracts
 
No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)
 
Agile Outside Software
Agile Outside SoftwareAgile Outside Software
Agile Outside Software
 
Agile basics
Agile basicsAgile basics
Agile basics
 
Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)
 
Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)
 
Xanpan extended presentation
Xanpan extended presentationXanpan extended presentation
Xanpan extended presentation
 

Recently uploaded

Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineeringssuserb3a23b
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 

Recently uploaded (20)

Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineering
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 

Conways Law & Continuous Delivery

  • 1. Conway’s Law & Organizational Change Allan Kelly allan@softwarestrategy.co.uk http://www.softwarestrategy.co.uk Twitter: @allankellynet Pipeline conference London April 2014
  • 2. Allan Kelly… Chapters in… • Business Analysis and Leadership, Pullan & Archer 2013 • 97 Things Every Programmer Should Know, Henney, 2010 • Context Encapsulation in Pattern Languages of Program Design, vol #5, 2006  Consulting on software development & strategy  Training for Agile Author – Changing Software Development: Learning to be Agile (2008, Wiley) – Business Patterns for Software Developers (2012, Wiley - ISBN: 978-1119999249) – Xanpan: Team Centric Agile Software Development https://leanpub.com/xanpan
  • 3. Conway’s Law? Continuous Delivery? Jonathon’s Run Fall, Pennsylvania by Hubert Stoffels (http://flickr.com/photos/22195940@N00) Creative Commons License
  • 4. The Laws which Rule over Us Moore’s Law Computing power doubles every 18- 24 months Metcalf’s Law Network becomes more useful the more devices are connected to it Conway’s Law Organizations design systems which copy the organization Brook’s Law Adding more people to a late project makes it later Goodhart’s Law Making a target from a measure changes the measure
  • 5. Conway’s Law Melvin Conway, Datamation, 1968 http://www.melconway.com/Home/Conways_Law.html organizations which design systems (in the broad sense used here) are constrained to produce designs which are copies of the communication structures of these organizations
  • 6. Raymond on Conway Eric Raymond, Hacker’s Dictionary, 1996 Conway’s Law prov. The rule that organization of the software and the organization of the software team will be congruent; originally stated as ‘If you have four groups working on a compiler, you’ll get a 4-pass compiler’.
  • 7. Coplien & Harrison Coplien & Harrison, Organizational Patterns of Agile Software Development, 2004 If the parts of an organization (e.g. teams, departments, or subdivisions) do not closely reflect the essential parts of the product, or if the relationship between organizations do not reflect the relationships between product parts, then the project will be in trouble. ... Therefore: Make sure the organizations is compatible with the product architecture.
  • 8. The Homomorphic Force Leads to Reverse Conway’s Law: “Organizations with long lived systems will adopt a structure modeled on the system” Definition: Homomorphism is a structure-preserving map between two structures Taken from algebra
  • 9. Kelly’s Corollary Allan Kelly Many times since 2005 Organization design is system design. Architect the organization to architect the system. e.g. Collective Code Ownership leads to more integrated team & code e.g. Separate Teams -> Separate Modules
  • 10. Why do large systems disintegrate? 3 steps to disintegration (from Conway): 1. Designers realize the system will be large … irresistible the temptation to assign too many people to a design effort 2. Conventional management of large design organization causes its communication structure to disintegrate 3. Homomorphism: system structure disintegrates to reflect design organization http://en.wikipedia.org/wiki/File:Shiptriplet2wiki.jpg CCL image from Lance Rolf
  • 11. Kelly’s Laws Kelly’s first law of project complexity Project scope will always increase in proportion to resources Inside every large project there is a small one struggling to get out Kelly’s second law of project complexity
  • 12. May the Force be with you Can you break Conway’s Law? No The (Homomorphic) force is stronger than you Use the (Homomorphic) force, Matthew
  • 13. Go against it and you’ll get a mess Use the force Work with it Wood picture from Böhringer, Creative Commons License http://commons.wikimedia.org/wiki/File:Zebrano01.jpg
  • 15. Whole team: Include everyone • Developers, Testers, Analysts, Product Managers, etc. etc. – Don’t add communication barriers • Absorb/Embed the business – Keep communication paths short • One team to rule them all – No communication divide – No “us & them” – One goal
  • 16. Start small: Delay staffing • Minimize communication boundaries • Start with smallest team possible – Minimally Viable Team – Slightly smaller than you think you need – Co-locate! • Get a small system working – Piecemeal growth – Grow the team with the system
  • 17. Multi-skilled Willing Staff • All hands, one team – Minimize titles • Don’t use technologies that require black arts specialists – e.g. Databases which need DBA Every man an rifle man US Marine Corps
  • 18. Ameba teams • Start small – 1, prototype or research – 2, get going: Engineer & BA • Grow • Split as appropriate – Focus team – 1 project or area • Fully staff each team – stand alone
  • 19. Team & Duration Prefer – Short and Fast Over – Long and Thin • Faster time to market • Higher Rate On Investment • Less resource contention • Requires clear prioritization & closure
  • 20. #BeyondProjects #NoProjects • Keep the team together – Grow them, shrink them, – Bend them, shake them – But never disband them • Why break up a performing team? – Flow the work to the team – Continuous flow
  • 21. Conway’s Second Law? Melvin Conway, Datamation, 1968 http://www.melconway.com/Home/Conways_Law.html This point of view has produced the observation that there's never enough time to do something right, but there's always enough time to do it over.
  • 22. You must remember this… Start small and grow What ever you do…. … incremental is not a dirty word
  • 23. Read all about it How to Committee invent? – Original paper, Mel Conway – http://www.melconway.com/Home/Conways_Law .html What do we think about Conway’s Law now? – Hvatum & Kelly, 2005 – http://www.allankelly.net/static/presentations/Eu roPLoP2005/ConwaysLawFocusGroup.pdf
  • 24. Allan Kelly allan@softwarestrategy.co.uk http://www.softwarestrategy.co.uk Twitter: @allankellynet Questions? Xanpan: Team Centric Agile Software Development https://leanpub.com/xanpan Discount code: Pipeline2014 Half price $9 till 31 April