Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise...

19
Adopting DevOps Concepts For Distributed Enterprise Solutions JP Morgenthal, Director, Cloud Computing & DevOps Practices E: jp.Morgenthal [at] perficient.com T: @jpmorgenthal

Transcript of Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise...

Page 1: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

Adopting DevOps Concepts For

Distributed Enterprise Solutions

JP Morgenthal, Director, Cloud Computing & DevOps PracticesE: jp.Morgenthal [at] perficient.comT: @jpmorgenthal

Page 2: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

2

Key IT Drivers for 2015

• Creative exploitation of data

• Getting closer to customer /

customer experience

• Reduce dependence on insular

compute infrastructure

`

Page 3: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

3

“For everyone who has ever

worked with Puppet Labs, pretty

much the only reason why they’re

working with us is they’re trying to

find a way to move faster.” ~ Luke

Kanies, Puppet Labs

Page 4: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

4

Managing Work Flow

4

W. I. P.

Optimize the work-in-progress

Page 5: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

5

Decisions

• Continuous Integration– What platform are we unit testing for?

– Do the current tools support the level of automation desired?

– Are we satisfied with the application development methodology in use?

– Can we quickly reprioritize delivery objectives

– Does our development environment take into consideration production limitations?

• Continuous Test– Does our test platform properly represent production expectations?

– Can we test impact to both infrastructure and applications?

– Can we sufficiently test load in our test environment?

• Continuous Deploy– Does operations require a period of burn-in before production release?

– What is the protocol for replacing a current burn-in with a more current release?

– How do we limit the need for manual intervention in deploying production release?

Page 6: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

6

Managing Work Flow

W. I. P.

Optimize how work enters and exits the pipeline

Page 7: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

7

Decisions

• For any given change can we map the associated business processes that may be affected?

• What is the required lead time from the business to enact a reprioritization of development objectives?

• What level of overlap is there for a given dev or ops resource with regard to a given set of tasks?

• What is the mean-time-to-repair for each of the systems in production?

• What is the migration strategy for the current application portfolio?

• Do we have the appropriate levels of communication and cooperation between IT departments to meet required service levels to the business?

Page 8: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

8

Managing Work Flow

W. I. P.

W. I. P.

W. I. P.

Development

Operations

Lean IT

Security

Page 9: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

9

Common Approach To Enterprise Application Architecture

Area of Responsibility

Middleware Database eCommerceOrder

Management Supply Chain

WCSIIB

DB2

OMS

SAP

Has Dependency On

Page 10: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

10

Common Approach To Enterprise Application Architecture

Area of Responsibility

Middleware Database eCommerceOrder

Management Supply Chain

WCSIIB

DB2

OMS

SAP

Has Dependency On

Release X.0

Page 11: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

11

Deliver software-driven

innovation, faster

What is “DevOps”

• DevOps is a problem domain

that encompasses the

bottlenecks and constraints

related to application delivery.

• DevOps-related issues are

resolved through the adoption

of continuous delivery.

• Businesses achieve

continuous delivery through

application of lean IT

Steer

Deploy

OperateDevelop and test

DevOpscontinuous feedback

Page 12: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

12Source: Enterprise DevOps: Making IT

Work for Business, Morgenthal/Kavis

Enterprise DevOps Maturity Model

Maturity

Level

Level 1

Ad-Hoc

• Silo based

• Blame, finger pointing

• Lack of accountability

• Resource overloading

• Information withheld

vs shared

• Manual processes

• Tribal knowledge is the norm

• Unpredictable, reactive

• Lack of defined or immature

SDLC

• Excessive unplanned work

• Manual build &

deployments

• Manual testing

• Environment

inconsistencies

• Long lead times for dev/test

Level 2

Repeatable

• Managed

communications

• Limited knowledge

sharing

• Gated & documented

handoffs

• Processes established w/in

silos

• No standards

• Can repeat what is known

but can react to unknown

• Bastardized methodology

implementations

• Automated builds

• Automated tests written as

part of story development

• Painful but repeatable

releases

Level 3

Continuous

• Collaboration exists

• Shared decision

making

• Shared accountability

• Process are automated

across SDLC

• Standards across

organization

• Executed on a continual

basis & event driven

• Automated build & test

cycle for every commit

• Push button deployments

• Automated user &

acceptance testing

People Process Technology

Page 13: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

13

Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis

Enterprise DevOps Maturity Model

Maturity

Level

Level 4

Improved

• Shared metrics w/ a

focus on removing

bottlenecks & constraints

• Focus on cross-

functional continuous

execution

• Focus on MTTR over

failure avoidance

• Proactive monitoring

• Metrics collected &

analyzed against

business goals

• Visibility &

predictability

• Transparent to the

business

• Build metrics visible

and acted on

• Orchestrated

deployments with

auto rollbacks

• Non functional

requirements defined

& measured

Level 5

Optimized

• A culture of continuous

improvement permeates

through the organization

• Self service

automation

• Risk & cost

optimization

• High degree of

experimentation

• Zero downtime

deployments

• Immutable

infrastructure

• Actively enforce

resiliency by forcing

failures

PeopleProcess

Technology

Page 14: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

14

Hurdles to Removing Organizational Debt

Politics

Lack of business alignment

• Transparency and visibility into the process

Existing policies and controls

Lack of understanding of impact

• Visualization of wait states with real impactful metrics

Reliance on too much specialization

• Visualization of resource contention and wait states due to need for specialists

Page 15: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

15

Hurdles to Removing Technical Debt

No slack time

• Increase automation and reduction of time spent handling failures increases slack time in the schedule

Lack of budget

• Better resource utilization means more can now get done with same resources

Lack of skilled resources

• Increased slack affords time for re- and cross-training

Lack of incentive

• Metrics that are meaningful to management to gain support of continued support

System fragility / risk of change

• Ability to deliver smaller releases faster reduces risk of change

Page 16: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

16

Common Issues Adopting Continuous Delivery For Enterprise Solutions

Insufficient number of environments to drive parallel development efforts

• Too many low-value policies

• To much middle management attempting to hold onto their area of control

• Misaligned governance

Organizational debt

• Ratio of defects per function point is too high

• Bad architecture

• Failure to adopt newer versions of software

Technical debt

Low levels of testing automation

Resource contention

Page 17: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

17

Limit Work-in-Progress (WIP)

Develop Testing Center of Excellence

Don’t Automate Waste

QA is Validation, Not Defect Identification

Obtain Executive Level Sponsorship

Model QA & User Acceptance Test Environment to Perfectly Mimic Production

Leverage A Common Repository For All Release Artifacts

Removing Bottlenecks & Constraints

Page 18: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

18

Award-Winning Trusted IBM Consulting & Solutions Firm

Founded in 1997

Public, NASDAQ: PRFT

2014 projected revenue ~$454 million

Global delivery centers in China and India

>2,600 colleagues | Dedicated solution practices

~90% repeat business rate

• Local Business Units in over 20

major US Cities

• 30+ IBM Awards:

• 2015 Beacon Award Winner – Analytics

• 2014 IBM Innovation, Pure & Simple

Outstanding Collaboration Award

• 2014 IBM Collaboration Solutions Best Digital

Experience Award

• Solution Integration Award 2012

• 3x Lotus Distinguished Partner

• Best Portal Solution Award 2010

• Industry Focused & Authorized:

• Healthcare, Retail & Financial Services

Page 19: Adopting DevOps Concepts For Distributed Enterprise Solutions DevOps... · Source: Enterprise DevOps: Making IT Work for Business, Morgenthal/Kavis Enterprise DevOps Maturity Model

19

Thank you!