Top Banner
DEVOPS Amit Kumar Bank BTPN
42

Agile+DevOps - do we understand it?

Jan 23, 2018

Download

Software

toamitkumar
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Agile+DevOps - do we understand it?

DEVOPS

Amit Kumar

Bank BTPN

Page 2: Agile+DevOps - do we understand it?

@toamitkumar

Page 3: Agile+DevOps - do we understand it?

Traditional

bank

Digital

natives1

Leading

banks

Release

frequency1-4 releases

per year

10-50 releases

per day

1-4 releases

per month

Time to

market

9 months -

2 years2 weeks -

3 months

2-6

months

ADM

productivity3-10Function

Points/

man month

20-40Function Points/ man

month

10-20 Function Points/

man month

1 PayPal, Apple, Alibaba, Facebook, Safaricom, NTT DOCOMO

Page 4: Agile+DevOps - do we understand it?

TRADITIONAL SILOS

DEVELOPMENTQUALITYOPERATIONS

BUSINESS/ PRODUCT

Page 5: Agile+DevOps - do we understand it?

Customers

Design Develop

Test

Concept Business

case

Provision

infrastructure

Deploy to

Production

ApproveE2E test

Development Sprints

2 weeks / sprint

Deploy to

UAT

~1 week 3-5 weeks <1 week

Manual process – that is error-prone and time-

taking, and not conducive to rapid experimentation

Improved developer

productivity

Agile only

development

cycle

Page 6: Agile+DevOps - do we understand it?

Agile with

DevOps

development

cycle

Customers

Design Develop

Test

Concept Business

case

Provision

infrastructure Deploy to

Production

ApproveE2E test

Path to live

~Best case – 2 weeks

Development Sprints

2 weeks / sprint

Deploy to

UAT

Key step where heavy automation and

monitoring is introduced via DevOps

Page 7: Agile+DevOps - do we understand it?

What is DevOps

Page 8: Agile+DevOps - do we understand it?
Page 9: Agile+DevOps - do we understand it?
Page 10: Agile+DevOps - do we understand it?

Let’s see how much you

score?

DevOps Ninja

Page 11: Agile+DevOps - do we understand it?

Add 1 NINJA points

Page 12: Agile+DevOps - do we understand it?

Add only 2 NINJA points

It is 2017

Page 13: Agile+DevOps - do we understand it?

Add 3 NINJA points

Page 14: Agile+DevOps - do we understand it?

Add 3 NINJA points

Page 15: Agile+DevOps - do we understand it?

Add 4 NINJA points

Page 16: Agile+DevOps - do we understand it?

Add 4 NINJA points

Page 17: Agile+DevOps - do we understand it?

Add 4 NINJA points

Page 18: Agile+DevOps - do we understand it?

Add 5 NINJA points

Page 19: Agile+DevOps - do we understand it?

DevOps Ninja0 points?

1-5 points?

6-10 points?

> 10 points?

Page 20: Agile+DevOps - do we understand it?

DOES DEVOPS MEAN ALL OF THESE TOOLS & TECHNOLOGIES?Can I say I am DevOps, if I have all of these in my organization?

Page 21: Agile+DevOps - do we understand it?
Page 22: Agile+DevOps - do we understand it?

Unit Test Automation

Functional Test Automation

Security Test Automation

Performance Test Automation

Deployment Automation

1. >= 1 time a daily

2. >= 3 times a week

3. End of each sprint

4. Once a month

5. > 3 months

How many times do

you deploy to

production?

Page 23: Agile+DevOps - do we understand it?

DOES DEVOPS MEAN PROCESS?

Page 24: Agile+DevOps - do we understand it?

DevOps CAMS

Page 25: Agile+DevOps - do we understand it?

DevOps CAMS

Page 26: Agile+DevOps - do we understand it?

Even with the

best tools &

process, DevOps

is just another

buzzword if you

don't have the

right culture.

Page 27: Agile+DevOps - do we understand it?
Page 28: Agile+DevOps - do we understand it?

Familiar with this?

Page 29: Agile+DevOps - do we understand it?

Familiar with this?

WE DO NOT LEARN

FROM MISTAKES

Page 30: Agile+DevOps - do we understand it?

CollaborationAutonomous

Teams

Shared

Responsibilities

Page 31: Agile+DevOps - do we understand it?

Shared Goals Automation Trust & Respect

Page 32: Agile+DevOps - do we understand it?

John Michelsen, CTO, CA Technologies

Page 33: Agile+DevOps - do we understand it?
Page 34: Agile+DevOps - do we understand it?
Page 35: Agile+DevOps - do we understand it?
Page 36: Agile+DevOps - do we understand it?

Code

check-in

Merge,

integrat

e code

Unit,

Func-

tional

Tests

Deploy

to QA &

Staging

Deploy

to

Produc-

tion

Smoke

tests on

Produc-

tion

Auto Auto Auto Auto Auto

Code

check-in

Merge,

integrat

e code

Unit,

Func-

tional

Tests

Deploy

to QA &

Staging

Deploy

to

Produc-

tion

Smoke

tests on

Produc-

tion

Auto Auto Auto Manual Auto

Continuous Delivery

Rapidly and safely

deployed to

production-like

environment

Continuous Deployment

Rapidly and safely

deployed to production

environment

Page 37: Agile+DevOps - do we understand it?

StagingLive/ Production

Environment

Developer machine Continuous Integration

SIT/ UAT

Continuous Delivery

(Jenkins)

Master (Linux)

Slave

(Linux)

Slave

(buddybuild)

NodeJS/ Java Job Mobile Job

Version Control

(Gitlab)

Developer

machine

Develop-Build-Test Cycle

Publishes

for both

Android

& iOS

NexusSonarqube

Time

duration

▪ Build once and deploy the artifact

across all environment. Strict quality

checks during build process, reports

published via Sonarqube

▪ CI process setup for both API

development as well as mobile code.

▪ Artifacts are published to both Nexus

and Docker Registry

▪ Docker Images are deployed to

OpenShift with zero-downtime

▪ Fully automated way to build and

distribute mobile artifacts

▪ Deployment to staging and production

requires manual promotion of the

versioned artifact for better quality

control and check. Overall process takes

~10mins to reach production servers

▪ Embed security testing into DevOps –

DevSecOps

< 10mins from code commit to production deployment

Docker Registry

OpenShift

Platform

Page 38: Agile+DevOps - do we understand it?

A dedicated DevOps team

Programmer

SysAdmin

SQA

Operations

Page 39: Agile+DevOps - do we understand it?

DEVSECOPS

Everyone is responsible for security – embed security into each aspect of software building

Agile with

DevOps

development

cycle

Customers

Design Develop

Test

Concept Business

case

Provision

infrastructure Deploy to

Production

ApproveE2E test

Path to live

~Best case – 2 weeks

Development Sprints

2 weeks / sprint

Deploy to

UAT

Page 40: Agile+DevOps - do we understand it?
Page 41: Agile+DevOps - do we understand it?
Page 42: Agile+DevOps - do we understand it?