Upload
michael-cote
View
1.204
Download
0
Embed Size (px)
Citation preview
Better ways of developing softwareor, coding like a unicorn
@coteJune 2016
1 Slides: http://cote.io/unicorn-coding/
• @cote – Director, Marketing at Pivotal
• Former industry analyst at 451 Research and RedMonk
• Corporate strategy and M&A at Dell
• Former software developer• More: cote.io/podcasts,
http://cote.io, [email protected], The Register DevOps column.
Hello!
2
3
Meanwhile, in business-land…
4
“Silicon Valley is coming….We are going to work hard to make our services as seamless and competitive as theirs.”
-Jamie Dimon, CEO@JPMC, 2015 letter to shareholders
“If advantages eventually disappear, it only makes sense to have a process for filling your pipeline with new ones. This in turn means that, rather than being an on-again, off-again mishmash of projects, your innovation process needs to be carefully orchestrated.”- Prof. Rita McGrath, “Transient Advantage,” HBR, June 2013
“Cloud Native” is IT’s answer to transient advantage
5
Since 2000, 52% of the F500 are no longer on
the list
Sources: “Transient Advantage,” above; F500 figure from 2014 Constellation Research Summary, R. “Ray” Wang, Feb. 2014.
Cloud Native Business Theory
(1.) In an era of transient advantage, the inherit agility of software is one of the best strategic tools.
(2.) However, software in large organizations does not currently “work like that.”
(3.) The fix is changing how we think of the process of software, supported by cloud native technologies & practices.
6
7
It’s not much of an IT department, but I’m sorta attached to it…
8
Source: Gartner press release, Aug 2015; “The Agile Advantage,” MeriTalk/Accenture, May 2015; Cutter Consortium, July 2015.
IT is failing to meet the transient advantage needs of the business
What is your IT organization's
role in business innovation?75% of
application development supporting digital business will be built not bought by 2020
9
A user-centric, small batch approach creates a software defined business
10 Source: Pivotal Labs, March 2016. See also “Agile Transformation in the Age of the 3rd Platform,” Al Hilwa , IDC, Feb 2016 (unpublished)
Exploration Discovery
Feedback Loop
Continuous DeliveryRelease once every 6 months
More Bugs in production
Release early and oftenHigher Quality of Code
DevOpsNot my problem
Separate tools, varied incentives, opaque process
Shared responsibilityCommon incentives, tools, process and
culture
MicroservicesTightly coupled components
Slow deployment cycles waiting on integrated tests teams
Loosely coupled componentsAutomated deploy without waiting on
individual components
Platform, Standard Practices & Tools, Cloud Native Culture
Trad
ition
al IT
Clo
ud N
ativ
e
The Process
12
“We spent a lot of time talking about technology, but technology really isn't the meat of the conversation that needs to occur.” Matt Curry, Allstate
13Source: Matt Curry quote from Feb 2016 TheNewStack interview; “Agile Transformation in the Age of the 3rd Platform,” Al Hilwa , IDC, March 2016.
Benchmark your agile behaviors, plan catching-up as needed
Source: “Town Hall: Agile in the Enterprise,” Mike West, Nathan Wilson, Thomas Murphy, Dec 2015, Gartner AADI US conference.14
Discovering & delivering the software your customer actually wants
• Most organizations emphasize building to plan
• In reality, the “plan” constantly evolves
• Learning organizations explore & experiment
How most businesses think they’re doing
How smart businesses know they’re doing
15
Use small batch thinking, at all levels
• Weekly, even daily deploys to production
• Deploy to production each time, avoid waterscrumfall
• Relies on:- Product approach- Small batch oriented
pipeline and process- Cloud native automation
Inception
Hypothesize
Validate w/real use(r)s
Did it work?
Sources: “Good Software is a Series of Little Failures,” Coté, April 2016; The Lean Startup, Eric Ries, 2011. The Lean Enterprise, Barry O'Reilly, Jez Humble, and Joanne Molesky. See also overview of this approach at the IRS from Dec 2015.16
Small Batches Reduce Risk & Increase Controls
17
Five risks that small batches reduce
1. Bug swarms – less software leads to faster fixing.
2. Useless software – don’t wait 6+ months to find out, find out every 24 hours.
3. Stymied Innovation – daily opportunities to learn and innovate.
4. Budget overruns – check in daily on ROI, projections. Shut it down early and re-try if needed.
5. Schedule elongation – if you ship every day, guaranteed, how can you ever be late?
Source: "Dear Developers, Small Batch Releases Are Your Friend," Coté, Feb 2016, also in The Register.
"There have obviously been culture shocks. What is more interesting though is that the teams that tend to have the worst culture shock are not those typical teams that you might think of, audit or compliance. In fact, if you’re able to successfully communicate to them what you’re doing, DevOps and all of the associated practices seem like common sense. [Auditors] say, 'Why weren’t we doing this before?’”
"DevOps Enterprise Adoption at E*TRADE,”InfoQ/DOES, Jan 2016.
DevOps, the word defines itself
18
(1.)DevOps is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support.
(2.)DevOps is also characterized by operations staff making use of many of the same techniques as developers for their systems work.
Source: “What Is DevOps?,” The Agile Admin, Dec 2011. For more: Effective DevOps, Jennifer Davis, Katherine Daniels, May, 2016; see The Practice of Cloud System Administration, chapter 8 for an in-depth definition and discussion. Also, see Damon Edward's 2012 piece "Use DevOps to Turn IT into a Strategic Weapon.” Also, The Phoenix Project for a story of DevOps in the style of The Goal.
Defining DeveOps by practices & goals, part 1
19
Defining DeveOps by practices & goals, part 2
20
Go big with small batches
Sources: "Ford teams with Pivotal, bets on Cloud Foundry," Larry Dignan, ZDNet, Dec 2015;”Application Modernization, Service By Microservice," Forrester, Dec 2015. See also BMC Software case study in The Concise Executive Guide to Agile and Cutter Executive Report, Vol. 9, No. 9, 2008.
"We did an analysis of hundreds of projects over a multi-year period. The ones that delivered in less than a quarter succeeded about 80% of the time, while the ones that lasted more than a year failed at about the same rate. We're simply not very good at large efforts.”
-Dev leader, large financial institution
21
“…sped up software development times from months to weeks using agile techniques.”
The Tools
22
23
Sources: "The New Developer Landscape: Understanding the Modern Software Developer," Al Hilwa, March 2016. See also: "Application Modernization, Service By Microservice," Kurt Bittner and Randy Heffner, Dec 2015, Forrester. See the“The RedMonk Programming Language Rankings: January 2016” for popular programming languages.
A microservices approach gives you organizational agility, at the expense of architectural complexity
24
Benefits• Decoupling service
releases, teams• Faster innovation cycles• Composite applications
vs. monolithic apps
Problems• The one about the
murder mystery• Incompatible APIs• You still need other
people to do work
It’s worth solving the problems if you want the benefits…and it’s possible!
The Application Framework promises
Codebase Dependencies Config Backing Services
Build, Release,
RunProcesses Port
BindingConcurrenc
y
DisposabilityDev/Prod
Parity Logs Admin Processes
Source: “The Twelve-Factor App.”
• A set of best practices for developing and deploying cloud-native software.
• Practices translate into platform features and workflow requirements.
25
A deep look at the cloud platform value line
26Source: Pivotal; "Technical Dive into Cloud Native Application Platforms," Brian Gracely, Wikibon, Sep 2015. See also "The cloud-native future," Casey West, O'Reilly Radar, Aug 2015
Transforming:
27
Transformation starts with “management”
• Leading change management
• Setting, communicating, tracking goals
• Dramatic organization change, gradually
Sources: Leading the Transformation, 2015; “Management’s Job is orchestrating the ‘why,’” 2015; The Concise Executive Guide to Agile, 2010.28
“At the end of the day, we are just looking to start by changing one behavior, which can get the momentum spinning to drive a much larger cultural change.” -Matt Curry, Allstate
Staffing: There is no talent shortage
F100 CTO: “But Netflix has a superstar dev team, we don’t!”
@adrianco:“We hired them from you.”
Source: @blueboxjesse, Oct 2014. See also “There is no talent shortage.”29
To change, you must actually changeOr, how t-shirts jump-start digital transformation
“I can’t tell you what having a leader stand-up in front of an organization with a hoodie and t-shirt does to cultural change. It all the sudden makes it OK for everyone within that organization to participate in change.”
-Matt Curry, Allstate
30 Source: “How Allstate Upped Productivity By Killing Meetings & Wearing T-Shirts,” Coté, June 2016.
Dealing with legacy: the stuff that makes all the money
Quarantine
• Low impact applications
• Lacks good testing, risky to change
• Change resistant priorities
Migration Strategies
• Virtualize & re-platform to control costs and maximize management
• API gateways combined with the strangler pattern
• Portfolio management (cf. The Three Horizons)
Sources: “DevOps isn't just about the new: It's about cleaning up the old, too,” Coté, April 2016; The Cloud Native Journey, Coté, 2016; Escape Velocity, Geoffrey Moore, Sep 2011 and "To Succeed in the Long Term, Focus on the Middle Term," Geoffrey Moore, August 2007. 31
Cloud native approaches speed up the whole process, more efficiently than previously possible
Source: “Deployments We Can Believe In,” Diego Lapiduz, 18F, June 2015; see also “Barriers to DevOps in Government,” Coté, Oct 2015; Humana keynote, CF Summit 2015; Gregg Otto at CF Summit NA 2016.
18F/cloud.govATO reduction from
9-14 months to 2-3 days
• Humana Cue Apple Watch app:
“Two people built the app and got it into the AppStore in five weeks.”
• Large financial institution on PCF: 145 apps with 2 ops people
• “We get features in days, not weeks, and scale takes minutes, not months.” –Gregg Otto, Comcast
32
For more: transforming to cloud native
(1) GreenfieldProjects
(2) Dealing with
Legacy
(3)Corporate
Transformation
Get the free booklet at http://cote.io/pivotal33
34
Thanks!@cote | [email protected]: http://cote.io/unicorn-coding/
“We are uncovering better ways of developing software by doing it and
helping others do it.”- The Agile Manifesto, 2001
35
A cloud native platform is composed of three layers, supporting the entire life-cycle of an application from development to production
12 factor apps & Microservices
Container Orchestration
Infrastructure Automation
Polyglot buildpacks & Spring Cloud
Elastic Runtime/Diego
BOSH
Cloud NativeApplication Frameworks
Cloud NativeRuntime Platform
Cloud NativeOperations
Cloud Native Empowered CultureSource: slides in this section based on “Patterns of Cloud Native Architecture,” Agile 2015. See also : "Technical Dive into Cloud Native Application Platforms," Brian Gracely, Wikibon, Sep 2015. See also "The cloud-native future," Casey West, O'Reilly Radar, Aug 2015 36
Pivotal Cloud Foundry, layers & capabilities
37
Application Framework
Runtime Platform
Infrastructure Automation
Infrastructure
Dev
Dev
Ops
BOSH
Spring BootSpring Cloud
Contract: 12 factor app
Contract: BOSH Release
Contract: Cloud Provider Interface
IT Ops
Culture Cloud Native Framework Tools
Go
Source: “Get Started on Pivotal's Cloud Foundry Stack,” Coté/The New Stack, Jan 2016.
Pivotal Labs & Pivotal Cloud FoundryWorldwide, cross industry adoption
And many more...
38