You are on page 1of 36

Custom Code Management

Overview
Objectives

At the end of this lesson, you will be able to:


 Get the big picture of Custom Code Management
 Outline SAP’s approach for an efficient Custom Code Management
 List the supporting capabilities for an efficient Custom Code Management
 Explain the features of the supporting capabilities for
an efficient Custom Code Management

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 2
Agenda

SAP’s approach for Custom Code Management (CCM)


 The methodology
 The governance model
Supporting capabilities
 Transparency
 Control and optimization
 The Custom Code Management roadmap

Remark
The screen shots are taken from Solution Manager 7.20 SP01. In order to improve
usability they might be changed during ramp up phase of Solution Manger 7.20.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 3
SAP’s approach for CCM
The methodology and the underlining governance model
The way to your “Green City”
I need clear
transparency,
on my custom code in my complete
landscape.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 5
SAP standard software enhanced by custom code
A competitive advantage…

Custom code helps you to complete your individual


business needs.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 6
SAP standard software enhanced by custom code
But…

Creating and managing custom code adds to your bill.


How much?

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 7
The approach

Custom Code Management


is an approach to create and
maintain value-added custom coded
extensions in SAP environment for
customer specific business processes
needs, during the whole lifecycle of all
Custom Code Objects.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 8
Customer driven innovation
Standard versus customization

Standard Customization
• Standards & Best Practices • Customer individual requirements
• Maintenance & Operability • Completion of functionality
• Compliance & Security • Competitive advantage
• Integrity & Flexibility • Created easily

Having custom code is FINE.


Doing it RIGHT helps to minimize the incremental effort to develop and operate your code.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 9
What is custom code?
Even more than just a modification

“To streamline business Released Interfaces


BAPI, ALE, User Exits, Customer
processes, you may need to Function, BadI, Enh. Impl.
make modifications to the
standard software. You can Frameworks
ALV, CRM, Mass change,…
enhance, modify, or reduce
the functions provided for a Unreleased Interfaces
specific environment.”* Internal function modules, Class methods, appl. spec. techniques

Customer development results


Modification
in custom code objects being Changes of SAP objects
created in the customer
namespace. Copy of SAP Objects
Clones, Minimal changes

Custom Code incl. Dynamic Calls


Executed if deployed

Complexity, Criticality & Risk

*) Source: SAP Help Portal

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 10
From requirement to retirement
Custom code lifecycle

Plan Build Run Retire

Strategic Planning Build the Code Run the Solution Retire the Objects
• Compelling business • Effort and cost • Affected business • Unused custom
• Make or buy • Support and processes objects
• Competitive advantage responsibility • Maintenance – • Back to standard
• In-house or 3rd party continuous • Old-fashioned
improvement business process
• Usage

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 11
Custom code creation over time
Increasing trend of new custom code

Code Objects

50000

40000 15,000

30000
12,000

20000
9,000

10000
7,000

5,000
0
1995 2000 2005 2010 2015 Year

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 12
SAP standard software enhanced by custom code
The “Long Tail” influences the TCO of your solution

Code Objects

3rd party costs


SAP
License
Fee
Custom Code

A custom code object costs more than any standard software object.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 13
Custom code footprint
Experience from typical customer systems*

Number of CC objects: Modifications and enhancements:

>10,000 > 2,000


in customer namespace

Upgrade event: Execution:

30-50% 20%
of the custom code objects have to be adjusted of the system resources are attributed to the execution of
on the occasion of a SAP standard upgrade custom code

* Based on SAP (CQC) Solution Transition Assessment and follow-up services

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 14
SAP standard software enhanced by custom code
Different aspects…same root cause

?
?
?

•Increase of overall TCO •Higher maintenance and •Increased potential risk of


corrections efforts for unknown business interruption
amount of custom code

Roadblocks for business transitions, Higher complexity


innovations and upgrades of system landscape

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 15
Efficient Custom Code Management
Custom code direction of impact

X
X
X

Remove Avoid
• Remove unused custom code interviewing business • Setup governance model with goal to avoid new
departments custom code
• Remove unused custom code measured as unused • Validate/audit business cases of existing custom code

Replace Leverage / Utilize


• Review modifications • Improve and optimize quality, performance and
• Replace custom code with high change frequency security of custom code
• Leverage usage of new projects

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 16
The “City Model” methodology
Build your green city

Governance Model
Guidance for Decision-making and Execution
Quantity Quality
Appropriate
To be improved
Inappropriate

SAP standard
Enhancement w/ interfaces
Enhancement w/o interfaces
Modification assisted
Modification not assisted
Business Criticality Custom with SAP reference
Custom (independent)
1: Non mission critical

5: Mission critical Technical Severity

Custom Code Lifecycle Management

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 17
Reality of custom code impact
Experience from typical customer systems*

Usage: Quality:

65% 60%
of the custom code objects have not been used of all custom code objects contain code inspection
within the last 4 weeks messages

Similarity: Criticality:

12% 23%
of the custom code objects are identical or very of the custom code objects were supporting critical
similar to each other (clones) processes

* Based on SAP (CQC) Solution Transition Assessment and follow-up services

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 18
Custom Code Management
Strategic roadmap

Get transparency Get to the green city Keep your city green
and vision Control and optimize – Efficient & effective
perform soft transition custom code lifecycle management
Get transparency and
define the scope
TCO effect

Custom code management maturity and efficiency


© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 19
Why you should start
Your benefits

Improved Visibility !
!
Get full transparency about your !

custom code
Benefits
Custom Code
Management

?
?
More Lightweight
? Retire unused custom code

Better Performance
Improve custom code quality

Better Ability to Innovate


Move closer to SAP standard

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 20
Supporting capabilities
Custom Code Lifecycle Management (CCLM) SAP Criticality Calculation
ABAP Test Cockpit (ATC) Custom Code Apps – (e.g. Clonefinder)
Usage and Procedure Logging (UPL) Dashboards
SAP SQL Monitoring (SQLM) Custom Development Management Cockpit (CDMC)
SAP Performance Tuning Work List (SWLT)
I need an integrated solution
to manage my custom code from
requirement to retirement.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 22
Get full transparency of all custom code objects across systems
Custom Code Management in SAP Solution Manager

Provides comprehensive insight on how companies can efficiently and effectively manage their home
grown Custom Code. From conception to retirement, it delivers transparency on Custom Code objects,
automates the analysis of every change and clearly identifies their usage, utilization and business impact.

Key Elements +
• Lifecycle Management for custom code Business Impact & Key Benefits
• Optimization tools (Custom Code Apps)
• Supports custom code reduction
• Custom Development Management Cockpit

• Supports custom code quality


Selected Highlights
improvement
• Generic and sustainable Custom Code Library as the central repository of
custom objects across systems • Minimizes maintenance and
• Clonefinder to provide transparency on cloned SAP objects correction effort
• Custom Code decommissioning cockpit to support decommissioning projects
• Custom Code Quality Cockpit to support quality improvement projects

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 23
Custom Code Management
Integrated building blocks in SAP Solution Manager

Transparency
Dashboards - SAP Performance Tuning Worklist
Strategic roadmap
Quality Severity Usage & Criticality
Quantity
ABAP Test Cockpit Custom Code Apps Usage and
Quality Cockpit Procedure Logging
Clone finder SAP Criticality
SAP SQL Monitoring Calculation
Decommissioning
Cockpit

Custom Code Lifecycle Management

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 24
Custom Code Lifecycle Management (CCLM)
Central repository of all custom code objects

• Get full transparency


of all custom code
objects
• Monitor and track
changes of key
figures
• Derive proactive
operations and
optimizations
projects

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 25
ABAP Test Cockpit (ATC)
SAP’s next generation test framework

• Developer view
• Quality expert/
governance view
• Admin view

• Dev: Execution of
static checks for a
set of objects
• QE: Statistics
showing aggregation
of results using
different criteria  Integrated security
• Admin: Distribute checks
results to multiple Code Vulnerability
client systems Analyzer (CVA)*
*additional license fee occur
© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 26
Usage and Procedure Logging (UPL)
The new way getting the real system usage

• Kernel based logging


technology with no
measurable
performance impact
• 100 % reliable based SAP Kernel
on execution of
ABAP procedure
units like methods,
function modules,
subroutines and
much more…
• Full BW reporting
capability

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 27
SAP SQL Monitoring (SQLM)
Discover potential for optimization

• Discover potential to
optimize SQL
statements
• Capture the whole
system instead of
tracing single
programs

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 28
SAP Performance Tuning Work List (SWLT)
Identification of areas which need attention

• Creation of weighted
work list including
correlation of:
• Merging the results
from different
sources (SQLM,
UPL, ATC / SCI)
• Integrate
development
environment for
direct access to the
coding

• Provides solution
proposal

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 29
SAP Criticality Calculation
Automatic calculation of criticality levels

• Calculation for each


object based on:
• Execution of objects
• Numbers of users
• Database changes
(access, volume)
• Execution time

• Customizable
calculation
• Automatic
assignment of
criticality level to
custom code objects

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 30
Custom Code Apps
Back to standard

• Find clones in your


own system
landscape, across
systems
• Direct split screen
editor
• Statistical
information about
LoC, versions and
related business
context areas
• Determine
references to SAP
objects in custom
code

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 31
Custom Code Management Dashboards
Control your city

• Quantity
• Quality
• Business criticality
• Technical severity
• Usage
• Performance
Indicators
• Target setting

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 32
Custom Development Management Cockpit (CDMC)
Promotion of innovation & protection of investment

• Usage and clearing


analysis
• Change impact
analysis

• Transparency on
custom code and its
usage
• Identified obsolete
customer objects
• Accelerated upgrade

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 33
Additional information

You can further resources here:

• To start, please take a look at:


• Getting started with Custom Code Management
• Getting started with Usage and Procedure Logging (UPL)

• Check the latest information and raise your questions under:


CCM SCN

• Guides and useful information can be found under:


CCM SCN WIKI (external)
CCM WIKI (SAP internal)

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 34
Thank you
RUN BETTER

© 2015 SAP SE or an SAP affiliate company. All rights reserved.


© 2015 SAP SE or an SAP affiliate company. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP SE or an SAP affiliate company.

SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE (or an SAP affiliate
company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epx for additional trademark information and notices.

Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors.

National product specifications may vary.

These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP SE or its
affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP SE or SAP affiliate company products and
services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as
constituting an additional warranty.

In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or any related presentation, or to develop
or release any functionality mentioned therein. This document, or any related presentation, and SAP SE’s or its affiliated companies’ strategy and possible future
developments, products, and/or platform directions and functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time
for any reason without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. All forward-
looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from expectations. Readers are cautioned not to place
undue reliance on these forward-looking statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.

© 2015 SAP SE or an SAP affiliate company. All rights reserved. Early Knowledge Transfer Customer 36

You might also like