SlideShare a Scribd company logo
How to build quality in – a tale
from the trenches
Peter Antman
2013-05-23
Who am I?
Peter Antman 2
Background…
§  Developer since 1995
§  Linux, Open Source and
Enterprise Java
§  Leader and manager for
software developer since 2000
§  Head of Product Development,
Polopoly Atex 2007 - 2011
§  Media business
§  Drive: Help organizations and
people fully realize their
potential (doing software
development)
Peter Antman
0760 140 150
peter.antman@crisp.se
@peterantman
www.crisp.se/konsulter/peter.antman
blog.crisp.se/peterantman, antman.se
Crisp is an employee owned company
known for agile courses with internationally
renowned teachers and experienced agile
developers and coaches.
h"p://blog.crisp.se	
  
Persistent improvements
§  Polopoly – Enterprise WebCMS
§  International take of 2008
§  Started Agile transformation 2007
§  Existed for 16 year
§  Large code base
§  Large user base
§  Thousands of editors, millions of users, billions of
page views
Development Manager @ Polopoly
Peter Antman 4
Organized around lean
principles
Cult of quality
http://commons.wikimedia.org/wiki/File:1924_Non-Stop_Shuttle_Change_Toyoda_Automatic_Loom,_Type_G_2.jpg	

The Type-G Toyoda Automatic Loom, the world's first automatic
loom with a non-stop shuttle-change motion, was invented by
Sakichi Toyoda in 1924. This loom automatically stopped when
it detected a problem such as thread breakage.
Time Boxed releases
No junk on trunk
9
REL
Team
Demoed
Team test branch (convinience)
Story branch
Allways releaseable!
Test everything!
http://www.makefive.com/categories/news-business/business/top-5-items-i-sold-on-ebay	

Continous integration
§  1.5 million lines of code
§  10 000 tests
§  PEAR
§  PAF
§  Upgrade, and more configurations
§  Five database vendors * multiple versions
§  Four browsers * multiple versions
§  Three web containers * multiple versions
§  Two JDK:s * multiple versions
§  Two core OS:es * multiple versions
§  Two EJB containers * multiple versions
Plattform to validate
Linux Windows	
  
Mysql	
   Oracle	
   Msql	
   Postgres	
   Derby	
  
Sun JDK IBM JDK
Tomcat JBossWeb WS Web
JBoss Websphere
Chrome Firefox Safari IE
1.5	
  
million	
  
10	
  000	
  tests	
  
Multiple
configurations	

Multiple versions
That’s a lot of tests
Had to build our own test cloud
§  Started with RedHat kickstart on old
machines under our tables
–  Fragile, hard to upgrade, electricity out takes
§  Went to static installs on blades
–  Lots of sys admin. One machine = one setup
§  Tried VMWare
–  Clock issues (went backwards)
§  Started using Amazon
–  To slow to upload our builds
§  Static Xen on local blades
–  One machine = one setup
§  Eucalytus (kvm) on local blades, elastic
cloud
–  Very buggy (more than 6 month to stabilize)
History
596 570For example when merging a bugfix to 9.10
Number of tests (november
2011)
Build Quality In: Stop the Line - Peter Antman
Our version of the automatic
loom
http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef014e8adc7838970d-pi
Compile class	

Test class	

Compile module	

Test module	

Build product	

Test product	

Acceptance test product	

Test on specific plattform	

Test with specific configuration	

At what stage is it possible
to continue working even if
it’s broken?
Incremental compile	

Software development
http://fixedgear.se/forum/viewtopic.php?f=1&t=2650&start=20	

Urban decay
http://www.codinghorror.com/blog/2005/06/the-broken-window-theory.html	

Broken Windows
A sociological theory from 1982
http://huntington.patch.com/articles/volunteers-clean-up-in-the-station#photo-5852615	

The New York Theorem:
Fighting big crime by picking
litter
http://www.makefive.com/categories/news-business/business/top-5-items-i-sold-on-ebay	

Broken builds are broken windows
The line must be stoped
manually
Tools
Culture
§  Everything must be tested
§  Examine each failed test, always
§  New bugs are,
–  either fixed when standing on them
–  handled as a ”fix next sprint” (first in line)
–  put into drawer
Stop the line and fix it
§  Bugs discovered by non automated tests are
fixed in next sprint
§  Philosophy: We strive not to produce software
with errors
§  Policy: If it had been covered by a test it would
have been fixed immediately
§  Practically: Old bugs tends to never get fixed
(adapt to capacity)
FixNextSprint – never let a
windows be broken
§  Integrate
–  first on ticket branch,
–  then team test branch,
–  then team branch,
–  then branch
§  Hide known bugs (KnownBugs)
§  Run only when changed (600 000 -> 100 000)
§  Nightly test check responsibility (rotate between teams)
§  Daily summary mail on test faults
§  Tickets for test faults
§  Indexed in Solr
§  Annotate in Jenkins
Tools and policies are necesary
Analyzing Test Faults
Clean up GoGreen
(adapt to capacity)
FixNextSprint
(Stop-the-line)
It’s a never ending work
Here’s a song to sing
I keep a close watch on these tests of mine
I keep my Jenkins open all the time
I see a defect coming down the line
Becuse you're mine, I stop the line

More Related Content

PDF
Growing up with agile - how the Spotify 'model' has evolved
PDF
180719 테헤란로 런치클럽-실무자 관점에서 본 Spotify의 유저리서치 방식 (Spotify 백원희님)
PDF
Joakim Sunden - Scaling Agile at Spotify for MassTLC
PDF
Empowering Engineering Talent - an update from Spotify
PDF
How spotify builds products
PDF
The Spotify Playbook
PDF
Scaling Operations At Spotify
PDF
scaling-agile-spotify
Growing up with agile - how the Spotify 'model' has evolved
180719 테헤란로 런치클럽-실무자 관점에서 본 Spotify의 유저리서치 방식 (Spotify 백원희님)
Joakim Sunden - Scaling Agile at Spotify for MassTLC
Empowering Engineering Talent - an update from Spotify
How spotify builds products
The Spotify Playbook
Scaling Operations At Spotify
scaling-agile-spotify

What's hot (20)

PDF
Spark 2016 - Jason Yip
PDF
Innovation and organization
PDF
Big Ideias about Spotify Culture
PDF
Agile Israel 2015 Trends Update
PDF
The Spotify Tribe
PDF
Lean Leadership Culture and Tools - Chris Hefley - Agile Israel 2015
PDF
Community building lessons from Ansible
PDF
Agile Transformations, the Good, the Bad and the Ugly
PDF
State of Drupal keynote, DrupalCon Austin
PPTX
Spotify Running: Lessons learned from building a ‘Lean Startup’ inside a big ...
PPTX
Agility2020 key takeaways
PPT
Scrum levels danny_kovatch_agile_sparks
PDF
Deploy First, Develop Later
PDF
How Product Managers Thrive in a DevOps World
PDF
"What is Lean Startup" @ブレークスルーキャンプby IMJ
PDF
Velocity Conference NYC 2014 - Real World DevOps
PPTX
The elevator speech
PPTX
'Agile Software Delivery: No Longer A Nice To Have': Robert Benefield @ Colom...
PDF
Agile concepts for quality and process engineers for slideshare
Spark 2016 - Jason Yip
Innovation and organization
Big Ideias about Spotify Culture
Agile Israel 2015 Trends Update
The Spotify Tribe
Lean Leadership Culture and Tools - Chris Hefley - Agile Israel 2015
Community building lessons from Ansible
Agile Transformations, the Good, the Bad and the Ugly
State of Drupal keynote, DrupalCon Austin
Spotify Running: Lessons learned from building a ‘Lean Startup’ inside a big ...
Agility2020 key takeaways
Scrum levels danny_kovatch_agile_sparks
Deploy First, Develop Later
How Product Managers Thrive in a DevOps World
"What is Lean Startup" @ブレークスルーキャンプby IMJ
Velocity Conference NYC 2014 - Real World DevOps
The elevator speech
'Agile Software Delivery: No Longer A Nice To Have': Robert Benefield @ Colom...
Agile concepts for quality and process engineers for slideshare
Ad

Viewers also liked (18)

PPTX
Stop the line @spotify
PPTX
Strong decisions with consensus, Agila Sverige 2014
PDF
Pirateship - growing a great crew: workshop facilitation guide
PPTX
User Story Workshop
PPTX
Facilitating the Elephant carpaccio exercise
PPTX
Testability for Developers
PDF
Evolving Design - 5 vanliga designmissar på webbar i dag & 5 tips på hur du s...
PPTX
Agila kontrakt - Frukostföreläsning för IT-chefer
PDF
Fluent at agile - agile sverige 2014
PPTX
Lean UX i Agila Team
PDF
Testing a 2D Platformer with Spock
PPTX
Tear Down the Pyramid Again - Agile Management from the trenches
PDF
Agile - What? Why? How?
PPTX
Dealing with combinatorial explosions and boring tests
PDF
Pair Programming at Klarna Tel Aviv
PPTX
Developer testing - Love it or hate it (in Swedish)
PPTX
Teaming Workshops
PDF
Leadership Tools for Better Teams - Personal History Exercise - 20150615
Stop the line @spotify
Strong decisions with consensus, Agila Sverige 2014
Pirateship - growing a great crew: workshop facilitation guide
User Story Workshop
Facilitating the Elephant carpaccio exercise
Testability for Developers
Evolving Design - 5 vanliga designmissar på webbar i dag & 5 tips på hur du s...
Agila kontrakt - Frukostföreläsning för IT-chefer
Fluent at agile - agile sverige 2014
Lean UX i Agila Team
Testing a 2D Platformer with Spock
Tear Down the Pyramid Again - Agile Management from the trenches
Agile - What? Why? How?
Dealing with combinatorial explosions and boring tests
Pair Programming at Klarna Tel Aviv
Developer testing - Love it or hate it (in Swedish)
Teaming Workshops
Leadership Tools for Better Teams - Personal History Exercise - 20150615
Ad

Similar to Build Quality In: Stop the Line - Peter Antman (20)

PDF
Introduction to Automated Testing
PDF
Introduction to-automated-testing
PDF
Continuous Testing
PPTX
Bootstrapping Quality
PDF
Continuous integration (eng)
PPTX
Sailing through devlopment with legacy code
PDF
High Performance Software Engineering Teams
PDF
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
PDF
Agile engineering environment 50 minutes or less
PDF
Agile Engineering Environment – 2017
PDF
Agile Engineering Environment – 2017
PDF
Clone Clone Make: a better way to build
PDF
Don't Suck at Building Stuff - Mykel Alvis at Puppet Camp Altanta
PDF
Agile methods cost of quality
PDF
Agile Methods Cost of Quality: Benefits of Testing Early & Often
PDF
Utilizing SVN Jenkins to Manage Multi-line Development to Deployments
PDF
QA Role in Agile Teams
ODP
Passing The Joel Test In The PHP World
KEY
PDF
Building Quality In in SAFe – The Testing Organization’s Perspective
Introduction to Automated Testing
Introduction to-automated-testing
Continuous Testing
Bootstrapping Quality
Continuous integration (eng)
Sailing through devlopment with legacy code
High Performance Software Engineering Teams
Multilanguage Pipelines with Jenkins, Docker and Kubernetes (Commit Conf 2018)
Agile engineering environment 50 minutes or less
Agile Engineering Environment – 2017
Agile Engineering Environment – 2017
Clone Clone Make: a better way to build
Don't Suck at Building Stuff - Mykel Alvis at Puppet Camp Altanta
Agile methods cost of quality
Agile Methods Cost of Quality: Benefits of Testing Early & Often
Utilizing SVN Jenkins to Manage Multi-line Development to Deployments
QA Role in Agile Teams
Passing The Joel Test In The PHP World
Building Quality In in SAFe – The Testing Organization’s Perspective

More from SmartBear (20)

PPTX
Enforcing Your Organization's API Design Standards with SwaggerHub
PPTX
Introducing OpenAPI Version 3.1
PPTX
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
PPTX
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
PPTX
How LISI Automotive Accelerated Application Delivery with SwaggerHub
PPTX
Standardising APIs: Powering the Platform Economy in Financial Services
PPTX
Getting Started with API Standardization in SwaggerHub
PPTX
Adopting a Design-First Approach to API Development with SwaggerHub
PPTX
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
PPTX
Effective API Lifecycle Management
PDF
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
PDF
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
PPTX
Artificial intelligence for faster and smarter software testing - Galway Mee...
PDF
Successfully Implementing BDD in an Agile World
PPTX
The Best Kept Secrets of Code Review | SmartBear Webinar
PPTX
How Capital One Scaled API Design to Deliver New Products Faster
PPTX
Testing Without a GUI Using TestComplete
PPTX
Hidden Treasure - TestComplete Script Extensions
PDF
How Bdd Can Save Agile
PPTX
API Automation and TDD to Implement Master Data Survivorship Rules
Enforcing Your Organization's API Design Standards with SwaggerHub
Introducing OpenAPI Version 3.1
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
How LISI Automotive Accelerated Application Delivery with SwaggerHub
Standardising APIs: Powering the Platform Economy in Financial Services
Getting Started with API Standardization in SwaggerHub
Adopting a Design-First Approach to API Development with SwaggerHub
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
Effective API Lifecycle Management
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
Artificial intelligence for faster and smarter software testing - Galway Mee...
Successfully Implementing BDD in an Agile World
The Best Kept Secrets of Code Review | SmartBear Webinar
How Capital One Scaled API Design to Deliver New Products Faster
Testing Without a GUI Using TestComplete
Hidden Treasure - TestComplete Script Extensions
How Bdd Can Save Agile
API Automation and TDD to Implement Master Data Survivorship Rules

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
cuic standard and advanced reporting.pdf
PDF
Modernizing your data center with Dell and AMD
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Advanced Soft Computing BINUS July 2025.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
GamePlan Trading System Review: Professional Trader's Honest Take
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
20250228 LYD VKU AI Blended-Learning.pptx
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Chapter 3 Spatial Domain Image Processing.pdf
MYSQL Presentation for SQL database connectivity
Review of recent advances in non-invasive hemoglobin estimation
Diabetes mellitus diagnosis method based random forest with bat algorithm
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Unlocking AI with Model Context Protocol (MCP)
cuic standard and advanced reporting.pdf
Modernizing your data center with Dell and AMD
Mobile App Security Testing_ A Comprehensive Guide.pdf
Electronic commerce courselecture one. Pdf
Advanced Soft Computing BINUS July 2025.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
GamePlan Trading System Review: Professional Trader's Honest Take
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....

Build Quality In: Stop the Line - Peter Antman

Editor's Notes

  • #17: stoppar bandet,på riktigt.Se bara på kurvan över buggar.Skuldberget som byggs.Man rensar,söker den gröna lampan.Men för att bergetska bli en kust, måste