A blueprint for digital platforms
Transcript of A blueprint for digital platforms
All contents © MuleSoft Inc.
Platform?
A C
B consumers
producer
APIs
external
internal 1
2
platform services
All contents © MuleSoft Inc.
A C
B
Self-serve: API as a product
self-service access
docs, examples, "try it now"
discovery API
1 2
All contents © MuleSoft Inc.
True platforms accelerate via network effects
platform services
A B C
E
t
G
All contents © MuleSoft Inc.
4. The spark to get the flywheel going
platform services
A B C
E
G
!! !!
All contents © MuleSoft Inc.
external
internal
Coupled internal + external platform ecosystems
35
A B C
E
G
6
All contents © MuleSoft Inc.
Platform companies
A digital restaurant platform for innovation and execution agility
Building a consumer-centric digital platform to connect with customers
An immersive content platform
A platform of platforms An experience-focused global platform for car rental
A customer experience digital platform
All contents © MuleSoft Inc.
Example: offer a supplier management service
Twitter: @usarid @MuleSoft
All contents © MuleSoft Inc.
New partnerships arise easily and independently
Twitter: @usarid @MuleSoft
All contents © MuleSoft Inc.
Every project creates reusable building blocks
"App store"
rich invoices
eqpt monitoring
invoices
Self-serve assets
All contents © MuleSoft Inc.
"App store"
customers
order status
rich invoices
eqpt monitoring
invoices
Self-serve assets
New projects reuse the blocks and add more
All contents © MuleSoft Inc.
The pace accelerates and debt is retired
"App store"
customers
fraud
onboarding order status
rich invoices
eqpt monitoring
invoices
Self-serve assets
All contents © MuleSoft Inc.
The pace accelerates and debt is retired
"App store"
payments credit check
customer 360
customers
fraud
onboarding order status
rich invoices
eqpt monitoring
invoices
Self-serve assets
All contents © MuleSoft Inc.
The pace accelerates and debt is retired
"App store"
payments credit check
customer 360
customers
fraud
onboarding order status
rich invoices
eqpt monitoring
invoices
Self-serve assets
X
All contents © MuleSoft Inc.
The pace accelerates and debt is retired
"App store"
payments credit check
customer 360
customers
fraud
onboarding order status
rich invoices
eqpt monitoring
invoices
Self-serve assets
X
X
All contents © MuleSoft Inc.
The architecture of a platform – and of the web
33
• Emerges bottoms-up via self-service
• Provides visibility, security and governability at every API node
• Is recomposable: it bends, not breaks – built for change
An application network:
All contents © MuleSoft Inc.
Networks are also graphs
A social network graph The internet graph
A power grid graph An Application Network Graph
All contents © MuleSoft Inc.
The social graph
posting
comm
ented on
David Anna
Jessica
movies books
likes
All contents © MuleSoft Inc.
The topograph
onboarding
customer
customer API
customer flow
customer API spec
OAuth policy implemented by
offers
described by
protected by
All contents © MuleSoft Inc.
A typical topograph
CRM
credit services
teller web
customer360
onboarding sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
All contents © MuleSoft Inc.
Every application…
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
risk assessment
topograph
All contents © MuleSoft Inc.
…exposes an API sub-graph
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
account accounts
id: string
created: date
balance: currency
risk assessment
topograph
All contents © MuleSoft Inc.
Are the APIs consistent?
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
accounts
id: string
created: date
balance: currency
credit rating risk assessment debit/credit card acct reward
customer
topograph
All contents © MuleSoft Inc.
Have they changed in a breaking way?
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social social
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
onboarding
accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
version 1
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
account accounts
id: string
created: date
balance: currency
version 2
acct
/accounts /accounts/{accountId}
retrieve create retrieve update
account accounts
id: string
created:
balance: currency
delete
string
credit rating risk assessment debit/credit card acct reward
customer
topograph
All contents © MuleSoft Inc.
Impact analysis
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
credit rating risk assessment debit/credit card acct reward
customer
social
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
onboarding
accounts
id: string
created: date
balance: currency
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
accounts accounts
id: string
created: date
balance: currency
sync customer
teller web
customer360
version 1
acct
/accounts /accounts/{accountId}
delete retrieve create retrieve update
account accounts
id: string
created: date
balance: currency
version 2
acct
/accounts /accounts/{accountId}
retrieve create retrieve update
account accounts
id: string
created:
balance: currency
delete
string
credit rating risk assessment debit/credit card acct reward
customer
topograph
All contents © MuleSoft Inc.
What's inside a (composite) application?
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
risk assessment
request
riskUser
type: string
SSN: US SSN
confidence: percentage
transform enrich transform enrich response
risk
person
name: string
id: string
to: credit services
to: public records
resident
name: string
addr: string
type: riskType
level: riskLevel
topograph
All contents © MuleSoft Inc.
How is the data flowing?
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
risk assessment
request
riskUser
type: string
SSN: US SSN
confidence: percentage
transform enrich transform enrich response
risk
person
name: string
id: string
to: credit services
to: public records
resident
name: string
addr: string
type: riskType
level: riskLevel
topograph
All contents © MuleSoft Inc.
How is it flowing across the application network?
teller web
customer360
onboarding
CRM
sync customer
loan origination
IVR
statement mailing
credit rating
credit ratings
risk assessment
public records credit services
multi-accts
card mgmt
debit/credit card
core banking
acct
support rules
campaigns
loyalty
reward
customer
partners
support exp.
support web
social
topograph