SlideShare a Scribd company logo
© 2013 IBM Corporation
How Automation Reveals
Technical Debt
© 2013 IBM Corporation
Eric’s Bio
I’m a DevOps Evangelist at UrbanCode
where I helps customers get the most out
of their build, deploy and release
processes.
I have automation experience throughout
the application life-cycle in roles as a
developer, test automation engineer, and
support engineer. For the last 9
years, I’ve been focused on CI, CD and
DevOps
Eric Minick
eric@urbancode.com
@EricMinick
© 2013 IBM Corporation
Technical Debt
© 2013 IBM Corporation
Why do we accumulate technical debt?
We leverage technical debt to
deliver more faster.
De-leveraging is rarely accounted
for in project planning.
Green-Shifting*
Scope Time
Resources
* http://www.drdobbs.com/191600661
© 2013 IBM Corporation
Why do we care? Paying interest
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Now Later Later Still Much Later
Debt Paid
Interest Paid
Value Delivered
© 2013 IBM Corporation
Why do we care? Or paying our debts
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Now Later Later Still Much Later
Debt Paid
Interest Paid
Value Delivered
© 2013 IBM Corporation
Pay it now, or pay more later
Debt Paid
Interest Paid
Value
Delivered
Debt Paid
Interest
Paid
Value
Delivered
© 2013 IBM Corporation
Why should we care?
Baggage that slows the team
 Lack of automated tests lengthen
QA cycles
 Fear of merging work
 Unrefactored code slow to work
with
 Slow build / deploy processes
delay learning and release pace
Quality issues
Lack of tests results in
buggier code
Releases are error prone
and lead to unnecessary
outages
© 2013 IBM Corporation
The limits of what we know
Known Knowns: Bugs confirmed and tracked
Known Unknowns: Undiscovered bugs
Unknown unknowns: One of our project teams is using a
GPL’d library making their product impossible to ship
© 2013 IBM Corporation
Where Automation Helps
“Testing” for debt: Automated tests, code scans and reports
can help identify (and quantify) problems.
Automation as a learning experience: The act of
automating brings surprises.
© 2013 IBM Corporation
Testing for Debt
Continuous Integration (multi-component)
Code Inspection
Watching Trends
© 2013 IBM Corporation
Testing for Debt: Continuous Integration
On code commit, build and test the software
Roll up changes to build-time or runtime dependencies and
test those too to identify API incompatibilities
© 2013 IBM Corporation
Testing for Debt: Code Inspection
Code Reviews – Rapidly detect issues
Static Code Analysis – Tool based checks
for bugs, code duplication, code theft, &
non-compliance with dev standards.
© 2013 IBM Corporation
Testing for Debt: Code Inspection
Code Reviews – Rapidly detect issues
Static Code Analysis – Tool based checks
for bugs, code duplication, code theft, &
non-compliance with dev standards.
© 2013 IBM Corporation
Testing for Debt: Watching Trends
© 2013 IBM Corporation
More visualizations: Sonar
http://nemo.sonarsource.org/dashboard/index/327690?did=
6
© 2013 IBM Corporation
An example safety net
Continuous build & unit test
Nightly slow tests / code scans
Emails identifying new issues – ideally tied against source
code changes
Regular inspection of trends
Bugs / Stories entered around issues
© 2013 IBM Corporation
Automation as a learning experience
Implementing the safety net helps us discover
unacknowledged debt
© 2013 IBM Corporation
Tests? What tests?
© 2013 IBM Corporation
Automation Examples: The Build
Build time dependencies not understood
Build scripts missing or incomplete
“Magic build server” anti-pattern
http://www.urbancode.com/html/resources/webinars/Role_of_Binary_repositories_in_Software_Configuration_Management.html
© 2013 IBM Corporation
Automation Examples: Deployment
Deployment scripts scarce
“Special Instructions” with most deployments indicate non-
repeatable process
Environmental differences handled poorly
Separation of duties less than real
© 2013 IBM Corporation
Automation Example: Test Automation
Requirements less well understood
Existing tests are few, stale, un-optimized
Application not architected for testability
© 2013 IBM Corporation
Expect the unexpected when automating
At scale, Green-Shifting, has hidden issues
Include these discoveries in ROI estimations for automation
(positively and negatively)
This is a happy side effect
© 2013 IBM Corporation
Start making decisions
© 2013 IBM Corporation
Direct and indirect automation benefits
Direct: We tested for problems and found them.
Indirect: In attempting to be more efficient, we
automated, and accidently discovered problems.
© 2013 IBM Corporation
Automating for the team
Provide a “safety net” to detect and recognize issues.
Diagnose and repair lack of repeatability in build-deploy-test
Quantify accumulating debt in support of fighting scope creep
Team level tooling is fine
© 2013 IBM Corporation
Automating the enterprise
Benefits extend beyond aggregate team level benefits
Central Automation and Reporting gets us:
–Identify who can use shared configuration
–Who has tests, who doesn’t
–Who is using what tools
–Build / deploy failure rates
© 2013 IBM Corporation
Stories from customers
© 2013 IBM Corporation
Favorite Examples: Deployment Failures
 Debt: High rate of deployment failures a problem
 Interest: QA productivity is getting hurt & lengthened time to market
 Goal: Reduce failure rate from 40% to 5%
 Approach: Avoid manually fixing a deployment. Fix the automation
and redeploy.
 Enforcement: Monthly / weekly spreadsheet of success to CIO with
a six month plan.
© 2013 IBM Corporation
Favorite Examples: “End of Day” Commits
 Debt: Developers commit breaking changes at the end of the day
 Interest: Code base broken in morning, or other people stay up late
to fix it.
 Goal: Avoid other devs staying late to clean up
 Approach: Report on failures, and react to negative patterns as a
team.
 Enforcement: Social pressures
© 2013 IBM Corporation
© 2013 IBM Corporation
Favorite Examples: Low numbers of tests
Problem: Unit testing discipline breaking down over time
Goal: Maintain high or improving coverage
Approach: Standard coverage tools and an emphasis on
upward trends.
Enforcement: Trending report
on monitor over CIO’s door
© 2013 IBM Corporation
No hiding!
No greenshifting
© 2013 IBM Corporation
Summary
We accumulate technical debt as we race to deliver
more, faster.
This causes us to eventually release less, slower, with worse
quality
Automation directly and indirectly helps us find issues.
There are benefits at both team and enterprise levels.
© 2013 IBM Corporation
More References
http://urbancode.com/resources
Enterprise CD Maturity Model
Lean Build & Deployment Automation
Managing Release Risks with Metrics
Blogs.urbancode.com
Twitter.com/UrbanCode
facebook.com/IBMUrbanCodeProduc
Slideshare.net/Urbancode
© 2013 IBM Corporation
Yes, we sell products for this
uBuild
–Build management and continuous integration
uDeploy
–Deployment and release automation
uRelease
–Release management tool for planning and executing big releases
... And IBM’s amazing portfolio of CLM, testing tools, service
virtualization, provisioning, etc, etc.
© 2013 IBM Corporation
Questions?
eminick@us.ibm.com
@EricMinick, @Urbancode
Slideshare.net/Urbancode

More Related Content

What's hot

Customer ServicesNovember 09
Customer ServicesNovember 09Customer ServicesNovember 09
Customer ServicesNovember 09benwilson
 
Codeless Test Automation - A Webinar Presentation
Codeless Test Automation - A Webinar PresentationCodeless Test Automation - A Webinar Presentation
Codeless Test Automation - A Webinar Presentation
Inflectra
 
Introducing ARRM: A Framework to Fight Accessibility Apathy
Introducing ARRM: A Framework to Fight Accessibility ApathyIntroducing ARRM: A Framework to Fight Accessibility Apathy
Introducing ARRM: A Framework to Fight Accessibility Apathy
Bill Tyler
 
2018 ibm agile engineering summit - spotlight presentation
2018   ibm agile engineering summit - spotlight presentation2018   ibm agile engineering summit - spotlight presentation
2018 ibm agile engineering summit - spotlight presentation
M Kevin McHugh
 
Accessibility Testing: Mileage May Vary
Accessibility Testing: Mileage May Vary Accessibility Testing: Mileage May Vary
Accessibility Testing: Mileage May Vary
Sean Kelly
 
What to Fix-First: Accessibility Remediation Order Matters
What to Fix-First: Accessibility Remediation Order MattersWhat to Fix-First: Accessibility Remediation Order Matters
What to Fix-First: Accessibility Remediation Order Matters
Sean Kelly
 
Different phases of accessibility testing
Different phases of accessibility testingDifferent phases of accessibility testing
Different phases of accessibility testing
Poonam Tathavadkar
 
Microsoft Dynamics AX- Robotic Process Automation (RPA) with Rapise
Microsoft Dynamics AX- Robotic Process Automation (RPA) with RapiseMicrosoft Dynamics AX- Robotic Process Automation (RPA) with Rapise
Microsoft Dynamics AX- Robotic Process Automation (RPA) with Rapise
Adam Sandman
 
Aviation Service Lifecycle Management
Aviation Service Lifecycle ManagementAviation Service Lifecycle Management
Aviation Service Lifecycle ManagementMichael Denis
 
Mobitop
MobitopMobitop
ATDD open house
ATDD open houseATDD open house
ATDD open house
Arnon Axelrod
 
CloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoTCloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoT
Benjamin Chodroff
 

What's hot (13)

Customer ServicesNovember 09
Customer ServicesNovember 09Customer ServicesNovember 09
Customer ServicesNovember 09
 
Codeless Test Automation - A Webinar Presentation
Codeless Test Automation - A Webinar PresentationCodeless Test Automation - A Webinar Presentation
Codeless Test Automation - A Webinar Presentation
 
Introducing ARRM: A Framework to Fight Accessibility Apathy
Introducing ARRM: A Framework to Fight Accessibility ApathyIntroducing ARRM: A Framework to Fight Accessibility Apathy
Introducing ARRM: A Framework to Fight Accessibility Apathy
 
2018 ibm agile engineering summit - spotlight presentation
2018   ibm agile engineering summit - spotlight presentation2018   ibm agile engineering summit - spotlight presentation
2018 ibm agile engineering summit - spotlight presentation
 
Accessibility Testing: Mileage May Vary
Accessibility Testing: Mileage May Vary Accessibility Testing: Mileage May Vary
Accessibility Testing: Mileage May Vary
 
What to Fix-First: Accessibility Remediation Order Matters
What to Fix-First: Accessibility Remediation Order MattersWhat to Fix-First: Accessibility Remediation Order Matters
What to Fix-First: Accessibility Remediation Order Matters
 
Different phases of accessibility testing
Different phases of accessibility testingDifferent phases of accessibility testing
Different phases of accessibility testing
 
Microsoft Dynamics AX- Robotic Process Automation (RPA) with Rapise
Microsoft Dynamics AX- Robotic Process Automation (RPA) with RapiseMicrosoft Dynamics AX- Robotic Process Automation (RPA) with Rapise
Microsoft Dynamics AX- Robotic Process Automation (RPA) with Rapise
 
Aviation Service Lifecycle Management
Aviation Service Lifecycle ManagementAviation Service Lifecycle Management
Aviation Service Lifecycle Management
 
Mobitop
MobitopMobitop
Mobitop
 
ATDD open house
ATDD open houseATDD open house
ATDD open house
 
Apm andre santos
Apm andre santosApm andre santos
Apm andre santos
 
CloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoTCloudOne Continuous Engineering for IoT
CloudOne Continuous Engineering for IoT
 

Viewers also liked

Service Management Automation (SMA) from zero to hero
Service Management Automation (SMA) from zero to heroService Management Automation (SMA) from zero to hero
Service Management Automation (SMA) from zero to hero
Michael Rüefli
 
Service Automation: Enabling The Self Service Generation - Jan-Willem Middleburg
Service Automation: Enabling The Self Service Generation - Jan-Willem MiddleburgService Automation: Enabling The Self Service Generation - Jan-Willem Middleburg
Service Automation: Enabling The Self Service Generation - Jan-Willem Middleburg
Pink Elephant
 
What is IT4IT? - Suresh GP
What is IT4IT? - Suresh GPWhat is IT4IT? - Suresh GP
What is IT4IT? - Suresh GP
Pink Elephant
 
Integrating DevOps and ITSM for agility in action_v1
Integrating DevOps and ITSM for agility in action_v1Integrating DevOps and ITSM for agility in action_v1
Integrating DevOps and ITSM for agility in action_v1Aswin Kumar
 
Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015
IBM UrbanCode Products
 
A Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for DatabasesA Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for Databases
IBM UrbanCode Products
 
Blue ocean strategy, balanced scorecard strategy and team forming a shared p...
Blue ocean strategy, balanced scorecard strategy and team forming  a shared p...Blue ocean strategy, balanced scorecard strategy and team forming  a shared p...
Blue ocean strategy, balanced scorecard strategy and team forming a shared p...
Ali Anani, PhD
 
IT Pro Webinar Series: Agile Service Management Automation with Service Manag...
IT Pro Webinar Series: Agile Service Management Automation with Service Manag...IT Pro Webinar Series: Agile Service Management Automation with Service Manag...
IT Pro Webinar Series: Agile Service Management Automation with Service Manag...
Cireson
 
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
IBM 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 Dots
IBM UrbanCode Products
 
ITSM Process Design Workshop Pittsburg June 2013
ITSM Process Design Workshop Pittsburg June 2013ITSM Process Design Workshop Pittsburg June 2013
ITSM Process Design Workshop Pittsburg June 2013Navvia
 
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
 
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
IBM 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 Deploy
IBM UrbanCode Products
 
Blueprinting DevOps for Digital Transformation_v4
Blueprinting DevOps for Digital Transformation_v4Blueprinting DevOps for Digital Transformation_v4
Blueprinting DevOps for Digital Transformation_v4Aswin Kumar
 
IT4IT real life examples & myths and rumors dispelled
IT4IT real life examples & myths and rumors dispelledIT4IT real life examples & myths and rumors dispelled
IT4IT real life examples & myths and rumors dispelledTony Price
 
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
IBM UrbanCode Products
 
DevOps for IBM Commerce
DevOps for IBM CommerceDevOps for IBM Commerce
DevOps for IBM Commerce
Michael Elder
 
Moving To SaaS
Moving To SaaSMoving To SaaS
Moving To SaaS
Alistair Croll
 
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline BottlenecksUsing Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
IBM UrbanCode Products
 

Viewers also liked (20)

Service Management Automation (SMA) from zero to hero
Service Management Automation (SMA) from zero to heroService Management Automation (SMA) from zero to hero
Service Management Automation (SMA) from zero to hero
 
Service Automation: Enabling The Self Service Generation - Jan-Willem Middleburg
Service Automation: Enabling The Self Service Generation - Jan-Willem MiddleburgService Automation: Enabling The Self Service Generation - Jan-Willem Middleburg
Service Automation: Enabling The Self Service Generation - Jan-Willem Middleburg
 
What is IT4IT? - Suresh GP
What is IT4IT? - Suresh GPWhat is IT4IT? - Suresh GP
What is IT4IT? - Suresh GP
 
Integrating DevOps and ITSM for agility in action_v1
Integrating DevOps and ITSM for agility in action_v1Integrating DevOps and ITSM for agility in action_v1
Integrating DevOps and ITSM for agility in action_v1
 
Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015
 
A Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for DatabasesA Continuous Delivery Safety Net for Databases
A Continuous Delivery Safety Net for Databases
 
Blue ocean strategy, balanced scorecard strategy and team forming a shared p...
Blue ocean strategy, balanced scorecard strategy and team forming  a shared p...Blue ocean strategy, balanced scorecard strategy and team forming  a shared p...
Blue ocean strategy, balanced scorecard strategy and team forming a shared p...
 
IT Pro Webinar Series: Agile Service Management Automation with Service Manag...
IT Pro Webinar Series: Agile Service Management Automation with Service Manag...IT Pro Webinar Series: Agile Service Management Automation with Service Manag...
IT Pro Webinar Series: Agile Service Management Automation with Service Manag...
 
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
 
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
 
ITSM Process Design Workshop Pittsburg June 2013
ITSM Process Design Workshop Pittsburg June 2013ITSM Process Design Workshop Pittsburg June 2013
ITSM Process Design Workshop Pittsburg June 2013
 
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...
 
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
 
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
 
Blueprinting DevOps for Digital Transformation_v4
Blueprinting DevOps for Digital Transformation_v4Blueprinting DevOps for Digital Transformation_v4
Blueprinting DevOps for Digital Transformation_v4
 
IT4IT real life examples & myths and rumors dispelled
IT4IT real life examples & myths and rumors dispelledIT4IT real life examples & myths and rumors dispelled
IT4IT real life examples & myths and rumors dispelled
 
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
 
DevOps for IBM Commerce
DevOps for IBM CommerceDevOps for IBM Commerce
DevOps for IBM Commerce
 
Moving To SaaS
Moving To SaaSMoving To SaaS
Moving To SaaS
 
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline BottlenecksUsing Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
 

Similar to How Automation Reveals Technical Debt

How to Build a DevOps Toolchain
How to Build a DevOps ToolchainHow to Build a DevOps Toolchain
How to Build a DevOps Toolchain
IBM UrbanCode Products
 
APM Talk
APM TalkAPM Talk
APM Talk
MongoDB
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Sanjeev Sharma
 
Continuous Delivery in the Enterprise
Continuous Delivery in the EnterpriseContinuous Delivery in the Enterprise
Continuous Delivery in the Enterprise
IBM UrbanCode Products
 
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
IBM UrbanCode Products
 
Avoiding the Release Weekend
Avoiding the Release Weekend Avoiding the Release Weekend
Avoiding the Release Weekend
IBM UrbanCode Products
 
IBM Z for the Digital Enterprise 2018 - Automate Delivery Pipeline
IBM Z for the Digital Enterprise 2018 - Automate Delivery PipelineIBM Z for the Digital Enterprise 2018 - Automate Delivery Pipeline
IBM Z for the Digital Enterprise 2018 - Automate Delivery Pipeline
DevOps for Enterprise Systems
 
6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...
6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...
6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...IBM Rational
 
Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation
Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation
Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation
Anatoly Levenchuk
 
UrbanCode Deploy DevOps Best Practices
UrbanCode Deploy  DevOps Best PracticesUrbanCode Deploy  DevOps Best Practices
UrbanCode Deploy DevOps Best Practices
Michael Elder
 
Building intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBMBuilding intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBM
PAPIs.io
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
Sanjeev Sharma
 
Industry Perspective: DevOps - What it Means for the Average Business
Industry Perspective: DevOps - What it Means for the Average BusinessIndustry Perspective: DevOps - What it Means for the Average Business
Industry Perspective: DevOps - What it Means for the Average Business
Michael Elder
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
Chris Sparshott
 
IBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC EventIBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC Event
Roger Snook
 
Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02
Shetal Patel
 
Tdc 2013 alm com dev o ps
Tdc 2013 alm com dev o psTdc 2013 alm com dev o ps
Tdc 2013 alm com dev o psWalter Farias
 
Applying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software DeliveryApplying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software Delivery
Sanjeev Sharma
 
IBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryIBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & delivery
Roberto Pozzi
 

Similar to How Automation Reveals Technical Debt (20)

How to Build a DevOps Toolchain
How to Build a DevOps ToolchainHow to Build a DevOps Toolchain
How to Build a DevOps Toolchain
 
APM Talk
APM TalkAPM Talk
APM Talk
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
 
Continuous Delivery in the Enterprise
Continuous Delivery in the EnterpriseContinuous Delivery in the Enterprise
Continuous Delivery in the Enterprise
 
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
 
Avoiding the Release Weekend
Avoiding the Release Weekend Avoiding the Release Weekend
Avoiding the Release Weekend
 
IBM Z for the Digital Enterprise 2018 - Automate Delivery Pipeline
IBM Z for the Digital Enterprise 2018 - Automate Delivery PipelineIBM Z for the Digital Enterprise 2018 - Automate Delivery Pipeline
IBM Z for the Digital Enterprise 2018 - Automate Delivery Pipeline
 
6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...
6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...
6.13.2013 2013 - Software, System, & IT Architecture - Good Design is Good Bu...
 
Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation
Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation
Kerim Cakmak, Moshe Cohen -- Continuous Verification and Validation
 
UrbanCode Deploy DevOps Best Practices
UrbanCode Deploy  DevOps Best PracticesUrbanCode Deploy  DevOps Best Practices
UrbanCode Deploy DevOps Best Practices
 
Building intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBMBuilding intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBM
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
 
Industry Perspective: DevOps - What it Means for the Average Business
Industry Perspective: DevOps - What it Means for the Average BusinessIndustry Perspective: DevOps - What it Means for the Average Business
Industry Perspective: DevOps - What it Means for the Average Business
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
 
IBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC EventIBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC Event
 
Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02
 
Automation and Technical Debt
Automation and Technical DebtAutomation and Technical Debt
Automation and Technical Debt
 
Tdc 2013 alm com dev o ps
Tdc 2013 alm com dev o psTdc 2013 alm com dev o ps
Tdc 2013 alm com dev o ps
 
Applying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software DeliveryApplying DevOps for more reliable Public Sector Software Delivery
Applying DevOps for more reliable Public Sector Software Delivery
 
IBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryIBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & delivery
 

More from 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 9
IBM UrbanCode Products
 
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
IBM 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 Overview
IBM 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 Challenges
IBM 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 NBCUniversal
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 Failure
IBM UrbanCode Products
 
The Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeThe Future of DevOps and UrbanCode
The Future of DevOps and UrbanCode
IBM UrbanCode Products
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
IBM 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 Scale
IBM 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 UrbanCode
IBM UrbanCode Products
 
Adopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed ITAdopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed IT
IBM 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 Roadmap
IBM 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 Deploy
IBM UrbanCode Products
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
IBM UrbanCode Products
 
Shift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMShift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBM
IBM UrbanCode Products
 
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeContinuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
IBM UrbanCode Products
 
Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...
IBM UrbanCode Products
 
Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...
IBM UrbanCode Products
 
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with BluemixAdopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
IBM UrbanCode Products
 

More from 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
 
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
 
Adopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed ITAdopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed IT
 
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
 
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
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
 
Shift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMShift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBM
 
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeContinuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
 
Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...
 
Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...
 
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with BluemixAdopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
 

Recently uploaded

Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 

Recently uploaded (20)

Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 

How Automation Reveals Technical Debt

  • 1. © 2013 IBM Corporation How Automation Reveals Technical Debt
  • 2. © 2013 IBM Corporation Eric’s Bio I’m a DevOps Evangelist at UrbanCode where I helps customers get the most out of their build, deploy and release processes. I have automation experience throughout the application life-cycle in roles as a developer, test automation engineer, and support engineer. For the last 9 years, I’ve been focused on CI, CD and DevOps Eric Minick eric@urbancode.com @EricMinick
  • 3. © 2013 IBM Corporation Technical Debt
  • 4. © 2013 IBM Corporation Why do we accumulate technical debt? We leverage technical debt to deliver more faster. De-leveraging is rarely accounted for in project planning. Green-Shifting* Scope Time Resources * http://www.drdobbs.com/191600661
  • 5. © 2013 IBM Corporation Why do we care? Paying interest 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Now Later Later Still Much Later Debt Paid Interest Paid Value Delivered
  • 6. © 2013 IBM Corporation Why do we care? Or paying our debts 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Now Later Later Still Much Later Debt Paid Interest Paid Value Delivered
  • 7. © 2013 IBM Corporation Pay it now, or pay more later Debt Paid Interest Paid Value Delivered Debt Paid Interest Paid Value Delivered
  • 8. © 2013 IBM Corporation Why should we care? Baggage that slows the team  Lack of automated tests lengthen QA cycles  Fear of merging work  Unrefactored code slow to work with  Slow build / deploy processes delay learning and release pace Quality issues Lack of tests results in buggier code Releases are error prone and lead to unnecessary outages
  • 9. © 2013 IBM Corporation The limits of what we know Known Knowns: Bugs confirmed and tracked Known Unknowns: Undiscovered bugs Unknown unknowns: One of our project teams is using a GPL’d library making their product impossible to ship
  • 10. © 2013 IBM Corporation Where Automation Helps “Testing” for debt: Automated tests, code scans and reports can help identify (and quantify) problems. Automation as a learning experience: The act of automating brings surprises.
  • 11. © 2013 IBM Corporation Testing for Debt Continuous Integration (multi-component) Code Inspection Watching Trends
  • 12. © 2013 IBM Corporation Testing for Debt: Continuous Integration On code commit, build and test the software Roll up changes to build-time or runtime dependencies and test those too to identify API incompatibilities
  • 13. © 2013 IBM Corporation Testing for Debt: Code Inspection Code Reviews – Rapidly detect issues Static Code Analysis – Tool based checks for bugs, code duplication, code theft, & non-compliance with dev standards.
  • 14. © 2013 IBM Corporation Testing for Debt: Code Inspection Code Reviews – Rapidly detect issues Static Code Analysis – Tool based checks for bugs, code duplication, code theft, & non-compliance with dev standards.
  • 15. © 2013 IBM Corporation Testing for Debt: Watching Trends
  • 16. © 2013 IBM Corporation More visualizations: Sonar http://nemo.sonarsource.org/dashboard/index/327690?did= 6
  • 17. © 2013 IBM Corporation An example safety net Continuous build & unit test Nightly slow tests / code scans Emails identifying new issues – ideally tied against source code changes Regular inspection of trends Bugs / Stories entered around issues
  • 18. © 2013 IBM Corporation Automation as a learning experience Implementing the safety net helps us discover unacknowledged debt
  • 19. © 2013 IBM Corporation Tests? What tests?
  • 20. © 2013 IBM Corporation Automation Examples: The Build Build time dependencies not understood Build scripts missing or incomplete “Magic build server” anti-pattern http://www.urbancode.com/html/resources/webinars/Role_of_Binary_repositories_in_Software_Configuration_Management.html
  • 21. © 2013 IBM Corporation Automation Examples: Deployment Deployment scripts scarce “Special Instructions” with most deployments indicate non- repeatable process Environmental differences handled poorly Separation of duties less than real
  • 22. © 2013 IBM Corporation Automation Example: Test Automation Requirements less well understood Existing tests are few, stale, un-optimized Application not architected for testability
  • 23. © 2013 IBM Corporation Expect the unexpected when automating At scale, Green-Shifting, has hidden issues Include these discoveries in ROI estimations for automation (positively and negatively) This is a happy side effect
  • 24. © 2013 IBM Corporation Start making decisions
  • 25. © 2013 IBM Corporation Direct and indirect automation benefits Direct: We tested for problems and found them. Indirect: In attempting to be more efficient, we automated, and accidently discovered problems.
  • 26. © 2013 IBM Corporation Automating for the team Provide a “safety net” to detect and recognize issues. Diagnose and repair lack of repeatability in build-deploy-test Quantify accumulating debt in support of fighting scope creep Team level tooling is fine
  • 27. © 2013 IBM Corporation Automating the enterprise Benefits extend beyond aggregate team level benefits Central Automation and Reporting gets us: –Identify who can use shared configuration –Who has tests, who doesn’t –Who is using what tools –Build / deploy failure rates
  • 28. © 2013 IBM Corporation Stories from customers
  • 29. © 2013 IBM Corporation Favorite Examples: Deployment Failures  Debt: High rate of deployment failures a problem  Interest: QA productivity is getting hurt & lengthened time to market  Goal: Reduce failure rate from 40% to 5%  Approach: Avoid manually fixing a deployment. Fix the automation and redeploy.  Enforcement: Monthly / weekly spreadsheet of success to CIO with a six month plan.
  • 30. © 2013 IBM Corporation Favorite Examples: “End of Day” Commits  Debt: Developers commit breaking changes at the end of the day  Interest: Code base broken in morning, or other people stay up late to fix it.  Goal: Avoid other devs staying late to clean up  Approach: Report on failures, and react to negative patterns as a team.  Enforcement: Social pressures
  • 31. © 2013 IBM Corporation
  • 32. © 2013 IBM Corporation Favorite Examples: Low numbers of tests Problem: Unit testing discipline breaking down over time Goal: Maintain high or improving coverage Approach: Standard coverage tools and an emphasis on upward trends. Enforcement: Trending report on monitor over CIO’s door
  • 33. © 2013 IBM Corporation No hiding! No greenshifting
  • 34. © 2013 IBM Corporation Summary We accumulate technical debt as we race to deliver more, faster. This causes us to eventually release less, slower, with worse quality Automation directly and indirectly helps us find issues. There are benefits at both team and enterprise levels.
  • 35. © 2013 IBM Corporation More References http://urbancode.com/resources Enterprise CD Maturity Model Lean Build & Deployment Automation Managing Release Risks with Metrics Blogs.urbancode.com Twitter.com/UrbanCode facebook.com/IBMUrbanCodeProduc Slideshare.net/Urbancode
  • 36. © 2013 IBM Corporation Yes, we sell products for this uBuild –Build management and continuous integration uDeploy –Deployment and release automation uRelease –Release management tool for planning and executing big releases ... And IBM’s amazing portfolio of CLM, testing tools, service virtualization, provisioning, etc, etc.
  • 37. © 2013 IBM Corporation Questions? eminick@us.ibm.com @EricMinick, @Urbancode Slideshare.net/Urbancode

Editor's Notes

  1. Collected technical work left undone.When a feature changes, there’s immediate debt to documentation. When we branch, as we work longer in parallel, we accumulate a debt towards integrating. CI minimizes the accumulation of that debt.
  2. My apologies to Mr. Rumsfeld.