9 steps to agile mainframe ops - nedb2ug steps to... · 2019-10-04 · 9 steps to agile mainframe...

100
1 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems Keith Sisson Dave Seibert September 2019

Upload: others

Post on 20-May-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

1

9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems

Keith SissonDave SeibertSeptember 2019

Page 2: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

2

DevOps?

“DevOps is not a technology challenge. Although technology plays a part, DevOps is largely about people, culture and process.”

Page 3: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

3

Why Now?

I. Mainframes are critically important

II. Development teams are moving faster

III. Big changes require time

Page 4: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

4

Time to Market

Page 5: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

5

Digital Age = Fast Beats Slow

5

#1 Concern is being caught flatfooted by competitors AND not being Able to RESPOND

Page 6: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

6

Waterfall

TIME

Planning Design Development QAPlanning Design Development QA

Ops First Look

TIME

Page 7: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

7

Planning Design Development QAQA

Development

Design

Planning

QA

Development

Design

Planning

QA

Development

Design

Planning

QA

Development

Design

Planning

QA

Development

Design

Planning

Waterfall

TIME

demo demo demo demo

Agile

Page 8: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

8

What about us?

Understand dev part of DevOps … What about ops?

Where do we start?

• Concrete steps

• Reasoning

• Success Indicators

Page 9: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

9

1. Mainframe stewardship

2. Understand mainframe in digital age

3. Seamless integration

4. Culture of cooperation

5. Success metrics

6. Process improvement

7. Problem resolution

8. Automation

9. Promote your success

Mainframe DevOps From an Ops Perspective

Page 10: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

10

MAINFRAME STEWARDSHIP

Step 1:

Page 11: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

11

Ignoring Situation Usually Doesn’t Make It Better

• Mainframe is here to stay

• Need people to support platform

• Need explicit executive support

Page 12: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

12

John Deere Combine

Page 13: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

1313

Page 14: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

14

Five Levels of Onboarding

3. Love/Belonging• Working on big important projects• Explore new techniques• Collaboration with other teams

4. Esteem/Confidence• Training• Creating automation• Solving big problems

2. SafetyJob security and career advancement

5. Self ActualizationRealization of your full potential

1. Physical NeedsGood salary, nice place to work

Page 15: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

15

Maslow’s Hierarchy of NeedsSelf Actualization

Encourage them to make impact in system and in organization

Encourage Initiatives

• Open-minded

• Responsibility

• Lead projects

• Change organizational systems

• Improve own working environment

Multi-disciplinary Training

• Self learning

• Training in other fields

• Certifications

Page 16: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

16

“Business leaders are broadly:

Type 1: Passionate product innovators

Type 2: Passionate about making the company run well—process oriented.”

- Ben Horowitz

“Software is eating the world, in allsectors. In the future every company will become a software company.”

- Mark Andreessen

Page 17: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

17

1. Exploiters: Recognize mainframe as valuable asset

2. Status Quo: Mainframe must go slow

3. Cloud Only: Get off mainframe

Camps of Thought Around Mainframe

Mainstream the mainframe

Page 18: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

18

• Defined commitment to the mainframe

• Mission champions and allies are found

• Hire new people onto mainframe teams

Success Indicators

Page 19: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

19

UNDERSTAND THE MAINFRAME IN THE DIGITAL AGE

Step 2:

Page 20: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

20

1964 Chevy Corvette

Page 21: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

21

2019 Chevy Corvette ZR1

Page 22: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

22

The Mainframe Simply Works

• People don’t really understand mainframe’s power

• Sometimes overlooked precisely because it always works

Page 23: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

2323

Legacy technology

No new developersto support platform

Can’t be Agile

Running code from

1960s

Expensive to operate

Page 24: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

24

Page 25: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

25

Page 26: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

26

UK Bank Success Story

• Each developer delivers 36 story points per release, as opposed to 8

• Reduced time spent writing and checking code during each sprint from average of 40 hours to 7 hours

• Project delivery timeframe cut by 1/3

• Reduced time to test large applications from 2 weeks to 5 minutes

• Removed manual effort and enabled creation of repeatable tasks in Jenkins

• Overall developer productivity increased by 400%

26

“We are innovating faster on the mainframe than we are in our digital channels, which is just incredible”

Page 27: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

27

• Stakeholder confirmation and understanding

• Champions and allies identified and ready to help

• Explicit confirmation of the understanding of the mission and its importance to the success of the business

Success Indicators

Page 28: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

28

SEAMLESS INTEGRATION

Step 3:

Page 29: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

29

Two-platform IT

• Enterprise platform strategy we’ve employed for 4+ years

• Helped us save $5 million annually

• Focus on continuously improving customer experience,

instead of demonizing particular platform

• Most mission-critical workloads

and strategic IP leverage mainframe

• Compulsory apps not providing competitive

advantage are server-based

• Compulsory apps became SaaS, cloud-consumed service

Page 30: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

30

Our Data Center

Page 31: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

31

IBM Commercial (2006)

Page 32: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

32

• Moving on-prem x86 to cloud SaaS saves $

• Re-writing or re-platforming does not save $

• Migrating strategic IP to cloud costs millions, takes years, introduces new risks and results in failure or reduced service levels

• Even if successful, only at same place you started!

• Executive sponsorship

• Business unit buy in and co-lead

Two-platform IT

Page 33: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

33

REST Web Service Server

REST Web Service Server

HTTP Response

HTTP Request

{"name":"Product",

"properties":

{ "id":

{ “type":“3090",

"description":“hammer",

"required":true

},

"name":

{ "description":“deluxe driver",

"type":“implement",

"required":true

},

"price":

{ "type":“11.49",

"minimum":0,

"required":true

},

"tags":

{ "type":"array",

"items":

{

"type":“red"

}

}

}}

JSON Object

REST Web Service Client

Create HTTP PUT

Read HTTP GET

Update HTTP POST

Delete HTTP DELETE

REST Web Service Server

RESTful API

Page 34: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

34

Accepted standard for what “cloud service” is:

• On-demand self-service

• Broad network access

• Resource pooling

• Rapid elasticity

• Measured service

*NIST publication SP800-145

Source: http://www.redbooks.ibm.com/redbooks/pdfs/sg248347.pdf

• Distributed caching solution

• Unique identifier generator

• Crypto service

• No SQL data store

All accomplished on their mainframe!

Page 35: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

35

Native CICS APIs

CICS APIs that satisfy requirement for HTTP-based communications for most cloud services:

EXEC CICS WEB EXTRACT

Gets HTTP information about incoming requests

EXEC CICS WEB RECEIVE

Gets request information from consumers

EXEC CICS WEB SEND

Sends response to consumer

Also useful APIs:

EXEC CICS WEB READ HTTPHEADER

Gets HTTP header fields and information

EXEC CICS WEB WRITE HTTPHEADER

Creates HTTP header fields and information

REST APIs

Page 36: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

36

//O&number JOB (TECH) //*

// EXPORT SYMLIST=ORDER

// SET ORDER=‘&number//*

//PROCSTEP EXEC PRODUCTP

//*

//SYMBOLIC.SYSUT1 DD *

Description &descriptionType &type Price &price

JSON to JCL

{"name":"Product","properties": {"Order":{"Number":"0001405","required":true},

"id":{“id":"3090","description":"hammer","required":true},

"name":{"description":"deluxe",“type":"implement","required":true},

"price":{"price":"11.49","minimum":0,"required":true}

}}

//O0001405 JOB (TECH) //*

// EXPORT SYMLIST=ORDER

// SET ORDER='0001405' //*

//PROCSTEP EXEC PRODUCTP

//*

//SYMBOLIC.SYSUT1 DD *

Description hammerType implement Price 11.49

Page 37: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

37

Services vs. Functions vs. IP

Services = Generic operations that provide valuable utility Example: Generating unique value or

temporarily storing data

Functions = Provide specific operation or result Example: Date difference calculation, string manipulation,

data/numeric conversions

IP = Code that uses logic, design and creativity to produce results that often provide strategic value

Q. What should I run on the mainframe?

A. ALL OF IT! (*anything with a lot of transactions)

Page 38: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

38

How to Do Two-platform IT

Step 1: Conduct Audit

• Analyze all apps running

• Separate compulsory from business-critical

• Business-critical stay on mainframe

Step 3: Have Business Units Make Functional Decisions

• Elect subject matter expert (SME) to understand business unit needs

• Partner IT with SME and vet process to ensure right decisions are made

Step 2: Identify Risk

• Impact from failure

❑ Cost of failure?

❑ Who is impacted?

❑ Workarounds available?

Step 4: Decide What to Do with Data from Deprecated Technology

Have to make it accessible in some way

• Port it into new system

• Archive it in some new system

• Keep old system (eliminates some savings)

Page 39: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

39

Step 6: Roll Out

• Train everyone on how to use new system once up and running

• Burn the boats

Step 7: Reallocate IT and Other Business Resources

• Not cost-cutting exercise

• Re-allocate people and resources

Step 5: Conduct IntensiveAudit on Data Quality

• Begin to uncover hidden constraints

• Benefit: Data is ultimately scrubbed = fresh start

How to Do Two-platform IT

Page 40: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

40

Success Indicators

• Realization that big things can be accomplished

• No longer have groups bigoted towards certain platforms

• Stop wasting time moving workload for no real value

• Focus shifts to innovation

Page 41: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

41

INITIATE A CULTURE OF COLLABORATION

Step 4:

Page 42: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

42

Zero Tolerance for Silos

You can no longer afford to manage your mainframe environment as an isolated silo apart from your cross-platform enterprise.

Normalization will reduce your costs, improve your outcomes and extend the useful life of your mainframe for decades to come.

Page 43: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

43

Agile Input

Three AmigosProduct Council

Sprint Planning and Estimation

Sprint Review and Demo

Retrospective

Sprint Cycles

Page 44: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

44

Three Amigos

Operations

Bringing new perspectives

Product Owner

Developer

Customer

DBA Team

Marketing

Page 45: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

45

Agile Methodology Kanban

Backlog Accepted

Next to

WIP

WIP

Next to Accepted

Page 46: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

46

• Test automation

• Packaging

• Security

• Performance tests/benchmarking

• Build automation

• Deployment updates

• Storage demands

• Capacity

Development Release Backlog

Page 47: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

47

Agile Methodology Kanban

Backlog Accepted WIP

Page 48: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

48

Success Indicators

• Team problem-solving without finger-pointing

• Increased use of shared digital tools

• Tangible increases in collaborative ‘face-to-face’ meetings

• Shared and/or aligned KPIs

Page 49: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

49

SUCCESS METRICS

Step 5:

Page 50: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

50

KPI Success Factors

• Communicate KPIs clearly to team: Won’t affect much change if people don’t explicitly know how they are being measured

• Velocity and efficiency are as important as quality, place equal importance on measuring and continuously improving all 3

• Set small number of initial goals that are challenging within current processes but achievable by embracing new methods

Page 51: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

51

Don’t Be Stuck in “Department of No” Mode

• Don’t solely be centered around “five 9s” availability and tight time-windows for batch completion.

• What is most important to you?

• What is your biggest constraint to moving faster?

Page 52: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

52

SWOT Chart

Strengths Weaknesses

OpportunitiesThreats

Page 53: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

53

Things take too long.

When will the new “X” be ready?

Measure the elapsed time from

“Go” to “Done”

Velocity

Page 54: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

54

High priority work takes a backseat to emergencies!

It’s hard to anticipate emergencies, because they are, by definition, unplanned work

People utilized at 100 percent do not have the capacity to handle unplanned or urgent requests without dropping other high-priority work

WIP

Page 55: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

55

Your top priorities may not alignwith other team’s top priorities

When a decision is made to do one thing,

you are delaying something else

People may just be unaware that there will

be an impact

Alignment

Page 56: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

56

The process to get things approved slows down everything

Process Efficiency

Change control, ITIL, CMM, Quality Gate, etc

Page 57: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

57

We have to put on maintenance, install a new release, defrag DASD, improve performance…

Technical Debt will eventually catch up to you.

Melvin Conway’s 2nd law: “There is never enough time to do something right, but there is always enough time to do it over”

Technical Debt

Page 58: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

58

Measure and track the “Flow Rate”:

Where was the time spent from “Go” to “Done”?

Categorize and measure the time that is spent on unplanned work

Categorize and measure the time that is spent on high priorities of others

Measure the time that is spent waiting on process

https://flowframework.org Dr. Mik Kersten

Big

Thre

e

Page 59: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

59

zAdviser

Page 60: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

60

Success Indicators

• Basic understanding of flow roadblocks

• Improvement ideas, especially when waiting

• Roadmap created for successive rounds of process improvements

Page 61: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

61

CONTINUOUS, QUANTIFIED PROCESS IMPROVEMENT

Step 6:

Page 62: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

62

• Change control

• Compliance

• Security

• Audit

• Performance tests/benchmarking

• Performance monitoring

• Customer/user support

• Test automation

• Packaging

• Build automation

• Automatic deployment

• Automatic back-out

• Deployment updates

• Training

• Marketing

• Legal

DevOps

Page 63: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

63

Insert Existing Processes into the Flow

Three AmigosProduct Council

Sprint Planning and Estimation

Sprint Review and Demo

Retrospective

Sprint CyclesChange Control

Customer Support

Automation

Performance Monitoring

Long-range Planning

Auditing/ComplianceOperations

Page 64: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

64

DevOps

Planning

Design

Development

QA

PO

Operations

Dev

QA

TIME

Systems

Network

Customer Success

Security/Audit

Data

Page 65: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

65

10 Items to Consider around Process1. Continuously examine your processes and eliminate

meaningless or low value ones

2. Create similar processes for all of development

3. Align approval and vetting processes with your Agile development schedule

4. Accomplish as much as you can using collaboration tools like Confluence, Slack or HipChat

5. Operational change control should be easier

6. Automate testing process

7. Automate deployment process

8. Have reliable method to verify code that was tested is same code that was deployed in production

9. Be able to quickly and automatically back out failed deployments

10. Training and constantly reinforce

Page 66: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

66

Success Indicators

• 3-5 KPIs that align with improving quality, velocity and efficiency

• New incentives that support KPIs

• Eliminate incentives that are counterproductive

• Get explicit feedback

Page 67: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

67

PROBLEM RESOLUTION“SHIFT LEFT”

Step 7:

Page 68: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

68

Business Unit Wants It Fast

99.999 SLAAutomated Continuous Delivery

99.999 goal

FASTSLOW FASTSLOW

Speed and Coordination

Page 69: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

69

Continuous Deployment

Continuous Delivery

Continuous Integration

Development

1. Analyze, edit and compile code

2. Unit test

Automation• Ideation• Product management

3. Code quality review

4. Product build

5. Integration test

6. Acceptance test

7. Deploy to production

Page 70: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

70

Page 71: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

71

AutoPLEX

DeployV16 | V17

Test Assets

Hiperstation Batch Jobs

V16 | V17 | V18

V16 | V17

V16 | V17

V16 | V17

V16 | V17

ZAPI

Test Results

Emailwith URL

CW01

V16 | V17

Page 72: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

72

CW13/CW14 ISPW Promote/Deploy Process

Promote to PROD

Promote to REGR

Promote to INTG

Promote to PTFS

– Deployed to

Regression

libraries

– Automated

tests run with

product REGR

libraries

– Deployed to

Integration

libraries

– Automated

tests run with

product INTG

libraries

– Approved PTFs

auto applied

to targets

– Automated

tests run with

product SMP/e

target libraries

– Automated

SMP/e product

build-install

– Automated tests

run against all

installed product

builds

Page 73: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

73

Page 74: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

74

Page 75: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

75

Page 76: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

76

Page 77: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

77

Page 78: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

78

Success Indicators

• Measurable shift of QA tasks to earlier in software lifecycle

• Reduced occurrence of specific issues and alert types later in lifecycle

• Fewer customer-discovered defects

Page 79: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

79

INCREASE AUTOMATION

Step 8:

Page 80: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

80

• Primary focus = eliminating line separating development and operations/system programming efforts

• Enable functions formerly considered domain of operations or systems personnel and extend to dev teams with auditable, secure means

• Will not discuss integration of application database design changes into DevOps methodology

How Db2 Fits into Our DevOps Strategy

Page 81: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

81

• Db2 tables contain our repository of PTF metadata

• Interfaces to Jira software for requirements and problem reports

• Use queries to build:

– Lists of PTFs that are customer requests

– Lists of PTFs that customers do not have installed

• Recursive Rexx and SQL

– When customer requests 1+ PTFs, our programs retrieve available prerequisite PTFs for requested PTFs

Db2 in Receive Order

Page 82: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

82

• WITH PREREQPTF (PTF, PREREQ ) AS

• (

• SELECT PRE.PTF_ID, PRE.PREREQ_PTF_ID

• FROM PTF_PREREQ PRE

• WHERE PRE.PTF_ID = 'SBG009A'

• UNION ALL

• SELECT CHILD.PTF_ID, CHILD.PREREQ_PTF_ID

• FROM PREREQPTF PARENT, PTF_PREREQ CHILD

• WHERE PARENT.PREREQ =CHILD.PTF_ID

• )

• SELECT DISTINCT PTF, PREREQ

• FROM PREREQPTF

• ORDER BY PTF, PREREQ

Recursive SQL to get pre-reqs

Page 83: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

83

• Do until PreReqs_done•

• l = l+1 • if ptot= ptfs.0 then resultlist= currPTFList• SQLSTMT = , • " SELECT DISTINCT PREREQ_PTF_ID ", • " FROM "creator".PTF_PREREQ ", • " WHERE PTF_ID IN ", • " ( " , • currPTFList, • " ) ", • " AND PREREQ_PTF_ID NOT IN ( ", • resultList ")" •

• "EXECSQL DECLARE C1 CURSOR FOR S1" • "EXECSQL PREPARE S1 FROM :SQLSTMT" • if sqlcode <> 0 then /* & sqlcode <> 347 then */ • do;DB2Function = 'Prepare Statement'; call Display_Sqlca;exit 12;end • "EXECSQL OPEN C1" • if sqlcode <> 0 then • do;DB2Function = 'Open cursor'; call Display_Sqlca;exit 12;end • do i= 1 to 9999 until SQLCODE <> 0 • "EXECSQL FETCH C1 INTO :PTFID" • select • when sqlcode = +100 & i=1 then • if ptot>0 then

Recursive Rexx & SQL

Page 84: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

84

• Receive from network uses same Db2 metadata tables as Receive Order

• Receive from network typically retrieves entire product and all maintenance

• Our experience: Used less often for maintenance only; handled through receive order

Db2 in Receive from Network

Page 85: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

85

• Db2 tables of nightly backup data for critical resources

– Dsname

– Volume serial

– Backup date

– Backup type

• Merge data from VTOC and Catalog information

• 24 million row table

• Replaced SAS database with Db2

• Tables queried to prep for our DR tests

• Tables also queried to build JCL for emergency DS recovery

Db2 in Disaster Recovery

Page 86: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

86

SQL to populate DR main table

Page 87: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

87

Before & after SQL

Having altered the logging attribute, we need an image copy to make the table recoverable.

Page 88: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

88

WITH BACKUPS AS

(SELECT BACKUP_DATE,BACKUP_TYPE,COUNT(*) COUNTS

FROM DR.RECOV_ALL_REPORT

GROUP BY BACKUP_DATE , BACKUP_TYPE

)

SELECT COUNT(*), BACKUP_TYPE, ' '

FROM BACKUPS

GROUP BY BACKUP_TYPE

UNION ALL

SELECT * FROM

(SELECT COUNTS,BACKUP_DATE,BACKUP_TYPE

FROM BACKUPS

ORDER BY BACKUP_TYPE,DATE(BACKUP_DATE) DESC)

UNION ALL

SELECT SUM(COUNTS) ,' ',' '

FROM BACKUPS

-- S.B CW01 D=003 W=006 M=036

-- FROM DISASTER.MASTER.FILE(GDG)

Common Table Expression to query the DR table

This is a query I created to answer three questions I have of the DR data.

I want to avoid traversing the 24 million rows 3 times. I found (finally) a use for a CTE in the real world.

From the 24 million rows, I want to query:

1. The number of backups by type2. The number of datasets on each

backup date by backup type3. The total number of datasets backed up

Page 89: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

89

WITH BACKUPS AS

(SELECT BACKUP_DATE,BACKUP_TYPE,COUNT(*) COUNTS

FROM DR.RECOV_ALL_REPORT

GROUP BY BACKUP_DATE , BACKUP_TYPE

)

SELECT COUNT(*), BACKUP_TYPE, ' '

FROM BACKUPS

GROUP BY BACKUP_TYPE

UNION ALL

SELECT * FROM

(SELECT COUNTS,BACKUP_DATE,BACKUP_TYPE

FROM BACKUPS

ORDER BY BACKUP_TYPE,DATE(BACKUP_DATE) DESC)

UNION ALL

SELECT SUM(COUNTS) ,' ',' '

FROM BACKUPS

-- S.B CW01 D=003 W=006 M=036

-- FROM DISASTER.MASTER.FILE(GDG)

Common Table Expression to query the DR table

Define the CTE

Get backup type counts

Count backups by date

Show total count

Page 90: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

90

SELECT DATE(BACKUP_DATE) ,BACKUP_TYPE ,VOLSER ,DSNAME ,FULLGDG_DSNAME ,COMMENT ,DATA_VOLSER ,DATA_PORTION_NAME ,INDEX_VOLSER ,INDEX_PORTION_NAME ,INDEX_GDG_DSNAME FROM DR.RECOV_ALL_REPORT WHERE DSNAME [like or =] InputdsnameORDER BY Date(BACKUP_DATE) desc

Query to recover dataset from DR backup

Page 91: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

91

• // jobcard• /*ROUTE XEQ CWCC • /*JOBPARM S=CWCC • //* • //STEP1 EXEC PGM=ADRDSSU,TIME=1440 • //SYSPRINT DD SYSOUT=* • //TAPE1 DD DSN=BACKUP.DAILY.PCC004.G0573V00,DISP=OLD, • // UNIT=V3590, • // VOL=SER=(896081), • // LABEL=(001,SL,EXPDT=98000) • //DISK1 DD UNIT=3390,VOL=SER=PCC004,DISP=SHR • //SYSIN DD * • RESTORE IDD(TAPE1) ODD(DISK1) TOL(ENQF) -• CATALOG -• DS(INCLUDE(-• BFHDJS0.DEV.EXEC -• )) SHR -• RENAMEUNCONDITIONAL( -• (BFHDJS0.DEV.EXEC, -• BFHDJS0.DEVVV.EXEC))

JCL generated for recovery

Page 92: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

92

• Fed from problem reporting and availability facilities

• Parse syslog archives for outage and warning messages

• Store these in Db2 for analysis and recommended remedial actions

• Queries:

– What are most common messages and abends?

– What warning messages lead to abends?

– Are there clusters of messages?

– Any correlations we can find?

• Possible tie-ins to Compuware products

Db2 in Anomaly Detection

Page 93: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

93

• Automated testing groups rely on syncing test cases with test data required for exercising those cases

• Db2 provides baseline and set of utility executions supporting groups

• Still have mix of testing group-managed Db2 procedures and ops-executed procedures

• In process of enabling all to be test-group managed

Db2 in Automated Testing

Page 94: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

94

• REST with Db2

• SA z/OSMF POC lack of value

• Python/YAML dynamic Db2 table build

Futures for Db2 & Dev Ops

Page 95: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

95

Success Indicators

• Elimination of repetitive ops tasks

• More frequent promotion of new code

• More cooperation between mainframe and non-mainframe ops

• Linked cross-platform deployment

Page 96: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

96

PROMOTE YOUR SUCCESS

Step 9:

Page 97: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

97

Success Indicators

• Publicly recognized ops successes

• Business people recognize your progress

• Improved recruitment of ops talent onto mainframe team

Page 98: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

98

Recommended ReadingHelpful Reference Materials

• The Phoenix Project: A Novel About IT, DevOps and Helping Your Business Win

• Start and Scaling DevOps in the Enterprise

• The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations

• “Digital Transformation Needs Mainframe DevOps”

• “The Need For Speed: Drive Velocity And Quality With DevOps”

• “Use Four Key Categories To Measure What Matters In Continuous Deployment”

• “Project to Product” Flow Framework and Value Stream Metrics

• Link to Craig Mullins Db2 presentation referenced

Learn more about future-enabling your mainframe ops, compuware.com.

Learn about bringing modern DevOps best practices to the mainframe by downloading our eBook

“Ten Steps to True Mainframe Agility.”

Page 100: 9 Steps to Agile Mainframe Ops - NEDB2UG Steps to... · 2019-10-04 · 9 Steps to Agile Mainframe Ops Getting Maximum Long-term Value from Your Core Systems ... • Re-writing or

100© 2019 Compuware Corporation. All rights reserved.