devops@enterprise - lessons from the trenches

28
© 2014 IBM Corporation Accelerating Product and Service Innovation DevOps@Enterprise Lessons from the trenches https://twitter.com/marceloancelmo Marcelo Sousa Ancelmo Senior IT Specialist – IBM Rational [email protected] marceloancelmo http://www.slideshare.net/marceloancelmo https://www.linkedin.com/in/marceloancelmo

Upload: marcelo-ancelmo

Post on 28-Nov-2014

317 views

Category:

Technology


1 download

DESCRIPTION

Presentation about DevOps@Enterprise made at Soft-Shake 2014 on Geneva-CH

TRANSCRIPT

Page 1: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

DevOps@EnterpriseLessons from the trenches

https://twitter.com/marceloancelmo

Marcelo Sousa AncelmoSenior IT Specialist – IBM Rational [email protected]

marceloancelmo

http://www.slideshare.net/marceloancelmo

https://www.linkedin.com/in/marceloancelmo

Page 2: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

3

What Is DevOps for you?

Page 3: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

4

Sometimes people come with this

Page 4: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

5

And this is what we often hear on enterprises

“DevOps? We already do that. Call the DevOps team here to talk with this guy” - Business Savvy Executive, thinking that DevOps is just a new team

“We have a Continuous Integration environment here, we just need to convince people to use it” - Early promoted IT Manager, coming from a successful IT project

“We have a Release Process that is too much rigid, this will never work here” - Developer or Operations guy (pick any), helpless about his future

Disclosure – ALL OPINIONS ARE THEIR OWN! (Phrases and people can change at your own will)

Page 5: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

6

What they need to realize is that a DevOps approach...

… Are a cultural change on how teams work and interact with each other, inside a well structured process

… Requires a collection of techniques to maintan standards and lower the chances of drifts

... Implements a lot of practices, to continuosly and consistenly apply the techniques

… Make usage of tools, to help people do their jobs better, apply the techniques and practices and to monitor all the environment

All of this to deliver the consistency, collaboration, transparency and feedback necessaries to the Enterprise

Page 6: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

7

Executive leadership is vital

C-Level, VP, Higher Manager (Higher is better)

Have power to put everyone “on the same room”

Can help break the silos and bring people in

Make connections between silos and keep the path clear to move forward

Defend the DevOps initiave in front of others executives and on meetings

Advocates on culture change ...

… but all of this does not mean nothing if people do not ENGAGE

Page 7: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

8

Culture change should be top level priority

This is especially difficult on the Enterprise, where a lot of people have different responsabilities, departments are siloed and different practices are scattered

... and don't forget that there are political reasons too!

For succesful DevOps adoption at the enterprise you must engage everyone involved – From Enterprise Architecture to Operations

They mut perceive the value that the enhanced collaboration, communication and transparency of a DevOps Strategy can bring to them.

This is why the cultural barrier is one of the most difficult challenges and shoud be the principal target for rolling out DevOps at the Enterprise.

Page 8: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

9

Engaging strategies

Mix the teams, put someone from the Development on the Operations team for a limited amount of time and vice versa, so they can “fell the pain” and know “Who is on the other side of the phone”

Development and Operations should use the same tools to plan, track, build, deploy, release and monitor. This will increase collaboration at the software development lifecycle

Share knowledge – Use Wiki, blogs and foruns to collaborate and spread information. Be social and transparent

Create a DevOps commite with members from all of the enterprise. Everyone should have an active voice.

Be aligned with strategic initiatives from the Enterprise, delivering real value all the time

Page 9: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

10

DevOps @ Enterprise Use Case

Page 10: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

11

What we found

The Good

A well established SCM + Issue Track + Continuous Integration environment

Teams that are using this environment and are getting great results

The Bad

Some teams did not get any perception of value by adopting this solution

Others teams did not have “time” to make necessary adjustments and migrations to use this environment

Some teams did not even know that threre is such environment

The Ugly

No Executive Sponsorship

No clear communication and collaboration with testing and operations teams

Page 11: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

12

First Bussines Challenge: Prove Yourself

Business Income: I did not believe you!

Challenge: To Prove DevOps value

Strategy: Find a project to be our pilot

What worked:

Found an Agile team that embraced the challenge;

We partened with them and created a “War Room”;

Deep understanding of the Enterprise culture and who are the key players;

After 3 months, they raised productivity more than 30%

What don't worked well:

Operations still did not fully engaged

No corporate standard for SCM and Versioning

Different deployment scripts for the environments

Business Outcome: Good Job, let's see what happens when we work at scale!

Page 12: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

13

After the pilot result, a lot of teams started to ask how they could participate

Followed an Agile approach, with releases at each 6 months, aligned with enterprise strategic objectives

Each release was broken into small deliverables (1 month each) that should:

Introduce some practice, technique and / or tool

Must be put on practice by at least one team

Should address a real business challenge

After the end of each delivarable, we make a retrospective of it

What worked

What did not worked

What could be improved

What must be changed

Second Bussines Challenge: Present your strategy

Page 13: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

14

Dev + Ops – Working together for business benefit

Page 14: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

15

Infrastructure Change Management

Tools chain:

Development – Eclipse

Plan, Track and SCM – Rational Team Concert

Software Definitive Library – Rational Asset Manager

Page 15: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

16

Build Pipeline

Tools chain:

Development – Eclipse, Rational Application Developer or Rational Software Architect

Plan, Track and SCM – Rational Team Concert

Continuous Integration and Build Automation – Rational Build Forge

Software Construction – Apache Maven and Apache Ant

Software Quality Testing – SonarQube

Software Security Testing – IBM AppScan Source

Page 16: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

17

Software Definitive Library

“Continuous delivery is about putting the release schedule in the hands of the business, not in the hands of IT.” - Jez Humble

Runs immediately after the Continuous Integration QA phase

Publishes the resulting artifacts to SDL

Tools chain:

Build Automation – Rational Build Forge

Software Definitive Library – Rational Asset Manager

Page 17: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

18

Metamodel for Applications

Page 18: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

19

Deployment Pipeline

Can be run at any time (including just after the delivery phase as part of the build pipeline) for a published application.

Tools chain:

Deployment Automation – IBM UrbanCode Deploy

Software Definitive Library – Rational Asset Manager

“The primary goal of continuous deployment is not to deploy continuously. It is to be able to deploy continuously..” - Paul Klipp

Page 19: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

20

Delivery Pipeline

Path followed by an application through its lifecycle

You can quickly ask to the Software Definitive Library which version is deployed where

Everyone involved and interested in the process are communicated

Tools chain:

Plan, Track and Collaborate – Rational Team Concert

Deployment Automation – IBM UrbanCode Deploy

Release Management – IBM UrbanCode Release

Page 20: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

21

Lifecycle for the application

Page 21: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

22

Benefits realized so far

Integration and traceability on the whole Software Development Lifecycle

Smooth transition and better communication between Development and Operations

Traceability between Build – Deploy – Defects – Testing – Code - Requirements

Rollout to new users facilitated through an standardized process

BOM of tools and scripts installed on all environments

Lower configuration drift

Following Releases:Now - Release ManagementNext - Continuous Testing

Page 22: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

23

Closing the gap

Page 23: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

24

They need to see it as a evolutionary process

Page 24: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

25

That should be adopted in a Lean way

Page 25: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

26

They need leadership and guidance...

Page 26: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

27

...To do right things right

Image: www.nguyenduykhanh.info

Page 27: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

Questions

Image: FreeDigitalPhotos.net

Page 28: DevOps@Enterprise - Lessons from the trenches

© 2014 IBM Corporation

Accelerating Product and Service Innovation

Thank You

MerciGrazie

Gracias

Obrigado

Danke

Japanese

English

French

Russian

German

Italian

Spanish

Brazilian Portuguese

Arabic

Traditional Chinese

Simplified Chinese

Hindi

Tamil

Thai

Korean

DziękujęPolish

Marcelo Sousa AncelmoSenior IT Specialist – IBM Rational [email protected]