SlideShare a Scribd company logo
1 of 17
CONTINUOUS INTEGRATION 
Do it yourself 
august 2014 
Seite 1 von 10 © 2014 INNOMOS GmbH www.innomos.de
CONTINUOUS WHAT? 
DETERMINATION 
Martin Fowler 
Software engineer, champion of Continuous integration 
“Continuous Integration (CI) is a software development 
practice where members of a team integrate their work 
frequently, usually each person integrates at least daily - 
leading to multiple integrations per day. Each integration is 
verified by an automated build (including test) to detect 
integration errors as quickly as possible. Many teams find that 
this approach leads to significantly reduced integration 
problems and allows a team to develop cohesive software 
more rapidly.”
CONTINUOUS WHAT? 
DETERMINATION 
“CI is about reducing the time between 
creating a failure and being able to do 
something about it”
ARCHITECTURE 
SOFTWARE COMPONENTS 
JIRA 
bugtracker 
Bamboo 
continuous 
integration 
GitLab 
source code 
OwnCloud 
file storage 
Confluence 
docs 
Autot 
ests 
UI, unit, 
load
ARCHITECTURE 
SOFTWARE COMPONENTS 
JIRA 
bugtracker 
Bamboo 
continuous 
integration 
GitLab 
source code 
OwnCloud 
file storage 
Confluence 
docs 
Autot 
ests 
UI, unit, 
load 
Submit code 
Developer 
Pick task 
Fetch code 
Build 
Test 
Deliver
WHAT WAS BEFORE 
LIFE BEFORE CONTINUOUS INTEGRATION 
- manual QA 
- no unit-testing 
- integration hell 
- resistance to agile practice in INNOMOS 
- 2-3 weeks deployment times 
- manual build
WHAT'S NOW 
LIFE AFTER CONTINUOUS INTEGRATION 
- automated tests, minimized time for regression 
- unit-tests are running after the build 
- integration with every commit 
- CI is Agile 
- potentially shippable product everyday 
- fully automated build
CI BENEFITS 
...FOR PROJECT MANAGER 
- automates the build 
- reduced risks, makes deployment more predictable 
- immediate feedback when there is a problem 
- everyone can see what’s happening in real time 
- avoid last minute chaos at release dates 
- constant availability of a current build 
- potentially shippable product at frequent intervals 
- easy-to find builds history 
- build are associated with tasks
CI BENEFITS 
...FOR PROJECT MANAGER
CI BENEFITS 
...FOR PROJECT MANAGER
CI BENEFITS 
...FOR DEVELOPER 
- everyone commits to the mainline everyday 
- every commit to the mainline results a build 
- code stability 
- minimize integration risk 
- unit tests had to pass for deploy 
- continuous detection and fixing of integration problems 
- integration happens before it gets hairy 
- automate the deployment
CI BENEFITS 
...FOR QA 
- easier defect diagnostics 
- test code as often as needed for early bug detections 
- great way to improve quality of the software 
- make build self-testing 
- qa teams don't wait for new features deployment 
- regression tests can be automated up to 100%
CI DISADVANTAGES 
HARDWARE/SOFTWARE/TEST SUITE 
- initial setup time required, as well as the training 
to get acquainted with CI server - DONE 
- well-developed test-suite required – IN PROGRESS 
- requires many resources for CI server - UNRESOLVED
WHAT IS BAMBOO 
CI SERVER SOFTWARE 
About 
- 6 years old 
- 100+ plugins 
- Atlassian leading product 
- easy to install and use 
Functions 
- run builds and tests 
- connects issues, commits, test results, and deploys 
- configurable build plans and tasks 
- easy and better CI 
- first-class deployment 
- suitable for any language/technology
CI IN ACTION 
IOS/Android/RoR demos 
Demo iOS 
- latest build on Marco Polo 
- links to issues 
- commits 
- UI tests 
Demo Android 
- unit tests 
Demo Backend 
- RoR tests
CONTINUOUS WHAT? 
DETERMINATION 
“Continuous integration doesn’t get rid 
of bugs, but it does make them 
dramatically easier to find and remove”
Seite 17 von 10 © 2014 INNOMOS GmbH www.innomos.de 
INNOMOS UKRAINE 
Kiev 
Grinchenko str, 4b, 2nd floor 
www.innomos.com

More Related Content

What's hot

What's hot (20)

Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
Puppet Camp Melbourne Nov 2014 - A Build Engineering Team’s Journey of Infras...
 
Amazon Web Services for the .NET Developer
Amazon Web Services for the .NET DeveloperAmazon Web Services for the .NET Developer
Amazon Web Services for the .NET Developer
 
DevOps at Amazon: A Look at Our Tools and Processes
DevOps at Amazon: A Look at Our Tools and ProcessesDevOps at Amazon: A Look at Our Tools and Processes
DevOps at Amazon: A Look at Our Tools and Processes
 
Atlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps SessionAtlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps Session
 
Infrastructure as Code (BBWorld/DevCon13)
Infrastructure as Code (BBWorld/DevCon13)Infrastructure as Code (BBWorld/DevCon13)
Infrastructure as Code (BBWorld/DevCon13)
 
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalkContinuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
 
Serverless Delivery
Serverless DeliveryServerless Delivery
Serverless Delivery
 
CI/CD on AWS Deploy Everything All the Time
CI/CD on AWS Deploy Everything All the TimeCI/CD on AWS Deploy Everything All the Time
CI/CD on AWS Deploy Everything All the Time
 
Microsoft Tech Summit Switzerland 2019 - DOCKER + AZURE DEVOPS + KUBERNETES = ♥
Microsoft Tech Summit Switzerland 2019 - DOCKER + AZURE DEVOPS + KUBERNETES = ♥Microsoft Tech Summit Switzerland 2019 - DOCKER + AZURE DEVOPS + KUBERNETES = ♥
Microsoft Tech Summit Switzerland 2019 - DOCKER + AZURE DEVOPS + KUBERNETES = ♥
 
Achieving DevOps Success with Chef Automate
Achieving DevOps Success with Chef AutomateAchieving DevOps Success with Chef Automate
Achieving DevOps Success with Chef Automate
 
AWS CodeDeploy: Manage Deployment Complexity
AWS CodeDeploy: Manage Deployment ComplexityAWS CodeDeploy: Manage Deployment Complexity
AWS CodeDeploy: Manage Deployment Complexity
 
Continuous integration - main principles
Continuous integration - main principlesContinuous integration - main principles
Continuous integration - main principles
 
WinOps Conf 2016 - Michael Greene - Release Pipelines
WinOps Conf 2016 - Michael Greene - Release PipelinesWinOps Conf 2016 - Michael Greene - Release Pipelines
WinOps Conf 2016 - Michael Greene - Release Pipelines
 
Cooking Up Windows with Chef Automate
Cooking Up Windows with Chef AutomateCooking Up Windows with Chef Automate
Cooking Up Windows with Chef Automate
 
Infrastructure and Compliance Delight with Chef Automate
Infrastructure and Compliance Delight with Chef AutomateInfrastructure and Compliance Delight with Chef Automate
Infrastructure and Compliance Delight with Chef Automate
 
Continuously serving the developer community with Continuous Integration and...
Continuously serving the developer community with  Continuous Integration and...Continuously serving the developer community with  Continuous Integration and...
Continuously serving the developer community with Continuous Integration and...
 
Accelerating Innovation with DevOps on AWS
Accelerating Innovation with DevOps on AWSAccelerating Innovation with DevOps on AWS
Accelerating Innovation with DevOps on AWS
 
Evolutionary infrastructure agile 2018 - kief morris
Evolutionary infrastructure   agile 2018 - kief morrisEvolutionary infrastructure   agile 2018 - kief morris
Evolutionary infrastructure agile 2018 - kief morris
 
ACDKOCHI19 - CI / CD using AWS Developer Tools
ACDKOCHI19 - CI / CD using AWS Developer ToolsACDKOCHI19 - CI / CD using AWS Developer Tools
ACDKOCHI19 - CI / CD using AWS Developer Tools
 

Similar to Continuous integration

Continuous integration
Continuous integrationContinuous integration
Continuous integration
James Fisk
 

Similar to Continuous integration (20)

Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
GDG DevFest Medan 2022
GDG DevFest Medan 2022GDG DevFest Medan 2022
GDG DevFest Medan 2022
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
 
Harman deepak v - agile on steriod - dev ops led transformation
Harman  deepak v - agile on steriod - dev ops led transformationHarman  deepak v - agile on steriod - dev ops led transformation
Harman deepak v - agile on steriod - dev ops led transformation
 
Qa in CI/CD
Qa in CI/CDQa in CI/CD
Qa in CI/CD
 
Lets talk about CI CD Pipeline in Agile
Lets talk about CI CD Pipeline in Agile Lets talk about CI CD Pipeline in Agile
Lets talk about CI CD Pipeline in Agile
 
"How to deploy to production 10 times a day" Андрей Шумада
"How to deploy to production 10 times a day" Андрей Шумада"How to deploy to production 10 times a day" Андрей Шумада
"How to deploy to production 10 times a day" Андрей Шумада
 
How to deploy to production 10 times a day
How to deploy to production 10 times a dayHow to deploy to production 10 times a day
How to deploy to production 10 times a day
 
Continuous Integration and Builds
Continuous Integration and BuildsContinuous Integration and Builds
Continuous Integration and Builds
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
Introduction to Continuous Integration
Introduction to Continuous IntegrationIntroduction to Continuous Integration
Introduction to Continuous Integration
 
Cloud for Agile Testing - Burak Koyuncu
Cloud for Agile Testing - Burak KoyuncuCloud for Agile Testing - Burak Koyuncu
Cloud for Agile Testing - Burak Koyuncu
 
Intro to CI/CD using Docker
Intro to CI/CD using DockerIntro to CI/CD using Docker
Intro to CI/CD using Docker
 
Devops insights
Devops insightsDevops insights
Devops insights
 
Continuous Integrations & Deployments
Continuous Integrations & DeploymentsContinuous Integrations & Deployments
Continuous Integrations & Deployments
 
Continuous Integration vs Continuous Delivery vs Continuous Deployment
Continuous Integration vs Continuous Delivery vs Continuous Deployment Continuous Integration vs Continuous Delivery vs Continuous Deployment
Continuous Integration vs Continuous Delivery vs Continuous Deployment
 
Docker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker CloudDocker Meetup at Docker HQ: Docker Cloud
Docker Meetup at Docker HQ: Docker Cloud
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

Continuous integration

  • 1. CONTINUOUS INTEGRATION Do it yourself august 2014 Seite 1 von 10 © 2014 INNOMOS GmbH www.innomos.de
  • 2. CONTINUOUS WHAT? DETERMINATION Martin Fowler Software engineer, champion of Continuous integration “Continuous Integration (CI) is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly.”
  • 3. CONTINUOUS WHAT? DETERMINATION “CI is about reducing the time between creating a failure and being able to do something about it”
  • 4. ARCHITECTURE SOFTWARE COMPONENTS JIRA bugtracker Bamboo continuous integration GitLab source code OwnCloud file storage Confluence docs Autot ests UI, unit, load
  • 5. ARCHITECTURE SOFTWARE COMPONENTS JIRA bugtracker Bamboo continuous integration GitLab source code OwnCloud file storage Confluence docs Autot ests UI, unit, load Submit code Developer Pick task Fetch code Build Test Deliver
  • 6. WHAT WAS BEFORE LIFE BEFORE CONTINUOUS INTEGRATION - manual QA - no unit-testing - integration hell - resistance to agile practice in INNOMOS - 2-3 weeks deployment times - manual build
  • 7. WHAT'S NOW LIFE AFTER CONTINUOUS INTEGRATION - automated tests, minimized time for regression - unit-tests are running after the build - integration with every commit - CI is Agile - potentially shippable product everyday - fully automated build
  • 8. CI BENEFITS ...FOR PROJECT MANAGER - automates the build - reduced risks, makes deployment more predictable - immediate feedback when there is a problem - everyone can see what’s happening in real time - avoid last minute chaos at release dates - constant availability of a current build - potentially shippable product at frequent intervals - easy-to find builds history - build are associated with tasks
  • 9. CI BENEFITS ...FOR PROJECT MANAGER
  • 10. CI BENEFITS ...FOR PROJECT MANAGER
  • 11. CI BENEFITS ...FOR DEVELOPER - everyone commits to the mainline everyday - every commit to the mainline results a build - code stability - minimize integration risk - unit tests had to pass for deploy - continuous detection and fixing of integration problems - integration happens before it gets hairy - automate the deployment
  • 12. CI BENEFITS ...FOR QA - easier defect diagnostics - test code as often as needed for early bug detections - great way to improve quality of the software - make build self-testing - qa teams don't wait for new features deployment - regression tests can be automated up to 100%
  • 13. CI DISADVANTAGES HARDWARE/SOFTWARE/TEST SUITE - initial setup time required, as well as the training to get acquainted with CI server - DONE - well-developed test-suite required – IN PROGRESS - requires many resources for CI server - UNRESOLVED
  • 14. WHAT IS BAMBOO CI SERVER SOFTWARE About - 6 years old - 100+ plugins - Atlassian leading product - easy to install and use Functions - run builds and tests - connects issues, commits, test results, and deploys - configurable build plans and tasks - easy and better CI - first-class deployment - suitable for any language/technology
  • 15. CI IN ACTION IOS/Android/RoR demos Demo iOS - latest build on Marco Polo - links to issues - commits - UI tests Demo Android - unit tests Demo Backend - RoR tests
  • 16. CONTINUOUS WHAT? DETERMINATION “Continuous integration doesn’t get rid of bugs, but it does make them dramatically easier to find and remove”
  • 17. Seite 17 von 10 © 2014 INNOMOS GmbH www.innomos.de INNOMOS UKRAINE Kiev Grinchenko str, 4b, 2nd floor www.innomos.com