1
Copyright   ©  Serena   Software   2015
Leveraging  DevOps Principles  for  Release  and  Deploy
2013Mark  Levy,  Product  Marketing  Manager  
Mark  Levy,  Serena  Software
2
2
The  Problem
This  is  a  software-­
powered  world
Agile  development   has  
increased  the  pace  of  
innovation
But  has  just  pushed  the  
bottleneck  down  to  IT  
Operations
3
3
OpsDev
Mix  in  Differing  Organizational  Goals
4
Slow,  Costly  and  Error-­Prone  Application  Releases
Poor  release  quality  due  to  
ineffective  hand-­offs
between  Dev  and  Ops
Global  Commercial  Bank
Time  consuming  and  
error-­prone  manual
deployments  
Human  errors  deploying  to  
100  servers,  no  standard  
process and  no  audit  trail
Global  Insurer Regional  Retailer
50% of  companies  are  
dissatisfied with  key  portions  of  
their  release  management  
process
95% of  IT  organizations  lack  a  
centralized  release  management  
process…and  this  contributes  
up  to  80% of  production  defects
Forrester  Research Gartner
Lost  $440M  in  45  minutes
Stalled  commuter  trains  for  3  
hours
Knight  Capital BART
5
5
Thus,  the  DevOps  Movement
6
Silo’s  Are  Walls  of  Isolation
Release  Management
Release  
Policy
Release  
Planning SDLC
Build  and  
Configure  
Release
Quality  
Review
Roll  Out  
Plan
Implement  
Release
Verify  
Release
Accept  
Release
7
Burn  the  Silo?    How  do  you  not  burn  the  business?
8
8
How  to  Start  – The  Mantra  
• What  matters  to  the  business
• Define  and  measure  success
• See  the  system  and  follow  the  flow  
• Eliminate  waste
• Create  a  culture  of  continuous  
improvement
• Apply  Agile  and  DevOps principles
• Implement  Incremental  changes
• Deliver  quick  wins
9
9
What  Matters  to  the  Business?
• Yes,  go  ask  the  people
• Gain  visibility  and  insight  into  the  
business  
• Align  your  objectives  to  the  
objectives  of  the  business
• Agree  on  metrics  to  messure
10
How  Responsive  are  you  to  the  Business?
• Where  do  you  start  to  improve?
• How  do  you  measure  success?
• Average  cycle  time  for  moving  a  business  
request  from  Development  to  Production?
• Number  of  business  requests  implements  this  
week,  month,  year?
• Cost  of  moving  a  unit  of  change  through  your  
application  lifecycle?
• Percentage  of  a  release  focused  on  technical  
debt?
• Percentage  of  a  release  focused  on  innovation?
• Develop  metrics  to  support  what  matters  to  the  
business
11
11
See  the  System  and  Follow  the  Flow  
• Business	
  request	
  to	
  the	
  production
• Detailed	
  picture	
  of	
  your	
  current	
  process
• Follow	
  the	
  flow	
  of	
  information	
  and	
  artifacts
• Where	
  does	
  your	
  deployable	
  assets	
  reside?
• Identify	
  feedback	
  loops	
  required
12
12
Simplify  the  Process  and  Eliminate  Waste
• Look  for  ways  to  optimize  throughput
• Simplify  process
• Lean  Methodologies
– Value  Stream  Mapping
– Timeline  Analysis
– Waste  Analysis  
• Financial	
  Cost	
  Accounting
13
13
Lean  In  and  Then  Lean  Out
14
Continuous  Delivery:  Goal  and  Principles
• Create  a  repeatable,  reliable  process  for  releasing  software
• Automate  almost  everything
• Keep  everything  in  version  control
• If  it  hurts,  do  it  more  frequently
• Build  quality  in  
• Done  means  released
• Everyone  is  responsible  for  the  delivery  process
“To  find  ways  to  deliver  high-­quality,  valuable  software  in  an  efficient,  fast,  
and  reliable  manner.”
15
Create  a  Repeatable  and  Reliable  Release  Process
• Single  system  of  record  
for  release  planning  and  
execution
– Updated  in  real-­time
– Schedules
– Milestones
– Gates  and  Approvals
• Automatic  cycle-­time  
capture
• Ensure  audit  trails  for  
compliance  and  learning
16
Enterprise  IT  Application  Layers
17
Release  Management
• We  align  to  Change  Management
• We  plan  and  manage  long  term  Releases
• We  can  document  and  demonstrate  
traceability  and  compliance…
A  “Release”  Method  Needs  to  Support  Different  Modes
Continuous  Delivery
• We  align  to  Change  Management
• We  can  automate  continuous  Releases
• We  can  build  traceability  compliance  in…
18
Select  a  Release  Method  for  each  “Modal”  Application
• Change  Approval  Method  
• Artifact centric  – aligns  to  Continuous  Delivery
• Deployment  artifacts linked  to  RFC  for  Approval
• Sometimes  only  created  for  Production  deployments
• Release  Package  Method
• Artifact/Process  centric  – evolves  Continuous  Delivery  for  the  Enterprise
• Release  Packages  linked  to  Deployment  artifacts
• Release  Packages  models  Path  to  Production  through  Deployment  Pipelines
• Release  Train  Method
• Process  centric  – aligns  to  ITIL/Service  Transition  Release  Management
• Release  Trains  are  planned/scheduled  and  deployed  through  Release  Packages
• Release  Planning,  Deployment  Planning,  Change  Management
RFC
Artifacts
Release  
Package
Artifacts
Deployment  
Pipeline
Release  
Package
Artifacts
Release  
Package
Artifacts
Release  
Train
19
Manage  Environments
• Improve  availabiliy and  readiness  of  environments
• Calendar  shows  environment  contention  and  
availability  issues
• Process  drives  environment  provisioning,  
management,  and  decommissioning
• Automatic  notification  of  environment  readiness  and  
status  changes
20
20
Eliminate  Inefficient  Deployment  Processes
• Define,  build,  orchestrate  and  manage  all  
deployment  turnovers  and  tasks  
• Capture  environment  and  deployment  tribal  
knowledge  in  a  “runbook”
• Formalize  packaging  and  process  of  the  handoff
• Same  set  of  semantics
• Eliminate  “million  dollar”  release  meetings
21
21
Automate  Almost  Everything
• People  should  not  move    the  “bits”
• Automate  code  and  config deployments  with  a  
single  set  of  deployment  processes  across  all  
environments
• All  preprod deployments  should  be  rehearsals  
for  the  final  deploy  into  prod
• Use  common  tools  across  all  environments
• Quick  incremental  wins  with  big  impact
22
Keep  Everything  in  Version  Control
• Version  control  everything
• Include  infrastructure  and  configuration  code
• Aggregate  assets  into  a  single  source  of  the  truth
• Should  reside  in  a  secure  repository
23
Make  Gates  and  Approvals  Visible
• Establish  minimum  entrance  requirements  to  
an  environment
• Consider  applying  more  rigor  to  higher  level  
environments
• Auto-­revert/gated  commits  
• Ensure  mitigation  plans  to  pull  stories/changes  
from  a  release
24
24
Integrate  Release  and  Deployment  Toolchains
• Process  and  Artifacts  transition  across  
tools
• Seamless  integration  of  the  deployment  
pipeline
• Plug-­in  architecture  to  abstract  tool  
implementations
• Integration  with  change,  configuration  
and  ITSM  solutions
25
Summary
• Velocity  and  Complexity  of  application  releases  continue  to  increase  as  
businesses  adapt  to  new  economic  conditions.  
• Responsiveness  to  the  business  and  operational  efficiencies  are  the  value  
drivers  
• Manual  deployments,  poor  collaboration  between  teams,  and  lack  of  control  
lead  to  poor  quality  releases  at  a  high  cost
• High  levels  of  performance  demands  an  agile  and  lean  approach
• Automation  is  the  quickest  route  to  high  performance
• Quick  wins  and  continuous  improvement  trumps  big  bang  rollouts
26
References
27
27
Thank	
  You

Leveraging DevOps Principles for Release and Deploy

  • 1.
    1 Copyright   © Serena   Software   2015 Leveraging  DevOps Principles  for  Release  and  Deploy 2013Mark  Levy,  Product  Marketing  Manager   Mark  Levy,  Serena  Software
  • 2.
    2 2 The  Problem This  is a  software-­ powered  world Agile  development   has   increased  the  pace  of   innovation But  has  just  pushed  the   bottleneck  down  to  IT   Operations
  • 3.
    3 3 OpsDev Mix  in  Differing Organizational  Goals
  • 4.
    4 Slow,  Costly  and Error-­Prone  Application  Releases Poor  release  quality  due  to   ineffective  hand-­offs between  Dev  and  Ops Global  Commercial  Bank Time  consuming  and   error-­prone  manual deployments   Human  errors  deploying  to   100  servers,  no  standard   process and  no  audit  trail Global  Insurer Regional  Retailer 50% of  companies  are   dissatisfied with  key  portions  of   their  release  management   process 95% of  IT  organizations  lack  a   centralized  release  management   process…and  this  contributes   up  to  80% of  production  defects Forrester  Research Gartner Lost  $440M  in  45  minutes Stalled  commuter  trains  for  3   hours Knight  Capital BART
  • 5.
  • 6.
    6 Silo’s  Are  Walls of  Isolation Release  Management Release   Policy Release   Planning SDLC Build  and   Configure   Release Quality   Review Roll  Out   Plan Implement   Release Verify   Release Accept   Release
  • 7.
    7 Burn  the  Silo?   How  do  you  not  burn  the  business?
  • 8.
    8 8 How  to  Start – The  Mantra   • What  matters  to  the  business • Define  and  measure  success • See  the  system  and  follow  the  flow   • Eliminate  waste • Create  a  culture  of  continuous   improvement • Apply  Agile  and  DevOps principles • Implement  Incremental  changes • Deliver  quick  wins
  • 9.
    9 9 What  Matters  to the  Business? • Yes,  go  ask  the  people • Gain  visibility  and  insight  into  the   business   • Align  your  objectives  to  the   objectives  of  the  business • Agree  on  metrics  to  messure
  • 10.
    10 How  Responsive  are you  to  the  Business? • Where  do  you  start  to  improve? • How  do  you  measure  success? • Average  cycle  time  for  moving  a  business   request  from  Development  to  Production? • Number  of  business  requests  implements  this   week,  month,  year? • Cost  of  moving  a  unit  of  change  through  your   application  lifecycle? • Percentage  of  a  release  focused  on  technical   debt? • Percentage  of  a  release  focused  on  innovation? • Develop  metrics  to  support  what  matters  to  the   business
  • 11.
    11 11 See  the  System and  Follow  the  Flow   • Business  request  to  the  production • Detailed  picture  of  your  current  process • Follow  the  flow  of  information  and  artifacts • Where  does  your  deployable  assets  reside? • Identify  feedback  loops  required
  • 12.
    12 12 Simplify  the  Process and  Eliminate  Waste • Look  for  ways  to  optimize  throughput • Simplify  process • Lean  Methodologies – Value  Stream  Mapping – Timeline  Analysis – Waste  Analysis   • Financial  Cost  Accounting
  • 13.
    13 13 Lean  In  and Then  Lean  Out
  • 14.
    14 Continuous  Delivery:  Goal and  Principles • Create  a  repeatable,  reliable  process  for  releasing  software • Automate  almost  everything • Keep  everything  in  version  control • If  it  hurts,  do  it  more  frequently • Build  quality  in   • Done  means  released • Everyone  is  responsible  for  the  delivery  process “To  find  ways  to  deliver  high-­quality,  valuable  software  in  an  efficient,  fast,   and  reliable  manner.”
  • 15.
    15 Create  a  Repeatable and  Reliable  Release  Process • Single  system  of  record   for  release  planning  and   execution – Updated  in  real-­time – Schedules – Milestones – Gates  and  Approvals • Automatic  cycle-­time   capture • Ensure  audit  trails  for   compliance  and  learning
  • 16.
  • 17.
    17 Release  Management • We align  to  Change  Management • We  plan  and  manage  long  term  Releases • We  can  document  and  demonstrate   traceability  and  compliance… A  “Release”  Method  Needs  to  Support  Different  Modes Continuous  Delivery • We  align  to  Change  Management • We  can  automate  continuous  Releases • We  can  build  traceability  compliance  in…
  • 18.
    18 Select  a  Release Method  for  each  “Modal”  Application • Change  Approval  Method   • Artifact centric  – aligns  to  Continuous  Delivery • Deployment  artifacts linked  to  RFC  for  Approval • Sometimes  only  created  for  Production  deployments • Release  Package  Method • Artifact/Process  centric  – evolves  Continuous  Delivery  for  the  Enterprise • Release  Packages  linked  to  Deployment  artifacts • Release  Packages  models  Path  to  Production  through  Deployment  Pipelines • Release  Train  Method • Process  centric  – aligns  to  ITIL/Service  Transition  Release  Management • Release  Trains  are  planned/scheduled  and  deployed  through  Release  Packages • Release  Planning,  Deployment  Planning,  Change  Management RFC Artifacts Release   Package Artifacts Deployment   Pipeline Release   Package Artifacts Release   Package Artifacts Release   Train
  • 19.
    19 Manage  Environments • Improve availabiliy and  readiness  of  environments • Calendar  shows  environment  contention  and   availability  issues • Process  drives  environment  provisioning,   management,  and  decommissioning • Automatic  notification  of  environment  readiness  and   status  changes
  • 20.
    20 20 Eliminate  Inefficient  Deployment Processes • Define,  build,  orchestrate  and  manage  all   deployment  turnovers  and  tasks   • Capture  environment  and  deployment  tribal   knowledge  in  a  “runbook” • Formalize  packaging  and  process  of  the  handoff • Same  set  of  semantics • Eliminate  “million  dollar”  release  meetings
  • 21.
    21 21 Automate  Almost  Everything •People  should  not  move    the  “bits” • Automate  code  and  config deployments  with  a   single  set  of  deployment  processes  across  all   environments • All  preprod deployments  should  be  rehearsals   for  the  final  deploy  into  prod • Use  common  tools  across  all  environments • Quick  incremental  wins  with  big  impact
  • 22.
    22 Keep  Everything  in Version  Control • Version  control  everything • Include  infrastructure  and  configuration  code • Aggregate  assets  into  a  single  source  of  the  truth • Should  reside  in  a  secure  repository
  • 23.
    23 Make  Gates  and Approvals  Visible • Establish  minimum  entrance  requirements  to   an  environment • Consider  applying  more  rigor  to  higher  level   environments • Auto-­revert/gated  commits   • Ensure  mitigation  plans  to  pull  stories/changes   from  a  release
  • 24.
    24 24 Integrate  Release  and Deployment  Toolchains • Process  and  Artifacts  transition  across   tools • Seamless  integration  of  the  deployment   pipeline • Plug-­in  architecture  to  abstract  tool   implementations • Integration  with  change,  configuration   and  ITSM  solutions
  • 25.
    25 Summary • Velocity  and Complexity  of  application  releases  continue  to  increase  as   businesses  adapt  to  new  economic  conditions.   • Responsiveness  to  the  business  and  operational  efficiencies  are  the  value   drivers   • Manual  deployments,  poor  collaboration  between  teams,  and  lack  of  control   lead  to  poor  quality  releases  at  a  high  cost • High  levels  of  performance  demands  an  agile  and  lean  approach • Automation  is  the  quickest  route  to  high  performance • Quick  wins  and  continuous  improvement  trumps  big  bang  rollouts
  • 26.
  • 27.