Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
TeamTopologies.com
@TeamTopologies
What is
Platform as a Product?
Clues from Team Topologies
Matthew Skelton
co-author of ...
Matthew Skelton
2
Co-author of the book Team Topologies
Founder at Conflux - confluxdigital.net
Experience as: software deve...
Team Topologies
4
Organizing business and
technology teams for fast flow
Matthew Skelton & Manuel Pais
IT Revolution Press ...
“innovative tools and concepts for
structuring the next generation
digital operating model”
Charles T. Betz,
Principal Ana...
What is “Platform as a
Product” and why should I
adopt this approach?
6
7
What is a Platform?
What really is a Product?
Examples: P-as-a-P
Getting Started
What is a Platform?
8
“A digital platform is a foundation of
self-service APIs, tools, services,
knowledge and support which are
arranged as a c...
“A digital platform is a foundation of
self-service APIs, tools, services
knowledge and support which are
arranged as a co...
“A digital platform is a foundation of
self-service APIs, tools, services,
knowledge and support which are
arranged as a c...
“A digital platform is a foundation of
self-service APIs, tools, services,
knowledge and support which are
arranged as a c...
13
https://www.thoughtworks.com/radar
14
Adopt: Applying product
management to internal
platforms
Trial: Platform engineering
product teams
15
“...we’ve been using the
concepts from Team
Topologies to split platform
teams in our projects into
enablement teams, c...
16
A platform is a curated
experience for engineers
(the customers of the
platform).
17
treat the platform as a
product (reliable, usable, fit
for purpose) for voluntary
internal customers
Platform as a Produ...
“Create a path of
least resistance.
Make the right thing
the easiest thing to do.”
– Evan Bottcher, 2018
18
19
20
21
22
23
Team Cognitive Load
“Cognitive load is the total
amount of mental effort
being used in the working
memory”
- John Sweller
24
Intrinsic (skills)
Extraneous (mechanism)
Germane (domain focus)
25
Intrinsic
Extraneous
Germane
26
“How are
classes
defined in
Java?”
Intrinsic
Extraneous
Germane
27
“How do I
deploy this
app,
again?”
Intrinsic
Extraneous
Germane
28
“How do
bank
transfers
work?”
Intrinsic (skills)
Extraneous (mechanics)
Germane (domain focus)
29
(Intrinsic)
] Extraneous [
Germane
30
The platform should not
*increase* the cognitive load
on teams using the platform
35
36
Thinnest Viable Platform
37
Thinnest Viable Platform
smallest set of APIs, documentation,
and tools needed to accelerate teams
developing modern so...
38
“software developers love building
platforms and, without strong product
management input, will create a
bigger platform t...
40
Example: Thinnest Viable Platform
A small, curated set of complementary
services or patterns to use together to
simplif...
A good platform is just
“big enough” but no bigger
41
42
Platform evolution via
Team Interaction Modes
43
44
strong collaboration with
stream-aligned teams for
any new service or evolution
Platform Behaviors
45
46
provide support and great
documentation for stable
services
Platform Behaviors
47
48
Clarify (platform) service
boundaries and provide
abstractions to reduce the
cognitive load on teams.
49
50
2019
Addressed critical
cross-functional
needs (GDPR,
security, alerts +
SLOs as a service)
Adoption by HMRT
(Highest M...
What really is a
Product?
51
“product (...) is anything that can be
offered to a market to satisfy the
desire or need of a customer”
- Wikipedia
52Sourc...
Product = Holistic User Experience
➔ Functionality
➔ Design
➔ Monetization
➔ Content
– Marty Cagan, 2010
53Source: https:/...
54
55
A product is optional to
use - no-one is forced to
use the product
56
57
A product is carefully
designed and curated
58
59
A product simplifies
something for users
60
61
A product evolves to take
advantage of technology
changes
62
A platform is a curated
experience for engineers
(the customers of the
platform).
63
A platform is optional to
use - no team is forced to
use the platform
64
Platforms must advocate
for their platform
product and “market” it
to internal teams
65
A platform is carefully
designed and curated
66
Platforms must be
designed with the user in
mind (internal teams) -
focus on UX and DevEx
67
A platform simplifies
something for users
68
Platforms must help
users to achieve goals by
understanding user
needs and simplifying
tasks
69
A platform evolves to take
advantage of technology
changes
70
Platforms must evolve
the capabilities they
offer (adding/removing)
with a clear roadmap or
trajectory
71
A platform uses modern
product management
(and service management)
72
73
A platform needs modern
product management
(and service management)
as demonstrated by SaaS
companies
74
product metrics
Platform Metrics
4 key metrics: ‘Accelerate’
75
lead time
deployment frequency
mean time to restore (MTTR)
change fail percentage
76
product metrics
user satisfaction metrics
Platform Metrics
77
78
product metrics
user satisfaction metrics
adoption & engagement metrics
Platform Metrics
79
80
product metrics
user satisfaction metrics
adoption & engagement metrics
reliability metrics
Platform Metrics
82
product metrics
(Accelerate metrics for platform services)
user satisfaction metrics
(Accelerate metrics for business s...
83
The success of platform
teams is the success of
stream-aligned teams
Examples:
Platform as a Product
84
CaseStudy
85
86
Source: https://teamtopologies.com/industry-examples/organizational-evolution-accelerating-delivery-of-comparison-servi...
87
Low-level AWS service calls (EC2, IAM, STS, Autoscaling, etc.) from January 2015 to January 2017
“We didn’t change our organization
because we wanted to use
Kubernetes, we used Kubernetes
because we wanted to change
our...
89
Low-level AWS service calls since Kubernetes adoption in January 2017
91
enable stream-aligned
teams to deliver work
autonomously with
self-service capabilities ...
Platform Purpose
92
… in order to reduce
extraneous cognitive load
on stream-aligned teams
Platform Purpose
“We wanted to scale our teams but
maintain the principles of what
helped us move fast: autonomy,
work with minimal coordin...
Treat the platform
as a product
95
Reliable
Fit for Purpose
Focused on DevEx
96
“Kubernetes helps us in a few ways:
- Application-focused abstractions
- Operate and configure clusters to
minimise coordin...
104
2018
Infra platform
started with few
services
First customer
(centralized
logging, metrics,
auto scaling)
105
2018
Infra platform
started with few
services
First customer
(centralized
logging, metrics,
auto scaling)
2019
Started...
106
...
Addressed critical
cross-functional
needs (GDPR,
security, alerts +
SLOs as a service)
Adoption by HMMT
(Highest M...
107
2019
Addressed critical
cross-functional
needs (GDPR,
security, alerts +
SLOs as a service)
Adoption by HMRT
(Highest ...
CaseStudy
108
CaseStudy
109https://www.youtube.com/watch?v=oOjdXeGp44E
CaseStudy
110https://www.youtube.com/watch?v=oOjdXeGp44E
111
https://engineering.atspotify.com/2020/08/27/how-we-improved-developer-productivity-for-our-devops-teams/
What is “Platform as a
Product” and why should I
adopt this approach?
112
113
A platform is optional to
use - no team is forced to
use the platform
114
A platform is carefully
designed and curated
115
A platform simplifies
something for users
116
A platform evolves to take
advantage of technology
changes
117
A platform uses modern
product management
(and service management)
118
Happier users (engineers)
No technology bloat
Designed to evolve
Getting Started
with
Platform as a Product
119
How well can the team understand the
platform abstractions they need to use
on a regular basis?
1 - Assess cognitive load
...
What does your platform actually do?
Is this what users need?
What is the UX/DevEx of using the
platform? What should it b...
Who is responsible for what? Who is
impacted? How do you collaborate on
new platform internal services?
Collaboration vs X...
Zalando Kubernetes at Zalando
Mercedes DevOps Adoption at Mercedes-Benz.io
Twilio Platforms at Twilio: Unlocking Developer...
124
https://techbeacon.com/devops/how-reduce-cognitive-load-increase-flow-5-real-world-examples
How to reduce cognitive lo...
Resources
125
teamtopologies.com/resources
(links, slides, video)
github.com/teamtopologies
(templates, assessments, etc)
Thank you!
info@teamtopologies.com
126
Matthew Skelton, Conflux
@matthewpskelton
Manuel Pais, Independent
@manupaisable
Cop...
Prochain SlideShare
Chargement dans…5
×

What is platform as a product? Clues from Team Topologies - Puppetize 2020 - Matthew Skelton

181 vues

Publié le

Savvy organisations are discovering the value of treating their internal platforms as products. But what does it mean to treat a “platform as a product”? What benefits does this give, and why would an organisation adopt this approach?

In this talk, [Matthew Skelton] [Manuel Pais], co-author of the book Team Topologies, explains why the platform-as-product approach can be a game-changer for organisations building and running software-enabled products and services. Using ideas & patterns from Team Topologies - including Thinnest Viable Platform, team cognitive load, and the evolutionary team interaction modes - [Matthew] [Manuel] explains how organisations like adidas and Uswitch have successfully used the platform-as-product model to accelerate and simplify the delivery of software at scale.

Publié dans : Logiciels
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

What is platform as a product? Clues from Team Topologies - Puppetize 2020 - Matthew Skelton

  1. 1. TeamTopologies.com @TeamTopologies What is Platform as a Product? Clues from Team Topologies Matthew Skelton co-author of Team Topologies Puppetize - 19 November 2020 @matthewpskelton
  2. 2. Matthew Skelton 2 Co-author of the book Team Topologies Founder at Conflux - confluxdigital.net Experience as: software developer, system architect, technical director, change enabler, conference organizer... Twitter: @matthewpskelton
  3. 3. Team Topologies 4 Organizing business and technology teams for fast flow Matthew Skelton & Manuel Pais IT Revolution Press (2019) teamtopologies.com/book
  4. 4. “innovative tools and concepts for structuring the next generation digital operating model” Charles T. Betz, Principal Analyst, Forrester Research 5
  5. 5. What is “Platform as a Product” and why should I adopt this approach? 6
  6. 6. 7 What is a Platform? What really is a Product? Examples: P-as-a-P Getting Started
  7. 7. What is a Platform? 8
  8. 8. “A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product.” – Evan Bottcher, 2018 9Source: https://martinfowler.com/articles/talk-about-platforms.html
  9. 9. “A digital platform is a foundation of self-service APIs, tools, services knowledge and support which are arranged as a compelling internal product.” – Evan Bottcher, 2018 10
  10. 10. “A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product.” – Evan Bottcher, 2018 11
  11. 11. “A digital platform is a foundation of self-service APIs, tools, services, knowledge and support which are arranged as a compelling internal product.” – Evan Bottcher, 2018 12
  12. 12. 13 https://www.thoughtworks.com/radar
  13. 13. 14 Adopt: Applying product management to internal platforms Trial: Platform engineering product teams
  14. 14. 15 “...we’ve been using the concepts from Team Topologies to split platform teams in our projects into enablement teams, core “platform within a platform” teams and stream-focused teams.” -- ThoughtWorks Tech Radar, Vol.22, p.10
  15. 15. 16 A platform is a curated experience for engineers (the customers of the platform).
  16. 16. 17 treat the platform as a product (reliable, usable, fit for purpose) for voluntary internal customers Platform as a Product
  17. 17. “Create a path of least resistance. Make the right thing the easiest thing to do.” – Evan Bottcher, 2018 18
  18. 18. 19
  19. 19. 20
  20. 20. 21
  21. 21. 22
  22. 22. 23 Team Cognitive Load
  23. 23. “Cognitive load is the total amount of mental effort being used in the working memory” - John Sweller 24
  24. 24. Intrinsic (skills) Extraneous (mechanism) Germane (domain focus) 25
  25. 25. Intrinsic Extraneous Germane 26 “How are classes defined in Java?”
  26. 26. Intrinsic Extraneous Germane 27 “How do I deploy this app, again?”
  27. 27. Intrinsic Extraneous Germane 28 “How do bank transfers work?”
  28. 28. Intrinsic (skills) Extraneous (mechanics) Germane (domain focus) 29
  29. 29. (Intrinsic) ] Extraneous [ Germane 30
  30. 30. The platform should not *increase* the cognitive load on teams using the platform 35
  31. 31. 36 Thinnest Viable Platform
  32. 32. 37 Thinnest Viable Platform smallest set of APIs, documentation, and tools needed to accelerate teams developing modern software services and systems
  33. 33. 38
  34. 34. “software developers love building platforms and, without strong product management input, will create a bigger platform than needed.” - Allan Kelly 39
  35. 35. 40 Example: Thinnest Viable Platform A small, curated set of complementary services or patterns to use together to simplify and accelerate delivery. “Use these N services in these ways...” Photo by Jean-Philippe Delberghe on Unsplash
  36. 36. A good platform is just “big enough” but no bigger 41
  37. 37. 42 Platform evolution via Team Interaction Modes
  38. 38. 43
  39. 39. 44 strong collaboration with stream-aligned teams for any new service or evolution Platform Behaviors
  40. 40. 45
  41. 41. 46 provide support and great documentation for stable services Platform Behaviors
  42. 42. 47
  43. 43. 48
  44. 44. Clarify (platform) service boundaries and provide abstractions to reduce the cognitive load on teams. 49
  45. 45. 50 2019 Addressed critical cross-functional needs (GDPR, security, alerts + SLOs as a service) Adoption by HMRT (Highest Maturity & Revenue Team) 2017 Infra platform started with few services First customer (centralized logging, metrics, auto scaling) 2018 Started using SLAs and SLOs, clarifying reliability/latency/etc Growing traffic in platform vs AWS
  46. 46. What really is a Product? 51
  47. 47. “product (...) is anything that can be offered to a market to satisfy the desire or need of a customer” - Wikipedia 52Source: https://en.wikipedia.org/wiki/Product_(business)
  48. 48. Product = Holistic User Experience ➔ Functionality ➔ Design ➔ Monetization ➔ Content – Marty Cagan, 2010 53Source: https://svpg.com/defining-product/
  49. 49. 54
  50. 50. 55 A product is optional to use - no-one is forced to use the product
  51. 51. 56
  52. 52. 57 A product is carefully designed and curated
  53. 53. 58
  54. 54. 59 A product simplifies something for users
  55. 55. 60
  56. 56. 61 A product evolves to take advantage of technology changes
  57. 57. 62 A platform is a curated experience for engineers (the customers of the platform).
  58. 58. 63 A platform is optional to use - no team is forced to use the platform
  59. 59. 64 Platforms must advocate for their platform product and “market” it to internal teams
  60. 60. 65 A platform is carefully designed and curated
  61. 61. 66 Platforms must be designed with the user in mind (internal teams) - focus on UX and DevEx
  62. 62. 67 A platform simplifies something for users
  63. 63. 68 Platforms must help users to achieve goals by understanding user needs and simplifying tasks
  64. 64. 69 A platform evolves to take advantage of technology changes
  65. 65. 70 Platforms must evolve the capabilities they offer (adding/removing) with a clear roadmap or trajectory
  66. 66. 71 A platform uses modern product management (and service management)
  67. 67. 72
  68. 68. 73 A platform needs modern product management (and service management) as demonstrated by SaaS companies
  69. 69. 74 product metrics Platform Metrics
  70. 70. 4 key metrics: ‘Accelerate’ 75 lead time deployment frequency mean time to restore (MTTR) change fail percentage
  71. 71. 76 product metrics user satisfaction metrics Platform Metrics
  72. 72. 77
  73. 73. 78 product metrics user satisfaction metrics adoption & engagement metrics Platform Metrics
  74. 74. 79
  75. 75. 80 product metrics user satisfaction metrics adoption & engagement metrics reliability metrics Platform Metrics
  76. 76. 82 product metrics (Accelerate metrics for platform services) user satisfaction metrics (Accelerate metrics for business services, NPS, etc) adoption & engagement metrics (% teams onboard, per platform and per service) reliability metrics (SLOs, latency, #Incidents, etc) Platform Metrics
  77. 77. 83 The success of platform teams is the success of stream-aligned teams
  78. 78. Examples: Platform as a Product 84
  79. 79. CaseStudy 85
  80. 80. 86 Source: https://teamtopologies.com/industry-examples/organizational-evolution-accelerating-delivery-of-comparison-services-uswitch Organizational evolution for accelerating delivery of comparison services at Uswitch
  81. 81. 87 Low-level AWS service calls (EC2, IAM, STS, Autoscaling, etc.) from January 2015 to January 2017
  82. 82. “We didn’t change our organization because we wanted to use Kubernetes, we used Kubernetes because we wanted to change our organization.” - Paul Ingles 88
  83. 83. 89 Low-level AWS service calls since Kubernetes adoption in January 2017
  84. 84. 91 enable stream-aligned teams to deliver work autonomously with self-service capabilities ... Platform Purpose
  85. 85. 92 … in order to reduce extraneous cognitive load on stream-aligned teams Platform Purpose
  86. 86. “We wanted to scale our teams but maintain the principles of what helped us move fast: autonomy, work with minimal coordination, self-service infrastructure.” - Paul Ingles 94
  87. 87. Treat the platform as a product 95
  88. 88. Reliable Fit for Purpose Focused on DevEx 96
  89. 89. “Kubernetes helps us in a few ways: - Application-focused abstractions - Operate and configure clusters to minimise coordination ” - Paul Ingles 100
  90. 90. 104 2018 Infra platform started with few services First customer (centralized logging, metrics, auto scaling)
  91. 91. 105 2018 Infra platform started with few services First customer (centralized logging, metrics, auto scaling) 2019 Started using SLAs and SLOs, clarifying reliability/latency/etc Growing traffic in platform vs AWS
  92. 92. 106 ... Addressed critical cross-functional needs (GDPR, security, alerts + SLOs as a service) Adoption by HMMT (Highest Money Making Team) 2018 Infra platform started with few services First customer (centralized logging, metrics, auto scaling) 2019 Started using SLAs and SLOs, clarifying reliability/latency/etc Growing traffic in platform vs AWS
  93. 93. 107 2019 Addressed critical cross-functional needs (GDPR, security, alerts + SLOs as a service) Adoption by HMRT (Highest Maturity & Revenue Team) 2017 Infra platform started with few services First customer (centralized logging, metrics, auto scaling) 2018 Started using SLAs and SLOs, clarifying reliability/latency/etc Growing traffic in platform vs AWS
  94. 94. CaseStudy 108
  95. 95. CaseStudy 109https://www.youtube.com/watch?v=oOjdXeGp44E
  96. 96. CaseStudy 110https://www.youtube.com/watch?v=oOjdXeGp44E
  97. 97. 111 https://engineering.atspotify.com/2020/08/27/how-we-improved-developer-productivity-for-our-devops-teams/
  98. 98. What is “Platform as a Product” and why should I adopt this approach? 112
  99. 99. 113 A platform is optional to use - no team is forced to use the platform
  100. 100. 114 A platform is carefully designed and curated
  101. 101. 115 A platform simplifies something for users
  102. 102. 116 A platform evolves to take advantage of technology changes
  103. 103. 117 A platform uses modern product management (and service management)
  104. 104. 118 Happier users (engineers) No technology bloat Designed to evolve
  105. 105. Getting Started with Platform as a Product 119
  106. 106. How well can the team understand the platform abstractions they need to use on a regular basis? 1 - Assess cognitive load 120 github.com/TeamTopologies/Team-Cognitive-Load-Assessment
  107. 107. What does your platform actually do? Is this what users need? What is the UX/DevEx of using the platform? What should it be? 2 - Define your platform 121
  108. 108. Who is responsible for what? Who is impacted? How do you collaborate on new platform internal services? Collaboration vs X-as-a-Service 3 - Team Interactions 122
  109. 109. Zalando Kubernetes at Zalando Mercedes DevOps Adoption at Mercedes-Benz.io Twilio Platforms at Twilio: Unlocking Developer Effectiveness Adidas Where Cloud Native Meets the Sporting Goods Industry ITV ITV's Common Platform v2 Better, Faster, Cheaper, Happier MAN Truck & Bus How to Manage Cloud Infrastructure at MAN Truck & Bus Farfetch UX I DevOps - The Trojan Horse for Implementing a DevOps Culture More platform examples 123
  110. 110. 124 https://techbeacon.com/devops/how-reduce-cognitive-load-increase-flow-5-real-world-examples How to reduce cognitive load and increase flow: 5 real-world examples
  111. 111. Resources 125 teamtopologies.com/resources (links, slides, video) github.com/teamtopologies (templates, assessments, etc)
  112. 112. Thank you! info@teamtopologies.com 126 Matthew Skelton, Conflux @matthewpskelton Manuel Pais, Independent @manupaisable Copyright © Conflux Digital Ltd 2018-2020. All rights reserved. Registered in England and Wales, number 10890964 Icons made by Freepik from www.flaticon.com - used under license

×