Conways Law & Continuous Delivery

allan kelly
allan kellySoftware & the business: Consulting, Coaching & Training (for Agile) at Software Strategy Ltd.
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
1 of 24

Recommended

Overview of Agile Methodology by
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile MethodologyHaresh Karkar
251.6K views25 slides
Scrum vs SAFe | Differences Between Scrum and Scaled Agile Framework | Edureka by
Scrum vs SAFe | Differences Between Scrum and Scaled Agile Framework | EdurekaScrum vs SAFe | Differences Between Scrum and Scaled Agile Framework | Edureka
Scrum vs SAFe | Differences Between Scrum and Scaled Agile Framework | EdurekaEdureka!
862 views26 slides
Top-20 Agile Quotes by
Top-20 Agile QuotesTop-20 Agile Quotes
Top-20 Agile QuotesKirill Klimov
22.9K views25 slides
DevOps or DevSecOps by
DevOps or DevSecOpsDevOps or DevSecOps
DevOps or DevSecOpsMichelangelo van Dam
994 views63 slides
How to implement DevOps in your Organization by
How to implement DevOps in your OrganizationHow to implement DevOps in your Organization
How to implement DevOps in your OrganizationDalibor Blazevic
1.2K views22 slides
Scaled Agile Framework by
Scaled Agile FrameworkScaled Agile Framework
Scaled Agile FrameworkKnoldus Inc.
226 views18 slides

More Related Content

What's hot

Agile Project Management by
Agile Project ManagementAgile Project Management
Agile Project ManagementAbdullah Khan
5K views31 slides
Agile Metrics: Value, Flow, Quality, Culture by
Agile Metrics: Value, Flow, Quality, CultureAgile Metrics: Value, Flow, Quality, Culture
Agile Metrics: Value, Flow, Quality, CultureBrad Appleton
713 views43 slides
Introduction to SAFe, the Scaled Agile Framework by
Introduction to SAFe, the Scaled Agile FrameworkIntroduction to SAFe, the Scaled Agile Framework
Introduction to SAFe, the Scaled Agile Frameworksrondal
2K views33 slides
DevOps Transition Strategies by
DevOps Transition StrategiesDevOps Transition Strategies
DevOps Transition StrategiesAlec Lazarescu
2.7K views66 slides
Top Lessons Learned From The DevOps Handbook by
Top Lessons Learned From The DevOps HandbookTop Lessons Learned From The DevOps Handbook
Top Lessons Learned From The DevOps HandbookXebiaLabs
1.2K views64 slides
Introduction to scaled agile framework by
Introduction to scaled agile frameworkIntroduction to scaled agile framework
Introduction to scaled agile frameworkSrinath Ramakrishnan
14.8K views23 slides

What's hot(20)

Agile Metrics: Value, Flow, Quality, Culture by Brad Appleton
Agile Metrics: Value, Flow, Quality, CultureAgile Metrics: Value, Flow, Quality, Culture
Agile Metrics: Value, Flow, Quality, Culture
Brad Appleton713 views
Introduction to SAFe, the Scaled Agile Framework by srondal
Introduction to SAFe, the Scaled Agile FrameworkIntroduction to SAFe, the Scaled Agile Framework
Introduction to SAFe, the Scaled Agile Framework
srondal2K views
DevOps Transition Strategies by Alec Lazarescu
DevOps Transition StrategiesDevOps Transition Strategies
DevOps Transition Strategies
Alec Lazarescu2.7K views
Top Lessons Learned From The DevOps Handbook by XebiaLabs
Top Lessons Learned From The DevOps HandbookTop Lessons Learned From The DevOps Handbook
Top Lessons Learned From The DevOps Handbook
XebiaLabs1.2K views
What's new in the Scaled Agile Framework (SAFe) 6.0 - Agile Indy May 10th Meetup by Yuval Yeret
What's new in the Scaled Agile Framework (SAFe) 6.0 - Agile Indy May 10th MeetupWhat's new in the Scaled Agile Framework (SAFe) 6.0 - Agile Indy May 10th Meetup
What's new in the Scaled Agile Framework (SAFe) 6.0 - Agile Indy May 10th Meetup
Yuval Yeret285 views
Agile Delivery Powerpoint Presentation Slides by SlideTeam
Agile Delivery Powerpoint Presentation SlidesAgile Delivery Powerpoint Presentation Slides
Agile Delivery Powerpoint Presentation Slides
SlideTeam959 views
Building Your SAFe Implementation Strategy by Alex Yakyma
Building Your SAFe Implementation StrategyBuilding Your SAFe Implementation Strategy
Building Your SAFe Implementation Strategy
Alex Yakyma954 views
Learn from the Experts: Using DORA Metrics to Accelerate Value Stream Flow by DevOps.com
Learn from the Experts: Using DORA Metrics to Accelerate Value Stream FlowLearn from the Experts: Using DORA Metrics to Accelerate Value Stream Flow
Learn from the Experts: Using DORA Metrics to Accelerate Value Stream Flow
DevOps.com799 views
Team Topologies - how and why to design your teams - AllDayDevOps 2017 by Matthew Skelton
Team Topologies - how and why to design your teams - AllDayDevOps 2017Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017
Matthew Skelton5.8K views
Gap Survey, Assessment and Analysis for DevSecOps by Marc Hornbeek
Gap Survey, Assessment and Analysis for DevSecOpsGap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOps
Marc Hornbeek993 views
Four Strategies to Create a DevOps Culture & System that Favors Innovation & ... by Amazon Web Services
Four Strategies to Create a DevOps Culture & System that Favors Innovation & ...Four Strategies to Create a DevOps Culture & System that Favors Innovation & ...
Four Strategies to Create a DevOps Culture & System that Favors Innovation & ...
Amazon Web Services1.3K views
Modeling application risk at scale @ netflix by Scott Behrens
Modeling application risk at scale @ netflixModeling application risk at scale @ netflix
Modeling application risk at scale @ netflix
Scott Behrens509 views

Similar to Conways Law & Continuous Delivery

Conway's Law & Continious Delivery by
Conway's Law & Continious DeliveryConway's Law & Continious Delivery
Conway's Law & Continious Deliveryallan kelly
3.6K views25 slides
feature vs component teams by
feature vs component teamsfeature vs component teams
feature vs component teamsLeland Newsom CSP-SM, SPC5, SDP
17.9K views37 slides
Here Be Dragons - Scaling Agile by
Here Be Dragons - Scaling AgileHere Be Dragons - Scaling Agile
Here Be Dragons - Scaling AgilePeter Hundermark
3.7K views39 slides
ELMSLN: Rethinking System Architecture by
ELMSLN: Rethinking System ArchitectureELMSLN: Rethinking System Architecture
ELMSLN: Rethinking System ArchitectureBryan Ollendyke
638 views38 slides
Rethinking system design by
Rethinking system designRethinking system design
Rethinking system designBryan Ollendyke
99 views39 slides
Evolutionary architecture guiding principles by
Evolutionary architecture guiding principlesEvolutionary architecture guiding principles
Evolutionary architecture guiding principlesAidan Casey
774 views31 slides

Similar to Conways Law & Continuous Delivery(20)

Conway's Law & Continious Delivery by allan kelly
Conway's Law & Continious DeliveryConway's Law & Continious Delivery
Conway's Law & Continious Delivery
allan kelly3.6K views
ELMSLN: Rethinking System Architecture by Bryan Ollendyke
ELMSLN: Rethinking System ArchitectureELMSLN: Rethinking System Architecture
ELMSLN: Rethinking System Architecture
Bryan Ollendyke638 views
Evolutionary architecture guiding principles by Aidan Casey
Evolutionary architecture guiding principlesEvolutionary architecture guiding principles
Evolutionary architecture guiding principles
Aidan Casey774 views
Applying Systems Thinking to Software Architecture by Matt McLarty
Applying Systems Thinking to Software ArchitectureApplying Systems Thinking to Software Architecture
Applying Systems Thinking to Software Architecture
Matt McLarty918 views
Systems Thinking workshop, given at Lean UX NYC by johanna kollmann
Systems Thinking workshop, given at Lean UX NYCSystems Thinking workshop, given at Lean UX NYC
Systems Thinking workshop, given at Lean UX NYC
johanna kollmann3.5K views
Building Scalable Organizations by mfisher5kavika
Building Scalable OrganizationsBuilding Scalable Organizations
Building Scalable Organizations
mfisher5kavika4.8K views
Smaller is Better - Exploiting Microservice Architectures on AWS - Technical 201 by Amazon Web Services
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
Amazon Web Services2.7K views
How to Maximize Effectiveness of Developers Contributing to Free Software by Stefano Maffulli
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
Stefano Maffulli522 views
Scrum: The art of doing twice the work in half the time by Jeff Sutherland - ... by Institut Lean France
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 - ...
META for Microservices: Getting your enterprise migration in motion by Matt McLarty
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
Matt McLarty534 views
Architecting systems for continuous delivery by Marcel de Vries
Architecting systems for continuous deliveryArchitecting systems for continuous delivery
Architecting systems for continuous delivery
Marcel de Vries3.8K views

More from allan kelly

Agile Digital and the new management paradigms by
Agile Digital and the new management paradigmsAgile Digital and the new management paradigms
Agile Digital and the new management paradigmsallan kelly
698 views51 slides
Planning for Value: How much? When? by
Planning for Value: How much? When?Planning for Value: How much? When?
Planning for Value: How much? When?allan kelly
1.6K views47 slides
Software Development is Upside Down by
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Downallan kelly
5.1K views44 slides
Beyond Projects/#NoProjects by
Beyond Projects/#NoProjectsBeyond Projects/#NoProjects
Beyond Projects/#NoProjectsallan kelly
4K views59 slides
Planning for Value: how much? when? by
Planning for Value: how much? when?Planning for Value: how much? when?
Planning for Value: how much? when?allan kelly
389 views43 slides
Creating a culture of continuous delivery & value by
Creating a culture of continuous delivery & valueCreating a culture of continuous delivery & value
Creating a culture of continuous delivery & valueallan kelly
936 views23 slides

More from allan kelly(20)

Agile Digital and the new management paradigms by allan kelly
Agile Digital and the new management paradigmsAgile Digital and the new management paradigms
Agile Digital and the new management paradigms
allan kelly698 views
Planning for Value: How much? When? by allan kelly
Planning for Value: How much? When?Planning for Value: How much? When?
Planning for Value: How much? When?
allan kelly1.6K views
Software Development is Upside Down by allan kelly
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Down
allan kelly5.1K views
Beyond Projects/#NoProjects by allan kelly
Beyond Projects/#NoProjectsBeyond Projects/#NoProjects
Beyond Projects/#NoProjects
allan kelly4K views
Planning for Value: how much? when? by allan kelly
Planning for Value: how much? when?Planning for Value: how much? when?
Planning for Value: how much? when?
allan kelly389 views
Creating a culture of continuous delivery & value by allan kelly
Creating a culture of continuous delivery & valueCreating a culture of continuous delivery & value
Creating a culture of continuous delivery & value
allan kelly936 views
Planning for Value by allan kelly
Planning for ValuePlanning for Value
Planning for Value
allan kelly1.3K views
#NoProjects - Beyond Projects by allan kelly
#NoProjects - Beyond Projects#NoProjects - Beyond Projects
#NoProjects - Beyond Projects
allan kelly3.4K views
#NoProjects - Teams over Projects by allan kelly
#NoProjects - Teams over Projects#NoProjects - Teams over Projects
#NoProjects - Teams over Projects
allan kelly3K views
Every business a software business by allan kelly
Every business a software businessEvery business a software business
Every business a software business
allan kelly2K views
Agile Outside Software: Does Agile work outside of sofware? #AOSW by allan kelly
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
allan kelly2.4K views
No Projects - Beyond Projects (Refreshed version) by allan kelly
No Projects - Beyond Projects (Refreshed version)No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)
allan kelly6.8K views
Agile Contracts by allan kelly
Agile ContractsAgile Contracts
Agile Contracts
allan kelly6.5K views
No Projects / Beyond Projects (short version) by allan kelly
No Projects / Beyond Projects (short version)No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)
allan kelly1.5K views
Agile Outside Software by allan kelly
Agile Outside SoftwareAgile Outside Software
Agile Outside Software
allan kelly8.5K views
Do It Right, Then Do The Right Thing (Riga) by allan 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)
allan kelly1.5K views
Dialogue Sheets for Retrospectives (Riga) by allan kelly
Dialogue Sheets for Retrospectives (Riga)Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)
allan kelly1.4K views
Xanpan extended presentation by allan kelly
Xanpan extended presentationXanpan extended presentation
Xanpan extended presentation
allan kelly3.9K views

Recently uploaded

Bootstrapping vs Venture Capital.pptx by
Bootstrapping vs Venture Capital.pptxBootstrapping vs Venture Capital.pptx
Bootstrapping vs Venture Capital.pptxZeljko Svedic
12 views17 slides
Programming Field by
Programming FieldProgramming Field
Programming Fieldthehardtechnology
5 views9 slides
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports by
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsRa'Fat Al-Msie'deen
8 views49 slides
The Path to DevOps by
The Path to DevOpsThe Path to DevOps
The Path to DevOpsJohn Valentino
5 views6 slides
Software evolution understanding: Automatic extraction of software identifier... by
Software evolution understanding: Automatic extraction of software identifier...Software evolution understanding: Automatic extraction of software identifier...
Software evolution understanding: Automatic extraction of software identifier...Ra'Fat Al-Msie'deen
9 views33 slides
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with... by
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...sparkfabrik
7 views46 slides

Recently uploaded(20)

Bootstrapping vs Venture Capital.pptx by Zeljko Svedic
Bootstrapping vs Venture Capital.pptxBootstrapping vs Venture Capital.pptx
Bootstrapping vs Venture Capital.pptx
Zeljko Svedic12 views
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports by Ra'Fat Al-Msie'deen
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
Software evolution understanding: Automatic extraction of software identifier... by Ra'Fat Al-Msie'deen
Software evolution understanding: Automatic extraction of software identifier...Software evolution understanding: Automatic extraction of software identifier...
Software evolution understanding: Automatic extraction of software identifier...
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with... by sparkfabrik
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
20231129 - Platform @ localhost 2023 - Application-driven infrastructure with...
sparkfabrik7 views
predicting-m3-devopsconMunich-2023.pptx by Tier1 app
predicting-m3-devopsconMunich-2023.pptxpredicting-m3-devopsconMunich-2023.pptx
predicting-m3-devopsconMunich-2023.pptx
Tier1 app7 views
Fleet Management Software in India by Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable11 views
360 graden fabriek by info33492
360 graden fabriek360 graden fabriek
360 graden fabriek
info33492122 views
AI and Ml presentation .pptx by FayazAli87
AI and Ml presentation .pptxAI and Ml presentation .pptx
AI and Ml presentation .pptx
FayazAli8712 views
FOSSLight Community Day 2023-11-30 by Shane Coughlan
FOSSLight Community Day 2023-11-30FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30
Shane Coughlan5 views
Copilot Prompting Toolkit_All Resources.pdf by Riccardo Zamana
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdf
Riccardo Zamana10 views
Navigating container technology for enhanced security by Niklas Saari by Metosin Oy
Navigating container technology for enhanced security by Niklas SaariNavigating container technology for enhanced security by Niklas Saari
Navigating container technology for enhanced security by Niklas Saari
Metosin Oy14 views
Introduction to Git Source Control by John Valentino
Introduction to Git Source ControlIntroduction to Git Source Control
Introduction to Git Source Control
John Valentino5 views
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI... by Marc Müller
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Marc Müller41 views
Dapr Unleashed: Accelerating Microservice Development by Miroslav Janeski
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice Development
Miroslav Janeski10 views
Advanced API Mocking Techniques by Dimpy Adhikary
Advanced API Mocking TechniquesAdvanced API Mocking Techniques
Advanced API Mocking Techniques
Dimpy Adhikary19 views

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