the enterprise transformation to continuous delivery€¦ · continuous integration is widespread...
TRANSCRIPT
© 2015 Forrester Research, Inc. Reproduction Prohibited
The Enterprise Transformation to
Continuous Delivery
© 2015 Forrester Research, Inc. Reproduction Prohibited 3
http://www.linkconstructiongroup.net/project.cfm?id=42© Golden Gate Bridge, Highway and Transportation District
Why CD?
Intense, and increasing Competition.
“We don’t compete with other banks. We compete with Apple,
Paypal, and Google.” (CIO, Large Banking organization)
© 2015 Forrester Research, Inc. Reproduction Prohibited 4
The Software-Powered Value Delivery Cycle
October 20, 2014, “The Software-Powered Business”
› Faster cycles result in:
+Less risk
+Less waste
+Lower cost
+Happier customer
=Better business results
© 2015 Forrester Research, Inc. Reproduction Prohibited 5© 2015 Forrester Research, Inc. Reproduction Prohibited
Application releases are still infrequent
2% 2%
8%
21%
26%
16%
11%
10%
6%
many times perday
once a day once a week once a month once per quarter twice a year once a year (orless)
infrequently, withnew versions ofOS/middleware
OtherSource: Global BT Developer Survey, 2015
Base: 635
© 2015 Forrester Research, Inc. Reproduction Prohibited© 2014 Forrester Research, Inc. Reproduction Prohibited 6
II
IIUnit
Testing
Build Automation
Artifact repositories
Environment mgmt
Continuous IntegrationApplication Release Automation
Lifecycle Integration
Application Analytics
Service virtualization
Static code
analysis
Perf/Load Testing
Test managementContinuous Delivery Management
API-based Automated Functional
Test Test Data management
CD Pipeline Tools TechRadar™
UI-based Test
Automation
Version management
© 2015 Forrester Research, Inc. Reproduction Prohibited 7© 2015 Forrester Research, Inc. Reproduction Prohibited
Continuous Integration is widespread but not universal
43%
9%
12%
15%
9%
7%6%
continuous integration on demand multiple times/day once/day multiple times/week once/week once/month or less
Source: Global BT Developer Survey, 2015
Base: 635
© 2015 Forrester Research, Inc. Reproduction Prohibited 8© 2015 Forrester Research, Inc. Reproduction Prohibited
Speed bumps abound
© 2015 Forrester Research, Inc. Reproduction Prohibited 9
People
Process
Technology
Three Dimensions of Continuous Delivery
© 2015 Forrester Research, Inc. Reproduction Prohibited 10http://successify.net/2013/04/01/john-f-kennedys-case-for-dreaming-big/
The journey begins with a vision of a better future.
© 2015 Forrester Research, Inc. Reproduction Prohibited 11
Lean Value Stream Mapping
http://en.wikipedia.org/wiki/Value_stream_mapping
© 2015 Forrester Research, Inc. Reproduction Prohibited 12
Example Value Delivery Stream
IdeaUnderstand
NeedsDevelop Test Deploy
Customer
Value
3 days 5 days 5 days 3 days
10 days7 days 4 days 9 days
Total = 47 days
1 day
feedback
July 25, 2014 “Define A Software Delivery Strategy For Business Innovation”
© 2015 Forrester Research, Inc. Reproduction Prohibited 13
Typical Software Delivery Bottlenecks
Manually
managed
environments
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Lack of effective customer insight
Too muchWIP
Manual build and
integration processes
Error prone manual hand-offs and processes
Manual and error prone app deployments
Lack of sufficient test data to make
decisions
Waiting for build and test
environments
Develop,
Commit & Build
One way flow of information
Manual Testing
© 2015 Forrester Research, Inc. Reproduction Prohibited 14
Manually
managed
environments
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Waiting for build and test
environments
Develop,
Commit & Build
The DevOps Journey – Step 1
Automate Environment Management
© 2015 Forrester Research, Inc. Reproduction Prohibited 15
Sign Up
Explore
Recent Photos
The Commons
Getty Collection
Galleries
World Map
App Garden
Camera Finder
Flickr Blog
Upload
Submit
Sign In
←
→
Feedback
http://w
ww
.flic
kr.
com
/photo
s/3
8392483@
N00/3
85912858
“Infrastructure As Art”
› Every environment unique
› Manually built and configured
› No auditability of changes
› Often, no control over change access
› No repeatability
› “It works fine in my environment.”
© 2015 Forrester Research, Inc. Reproduction Prohibited 16
http://www.datacenterknowledge.com/wp-content/uploads/2011/05/ITPAC-Servers-470.jpg
› Standard VM/Container configurations
› Configurations version controlled
› Managed Change authorization
› Changes automated, repeatable, auditable
“Infrastructure As Code”
Versioned
Repository
Configuration Info
Configured Environment
Test
Data
Test
Data
Configuration
Info
Service
VirtualizationTest Data
Management
Deployment Automation
© 2015 Forrester Research, Inc. Reproduction Prohibited 17
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Develop,
Commit & Build
The DevOps Journey – Step 2
Integrate, Continuously
Manual build and
integration processes
© 2015 Forrester Research, Inc. Reproduction Prohibited 18
Continuous Integration Ensures Healthy Code
htt
p://b
log
.jki.n
et/n
ew
s/n
iwe
ek-2
012-f
ire
-and-f
org
et-
bulle
tpro
of-
build
s-u
sin
g-c
ontin
uo
us-
inte
gra
tion
-with-la
bvie
w-v
ideo
-slid
es-n
ow
-ava
ilab
le/
© 2015 Forrester Research, Inc. Reproduction Prohibited 19
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Develop,
Commit & Build
The DevOps Journey – Step 3
Automate Deployments
Manual and error prone app deployments
© 2015 Forrester Research, Inc. Reproduction Prohibited 20
Add slides on ARA– what it is, how it works
htt
p:/
/h3
0499.w
ww
3.h
p.c
om
/t5
/Gro
unde
d-in-t
he-C
lou
d/T
ransfo
rm-D
evO
ps-w
ith
-
Ap
plic
ation-R
ele
ase-A
uto
matio
n/b
a-p
/59
52497
#.V
TZ
73c5G
ceo
Benefits of Automating Software Releases
Increase reliabilityEliminate manual errors
A typical quarterly release at one company consisted of a spreadsheet of over
1000 changes that needed to be made to deploy the software.
A THOUSAND OPPORTUNITIES FOR SOMETHING TO GO WRONG.
Increase speed
Reduce cost
© 2015 Forrester Research, Inc. Reproduction Prohibited 21
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Develop,
Commit & Build
The DevOps Journey – Step 4
Automate Testing with APIs
Manual Testing
© 2015 Forrester Research, Inc. Reproduction Prohibited 22
Loose Coupling Enables Composability
› Versioned Services allow interfaces
to evolve
› Resources can be replaced without
affecting applications
› Risk is reduced by isolating and
eliminating dependencies
› The unit of release becomes an API
change, not an application
› Applications and services can
choose when they “upgrade” to a
new interface
API Layer
Resource Layer (including other Applications)
UI Layer
June 23, 2014 “Software Innovation Requires A Loosely-Coupled Application Architecture”
© 2015 Forrester Research, Inc. Reproduction Prohibited 23
Compose First, Then Code
February 19, 2015 “From Application Design to Application Composition”
Custom
Application
Code
3rd-party
Services
(e.g. Google Maps,
PayPal, SAP HANA)
Open Source
Components
&
Frameworks (e.g. node.js)
Commercial
Application
Platforms
(e.g. Salesforce.com)
Cloud Platform
Services
(e.g. Amazon AWS,
Microsoft Azure)
Proprietary
Services
© 2015 Forrester Research, Inc. Reproduction Prohibited 24
UI – Presentation Layer
API Layer
Resource Layer (including other Applications)
Test Harnesses
Continuous Testing Benefits
Increased ConsistencyTest Every Build
Eliminated Reliance on UI
Eliminated delays
Economies of Scale
Reduced Cost
© 2015 Forrester Research, Inc. Reproduction Prohibited 25
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Develop,
Commit & Build
The DevOps Journey – Step 5
Make Data-driven Release Decisions
Lack of sufficient test data to make
decisions
© 2015 Forrester Research, Inc. Reproduction Prohibited 26
Benefits of Basing Release Decisions on Test Data
Increased Confidence Reduced Risk
Fewer Incidents
Simplified Release Decisions
© 2015 Forrester Research, Inc. Reproduction Prohibited 27
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Develop,
Commit & Build
The DevOps Journey – Step 6
Reduce the Size of Releases
Too Much WIP
© 2015 Forrester Research, Inc. Reproduction Prohibited 28
http://b
uzz.w
aspbarc
ode.c
om
/wp-c
onte
nt/uplo
ads/2
013/1
0/too
-much
-invento
ry-b
anner.
jpg
Requirements are like inventory – you never
know what’s going to sell until it’s sold, or used
© 2015 Forrester Research, Inc. Reproduction Prohibited 29
Smaller Batches = Faster Speed
much better than
© 2015 Forrester Research, Inc. Reproduction Prohibited 30
Large Batch = Lots of WIP, Scrap
Big Batches ➔ Small Batches
› Lots of over-specification
› Lots of speculation
› Larger batch = more risk
Small Batch = Minimal Scrap, Maximal
Throughput
› Reduce time to feedback
› Reduce guessing about right solution
› Reduce risk, complexity, and dependencies
htt
p:/
/ww
w.d
rdo
bb
s.c
om
/ma
nag
ers
-ma
na
ge/1
84
414
912
© 2015 Forrester Research, Inc. Reproduction Prohibited 31
Innovation & The Minimum Viable Product (MVP)
Deliver MVP Quickly – Improve Based On Feedback
… …
R1 R2 R3 R4 R5 R6 R7
© 2015 Forrester Research, Inc. Reproduction Prohibited 32
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Error prone manual hand-offs and processes
Develop,
Commit & Build
The DevOps Journey – Step 7
Eliminate Hand-offs and Wait Time
© 2015 Forrester Research, Inc. Reproduction Prohibited 33
Continuous Delivery requires organizing differently
© 2015 Forrester Research, Inc. Reproduction Prohibited 34
Current organizational models are stuck in the past
Lin
e o
f B
usi
nes
s
Op
erat
ion
s
Bu
sin
ess
An
alys
ts
Dev
elo
pe
rs
Qu
alit
y A
ssu
ran
ce
Ente
rpri
seA
rch
itec
ture
CIO
Cu
sto
mer
Exp
erie
nce
CMO
© 2015 Forrester Research, Inc. Reproduction Prohibited 35
Siloed roles increase hand-offs
Project A
Project B
Project C
Old Goal: Maximize Utilization
New Goal: Maximize Throughput
© 2015 Forrester Research, Inc. Reproduction Prohibited 36
The Delivery-Centric Organization
IntegratedProductTeams
Communities of Practice
Servant-
Leadership
LOBCMO
CIO …
© 2015 Forrester Research, Inc. Reproduction Prohibited 37
Idea
proposed
Understand
Needs &
Invent
Solutions
Functional
TestingDeploy
Solution
Customer
Value
Load,
Performance,
Security, …
Testing
UAT/Explorat
ory Testing
ReleaseDecision
Lack of effective customer insight
Develop,
Commit & Build
One way flow of information
The DevOps Journey – Step 8
Drive Better Results With Feedback
© 2015 Forrester Research, Inc. Reproduction Prohibited 38
Feedback drives value delivery
http://www.thoughtworks.com/insights/blog/do-we-need-business-analyst-agile-teamhttps://www.salesforce.com/blog/2013/03/why-mobile-matters-for-customer-
service-and-the-service-cloud.html