This document summarizes the financial analysis and assumptions made for transitioning from a monolithic architecture to microservices. It calculates the payback period and net present value of such a transition. The analysis assumes adopting microservices would allow delivering new functionality faster, resulting in $14 million in new revenue in year 1. It estimates costs of upskilling, platforms, and interfaces for years 1 to 3. The payback period is calculated at 6.86 months and the net present value is calculated at $61.1 million, indicating the transition would be financially beneficial based on the assumptions made.
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Get Your Company to Adopt Microservices with Quantified ROI
1. This stuff is cool, but…
HOW CAN I GET MY COMPANY TO DO IT?
Businessing the S*** out of Transformative Development!
Mark Heckler
Principal Technologist/Developer Advocate
Pivotal Software, Inc.
www.thehecklers.org
mark@thehecklers.org
@MkHeck
@MkHeck
2. @MkHeck
Who am I?
• Author
• Speaker
• DEVELOPER
• Seeker of a better way
• MBA
6. @MkHeck
Disclaimers
• I’m human
• Measurements require assumptions…
• …but those will be clearly stated and quantified
• Estimate benefits conservatively, costs liberally
• The numbers you see are EXAMPLES
• Adjust sensibly for your circumstances
9. @MkHeck
What’s on the agenda?
• Payback
• Net Present Value (NPV)
• Quantification
• Based upon (solid, well-reasoned, calculated) assumptions
• Several steps to get there, but don’t panic!
13. @MkHeck
Payback: Explanation
• Shorter payback period generally better
• Longer payback means more uncertainty, greater risk
• Prefer < 3 years payback period
• Payback < 1 year == essential project
14. @MkHeck
Payback: Drawbacks
• No consideration of total value
• 3 year payback, no further value after year 5, lifetime value: $250,000
• 5 year payback, ongoing value, lifetime value: $1,000,000
• Which would you choose?
• No consideration of time value of money
• Good measure, but incomplete
15. @MkHeck
Net Present Value (NPV): Formula
Net Period Cash Flow
(1+R)T
= NPV∑
where R is the Rate of Return
and T is the number of time periods
16. @MkHeck
Net Present Value (NPV): Example 1
$1,000,000
(1+0.05)5
= $783,526∑
where R is the Rate of Return
and T is the number of time periods
17. @MkHeck
Net Present Value (NPV): Example 2
= $646,206
$200,000
(1+0.04)2
$400,000
(1+0.03)3
$100,000
(1+0.05)1
++
$184,911 $366,057$95,238
18. @MkHeck
Inputs & Associated Challenges
• Quantifying qualitative measures
• How would this initiative:
• affect your organization’s/group’s/team’s work?
• impact your tech stack?
• contribute to recruitment/retention?
• affect the business?
19. @MkHeck
Putting Numbers with It: Pros & Cons
• Pros
• Critical analysis yields better understanding of inputs, impacts
• Can provide more objective and compelling justification for initiative
• Cons
• Can be very time-consuming
• No automatic conversion between qualitative & quantitative measures
20. @MkHeck
Putting Numbers with It: Caveats
• Time is a constraint
• Assumptions form basis of conclusions
• Bad assumptions -> Inaccurate conclusions
• Good assumptions -> (In?)accurate conclusions
• Document assumptions meticulously
• Be open to discussion, refinement
23. @MkHeck
Notes about Microservice Architectures
• “Return on Investment (ROI) is driven by accelerated realization of
benefits rather than overall business transformation.”
• Reduced maintenance costs?
• Increased business opportunities through new APIs?
• Selective scaling of only high-demand microservices reduces costs
• Investment includes upskilling/coaching/mentoring
24. @MkHeck
Expectations
• Small batch sizes, small teams: Microservices
• Bounded contexts
• API-based contracts for interactions
• More functionality delivered to market (or internal end-users) sooner
• Building the right product (tight dev loop == tight feedback loop)
25. @MkHeck
Expectations
• Microservices (continued)
• Improved quality; small mods vs. major overhauls
• Improved end-user satisfaction
• Small, frequent releases expose & help resolve process issues “in the
small”
• When releases are tiny, well-planned & -choreographed events, they
can happen at will
27. @MkHeck
Assumptions: monoliths
• Average cadence of releases of key monolithic apps: 1x/year*
• 10 months of development before “code freeze”
• 1 month of integration testing, bug fixes
• 1 month of UAT (confirmations, course corrections, logging “new”
requirements)
*optimistic in many cases
29. @MkHeck
Assumptions: microservices
• Average cadence of microservices releases: 7448x/DAY*
• If your company is 1/1000th (0.1%) as effective as Amazon, that’s still
> 7 releases/day…over 2500 releases/year!
• 14 new microservices in first year
• Each of your Y1 microservices averages a release every other day
*Amazon: 1 every 11.6s in 2011 - YMMV!
30. @MkHeck
Assumptions: microservices
• How much more functionality can be delivered more quickly, more
accurately?
• If you can approach zero with missed requirements, missed
opportunities, missed expectations…how much is that worth?
• If users can have needed functionality MONTHS or YEARS sooner, what is
that worth to your company?
31. @MkHeck
Quantification
• Volatile functionality
• Sales drivers
• Product development/engineering
• Focus upon producing key abilities, define interfaces in monolith
• Average time to get interface APIs “live”: 6 months
• Average business size: $500m annual revenue
• Impact of high-demand projects implemented via microservices: $1m/microservice
32. @MkHeck
Quantification
• Costs
• Upskilling required for relevant tech teams
• Ramp-up - offset by avoidance of contextualization issues
• Other things that may smooth/speed path omitted*
• Platform costs and interface development
• Foregone revenue from monolith implementation**
*would increase costs and resultant cash flows
**assumes some functionality would be implemented otherwise in monolith
($1m)
($2m)
($5m)
33. @MkHeck
Totals, Year 1
New revenues, year 1 $14m
Expenses
Upskilling ($1m)
Platform costs ($1m)
Interfaces ($1m)
Opportunity costs ($5m)
Y1 NET GAIN/LOSS FROM ADOPTION $6m
34. @MkHeck
6.86 months
Annual Cash Inflow (or Savings)14,000,000
Cost of Project8,000,000
Payback: Microservices
= Payback Period
APPROVED!
36. @MkHeck
Totals, Year 1
New revenues, year 1 $14m
Expenses
Upskilling ($1m)
Platform costs ($1m)
Interfaces ($1m)
Opportunity costs ($5m)
Y1 NET GAIN/LOSS FROM ADOPTION $6m
37. @MkHeck
Y2 Assumptions
• Double number of microservices added in Y2 vs. Y1
• 14 new in Y1 + 28 new in Y2 = 42 new microservices @EOY2
• Estimate slightly reduced impact, may be overly pessimistic
• 28 * $750k = $21m $14m + $21m = $35m “new” revenue
• Assume linear ability to expand monolith, may be overly optimistic
• $10m worth of functionality could be implemented in monolith
38. @MkHeck
Totals, Year 2
New revenues, year 2 $35m
Expenses
Upskilling ($1m)
Platform costs ($2m)
Interfaces ($1m)
Opportunity costs ($10m)
Y2 NET GAIN/LOSS FROM ADOPTION $21m
39. @MkHeck
Y3 Assumptions
• Double number of microservices added in Y3 vs. Y2
• 42 @EOY2 + 56 new in Y3 = 98 new microservices @EOY3
• Estimate further reduced impact, may be overly pessimistic
• 56 * $500k = $28m $35m + $28m = $63m “new” revenue
• Assume linear ability to expand monolith, may be overly optimistic
• $15m worth of functionality could be implemented in monolith
40. @MkHeck
Totals, Year 3
New revenues, year 3 $63m
Costs
Upskilling ($1m)
Platform costs ($6m)
Interfaces ($1m)
Opportunity costs ($15m)
Y3 NET GAIN/LOSS FROM ADOPTION $40m
42. @MkHeck
Factors Revisited
• Quantifying qualitative measures
• How would this initiative:
• affect your organization’s/group’s/team’s work?
• impact your tech stack?
• contribute to recruitment/retention?
• affect the business?
43. @MkHeck
In summary…
• Critical analysis yields better understanding of inputs, impacts
• Can provide more objective and compelling justification for initiative
• Be honest
• Document & communicate assumptions clearly
• Be open to course corrections