using lean thinking to identify and address delivery pipeline bottlenecks
DESCRIPTION
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks: This session explores 'Lean Thinking' techniques to help identify 'bottlenecks' in your delivery pipeline that can be addressed by adopting DevOpsTRANSCRIPT
© 2013 IBM Corporation
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks Sanjeev Sharma IBM WW Lead, DevOps Technical Sales @sd_architect
Systems of Record
Systems of Interaction
Continuous client experience
Partner value chain
Cloud-based Services
Systems of Engagement
Inefficient software delivery impacts the entire business
of customers experience
production delays
>45%
of outsourced projects fail to meet
objectives
>50%
of budgets devoted to maintenance and
operations
>70%
to deliver even minor application changes to
customers
4-6 weeks
DEVELOPMENT/TEST Speed mismatch between faster moving front office and slower moving back office systems, delaying time to obtain feedback
SUPPLIERS Delivery in the context of agile
OPERATIONS Rapid app releases impact system stability and compliance
LINE-OF-BUSINESS Takes too long to introduce or make changes to mobile apps and services
CRM HR
DB ERP
3
Customers now control the pace of technology adoption cycles
Your customer: Geoffrey Moore “Crossing the Chasm” in 2014
4 – 6 months
Your company: Geoffrey Moore “Crossing the Chasm” circa 1991
2 – 3 years
Days <10%
Quarters 35%
Months
40%
Weeks
15%
6-12 Month Delivery Cycles Are Still the Norm
Delivery cycle profile across 600 business enterprises
Feedback cycles
Source--The New Software Imperative: Fast Delivery With Quality: 8 DevOps Practices Hold The Key To Success A Forrester Consulting Thought Leadership Paper Commissioned By IBM, August 2014
Moving from Months to Weeks is a challenge
© 2014 Forrester Research, Inc. Reproduction Prohibited 11"
12+"months" 6,11"months"
3,5"months"
1,2"months"
1,3"weeks" Days"
Waterfall"
Water,SCRUM,fall"
TradiAonal"pracAces"hit"a"barrier"to"faster"
delivery"
"""Degree"o
f"Risk
"_"
""Delivery"Cycle"Times_"
DevOps"pracAces"and"tooling"are"essenAal"to"fast"delivery"with"low"failure"risk"
DevOps approach: Apply Lean principles accelerate feedback and improve time to value
Line-of-business
Customer
1
3
2
1. Get ideas into production fast 2. Get people to use it 3. Get feedback
Non-Value-added waste Value-added production work
Lean Transformation
http://ibm.co/devopsfordummies
Leverage feedback across the Delivery Pipeline to Continuously Improve: I. Application Delivered
II. Environment Deployed
III. Application and Environment Delivery Process
DevOps == Continuous Improvement"
IBM DevOps Adoption Model Practices, tools and services to plan and execute a staged adoption of DevOps to improve business outcomes
Feedback Cycles
Productive Waste
Efficiency
Steer Product-based
Agile
Automated
Collaborative
Optimizing
More Predictable
More Transparent
More Continuous
Process-based
Process-heavy
Manual
Silo-ed
Develop/Test
Deploy
Operate
Inefficient Leaner Leaner and Smarter
9
The Big Sources of Wasted Efforts: Find the Hidden Factory
Type of Waste Create Feature Deliver Feature Unnecessary Overhead
Communicating ideas/knowledge Communicating between development and operations
Unnecessary Re-work
Tasks assigned back to developers from testing and usage
Tasks assigned back to developers from production rollbacks
Over-production
Unnecessary functionality produced Unnecessary hardware, data center, personnel
Non-Value-added waste Value-added production work
Lean Transformation
What is Overhead? vs What is Productive?
Fat efforts to minimize Waiting Training
Reporting Traceability Late rework
Duplicate efforts Metrics collection
Regression testing Change propagation Document generation Meetings/Checkpoints System administration Resource accounting Human inspections
Streamline or automate
More valuable efforts to improve Scoping Learning Feedback
Refactoring Designing Teaming Coding Testing
Planning Engineering Empowering Prediction Deciding Steering
Facilitate or smarten
Priorities of Indian Global System Integrators
Fat efforts to minimize
Late rework Waiting
Regression testing Duplicate efforts
Reporting Document generation
Training Metrics collection
Change propagation Traceability
Human inspections Meetings/Checkpoints System administration Resource accounting
Streamline or automate
More Valuable efforts to improve
Scoping Designing Planning Testing Reusing Deciding Steering Feedback Coding
Prediction Engineering
Learning Teaming
Refactoring
Facilitate or smarten
Eight DevOps Macro Practices
1. Deliver in small increments of functionality.
2. Form dedicated, cross-functional teams.
3. Use loose coupling between applications.
4. Automate environment provisioning.
5. Continuously integrate code.
6. Continuously test.
7. Continuously fund.
8. Provide real-time transparency. Source--The New Software Imperative: Fast Delivery With Quality: 8 DevOps Practices Hold The Key To Success A Forrester Consulting Thought Leadership Paper Commissioned By IBM, August 2014
§ Throughput of each process must be the equal in order to avoid backlogs.
§ When preceding process is upgraded to a higher throughput, subsequent processes must be upgraded to the same higher throughput in order to maintain balance.
Optimize pipeline with an even flow end to end"
Steer the Product Pipelines
IBM Confidential
Value accrues as product artifacts evolve, NOT by effort expended or by progress in supporting artifacts
Ideas
Tradeoffs
Delivered
Simple Instrumenta5on: Time: Volume: Cycle 'me Batch size Change speed Queue size Queue 'me Throughput
• Minimize wai5ng in backlog queues • Op5mize work in progress • Adjust capacity and flow
Validate
Build
Proposed
Understood
Verified
Certified
DevOps Adoption: Address bottlenecks in the Delivery Pipeline
Develop / Test
Deploy Steer Operate
Collaborative Development
Continuous Release and Deployment
Continuous Testing
Business Owner
Service Developer/Tester
Service Operations
Target Customer
Idea Market
DevOps
Continuous Business Planning
Continuous Monitoring
Lean and Agile principles
Continuous feedback and Optimization
Identify Delivery Pipeline
Bottlenecks
Map your Bottlenecks
Idea/Feature/Bug Fix/ Enhancement
Production
Development Build QA SIT UAT Prod
PMO
Requirements/ Analyst
Developer
Customers Line of Business
Build Engineer
QA Team Integration Tester User/Tester Operations
Artifact Repository
Deployment Engineer
Release Management
Code Repository
Deploy
Get Feedback
Infrastructure as Code/ Cloud Patterns
Feedback
Customer or Customer Surrogate
Metrics - Reporting/Dashboarding
Tasks
Artifacts
§ The adoption of DevOps == increased velocity of application delivery
§ Puts pressure on the infrastructure to respond more quickly
§ Software Defined Environments enable you to capture infrastructure as a software artifact
Deploying Infrastructure is the biggest bottleneck for the Delivery Pipeline "
Application !Changes!
Infrastructure!Changes!
Deployment Automation
Blueprint
Application Resource Template
Continuous Delivery to Cloud
§ Capture cloud pattern to be used for creating an Environment
§ Incremental deployment of application builds to cloud environments
§ Map the application to multiple cloud patterns
The freedom to provision a version of a full stack or incrementally deploy an application version into an already provisioned environment
Environments | Processes | Configurations
Create env from pattern
Deploy app
QA PROD DEV DEV DEV DEV
Utilize Cloud Environment
pattern
Cloud Platform
Implementing ‘Full Stack’ Continuous Delivery: IBM UrbanCode Deploy with Patterns"
Components
Infrastructure Specialists develop and update reusable building blocks for application environment patterns 1
Application Pattern
Architects and Integrators design and update application environment patterns from building blocks targeting cloud platform
2
Building Blocks
3
Release Engineers leverages the application environment patter to create and manage a multi-stage continuous delivery pipeline
4Application Developers and Testers can test the application changes for in a production-like environment
Des
ign
Tem
plat
es
Dep
loy
Tem
plat
es
vSys, vApp
Application
Middleware Config
Middleware
OS Config
Hardware
20
Building a DevOps Culture • Everyone is responsible for Delivery
• Common measures of Success
• Right People are needed
Product Owner
Team Member
Team Lead
Team Member
Team Member
Senior Executives
Users Domain Experts
Auditors
Gold Owner Support Staff
External System Team
Operations Staff
Above all - it’s all about the People/Culture
People
21
22 22
Solution components Software § IBM® UrbanCode™ Deploy
Gained more predictable release schedules for stakeholders
Achieved cost avoidance of more than USD2.3 million per year
Improved the ability to demonstrate compliance with regulations
“Applications that took days to release now take just an hour.”
— Tony Green, Technology, Architecture and Engineering, Fidelity Worldwide Investment
The transformation: As it prepared to launch a critical new application, Fidelity Worldwide Investment wanted to replace its manual release processes with an automated release solution. The solution helped reduce the time required for software releases by 99 percent, from 2 - 3 days to just 1 - 2 hours. The company also achieved cost avoidance of more than USD2.3 million per year.
Fidelity Worldwide Investments Achieves predictable release schedules and simplifies regulatory compliance
IBM Software – Case Study - Financial Services
Enterprise systems
23
88% reduction in production incidents Identified and resolved defects earlier in the release cycle
100% increase in team productivity Doubled the division’s project delivery capacity from 40 to 80 projects
Tens of millions in new revenue generated Increased agility to seize new market opportunities
“IBM’s service virtualization and test automation solutions enabled our banking client to embrace an agile, DevOps approach and perform integration testing continuously throughout the development process. They recouped their IBM investment in less than three months.”
— Gary Thornhill, Delivery Director Sandhata Technologies Ltd
Sandhata accelerates software delivery and improves competitiveness with continuous testing Adoption path: Develop/Test
Continuous Testing
24
Compact releases better matched to customer expectations
Zero maintenance window downtime through continuous availability
Reduced delivery cycles from nine weeks to three weeks
“DevOps helps us achieve continuous delivery and deliver continuous value.”
— Carl Kraenzel, Director of the Watson Managed services group, IBM Distinguished Engineer, IBM
DevOps approach speeds IBM Watson solutions to market Adoption path: Develop/Test
Collaborative Development
Lifecycle Measurements 2008 2010 2012 – 2014 Total Improvement
Project Initiation 30 days 10 days 2 days 28 days
Groomed Backlog 90 days 45 days On-going 89 days
Overall Time To Development 120 days 55 days 3 days 117 days
Composite Build Time 36 hours 12 hours 5 hours 700 %
BVT Availability N / A 18 hours < 1hour 17 hours
Iteration Test Time 5 days 2 days 14 hours 4 days
Total Deployment Time 2 days 8 hours 4 hours -> 20 minutes
2 days
Overall Time To Production 9 days 3 days 2 days 7 days
Time Between Releases 12 Months 12 Months 3 Months 9 Months
Innovation / Maintenance 58% / 42% 64% / 36% 78% / 22% +20% / -20%
Double-digit revenue growth, increased client adoption, improved client satisfaction
25
How IBM Rational Cloud Hosted Products have improved!