prioritizing apps for migration to cloud foundry - cf summit 2016
TRANSCRIPT
Using the Theory of Constraints to Prioritize Cloud Foundry App
Migration
Mark Carlson
CTO, ECS Team
@mdcarlson
6
Cloud Foundry is part of the prescription
But...
• We don’t just need a better, more cloud-
friendly app server.
• Without process and culture change, CF
is just another tool in a very long parade
of tools.
Common Stages of Cloud Foundry Adoption
7
• Investigation and Proof-of-Concept
• Initial Purchase and Production Pilot Project
• Greenfield – Adoption by Development Teams
for New Applications
• Portfolio Modernization – Adoption by Selected
Teams Across the Larger Portfolio
Don’t Migrate Everything!
14
• Applications to Exclude:
• Packaged or SaaS applications
• Apps with tight coupling to hardware or legacy
OS
• Apps with no business reason to change
frequently
• Apps with tenuous connection to consumers or
clear business value
• Apps so trivial… no one will care
• Apps so massive… no one should dare
16
Theory of Constraints
An overall management philosophy
introduced by Dr. Eliyahu Goldratt
Source: Institute of Management Accountants, “Theory of Constraints (TOC) Management System Fundamentals”, 1999
Bottleneck
(2/hr)
17
What is an Innovation Bottleneck?
The inability to rapidly and continuously deliver
business-impacting changes to an app that is an
innovation generator is an…
Innovation bottleneck
• In manufacturing, a constraint is a process, process step,
or anything that limits throughput and prevents the entire
system from achieving its goal.
• A bottleneck is a constraint in a production flow process.
The process step that limits overall capacity.
18 “I've just sucked one year of your life away.” –Count Rugen
Innovation Bottlenecks Suck IT’s Life Away
The initial filters:
• Technical fit 12-factor-ness.
• Size / Complexity
• Directly connected to easily measured business value
• Supporting team not “frozen middle” or “permafrost”
• Eager to embrace new ways and learn new techniques to get better
• Team members are respected. Others will want to follow their lead
19
Finding Innovation Bottlenecks
You might have an innovation bottleneck IF:
• The organization’s ability to innovate as a whole is constrained by slow delivery cycles in this application
• The business is pursuing or evaluating a non-traditional provider or public cloud strategy for this application because it can’t be easily changed
• Introducing the smallest feature or change takes weeks or months EVEN when those features will have a major impact on business operations
20
21
Strangle the Bottlenecks
Strangler Application, Martin Fowler, 2004 http://martinfowler.com/bliki/StranglerApplication.html
Strangler Application Migration:
• Avoids big bang
• Intercepts and redirects calls to
new service running on CF
• Wrapped in tests and circuit
breakers
• Each “slice” is connected to
business value that is easily
visible
• Over time, all that remains is a
well understood core that can
be tolerated or eliminated
23
For Further Research
• “Working Effectively with Legacy Code”,
Michael Feathers, 2004
• “The Goal: A Process of Ongoing
Improvement”, Goldratt and Cox, 1984
• “Application Migration Selection Criteria”, Josh
Kruck and Abby Kearns, 2015
• “Migrating the Monolith”, Rohit Kelapure,
SpringOne2Gx 2015
• ”The Cloud Native Journey”, Michael Coté,
2015
• “The Princess Bride”, William Goldman, 1973
24
Thank you!
Mark Carlson
@mdcarlson
ECS Team
@ecsteam
http://www.ecsteam.com