Change management in hybrid landscapes

22
Change Management in Hybrid Landscapes Chris Kernaghan Principal Consultant

Transcript of Change management in hybrid landscapes

Page 1: Change management in hybrid landscapes

Change Management in Hybrid LandscapesChris Kernaghan

Principal Consultant

Page 2: Change management in hybrid landscapes

2

What are Hybrid Landscapes

• Multiple Location On Premise and Cloud Hosted and Cloud

• Multiple Stack ABAP and HCP ABAP and SaaS

• Mutliple Technology ABAP and BI ABAP and JAVA (PaaS) ABAP and SaaS

Page 3: Change management in hybrid landscapes

3

The Challenge to SAP System Owners

• Multiple application and development platforms

• Release cycles not aligned with the business

• Landscape complexity

• Data quality issues

• Incomplete testing

• Competition

Page 4: Change management in hybrid landscapes

4

Why do we have Change Management

ITIL DefinitionThe goal of the change management process is to ensure that standardized methods and procedures are used for efficient and prompt handling of all changes, in order to minimize the impact of change-related incidents upon service quality, and consequently improve the day-to-day operations of the organization• Auditing and compliance

• Legal requirement to record changes made and by whom• Record the life cycle of a system

• Ability to map the functionality/implementation of a system from cradle to grave• Provide consistency

• Deploying changes the same way, for example using automation

• Reviewing change and measuring against standards• Increase stability

• Rejecting changes which have insufficient testing evidence• Improve practice

• Measuring success and failure of change requests and implementations

Page 5: Change management in hybrid landscapes

5

Is current Change Management going to cope• There are lots of environment management methodologies

• DevOps

• Lean

• Agile

• ITIL• No-One likes change management – but they all think it is necessary

• Developers - Stifle innovation

• Operations - Disrupt operations and never handed over properly

• Business – Take way too long to deliver anything

• Users – Rarely deliver expected outcomes

Page 6: Change management in hybrid landscapes

6

Why does traditional SAP Change take so long

• Inter-connected modules

• Multiple partners/stakeholders

• Agreeing downtime

• Manual testing

• Unit Testing – often incomplete/bad data

• Integration Testing – often not enough people or environments

• UAT – often not a priority item

• Compliance and Auditing

Page 7: Change management in hybrid landscapes

7

Typical SAP Release cycle (Traditional)

Release 1

Month 1 Month 2 Month 3

Hypercare

UAT Testing

Development

Refresh Pre-Prod

Regression Testing

Go Live

HardFreeze

Move to QAS

Unit Testing

Integration Testing

SoftFreeze

No Newentries

Page 8: Change management in hybrid landscapes

Hybrid Release cycle

8

Month 1 Month 2 Month 3

Hyper care

UAT Testing

Refresh Pre-Prod

Regression TestingDevelopment Unit Testing Move to QAS Integration

TestingHyper care

UAT Testing

Refresh Pre-Prod

Regression TestingDevelopment Unit Testing Move to QAS Integration

Testing

Hypercare

Go Live

OP HardFreeze

OP SoftFreeze

Code deploy

Page 9: Change management in hybrid landscapes

9

Continuous movement

• Continuous Integration is a development practice that requires developers to integrate code into a shared

repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early.

• Continuous Delivery is a series of practices designed to ensure that code can be rapidly and safely

deployed to production by delivering every change to a production-like environment and ensuring business applications and services function as expected through rigorous automated testing.

• Continuous Deployment is the next step of continuous delivery: Every change that passes the automated tests

is deployed to production automatically. Continuous deployment should be the goal of most companies that are not constrained by regulatory or other requirements.

Page 10: Change management in hybrid landscapes

10

Continuous Pipelines

Write code

Write code

Unit test

Unit Test

Transport to QAS

Transport to QAS

Integration Tests

Application Acceptance

Tests

UAT Tests

Deploy to PRD

Deploy to PRD

Post Deploy Tests

Write code Unit Test Transport to QAS

Application Acceptance

Tests

Deploy to PRD

Post Deploy Tests

ManualStep

AutomatedStep

Automated Process

Manual Process

Non-Automated pipeline

Continuous Delivery pipeline

Continuous Deployment pipeline

Page 11: Change management in hybrid landscapes

11

Traditional SAP landscape

OpentextWindows 2012SQL Server 2012

GRC Windows 2012SQL Server 2012

ReportingAd-hoc reportingusing Live office & web Intelligence BObj

General LedgerPayrollControllingAP/AR

Archiving

Data servicesExtractTransformLoad (ETL)

Integration engine

UserPresentation layer

SAP PI

SolutionMgr.

BW 7.4Windows 2012

PI 7.4Windows 2012SQL Server 2012

NW Portal 7.4Windows 2012SQL Server 2012

Business Objects 4 & Data ServicesWindows 2012SQL Server 2012

Business object explorerDashboard and Web intelligence

TREX 7.10Windows 2012

Solution Manager 7.1 SPS 9Windows 2012SQL Server 2012

Business Objects 4.1Windows 2012SQL Server 2012

SAP ECC 6 EhP 7 Windows 2012SQL Server 2012

SAP Portal

BOdsBW on HANA

BObj

OpenText

TREX

Compliance Risk identification/management

BW

GRC

ECC

MDM

NW 7.4 ABAP MDMWindows 2012SQL Server 2012SAP

Web Dispatcher

NW 7.4Windows 2012

NW CE

NW CE 7.2Windows 2012SQL Server 2012

HP Quality Centre

NW 7.4Windows 2012SQL Server 2012Centralised

Testing and Defect management

SUP Relay ServerReverse Proxy

SAP SUP

Sybase Unwired Platform 2.3Windows 2012SQL Server 2012

DMZ

Page 12: Change management in hybrid landscapes

12

Hybrid Architecture

AWS

SuccessFactors

Ariba

SAPHanaCloud

Platform

S4 Landscape CustomerDMZ

HANADB/CI

ApplicationServer(s)

Gateway/FioriServer

SLT Server

PIServer

User

Internal Network

Other SAPsystems

Non-SAP systems

SAP Cloud Connector

SAP DataServices

B.ObjApp tier

B.ObjDatabase

Hadoop Master

HadoopNode1

HadoopNode2

HadoopNode3

S3 Storage

PaaSDev

Support

Page 13: Change management in hybrid landscapes

13

Change Management Technologies

• SAP CTS+

• A change management system from SAP to be envied

• Business Objects Promotion Management

• A rarely used tool

• SAP HANA Transports

• A transport mechanism which is not SAP Dependent

• SAP NWDI (Prior to CTS+)

• A horrific implementation which was usually underspeced

• PaaS Platforms – SAP HCP

• Lots of new an exciting tools and processes

Page 14: Change management in hybrid landscapes

14

Hybrid Architecture with Support Systems

Non-SAP Development Support

GitHub

SuccessFactors

Ariba

SAPHanaCloud

Platform

S4 Landscape CustomerDMZ

HANADB/CI

ApplicationServer(s)

Gateway/FioriServer

PIServer

User

Jenkins

SAP Cloud Connector

SAP DataServices

B.ObjApp tier

B.ObjDatabase

SeleniumWeb driver

CucumberChef/Puppet

Page 15: Change management in hybrid landscapes

15

Example process flow for HCP developments

GitHub

SAPHanaCloud

PlatformS4 Landscape

CustomerDMZ

HANADB/CI

InfrastructureConfig Manager

Gateway/FioriServer

Developer

SAP Cloud Connector

Jenkins

Git Repo

1

2Cucumber

Build Artifacts

User

ApplicationServer

3

4

3

5

6

6

Page 16: Change management in hybrid landscapes

16

Infrastructure Management

Most infrastructure can be managed via either a Management Console or an API

How to manage Infrastructure which is often outside formal control or uses technology which falls outside the experience of your staff

Old World• Plan and document each

server • Manually build the

Application stack• Manually monitor and

check the landscape• Implement a change

process to reduce changes• Deal with issues reactively

New World• Plan and document each

server • Define the server in code

and deploy for automated build

• Server automatically integrated into monitoring framework during build

• Configuration management software monitors configuration against build scripts

• Automated Notification of violations/issues

Page 17: Change management in hybrid landscapes

17

Infrastructure as Code examples

Amazon Cloud Formation script

Chef Kernel replacement example

Puppet configuration check

Page 18: Change management in hybrid landscapes

18

Code ManagementOld ABAP/JAVA World• Single Code line for each

application• Standard editor • Automated build/compile

process upon commit• Single code repository• Limited sharing of code• Abstraction of change making it

difficult to see objects in change• Difficult to merge to trunk

across different environments

New ABAP/JAVA/HCP World• External repositories (Github)• Multiple editors – SE80, WebIDE,

Eclipse• Automated build processes• Increased code sharing capability• Requirement for additional tools to

provide more complete processes• New tools to SAP ecosystem• Multiple code lines and applications

to be managed – object locking• Merge to trunk can be a nightmare

In today’s world of multiple SAP environments, a change and release tools should be considered. The ability to inspect changes and evaluate for pre-requisites, version conflicts and limited testing is invaluable with project timelines.

Page 19: Change management in hybrid landscapes

19

Build Management and Automated testing

Old ABAP/JAVA World

• Automated build process (Activation/NWDI)

• Single toolset to fit all • 3rd Party automated testing –

rarely used• Configurable deployment –

rarely used• Single stream actions• Abstraction of change making it

difficult to see objects in change• Configurable alerting of steps –

rarely used

New ABAP/JAVA/HCP World• OpenSource web testing frameworks

available• Need to build an integrated

deployment process• Multiple stream actions• Multiple toolsets• Easy to see object level changes with

right tools• Configurable alerts used heavily • Automated deployment used heavily

Page 20: Change management in hybrid landscapes

Hybrid Release cycle

20

Month 1 Month 2 Month 3

Hyper care

UAT Testing

Refresh Pre-Prod

Regression TestingDevelopment Unit Testing Move to QAS Integration

TestingHyper care

UAT Testing

Refresh Pre-Prod

Regression TestingDevelopment Unit Testing Move to QAS Integration

Testing

Hypercare

Go Live

OP HardFreeze

OP SoftFreeze

Code deploy

Page 21: Change management in hybrid landscapes

21

The art of the possible

• Everything as Code

• Software defined (SD) networks

• SD Storage

• SD Servers and OS configuration• Ability to have two different cadences of change

• Multiple code deploys for applications with single SAP Releases

• Use of configuration management tools to keep landscapes in sync and monitor them

• Faster development of discrete applications

• Higher degrees of automation increases velocity

• Limiting development to standard exposed On-Premise functions enables faster testing

Page 22: Change management in hybrid landscapes

22

Conclusion – Call to action

• Leverage your existing digital resources internally to learn about how to do this type of development

• Do not throw out your existing processes – enhance them

• Trust your developers • Share code and experiences with peer groups• Introduce Peer Review to your change process• Implement higher degrees of automation to your

processes – you don’t need really expensive license heavy tools in an UI5/Fiori/Dynpro/HTMGui world