SlideShare a Scribd company logo
1 of 22
Continuous Integration,
Delivery and Deployment
Utrecht, 24-sep-2013
Martijn van der Kamp
How we deliver software
• We deliver software in a structured and ordered way. Software installs without
errors in 1 try in the clients environment. Our clients are happy and satisfied
with our delivery process.
How long does it take to get one line of code
into production?
Developer vs PM/Manager/Client
• The production environment has crashed.
• This prototype is rough and not ready and needs to be
rewritten before we hand it over to our customers.
• The prototype we are now using in production keeps
crashing.
• We want to work in a test-driven development mode.
• I can manually hack the production server to improve
performance and stability to overcome the issues
we're having.
• The manual hack I did last week has caused the disks
to fill up and the production server has crashed.
• You're not going home until it's fixed. I'll get the
pizza!
• Don't worry, you'll get time to rewrite it. (tonight)
• You're not going home until it's fixed. I'll get the
pizza!
• That will only slow things down and we don't have
the time.
• I fully trust your judgment on this, just get it done
quickly.
• You're not going home until it's fixed. I'll get the
pizza!
Continuous What?
Continuous
Integration
Continuous
Delivery
Continuous
Deployment
Continuous
integration
Continuous
Delivery
Continuous
deployment
• Automate the build
• Automatically test the code as often as possible for early
detection of errors
• Any feedback will come back sooner, before the code has
left the mind of the developer
• Everyone can see what is happening
Continuous Integration
• Deliver code to a production-like environment with a user
base (UAT)
• Automated testing procedures during deployment
• Higher frequency, smaller volume.
• Automated deployments(as much as possible)
• Any feedback will come back sooner, before the code has
left the mind of the developer
Continuous
integration
Continuous
Delivery
Continuous
deployment
Continuous Delivery
Continuous
integration
Continuous
Delivery
Continuous
deployment
• All what was done in the previous two steps, but now
automatically between all environments and into production
Continuous Deployment
Agile
Governance
Configuration
Management
Continuous
Integration
Testing
Continuous Delivery
Continuous Deployment
The continuous framework
Continuous Integration (CI)
The toolbox:
• Version Control
• CI Server
• Build automation
tool
• Test suite
The mindset:
Open
Honest
courageous dialogue
The environment:
Sit together
Open chat-room / forum
Continuous Integration: example
Commit
code to SVN
Code
analysis
Compile
application
Run Unit
test
Deploy
application
Run test(s)
Generate
report
Code analysis report
Build number
Test report
An example in Jenkins!
Some mistakes to look out for with CI
Mistake: Loose jobs that perform the tasks
It is easy to forget to run a job, you wont be able to easily see if your friends
also ran all mandatory jobs.
Mistake: 1 job that does it all
Your CI process should be granular in the most useful way. Having only 1 job
that does it all still requires you to deep dive into your code-test-
deployment, where several can already exclude and better specify what went
wrong.
Mistake: committing broken code
All broken code should automatically be uncommitted and the state of the
environment should rolled-back to keep the latest version working.
Continuous Delivery
• Is everything that you did with Continuous Integration but now we
are adding deployment to a user based environment to the cycle,
such as a UAT environment.
• Getting rid of waterfall deployment
Problems with waterfall deployment
• Long issue detection and feedback loop (did you already fix it?)
• Lack of cooperation between business and IT (what we actually wanted…..)
• Inability to change.
Requirements
Build
Compile
test
Requirements
Build
Compile
test
Requirements
Build
Compile
test
Deploy
The last step
• Manual deployments
• Insufficient configuration management
• Infrequent, error prone deployments
Stressful releases!
Requirements
Build
Compile
test
How the development cycle will look like
Requirements
Build
Compiletest
Deploy
Requirements
Build
Compile
test
Requirements
Build
Compile
test
Deploy
Requirements
Build
Compiletest
Deploy
Requirements
Build
Compiletest
Deploy
Continuous Delivery: example
Check out
artifacts from
repository
Deploy to
production-like
environment
Run tests
Generate
reports
Continuous Deployment
• Is everything you did before with Continuous Integration and
Continuous Delivery but now all the way into production.
Continuous Deployment: example
Check out
artifacts from
repository
production
environment
Run tests
Generate
reports
To Summarize
• Continuous integration is an effective way to solve integration
problems
• Continuous integration is a great way to improve the quality of the
software.
• Continuous Delivery removes the need of waterfall deployment
• Continuous Delivery makes the deployments more predictable
• Continuous Deployment gives best value for money
Watch & Read
• Kohsuke Kawaguchi who introduces us to Hudson, an open-source
continuous integration (CI) system, which improves the productivity
of a development team by automating various things.
https://www.youtube.com/watch?v=6k0S4O2PnTc
• Atlassian toolbox:
Greenhopper: https://www.youtube.com/watch?v=KWiSkH9Tqbo
Jira: https://www.youtube.com/watch?v=ca8n9uW3afg
Bamboo:https://www.youtube.com/watch?v=2IRTnbzk0RQ
Contact information
Martijn
van der Kamp
Oracle Consultant
martijn.vander.kamp@capgemini.com
Insert
contact
picture

More Related Content

What's hot

Using Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health NewUsing Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health New
bartlowe
 
TFS Build - Continuous Integration
TFS Build - Continuous IntegrationTFS Build - Continuous Integration
TFS Build - Continuous Integration
Esteban Garcia
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
Steve Povilaitis
 

What's hot (20)

Continuous Integration at T3CON08
Continuous Integration at T3CON08Continuous Integration at T3CON08
Continuous Integration at T3CON08
 
Fundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CDFundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CD
 
The Continuous delivery Value @ codemotion 2014
The Continuous delivery Value @ codemotion 2014The Continuous delivery Value @ codemotion 2014
The Continuous delivery Value @ codemotion 2014
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013
 
Dev ops is more than CI+CD tools
Dev ops is more than CI+CD toolsDev ops is more than CI+CD tools
Dev ops is more than CI+CD tools
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable product
 
Devops
DevopsDevops
Devops
 
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValueDevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
 
Using Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health NewUsing Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health New
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
Continuous integration practices to improve the software quality
Continuous integration practices to improve the software qualityContinuous integration practices to improve the software quality
Continuous integration practices to improve the software quality
 
TFS Build - Continuous Integration
TFS Build - Continuous IntegrationTFS Build - Continuous Integration
TFS Build - Continuous Integration
 
WSO2 IoTS Device Manufacturer Guide
WSO2 IoTS Device Manufacturer GuideWSO2 IoTS Device Manufacturer Guide
WSO2 IoTS Device Manufacturer Guide
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Continuous Deployment of Rails Applications
Continuous Deployment of Rails ApplicationsContinuous Deployment of Rails Applications
Continuous Deployment of Rails Applications
 
Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?
 
Quickstart for continuous integration
Quickstart for continuous integrationQuickstart for continuous integration
Quickstart for continuous integration
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
 
Continuous integration. Short overview
Continuous integration. Short overviewContinuous integration. Short overview
Continuous integration. Short overview
 
Agile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard ChengAgile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard Cheng
 

Viewers also liked

Viewers also liked (9)

Agile testing
Agile testingAgile testing
Agile testing
 
Continuous Integration testing based on Selenium and Hudson
Continuous Integration testing based on Selenium and HudsonContinuous Integration testing based on Selenium and Hudson
Continuous Integration testing based on Selenium and Hudson
 
Continuous Integration Step by Step
Continuous Integration Step by StepContinuous Integration Step by Step
Continuous Integration Step by Step
 
Continuous Integration - Step by Step
Continuous Integration - Step by StepContinuous Integration - Step by Step
Continuous Integration - Step by Step
 
ALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFS
ALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFSALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFS
ALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFS
 
DevFest Nantes 2016 - Spinnaker
DevFest Nantes 2016 - SpinnakerDevFest Nantes 2016 - Spinnaker
DevFest Nantes 2016 - Spinnaker
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
 
Introduction to Continuous Delivery (BBWorld/DevCon 2013)
Introduction to Continuous Delivery (BBWorld/DevCon 2013)Introduction to Continuous Delivery (BBWorld/DevCon 2013)
Introduction to Continuous Delivery (BBWorld/DevCon 2013)
 
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous IntegrationGrunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
 

Similar to Continuous integration, delivery & deployment

Introduction to-automated-testing
Introduction to-automated-testingIntroduction to-automated-testing
Introduction to-automated-testing
BestBrains
 
The challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automationThe challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automation
DBmaestro - Database DevOps
 

Similar to Continuous integration, delivery & deployment (20)

Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Automate Everything! (No stress development/Tallinn)
Automate Everything! (No stress development/Tallinn)Automate Everything! (No stress development/Tallinn)
Automate Everything! (No stress development/Tallinn)
 
Introduction to Automated Testing
Introduction to Automated TestingIntroduction to Automated Testing
Introduction to Automated Testing
 
Introduction to-automated-testing
Introduction to-automated-testingIntroduction to-automated-testing
Introduction to-automated-testing
 
Boston MeetUp 10.10
Boston MeetUp 10.10Boston MeetUp 10.10
Boston MeetUp 10.10
 
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
 
DevOps in an Embedded World
DevOps in an Embedded WorldDevOps in an Embedded World
DevOps in an Embedded World
 
NYC MeetUp 10.9
NYC MeetUp 10.9NYC MeetUp 10.9
NYC MeetUp 10.9
 
Road to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.comRoad to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.com
 
The challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automationThe challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automation
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
 
Test Driven Development & CI/CD
Test Driven Development & CI/CDTest Driven Development & CI/CD
Test Driven Development & CI/CD
 
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
 
Continuous Delivery for Open Source Java projects
Continuous Delivery for Open Source Java projectsContinuous Delivery for Open Source Java projects
Continuous Delivery for Open Source Java projects
 
CD
CDCD
CD
 
Hyd virtual meetupslides11jul
Hyd virtual meetupslides11julHyd virtual meetupslides11jul
Hyd virtual meetupslides11jul
 
So you-want-to-go-faster
So you-want-to-go-fasterSo you-want-to-go-faster
So you-want-to-go-faster
 

Recently uploaded

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Continuous integration, delivery & deployment

  • 1. Continuous Integration, Delivery and Deployment Utrecht, 24-sep-2013 Martijn van der Kamp
  • 2. How we deliver software • We deliver software in a structured and ordered way. Software installs without errors in 1 try in the clients environment. Our clients are happy and satisfied with our delivery process. How long does it take to get one line of code into production?
  • 3. Developer vs PM/Manager/Client • The production environment has crashed. • This prototype is rough and not ready and needs to be rewritten before we hand it over to our customers. • The prototype we are now using in production keeps crashing. • We want to work in a test-driven development mode. • I can manually hack the production server to improve performance and stability to overcome the issues we're having. • The manual hack I did last week has caused the disks to fill up and the production server has crashed. • You're not going home until it's fixed. I'll get the pizza! • Don't worry, you'll get time to rewrite it. (tonight) • You're not going home until it's fixed. I'll get the pizza! • That will only slow things down and we don't have the time. • I fully trust your judgment on this, just get it done quickly. • You're not going home until it's fixed. I'll get the pizza!
  • 5. Continuous integration Continuous Delivery Continuous deployment • Automate the build • Automatically test the code as often as possible for early detection of errors • Any feedback will come back sooner, before the code has left the mind of the developer • Everyone can see what is happening Continuous Integration
  • 6. • Deliver code to a production-like environment with a user base (UAT) • Automated testing procedures during deployment • Higher frequency, smaller volume. • Automated deployments(as much as possible) • Any feedback will come back sooner, before the code has left the mind of the developer Continuous integration Continuous Delivery Continuous deployment Continuous Delivery
  • 7. Continuous integration Continuous Delivery Continuous deployment • All what was done in the previous two steps, but now automatically between all environments and into production Continuous Deployment
  • 9. Continuous Integration (CI) The toolbox: • Version Control • CI Server • Build automation tool • Test suite The mindset: Open Honest courageous dialogue The environment: Sit together Open chat-room / forum
  • 10. Continuous Integration: example Commit code to SVN Code analysis Compile application Run Unit test Deploy application Run test(s) Generate report Code analysis report Build number Test report
  • 11. An example in Jenkins!
  • 12. Some mistakes to look out for with CI Mistake: Loose jobs that perform the tasks It is easy to forget to run a job, you wont be able to easily see if your friends also ran all mandatory jobs. Mistake: 1 job that does it all Your CI process should be granular in the most useful way. Having only 1 job that does it all still requires you to deep dive into your code-test- deployment, where several can already exclude and better specify what went wrong. Mistake: committing broken code All broken code should automatically be uncommitted and the state of the environment should rolled-back to keep the latest version working.
  • 13. Continuous Delivery • Is everything that you did with Continuous Integration but now we are adding deployment to a user based environment to the cycle, such as a UAT environment. • Getting rid of waterfall deployment
  • 14. Problems with waterfall deployment • Long issue detection and feedback loop (did you already fix it?) • Lack of cooperation between business and IT (what we actually wanted…..) • Inability to change. Requirements Build Compile test Requirements Build Compile test Requirements Build Compile test Deploy
  • 15. The last step • Manual deployments • Insufficient configuration management • Infrequent, error prone deployments Stressful releases!
  • 16. Requirements Build Compile test How the development cycle will look like Requirements Build Compiletest Deploy Requirements Build Compile test Requirements Build Compile test Deploy Requirements Build Compiletest Deploy Requirements Build Compiletest Deploy
  • 17. Continuous Delivery: example Check out artifacts from repository Deploy to production-like environment Run tests Generate reports
  • 18. Continuous Deployment • Is everything you did before with Continuous Integration and Continuous Delivery but now all the way into production.
  • 19. Continuous Deployment: example Check out artifacts from repository production environment Run tests Generate reports
  • 20. To Summarize • Continuous integration is an effective way to solve integration problems • Continuous integration is a great way to improve the quality of the software. • Continuous Delivery removes the need of waterfall deployment • Continuous Delivery makes the deployments more predictable • Continuous Deployment gives best value for money
  • 21. Watch & Read • Kohsuke Kawaguchi who introduces us to Hudson, an open-source continuous integration (CI) system, which improves the productivity of a development team by automating various things. https://www.youtube.com/watch?v=6k0S4O2PnTc • Atlassian toolbox: Greenhopper: https://www.youtube.com/watch?v=KWiSkH9Tqbo Jira: https://www.youtube.com/watch?v=ca8n9uW3afg Bamboo:https://www.youtube.com/watch?v=2IRTnbzk0RQ
  • 22. Contact information Martijn van der Kamp Oracle Consultant martijn.vander.kamp@capgemini.com Insert contact picture