DT2
Concurrent	Session	
11/12/15	11:30am	
	
	
	
“Advance ALM and DevOps Practices with
Continuous Improvement”
	
	
Presented by:
Jason St-Cyr
Nonlinear Digital
	
	
	
	
Brought	to	you	by:	
	
	
	
340	Corporate	Way,	Suite	300,	Orange	Park,	FL	32073	
888-268-8770	·	904-278-0524	·	info@techwell.com	·	www.techwell.com
Jason St-Cyr
Nonlinear Digital
Jason St-Cyr is a solution architect with more than fifteen years of experience in the software
development field. His primary focus is in ALM, Sitecore, infrastructure, system integrations,
software architecture, and stopping slap shots. Having spent his career delivering .NET
solutions with a focus on quality assurance, deployment processes, and ALM tools, Jason’s
past four years have brought his experience to Sitecore solutions as a consultant with Nonlinear
Digital. At Sitecore Symposium 2014 Jason was part of the team at the launch of the
development accelerator Keystone for Sitecore. Follow Jason on his Error! Hyperlink
reference not valid. or on Twitter @AgileStCyr.
WE’RE ABOUT TO START…
EVOLVING DEVOPS
ADVANCE ALM AND DEVOPS PRACTICES WITH
CONTINUOUS IMPROVEMENT
Hello, my name is Jason.
Solution Architect.
Sitecore, ALM, and DevOps
consultant.
Stopper of slapshots.
Dad.
01Why is it so hard to improve?
03 Build
04 Measure
05 Learn
06 Questions?
02 Continuous Improvement
THE DEVOPS CHALLENGE
WHY IS IT SO HARD TO IMPROVE?
SOMETIMES THINGS BREAK…
… and it was most definitely your fault.
Conflicting Priorities
Development Operations
It’s not working…
Enhancing DevOps processes and tools across multiple
teams is HARD TO DO!
Big bang solutions receive LOW ADOPTION RATES.
Planning organization-wide change TAKES TOO LONG.
We don’t know what is going to work for us!
CONTINUOUS IMPROVEMENT
“THIS SUCKS.
I CAN DO BETTER.”
- Every developer ever.
Lean DevOps Improvement
Lean approach: Build, Measure, Learn.
Improve processes and tools:
• Processes define how we deliver software
• Tools support our delivery process
IMPORTANT: Always minimize waste!
CONTINUOUS IMPROVEMENT
Where do we need to improve?
Improve processes Improve tools
Can we better use our tools?
Did we forget someone?
Are there low-value ‘taxes’ on
the teams?
What do we need to report?
What are the pain points?
Are tools reaching end-of-life?
Can teams share data?
Can we get the data needed
for reporting?
How do we improve?
1. Identify and prioritize
potential changes.
2. Make a change and
observe the impact.
3. Adjust and make
another change.
Ideas
Build
Product
Measure
Data
Learn
Maturity Model
Automated Build
Source Control
Branching Strategy
Continuous
Integration
Data Model Change
Tracking
Automated Deploy to
Test environments
Test Case
management
Bug tracking
Requirements
Tracking
Unit Testing
Security Testing
Accessibility Testing
Automated Browser
Testing
Automated
Regression Tests
Automated
Performance Tests
Infastructure As Code
Continuous Delivery
Continuous
Deployment
Automated Server
Patching
Continuous
Monitoring
Monitoring tools
Cloud Deployments
Clustered
Deployments
Automated Prod
Deployments
Automated Prod
Deployment Package
Release Management
Real-time Reports
Automated Backups
Automated
Rollbacks/Restores
Generated Release
Notes
Release Notes
Status Reports
Maturity Model Download
Get it today at:
https://theagilecoder.wordpress.com/devopseast
How do we plan for the change?
Identify:
• What is currently wrong?
• Where are we trying to go?
• Who will be impacted?
• Are there any constraints on
the changes we can make?
Automated Build
Source Control
Branching Strategy
Continuous
Integration
Data Model Change
Tracking
Automated Deploy to
Test environments
Test Case
management
Bug tracking
Requirements
Tracking
Unit Testing
Security Testing
Accessibility Testing
Automated Browser
Testing
Automated
Regression Tests
Automated
Performance Tests
Infastructure As Code
Continuous Delivery
Continuous
Deployment
Automated Server
Patching
Continuous
Monitoring
Monitoring tools
Cloud Deployments
Clustered
Deployments
Automated Prod
Deployments
Automated Prod
Deployment Package
Release Management
Real-time Reports
Automated Backups
Automated
Rollbacks/Restores
Generated Release
Notes
Release Notes
Status Reports
Pick and choose
Sample pilot plan
MAKING THE PLAN
2 weeks 2 weeks
Interviews
Source
Control
2016
Design Build DevOps Improvement Pilots
Continuous
Integration
Automated
Deployments
Automated
Regression
Tests
Production
MonitoringImplement
WE CAN DO BETTER
We have a plan, but…
“PREDICTING RAIN
DOESN’T COUNT.
BUILDING ARKS DOES.”
BUILD
- Warren Buffett
Implementing Improvement
Pilot all process & tool
improvements with smaller
team. Include everyone!
• Business, Development, Test,
Operations
Eliminate variables, use small
incremental changes.
Give sufficient time for
analysis of change.
Forming
• Team tries to adopt change
Storming
• Change raises challenges
Norming
• Team has adapted to change
Performing
• Change improves performance
TOOLS REVIEW
Trello
www.trello.com
Atlassian JIRA
www.atlassian.net
TeamCity
www.jetbrains.com/teamcity
Visual Studio Online
www.visualstudio.com
WE CAN DO BETTER
We’ve changed, but…
“WHAT’S MEASURED
IMPROVES.”
MEASURE AND LEARN
- Peter F. Drucker
Why do we need metrics?
Enforce a goal-oriented
plan.
Analyze change over time.
Build trust through data.
Support telling your story
to stakeholders.
A WORD OF CAUTION
Use metrics for process
evaluation.
Not employee evaluation.
Reporting on Progress
Produce a bar chart.
Red/Green/Yellow status
against plan.
Wow. This sounds boring.
When does this meeting
end?
Gather data and report at
regular intervals.
Focus on:
What did we change?
What did we learn?
The only failure is not
doing something.
Reporting on Success
4 metrics for measuring success
• Impact: Short and rapid path for fixes to production.
Mean Time to Recover
(MTTR)
• Impact: Smaller batches and optimized requirements
and testing processes.
Lead time
• Impact: Smaller low-risk changes deployed more often.
Deployment Success
Percentage
• Impact: Processes support smaller, parallel projects.
Projects Completed per
Quarter
What do the metrics tell us?
Delivery improved? Delivery degraded?
Was the cost too high?
Keep change but introduce
refinements to lower cost,
address Deltas from
retrospective.
Were there any Plus results
in the retrospective?
Remove the change and
introduce a new change
that preserves positive
aspects.
Continue Improving!
Ideas
Build
Product
Measure
Data
Learn
THANK YOU
Questions?
Jason St-Cyr
jst-cyr@nonlinear.ca
@AgileStCyr
theagilecoder.wordpress.com
REMEMBER
We can do better.

Advance ALM and DevOps Practices with Continuous Improvement

  • 1.
    DT2 Concurrent Session 11/12/15 11:30am “Advance ALM andDevOps Practices with Continuous Improvement” Presented by: Jason St-Cyr Nonlinear Digital Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 · 904-278-0524 · info@techwell.com · www.techwell.com
  • 2.
    Jason St-Cyr Nonlinear Digital JasonSt-Cyr is a solution architect with more than fifteen years of experience in the software development field. His primary focus is in ALM, Sitecore, infrastructure, system integrations, software architecture, and stopping slap shots. Having spent his career delivering .NET solutions with a focus on quality assurance, deployment processes, and ALM tools, Jason’s past four years have brought his experience to Sitecore solutions as a consultant with Nonlinear Digital. At Sitecore Symposium 2014 Jason was part of the team at the launch of the development accelerator Keystone for Sitecore. Follow Jason on his Error! Hyperlink reference not valid. or on Twitter @AgileStCyr.
  • 3.
    WE’RE ABOUT TOSTART… EVOLVING DEVOPS ADVANCE ALM AND DEVOPS PRACTICES WITH CONTINUOUS IMPROVEMENT
  • 4.
    Hello, my nameis Jason. Solution Architect. Sitecore, ALM, and DevOps consultant. Stopper of slapshots. Dad. 01Why is it so hard to improve? 03 Build 04 Measure 05 Learn 06 Questions? 02 Continuous Improvement
  • 5.
    THE DEVOPS CHALLENGE WHYIS IT SO HARD TO IMPROVE? SOMETIMES THINGS BREAK… … and it was most definitely your fault.
  • 6.
    Conflicting Priorities Development Operations It’snot working… Enhancing DevOps processes and tools across multiple teams is HARD TO DO! Big bang solutions receive LOW ADOPTION RATES. Planning organization-wide change TAKES TOO LONG. We don’t know what is going to work for us!
  • 7.
    CONTINUOUS IMPROVEMENT “THIS SUCKS. ICAN DO BETTER.” - Every developer ever. Lean DevOps Improvement Lean approach: Build, Measure, Learn. Improve processes and tools: • Processes define how we deliver software • Tools support our delivery process IMPORTANT: Always minimize waste! CONTINUOUS IMPROVEMENT
  • 8.
    Where do weneed to improve? Improve processes Improve tools Can we better use our tools? Did we forget someone? Are there low-value ‘taxes’ on the teams? What do we need to report? What are the pain points? Are tools reaching end-of-life? Can teams share data? Can we get the data needed for reporting? How do we improve? 1. Identify and prioritize potential changes. 2. Make a change and observe the impact. 3. Adjust and make another change. Ideas Build Product Measure Data Learn
  • 9.
    Maturity Model Automated Build SourceControl Branching Strategy Continuous Integration Data Model Change Tracking Automated Deploy to Test environments Test Case management Bug tracking Requirements Tracking Unit Testing Security Testing Accessibility Testing Automated Browser Testing Automated Regression Tests Automated Performance Tests Infastructure As Code Continuous Delivery Continuous Deployment Automated Server Patching Continuous Monitoring Monitoring tools Cloud Deployments Clustered Deployments Automated Prod Deployments Automated Prod Deployment Package Release Management Real-time Reports Automated Backups Automated Rollbacks/Restores Generated Release Notes Release Notes Status Reports Maturity Model Download Get it today at: https://theagilecoder.wordpress.com/devopseast
  • 10.
    How do weplan for the change? Identify: • What is currently wrong? • Where are we trying to go? • Who will be impacted? • Are there any constraints on the changes we can make? Automated Build Source Control Branching Strategy Continuous Integration Data Model Change Tracking Automated Deploy to Test environments Test Case management Bug tracking Requirements Tracking Unit Testing Security Testing Accessibility Testing Automated Browser Testing Automated Regression Tests Automated Performance Tests Infastructure As Code Continuous Delivery Continuous Deployment Automated Server Patching Continuous Monitoring Monitoring tools Cloud Deployments Clustered Deployments Automated Prod Deployments Automated Prod Deployment Package Release Management Real-time Reports Automated Backups Automated Rollbacks/Restores Generated Release Notes Release Notes Status Reports Pick and choose
  • 11.
    Sample pilot plan MAKINGTHE PLAN 2 weeks 2 weeks Interviews Source Control 2016 Design Build DevOps Improvement Pilots Continuous Integration Automated Deployments Automated Regression Tests Production MonitoringImplement WE CAN DO BETTER We have a plan, but…
  • 12.
    “PREDICTING RAIN DOESN’T COUNT. BUILDINGARKS DOES.” BUILD - Warren Buffett Implementing Improvement Pilot all process & tool improvements with smaller team. Include everyone! • Business, Development, Test, Operations Eliminate variables, use small incremental changes. Give sufficient time for analysis of change. Forming • Team tries to adopt change Storming • Change raises challenges Norming • Team has adapted to change Performing • Change improves performance
  • 13.
    TOOLS REVIEW Trello www.trello.com Atlassian JIRA www.atlassian.net TeamCity www.jetbrains.com/teamcity VisualStudio Online www.visualstudio.com WE CAN DO BETTER We’ve changed, but…
  • 14.
    “WHAT’S MEASURED IMPROVES.” MEASURE ANDLEARN - Peter F. Drucker Why do we need metrics? Enforce a goal-oriented plan. Analyze change over time. Build trust through data. Support telling your story to stakeholders.
  • 15.
    A WORD OFCAUTION Use metrics for process evaluation. Not employee evaluation. Reporting on Progress Produce a bar chart. Red/Green/Yellow status against plan. Wow. This sounds boring. When does this meeting end?
  • 16.
    Gather data andreport at regular intervals. Focus on: What did we change? What did we learn? The only failure is not doing something. Reporting on Success 4 metrics for measuring success • Impact: Short and rapid path for fixes to production. Mean Time to Recover (MTTR) • Impact: Smaller batches and optimized requirements and testing processes. Lead time • Impact: Smaller low-risk changes deployed more often. Deployment Success Percentage • Impact: Processes support smaller, parallel projects. Projects Completed per Quarter
  • 17.
    What do themetrics tell us? Delivery improved? Delivery degraded? Was the cost too high? Keep change but introduce refinements to lower cost, address Deltas from retrospective. Were there any Plus results in the retrospective? Remove the change and introduce a new change that preserves positive aspects. Continue Improving! Ideas Build Product Measure Data Learn
  • 18.