SlideShare a Scribd company logo
# 
Hans van der Meer 
Engineering Manager Desktop Clients
#
# 
• About the speaker and about P4V 
• Philosophy “elevator pitch” of Development 
Practices 
• Our approach moving P4V to CD 
• It is all about testing 
• Tying it together 
• How our customers will benefit 
• Q & A
# 
• Been around and … seen my share of Software 
Development practices, so has P4V 
• This talk is about P4V's dive into CD 
– How did we take it on? 
– Where are we now? 
– Will the customer see a difference?
# 
The product lifecycle is a steady flow, 
from concept to implementation 
Design 
Prototype 
Implementation 
Testing 
Maintenance 
Analysis
# 
• Anticipate change 
• Define small deliverables 
• One sprint at a time 
• Issues are always evolving 
• Teams organize themselves 
• Daily standups
# 
• Focus on improving process 
• Fine-tune deployment pipeline 
• Continuous deployment 
– Test the product effectively 
– Deploy all the time 
– Remove roadblocks 
– Gather feedback often and early 
• Automate as much as you can
#
# 
• Contains legacy code 
• Desktop UI product 
• Multi-platform 
• Elaborate: Does many things in many different ways 
• Customers choose when to upgrade. 
Early adoption? 
• No plans to abandon the Release Model
# 
• Speed up the delivery of fixes in our release lines 
• Promote ‘Early adoption’ 
• Improve the Quality of the product 
– Guarantee consistency and rapid delivery by automating 
what is repetitive 
– ‘Ease of release’ will free up time for more testing and 
development
# 
• An upside-down look at CD 
• What are our goals? / How can we get there? 
– Where can we fine-tune deployment pipeline? 
– What gives us the best ROI? 
– Where does CD make most sense? 
– How to be confident assuming a short turnaround?
# 
• Mainline vs Release Branches 
– Release Branch 
• Push every fix as soon as possible 
• Eliminate the red tape where you can 
– Mainline 
• Support regular snapshots 
• Deployable at all times
# 
Embedded Team 
Build 
Initial Docs 
Test & Confirm 
Push 
Functional Teams 
Build Team 
Documentation 
Test 
• Builds are now ‘Push First’, ‘Notify Later’ 
• One fix per push (deploying is cheap)
# 
• Exploratory testing 
– Gain a thorough understanding 
– Make the Software really work 
– Find bugs 
• Formalize your test 
– Make sure you can repeat it and write it down 
• Automate it if you can
# 
• Squish (High maintenance) 
– Intelligent recording and playback 
– Object recognition 
– Generates scripts to run 
• Sikuli (Low maintenance) 
– Identifies GUI elements using image recognition 
– Simple python scripts (no recording)
#
# 
• Exploratory testing 
• Unit tests 
• API regression tests 
• Performance tests 
• Coverity 
• Manual testing 
• Automated test suite
# 
• Automated tests (Sikuli) 
– Jenkins 
– Results posted 
• Performance tests (Squish) 
– Staged machines (Cron jobs) 
– Result saved in Perforce 
• Builds 
– Electric Commander 
– Staged environments (on build machines)
# 
• Upcoming releases 
– No accumulated patch releases, every fix is now a patch 
– Fix it, push it, then let everybody know 
The Development Branch (upcoming release) 
– The release is always deployment ready 
– Push out snapshots regularly to ftp for customers 
– Get customer feedback while developing the product 
(latest P4V snapshot : ftp://ftp.perforce.com/perforce/snapshot/p4v/)
# 
• Benefits 
– CD forces you to analyze and improve your pipelines 
– You can focus more on Exploratory testing when 
bumping up Automated testing 
• Pitfalls 
– False security, when only relying on automated testing 
– Aim for “Quality trumps any methodology”
# 
RESOURCES 
Webinar: 
info.perforce.com/webinar-continuous-delivery-best-practices-revealed 
Perforce adapting CD: 
www.perforce.com/blog/140311/why-perforce-adopting-continuous-delivery
# 
Han van der Meer 
hans@perforce.com

More Related Content

What's hot (20)

PPT
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên
Nexus FrontierTech
 
PPTX
Test Driven Development & CI/CD
Shanmuga S Muthu
 
PPTX
Leandro Melendez - Switching Performance Left & Right
Neotys_Partner
 
PPTX
Dev/Test scenarios in DevOps world
Davide Benvegnù
 
PDF
Adopting Continuous Integration in an Ops Group
colleenfry
 
PDF
Verification for system companies (LI) - value proposition
Hagai Arbel
 
PDF
Continuous integration using Jenkins and Sonar
Pascal Larocque
 
PDF
Production Ready WordPress - WC Utrecht 2017
Edmund Turbin
 
PDF
Production Ready WordPress #WPLDN
Edmund Turbin
 
PDF
DevOps is a Journey - Choose Your Own Adventure
Fabian Iannarella
 
PPTX
CI/CD and automated Test
Joe Phan
 
PPTX
Gaming AWS with Docker - Gluecon 2014
Avi Cavale
 
PPTX
OPNFV CI and Challenges: How we solved them - if we solved them at all!
Fatih Degirmenci
 
PPTX
Continuous Delivery in Practice (extended)
Tzach Zohar
 
PPTX
Trunk Based Development in the Enterprise - Its Relevance and Economics
Perforce
 
PDF
2016 09-dev opsjourney-devopsdaysoslo
Jon Arild Tørresdal
 
PPTX
DevOps @ IBM DeveloperConnect, Twickenham Stadium
Jonathan Fletcher
 
PPTX
Continuos integration with Jenkins for iOS | SuperSpeakers@CodeCamp Iasi, 2014
Endava
 
PPTX
Anatomy of a Continuous Delivery Pipeline
kamalikamj
 
PPTX
The Hard Problems of Continuous Deployment
Timothy Fitz
 
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên
Nexus FrontierTech
 
Test Driven Development & CI/CD
Shanmuga S Muthu
 
Leandro Melendez - Switching Performance Left & Right
Neotys_Partner
 
Dev/Test scenarios in DevOps world
Davide Benvegnù
 
Adopting Continuous Integration in an Ops Group
colleenfry
 
Verification for system companies (LI) - value proposition
Hagai Arbel
 
Continuous integration using Jenkins and Sonar
Pascal Larocque
 
Production Ready WordPress - WC Utrecht 2017
Edmund Turbin
 
Production Ready WordPress #WPLDN
Edmund Turbin
 
DevOps is a Journey - Choose Your Own Adventure
Fabian Iannarella
 
CI/CD and automated Test
Joe Phan
 
Gaming AWS with Docker - Gluecon 2014
Avi Cavale
 
OPNFV CI and Challenges: How we solved them - if we solved them at all!
Fatih Degirmenci
 
Continuous Delivery in Practice (extended)
Tzach Zohar
 
Trunk Based Development in the Enterprise - Its Relevance and Economics
Perforce
 
2016 09-dev opsjourney-devopsdaysoslo
Jon Arild Tørresdal
 
DevOps @ IBM DeveloperConnect, Twickenham Stadium
Jonathan Fletcher
 
Continuos integration with Jenkins for iOS | SuperSpeakers@CodeCamp Iasi, 2014
Endava
 
Anatomy of a Continuous Delivery Pipeline
kamalikamj
 
The Hard Problems of Continuous Deployment
Timothy Fitz
 

Similar to Continuous Development: Supporting a Release Model (20)

PPT
Continuous deployment steve povilaitis
Steve Povilaitis
 
PDF
Constant Contact SF's Road to CD
Solano Labs
 
PDF
DevOps in an Embedded World
Sajeewa Dayaratne
 
PPTX
Agile, DevOps & Test
Qualitest
 
PPTX
Continuous Integration and Delivery at Shapeways (Matt Boyle)
Nordic APIs
 
PDF
Continuous Testing
jaredrrichardson
 
PPTX
Rising Above the Noise: Continuous Integration, Delivery and DevOps
IBM UrbanCode Products
 
PDF
The Evolution of Continuous Delivery at Scale @ Linkedin
C4Media
 
PDF
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
Mozaic Works
 
PPTX
Continuous delivery applied (RJUG)
Mike McGarr
 
PPTX
Continuous Delivery
Mike McGarr
 
PDF
Continous Delivery Toronto Presentation
XebiaLabs
 
PPTX
Tester’s considerations when moving towards successful CI/CD
Derk-Jan de Grood
 
PPTX
Agile Engineering Sparker GLASScon 2015
Stephen Ritchie
 
PDF
Continuous Delivery: releasing Better and Faster at Dashlane
Dashlane
 
PPTX
Our Journey To Continuous Delivery
Robert Mircea
 
PPT
DevOps / Agile Tools Seminar 2013
Ethan Ram
 
PDF
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
XebiaLabs
 
PDF
Continuous, continuous, continuous
Michele Orselli
 
PPTX
ContinuousDelivery-101
Kishore Bhatia
 
Continuous deployment steve povilaitis
Steve Povilaitis
 
Constant Contact SF's Road to CD
Solano Labs
 
DevOps in an Embedded World
Sajeewa Dayaratne
 
Agile, DevOps & Test
Qualitest
 
Continuous Integration and Delivery at Shapeways (Matt Boyle)
Nordic APIs
 
Continuous Testing
jaredrrichardson
 
Rising Above the Noise: Continuous Integration, Delivery and DevOps
IBM UrbanCode Products
 
The Evolution of Continuous Delivery at Scale @ Linkedin
C4Media
 
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
Mozaic Works
 
Continuous delivery applied (RJUG)
Mike McGarr
 
Continuous Delivery
Mike McGarr
 
Continous Delivery Toronto Presentation
XebiaLabs
 
Tester’s considerations when moving towards successful CI/CD
Derk-Jan de Grood
 
Agile Engineering Sparker GLASScon 2015
Stephen Ritchie
 
Continuous Delivery: releasing Better and Faster at Dashlane
Dashlane
 
Our Journey To Continuous Delivery
Robert Mircea
 
DevOps / Agile Tools Seminar 2013
Ethan Ram
 
Preparing for Enterprise Continuous Delivery - 5 Critical Steps
XebiaLabs
 
Continuous, continuous, continuous
Michele Orselli
 
ContinuousDelivery-101
Kishore Bhatia
 
Ad

More from Perforce (20)

PDF
How to Organize Game Developers With Different Planning Needs
Perforce
 
PDF
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Perforce
 
PDF
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Perforce
 
PDF
Understanding Compliant Workflow Enforcement SOPs
Perforce
 
PDF
Branching Out: How To Automate Your Development Process
Perforce
 
PDF
How to Do Code Reviews at Massive Scale For DevOps
Perforce
 
PDF
How to Spark Joy In Your Product Backlog
Perforce
 
PDF
Going Remote: Build Up Your Game Dev Team
Perforce
 
PDF
Shift to Remote: How to Manage Your New Workflow
Perforce
 
PPTX
Hybrid Development Methodology in a Regulated World
Perforce
 
PPTX
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Perforce
 
PDF
Easier Requirements Management Using Diagrams In Helix ALM
Perforce
 
PDF
How To Master Your Mega Backlog
Perforce
 
PDF
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Perforce
 
PDF
How to Scale With Helix Core and Microsoft Azure
Perforce
 
PDF
Achieving Software Safety, Security, and Reliability Part 2
Perforce
 
PDF
Should You Break Up With Your Monolith?
Perforce
 
PDF
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Perforce
 
PDF
What's New in Helix ALM 2019.4
Perforce
 
PDF
Free Yourself From the MS Office Prison
Perforce
 
How to Organize Game Developers With Different Planning Needs
Perforce
 
Regulatory Traceability: How to Maintain Compliance, Quality, and Cost Effic...
Perforce
 
Efficient Security Development and Testing Using Dynamic and Static Code Anal...
Perforce
 
Understanding Compliant Workflow Enforcement SOPs
Perforce
 
Branching Out: How To Automate Your Development Process
Perforce
 
How to Do Code Reviews at Massive Scale For DevOps
Perforce
 
How to Spark Joy In Your Product Backlog
Perforce
 
Going Remote: Build Up Your Game Dev Team
Perforce
 
Shift to Remote: How to Manage Your New Workflow
Perforce
 
Hybrid Development Methodology in a Regulated World
Perforce
 
Better, Faster, Easier: How to Make Git Really Work in the Enterprise
Perforce
 
Easier Requirements Management Using Diagrams In Helix ALM
Perforce
 
How To Master Your Mega Backlog
Perforce
 
Achieving Software Safety, Security, and Reliability Part 3: What Does the Fu...
Perforce
 
How to Scale With Helix Core and Microsoft Azure
Perforce
 
Achieving Software Safety, Security, and Reliability Part 2
Perforce
 
Should You Break Up With Your Monolith?
Perforce
 
Achieving Software Safety, Security, and Reliability Part 1: Common Industry ...
Perforce
 
What's New in Helix ALM 2019.4
Perforce
 
Free Yourself From the MS Office Prison
Perforce
 
Ad

Recently uploaded (20)

PDF
Sound the Alarm: Detection and Response
VICTOR MAESTRE RAMIREZ
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
PPTX
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
PPTX
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
PDF
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
PDF
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PDF
Understanding The True Cost of DynamoDB Webinar
ScyllaDB
 
PDF
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
PDF
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
WSO2
 
PDF
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
PDF
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
PDF
Next Generation AI: Anticipatory Intelligence, Forecasting Inflection Points ...
dleka294658677
 
PDF
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
PPTX
Securing Model Context Protocol with Keycloak: AuthN/AuthZ for MCP Servers
Hitachi, Ltd. OSS Solution Center.
 
PDF
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
Modern Decentralized Application Architectures.pdf
Kalema Edgar
 
PDF
Pipeline Industry IoT - Real Time Data Monitoring
Safe Software
 
PDF
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
PDF
DoS Attack vs DDoS Attack_ The Silent Wars of the Internet.pdf
CyberPro Magazine
 
Sound the Alarm: Detection and Response
VICTOR MAESTRE RAMIREZ
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
Understanding The True Cost of DynamoDB Webinar
ScyllaDB
 
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
WSO2
 
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
Next Generation AI: Anticipatory Intelligence, Forecasting Inflection Points ...
dleka294658677
 
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
Securing Model Context Protocol with Keycloak: AuthN/AuthZ for MCP Servers
Hitachi, Ltd. OSS Solution Center.
 
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
Modern Decentralized Application Architectures.pdf
Kalema Edgar
 
Pipeline Industry IoT - Real Time Data Monitoring
Safe Software
 
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
DoS Attack vs DDoS Attack_ The Silent Wars of the Internet.pdf
CyberPro Magazine
 

Continuous Development: Supporting a Release Model

  • 1. # Hans van der Meer Engineering Manager Desktop Clients
  • 2. #
  • 3. # • About the speaker and about P4V • Philosophy “elevator pitch” of Development Practices • Our approach moving P4V to CD • It is all about testing • Tying it together • How our customers will benefit • Q & A
  • 4. # • Been around and … seen my share of Software Development practices, so has P4V • This talk is about P4V's dive into CD – How did we take it on? – Where are we now? – Will the customer see a difference?
  • 5. # The product lifecycle is a steady flow, from concept to implementation Design Prototype Implementation Testing Maintenance Analysis
  • 6. # • Anticipate change • Define small deliverables • One sprint at a time • Issues are always evolving • Teams organize themselves • Daily standups
  • 7. # • Focus on improving process • Fine-tune deployment pipeline • Continuous deployment – Test the product effectively – Deploy all the time – Remove roadblocks – Gather feedback often and early • Automate as much as you can
  • 8. #
  • 9. # • Contains legacy code • Desktop UI product • Multi-platform • Elaborate: Does many things in many different ways • Customers choose when to upgrade. Early adoption? • No plans to abandon the Release Model
  • 10. # • Speed up the delivery of fixes in our release lines • Promote ‘Early adoption’ • Improve the Quality of the product – Guarantee consistency and rapid delivery by automating what is repetitive – ‘Ease of release’ will free up time for more testing and development
  • 11. # • An upside-down look at CD • What are our goals? / How can we get there? – Where can we fine-tune deployment pipeline? – What gives us the best ROI? – Where does CD make most sense? – How to be confident assuming a short turnaround?
  • 12. # • Mainline vs Release Branches – Release Branch • Push every fix as soon as possible • Eliminate the red tape where you can – Mainline • Support regular snapshots • Deployable at all times
  • 13. # Embedded Team Build Initial Docs Test & Confirm Push Functional Teams Build Team Documentation Test • Builds are now ‘Push First’, ‘Notify Later’ • One fix per push (deploying is cheap)
  • 14. # • Exploratory testing – Gain a thorough understanding – Make the Software really work – Find bugs • Formalize your test – Make sure you can repeat it and write it down • Automate it if you can
  • 15. # • Squish (High maintenance) – Intelligent recording and playback – Object recognition – Generates scripts to run • Sikuli (Low maintenance) – Identifies GUI elements using image recognition – Simple python scripts (no recording)
  • 16. #
  • 17. # • Exploratory testing • Unit tests • API regression tests • Performance tests • Coverity • Manual testing • Automated test suite
  • 18. # • Automated tests (Sikuli) – Jenkins – Results posted • Performance tests (Squish) – Staged machines (Cron jobs) – Result saved in Perforce • Builds – Electric Commander – Staged environments (on build machines)
  • 19. # • Upcoming releases – No accumulated patch releases, every fix is now a patch – Fix it, push it, then let everybody know The Development Branch (upcoming release) – The release is always deployment ready – Push out snapshots regularly to ftp for customers – Get customer feedback while developing the product (latest P4V snapshot : ftp://ftp.perforce.com/perforce/snapshot/p4v/)
  • 20. # • Benefits – CD forces you to analyze and improve your pipelines – You can focus more on Exploratory testing when bumping up Automated testing • Pitfalls – False security, when only relying on automated testing – Aim for “Quality trumps any methodology”
  • 21. # RESOURCES Webinar: info.perforce.com/webinar-continuous-delivery-best-practices-revealed Perforce adapting CD: www.perforce.com/blog/140311/why-perforce-adopting-continuous-delivery