shifting to cloud native, government edition

33
Shifting to Cloud Native with Pivotal or, coding like a unicorn, Government Edition @cote March 2016 1 Slides: http://cote.io/unicorn-coding/

Upload: michael-cote

Post on 14-Apr-2017

564 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Shifting to Cloud Native, government edition

Shifting to Cloud Native with Pivotalor, coding like a unicorn, Government Edition

@coteMarch 2016

1 Slides: http://cote.io/unicorn-coding/

Page 2: Shifting to Cloud Native, government edition

• @cote – Director, Technical Marketing at Pivotal for Pivotal Cloud Foundry

• Former industry analyst at 451 Research and RedMonk

• Corporate strategy & M&A at Dell

• Former software developer• Podcasts:

http://cote.io/podcasts• More: http://cote.io or

[email protected]

Hello!

2

Page 3: Shifting to Cloud Native, government edition

3

Page 4: Shifting to Cloud Native, government edition

It’s not much of an IT department, but I’m sorta attached to it…

4

Page 5: Shifting to Cloud Native, government edition

Source: “The Agile Advantage,” MeriTalk/Accenture, May 2015; Cutter Consortium, July 2015.

Organizations are held back by an IT agility gap

What is your IT organization's

role in business innovation?87% of Feds say

it takes too long to deploy new systems per requirements

5

Page 6: Shifting to Cloud Native, government edition

The IT Department of Slow/No• 6-12 months to release features• Business struggles to have software match market opportunities• IT is a cost center

Clipart from Gerd Altmann.

Page 7: Shifting to Cloud Native, government edition

The IT Department of Slow/No• 6-12 months to release features• Business struggles to have software match market opportunities• IT is a cost center

Clipart from Gerd Altmann.

Page 8: Shifting to Cloud Native, government edition

Continuous DeliveryRelease once every 6 months

More Bugs in production

Release early and oftenHigher Quality of Code

DevOpsNot my problem

Separate tools, varied incentives, opaque process

Shared responsibilityCommon incentives, tools, process and

culture

MicroservicesTightly coupled components

Slow deployment cycles waiting on integrated tests teams

Loosely coupled componentsAutomated deploy without waiting on

individual components

Platform, Standard Practices & Tools, Cloud Native Culture

Trad

ition

al IT

Clo

ud N

ativ

e

Page 9: Shifting to Cloud Native, government edition

The Process

9

Page 11: Shifting to Cloud Native, government edition

Benchmark your agile behaviors, plan catching-up as needed

Source: “Town Hall: Agile in the Enterprise,” Mike West, Nathan Wilson, Thomas Murphy, Dec 2015, Gartner AADI US conference.11

Page 12: Shifting to Cloud Native, government edition

Discovering & delivering the software your customer actually wants

• Most organizations emphasize building to plan

• In reality, the “plan” constantly evolves

• Learning organizations explore & experiment

How most businesses think they’re doing

How smart businesses know they’re doing

12

Page 13: Shifting to Cloud Native, government edition

The “Lean Startup” Approach, Hypothesis Driven Development, aka, “The Scientific Method

13

• Deploy to production each time, avoid waterscrumfall

• Relies on:- Product approach- Small batch oriented

pipeline and process- Cloud native automation

Inception

Hypothesize

Validate w/real use(r)s

Did it work?

Sources: The Lean Startup, Eric Ries, 2011. The Lean Enterprise, Barry O'Reilly, Jez Humble, and Joanne Molesky. See also overview of this approach at the IRS from Dec 2015.

Page 14: Shifting to Cloud Native, government edition

Small Batches Reduce Risk & Increase Controls

14

Five risks that small batches reduce

1. Bug swarms – less software leads to faster fixing.

2. Useless software – don’t wait 6+ months to find out, find out every 24 hours.

3. Stymied Innovation – daily opportunities to learn and innovate.

4. Budget overruns – check in daily on ROI, projections. Shut it down early and re-try if needed.

5. Schedule elongation – if you ship every day, guaranteed, how can you ever be late?

Source: "Dear Developers, Small Batch Releases Are Your Friend," Coté, Feb 2016, also in The Register.

"There have obviously been culture shocks. What is more interesting though is that the teams that tend to have the worst culture shock are not those typical teams that you might think of, audit or compliance. In fact, if you’re able to successfully communicate to them what you’re doing, DevOps and all of the associated practices seem like common sense. [Auditors] say, 'Why weren’t we doing this before?’”

"DevOps Enterprise Adoption at E*TRADE,”InfoQ/DOES, Jan 2016.

Page 15: Shifting to Cloud Native, government edition

Benchmark your agile behaviors, plan catching-up as needed

Source: “Town Hall: Agile in the Enterprise,” Mike West, Nathan Wilson, Thomas Murphy, Dec 2015, Gartner AADI US conference.15

Page 16: Shifting to Cloud Native, government edition

DevOps, the word defines itself

16

(1.)DevOps is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support.

(2.)DevOps is also characterized by operations staff making use of many of the same techniques as developers for their systems work.

Source: “What Is DevOps?,” The Agile Admin, Dec 2011. For more: Effective DevOps, Jennifer Davis, Katherine Daniels, May, 2016; see The Practice of Cloud System Administration, chapter 8 for an in-depth definition and discussion. Also, see Damon Edward's 2012 piece "Use DevOps to Turn IT into a Strategic Weapon.” Also, The Phoenix Project for a story of DevOps in the style of The Goal.

Page 17: Shifting to Cloud Native, government edition

Example approach, The Pivotal Way

17 Source: Pivotal Labs, March 2016. See also “Agile Transformation in the Age of the 3rd Platform,” Al Hilwa , IDC, Feb 2016 (unpublished)

Exploration Discovery

Page 18: Shifting to Cloud Native, government edition

Go big with small batches

Sources: "Ford teams with Pivotal, bets on Cloud Foundry," Larry Dignan, ZDNet, Dec 2015;”Application Modernization, Service By Microservice," Forrester, Dec 2015. See also BMC Software case study in The Concise Executive Guide to Agile and Cutter Executive Report, Vol. 9, No. 9, 2008.

"We did an analysis of hundreds of projects over a multi-year period. The ones that delivered in less than a quarter succeeded about 80% of the time, while the ones that lasted more than a year failed at about the same rate. We're simply not very good at large efforts.”

-Dev leader, large financial institution

18

“…sped up software development times from months to weeks using agile techniques.”

Page 19: Shifting to Cloud Native, government edition

The Tools

19

Page 20: Shifting to Cloud Native, government edition

The nature of software is changing, yet again

20Source: "Application Modernization, Service By Microservice," Kurt Bittner and Randy Heffner, Dec 2015, Forrester. See the“The RedMonk Programming Language Rankings: January 2016” for popular programming languages.

Page 21: Shifting to Cloud Native, government edition

Continuous Delivery – the pipeline

21

Build Test/Verify Package repository

VersionControl

InfrastructurePlatform

(IaaS, PaaS, VMs)

ProductionConcerns

(monitoring, scaling, etc.)

Feedback Loop

Specify Code

Development CI/CD Ops

Page 22: Shifting to Cloud Native, government edition

Details of the pipeline

CommitTests

IntegrationTests

Deployable Artifact

Deploy to CF Test Env

Deploy to Prod

• Developer crafted (before impl.)• Stubs/mocks external services• Developer executed (before commit)• CI executed (after commit)

(after commit)• Developer or QA crafted• CI executed• Runtime context (buildpack applied)• Binds to test services (DB, messaging, etc.)

• “cf push”• Runtime context (buildpack applied)• Binds to test services (DB, messaging, etc.)• Periodic smoke tests

• “cf push”• Runtime context (buildpack applied)• Binds to prod services (DB,

messaging, etc.)• Periodic smoke tests• Monitoring

? ?

Page 23: Shifting to Cloud Native, government edition

A microservices approach gives you organizational agility, at the expense of architectural complexity

23

Benefits• Decoupling service

releases, teams• Faster innovation cycles• Composite applications

vs. monolithic apps

Problems• The one about the

murder mystery• Incompatible APIs• You still need other

people to do work

It’s worth solving the problems if you want the benefits…and it’s possible!

Page 24: Shifting to Cloud Native, government edition

The Application Framework promises

Codebase Dependencies Config Backing Services

Build, Release,

RunProcesses Port

BindingConcurrenc

y

DisposabilityDev/Prod

Parity Logs Admin Processes

Source: “The Twelve-Factor App.”

• A set of best practices for developing and deploying cloud-native software.

• Practices translate into platform features and workflow requirements.

Page 25: Shifting to Cloud Native, government edition

For all this, you’ll need a platform

Sources: "The cloud-native future," Casey West, O'Reilly Radar, Aug 2015; "Technical Dive into Cloud Native Application Platforms," Brian Gracely, Wikibon, Sep 2015.25

Page 26: Shifting to Cloud Native, government edition

Transforming:

26

Page 27: Shifting to Cloud Native, government edition

Don’t worry, we got your happy trees!

Page 28: Shifting to Cloud Native, government edition

A cloud native platform is composed of three layers, that span & support the entire life-cycle of an application from development to production

12 factor apps & Microservices

Container Orchestration

Infrastructure Automation

Polyglot buildpacks & Spring Cloud

Elastic Runtime/Diego

BOSH

Cloud NativeApplication Frameworks

Cloud NativeRuntime Platform

Cloud NativeOperations

Cloud Native Empowered Culture

Source: slides in this section based on “Patterns of Cloud Native Architecture,” Agile 2015. 28

Page 29: Shifting to Cloud Native, government edition

The platform for keeping promises

29

Application Framework

Runtime Platform

Infrastructure Automation

Infrastructure

Dev

Dev

Ops

BOSH

Spring BootSpring Cloud

Contract: 12 factor app

Contract: BOSH Release

Contract: Cloud Provider Interface

IT Ops

Culture Cloud Native Framework Tools

Go

Page 30: Shifting to Cloud Native, government edition

Pivotal Labs & Pivotal Cloud FoundryWorldwide, cross industry adoption

And many more...

30

Page 31: Shifting to Cloud Native, government edition

Cloud native approaches speed up the whole process, more efficiently than previously possible

Source: “Deployments We Can Believe In,” Diego Lapiduz, 18F, June 2015; see also “Barriers to DevOps in Government,” Coté, Oct 2015; Humana keynote, CF Summit 2015. 31

18F/cloud.govATO reduction from

9-14 months to 2-3 days

• Humana Cue Apple Watch app:

“Two people built the app and got it into the AppStore in five weeks.”

• Large financial institution on PCF: 145 apps with 2 ops people

• PWS: 1,000’s of apps with 5 ops people

Page 32: Shifting to Cloud Native, government edition

For more: transforming to cloud native

(1) GreenfieldProjects

(2) Dealing with

Legacy

(3)Corporate

Transformation

Get the free booklet at http://cote.io/pivotal32

Page 33: Shifting to Cloud Native, government edition

Thanks!@cote | [email protected]: http://cote.io/unicorn-coding/

“We are uncovering better ways of developing software by doing it and

helping others do it.”- The Agile Manifesto, 2001

33