0% found this document useful (0 votes)
6 views

yow-adaptive-systems-2020

The document discusses the importance of building adaptive systems to respond to the fast flow of changes in the technology landscape, using Nokia as a case study. It outlines three perspectives for creating these systems: Business Strategy with Wardley Maps, Software Design with Domain-Driven Design, and Team Organization with Team Topologies. The document emphasizes the need for continuous adaptation and strategic decision-making to avoid organizational inertia and leverage competitive advantages.

Uploaded by

victor dievi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

yow-adaptive-systems-2020

The document discusses the importance of building adaptive systems to respond to the fast flow of changes in the technology landscape, using Nokia as a case study. It outlines three perspectives for creating these systems: Business Strategy with Wardley Maps, Software Design with Domain-Driven Design, and Team Organization with Team Topologies. The document emphasizes the need for continuous adaptation and strategic decision-making to avoid organizational inertia and leverage competitive advantages.

Uploaded by

victor dievi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 101

Building Adaptive Systems for a

Fast Flow of Change


Susanne Kaiser
Independent Tech Consultant
@suksr
Example: Nokia

2005 2017

@suksr
Nokia N-Series Apple iPhone

2005 2007

@suksr
Competitors Actions And Inertia to Change
Success of old
cell phones

Past success
breeds inertia

Increasing
importance of
software

Full transition to
Smarthphones

Competitors actions will


Inertia can kill an organisation
change the game

@suksr
Constant Flow of Changes → Continuous Adaption Continuous Adaption

demands

Constant flow of changes Continuous adaption

@suksr
3 Perspectives to Build Adaptive Systems

Business-Strategy Software-Design/ Team-Organization


-Architecture

w/ Wardley Maps w/ Domain-Driven Design w/ Team Topologies

@suksr
3 Perspectives to Build Adaptive Systems

Business-Strategy Software-Design/ Team-Organization


-Architecture

w/ Wardley Maps w/ Domain-Driven Design w/ Team Topologies

@suksr
Business Strategy w/ Wardley Maps

“The strategy cycle is a representation


Leadership of change and how we need to react to it.”
Simon Wardley
Purpose

Doctrine

Landscape

Climate
The Strategy Cycle

@suksr
Strategy Cycle

Leadership Our Why

Purpose

Doctrine

Landscape

Climate

@suksr
Strategy Cycle

Leadership Our Why

Purpose

A map of the
Doctrine competitive
environment
Landscape

Climate

@suksr
Wardley Maps – VALUE CHAIN
Landscape

Who are your users?


Visible
Value Chain

Position
Invisible

@suksr
Wardley Maps – VALUE CHAIN
Landscape

Who are your users?


Visible

What are your users’ needs?


Value Chain

Position
Invisible

@suksr
Wardley Maps – VALUE CHAIN
Landscape

Who are your users?


Visible

What are your users’ needs?


Value Chain

What are the components/activities to fulfill


your users’ needs incl. dependencies?
Position
Invisible

@suksr
Wardley Maps – EVOLUTION STAGES
Landscape
Visible

Components along
evolution axes
Value Chain

Position
Invisible

Movement

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Strategy Cycle

Leadership Our Why

Purpose

A map of the
Doctrine competitive
environment
Landscape
External forces
Climate
impacting
the landscape
@suksr
Climatic Patterns (extract)
Demand Competition Supply Competition
Visible Climate

Everything evolves
Value Chain

Past Current Future


Invisible

Movement

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Climatic Patterns (extract)
Climate

Uncharted Characteristics change Industrialised


Visible

Undefined market Forming market Growing market Mature market


Uncertain Learning on use Learning on operation Known / accepted
Unpredictable Increasing understanding Increasing education Stable
Value Chain

Rare Slowly increasing Rapidly increasing Widespread and stabilising


consumption consumption
Poorly understood Rapid increases in learning Rapid increase in use Commonly understood
Chaotic Domain of experts Increasing expectation of use Ordered

Past Current Future


Invisible

Movement

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Climatic Patterns (extract)
Climate

Uncharted Industrialised
Visible

Efficiency enables innovation


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Climatic Patterns (extract)
Climate

Uncharted Industrialised
Visible

Efficiency enables innovation


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Climatic Patterns (extract)
Climate

Uncharted Industrialised
Visible

Efficiency enables innovation


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Climatic Patterns (extract)
Climate

Uncharted Industrialised
Visible

Efficiency enables innovation


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Climatic Patterns
Climate

Increasing
importance of
software

Competitors actions will


change the game

@suksr
Climatic Patterns (extract)
Visible Climate

Success breeds inertia


Value Chain

Past Current
Inertia can kill an organisation
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Strategy Cycle

Leadership Our Why

Purpose
Universal principles
applicable regardless
A map of the
of landscape
Doctrine competitive
environment
Landscape
External forces
Climate
impacting
the landscape
@suksr
Doctrinal Principles (extract) Doctrine

Visible

Know your users


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract) Doctrine

Visible

Focus on user needs


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract) Doctrine

Visible
Value Chain

Know the details


Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract) Doctrine

Challenge
Visible

assumptions
Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract) Doctrine

Challenge
Visible

assumptions
Value Chain

Use a common
language
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract) Doctrine

Visible

Use appropriate methods


Value Chain

Build in-house Agile


Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract) Doctrine

Visible

Use appropriate methods


Value Chain

Build in-house Agile


Use/buy off-the-shelf product Lean
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract) Doctrine

Visible

Use appropriate methods


Value Chain

Build in-house Agile


Use/buy off-the-shelf product Lean
Six Sigma
Outsource to utility suppliers
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract)
Build in-house
Use/buy off-the-shelf product
Doctrine
Outsource to utility suppliers

Visible

Think small (as in contracts)


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract)
Build in-house
Use/buy off-the-shelf product
Doctrine
Outsource to utility suppliers
Visible

Think small (as in teams)


Value Chain

Team 1
Team 3

Team 4

Team 2
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract)
Build in-house
Use/buy off-the-shelf product
Doctrine
Outsource to utility suppliers
Visible

Think aptitude and attitude

Pioneers
Value Chain

Team 1
Team 3

Team 4

Team 2
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract)
Build in-house
Use/buy off-the-shelf product
Doctrine
Outsource to utility suppliers
Visible

Think aptitude and attitude

Pioneers
Value Chain

Team 1 Settlers
Team 3

Team 4

Team 2
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Doctrinal Principles (extract)
Build in-house
Use/buy off-the-shelf product
Doctrine
Outsource to utility suppliers
Visible

Think aptitude and attitude

Pioneers
Value Chain

Team 1 Settlers
Team 3
Town Planners

Team 4

Team 2
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Strategy Cycle
Context dependent
strategic decisions Our Why
Leadership

Purpose
Universal applicable
principles regardless
A map of the
of landscape
Doctrine competitive
environment
Landscape
External forces
Climate
impacting
the landscape
@suksr
Leadership
Leadership (Gameplay)
Visible
Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
3 Perspectives to Build Adaptive Systems

Business-Strategy Software-Design/ Team-Organization


-Architecture

w/ Wardley Maps w/ Domain-Driven Design w/ Team Topologies

@suksr
Domain Driven Design (DDD)

Business Domain Needs Strategy

Software Design

@suksr
Domain Driven Design (DDD)
Doctrine

Business Domain Needs Strategy

Software Design

@suksr
Domain Driven Design (DDD) – Terminology
Strategic Design Problem Space
Tactical Design Solution Space

Core Subdomain Bounded Context


Supporting Subdomain Ubiquitous Language
Generic Subdomain
Domain Model
Context Maps Entity
Anti-Corruption Layer Value Object
Shared Kernel Aggregate
Open Host Service Repository
Separate Ways Factory
Partnership Application Service
Customer-Supplier Domain Service
Conformist Domain Event

@suksr
Domain Driven Design Problem Domain
Collaboration

Domain Development
Experts Teams

Domain Knowledge

Understanding the problem domain first


before solving it
Ubiquitous Language

@suksr
DDD & Wardley Maps Problem Domain
DDD Patterns &
Practices

Strategic Design
Strategic Design Tactical Design
Visible
Value Chain

Tactical Design
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Problem Domain
DDD Patterns &
Practices

Analyse & Discover


Problem Space
Strategic Design
Strategic Design Tactical Design
Visible

Analysing the
business
Value Chain

domain
Tactical Design

Discovering
Subdomains

Problem Space
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Problem Domain
DDD Patterns &
Practices

Analyse & Discover


Problem Space
Strategic Design
Strategic Design Tactical Design
Visible

Decomposing
Decompose &

High-Level Analysing the into modular


Map

Design Decisions business components


Solution Space
Value Chain

domain (Bounded
Contexts (BC))
Tactical Design

Discovering
Subdomains Mapping
interaction
Problem Space
patterns
between BC
(Context Maps)
Invisible

Solution Space

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Problem Domain
DDD Patterns &
Practices

Analyse & Discover


Problem Space
Strategic Design
Strategic Design Tactical Design
Visible

Decomposing Architecting a solution


Decompose &

High-Level Analysing the into modular fitting the problem


Map

Design Decisions business domain as closely as


components
Solution Space
Value Chain

domain (Bounded possible


Contexts (BC)
Tactical Design

Low-Level Discovering Provides


Implement
Architect &

Design Decisions
Subdomains Mapping building blocks
interaction to implement
Problem Space domain model
patterns
between BC
Solution Space
(Context Maps)
Invisible

Solution Space

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps
STRATEGIC DESIGN (PROBLEM SPACE)
Supporting Problem Domain
Distilling the problem

Analyse & Discover


Subdomain

Problem Space
domain & discovering the
Core Generic
Subdomain
core subdomain
Strategic Design

Subdomain
Visible
Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps
STRATEGIC DESIGN (PROBLEM SPACE)
Supporting Problem Domain
Distilling the problem

Analyse & Discover


Subdomain

Problem Space
domain & discovering the
Core Generic
Subdomain
core subdomain
Strategic Design

Subdomain
Visible

Competitive advantage
Value Chain

Complex
Changes often
Build in-house

Build in-house
Use/buy off-the-shelf product
Outsource to utility suppliers
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps
STRATEGIC DESIGN (PROBLEM SPACE)
Supporting Problem Domain
Distilling the problem

Analyse & Discover


Subdomain

Problem Space
domain & discovering the
Core Generic
Subdomain
core subdomain
Strategic Design

Subdomain
Visible

Competitive advantage No competitive advantage


Value Chain

Complex Quite simple


Changes often Does not change often
Build in-house Prefer to buy/use off-the-shelf

Build in-house
Use/buy off-the-shelf product
Outsource to utility suppliers
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps
STRATEGIC DESIGN (PROBLEM SPACE)
Supporting Problem Domain
Distilling the problem

Analyse & Discover


Subdomain

Problem Space
domain & discovering the
Core Generic
Subdomain
core subdomain
Strategic Design
Visible

Subdomain

Competitive advantage No competitive advantage No competitive advantage


Value Chain

Complex Quite simple Generally complex


Changes often Does not change often Does not change often
Build in-house Prefer to buy/use off-the-shelf Buy/use off-the-shelf / outsource

Build in-house
Use/buy off-the-shelf product
Outsource to utility suppliers
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps
STRATEGIC DESIGN (SOLUTION SPACE) Model Driven Design
Supporting Problem Domain

Analyse & Discover


Subdomain

Problem Space
abstracted by
Core Generic
Subdomain Domain Model
Strategic Design
Visible

Subdomain

Analysis Ubiquitous Code


Solution Space

Decompose &

Model Language Model


Map
Value Chain

Domain Development
Experts Teams
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps
STRATEGIC DESIGN (SOLUTION SPACE)
Supporting Problem Domain Bounded Contexts

Analyse & Discover


Subdomain

Problem Space
Core
Generic Model integrity boundary
Subdomain
Strategic Design
Visible

Subdomain

Linguistic/semantic
boundary
Solution Space

Decompose &
Map

Ownership boundary
Value Chain

Physical boundary

Microservice candidates Different architectural


patterns per context
possible
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Strategic Design of DDD & Doctrinal Principles

Collaboration
Doctrine

Domain Development
Experts Teams
Challenge assumptions

Know the details


Domain Knowledge
Use a common language

Ubiquitous Language

Gaining domain knowledge

@suksr
Strategic Design of DDD & Doctrinal Principles
Discovering the
Core
Collaboration Subdomain core subdomain
Doctrine

Domain Development
Experts Teams
Challenge assumptions

Know the details


Domain Knowledge
Use a common language

Focus on high situational


awareness

Ubiquitous Language

Gaining domain knowledge

@suksr
Strategic Design of DDD & Doctrinal Principles
Discovering the
Core
Collaboration Subdomain core subdomain
Doctrine

Domain Development
Experts Teams Decomposing into modular
Challenge assumptions
components (Bounded Contexts)
Know the details
Domain Knowledge
Use a common language

Focus on high situational


awareness

Ubiquitous Language Think small (as in contracts)

Gaining domain knowledge

@suksr
Strategic Design of DDD & Doctrinal Principles
Discovering the
Core
Collaboration Subdomain core subdomain
Doctrine

Domain Development
Experts Teams Decomposing into modular
Challenge assumptions
components (Bounded Contexts)
Know the details
Domain Knowledge
Use a common language

Focus on high situational


awareness DDD suits best for
the core subdomain
Ubiquitous Language Think small (as in contracts)
Core
Use appropriate methods
Subdomain

Gaining domain knowledge

@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (PROBLEM SPACE) Know your users &
focus on user needs

Analyse & Discover


Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (PROBLEM Discovering
SPACE)
subdomains

Analyse & Discover


Core Supporting Generic

Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (SOLUTION SPACE)
Domain Models

Analyse & Discover


Core Supporting Generic

Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Solution Space

Decompose &
Map

Session Event Evaluation Schedule Message Account


Value Chain
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (SOLUTION SPACE)
Domain Models

Analyse & Discover


Core Supporting Generic

Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Solution Space

Decompose &
Map

Event Evaluation Schedule Message Account


Value Chain

CfP

Session

Speaker
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (SOLUTION SPACE)
Domain Models

Analyse & Discover


Core Supporting Generic

Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Solution Space

Decompose &
Map

Submitted Event Evaluation Schedule Message Account


Value Chain

Session

Recipient
Open CfP CfP Evaluated Scheduled
Settings Session Session

Speaker Profile
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (SOLUTION SPACE)
Bounded Contexts
Core Supporting Generic

Analyse & Discover


Problem Space
Model integrity boundary
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Linguistic/semantic
Solution Space

boundary
Decompose &
Map

Submitted Event Evaluation Schedule Message Account


Session
Value Chain

Account
Recipient Handling
Open CfP CfP Evaluated Scheduled
Settings Session Session Messaging

Speaker Profile Event Session Schedule


Mngmnt. Evaluation Mngmnt.
Submission
Handling
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (SOLUTION SPACE)
Bounded Contexts
Core Supporting Generic

Analyse & Discover


Problem Space
Model integrity boundary
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Linguistic/semantic
Solution Space

boundary
Decompose &
Map

Event Schedule Messaging Account Ownership boundary


Value Chain

Submission Session
Handling Mngmnt. Evaluation Mngmnt. Handling
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
STRATEGIC DESIGN (SOLUTION SPACE)
Bounded Contexts
Core Supporting Generic

Analyse & Discover


Problem Space
Model integrity boundary
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Linguistic/semantic
Solution Space

boundary
Decompose &
Map

Schedule Messaging Account


Ownership boundary
Event
Value Chain

Submission Session
Handling Mngmnt. Evaluation Mngmnt. Handling

Physical boundary
Artefact

Data store

SCM
Invisible

CI/CD

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
TACTICAL DESIGN Architectural
Patterns
Core Supporting Generic

Analyse & Discover


Problem Space
Architectural patterns can
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


differ per Bounded Context,
Session Event Submissions Schedule w/ Speakers
e.g.
Decompose &
Map
Solution Space

Event Schedule Messaging Account


Value Chain

Submission Session
Handling Mngmnt. Evaluation Mngmnt. Handling
Tactical Design

Architect &
Implement

Layered Hexagonal CQRS


Architecture Architecture
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
TACTICAL DESIGN Business Logic
Implementation Patterns
Core Supporting Generic

Analyse & Discover


Problem Space Business logic implementation
patterns can differ per
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Bounded Context, e.g.
Session Event Submissions Schedule w/ Speakers
Decompose &
Map
Solution Space

Event Schedule Messaging Account


Value Chain

Submission Session
Handling Mngmnt. Evaluation Mngmnt. Handling
Tactical Design

Architect &
Implement

Domain Active Transaction


Model Record Script
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
TACTICAL DESIGN Building Blocks of
Domain Models
Core Supporting Generic

Analyse & Discover


Problem Space
Strategic Design

Value Object
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin ●

Session Event Submissions Schedule w/ Speakers ● Entity


● Aggregate
Decompose &

● Repository
Map

ApplicationService
Solution Space

Account

Event Schedule Messaging
Value Chain

Submission Session
Handling Mngmnt. Evaluation Mngmnt. Handling ● Domain Event
...
Tactical Design


Implement
Architect &
Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
DDD & Wardley Maps Speaker Organiser
Build in-house
TACTICAL DESIGN Use/buy off-the-shelf product
Outsource to utility suppliers
Core Supporting Generic

Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers DDD suits best for the
core subdomain
Solution Space

Submission Event Schedule Messaging Account


Value Chain

Session
Handling Mngmnt. Evaluation Mngmnt. Handling
- or -
Tactical Design

- or -
Invisible

Movement

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Wardley Maps Speaker Organiser
INFRASTRUCTURE MAPPING Build in-house
Use/buy off-the-shelf product
Core Supporting Generic

Problem Space
Outsource to utility suppliers

Strategic Design Submit Manage Evaluate Build & Publish Communicate Signup/Signin
Visible

Session Event Submission Schedule w/ Speakers


Solution Space

Submission H. Event M. Session Eval. Schedule M. Messaging Account H.


Tactical D.

ID Provider
Value Chain

Search Engine

Data Storage
Infrastructure

Message
Broker

Compute
Invisible

Platform
VM

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Speaker Organiser
Wardley Maps Build in-house
Use/buy off-the-shelf product
Core Supporting Generic

Problem Space
Outsource to utility suppliers

Strategic Design Submit Manage Evaluate Build & Publish Communicate Signup/Signin
Visible

Session Event Submission Schedule w/ Speakers


Solution Space

Doctrine

Submission H. Event M. Session Eval. Schedule M. Messaging Account H.


Tactical D.

ID Provider Think small (as in contracts)


Value Chain

Search Engine

Data Storage
Infrastructure

Message
Broker

Compute
Invisible

Platform
VM

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Speaker Organiser
Wardley Maps Build in-house
Use/buy off-the-shelf product
Core Supporting Generic

Problem Space
Outsource to utility suppliers

Strategic Design Submit Manage Evaluate Build & Publish Communicate Signup/Signin
Visible

Session Event Submission Schedule w/ Speakers


Solution Space

Doctrine

Submission H. Event M. Session Eval. Schedule M. Messaging Account H.


Tactical D.

Team 3 ID Provider Think small (as in teams)


Value Chain

Search Engine

Team 1 Team 2 Data Storage


Infrastructure

Message
Broker
Team 5
Team 4
Compute
Invisible

Platform
VM

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Speaker Organiser
Wardley Maps Build in-house
Use/buy off-the-shelf product
Core Supporting Generic

Problem Space
Outsource to utility suppliers

Strategic Design Submit Manage Evaluate Build & Publish Communicate Signup/Signin
Visible

Session Event Submission Schedule w/ Speakers


Solution Space

Doctrine

Submission H. Event M. Session Eval. Schedule M. Messaging Account H.


Tactical D.

Team 3 ID Provider Think aptitude and attitude


Value Chain

No single culture
Search Engine

Team 1 Team 2 Data Storage


Infrastructure

Message
Broker
Team 5
Team 4
Compute
Invisible

Pioneers Settlers Platform Town Planners


VM

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
3 Perspectives to Build Adaptive Systems

Business-Strategy Software-Design/ Team-Organization


-Architecture

w/ Wardley Maps w/ Domain-Driven Design w/ Team Topologies

@suksr
Team Topologies

“Overall, the Team Topologies approach


advocates for organization design that
optimizes for flow of change and feedback
from running systems.”

@suksr
Linear sequence w/ functional silos not optimized for flow

Handover Handover

Dev team QA team Ops team

Development Testing Production

@suksr
To optimize for flow of change requires ...

cross-functional,
no handover between teams
autonomous teams

restricting communication small, long-lived teams


between teams

minimizing cognitive load team ownership

@suksr
Four Team Types

Stream-aligned
team

@suksr
Four Team Types

Stream-aligned Platform
team team

@suksr
Four Team Types

Stream-aligned Platform Enabling


team team team

@suksr
Four Team Types

Stream-aligned Platform Enabling Complicated


team team team subsystem team

@suksr
Four Team Types

Fast flow
of change

Stream-aligned Platform Enabling Complicated


team team team subsystem team

Increasing autonomy
Reducing cognitive load
@suksr
Three Interaction Types

Collaboration

Rapid discovery

@suksr
Three Interaction Types

API

Collaboration X-as-a-Service

Rapid discovery Predictable


delivery

@suksr
Three Interaction Types

API

Collaboration X-as-a-Service Facilitating

Rapid discovery Predictable Active help


delivery

@suksr
Intermittent Interactions between Team Types

Platform-as-a-Service

Component-as-a-Service

Collaboration X-as-a-Service Facilitating

API

@suksr
Stream-aligned team Platform team
Team Topologies & Doctrine

Doctrine

Enabling team Complicated subsystem team

Think small teams

Optimize flow

Collaboration X-as-a-Service
Provide purpose,
mastery & autonomy
API
Facilitating Design for constant evolution

@suksr
Speaker Organiser
TT & DDD & Wardley Maps Build in-house
Use/buy off-the-shelf product
Core Supporting Generic

Problem Space
Outsource to utility suppliers

Strategic Design Submit Manage Evaluate Build & Publish Communicate Signup/Signin
Visible

Session Event Submission Schedule w/ Speakers


Solution Space

Submission H. Event M. Session Eval. Schedule M. Messaging Account H.


Tactical D.

ID Provider
Value Chain

Stream-aligned
Team 3

Data Storage
Infrastructure

Search
Message Engine
Stream-aligned Stream-aligned
Broker Platform
Team 1 Team 2
Team 2
Platform
Team 1 Compute
Invisible

Platform
VM

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Speaker Organiser
TT & DDD & Wardley Maps Build in-house
Use/buy off-the-shelf product
Core Supporting Generic

Problem Space
Outsource to utility suppliers

Strategic Design Submit Manage Evaluate Build & Publish Communicate Signup/Signin
Visible

Session Event Submission Schedule w/ Speakers Leadership


Solution Space

Submission H. Event M. Session Eval. Schedule M. Messaging Account H.


Tactical D.

Move to
Value Chain

Stream-aligned ID Provider
Team 3 Cloud/Serverless
Infrastructure

Search
Message Engine Data Storage
Stream-aligned Stream-aligned
Broker Platform
Team 1 Team 2
Team 2
Platform
Team 1 Compute
Invisible

Platform
VM

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Possible Evolution of Team Topologies
Platform
Team
Platform
Cloud
Team 1

Platform
Team 2

@suksr
Possible Evolution of Team Topologies
Platform
Team
Platform Stream-aligned
Cloud
Team 1 Team 3

Platform Discover
Team 2 Close
Collaboration

@suksr
Possible Evolution of Team Topologies
Platform Platform
Team Team
Platform Stream-aligned Stream-aligned
Cloud Cloud
Team 1 Team 3 Team 3

Platform Discover Establish


Team 2 Close Limited
Collaboration Collaboration

@suksr
Possible Evolution of Team Topologies
Platform Platform Platform
Team Team Team
Platform Stream-aligned Stream-aligned Stream-aligned
Cloud Cloud Cloud
Team 1 Team 3 Team 3 Team 3

API
Platform Discover Establish Use
X-as-a-Service
Team 2 Close Limited
Collaboration Collaboration

@suksr
Possible Evolution of Team Topologies
Platform Platform Platform
Team Team Team
Platform Stream-aligned Stream-aligned Stream-aligned
Cloud Cloud Cloud
Team 1 Team 3 Team 3 Team 3

API
Platform Discover Establish Use
X-as-a-Service
Team 2 Close Limited
Collaboration Collaboration

Platform Stream-aligned
Team Team 1
Cloud
Facilitating
Stream-aligned
Team 2

@suksr
Possible Evolution of Team Topologies
Platform Platform Platform
Team Team Team
Platform Stream-aligned Stream-aligned Stream-aligned
Cloud Cloud Cloud
Team 1 Team 3 Team 3 Team 3

API
Platform Discover Establish Use
X-as-a-Service
Team 2 Close Limited
Collaboration Collaboration

Platform Stream-aligned
Team Team 1
Cloud
Facilitating
Stream-aligned
Team 2

Stream-aligned Stream-aligned
Team 3 Team 1

Facilitating
Stream-aligned
Team 2 @suksr
DDD & Wardley Maps Speaker Organiser
Build in-house
Use/buy off-the-shelf product
Outsource to utility suppliers
Core Supporting Generic

Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers
Solution Space

Submission Event Schedule Messaging Account


Value Chain

Session
Handling Mngmnt. Evaluation Mngmnt. Handling
Cognito
Tactical D.

API Gateway
Infrastructure

SE aaS Lambda DynamoDB S3 SNS


Invisible

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
TT & DDD & Wardley Maps Speaker Organiser
Build in-house
Use/buy off-the-shelf product
Outsource to utility suppliers
Core Supporting Generic

Problem Space
Strategic Design
Visible

Submit Manage Evaluate Build & Publish Communicate Signup/Signin


Session Event Submissions Schedule w/ Speakers

Platform
Team Cloud
Solution Space

Submission Event Schedule Messaging Account


Value Chain

Session
Handling Mngmnt. Evaluation Mngmnt. Handling
Cognito
Tactical D.

API Gateway
Infrastructure

SE aaS Lambda DynamoDB S3 SNS


Stream-aligned Stream-aligned Stream-aligned
Invisible

Team 1 Team 2 Team 3

Genesis Custom-Built Product (+rental) Commodity (+utility)


Evolution
@suksr
Building Adaptive Systems for a Fast Flow of Change

Business-Strategy Software-Design/ Team-Organization


-Architecture

w/ Wardley Maps w/ Domain-Driven Design w/ Team Topologies

@suksr
Some References

https://medium.com/wardleymaps
https://learnwardleymapping.com/
https://github.com/wardley-maps-community/awesome-
wardley-maps
Susanne Kaiser
Independent Tech Consultant
@suksr
[email protected]

You might also like