ci / cd in the enterprisefiles.meetup.com/6210852/cicd-talk-v1.2.pdf•ci / cd is going to play hell...

27
CI / CD IN THE ENTERPRISE or, How to make lots of changes without getting fired

Upload: others

Post on 27-Jun-2020

2 views

Category:

Documents


1 download

TRANSCRIPT

CI / CD IN THE ENTERPRISE

or, How to make lots of changes

without getting fired

FIRST, A LITTLE BACK STORY

WHAT IS CI / CD?

The process of making many small

changes that are validated and

deployed frequently.

WHY IS THIS A GOOD IDEA?

BECAUSE THIS, IS A BLOODY TERRIBLE IDEA

OLD SCHOOL PROBLEMS

• You have a single, monolithic

service

• Making changes to a solution

design are hard

• Mistakes are very difficult and

expensive to roll back

• Go live / change events are

very high risk

FAILURES TEND TO BE, CATASTROPHIC AND VERY PUBLIC

SOME NOT SO AMUSING FACTS

• Only 40% of projects meet schedule, budget and quality goals

• Between 65 and 80% of IT projects fail to meet their objectives, and also run

significantly late or cost far more than planned.

• 75% of project participants lack confidence that their projects will succeed

• The larger the project, the higher the failure rate.

• Projects over a million dollars have a 50% higher failure rate than those under 500k

• 60% of failed projects have a duration of less than one year

THIS RESULTS IN CORPORATE SCAR TISSUE

• Change becomes the career killing bogeyman under every stakeholders bed

• Risk mitigation becomes the focus instead of service enhancement

• Feature release/improvement is slowed

• Companies establish practices to present self harm

• Company culture shifts to match the level of past failures and the

consequences of it occurring again

• Mistakes are no longer acceptable

Failure is assumed before we begin, so everyone

starts the project playing defence.

A NEW WAY => AGILE

ICT Department Agile

A brave few decided to reject the old way of doing things and go a different path

THEY DEVELOPED NEW PROCESSES

• Continuous Integration

• Committing frequently

• Testing on commit

• Merging code changes into the mainline

• Continuous Delivery

• Short, discrete development outcomes

• Automated testing through a pipeline of environments

• Results can (should) be deployed to all environments

WHY DO CI / CD?

• We want to make a lot of changes to our services

• Rapidly

• Cheaply

• With minimal risk

• With small acceptable mistakes

• Validate as we go

• Be able to roll back fast

THE MOVEMENT GREW => DEVOPS

ICT Department DevOps

Inspired by the original Agile Dev founders and enabled by Cloud the movement

grew to encompassed both Dev and Ops, ie DevOps

ESCAPING ENTROPY

Escaping from the constraints of old processes,

the new DevOps movement has leveraged: • CI/CD practices and tools

• Agile software development

• Infrastructure as Code

• &

• Cloud platforms

Corporate

Process

Devops

Team

“The Cloud”

To: • Increase Agility

• Make mistakes a learning opportunity

• Fail fast, recover fast

• Scale without manual processes

• Raise stakeholder engagement

This resulted in very small

teams being able to do things

once thought impossible

ENTERPRISE, NEXT STEPS

Or, How can I be like the cool kids

without getting fired

FOR MOST, THE STORY HAS JUST BEGUN

• The majority of CI / CD activity is carried out in:

• Digital marketing

• Content delivery applications

• Cloud based applications

• This is a fraction of overall systems and most are yet to evaluate core systems

• Applications are still built in waterfall monolithic models

• Infrastructure is still physical or virtualised physical

• Deployments are still manual and error prone

• Change is infrequent

• Risk management practices are burdensome and prevent adaptive behaviours

EVERYONE NEEDS TO BE ON BOARD!

• A much broader scope of people need to be brought into the conversation!

• To move forward, we need to work out methods of aligning agile

methodologies such as CI / CD with business requirements

CEO CIO Change Team Operations Security Project Management

CHANGE WILL HAPPEN

• If you are considering taking up CI / CD practices then you can guarantee a high rate of cultural and procedural change

• However, the tools wont achieve anything if the business does not adapt to use them

• Change MUST come from the top down

+ =

ADVOCATES NEED TO CONSIDER THE UNIQUE CONSTRAINTS OF ENTERPRISE

COMPLIANCE

• Some things are unavoidable

• As advocates of agile practices we need to find ways to adhere to compliance

requirements while still achieving the benefits of CI / CD

OPERATIONAL PROCESSES

• Find ways to integrate with and enhance existing

systems, not break them

• Consider how automated deployments will

communicate and gain signoff from CAB

• Can the CI / CD toolset be integrated with ITIL tools

such as Remedy?

• How will licencing and asset management be managed

with Continuous Delivery?

• How will automated change impact monitoring and

alerting solutions?

PROJECT MANAGEMENT

• CI / CD is going to play hell with your Gantt Charts

• Consider how CI / CD will integrate with your existing

Project Management practices.

• Project Management will have to change towards agile

practices and these teams will need help

CI / CD DOES NOT STAND ALONE

You need to consider the other supporting practices and toolsets that allow CD

/ CD to deliver its promises

Agile Project Management Infrastructure as Code

Cloud Platforms

Configuration Automation

Product Iteration

Cultural Change

Process Change

STAKEHOLDERS

• Product owners and other stakeholders will love that you can make rapid

change

• CI / CD advocates will need to educate stakeholders on their involvement in

the process

• There will be mistakes and failures as the practices are established, take the

time to educate others that failure doesn’t necessarily mean PANIC!

QUESTIONS?

These are not the movies you are looking for.

(Really. Don’t watch them. It hurts. They suck)