safely dancing with conway's law

34
@MartinBurnsSV http://everydaylean.info Dancing with (µ)Services Based Architectures With The Scaled Agile Framework (SAFe®)

Upload: martin-burns

Post on 31-Jul-2015

380 views

Category:

Technology


3 download

TRANSCRIPT

@MartinBurnsSV  http://everydaylean.info

Dancing  with  (µ)Services  Based  Architectures   With  The  Scaled  Agile  Framework  (SAFe®)

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

The  Challenge

“We  can't  control  systems  

or  figure  them  out.

But  we  can  dance  with  

them!  ”  

—Donella  Meadows

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

MartinBurns

Practice  Lead: Enterprise  Agile  Delivery

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Is  this  your  reality?

Source:  Tuhl  at  en.wikipedia.com

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Or  perhaps  this..?

Source:  martinfowler.com

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Successful  organisations  are  Sociotechnical  

Systems

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Conway’s  Law

“organizations  which  design  

systems  ...  are  constrained  to  

produce  designs  which  are  copies  

of  the  communication  structures  

of  these  organizations  ”  

—Melvin  Conway

“If  you  have  four  groups  

working  on  a  compiler,  you'll  

get  a  4-­‐pass  compiler”  

—Eric  S  Raymond

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Conway’s  Law

UI

Middleware

Data

HTML/Javascript

Angular.js

Java

Messaging

Data

Desig

n

Dev/Test

Ops/Sup

port

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Fighting  Conway’s  Law:  Demand  Splitting

Source:  iancarroll.com  

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Fighting  Conway’s  Law:  Handoffs

Source:  iancarroll.com  

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Designing  the  System  Starts  with  

Designing  the  Organisation

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Organisation  Design  is  a  Critical  System  Design  

Decision

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

How  would  you  design  an  

organisation  to  deliver  (µ)SOA?

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

How  can  that  organisation  work  together   to  achieve  SOA  

benefits?

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Can  we  exploit  that  design  to  gain  the  quality,  speed  &  productivity  

benefits  promised  by  Agile?

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Services  Orientated  Organisation

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

How  can  that  organisation  work  together  to  achieve  SOA  

benefits?

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Levels  of  Risk

5 Nobody  has  ever  done  this  before,  anywhere

4 It  has  been  done  elsewhere  once  or  twice

3 It  has  been  done  elsewhere  quite  a  few  times,  with  learning  and  repeatable  results

2 It  has  been  done  within  our  organisation

1 It  has  been  done  within  our  organisation  by  this  team

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

You  have  a  choice

1.  Be  a  pioneer:Work  out  what   works  for  you

Levels  of  Risk

5 Nobody  has  ever  done  this  before,  anywhere

4 It  has  been  done  elsewhere  once  or  twice

3 It  has  been  done  elsewhere  quite  a  few  times,  with  learning  and  repeatable  results

2 It  has  been  done  within  our  organisation

1 It  has  been  done  within  our  organisation  by  this  team

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

You  have  a  choice

2.  Start  with  a  

framework  and  evolve

Levels  of  Risk

5 Nobody  has  ever  done  this  before,  anywhere

4 It  has  been  done  elsewhere  once  or  twice

3 It  has  been  done  elsewhere  quite  a  few  times,  with  learning  and  repeatable  results

2 It  has  been  done  within  our  organisation

1 It  has  been  done  within  our  organisation  by  this  team

If  you’ve  don

e  it  before,  y

ou  have  expe

ctations.  

If  you’ve  nev

er  done  it,  al

l  you  have  is  

hopes

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Summarising  the  delivery  problem

Our  world  has  large  products

• You  cannot  produce  a  retail  loyalty  card  system  with  6-­‐8  people  in  one  room  (in  a  sane  amount  of  time)  

• Conway’s  Law  implies  many  small  teams  

• And  now  we  have  a  co-­‐ordination  challenge.  

• Designing  a  solution  from  1st  principles  incurs  significant  Risk.

• So  what  do  we  need?

…but  we  cannot  have  large  teams

• Communication  pathways  grow  exponentially  with  team  size:   [n*(n-­‐1)]/25  members:  10  pathways 10  members:  45  pathways  

• Prof  Robin  Dunbar:   there  is  a  cognitive  limit  to  the  number  of  individuals  with  whom  any  one  person  can  maintain  stable  relationships  

• Large  teams  produce  monolithic  Big  Balls  of  Mud

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

The  Scaled  Agile  Framework    (SAFe)

The  Scaled  Agile  Framework  is  a  template  for  applying  Lean  and  Agile  at  teams-­‐of-­‐teams  scale,  with  alignment  and  transparency

Powerful  Synchronizes alignment,

collaboration  and delivery  

Principled  Well  definedin  books

and  in  guidance  Proven  Scales

successfully  to large  numbers

teams  

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

SAFe  in  a  Nutshell:  Team  Cadence

Demo

Story

Story

Story

Story

Iteration  2  weeks

KanbanScrumban

Scrum

Retrospective

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

SAFe  in  a  Nutshell:  Program  Cadence

SystemDemo

Feature

Feature

Feature

Feature

PotentiallyShippableIncrement:4-­‐6  Iterations

Team  of Teams

Retrospective

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Big  Room  Planning

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Big  Room  Planning

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

The  most  visibility  I’ve  had  into  what  the  team  are  doing  in  5  years,  since  the  group  was  15  people,  and  because  of  that,  I  have  more  trust  and  confidence  than  I’ve  had  in  5  years

Big  Room  Planning

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Release  Like  an  AirlineBook  in  advance  Plan  for  delays  Plan  for  overbooking  High  cost  of  missing

Queue,  queue,  queue

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Release  Like  a  Train

Frequent  Departures  No  need  to  consult  a  timetable  No  need  to  book  No  worry  about  missing  one Turn  up  and  Go!Plan  together;  Deliver  together

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

• Enables  a  further  fractal  layer  of  independence  with  agreed  touchpoints

• Driven  from  Enterprise  Strategy

• Kanban  System  constrains  WiP

• Prioritisation  by  Economic  Factors

T14

T13

Portfolio  Initiates,  Funds  &  Governs  Release  Trains

T19

T17T18

Release 1

Release 2

Release 2.1

Release 2.2

Release 3

Release 4

Release 4.1

T11T10

L25

L25

T10

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Public  Case  Studies

ScaledAgileFramework.com/case-­‐studies

Leffingwell  et  al.  ©  2014  Scaled  Agile,  Inc.

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Public  Case  Studies

ScaledAgileFramework.com/case-­‐studies

Leffingwell  et  al.  ©  2014  Scaled  Agile,  Inc.

Impressive  Results

• Transparency  increased  on  all  levels  

• Delivery  cycle  time  down  from  >12  months  to  3  months  

• Increased  predictability  (2014  92%  successful  releases)  

• Need  for  patches  decreased  

• Fewer  defects  in  main  branch  

• Good  basis  for  further  growth

@MartinBurnsSV  http://everydaylean.info

Download  these  slides  

Summary

• If  you  want  an  architecture  based  on  many  services,  you  need  an  organisation  of  the  same  structure.

• That  organisation  needs  a  process  that  balances  autonomy  and  alignment.

• The  Scaled  Agile  Framework  provides  just  enough  structure  to  enable  that,  and  it  works.

Architecture

Organisation

SociotechnicalSystems

@MartinBurnsSV  http://everydaylean.info

Avega&Group&&

…är&e.&konsul3öretag&med&specialiserade&do.erbolag&inom&IT&och&verksamhetsutveckling&

…grundades&år&2000,&har&idag&ca&400&medarbetare&och&verksamhet&i&CStockholm,&Malmö,&Göteborg&och&Oslo&

…består&Gll&100%&av&erfarna&specialistkonsulter&

…har&uteslutande&organisk&Gllväxt&

…är&noterat&på&NASDAQ&OMX&Stockholm&sedan&2010&

&