SlideShare une entreprise Scribd logo
1  sur  44
Versioning schemes, branching models
Support your Continuous Delivery process
Continuous Delivery meetup, 18-05-2016
Triple, Alkmaar
Pavel Chunyayev
@PavelChunyayev
Amsterdam
Levi9 HQ
Amsterdam – 2005
25 people
Novi Sad
Serbia
Novi Sad – 2005
320+ people
Zrenjanin
Serbia
Zrenjanin– 2014
30+ people
Iasi
Romania
Iasi – 2007
80+ people
Kiev
Ukraine
Kiev – 2008
130+ people
@PavelChunyayev
Electronic
Retail
Digital
Marketing
Traffic and
Transport
Software
Services
@PavelChunyayev
Customer satisfaction 2015
• 4th year great results in Outsourcing Performance study
• 2015: 100% customer recommendation score
Excellent trust score
@PavelChunyayev
About me
• 12 years of IT experience
• Lived and worked in Ukraine and Estonia
• Moved a year and half ago to the Netherlands
• Love cycling
• Learn Dutch
• Alpe d’HuZes - http://deelnemers.opgevenisgeenoptie.nl/levi9
@PavelChunyayev
Continuous Delivery
@PavelChunyayev
Continuous Delivery
Incept
• Business idea
• Is needed
immediately
• Should be validated
Plan
• Refine
• Estimate
• Prioritize
Develop
• Put into sprint
• Develop in a branch
• Conduct a code
review
• Merge into master
Build
• Trigger pipeline
• Build
• Unit testing
• Integration testing
• Static code analysis
Test
• Contract testing
• E2E testing
• Security testing
• Resilience testing
Release
• Zero-downtime
• Canary testing
• Rolling deployment
• Blue / green
deployment
Operate
• Monitoring
• Validation of the
idea
• Money generation
• Disposal
@PavelChunyayev
Quality > Speed
@PavelChunyayev
Keep the product releasable
Build quality in
@PavelChunyayev
Build • Test • Release
@PavelChunyayev
Continuous Delivery
Incept
• Business idea
• Is needed
immediately
• Should be validated
Plan
• Refine
• Estimate
• Prioritize
Develop
• Put into sprint
• Develop in a branch
• Conduct a code
review
• Merge into master
Build
• Trigger pipeline
• Build
• Unit testing
• Integration testing
• Static code analysis
Test
• Contract testing
• E2E testing
• Security testing
• Resilience testing
Release
• Zero-downtime
• Canary testing
• Rolling deployment
• Blue / green
deployment
Operate
• Monitoring
• Validation of the
idea
• Money generation
• Disposal
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
Versioning
@PavelChunyayev
Versioning models
• Versioning SaaS vs installed applications
• Releases, bugfixes and hotfixes
• Numeric
• Date based
• Semantic versioning
• Marketing versions
@PavelChunyayev
Numeric
• Major.Minor
• Major.Minor.Patch
• Major.Minor.Patch.Build
• Major.Minor.Build
• Major.Minor.Build.Revision
• Major.Minor.Date
• 4.11, 5.2
• 5.2.1, 9.3.2
• 1.6.8.529
• 1.6.529
• 1.6.529.e91ba3
• 1.6.150518
@PavelChunyayev
Major.Minor
• -SNAPSHOT, -M1, -RC1, -RELEASE (.RELEASE)
• 1.0-SNAPSHOT
• 5.6-RC1
• 2.5.0-M2
• 5.2.1.RELEASE
@PavelChunyayev
How to change version?
• Software never reaching 1.0
• Rapidly increasing version
@PavelChunyayev
Date based
• Major.Minor.Date or just Date
• 2.5.201505181
• 0.2.2015051801
• 1.7.20150518001
• 1.0.201505181936
• 3.1.20150518193956
• 20150518194513
• 2015.05.18-19.46.15
@PavelChunyayev
Semantic versioning
• Major.minor.patch-prerelease+metadata
• 0.1.4-b45+d2e760
• 0.1.5-46
• 0.2.0-150518
• 0.2.1-prerelease+b538
• 1.0.0-alpha
• 1.3.9-beta
• 2.0.0
@PavelChunyayev
Semantic versioning
• Semver and continuous delivery
• Assigning a version before release or after?
• Enforcing the sequence of pull requests?
• Not really needed for SaaS
• Build number is an abuse of semantic versioning
• Backwards compartible change or not?
• Integrated application
• Collection of applications
@PavelChunyayev
Marketing version
• Whatever product management or marketing decide to call it
• 2016 Early
• 2016.5
• Ultra, Turbo, Extra, VIP, Premium, Free
• How often to release and how often to increase the version number?
@PavelChunyayev
How to generate and save version number
• In the source code
• External
• Date
• Build number
• Source control
• Bump up the version
• Before new feature or after new feature
• Manually vs script while commiting (hooks)
@PavelChunyayev
What to version?
• Your product
• Separate applications
• Libraries, building blocks and tools
• Public and private (internal versioning)
• Public (and private) API
• DB schemas
• Infrastructure configuration
@PavelChunyayev
Versioning things
• Embedded (meta information) vs filename
• Package the code and assign version to the packages
• Dependency management
• Latest
• Ranges
• Explicitly specified
@PavelChunyayev
Version of the product in
microservices world?
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Branching
@PavelChunyayev
Models
• SaaS vs installed
• Trunk-based
• Feature driven
• Release branches
• Git flow
• Open-source
@PavelChunyayev
Trunk based
@PavelChunyayev
Feature branching
@PavelChunyayev
Release branches
@PavelChunyayev
Gitflow
@PavelChunyayev
Open source model
@PavelChunyayev
Branching things
• Tagging
• Fork vs branching
• Pull requests (merge requests)
• Run tests
• Code review
@PavelChunyayev
Continuous Delivery
Incept
• Business idea
• Is needed
immediately
• Should be validated
Plan
• Refine
• Estimate
• Prioritize
Develop
• Put into sprint
• Develop in a branch
• Conduct a code
review
• Merge into master
Build
• Trigger pipeline
• Build
• Unit testing
• Integration testing
• Static code analysis
Test
• Contract testing
• E2E testing
• Security testing
• Resilience testing
Release
• Zero-downtime
• Canary testing
• Rolling deployment
• Blue / green
deployment
Operate
• Monitoring
• Validation of the
idea
• Money generation
• Disposal
Keep the product releasable
Build quality in
Version everything
Branch out when needed
@PavelChunyayev
Key takeaways
• Focus on quality, speed will come
• Quality has to be integral part of the process
• Version each artifact uniquely
• Select the branching model that supports
your product
• Integrate frequently
Any questions?
pavel@levi9.com

Contenu connexe

Tendances

Automated Page Composition - STM eProduction 2014
Automated Page Composition - STM eProduction 2014Automated Page Composition - STM eProduction 2014
Automated Page Composition - STM eProduction 2014Gareth Oakes
 
Quali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspectiveQuali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspectiveQualiQuali
 
Building a Performance A-Team
Building a Performance A-TeamBuilding a Performance A-Team
Building a Performance A-TeamSOASTA
 
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major EventsO'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major EventsSOASTA
 
Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015Pavel Chunyayev
 
VSTS Migration Briefing
VSTS Migration BriefingVSTS Migration Briefing
VSTS Migration BriefingAngela Dugan
 
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?Vincent Biret
 
JIRA Performance After 300,000 Issues
JIRA Performance After 300,000 IssuesJIRA Performance After 300,000 Issues
JIRA Performance After 300,000 IssuesAtlassian
 
Product Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from UranusProduct Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from UranusProduct Anonymous
 
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in AzureSPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in AzureVincent Biret
 
QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017QASymphony
 
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...Yves Hwang
 
Continuous Delivery en Tools
Continuous Delivery en ToolsContinuous Delivery en Tools
Continuous Delivery en ToolsDelta-N
 
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van HunenSPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van HunenDIWUG
 
Software Architecture for DevOps and Continuous Delivery
Software Architecture for DevOps and Continuous DeliverySoftware Architecture for DevOps and Continuous Delivery
Software Architecture for DevOps and Continuous DeliveryEberhard Wolff
 
VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
VarnaConf - Blue/Green Deployments with Docker, haproxy and ConsulVarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
VarnaConf - Blue/Green Deployments with Docker, haproxy and Consulzeridon
 
Deployment Automation in de praktijk
Deployment Automation in de praktijkDeployment Automation in de praktijk
Deployment Automation in de praktijkDelta-N
 

Tendances (20)

Automated Page Composition - STM eProduction 2014
Automated Page Composition - STM eProduction 2014Automated Page Composition - STM eProduction 2014
Automated Page Composition - STM eProduction 2014
 
Quali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspectiveQuali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspective
 
QualiSystems-Brief TestShell
QualiSystems-Brief TestShellQualiSystems-Brief TestShell
QualiSystems-Brief TestShell
 
Building a Performance A-Team
Building a Performance A-TeamBuilding a Performance A-Team
Building a Performance A-Team
 
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major EventsO'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
 
Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015
 
VSTS Migration Briefing
VSTS Migration BriefingVSTS Migration Briefing
VSTS Migration Briefing
 
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
 
JIRA Performance After 300,000 Issues
JIRA Performance After 300,000 IssuesJIRA Performance After 300,000 Issues
JIRA Performance After 300,000 Issues
 
Product Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from UranusProduct Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from Uranus
 
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in AzureSPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
 
QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017
 
Sysco DK DevOps
Sysco DK DevOpsSysco DK DevOps
Sysco DK DevOps
 
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
 
Service Virtualization - Kalpna
Service Virtualization - KalpnaService Virtualization - Kalpna
Service Virtualization - Kalpna
 
Continuous Delivery en Tools
Continuous Delivery en ToolsContinuous Delivery en Tools
Continuous Delivery en Tools
 
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van HunenSPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
 
Software Architecture for DevOps and Continuous Delivery
Software Architecture for DevOps and Continuous DeliverySoftware Architecture for DevOps and Continuous Delivery
Software Architecture for DevOps and Continuous Delivery
 
VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
VarnaConf - Blue/Green Deployments with Docker, haproxy and ConsulVarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
 
Deployment Automation in de praktijk
Deployment Automation in de praktijkDeployment Automation in de praktijk
Deployment Automation in de praktijk
 

En vedette

Redesigning the Netflix API - OSCON
Redesigning the Netflix API - OSCONRedesigning the Netflix API - OSCON
Redesigning the Netflix API - OSCONDaniel Jacobson
 
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Daniel Jacobson
 
Next Generation Development Infrastructure with the Maven Enterprise Stack
Next Generation Development Infrastructure with the Maven Enterprise StackNext Generation Development Infrastructure with the Maven Enterprise Stack
Next Generation Development Infrastructure with the Maven Enterprise StackTim O'Brien
 
NuGet package CI and CD
NuGet package CI and CDNuGet package CI and CD
NuGet package CI and CDYu GUAN
 
Workshop empowering teams
Workshop empowering teamsWorkshop empowering teams
Workshop empowering teamsNiels Verdonk
 
Understanding Kanban
Understanding KanbanUnderstanding Kanban
Understanding Kanbannikos batsios
 
IA & UX: Where Great Design Journeys Begin
IA & UX: Where Great Design Journeys BeginIA & UX: Where Great Design Journeys Begin
IA & UX: Where Great Design Journeys BeginFINE Design Group
 
From Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsFrom Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsLuca Minudel
 
Microservices Development Process at Predix.io
Microservices Development Process at Predix.ioMicroservices Development Process at Predix.io
Microservices Development Process at Predix.ioConstantine Grigel
 
How to Calculate Average First Reply Time
How to Calculate Average First Reply TimeHow to Calculate Average First Reply Time
How to Calculate Average First Reply TimeKayako
 
Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.Hitaishi Gupta
 
What Is Customer Effort Score and How Do You Measure CES?
What Is Customer Effort Score and How Do You Measure CES?What Is Customer Effort Score and How Do You Measure CES?
What Is Customer Effort Score and How Do You Measure CES?Kayako
 
Chapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive CompensationChapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive CompensationRayman Soe
 
Personas Demystified 1.0
Personas Demystified 1.0Personas Demystified 1.0
Personas Demystified 1.0Mo Goltz
 
How to Measure Net Promoter Score (NPS)
How to Measure Net Promoter Score (NPS)How to Measure Net Promoter Score (NPS)
How to Measure Net Promoter Score (NPS)Kayako
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven DevelopmentLiz Keogh
 
Microservices: The Right Way
Microservices: The Right WayMicroservices: The Right Way
Microservices: The Right WayDaniel Woods
 

En vedette (20)

Redesigning the Netflix API - OSCON
Redesigning the Netflix API - OSCONRedesigning the Netflix API - OSCON
Redesigning the Netflix API - OSCON
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014
 
Next Generation Development Infrastructure with the Maven Enterprise Stack
Next Generation Development Infrastructure with the Maven Enterprise StackNext Generation Development Infrastructure with the Maven Enterprise Stack
Next Generation Development Infrastructure with the Maven Enterprise Stack
 
NuGet package CI and CD
NuGet package CI and CDNuGet package CI and CD
NuGet package CI and CD
 
Workshop empowering teams
Workshop empowering teamsWorkshop empowering teams
Workshop empowering teams
 
Understanding Kanban
Understanding KanbanUnderstanding Kanban
Understanding Kanban
 
IA & UX: Where Great Design Journeys Begin
IA & UX: Where Great Design Journeys BeginIA & UX: Where Great Design Journeys Begin
IA & UX: Where Great Design Journeys Begin
 
From Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsFrom Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOps
 
Microservices Development Process at Predix.io
Microservices Development Process at Predix.ioMicroservices Development Process at Predix.io
Microservices Development Process at Predix.io
 
How to Calculate Average First Reply Time
How to Calculate Average First Reply TimeHow to Calculate Average First Reply Time
How to Calculate Average First Reply Time
 
Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.
 
What Is Customer Effort Score and How Do You Measure CES?
What Is Customer Effort Score and How Do You Measure CES?What Is Customer Effort Score and How Do You Measure CES?
What Is Customer Effort Score and How Do You Measure CES?
 
Chapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive CompensationChapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive Compensation
 
Personas Demystified 1.0
Personas Demystified 1.0Personas Demystified 1.0
Personas Demystified 1.0
 
How to Measure Net Promoter Score (NPS)
How to Measure Net Promoter Score (NPS)How to Measure Net Promoter Score (NPS)
How to Measure Net Promoter Score (NPS)
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
Compensation practices
Compensation practicesCompensation practices
Compensation practices
 
Microservices: The Right Way
Microservices: The Right WayMicroservices: The Right Way
Microservices: The Right Way
 
Compensation & benefit presentation
Compensation & benefit presentation Compensation & benefit presentation
Compensation & benefit presentation
 

Similaire à Versioning schemes and branching models for Continuous Delivery - Continuous Delivery meetup - Alkmaar, 18-05-2016

Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016Pavel Chunyayev
 
Building Quality into Your DevSecOps Pipelines
Building Quality into Your DevSecOps PipelinesBuilding Quality into Your DevSecOps Pipelines
Building Quality into Your DevSecOps PipelinesInflectra
 
REALTECH SmartChange solutions ppt
REALTECH SmartChange solutions pptREALTECH SmartChange solutions ppt
REALTECH SmartChange solutions pptDavid Milano
 
Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?C4Media
 
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...SmartBear
 
Crowd Nidhi Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi   Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi   Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi
 
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...Gene Kim
 
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16AppDynamics
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0minseok kim
 
DevOps for Network Engineers
DevOps for Network EngineersDevOps for Network Engineers
DevOps for Network Engineersstefan vallin
 
Beyond DevOps - How Netflix Bridges the Gap
Beyond DevOps - How Netflix Bridges the GapBeyond DevOps - How Netflix Bridges the Gap
Beyond DevOps - How Netflix Bridges the GapJosh Evans
 
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s GoingWSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s GoingWSO2
 
Productionizing Data Science at Experience
Productionizing Data Science at ExperienceProductionizing Data Science at Experience
Productionizing Data Science at ExperienceMatt Mills
 
Analyzing the World's Largest Security Data Lake!
Analyzing the World's Largest Security Data Lake!Analyzing the World's Largest Security Data Lake!
Analyzing the World's Largest Security Data Lake!DataWorks Summit
 
The Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous IntegrationThe Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous IntegrationSauce Labs
 
Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS MigrationOut With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS MigrationAcquia
 
Cloud migration Through Automation
Cloud migration Through AutomationCloud migration Through Automation
Cloud migration Through AutomationUni Systems S.M.S.A.
 

Similaire à Versioning schemes and branching models for Continuous Delivery - Continuous Delivery meetup - Alkmaar, 18-05-2016 (20)

Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
 
Building Quality into Your DevSecOps Pipelines
Building Quality into Your DevSecOps PipelinesBuilding Quality into Your DevSecOps Pipelines
Building Quality into Your DevSecOps Pipelines
 
REALTECH SmartChange solutions ppt
REALTECH SmartChange solutions pptREALTECH SmartChange solutions ppt
REALTECH SmartChange solutions ppt
 
Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?
 
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
 
Crowd Nidhi Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi   Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi   Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi Advanced quality assurance practice - v1.0 -2021
 
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
 
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
 
DevOps for Network Engineers
DevOps for Network EngineersDevOps for Network Engineers
DevOps for Network Engineers
 
Beyond DevOps - How Netflix Bridges the Gap
Beyond DevOps - How Netflix Bridges the GapBeyond DevOps - How Netflix Bridges the Gap
Beyond DevOps - How Netflix Bridges the Gap
 
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s GoingWSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
 
Productionizing Data Science at Experience
Productionizing Data Science at ExperienceProductionizing Data Science at Experience
Productionizing Data Science at Experience
 
Analyzing the World's Largest Security Data Lake!
Analyzing the World's Largest Security Data Lake!Analyzing the World's Largest Security Data Lake!
Analyzing the World's Largest Security Data Lake!
 
The Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous IntegrationThe Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous Integration
 
Hanu Software- Overview
Hanu Software- OverviewHanu Software- Overview
Hanu Software- Overview
 
Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS MigrationOut With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
 
Cloud migration Through Automation
Cloud migration Through AutomationCloud migration Through Automation
Cloud migration Through Automation
 

Dernier

Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineeringssuserb3a23b
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 

Dernier (20)

Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineering
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 

Versioning schemes and branching models for Continuous Delivery - Continuous Delivery meetup - Alkmaar, 18-05-2016

Notes de l'éditeur

  1. Ideas come from all the sources. Questions are welcome. Disagreement is welcome, but after the talk.
  2. .
  3. .
  4. .
  5. .
  6. Not every feature is needed. Shorter and shorter release cycles => Release more software in less time.
  7. Can’t churn out. No manual testing.
  8. .
  9. .
  10. .
  11. Reproducible and repeatable process (including testing). Potentially shippable product -> Keeping the product releasable
  12. .
  13. Testing criteria. Run over and over again.
  14. .
  15. No DTAP. Immutable (testing framework?) TTL Docker Framework to allow restart - select arbitrary test
  16. Windows 95 vs 98 Web 2.0 Star Wars, Terminator BMW
  17. FreeBSD
  18. F: 2 years to reach 1.0 6 years to reach 4.0 Latest is Firefox 54 Chrome 1.0 -> 4 in 1 year (Chrome 52)
  19. .
  20. .
  21. .
  22. Marketing vs CD
  23. Infrastructure becomes integrated with application
  24. .
  25. .
  26. * Semantic or not semantic * API versioning - public or also internal? * Transition between versions – testing different versions * Running several versions together
  27. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  28. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  29. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  30. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  31. You have to collaborate and therefore to work along with different people on the same repository
  32. Ideal for CD Tricky to convince developers to try Tricky with multiple developers Tricky with multiple teams Tricky for installed software Possible with correct tooling
  33. Golden standard for git Branches are used for convenience Works if branches are short lived Pull frequently from master Or before merge Or automatically Merge commits
  34. Supports installed software Easy for bug- and hot-fixes Tricky to manage Requires a role of release engineer or manager Tags can replace branches If you don’t support then long
  35. Good and easy for installed software Manual release process Cherry picking Can be trickier to use with CI/CD Merge commits
  36. Fork Add upstream as remote Code Squash commits Open Pull Request Merge Or get your PR rejected :)