SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Pushing the bottleneck
Predicting what will break next in your SDLC
Lead Consultant & Tech Evangelist
Eric is Lead Consultant at IBM
UrbanCode Products where I help
customers get the most out of their
build, deploy and release processes.
Today he works with customers and
industry leaders to figure out this
DevOps thing.
Eric Minick
eminick@us.ibm.com
@EricMinick
The plan
 Theory of constraints in a nutshell
 Finding bottlenecks
 Predicting the next bottleneck
 Common bottleneck pushing patterns
 Q&A
Theory of constraints
in a nutshell
A bottleneck is a constraint
Maximum
pouring speed
Only by increasing flow through the constraint
can overall throughput be increased*
Making the bottle
wide down here does
not help
* The Goal: a process of ongoing improvement. Goldratt eta al
Optimize at your constraint
Can pour faster now
Your system must have a measureable goal
My goal is to empty a
wine bottle quickly
Simplified five step plan
1. Identify the system’s most severe constraint
2. Decide how to get the most out of the constraint
3. Subordinate everything else to the above constraint
4. Make changes to expand constraint’s capacity
5. Once constraint is relieved, return to step 1
Example: Slow QA cycles
1. Identify the system’s most
severe constraint
2. Decide how to get the most
out of the constraint
3. Subordinate everything else
to the above constraint
4. Make changes to expand
constraint’s capacity
5. Once constraint is relieved,
return to step 1
1. It takes too long to test our
changes. Everyone else waits
2. Testers should focus on
exploratory testing
3. Devs help with regression
tests. Ops prioritizes QA.
4. Dev & QA work together to
automate regression tests
5. Find the next bottleneck
Wait, what’s our goal in software?
 Generally: turn ideas into business
value
 Measuring “business value” hard
Emptying wine bottles only relevant if dev speed is the constraint
and you believe in the Ballmer Peak (http://xkcd.com/323/)
?
Wait, what’s our goal in software?
 Generally: turn ideas into business
value
 Measuring “business value” hard
 Features delivered minus bugs is a
decent approximation
– …but rewards building useless features.
Emptying wine bottles only relevant if dev speed is the constraint
and you believe in the Ballmer Peak (http://xkcd.com/323/)
?
Three key measures
 Lag time: how long from idea to value?
 Throughput: how much delivered value
per unit time?
 Cost: what does it cost to deliver value?
?
Finding the bottlenecks
Most teams can feel the constraint
 What are you waiting on?
 Where’s the pain?
Constraints before you in a
process feel like not enough
work.
Constraints after you in a
process are annoying or
painful
If it hurts, do it more often
 Painful processes often grow
exponentially worse with large
batch sizes.
 Examples
– Integration work
– Releases
– Bug Triage
– Updating databases
– Visiting the dentist
http://martinfowler.com/bliki/FrequencyReducesDifficulty.html
Time between doing it
Pain
Use Lean techniques to measure
 What does it take to get a change from idea to production?
–At each phase measure wait time and work time
 Long wait times indicate large batch sizes or backlogs
image credits: http://commons.wikimedia.org/wiki/File:Diagram_spaghetti_kilka_produktow.PNG
http://www.michaelnygard.com/blog/2008/02/outrunning_your_headlights.html
Manual fix & verify spaghetti
Bug fix & verify value stream
720
3600
240
2880
720
3600
240
15
15
120
60
15
15
60
Waiting Working
12000 300
1. Feature build
2. Build deployed
3. Bug reported
4. Dev fixes
5. Fix built
6. Fix deployed
7. Tester verifies
Seeing the “next” bottleneck
QA Scenario
Dev
Produces a
nightly build
Twice weekly,
2 hour deploy
to Test Lab
3 Days to test
each drop
Dev
produces a
nightly build
Twice weekly,
2 hour deploy
to Test Lab
1.5 Days to test
each drop
If we improve test speed, our constraint moves.
Examining a constraint
• Manual process
• Limited staff
• Production releases have priority
Why can we only deploy twice a
week to QA?
Tackling the constraint
• Manual process
• Limited staff
• Production releases have priority
Why can we only deploy twice a
week to QA?
• Automate processes
• Hire more staff
• Prioritize QA Releases
Options
Imagine a 1 day test cycle
Dev
produces a
nightly build
2 hour
deploy to
Test Lab
1.0 Days to
test each
drop
¼ day deploy downtime becomes turns 1 day test cycle into
two days.
Tackling the constraint
• Manual process
• Limited staff
• Production releases have priority
Why can we only deploy twice a
week to QA?
• Automate processes
• Hire more staff
• Prioritize QA deploys
Options
Short term approach
Long term approach
Measuring utilization helps with this prediction
 “Feeling” the pain isn’t enough to predict the next constraint
 There may be no pain at the next constraint today
When something is free, it is used more
 Example: Amazon Prime. For $79/yr, customers get free 2
day shipping on everything.
“…Customers spent as much as 150% more at
Amazon after they became Prime members.
Subscribers not only ordered more often … they
started buying things at Amazon that they
probably wouldn’t have in the past” *
* http://business.time.com/2013/03/18/amazon-prime-bigger-more-powerful-more-profitable-than-
anyone-imagined/
Consider implications of making something free
If builds, deploy, regression tests are free…
We’re going to be
testing lots more.
Better buy some
hardware.
Common “next bottleneck” patterns
After build, deploy is next
 Build guy & deploy guy
used to be in sync
 A CI server can do
hundreds of builds per day
 Agile tends to make
Operations a constraint
Knowing my stuff
compiles at all times is
great. I want to know if
it passes functional
tests too.
As tests shift left, expensive tests constrain
 Developers run more integration tests
 Some tests use expensive resources
–pay per use web services, mainframes, production systems…
 Stubbing those resources becomes important
– known as “service virtualization”
Concurrent agile dev requires more test labs
 More code is compiling, and set to be released “soon”
 Need more environments to test changes in
– Pressure for Platform as a Service
Frequent releases demand fast feedback
 Frequent releases enable experimentation
 Monitoring of business outcomes required
 Architectural pressures to support A/B testing
♫
Stop ignoring difference
between features delivered
and value delivered
If we keep chasing constraints,
where does it end?
You may end up with Continuous Deployment
Build
Run thousands of tests
Deploy to some servers
Monitor
Deploy to remaining
servers
Summary
 Optimizations other than at the constraint don’t help
 “Breaking” one constraint will expose the next
 Patterns or analysis can be used to predict next constraint
 Continual Improvement, Continual Improvement, Continual
Improvement, Continual Improvement…
IBM will collaborate with you to
understand your current situation,
goals and constraints. The
Assessment and Planning
Workshop will aim to capture
sufficient information to make
specific recommendations for
improvement and implementation.
 Intended Audience:
Key leadership from practice areas and
stakeholder organizations
 Value Proposition
Clear recommendations for capability
improvements aligned to your business goals
Initial Architecture
Adoption roadmap based on proven best
practices
 Activities
Workshop planning
Assessment and Planning Workshop
Collaborative discussion on current status, future
goals and adoption requirements
Produce Deliverable
 Deliverables
Current Status and Improvement
Recommendations
Architecture
Adoption Roadmap
Assessment and Planning Workshop
More resources
Urbancode.com/resources
Continuous Delivery Maturity Model
Deployment Automation Basics
Applying Lean Principals to Software Delivery
Blogs.urbancode.com
Twitter.com/UrbanCode
Facebook.com/IBMUrbanCodeProducts
SlideShare.net/Urbancode
40
SlideShare.net/Urbancode
@EricMinick

Weitere ähnliche Inhalte

Was ist angesagt?

DevOps for the sysadmin
DevOps for the sysadminDevOps for the sysadmin
DevOps for the sysadminRobert Nelson
 
Introduction to continuous delivery
Introduction to continuous deliveryIntroduction to continuous delivery
Introduction to continuous deliveryOlympicSoftware
 
Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3
Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3
Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3Jason Yip
 
Lean and Kanban-based Software Development
Lean and Kanban-based Software DevelopmentLean and Kanban-based Software Development
Lean and Kanban-based Software DevelopmentTathagat Varma
 
Developing Quality Products Quickly through a Culture of CI/CD
Developing Quality Products Quickly through a Culture of CI/CDDeveloping Quality Products Quickly through a Culture of CI/CD
Developing Quality Products Quickly through a Culture of CI/CDPaul Hepworth
 
Understanding Kanban
Understanding KanbanUnderstanding Kanban
Understanding Kanbannikos batsios
 
The Bottleneck Game – Jad Harb
The Bottleneck Game – Jad HarbThe Bottleneck Game – Jad Harb
The Bottleneck Game – Jad HarbAgile Tour Beirut
 
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's  Next Gen Enterprise Devops Platform Webinar SlidesReleaseIQ's  Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar SlidesWayne Greene
 
Process management - managing quality, time by applyingthe theory of constrai...
Process management - managing quality, time by applyingthe theory of constrai...Process management - managing quality, time by applyingthe theory of constrai...
Process management - managing quality, time by applyingthe theory of constrai...InfoPerc/Te web
 
DevOps for Speed and Agility - DevOpsTO May 2014
DevOps for Speed and Agility - DevOpsTO May 2014DevOps for Speed and Agility - DevOpsTO May 2014
DevOps for Speed and Agility - DevOpsTO May 2014DevOps Ltd.
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous DeploymentBrian Henerey
 
Balance Demand Against Throughput: Kanban Recipe for Success Step 4
Balance Demand Against Throughput: Kanban Recipe for Success Step 4Balance Demand Against Throughput: Kanban Recipe for Success Step 4
Balance Demand Against Throughput: Kanban Recipe for Success Step 4Jason Yip
 
Continuously Delivering: Compress the time from committed to consumed
Continuously Delivering: Compress the time from committed to consumedContinuously Delivering: Compress the time from committed to consumed
Continuously Delivering: Compress the time from committed to consumedAtlassian
 
Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014
Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014
Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014Yuval Yeret
 
NextBuild 2015 - Swimming upstream in the container revolution
NextBuild 2015 - Swimming upstream in the container revolutionNextBuild 2015 - Swimming upstream in the container revolution
NextBuild 2015 - Swimming upstream in the container revolutionBert Jan Schrijver
 
The Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the JourneyThe Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the JourneyXebiaLabs
 
Software Development 2020 - Swimming upstream in the container revolution
Software Development 2020 - Swimming upstream in the container revolutionSoftware Development 2020 - Swimming upstream in the container revolution
Software Development 2020 - Swimming upstream in the container revolutionBert Jan Schrijver
 

Was ist angesagt? (20)

DevOps for the sysadmin
DevOps for the sysadminDevOps for the sysadmin
DevOps for the sysadmin
 
Introduction to continuous delivery
Introduction to continuous deliveryIntroduction to continuous delivery
Introduction to continuous delivery
 
Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3
Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3
Reduce WIP and Deliver Often: Kanban Recipe for Success Steps 2 and 3
 
Kanban VS Scrum
Kanban VS ScrumKanban VS Scrum
Kanban VS Scrum
 
Lean and Kanban-based Software Development
Lean and Kanban-based Software DevelopmentLean and Kanban-based Software Development
Lean and Kanban-based Software Development
 
Developing Quality Products Quickly through a Culture of CI/CD
Developing Quality Products Quickly through a Culture of CI/CDDeveloping Quality Products Quickly through a Culture of CI/CD
Developing Quality Products Quickly through a Culture of CI/CD
 
Understanding Scrum
Understanding ScrumUnderstanding Scrum
Understanding Scrum
 
Understanding Kanban
Understanding KanbanUnderstanding Kanban
Understanding Kanban
 
The Bottleneck Game – Jad Harb
The Bottleneck Game – Jad HarbThe Bottleneck Game – Jad Harb
The Bottleneck Game – Jad Harb
 
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's  Next Gen Enterprise Devops Platform Webinar SlidesReleaseIQ's  Next Gen Enterprise Devops Platform Webinar Slides
ReleaseIQ's Next Gen Enterprise Devops Platform Webinar Slides
 
Process management - managing quality, time by applyingthe theory of constrai...
Process management - managing quality, time by applyingthe theory of constrai...Process management - managing quality, time by applyingthe theory of constrai...
Process management - managing quality, time by applyingthe theory of constrai...
 
DevOps for Speed and Agility - DevOpsTO May 2014
DevOps for Speed and Agility - DevOpsTO May 2014DevOps for Speed and Agility - DevOpsTO May 2014
DevOps for Speed and Agility - DevOpsTO May 2014
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Balance Demand Against Throughput: Kanban Recipe for Success Step 4
Balance Demand Against Throughput: Kanban Recipe for Success Step 4Balance Demand Against Throughput: Kanban Recipe for Success Step 4
Balance Demand Against Throughput: Kanban Recipe for Success Step 4
 
Continuously Delivering: Compress the time from committed to consumed
Continuously Delivering: Compress the time from committed to consumedContinuously Delivering: Compress the time from committed to consumed
Continuously Delivering: Compress the time from committed to consumed
 
Agile thinking
Agile thinkingAgile thinking
Agile thinking
 
Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014
Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014
Agile Intro and 2014 trends for AgileSparks open day at John-Bryce - March 2014
 
NextBuild 2015 - Swimming upstream in the container revolution
NextBuild 2015 - Swimming upstream in the container revolutionNextBuild 2015 - Swimming upstream in the container revolution
NextBuild 2015 - Swimming upstream in the container revolution
 
The Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the JourneyThe Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the Journey
 
Software Development 2020 - Swimming upstream in the container revolution
Software Development 2020 - Swimming upstream in the container revolutionSoftware Development 2020 - Swimming upstream in the container revolution
Software Development 2020 - Swimming upstream in the container revolution
 

Andere mochten auch

Edtech Without a Budget
Edtech Without a BudgetEdtech Without a Budget
Edtech Without a BudgetJustin Keel
 
Non negotiables of jan lokpal bill
Non negotiables of jan lokpal billNon negotiables of jan lokpal bill
Non negotiables of jan lokpal billSidhartha Jatar
 
Thinking Beyond Our Borders
Thinking Beyond Our BordersThinking Beyond Our Borders
Thinking Beyond Our BordersAcademyHealth
 
Using Blackboard Rubrics
Using Blackboard RubricsUsing Blackboard Rubrics
Using Blackboard RubricsJustin Keel
 

Andere mochten auch (8)

Personal brand launch
Personal brand launchPersonal brand launch
Personal brand launch
 
Edtech Without a Budget
Edtech Without a BudgetEdtech Without a Budget
Edtech Without a Budget
 
Non negotiables of jan lokpal bill
Non negotiables of jan lokpal billNon negotiables of jan lokpal bill
Non negotiables of jan lokpal bill
 
Passwords
PasswordsPasswords
Passwords
 
Query
QueryQuery
Query
 
Database
DatabaseDatabase
Database
 
Thinking Beyond Our Borders
Thinking Beyond Our BordersThinking Beyond Our Borders
Thinking Beyond Our Borders
 
Using Blackboard Rubrics
Using Blackboard RubricsUsing Blackboard Rubrics
Using Blackboard Rubrics
 

Ähnlich wie Pushing the Bottleneck: Predicting and Addressing the Next, Next Thing

DevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsDevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsNitin Bhide
 
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...agilemaine
 
Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?Jean-Philippe Briend
 
How to develop a common sense of "DONE"?
How to develop a common sense of "DONE"?How to develop a common sense of "DONE"?
How to develop a common sense of "DONE"?Dr. Alexander Schwartz
 
Continuous delivery best practices and essential tools
Continuous delivery best practices and essential toolsContinuous delivery best practices and essential tools
Continuous delivery best practices and essential toolsDBmaestro - Database DevOps
 
Continuous Delivery (The newest)
Continuous Delivery (The newest)Continuous Delivery (The newest)
Continuous Delivery (The newest)Eduards Sizovs
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuousMichele Orselli
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)Nitin Bhide
 
Continuous Deployment Through Technical Excellence
Continuous Deployment Through Technical ExcellenceContinuous Deployment Through Technical Excellence
Continuous Deployment Through Technical ExcellenceShawn Button
 
Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...
Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...
Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...Agile Montréal
 
Scrum and-xp-from-the-trenches 06 testing
Scrum and-xp-from-the-trenches 06 testingScrum and-xp-from-the-trenches 06 testing
Scrum and-xp-from-the-trenches 06 testingHossam Hassan
 
Agile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAgile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAdam Stephensen
 
Webinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous DeliveryWebinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous DeliveryXebiaLabs
 
The Frontiers of Continuous Delivery
The Frontiers of Continuous DeliveryThe Frontiers of Continuous Delivery
The Frontiers of Continuous DeliveryEberhard Wolff
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardTechWell
 
Continuous Delivery Distilled
Continuous Delivery DistilledContinuous Delivery Distilled
Continuous Delivery DistilledMatt Callanan
 
How to test a Mainframe Application
How to test a Mainframe ApplicationHow to test a Mainframe Application
How to test a Mainframe ApplicationMichael Erichsen
 
DevOps in action - Azure DevOps
DevOps in action - Azure DevOpsDevOps in action - Azure DevOps
DevOps in action - Azure DevOpsXPDays
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareDevOps for Enterprise Systems
 

Ähnlich wie Pushing the Bottleneck: Predicting and Addressing the Next, Next Thing (20)

DevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsDevOps - Understanding Core Concepts
DevOps - Understanding Core Concepts
 
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
Continuous Delivery and Continuous Agile by Andy Singleton - Agile Maine Day...
 
Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
How to develop a common sense of "DONE"?
How to develop a common sense of "DONE"?How to develop a common sense of "DONE"?
How to develop a common sense of "DONE"?
 
Continuous delivery best practices and essential tools
Continuous delivery best practices and essential toolsContinuous delivery best practices and essential tools
Continuous delivery best practices and essential tools
 
Continuous Delivery (The newest)
Continuous Delivery (The newest)Continuous Delivery (The newest)
Continuous Delivery (The newest)
 
Continuous, continuous, continuous
Continuous, continuous, continuousContinuous, continuous, continuous
Continuous, continuous, continuous
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)
 
Continuous Deployment Through Technical Excellence
Continuous Deployment Through Technical ExcellenceContinuous Deployment Through Technical Excellence
Continuous Deployment Through Technical Excellence
 
Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...
Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...
Agile Project Management: From Agile Teams to Agile Organizations - Steve Mer...
 
Scrum and-xp-from-the-trenches 06 testing
Scrum and-xp-from-the-trenches 06 testingScrum and-xp-from-the-trenches 06 testing
Scrum and-xp-from-the-trenches 06 testing
 
Agile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAgile & DevOps - It's all about project success
Agile & DevOps - It's all about project success
 
Webinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous DeliveryWebinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous Delivery
 
The Frontiers of Continuous Delivery
The Frontiers of Continuous DeliveryThe Frontiers of Continuous Delivery
The Frontiers of Continuous Delivery
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New Standard
 
Continuous Delivery Distilled
Continuous Delivery DistilledContinuous Delivery Distilled
Continuous Delivery Distilled
 
How to test a Mainframe Application
How to test a Mainframe ApplicationHow to test a Mainframe Application
How to test a Mainframe Application
 
DevOps in action - Azure DevOps
DevOps in action - Azure DevOpsDevOps in action - Azure DevOps
DevOps in action - Azure DevOps
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
 

Mehr von IBM UrbanCode Products

Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9IBM UrbanCode Products
 
Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewIBM UrbanCode Products
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesIBM UrbanCode Products
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversalIBM UrbanCode Products
 
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...IBM UrbanCode Products
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureIBM UrbanCode Products
 
Leading the Transformation: Applying DevOps and Agile Principles at Scale
Leading the Transformation:  Applying DevOps and Agile Principles at ScaleLeading the Transformation:  Applying DevOps and Agile Principles at Scale
Leading the Transformation: Applying DevOps and Agile Principles at ScaleIBM UrbanCode Products
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeIBM UrbanCode Products
 
Securing the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeploySecuring the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeployIBM UrbanCode Products
 
UrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsUrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsIBM UrbanCode Products
 
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapGet Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapIBM UrbanCode Products
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilIBM UrbanCode Products
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesIBM UrbanCode Products
 
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployContinuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployIBM UrbanCode Products
 
Creating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't EvilCreating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't EvilIBM UrbanCode Products
 

Mehr von IBM UrbanCode Products (20)

Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
 
What's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode DeployWhat's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode Deploy
 
Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture Overview
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT Challenges
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
 
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production Failure
 
The Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeThe Future of DevOps and UrbanCode
The Future of DevOps and UrbanCode
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 
Leading the Transformation: Applying DevOps and Agile Principles at Scale
Leading the Transformation:  Applying DevOps and Agile Principles at ScaleLeading the Transformation:  Applying DevOps and Agile Principles at Scale
Leading the Transformation: Applying DevOps and Agile Principles at Scale
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCode
 
Securing the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeploySecuring the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode Deploy
 
Adopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed ITAdopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed IT
 
A True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOpsA True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOps
 
UrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the DotsUrbanCode Deploy and Docker Containers Connect the Dots
UrbanCode Deploy and Docker Containers Connect the Dots
 
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption RoadmapGet Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
Get Mapped: Using Value Stream Mapping to Create a DevOps Adoption Roadmap
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't Evil
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to Executives
 
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployContinuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
 
Creating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't EvilCreating a DevOps Team that Isn't Evil
Creating a DevOps Team that Isn't Evil
 

Kürzlich hochgeladen

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Kürzlich hochgeladen (20)

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

Pushing the Bottleneck: Predicting and Addressing the Next, Next Thing

  • 1. Pushing the bottleneck Predicting what will break next in your SDLC
  • 2. Lead Consultant & Tech Evangelist Eric is Lead Consultant at IBM UrbanCode Products where I help customers get the most out of their build, deploy and release processes. Today he works with customers and industry leaders to figure out this DevOps thing. Eric Minick eminick@us.ibm.com @EricMinick
  • 3. The plan  Theory of constraints in a nutshell  Finding bottlenecks  Predicting the next bottleneck  Common bottleneck pushing patterns  Q&A
  • 5. A bottleneck is a constraint Maximum pouring speed
  • 6. Only by increasing flow through the constraint can overall throughput be increased* Making the bottle wide down here does not help * The Goal: a process of ongoing improvement. Goldratt eta al
  • 7. Optimize at your constraint Can pour faster now
  • 8. Your system must have a measureable goal My goal is to empty a wine bottle quickly
  • 9. Simplified five step plan 1. Identify the system’s most severe constraint 2. Decide how to get the most out of the constraint 3. Subordinate everything else to the above constraint 4. Make changes to expand constraint’s capacity 5. Once constraint is relieved, return to step 1
  • 10. Example: Slow QA cycles 1. Identify the system’s most severe constraint 2. Decide how to get the most out of the constraint 3. Subordinate everything else to the above constraint 4. Make changes to expand constraint’s capacity 5. Once constraint is relieved, return to step 1 1. It takes too long to test our changes. Everyone else waits 2. Testers should focus on exploratory testing 3. Devs help with regression tests. Ops prioritizes QA. 4. Dev & QA work together to automate regression tests 5. Find the next bottleneck
  • 11. Wait, what’s our goal in software?  Generally: turn ideas into business value  Measuring “business value” hard Emptying wine bottles only relevant if dev speed is the constraint and you believe in the Ballmer Peak (http://xkcd.com/323/) ?
  • 12. Wait, what’s our goal in software?  Generally: turn ideas into business value  Measuring “business value” hard  Features delivered minus bugs is a decent approximation – …but rewards building useless features. Emptying wine bottles only relevant if dev speed is the constraint and you believe in the Ballmer Peak (http://xkcd.com/323/) ?
  • 13. Three key measures  Lag time: how long from idea to value?  Throughput: how much delivered value per unit time?  Cost: what does it cost to deliver value? ?
  • 15. Most teams can feel the constraint  What are you waiting on?  Where’s the pain? Constraints before you in a process feel like not enough work. Constraints after you in a process are annoying or painful
  • 16. If it hurts, do it more often  Painful processes often grow exponentially worse with large batch sizes.  Examples – Integration work – Releases – Bug Triage – Updating databases – Visiting the dentist http://martinfowler.com/bliki/FrequencyReducesDifficulty.html Time between doing it Pain
  • 17. Use Lean techniques to measure  What does it take to get a change from idea to production? –At each phase measure wait time and work time  Long wait times indicate large batch sizes or backlogs image credits: http://commons.wikimedia.org/wiki/File:Diagram_spaghetti_kilka_produktow.PNG http://www.michaelnygard.com/blog/2008/02/outrunning_your_headlights.html
  • 18. Manual fix & verify spaghetti
  • 19. Bug fix & verify value stream 720 3600 240 2880 720 3600 240 15 15 120 60 15 15 60 Waiting Working 12000 300 1. Feature build 2. Build deployed 3. Bug reported 4. Dev fixes 5. Fix built 6. Fix deployed 7. Tester verifies
  • 20. Seeing the “next” bottleneck
  • 21. QA Scenario Dev Produces a nightly build Twice weekly, 2 hour deploy to Test Lab 3 Days to test each drop
  • 22. Dev produces a nightly build Twice weekly, 2 hour deploy to Test Lab 1.5 Days to test each drop If we improve test speed, our constraint moves.
  • 23. Examining a constraint • Manual process • Limited staff • Production releases have priority Why can we only deploy twice a week to QA?
  • 24. Tackling the constraint • Manual process • Limited staff • Production releases have priority Why can we only deploy twice a week to QA? • Automate processes • Hire more staff • Prioritize QA Releases Options
  • 25. Imagine a 1 day test cycle Dev produces a nightly build 2 hour deploy to Test Lab 1.0 Days to test each drop ¼ day deploy downtime becomes turns 1 day test cycle into two days.
  • 26. Tackling the constraint • Manual process • Limited staff • Production releases have priority Why can we only deploy twice a week to QA? • Automate processes • Hire more staff • Prioritize QA deploys Options Short term approach Long term approach
  • 27. Measuring utilization helps with this prediction  “Feeling” the pain isn’t enough to predict the next constraint  There may be no pain at the next constraint today
  • 28. When something is free, it is used more  Example: Amazon Prime. For $79/yr, customers get free 2 day shipping on everything. “…Customers spent as much as 150% more at Amazon after they became Prime members. Subscribers not only ordered more often … they started buying things at Amazon that they probably wouldn’t have in the past” * * http://business.time.com/2013/03/18/amazon-prime-bigger-more-powerful-more-profitable-than- anyone-imagined/
  • 29. Consider implications of making something free If builds, deploy, regression tests are free… We’re going to be testing lots more. Better buy some hardware.
  • 31. After build, deploy is next  Build guy & deploy guy used to be in sync  A CI server can do hundreds of builds per day  Agile tends to make Operations a constraint Knowing my stuff compiles at all times is great. I want to know if it passes functional tests too.
  • 32. As tests shift left, expensive tests constrain  Developers run more integration tests  Some tests use expensive resources –pay per use web services, mainframes, production systems…  Stubbing those resources becomes important – known as “service virtualization”
  • 33. Concurrent agile dev requires more test labs  More code is compiling, and set to be released “soon”  Need more environments to test changes in – Pressure for Platform as a Service
  • 34. Frequent releases demand fast feedback  Frequent releases enable experimentation  Monitoring of business outcomes required  Architectural pressures to support A/B testing ♫ Stop ignoring difference between features delivered and value delivered
  • 35. If we keep chasing constraints, where does it end?
  • 36. You may end up with Continuous Deployment Build Run thousands of tests Deploy to some servers Monitor Deploy to remaining servers
  • 37. Summary  Optimizations other than at the constraint don’t help  “Breaking” one constraint will expose the next  Patterns or analysis can be used to predict next constraint  Continual Improvement, Continual Improvement, Continual Improvement, Continual Improvement…
  • 38. IBM will collaborate with you to understand your current situation, goals and constraints. The Assessment and Planning Workshop will aim to capture sufficient information to make specific recommendations for improvement and implementation.  Intended Audience: Key leadership from practice areas and stakeholder organizations  Value Proposition Clear recommendations for capability improvements aligned to your business goals Initial Architecture Adoption roadmap based on proven best practices  Activities Workshop planning Assessment and Planning Workshop Collaborative discussion on current status, future goals and adoption requirements Produce Deliverable  Deliverables Current Status and Improvement Recommendations Architecture Adoption Roadmap Assessment and Planning Workshop
  • 39. More resources Urbancode.com/resources Continuous Delivery Maturity Model Deployment Automation Basics Applying Lean Principals to Software Delivery Blogs.urbancode.com Twitter.com/UrbanCode Facebook.com/IBMUrbanCodeProducts SlideShare.net/Urbancode

Hinweis der Redaktion

  1. http://commons.wikimedia.org/wiki/File:Empty_Wine_bottle.jpg
  2. http://commons.wikimedia.org/wiki/File:Empty_Wine_bottle.jpg