This talk is a work of fiction.

Any resemblance to your projects may be on purpose.

@JulienTopcu

 50 A.U.

 FRANCE

@JulienTopcu

Reflect on major trends in the evolution of the education sector

@JulienTopcu

@JulienTopcu

13 Juillet 1998

(28 A.U.)

@JulienTopcu

13 Juillet 1998

@JulienTopcu

Jakob Nielsen, PhD

@JulienTopcu

C

.

E

.

O

@JulienTopcu

C-Level

 

Ego

 

Optimization

C

.

E

.

O

@JulienTopcu

@JulienTopcu

Nigel Bevan, PhD

Avril 1998

@JulienTopcu

 38 A.U.

REDMOND (USA)

@JulienTopcu

@JulienTopcu

Model Precision Recall

Organizational Structure

Code Churn

Code Complexity

Dependencies

Code Coverage

Pre-Release Bugs

86,2%

78,6%

79,3%

74,4%

83,8%

73,8%

84,0%

79,9%

66,0%

69,9%

54,4%

62,9%

3404 Binaires

Windows Vista

50+ Million LOC

@JulienTopcu

Janvier 2008

Organization eats Code Quality Tools at breakfast

@JulienTopcu

 Product quality is strongly affected by organization structure

1975

@JulienTopcu

 46 A.U.

LONDON

@JulienTopcu

UI

Rail Shopping

Rail Supply

@JulienTopcu

UI

Rail Shopping

Rail Supply

If

If

If

If

If

If

If

If

If

@JulienTopcu

UI

Rail Shopping

Rail Supply

Feature Team

#1

Feature Team

#2

Feature Team

#3

@JulienTopcu

User Experience

Product Design

Product & Code Quality

Architecture

are strongly impacted by your organization !

@JulienTopcu

HOW DO COMMITTEES INVENT?

by MELVIN E. CONWAY - April 1968  

@JulienTopcu

User

Shopping

Payment

Billing

@JulienTopcu

User

Shopping

Payment

Billing

@JulienTopcu

User

Shopping

Payment

Billing

@JulienTopcu

Interface

User

Shopping

Payment

Billing

@JulienTopcu

Communication

Contract Negotiation

Coordinator

User

Shopping

Payment

Billing

Interface

@JulienTopcu

User

Billing

Payment

Shopping

User

Billing

Shopping

Payment

@JulienTopcu

User

Billing

Payment

Shopping

User

Billing

Shopping

Payment

@JulienTopcu

Homomorphism

User

Billing

Payment

Shopping

User

Billing

Shopping

Payment

User

Billing

Payment

Shopping

User

Billing

Shopping

Payment

@JulienTopcu

User

Billing

Payment

Shopping

@JulienTopcu

User

Billing

Payment

Shopping

Payment

Shopping

User

Billing

User

Billing

Shopping

Checkout

Payment

@JulienTopcu

Payment

Billing

Shopping

User

Checkout

???

Checkout

Payment

Shopping

User

Billing

User

Billing

Payment

Shopping

@JulienTopcu

Choosing an organization is already constraining the structure of the system it will produce, even before having analyzed the possible solutions.

@JulienTopcu

User

Billing

Payment

Shopping

@JulienTopcu

Cobol Compiler

Algol Compiler

@JulienTopcu

Cobol Compiler

Algol Compiler

@JulienTopcu

Cobol Compiler

Algol Compiler

@JulienTopcu

Cobol Compiler

@JulienTopcu

Cobol Compiler

@JulienTopcu

Cobol Compiler

Someone has to be the manager

Tom Cheatham - 1996

@JulienTopcu

Problem

@JulienTopcu

Problem

@JulienTopcu

Problem

@JulienTopcu

Problem

+

@JulienTopcu

Problem

+

+

Besoin/4

Besoin/4

Besoin/4

@JulienTopcu

The Bearing of a Child Takes 9 Months No Matter How Many Women Are Assigned

Frederick Brooks - The Mythical Man-Month 1975

@JulienTopcu

Problem

+

+

Besoin/4

Besoin/4

Besoin/4

Problem

Besoin/4

Besoin/4

Besoin/4

@JulienTopcu

Problem/2

Besoin/4

Problem/2

Besoin/2

@JulienTopcu

@JulienTopcu

Problem/4

Problem/4

Problem/4

Problem/4

@JulienTopcu

There is no such thing as a design group which is both organized and unbiased

Melvin Conway - How do Committees invent? 1968

@JulienTopcu

Problem/4

Problem/4

Problem/4

Problem/4

@JulienTopcu

Problem/4

Problem/4

Problem/4

Problem/4

@JulienTopcu

Problem/4

Problem/4

Problem/4

Problem/4

@JulienTopcu

Problem/4

Problem/4

Problem/4

Problem/4

@JulienTopcu

The structures of large systems tend to desintegrate during development, qualitatively more than with small systems

large systems

@JulienTopcu

Frederick Brooks - The Mythical Man-Month 1975

@JulienTopcu

Parkinson Law - 1955

Work expands so as to fill the time available for its completion

@JulienTopcu

It becomes necessary to restrict communication in order that people can get some "work" done

@JulienTopcu

@JulienTopcu

Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations

@JulienTopcu

@JulienTopcu

UI

Rail Shopping

Rail Supply

Feature Team

#1

Feature Team

#2

Feature Team

#3

@JulienTopcu

Model Precision Recall

Organizational Structure

Code Churn

Code Complexity

Dependencies

Code Coverage

Pre-Release Bugs

86,2%

78,6%

79,3%

74,4%

83,8%

73,8%

84,0%

79,9%

66,0%

69,9%

54,4%

62,9%

Windows Vista

@JulienTopcu

Organizational Structure

A large loss of team members affects knowledge retention and therefore quality

The closer the person who has the power to make a decision on the component is hierarchically close to the engineers who edit this component, the better the quality.

The more contributors to a component belong to the same team or department, the higher the quality

@JulienTopcu

@JulienTopcu

System

@JulienTopcu

Payment

Shopping

User

Billing

@JulienTopcu

Payment

Shopping

User

Billing

@JulienTopcu

Payment

Shopping

User

Billing

User

Billing

Payment

Shopping

@JulienTopcu

User

Billing

Payment

Shopping

Billing

Shopping

User

Payment

Checkout

@JulienTopcu

Billing

Shopping

User

Payment

Checkout

User

Billing

Payment

Shopping

Checkout

@JulienTopcu

Inverse Conway Maneuver

Dealing with creaky legacy platforms

Jonny LeRoy & Matt Simons - Décembre 2010

Cutter IT Journal

@JulienTopcu

B

P

O

A

Structure eats Strategy

Jan Bosch - 2017

@JulienTopcu

Nigel Bevan, PhD

Avril 1998

Usability issues in website design

  1. Define the business objectives of the site
  2. Site Structure and Content
  3. Page Design
  4. Evaluation Methods
  5. Management and Maintenance

@JulienTopcu

Usability issues in website design

  1. Define the business objectives of the site
  2. Site Structure and Content
  3. Page Design
  4. Evaluation Methods
  5. Management and Maintenance

Business

Architecture

Process

Organization

Nigel Bevan, PhD

@JulienTopcu

Architecture

B

A

P

O

@JulienTopcu

Domain-Driven Design

Problem Space

Solutions Space

B

A

@JulienTopcu

© Alberto Brandolini

Event Storming

B

@JulienTopcu

B

@JulienTopcu

B

Item

Catalogue

Cart

Price

Payment

ORder

@JulienTopcu

Shopping

Payment

B

A

@JulienTopcu

A

P

Upstream

downstream

Partnership

Supplier / Customer

@JulienTopcu

B

P

O

A

Mapping the Business with an EventStorming

Domain-Driven Design Stratégique

 

Make bounded-contexts emerge

Highlights the balance of power between contexts and possible communication processes

@JulienTopcu

But don't give much guidance on how to organize!

Domain-Driven Design Stratégique

@JulienTopcu

P

O

@JulienTopcu

Limit the size of software services/products to the cognitive load that the team can handle

P

@JulienTopcu

Shopping

Payment

Shopping

User

Billing

Payment

P

O

User

Billing

@JulienTopcu

Stream-Aligned

O

(Bounded-Context)

@JulienTopcu

Shopping

Payment

Shopping

User

Billing

Payment

P

O

@JulienTopcu

Payment

Shopping

User

Billing