preparing for a future microservices journey using wardley ...€¦ · wardley maps – patterns...

114
Preparing For a Future Microservices Journey Using Wardley Maps Susanne Kaiser Independent Tech Consultant @suksr DDD &

Upload: others

Post on 04-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Preparing For a FutureMicroservices JourneyUsing Wardley Maps

Susanne KaiserIndependent Tech Consultant

@suksr

DDD &

Page 2: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Source: https://www.marketresearchfuture.com/reports/microservices-architecture-market-3149

Microservices Architecture MarketKey Trends

Loose Coupling

Deployment

Domain Driven Design2016 2017 2018 2019 2020 2021 2022 2023

USD ~33 BillionM

arke

t Size

(USD

Billi

on)

CAGR ~17%

Page 3: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Source: https://www.infoq.com/articles/architecture-trends-2019/

Page 4: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Source: https://www.infoq.com/articles/architecture-trends-2019/

Page 5: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Source: https://en.wikipedia.org/wiki/Hype_cycle#/media/File:Gartner_Hype_Cycle.svg

Microservices ?

Gartner Hype Cycle

Page 6: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

@suksr

Page 7: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

@suksr

High cohesion within a service

Loose coupling between services

Page 8: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

@suksr

High cohesion within a service

Loose coupling between services

Page 9: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

@suksr

Data Store

Page 10: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Data Store

@suksr

Config./Setup

Maintenance

Integration

Page 11: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Page 12: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Page 13: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

Hardware

O/S

Virtualization

Container

Runtime

@suksr

API API

Integration

Page 14: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

Hardware

O/S

Virtualization

Container

Runtime

@suksr

API API

Security

Page 15: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

1. Register

3. Connect

2. Discover

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Page 16: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

Load-Balancer

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Page 17: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Page 18: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

Retries

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Page 19: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

Retries

Idempotency

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Page 20: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

RetriesBulk-heads

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Idempotency

Page 21: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

RetriesBulk-Heads

Circuit Breaker

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Idempotency

Page 22: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

RetriesBulk-heads

Circuit Breaker

Message Broker

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Idempotency

Page 23: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

Load-Balancer

API

Timeout-Handling

RetriesBulk-heads Circuit Breaker

Message Broker

API-Gateway

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Idempotency

Page 24: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

RetriesBulk-heads

Message Broker

API-Gateway

Circuit Breaker

Config-Mngmt.

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Idempotency

Page 25: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

RetriesBulk-heads

Message Broker

API-Gateway

Circuit Breaker

Config-Mngmt.

Monitoring

Log Aggreation

Metrics

Distributed Tracing

Health ChecksHardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Idempotency

Page 26: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

API

API API Service Discovery

API

Timeout-Handling

RetriesBulk-heads

Message Broker

API-Gateway

Circuit Breaker

Config-Mngmt.

Monitoring

Log Aggreation

Metrics

Distributed Tracing

Health Checks

SCMCheckout TestBuild

CI/CD PipelineDeploy

Hardware

O/S

Virtualization

Container

Runtime

@suksr

Load-Balancer

Idempotency

Page 27: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Recovery

API

API API Service Discovery

API

Timeout-Handling

RetriesBulk-heads

Message Broker

API-Gateway

Circuit Breaker

Config-Mngmt.

Monitoring

Log Aggreation

Metrics

Distributed Tracing

Health Checks

SCMCheckout TestBuild

CI/CD PipelineDeploy

Hardware

O/S

Virtualization

Container

Runtime

Backup@suksr

Load-Balancer

Scaling

Idempotency

Page 28: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

µService

@suksr

Page 29: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Hardware Data Store

API API-Gateway Service Discovery Load-BalancerMessage Broker

Timeout-Handling Retries Idempotency Bulkheads Circuit Breaker

Config-Mngmt.Monitoring Log Aggreation Metrics Distributed

TracingHealth Checks

SCM

O/SVirtualization Container Runtime

Checkout TestBuild CI/CD Pipeline

Deploy

µService

Backup Recovery

@suksr

Scaling

Maintenance

Integration

Security

Page 30: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Domain Driven Design (DDD) – TerminologyStrategic DesignTactical Design

Bounded ContextUbiquitous Language

Core SubdomainSupporting SubdomainGeneric Subdomain

Problem SpaceSolution Space

Context MapsAnti-Corruption LayerShared KernelOpen Host ServiceSeparate WaysPartnershipCustomer-SupplierConformist

Domain ModelEntity Value ObjectAggregateRepositoryFactoryApplication ServiceDomain ServiceDomain Event

@suksr

Page 31: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Hardware Data Store

API API-Gateway Service Discovery Load-BalancerMessage Broker

Timeout-Handling Retries Idempotency Bulkheads Circuit Breaker

Config-Mngmt.Monitoring Log Aggreation Metrics Distributed

TracingHealth Checks

SCM

O/SVirtualization Container Runtime

Checkout TestBuild CI/CD Pipeline

Deploy

µService

Backup Recovery

Scaling

Maintenance

Integration

Security

Strategic DesignTactical Design

Problem SpaceSolution Space

Bounded ContextUbiquitous Language

Core SubdomainSupporting SubdomainGeneric Subdomain

Context MapsAnti-Corruption LayerShared KernelOpen Host ServiceSeparate WaysPartnershipCustomer-SupplierConformist

Domain ModelEntity Value ObjectAggregateRepositoryFactoryApplication ServiceDomain ServiceDomain Event

@suksr

Page 32: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

Evolution

Visualisation of a value chain’s evolution

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

Posit

ion

Movement

Wardley Maps BY SIMON WARDLEY

Uncharted Industrialised

@suksr

Page 33: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Wardley Maps – VALUE CHAIN

Who are your users?

Valu

e Ch

ainIn

visib

leVi

sible

@suksr

Page 34: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Wardley Maps – VALUE CHAIN

Who are your users?

What are your users’ needs?

Valu

e Ch

ainIn

visib

leVi

sible

@suksr

Page 35: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Wardley Maps – VALUE CHAIN

Who are your users?

What are your users’ needs?

What are the components/activities to fulfill your users’ needs incl. dependencies?

Valu

e Ch

ainIn

visib

leVi

sible

Posit

ion

@suksr

Page 36: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Wardley Maps – LANDSCAPE

Valu

e Ch

ainIn

visib

leVi

sible

Evolution

Components alongevolution axes

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

Posit

ion

Movement

@suksr

Page 37: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Everything evolves

Past Current Future

Supply CompetitionDemand Competition

Uncharted Industrialised

Wardley Maps – PATTERNS

Movement

@suksr

Page 38: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Everything evolves

Past Current Future

Continuous adaption

Wardley Maps – PATTERNS

Movement

Evolution @suksr

Page 39: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Past Current Future

Characteristics changeUncharted

Undefined marketUncertain

UnpredictableRare

Poorly understood

Forming marketLearning on use

Increasing understandingSlowly increasing

consumptionRapid increases in

learning

Growing marketLearning on operationIncreasing educationRapidly increasing

consumptionRapid increase in use

Mature marketKnown / accepted

StableWidespread and stabilising

Commonly understood(in term of use)

Industrialised

Wardley Maps – PATTERNS

Movement

@suksr

Page 40: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Efficiency enables innovation

Uncharted Industrialised

Wardley Maps – PATTERNS

Movement

@suksr

Page 41: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Efficiency enables innovation

Uncharted Industrialised

Wardley Maps – PATTERNS

Movement

@suksr

Page 42: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Efficiency enables innovation

Uncharted Industrialised

Wardley Maps – PATTERNS

Movement

@suksr

Page 43: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Efficiency enables innovation

Uncharted Industrialised

Wardley Maps – PATTERNS

Movement

@suksr

Page 44: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Wardley Maps – PRINCIPLES

Use appropriate methodsper evolution stage

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

@suksr

Page 45: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Use appropriate methodsper evolution stage

Wardley Maps – PRINCIPLES Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

@suksr

Page 46: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Use appropriate methodsper evolution stage

Wardley Maps – PRINCIPLES Build in-house Use/buy off-the-shelf product

Outsource to utility suppliers

@suksr

Page 47: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Know your users &focus on user needs

Wardley Maps – PRINCIPLES Build in-house / AgileUse/buy off-the-shelf product / Lean

Outsource to utility suppliers / Six Sigma

@suksr

Page 48: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Domain Driven Design

Ubiquitous Language

Domain Knowledge

Understanding the problem domain firstbefore solving it

Problem Domain

Domain Experts

Development Teams

Collaboration

@suksr

Page 49: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

DDD & Wardley Maps Problem Domain

Strategic Design

DDD Patterns & Practices

Tactical Design

@suksr

Stra

tegi

c Des

ign

Tact

ical D

esig

n

Page 50: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

DDD & Wardley Maps Problem Domain

Strategic Design

DDD Patterns & Practices

Tactical Design

Analysing the business domain

Discovering Subdomains

Problem Space

@suksr

Prob

lem

Spa

ceSt

rate

gic D

esig

nTa

ctica

l Des

ign

Analy

se &

Disc

over

Page 51: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

DDD & Wardley Maps Problem Domain

Strategic Design

DDD Patterns & Practices

Tactical Design

Analysing the business domain

Discovering Subdomains

Problem Space

Decomposing into modular components (Bounded Contexts (BC))

Mapping interaction patterns between BC (Context Maps)

Solution Space

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Tact

ical D

esig

n

Analy

se &

Disc

over

Deco

mpo

se &

Map High-Level

Design Decisions

Page 52: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

DDD & Wardley Maps Problem Domain

Strategic Design

DDD Patterns & Practices

Tactical Design

Architecting a solution fitting the problem domain as closely as possible

Provides building blocks to implement domain model

Analysing the business domain

Discovering Subdomains

Problem Space

Decomposing into modular components (Bounded Contexts (BC)

Mapping interaction patterns between BC (Context Maps)

Solution Space

@suksr

Solution Space

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Tact

ical D

esig

n

Analy

se &

Disc

over

Arch

itect

&

Impl

emen

t

High-Level Design Decisions

Low-Level Design Decisions

Deco

mpo

se &

Map

Page 53: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Analy

se &

Disc

over

Valu

e Ch

ainIn

visib

leVi

sible

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

Distilling the problemdomain & discovering the

core subdomain

DDD & Wardley Maps

Core Subdomain

Problem DomainSTRATEGIC DESIGN (PROBLEM SPACE)

Supporting Subdomain

Generic Subdomain

@suksr

Prob

lem

Spa

ceSt

rate

gic D

esig

n

Page 54: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Distilling the problemdomain & discovering the

core subdomain

DDD & Wardley Maps

Core Subdomain

Problem Domain

Competitive advantage ComplexChanges oftenBuild in-house

STRATEGIC DESIGN (PROBLEM SPACE) Supporting Subdomain

Generic Subdomain

@suksr

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

n

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Page 55: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Distilling the problemdomain & discovering the

core subdomain

DDD & Wardley Maps

Core Subdomain

Problem Domain

Competitive advantage ComplexChanges oftenBuild in-house

No competitive advantage Quite simpleDoes not change oftenPrefer to buy/use off-the-shelf

STRATEGIC DESIGN (PROBLEM SPACE) Supporting Subdomain

Generic Subdomain

@suksr

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

n

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Page 56: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Distilling the problemdomain & discovering the

core subdomain

DDD & Wardley Maps

Core Subdomain

Problem Domain

Competitive advantage ComplexChanges oftenBuild in-house

No competitive advantage Quite simpleDoes not change oftenPrefer to buy/use off-the-shelf

No competitive advantage Generally complexDoes not change oftenBuy/use off-the-shelf / outsource

STRATEGIC DESIGN (PROBLEM SPACE) Supporting Subdomain

Generic Subdomain

@suksr

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

n

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Page 57: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Deco

mpo

se &

Map

Analy

se &

Disc

over

Valu

e Ch

ainIn

visib

leVi

sible

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

Model Driven DesignDDD & Wardley MapsSTRATEGIC DESIGN (SOLUTION SPACE)

Development Teams

Domain Experts

Ubiquitous Language

Analysis Model

Code Model

Domain Model

Core Subdomain

Supporting Subdomain

Generic Subdomain

Problem Domain

abstracted by

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Page 58: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Bounded ContextsDDD & Wardley MapsSTRATEGIC DESIGN (SOLUTION SPACE)

Core Subdomain

Supporting Subdomain

Generic Subdomain

Problem Domain

Linguistic/semantic boundary

Ownership boundary

Model integrity boundary

Physical boundary

Different architectural patterns per context possible

@suksr

Microservice candidates

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

nSo

lutio

n Sp

ace

Page 59: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Know your users &focus on user needs

Submit Session

DDD & Wardley MapsSTRATEGIC DESIGN (PROBLEM SPACE)

Speaker

@suksr

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

n

Page 60: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley MapsSTRATEGIC DESIGN (PROBLEM SPACE) Discovering

subdomainsSupporting GenericCore

@suksr

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

n

Page 61: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley MapsSTRATEGIC DESIGN (SOLUTION SPACE)

Supporting GenericCore

Event Evaluation AccountSchedule MessageSession

Domain Models

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Page 62: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

Event Evaluation AccountSchedule Message

Speaker

Session

CfP

STRATEGIC DESIGN (SOLUTION SPACE)Domain Models

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

nSo

lutio

n Sp

ace

Page 63: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

Event Evaluation AccountSchedule Message

Speaker Profile

Submitted Session

CfP Settings

RecipientOpen CfP Evaluated

SessionScheduled Session

STRATEGIC DESIGN (SOLUTION SPACE)Domain Models

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

nSo

lutio

n Sp

ace

Page 64: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

STRATEGIC DESIGN (SOLUTION SPACE)Bounded Contexts

Linguistic/semantic boundary

Model integrity boundary

Event Evaluation AccountSchedule MessageSubmitted Session

CfP Settings

RecipientOpen CfP Evaluated

SessionScheduled Session

Speaker Profile SessionEvaluation

SubmissionHandling

EventMngmnt.

ScheduleMngmnt.

Messaging

Account Handling

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

nSo

lutio

n Sp

ace

Page 65: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

STRATEGIC DESIGN (SOLUTION SPACE)

SubmissionHandling

EventMngmnt.

SessionEvaluation

Messaging Account Handling

ScheduleMngmnt.

Bounded Contexts

Ownership boundary

Linguistic/semantic boundary

Model integrity boundary

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

nSo

lutio

n Sp

ace

Page 66: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

STRATEGIC DESIGN (SOLUTION SPACE)

SubmissionHandling

EventMngmnt.

SessionEvaluation

Messaging Account Handling

ScheduleMngmnt.

Bounded Contexts

Ownership boundary

Linguistic/semantic boundary

Model integrity boundary

Physical boundary

SCM

Data store

CI/CD

Artefact

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSt

rate

gic D

esig

nSo

lutio

n Sp

ace

Page 67: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

TACTICAL DESIGN

SubmissionHandling

EventMngmnt.

SessionEvaluation

Messaging Account Handling

ScheduleMngmnt.

Architectural Patterns

Architectural patterns can differ per Bounded Context, e.g.

Layered Architecture

Hexagonal Architecture

CQRS

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Tact

ical D

esig

n

Arch

itect

&

Impl

emen

t

Page 68: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

TACTICAL DESIGN

SubmissionHandling

EventMngmnt.

SessionEvaluation

Messaging Account Handling

ScheduleMngmnt.

Business Logic Implementation Patterns

Business logic implementation patterns can differ per Bounded Context, e.g.

Domain Model

Active Record

Transaction Script

@suksr

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Tact

ical D

esig

n

Arch

itect

&

Impl

emen

t

Page 69: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

ExampleBC: EVENT MANAGEMENT

Event

create: Eventactivate

reschedulerename

EventIdid: string

Name

create: Namename: string

EventStatusCREATEDACTIVATEDDEACTIVATED

deactivate

Description

create: Description

desc: string

Period

create: Period

start: Dateend: Date

Value Object

Entity

Aggregate Root

Aggregate

@suksr

EventController

MongoDBEventRepository

EventModel

EventApplicationService

EventRepository

POST /events/{id}/activatePOST /events DELETE /events/{id}

InnerOuter

Outside

(Port)

(Adapter)

(Adapter)

(Port)

Page 70: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

TACTICAL DESIGN

SubmissionHandling

EventMngmnt.

SessionEvaluation

Messaging Account Handling

ScheduleMngmnt.

DDD suits best for the core subdomain

Movement

Build in-house Use/buy off-the-shelf product

Outsource to utility suppliers

- or -- or -

@suksr

- or -

Deco

mpo

se &

Map

Analy

se &

Disc

over

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Tact

ical D

esig

n

Arch

itect

&

Impl

emen

t

Page 71: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Wardley Maps

Supporting GenericCore

INFRASTRUCTURE MAPPING

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Understand the involved components and their dependencies (position)

Posit

ion

Data Storage

Infra

stru

ctur

e

Page 72: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Understand the involved components and their dependencies (position)

Data StorageSearch Engine

Wardley MapsINFRASTRUCTURE MAPPING

Posit

ionInfra

stru

ctur

e

Page 73: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Understand the involved components and their dependencies (position)

Data StorageSearch Engine

Compute Platform

Wardley MapsINFRASTRUCTURE MAPPING

Posit

ionInfra

stru

ctur

e

Page 74: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Understand the involved components and their dependencies (position)

Data StorageSearch Engine

Compute Platform

VM

Wardley MapsINFRASTRUCTURE MAPPING

Posit

ionInfra

stru

ctur

e

Page 75: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Data Storage

Search Engine

Compute Platform

VMMovement

Plot components alongevolution axes (movement)and use appropriate methodper evolution stage

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

Infra

stru

ctur

e

Page 76: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Data Storage

Search Engine

Compute Platform

VM

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Infrastructure & operational complexities

Wardley MapsINFRASTRUCTURE MAPPING

Infra

stru

ctur

e

Page 77: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Data related components & activities

Compute Platform

Data Storage

Search Engine

VM

Wardley MapsINFRASTRUCTURE MAPPING

Infra

stru

ctur

e

Page 78: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

DDD & Wardley Maps

Supporting GenericCore

TACTICAL DESIGN

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Search Engine

Compute Platform

Data Storage

VM

Service related components & activities

Infra

stru

ctur

e

Page 79: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

SubmissionHandling

EventMngmnt.

SessionEvaluation

ScheduleMngmnt. Messaging Account

Handling

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Search Engine

Compute Platform

Data Storage

VM

Service interaction related components &

activities

Wardley MapsINFRASTRUCTURE MAPPING

Infra

stru

ctur

e

Page 80: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

command

query

Request-Driven

@suksr

API

API

Service Interactions

Page 81: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

command

query

Request-Driven

Message Broker

publish subscribe

Event-Driven

@suksr

API

API

Service Interactions

Page 82: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

command

query

Message Broker

publish subscribe

command

query

Request-Driven Hybrid

Message Broker

publish subscribe

Event-Driven

@suksr

API

API

API

Service Interactions

Page 83: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Search Engine

Compute Platform

Data Storage

VM

Request-driven related components & activities

Wardley MapsINFRASTRUCTURE MAPPING

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

Infra

stru

ctur

e

Page 84: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Compute Platform

VM

Wardley MapsINFRASTRUCTURE MAPPING

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

Event-driven & hybrid related components &

activities

Message Broker

Search Engine

Data Storage

Infra

stru

ctur

e

Page 85: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Compute Platform

VM

Wardley MapsINFRASTRUCTURE MAPPING

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

Message Broker

Search Engine

Data Storage

Discuss & plan

Infra

stru

ctur

e

Page 86: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Compute Platform

VM

Wardley MapsINFRASTRUCTURE MAPPING

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

Message Broker

Search Engine

Data Storage

Discuss & plan

Open Source Software

Infra

stru

ctur

e

Page 87: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

Example

Message Broker

Search Engine Data

StorageCompute Platform

VM

Open Source Software

Infra

stru

ctur

e

Page 88: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

Message Broker

Search Engine Data

StorageCompute Platform

VM

Discuss & plan

Offload to cloud hosted services

Infra

stru

ctur

e

Page 89: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

Compute Platform VM

DB aaS

SE aaS

MB aaS

Offload to cloud hosted services

ID aaS

Infra

stru

ctur

e

Page 90: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

Compute Platform VM

DB aaS

SE aaS

MB aaS

Discuss & plan

Offload to container orchestration platform

ID aaS

Infra

stru

ctur

e

Page 91: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Managed by YOUManaged by PlatformHardware

O/S

Virtualization

Container

Runtime

O/S

Orchestration

µService

Container

Runtime

µService Service Discovery

Load Balancer

Config-Mngmt.

Monitoring

Log Aggreation

Health Checks

Recovery Scaling

@suksr

Container OrchestrationAPI Gateway

Page 92: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Containerized Microservice

Pod

Service

Volume

Deployment

Master Node

Worker NodeWorker Node

Ingress

Deployment Deployment

Container OrchestrationBASIC COMPONENTS OF KUBERNETES

Page 93: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

VM

DB aaSMB aaS

Worker Nodes Master Node

SE aaS

Container Orchestrationw/ Kubernetes

Compute Platform

ID aaS

Page 94: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

VM

DB aaSMB aaS

Worker Nodes Master Node

SE aaS

Container Orchestrationw/ Kubernetes

Compute Platform

Pod Deploym. Volume IngressService

New Primitives

ID aaS

Page 95: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

VM

DB aaSMB aaS

Worker Nodes Master Node

SE aaS

Container Orchestrationw/ Kubernetes

Compute Platform

Pod Deploym. Volume IngressServiceSecretStatefulSet

CronJob

JobConfigMap

NetworkPolicy

ReplicaSet

DaemonSet

HorizontalPod Autoscaler

PersistentVolumeClaimEgress

more ...

ID aaS

Infra

stru

ctur

e

Page 96: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

OSS

VM

DB aaSMB aaS

Worker Nodes Master Node

SE aaS

Compute Platform

Container Orchestration

Discuss & plan

Offload application networking concerns

to a service mesh

ID aaS

Infra

stru

ctur

e

Page 97: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Circuit Breaker Timeout Retries

Kubernetes / Service Mesh

SidecarProxy

Application Networking Concerns

@suksr

Metrics Security

SidecarProxy

Distributed Tracing Log Aggregation

Separation Of ConcernsSERVICE MESH

Page 98: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Proxy Proxy

Microservice Microservice

Policy & Telemetry(Mixer)

Discovery & Configto Proxies

(Pilot)

Config(Galley)

TLS Certs to Proxies

(Citadel)

Data Plane

Control Plane

HTTP, gRPC, TCP

mTLS

Service MeshCOMPONENTS OF ISTIO

Page 99: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

VM

DB aaSMB aaS

Worker Nodes Master Node

SE aaSContainer Orchestration

ID aaS

DestinationRule Gateway

ServiceEntry Policy

ServiceRole /-Binding ClusterRbac

Config

VirtualService

Service Mesh

Infra

stru

ctur

e

Page 100: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Manage

Organiser

Build & Publish Communicate Signup/Signin

Speaker

Submit

Supporting GenericCore

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l D.

ScheduleSession Event Submission w/ Speakers

Build in-houseUse/buy off-the-shelf product

Outsource to utility suppliers

Wardley MapsINFRASTRUCTURE MAPPING

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

VM

DB aaSMB aaS

Worker Nodes Master Node

SE aaSContainer Orchestration

ID aaS

Service Mesh

Discuss & plan

Move to Serverless

Infra

stru

ctur

e

Page 101: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

FunctionEvent

Event-Driven Workflow

Hardware Data StoreO/SVirtualization Container Runtime

Fully Managed By Third Party

Ephemeral Function

Pay-per-ExecutionAuto-Scaling

@suksr

triggers

Serverless w/ FaaSCHARACTERISTICS

Page 102: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Lambda

API Gateway

SNS

SQS

DynamoDB

Step Functions

Core AWS Serverless Building Blocks

S3

Kinesis

CloudWatch

Cognito

@suksr

IAM

and more

Serverless AWS BUILDING BLOCKS

Page 103: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

ApiGatewayAdapter

DynamoDBAdapter

EventModel

EventApplicationService

EventRepository

DynamoDB

newEvent

API Gateway

Manage EventOrganiser

Event Management

Page 104: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

ApiGatewayAdapter

DynamoDBAdapter

EventModel

EventApplicationService

EventRepository

Even

tPub

lishe

rSN

STop

icAda

pter

DynamoDB

SNS

newEvent activateEvent

API Gateway

Manage EventOrganiser

Event Management

Page 105: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

ApiGatewayAdapter

DynamoDBAdapter

EventModel

EventApplicationService

EventRepository

Even

tPub

lishe

rSN

STop

icAda

pter

DynamoDB

SNS

newEvent activateEvent

API Gateway

Manage Event

DynamoDBAdapter

SessionModel

SessionApplicationService

SessionRepository

DynamoDB

SNSTopicAdaptereventActivated

Organiser

Event Management Session Handling

Page 106: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

ApiGatewayAdapter

DynamoDBAdapter

EventModel

EventApplicationService

EventRepository

Even

tPub

lishe

rSN

STop

icAda

pter

DynamoDB

SNS

newEvent activateEvent

API Gateway

Manage Event

ApiGatewayAdapter

DynamoDBAdapter

SessionModel

SessionApplicationService

SessionRepository

DynamoDB

submitSession

API Gateway

Submit Session

SNSTopicAdaptereventActivated

S3Adapter

S3

pictureUploaded

Organiser Speaker

Event Management Session Handling

Page 107: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Evaluate Submissions

Manage Event

Organiser

Build & PublishSchedule

Communicate w/ Speakers

Signup/Signin

Speaker

Submit Session

DDD & Wardley Maps

Supporting GenericCore

TACTICAL DESIGN

SubmissionHandling

EventMngmnt.

SessionEvaluation

Messaging Account Handling

ScheduleMngmnt.

Build in-house Use/buy off-the-shelf product

Outsource to utility suppliers

@suksr

Prob

lem

Spa

ceSo

lutio

n Sp

ace

Stra

tegi

c Des

ign

Tact

ical D

esig

nServerless w/ FaaS

API Gateway

Lambda DynamoDB S3 SNSCognito

SE aaS

Infra

stru

ctur

e

Page 108: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Serverless Infrastructure Providers

Page 109: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Summary

@suksr

Know your users & user needs

Page 110: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Summary

Supporting GenericCore

@suksr

Deco

mpo

se&

Map

Analy

se &

Disc

ov.

Prob

lem

Spa

ceSo

lutio

n Sp

.St

rate

gic D

esig

n

Know your users & user needs

Understand the problem first and

focus on core domain

Page 111: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Summary

Supporting GenericCore

@suksr

Deco

mpo

se&

Map

Analy

se &

Disc

ov.

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l Des

ign

Arch

itect

&

Impl

emen

t - or -- or - - or -

Know your users & user needs

Understand the problem first and

focus on core domain

DDD suits well for your core domain

Page 112: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Summary

Supporting GenericCore

@suksr

Deco

mpo

se&

Map

Analy

se &

Disc

ov.

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l Des

ign

Arch

itect

&

Impl

emen

t

Infra

stru

ctur

e

Know your users & user needs

Understand the problem first and

focus on core domain

DDD suits well for your core domain

Identify and outsource commodities

Page 113: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Valu

e Ch

ainIn

visib

leVi

sible

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

Summary

Supporting GenericCore

@suksr

Deco

mpo

se&

Map

Analy

se &

Disc

ov.

Prob

lem

Spa

ceSo

lutio

n Sp

aceSt

rate

gic D

esig

nTa

ctica

l Des

ign

Arch

itect

&

Impl

emen

t

Infra

stru

ctur

e

Know your users & user needs

Understand the problem first and

focus on core domain

DDD suits well for your core domain

Identify and outsource commodities

Efficiency enables innovation

Page 114: Preparing For a Future Microservices Journey Using Wardley ...€¦ · Wardley Maps – PATTERNS Movement @suksr. V a l u e C h a i n I n v i s i b l e V i s i b l e Genesis Custom-Built

Susanne KaiserIndependent Tech Consultant

@[email protected]