SlideShare a Scribd company logo
On The Road towards Continuous Delivery
David Lee
Debora Gomez
Victor Rodriguez
Heiko Kahmann
Berlin, 05.04.2017
#myToysIT
Agenda
Dr. David Lee
BSc(Hons) / PhD in Computer Science (Robert Gordon University, Scotland)
Certified Software Architect (Foundation Level)
Working since 2010 for the MyToys Group
Heiko Kahmann
Dipl. Inf., Dipl. Vw (Freie Universität Berlin)
Working since 2015 for the MyToys Group
2015-Present: Software Architect at myToys.de
About The Presenters
Debora Gomez
Master in Electrical Engineering (Carlos III University)
Working since 2016 for the MyToys Tech Lab in Madrid
Victor Rodriguez
Master in Computer Science (Public University of Navarre)
Working since 2016 for the MyToys Tech Lab in Madrid
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Our TechVision: Microservices with a PageAssembler
Microservice
Header
PageAssembler
Configuration &
Service Discovery
Server
Load Balancer
http://www.mytoys.de/nl/success
HTMLRequest
/newsletter/success
david.lee@mytoys.de
PageAssembler
Request
/newsletter/success
PageConfiguration
with Service URLs
Request
myToys.de
Header
HTML
Microservice
Newsletter
Microservice
Footer
Newsletter
DB
david.lee@mytoys.de
Newsletter
HTML
Request
myToys.de
david.lee@mytoys.de
Request
myToys.de
Footer
HTML
Cache
Connecting the Mobile App through a Public API
Public API
Microservice Newsletter
Registration
Newsletter
DB
david.lee@mytoys.de
Request
myToys.de
Request
Newsletter Registration
JSON
JSON
Summary of key components for TechVision
PageAssembler Microservices
Team Split /
Independence / Self-
responsibility
Cloud
Elastic Load Balancing Continuous Delivery
Automatic Documentation Test Driven
Service Discovery
Live Shop Editor
More details…
devblog.mytoys.de
Deploying Microservices in Real Time:
JAR Deployment with a Pipeline in Jenkins 2
Deploying Microservices in Real Time
Instant Messaging Channel for updates
The problems with simple JAR Deployment
Developer Operations
V1.0
JAR
Deploy JAR File please
Deploy Hotfix please
Didn‘t work – had to rollback
V1.0.1
JAR
Didn‘t work – had to rollback
Config Oh and you need to configure this…
Continuous Delivery via Docker
Test Project at a Company Innovation Day:
Developer
Jenkins
Operations
Commit new version
Generate Docker
container
Second version of Jenkins pipeline
Deploying Microservices to Real Time
Developer
Operations
Docker Container
Orchestration
Continuous Delivery
Continuous Deployment
Continuous Delivery Next Steps: Docker Repo
1. Upload Docker Containers into a Docker Repository.
Developer
Docker Container
Continuous Delivery Next Steps: PaaS/OpenShift
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Stages Model
Prod
Stage
Integration
Stage
Local
Stage
Prod-dev
Stage
Continuous Delivery
Pipeline
Docker Hub
Payback Case Study
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Vertical Team
Android Developers
QA Engineer
Product owner
Team Lead iOS Developers
Scrum master
Vertical Team
Development Workflow
Let’s take
this cool
feature
?
Ok …
whatever
you want …
There is a
missing
space !!
Developer Code review QA
Development Workflow
?
I can finally
close this
nightmare
QA Developer
Coffee
break
Development Workflow
?Developer QA
Continuous Delivery – Pipeline stages
Build Automation
&
Continuous
Integration
Tests Automation
Deployment
Automation
Continuous Delivery
Orchestrating it all
Continuous Delivery
?Developer Code review QA
Continuous Delivery
?QA
Learnt Lessons
• iOS CI only over a Mac.
• Use match to make your life easier with iOS certificates.
• Jenkins needs to access the user mac keychain.
• Android emulator + docker in a Mac not compatible.
• Genymotion rocks.
• Automate as much as possible the setup of your environment.
Next steps
• Dockerize Jenkins & create more slaves using docker.
• Automatize Android native app deployment in the market.
• Test Rail integration with Appium, Frisby JS, Gatling tests results.
• Monitoring Panel (MS & Apps).
• Execute tests on a device farm.
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Pizza Time !!!
Thanks!!
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Interactive Discussion Groups (after the break)
1. Experiences with Continuous Delivery in a Mobile
Environment.
2. Experiences with Platform as a Service (PaaS)
3. Experiences with integrating components in a Continuous
Delivery Pipeline.

More Related Content

What's hot

Software development in the modern age
Software development in the modern ageSoftware development in the modern age
Software development in the modern age
Roy Wasse
 
Salesforce CI/CD - A strategy for success
Salesforce CI/CD - A strategy for successSalesforce CI/CD - A strategy for success
Salesforce CI/CD - A strategy for success
Yassine ELQANDILI ☁
 
Dockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper SaferDockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper Safer
Adrian Cockcroft
 
Microservices pattern language (microxchg microxchg2016)
Microservices pattern language (microxchg microxchg2016)Microservices pattern language (microxchg microxchg2016)
Microservices pattern language (microxchg microxchg2016)
Chris Richardson
 
Selling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin AmericaSelling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin America
Lucas Arruda
 
Selling the open-source philosophy - DrupalCon Latin America 2015
Selling the open-source philosophy - DrupalCon Latin America 2015Selling the open-source philosophy - DrupalCon Latin America 2015
Selling the open-source philosophy - DrupalCon Latin America 2015
Handrus Nogueira
 
DevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in MicroservicesDevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in Microservices
Rich Mills
 
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
Anders Lundsgård
 
Cloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCCloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCC
Adrian Cockcroft
 
Transform Digital Business with DevOps
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOps
Daniel Oh
 
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
apidays
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como código
Igor Abade
 
Design and Evolution of APIs in Microservice Architecture
Design and Evolution of APIs in Microservice ArchitectureDesign and Evolution of APIs in Microservice Architecture
Design and Evolution of APIs in Microservice Architecture
Lohika_Odessa_TechTalks
 
How to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
How to Avoid Cloud Confusion, DevOps dilemma, Microservice MadnessHow to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
How to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
BMK Lakshminarayanan
 
Introduction to CI/CD
Introduction to CI/CDIntroduction to CI/CD
Introduction to CI/CD
Steve Mactaggart
 
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiidaapidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays
 
Advancing Your API Strategy in an Infrastructure World
Advancing Your API Strategy in an Infrastructure WorldAdvancing Your API Strategy in an Infrastructure World
Advancing Your API Strategy in an Infrastructure World
Pronovix
 
Delivery Free of Charge
Delivery Free of ChargeDelivery Free of Charge
Delivery Free of Charge
All Things Open
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
CollabNet
 

What's hot (19)

Software development in the modern age
Software development in the modern ageSoftware development in the modern age
Software development in the modern age
 
Salesforce CI/CD - A strategy for success
Salesforce CI/CD - A strategy for successSalesforce CI/CD - A strategy for success
Salesforce CI/CD - A strategy for success
 
Dockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper SaferDockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper Safer
 
Microservices pattern language (microxchg microxchg2016)
Microservices pattern language (microxchg microxchg2016)Microservices pattern language (microxchg microxchg2016)
Microservices pattern language (microxchg microxchg2016)
 
Selling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin AmericaSelling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin America
 
Selling the open-source philosophy - DrupalCon Latin America 2015
Selling the open-source philosophy - DrupalCon Latin America 2015Selling the open-source philosophy - DrupalCon Latin America 2015
Selling the open-source philosophy - DrupalCon Latin America 2015
 
DevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in MicroservicesDevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in Microservices
 
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
 
Cloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCCloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCC
 
Transform Digital Business with DevOps
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOps
 
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como código
 
Design and Evolution of APIs in Microservice Architecture
Design and Evolution of APIs in Microservice ArchitectureDesign and Evolution of APIs in Microservice Architecture
Design and Evolution of APIs in Microservice Architecture
 
How to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
How to Avoid Cloud Confusion, DevOps dilemma, Microservice MadnessHow to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
How to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
 
Introduction to CI/CD
Introduction to CI/CDIntroduction to CI/CD
Introduction to CI/CD
 
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiidaapidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
 
Advancing Your API Strategy in an Infrastructure World
Advancing Your API Strategy in an Infrastructure WorldAdvancing Your API Strategy in an Infrastructure World
Advancing Your API Strategy in an Infrastructure World
 
Delivery Free of Charge
Delivery Free of ChargeDelivery Free of Charge
Delivery Free of Charge
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
 

Similar to On The Road towards Continuous Delivery

Dockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in Microservices
Adrian Cockcroft
 
Microservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the Ugly
Adrian Cockcroft
 
Microxchg Microservices
Microxchg MicroservicesMicroxchg Microservices
Microxchg Microservices
Adrian Cockcroft
 
From Continuous Integration to DevOps
From Continuous Integration to DevOpsFrom Continuous Integration to DevOps
From Continuous Integration to DevOps
IBM UrbanCode Products
 
Best Digital Transformation Company Toronto
Best Digital Transformation Company TorontoBest Digital Transformation Company Toronto
Best Digital Transformation Company Toronto
VilroTechnologies
 
Android & IOS App Development Toronto
Android & IOS App Development TorontoAndroid & IOS App Development Toronto
Android & IOS App Development Toronto
VilroTechnologies
 
Web Design Company Toronto
Web Design Company TorontoWeb Design Company Toronto
Web Design Company Toronto
VilroTechnologies
 
Top Blockchain Development Company Toronto
Top Blockchain Development Company TorontoTop Blockchain Development Company Toronto
Top Blockchain Development Company Toronto
VilroTechnologies
 
Web Design Company in Toronto
Web Design Company in TorontoWeb Design Company in Toronto
Web Design Company in Toronto
VilroTechnologies
 
The Best Cyber Security Company in Toronto
The Best Cyber Security Company in TorontoThe Best Cyber Security Company in Toronto
The Best Cyber Security Company in Toronto
VilroTechnologies
 
Top Digital Transformation Company Toronto
Top Digital Transformation Company TorontoTop Digital Transformation Company Toronto
Top Digital Transformation Company Toronto
VilroTechnologies
 
Digital Transformation Strategy Services
Digital Transformation Strategy ServicesDigital Transformation Strategy Services
Digital Transformation Strategy Services
VilroTechnologies
 
Digital Transformation Strategy Services
Digital Transformation Strategy ServicesDigital Transformation Strategy Services
Digital Transformation Strategy Services
VilroTechnologies
 
Dev ops
Dev opsDev ops
Dev ops
Tomy Rhymond
 
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
Amazon Web Services
 
Brainstack offerings
Brainstack offeringsBrainstack offerings
Brainstack offerings
Brainstack Technologies
 
What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.
anilpmuvvala
 
What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.
anilpmuvvala
 
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdfLaunching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
Amazon Web Services
 
Continuous integration and delivery with Xamarin and VSTS
Continuous integration and delivery with Xamarin and VSTSContinuous integration and delivery with Xamarin and VSTS
Continuous integration and delivery with Xamarin and VSTS
Gill Cleeren
 

Similar to On The Road towards Continuous Delivery (20)

Dockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in Microservices
 
Microservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the Ugly
 
Microxchg Microservices
Microxchg MicroservicesMicroxchg Microservices
Microxchg Microservices
 
From Continuous Integration to DevOps
From Continuous Integration to DevOpsFrom Continuous Integration to DevOps
From Continuous Integration to DevOps
 
Best Digital Transformation Company Toronto
Best Digital Transformation Company TorontoBest Digital Transformation Company Toronto
Best Digital Transformation Company Toronto
 
Android & IOS App Development Toronto
Android & IOS App Development TorontoAndroid & IOS App Development Toronto
Android & IOS App Development Toronto
 
Web Design Company Toronto
Web Design Company TorontoWeb Design Company Toronto
Web Design Company Toronto
 
Top Blockchain Development Company Toronto
Top Blockchain Development Company TorontoTop Blockchain Development Company Toronto
Top Blockchain Development Company Toronto
 
Web Design Company in Toronto
Web Design Company in TorontoWeb Design Company in Toronto
Web Design Company in Toronto
 
The Best Cyber Security Company in Toronto
The Best Cyber Security Company in TorontoThe Best Cyber Security Company in Toronto
The Best Cyber Security Company in Toronto
 
Top Digital Transformation Company Toronto
Top Digital Transformation Company TorontoTop Digital Transformation Company Toronto
Top Digital Transformation Company Toronto
 
Digital Transformation Strategy Services
Digital Transformation Strategy ServicesDigital Transformation Strategy Services
Digital Transformation Strategy Services
 
Digital Transformation Strategy Services
Digital Transformation Strategy ServicesDigital Transformation Strategy Services
Digital Transformation Strategy Services
 
Dev ops
Dev opsDev ops
Dev ops
 
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
 
Brainstack offerings
Brainstack offeringsBrainstack offerings
Brainstack offerings
 
What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.What_is_DevOps_how_it's_very_useful_in_daily_Life.
What_is_DevOps_how_it's_very_useful_in_daily_Life.
 
What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.What is DevOps And How It Is Useful In Real life.
What is DevOps And How It Is Useful In Real life.
 
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdfLaunching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
 
Continuous integration and delivery with Xamarin and VSTS
Continuous integration and delivery with Xamarin and VSTSContinuous integration and delivery with Xamarin and VSTS
Continuous integration and delivery with Xamarin and VSTS
 

Recently uploaded

Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
TaghreedAltamimi
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 

Recently uploaded (20)

Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 

On The Road towards Continuous Delivery

  • 1. On The Road towards Continuous Delivery David Lee Debora Gomez Victor Rodriguez Heiko Kahmann Berlin, 05.04.2017 #myToysIT
  • 3. Dr. David Lee BSc(Hons) / PhD in Computer Science (Robert Gordon University, Scotland) Certified Software Architect (Foundation Level) Working since 2010 for the MyToys Group Heiko Kahmann Dipl. Inf., Dipl. Vw (Freie Universität Berlin) Working since 2015 for the MyToys Group 2015-Present: Software Architect at myToys.de About The Presenters Debora Gomez Master in Electrical Engineering (Carlos III University) Working since 2016 for the MyToys Tech Lab in Madrid Victor Rodriguez Master in Computer Science (Public University of Navarre) Working since 2016 for the MyToys Tech Lab in Madrid
  • 4. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 5. Our TechVision: Microservices with a PageAssembler Microservice Header PageAssembler Configuration & Service Discovery Server Load Balancer http://www.mytoys.de/nl/success HTMLRequest /newsletter/success david.lee@mytoys.de PageAssembler Request /newsletter/success PageConfiguration with Service URLs Request myToys.de Header HTML Microservice Newsletter Microservice Footer Newsletter DB david.lee@mytoys.de Newsletter HTML Request myToys.de david.lee@mytoys.de Request myToys.de Footer HTML Cache
  • 6. Connecting the Mobile App through a Public API Public API Microservice Newsletter Registration Newsletter DB david.lee@mytoys.de Request myToys.de Request Newsletter Registration JSON JSON
  • 7. Summary of key components for TechVision PageAssembler Microservices Team Split / Independence / Self- responsibility Cloud Elastic Load Balancing Continuous Delivery Automatic Documentation Test Driven Service Discovery Live Shop Editor
  • 9. Deploying Microservices in Real Time: JAR Deployment with a Pipeline in Jenkins 2
  • 10. Deploying Microservices in Real Time Instant Messaging Channel for updates
  • 11. The problems with simple JAR Deployment Developer Operations V1.0 JAR Deploy JAR File please Deploy Hotfix please Didn‘t work – had to rollback V1.0.1 JAR Didn‘t work – had to rollback Config Oh and you need to configure this…
  • 12. Continuous Delivery via Docker Test Project at a Company Innovation Day: Developer Jenkins Operations Commit new version Generate Docker container
  • 13. Second version of Jenkins pipeline
  • 14. Deploying Microservices to Real Time Developer Operations Docker Container Orchestration Continuous Delivery Continuous Deployment
  • 15. Continuous Delivery Next Steps: Docker Repo 1. Upload Docker Containers into a Docker Repository. Developer Docker Container
  • 16. Continuous Delivery Next Steps: PaaS/OpenShift Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice
  • 19. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 20. Vertical Team Android Developers QA Engineer Product owner Team Lead iOS Developers Scrum master
  • 22. Development Workflow Let’s take this cool feature ? Ok … whatever you want … There is a missing space !! Developer Code review QA
  • 23. Development Workflow ? I can finally close this nightmare QA Developer Coffee break
  • 25. Continuous Delivery – Pipeline stages Build Automation & Continuous Integration Tests Automation Deployment Automation
  • 29. Learnt Lessons • iOS CI only over a Mac. • Use match to make your life easier with iOS certificates. • Jenkins needs to access the user mac keychain. • Android emulator + docker in a Mac not compatible. • Genymotion rocks. • Automate as much as possible the setup of your environment.
  • 30. Next steps • Dockerize Jenkins & create more slaves using docker. • Automatize Android native app deployment in the market. • Test Rail integration with Appium, Frisby JS, Gatling tests results. • Monitoring Panel (MS & Apps). • Execute tests on a device farm.
  • 31. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 33. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 34. Interactive Discussion Groups (after the break) 1. Experiences with Continuous Delivery in a Mobile Environment. 2. Experiences with Platform as a Service (PaaS) 3. Experiences with integrating components in a Continuous Delivery Pipeline.