alm forum 2014 - jose luis soria - patterns and anti-patterns for (continuous) delivery

Post on 05-Dec-2014

769 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Slides for my presentation about delivery patterns at the ALM Forum 2014 (Seattle)

TRANSCRIPT

Sponsored by

Patterns & anti-patterns for (Continuous) Delivery

Jose Luis Soriajlsoria@plainconcepts.com@jlsoriat

Do you fail to

version databases, config files,

dependencies, documentation, tools

or environments?

backupbackup

get an old version

get an old version

undo changes

undo changes

collaboratecollaborate

track changes

track changes

baselinebaseline

Versioneverything

Do you manuallybuild, package,

deploy, test,or provision

environments?

mistakes(missing steps, misunderstandings,

boredom, etc.)

wasted time

dependency on specific

people

accidents

Automateeverything

Do you manuallycopy or change

config filesto match target environments?

figure out what to change

omissions, mistakes

sensitive info being exposed

Tokenizeconfiguration

Do you follow a complex,

multi-step procedure for

deployments?

wastedtime and

effort

not testing on certain

environments

Setup one-click deployments

http://bit.ly/1mKGTqB

ARIANNE 5 EXPLOSION (1996)

The Ariane 5 rocket was reusing software from the Ariane 4. Ariane 5’s faster engines exploited

an undiscovered bug: the software tried to cram a 64-bit number into a 16-bit space. 36.7 seconds

into its launch, the self destruct safety mechanism was activated.

http://en.wikipedia.org/wiki/Ariane_5#Notable_launches

Do you validate onlyin dev/test

environments?

So, you don’t have any information about how the system will behave

in prod?

Deploy to a copy of production

AT&T NETWORK CRASH (1990)

The failure of one switching system would cause a message to be sent to nearby switching units,

making those other systems to fail too – resulting in a cascading failure across the entire AT&T long

distance network

http://en.wikipedia.org/wiki/List_of_software_bugs#Telecommunications

Are you prepared to recover from failure?

Does it take a lot of time

and effort?

Is the business losing lots of money meanwhile?

Prepare for rollbacks

Do you rebuild from the same code several times during releases?

shipping non-tested

binaries

errors introduced by

the build sequence

wasted time and resources

Buildonly once

Do you consistently avoid painful steps in your delivery process?

sensitive steps left for the last

moment

critical aspects of delivery not being mastered

http://bit.ly/70eM6U

Bring the pain forward

Do you lack a defined, repeatable, robust and fast delivery process?

failing to deliver

effectively

Build a Release Pipeline

What about your own patterns & practices?1. Think about some

delivery practice not covered in the talk.

2. Tweet it.#almforum @jlsoriat

3. Get a copy of the book!http://aka.ms/ReleasePipeline

Thanks!Get my e-book (for free):http://aka.ms/ReleasePipelineBuy it:http://amzn.to/1fuo1YOGet the labs:http://aka.ms/ReleasePipeline-HOL

#almforum @jlsoriatjlsoria@plainconcepts.com

Thank you for joining us!

top related