STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND...

20
STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 4 October 2017

Transcript of STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND...

Page 1: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

STRIVING FOR CONTINUOUS

INTEGRATION AND DEPLOYMENT

1

Derk-Jan de Grood

[SC]2 – 4 October 2017

Page 2: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Agile Coaching

2

Software testing

Page 3: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Aim of this session

4

Page 4: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Continues Integration & Deployment

A brief introduction

5

Page 5: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Definitions

Continuous integration (CI) is the practice of merging all developer working copies to a shared mainline several times a day.

With continuous delivery (CD) teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more frequently.

Continuous deployment (CD) is the next step of continuous delivery: Every change that passes the automated tests is deployed to production automatically.

[Sources: Wikipedia and puppet.com]

6

Page 6: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Automated build-deploy-test

workflows

7

Page 7: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Levels

8

Code & commit

Integrate & build

Test Deliver

Page 8: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

9

Code Integrate Test Deliver

Test Deliver

Test Deploy

Page 9: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

10

Code Integrate Test Deploy

Test Deploy

Test Launch

D T

A

P

Integration & Acceptance

tests

Functional tests

Unit tests

Monitoring in Production

Page 10: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Some advantages

• Efficiency

• Reduces amount of rework

• Predictability

• Reduced time to market

• Fast feedback

• Reducing risk

• Better quality solutions

11

Page 11: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

DevOps vs. CI/CD

In DevOps there is close collaboration between Ops and

Dev. The Ops become part of the team.

12

Page 12: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Will it work ?

Requisites for CI/CD

13

Page 13: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

CI/CD requires that (in random order)

14

Teams collaborate with each other

Integration is continuous

Deployment is a hands-off process

Feedback loop to improve quality

Features are launched frequently

Acceptance criteria are clear

Teams have all required skills and

knowledge

Tests are automated

Valo

ri -

vers

ion 1

.0 -

2017

Page 14: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

What do the requisites mean to you?

15

Page 15: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Assignment

1. Divide in groups

2. Define what the requisite means to you (2 min)

3. Rate individually how your team/ organization

scores (1 min)

4. List as a group some (15 min)

• things you have in place to fulfill this requisite

• challenges you recognize

• Time is limited

• Mission is information gathering

• Tip: Identify items, don’t get lost in the

discussion

Page 16: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Canvas

17

Description

The teams…..bladibla

Rating

😟 😟

In Place Challenges

Page 17: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

How to pick your team

• You got this covered and are willing to share some tips

• You are currently struggling with this and want to discuss it with your peers

• You find this important and want to compare your status

• You want to learn about this topic since its quite new for you

Page 18: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Exchange Experiences

19

Page 19: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Wrap-up

20

Page 20: STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT€¦ · STRIVING FOR CONTINUOUS INTEGRATION AND DEPLOYMENT 1 Derk-Jan de Grood [SC]2 –4 October 2017. Agile Coaching 2 Software

Derk-Jan

Valori

Coltbaan 4a

3439 NG NIEUWEGEIN

The Netherlands

[email protected]

• +31(0)651807878

• www.valori.nl

• @DerkJanDeGrood

• http://djdegrood.wordpress.com

21