Académique Documents
Professionnel Documents
Culture Documents
TABLE OF CONTENTS
0 LEGAL DISCLAIMER ....................................................................................................................... 4
1 IMPROVE VALUE CHAIN AND REDUCE SG&A COSTS IN FAST CYCLES ................................ 5
1.1 New business models require innovation and speed in IT ......................................................... 5
1.2 IT & SAP - the Business Contribution and Value Center ............................................................. 5
2 REQUIREMENTS AND RELEASE MANAGEMENT COMBINED WITH SAP UPDATES .............. 7
2.1 Managing Requirements from Business Users ............................................................................ 7
2.1.1 Gathering Big Ideas: Project Portfolio Management ......................................................................... 7
2.1.2 Gathering Small Ideas: Requests for Change ................................................................................... 8
2.2 Release Management ...................................................................................................................... 9
2.2.1 Overview and Benefits of Release Management .............................................................................. 9
2.2.2 Release Categories ......................................................................................................................... 10
2.2.3 Change Categories and Priorities .................................................................................................... 13
2.2.4 Combining Customer Major Release with SAP Innovation ............................................................. 14
2.2.5 Quality Gates for Minor and Major Releases ................................................................................... 15
2.2.6 Release Calendar (per year) ........................................................................................................... 15
2.3 Implementation of Requirements governed by Change Request Management and cProjects
15
2.4 Roles in Requirements and Release Management .................................................................... 16
3 MANAGE DUAL TRACK LANDSCAPE FOR MULTI-PROJECT SUPPORT ............................... 18
3.1 Implement a Dual Track Transport Landscape with 6 systems ................................................ 18
3.2 Dual Track Cutover Process ......................................................................................................... 20
3.3 Retrofit in a Dual Track Transport Landscape............................................................................ 21
3.3.1 Semi-Automated Synchronization of Dual Landscape with Retrofit ................................................ 21
3.3.2 When, and how often, to retrofit ...................................................................................................... 22
3.3.3 Prerequisites for Retrofit in SAP Solution Manager ........................................................................ 23
4 LEAN CUSTOM CODE – AVOID, IMPROVE, MINIMIZE .............................................................. 24
4.1 Custom Code Management Summary ......................................................................................... 24
4.1.1 The ‘green’ City Model – Lean Measurement.................................................................................. 24
4.1.2 Custom Code Management - Governance Process and Optimization............................................ 25
4.1.3 Custom Code Lifecycle Management - Transparency & Control .................................................... 27
4.1.3.1 Get transparency about custom code .............................................................................................. 27
4.1.3.2 Process and Architecture ................................................................................................................. 27
4.2 Avoid Modifications and get closer to SAP ................................................................................ 28
4.2.1 Gap management by Innovation Control Center ............................................................................. 28
4.2.1.1 How the Innovation Control Center works ....................................................................................... 28
4.2.1.2 Blueprint Analyzer ............................................................................................................................ 28
4.2.2 Monitoring and evaluating existing modifications ............................................................................ 29
4.2.3 Get Closer to SAP ........................................................................................................................... 29
4.2.4 Replace clones ................................................................................................................................ 30
4.2.4.1 Distinguishing SAP Original Objects from Clones ........................................................................... 30
4.2.4.2 Identifying the Usage Area of Clones .............................................................................................. 31
4.2.4.3 Cross system custom code versioning ............................................................................................ 31
4.2.4.4 Time for Improvement ...................................................................................................................... 32
4.3 Improve custom code quality ....................................................................................................... 32
4.3.1 Custom Code Quality Improvement with SAP ABAP Test cockpit/Code inspector ........................ 32
4.4 Minimize Modifications ................................................................................................................. 33
4.4.1 Usage and Procedure Logging ........................................................................................................ 33
4.4.2 Obsolescence of customer objects .................................................................................................. 33
4.4.3 Deleting objects with CDMC ............................................................................................................ 34
5 ONLY ADJUST AND TEST WHAT MATTERS .............................................................................. 36
5.1 Identify change impact on custom developments ..................................................................... 36
5.2 Reduce development scope to used objects.............................................................................. 36
2
TWO VALUE RELEASES PER YEAR
3
TWO VALUE RELEASES PER YEAR
0 LEGAL DISCLAIMER
This script is not subject to your license agreement or any other agreement with SAP. SAP has no obligation
to pursue any course of business outlined in this presentation or to develop or release any functionality
mentioned in this presentation. This presentation and SAP's strategy and possible future developments are
subject to change and may be changed by SAP at any time for any reason without notice. This document is
provided without a warranty of any kind, either express or implied, including
but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-
infringement. SAP assumes no responsibility for errors or omissions in this document, except if such
damages were caused by SAP intentionally or grossly negligent.
4
TWO VALUE RELEASES PER YEAR
Very often IT, and even the existing software solutions (SAP and non-SAP), are perceived as inhibitors of
required business innovations. This is often due to the extent of modifications, but may also be caused by a
lack of the skills and resources required to adapt and change existing solutions. Changing this perception
requires a solid strategy and a new way of working together. It requires a platform which enables, not
prohibits, business transformation. With the SAP Business Suite on HANA and the SAP Mobile Platform,
SAP provides the building blocks of such a platform. Moreover, the SAP building blocks fit together and are
managed and supported as one end to end business solution by SAP orchestration. SAP solutions are
efficient to run, and they are built to scale. Last but not least, with the SAP mobile platform, every consumer
and partner is always connected. In this way, SAP provides the capabilities to run SAP solutions without
interruption. Many SAP MaxAttention customers run their SAP solutions as a single global instance,
supporting their business operations all over the world.
IT and SAP have to become a Business Contribution and Value Center, to actively and timely support the
bottom of the pyramid. To achieve this, and become part of the LOB innovation requirements and cycles,
requires a new business relationship. A business relationship on the one side based on a KPI framework to
measure the performance and quality of existing end to end business processes. Finally, in a joint taskforce,
IT and LOB run the 6 sigma improvement cycles. All of this can only work if the improvements which require
software solution changes can be made productive in frequent cycles. A value release every 6 months is
required. If innovations and improvements are not feasible in the existing framework of installed business
solutions and processes, they have to be designed properly. Their feasibility and viability has to be analyzed.
Finally, and most importantly, the desirability must be understood and the services/products designed
appropriately.
The SAP Business Suite on HANA, combined with the SAP Mobile Platform, are the enabling technologies
and platforms to support the innovation required at the bottom of the pyramid. In combination with the
business network cloud solutions of Ariba, and the cloud services of Success Factors, value can be
delivered extremely fast. The SAP Business Suite is the business data foundation for most large enterprises
today, especially for SAP MaxAttention customers. In many discussions with SAP MaxAttention customers
they claimed that having all this data is important, but we do not do enough with it. The proper analytical
functions could not be implemented on the transactional systems. The CPU and memory capacity was not
available, and the transactional systems had too much impact on performance. This resulted in:
many data copies, and many batch jobs to load and aggregate data
a lot of manual and delayed work for accruals, profitability analysis, planning and analytics
Now, with SAP HANA, the reasons which made this necessary, no longer apply. There are no data loading
programs and no aggregates anymore. All costs are allocated when they occur. All planning is done when
required. We can provide much smarter IT solutions overall. The IT landscape becomes much simpler.
Business process operation becomes much simpler, since work which needs doing today is now real time.
SG&A costs (Selling, General and Administrative Expenses) are therefore reduced dramatically, and we
establish one central data pool - one single source of truth.
On top of that, data from suppliers and customers can be integrated to implement an improved value chain,
end to end, from suppliers to customers. To manage risk, SAP also provides flexible deployment options. We
provide a technology (the SLT platform) which replicates data from the transactional data foundation to an
enterprise data warehouse (SAP Business Warehouse on HANA), or to an in-memory database (SAP
5
TWO VALUE RELEASES PER YEAR
HANA). This allows fast time to market with accelerators or data warehouse functions. Sometimes it is also
better to integrate non-company data on data warehouse level than on transactional system level. The SAP
Mobile Platform now allows us to establish, on the SAP Business Suite, a user experience on mobile
devices, tablets for example. To an end user, this looks like a cloud solution. With SAP Gateway, this new
user experience is developed customer-specifically, without disruption and modifications of the SAP solution
as the SAP Business Suite is cloud-enabled by the SAP Mobile Platform.
To address these needs, rapid prototyping of new business models and capabilities is required. This is
delivered in the framework of Build SAP Like a Factory. Based on building blocks delivered by SAP (Rapid
Deployment Solutions, RDS) and industry/market best practices, the new business solution is integrated into
the existing solution landscape. All integration issues and perceived gaps are managed in the Innovation
Control Center. All gaps are resolved or closed quickly. To bring all these components together, SAP
provides a new Build SAP and Run SAP Like a Factory methodology, with the following objectives:
1. A new value release with tangible and measurable benefits for each LOB, every 6 months
2. An upgrade to the latest release and technology, with (Near-)Zero Downtime, every 6 months
How do I manage the gathering of requirements of big and small ideas from business users, and
translate them into major releases, minor releases and standard changes? How do I integrate
SAP updates into this release strategy?
Are the designed software change processes and transport landscape effective? Do they support
the release/maintenance strategy? Are they in line with industry best practices? How can the
processes be improved for higher quality or higher agility for changes?
Can the number of non-productive systems be reduced, without impacting the quality of service?
What is the “right” number of supporting systems? What is the best practice for developing
multiple projects in parallel?
How can I predict, for a given SAP shipment (e.g. EhP), what custom code will stop working, and
which regression tests will be required? Once scoped, how can I execute the adjustment and
regression tests efficiently?
How can I deploy all these changes with minimum downtime for business users?
In answer to these questions, this document lines out how to design and improve the software change
management processes and the transport landscape, and how SAP Solution Manager can better automate
tasks and control the process.
The target audiences for this document are IT architects, who ask the questions about software change
management above. It is structured in five chapters:
1. Manage Requirements and Releases
Collect big and small ideas (business requirements) and manage their implementation in major
releases combined with SAP updates, minor releases and standard or urgent changes
2. Manage Dual Track Landscape
Synchronize highly automated synchronization of dual development landscapes to support parallel
deployments (releases) with minimum efforts and risks.
3. Lean custom code
Avoid, improve and reduce custom code enhancements, and modifications, to minimize effort for
software maintenance and customer release projects.
4. Only Adjust and Test What Matters
Reduce project effort by focusing development and test on business-relevant changes and by
automating tests.
6
TWO VALUE RELEASES PER YEAR
7
TWO VALUE RELEASES PER YEAR
You can use IT Portfolio and Project Management (ITPPM) on SAP Solution Manager to manage the project
portfolio process.
SAP's portfolio management capabilities give
high-level visibility over the entire project
portfolio, portfolio analytics, capacities,
budgets, and resources.
Portfolio management provides a
comprehensive and up-to-date view of the
entire portfolio of IT projects, to present the
full extent of project risks and opportunities. It
allows you to overcome delays that can
occur as information is collected from
disparate sources. Portfolio management
gathers diverse data into dashboards, which
are the starting point for portfolio analyses.
Portfolio management integrates information
from existing project management, human
resources, and financial systems, to provide
an overview of the project portfolio and resource availability, and it provides easy drilldown to details.
The overall structure of a portfolio is reflected in the hierarchy of investment buckets. This allows you a
flexible categorization of portfolios. Portfolio management supports multi-level portfolio hierarchies. Portfolios
can have several investment bucket hierarchies, which can for example represent product lines,
organizations or regional structures. Once you have set up the investment bucket hierarchy, you can add
items to the individual investment buckets, plan the budgets and resources, and make assignments
accordingly.
You use financial and capacity planning to store and plan financial and capacity data for your project, and to
maintain actual cost data. You can maintain financial and capacity planning data for an investment bucket, a
scope item, or an initiative. You can also enter negative values for financial and capacity planning. After you
have saved your entries, the system calculates the values according to your customizing settings.
Portfolio items represent objects (project proposals, concepts, for instance) that should be analyzed within a
portfolio. You can compare portfolio items or initiatives in a scoring model, based on quantitative key
performance indicators. This enables decision makers to make informed decisions about portfolio items or
initiatives. You can implement different scoring models to aggregate data. The quantitative scores of a
scoring model are obtained either from portfolio item or initiative attributes, or the results of questionnaires.
You can use qualitative responses to questionnaires to derive numerical scores for risk, strategic fit,
feasibility, and other types of soft data of portfolio items or initiatives. The business value of portfolio items is
documented and is the basis for checking value realization in the LoB, once the project goes live and the
enhanced IT solution is used productively. As SAP Solution Manager connects to all productive systems in
the landscape, the improvements realized can be measured and compared against the expected business
case and the business requirements that define the scope of projects.
8
TWO VALUE RELEASES PER YEAR
In this phase, all information required to make a subsequent decision about what needs to be changed and
what is the impact, is collected. Depending on the impact, a category and priority are assigned to the
change, to be able to obtain approval. Thus, small ideas are usually delivered in minor releases or in
standard changes, in which transport to production is not bundled. Break fix support is managed in urgent
changes, which are transported to production on request.
9
TWO VALUE RELEASES PER YEAR
Incident-related changes are often implemented by customers individually, even if the deployment is not
urgent. Releases should be used for all change types. It is best practice to differentiate between standard
changes, emergency changes, minor and major releases, to accommodate the different requirements of
production support and project development.
There are clear benefits of managing all changes in releases:
A repeatable and reliable software release process
A commitment to and visibility for the business of what goes live, and when
The stability of the production system is increased because the frequency of transports to
production is reduced, and solid testing of the release components, as one cohesive work
package, is ensured.
Quality gates can be defined as check points to sign off deliverables.
The overall costs for testing can be reduced by using common regression and integration testing
for several projects/changes, as one cohesive work package.
Risk of inconsistencies is reduced, as forgotten transports or sequence violations are minimized
Administration efforts for transport management are reduced, as all projects move from one phase
to another at in the same time.
10
TWO VALUE RELEASES PER YEAR
insufficient time for full regression and user acceptance testing, as conducted in a major release.
A limited but targeted testing strategy is needed.
Standard change: is low risk, and the impact is clearly understood, such as certain configuration
changes.
Emergency change: must contain only priority 1 changes that will be transported immediately, to
solve critical production issues.
In contrast to major releases, minor releases enable changes in weekly to monthly cycles, in a traceable
manner. If a user in a business department sees potential for improvement of a certain application, he can
create an incident message directly from the transaction. Alternatively, a business process owner can
request a small change. The incident appears in the work list of the Service Desk employee, who processes
the incident and generates a request for change, if required. The request is approved and classified as an
urgent change.
Because urgent changes need to be made in the minor release, the decisions made during the Change
Request Management process are sufficient. This saves time, without neglecting the seamless
documentation of the change.
Emergency Standard
Minor Release Major Release
Changes Changes
Deployment
On request only Every 1 - 7 days Every 1 – 4 weeks Every 3 – 6 months
Cycle
Standard changes Non-invasive
Change only (non-invasive, changes (+ re-import All types of changes, including
Emergency only
Categories low risk and well of emergency invasive changes
known impact) changes)
Priorities Emergency only Normal Priority Normal Priority Normal Priority
UAT and
Regression test UAT and Regression UAT and Regression test based
Regression test
based on results of test based on results on results of change impact
Test focus change impact
based on results of
of change impact analysis, Interface Tests and
change impact
analysis analysis Integration Validation.
analysis
Already approved Non-critical
Changes to solve New (major) functions,
changes, e.g. configuration,
Examples high priority Support/Enhancement Packages,
storage locations, medium priority
incidents Upgrades medium/low priority
MRP controller incidents
The test strategies (scope, effort and duration) are different per release category, depending on the level of
changes. Figure 3 illustrates the focus and prioritization of test activities.
11
TWO VALUE RELEASES PER YEAR
Yes (according to
Yes (code inspections and Yes, including code inspections
Unit Test standard change
peer reviews if possible) and peer reviews
process)
Scenario
No Yes Yes (important)
Integration Test
Test Types
The release to which to assign a change has to be decided during Change Request Management. The
decision criteria include the criticality and priority of the change: high risk changes need more testing, and
are thus candidates for a major release cycle.
This assignment is made in the assessment and authorization step, which is an early step in the change
request management process. It includes:
The definition of the test scope of a change request
The central categorization and prioritization of the change requests according to the change
categories (defining the change impact) and change priorities
The assignment of the change request to a release category, based on the change category and
priority
Agreement on a go-live date for the change, according to the release category and calendar
12
TWO VALUE RELEASES PER YEAR
13
TWO VALUE RELEASES PER YEAR
o Once a standard change type is approved, a request of this type does not need to be
assessed and approved. It will follow the predetermined, documented workflow, including a
well-defined test scope.
Change Priorities:
The change priority indicates how urgent the change needs to be to be applied. Best Practice is to
start with two levels of priorities, to keep the process simple.
o Normal: Changes of normal priority are those that can be processed in line with the change
category definitions and associated target approval/authorization/implementation schedules.
o Emergency: Changes addressing priority 1 incidents. In a priority 1 incident, a severe
outage affects multiple business processes, or an entire business unit.
A fast track process should be defined, and used for urgent requests. A typical shortcut is that the
change manager approves the request directly, and later asks the CAB for approval in a regular
CAB review meeting. Alternatively, an emergency CAB would have to approve an urgent request.
In both cases, at least a basic assessment of effort and impact is necessary.
Figure 5: IT calendar
Most SAP customers separate the implementation of new SAP software versions and customer releases.
The new SAP software is implemented by a “technical upgrade” project, with the goal to not change or
enhance any business processes. Only corrections which are required to ensure that everything works the
same after the upgrade as before it, are carried out.
In most cases, the reason for this decision is the combination of technical and functional changes increase
the complexity of the project and, hence the risk of missing the main project goals, to stay in time and in
budget, not to compromise business continuity and stability for the end users.
14
TWO VALUE RELEASES PER YEAR
The latest SAP application lifecycle management innovations in the areas of dual landscape maintenance
and the management of custom code, testing and business downtime, described in the subsequent sections
of this document, mitigate the main risk factors, and allow you to benefit fully from SAP innovations in your
releases.
Application architects, application experts (customizing) and developers design and program the solution,
including adjustment, customizing, and unit testing of their developments.
15
TWO VALUE RELEASES PER YEAR
When the developers have completed the corrections, testers can test them. Change Request Management
transports the changes into the test system in a consistent manner. SAP Solution Manager supports a dual
control principle, to ensure that the developers and testers are different people. You can only transport the
changes into the production environment after they have been tested.
The release manager implements the changes in the IT infrastructure in an effective, safe, and verifiable
manner. The technical operator can then import the changes into the production environment. After
deployment into production, the requirement is implemented, and the request for change can be concluded.
The typical change request management process for such a change is described in the following figure.
16
TWO VALUE RELEASES PER YEAR
Portfolio Manager: Makes investment decisions using other people’s funds. Works closely with
business relationship managers and a team of analysts and researchers, and is ultimately
responsible for the investment strategy in IT.
PMO project manager: Ensures the project produces the required products, to the required
standard of quality, within the specified time and cost constraints. Responsible for the project
results according to the benefits defined in the business case.
Change Manager: provides a single point of contact, and is responsible for managing change,
and the impact on the environment. Responsibilities include:
o Preside over change advisory board meetings
o Ensure received requests for change (RFC) are documented and addressed
o Monitor the progress of change through production
o Validate and close the change, with change advisory board
Change Advisory Board (CAB): Consists of individual stakeholders who have decision authority
over the implementation of changes. CAB members should have a clear understanding of the
business and technology requirements.
o The CAB is led by the Change Manager
o The CAB meets regularly to approve/authorize all major and medium change requests,
review the closure of completed change requests, and review the the change process
performance indicators.
o Participants need to represent the different divisions, and understand the business needs
and the dependencies, impact and risk of a change.
Emergency Change Advisory Board:
o For critical changes, an emergency CAB should be defined, to convene and decide about
emergency change requests expediently.
Release Manager: Oversees the major milestones of a release, such as development, testing,
deployment deployment, and is accountable for the end-to-end lifecycle and quality of a release.
The tasks of a release manager include:
o Release plan scope, execution, compliance and delivery, in particular deliverables from
multiple projects and their impact that must come together.
o Resolve/escalate issues that impact the release or release milestones.
17
TWO VALUE RELEASES PER YEAR
The advantage of dual track transport landscape is the addition of a parallel track to production, which
contains a second development and testing instances that will be used continuously to develop, test and
release software to the production track, in release waves, according to the release calendar.
This design has the salient and distinctive advantage over the single track that it enables the customer to
move the entire project development scope, and all project development teams, away from production – a
clear segregation of development tasks from production tasks and their personnel. Minimizing the change
activity in the production track, plus the personnel that can make those changes, will empower the
production support team’s risk management.
The dual track allows the project teams much more flexibility, as they are not constrained by production
controls. For example, the path to production will not be blocked by project testing requirements or
maintenance updates. Testing instances can be refreshed as often as the projects demand. More realistic
quality gates can be enforced, and not circumvented by production priorities. For example, testing duration
and its iterations can be driven by the needs of the projects, not by a production-imposed freeze period.
The dual track strategy establishes a permanent set of instances with a consistent and permanent role,
ensuring the SWCM teams know which tasks are performed when, and where. This is an advantage over the
single track. A single track that handles large developments and maintenance usually requires the Basis
team to intervene manually and establish temporary instances. This intervention introduces more risk, as
these changes also change the SWCM processes, such as transport paths.
The dual track becomes a permanent software factory, continuously releasing (cutover) new functionality to
production, according to the release calendar.
The retrofit functionality of SAP Solution Manager synchronizes dual track development instances.
A dual track transport landscape can reduce risks to production from project development, e.g. if the solution
is still in full roll-out mode, there are different organizations with different skills involved, a lot of invasive
transports are expected, or there is high risk sensitivity in the company or for the particular solution.
18
TWO VALUE RELEASES PER YEAR
This instance strategy establishes a more secure production support track, that is shielded from major
development activities in the project development track.
The testing instance (PRE) is added to the project development track, to better stagger, test and manage
multiple projects with different go live dates. The following figure illustrates this:
The 6-system dual track transport landscape, and the proper usage of SWCM processes, should manage
most customers SWCM requirements, so we generally do not recommend another track, i.e. a third
development environment (N+2).
19
TWO VALUE RELEASES PER YEAR
The advantages and disadvantages of this landscape are summarized in the following table:
Figure 10: S ys tem Dual Tra ck Transpor t Landscape - Ad vantages and Disadvantages
A dual track transport landscape needs processes for cutover and retrofit. These are described in the
following sections.
Cutover requires all instances in the production track be updated from the project development track. If the
maximum downtime window is insufficient to update all instances in one step, the cutover must be
staggered. For most customers, SAP recommends the following staggered cutover strategy.
The staggered cutover, as illustrated in Figure 0.5, is to cutover directly from the project landscape PRE into
production PRD. In a second phase, production support PSD and PSQ are updated.
The advantage of this strategy is the cutover directly into PRD, which can be done in a period of least
activity, such as a weekend or holiday. Once production has been updated, the supporting instances PSD
20
TWO VALUE RELEASES PER YEAR
and PSQ can be updated in a second phase, which may extend into normal operations. The disadvantage of
this strategy is that the cutover process requires some manual steps.
Note: You should not switch tracks, as this will change instance roles, lose versioning history,and,
depending on organizational elements mislead development and support teams.
This section provides an overview of how to use Solution Manager to support the retrofit process.
The retrofit process with SAP Solution Manager includes the following functions:
Developments in either transport landscape are recorded in SAP Solution Manager, so changed
objects are known centrally.
Conflicts between the production support and project development landscape are identified via
cross system object lock (CSOL). A conflict occurs when the same object is changed in both
transport landscapes.
When you use retrofit in conjunction with Change Request Management, the process offers
synchronization methods to align changes from the production support landscape into the project
landscape, depending on the type of conflict and type of object:
o All objects without conflict (i.e. changed only in PSD) are transferred automatically. A
transport of copies is created and sent to the project development system.
o For objects with conflicts (changed in PSD and DEV), the synchronization is performed
semi-automatically or manually.
A conflicting workbench object can be adjusted semi-automatically in a split-screen
editor, using the SAP Correction Workbench. In rare cases, if the change was within
the same area of context, the adjustment has to be made manually.
21
TWO VALUE RELEASES PER YEAR
When to retrofit:
The retrofit should be done as soon as possible after the transport request is released, to keep the
work list manageable
o In a long development cycle in DEV, the number of objects to retrofit can be quite large. The
time needed for retrofit increases correspondingly, and needs to be continuously.
Only tested changes should be retrofitted, to avoid multiple transports to retrofit. So the timing of
the retrofit activity also depends on the testing strategy:
o Usually there is not sufficient test data in PSD, and changes are imported into PSQ to be
tested. After the change is tested, it can be retrofited. If an error occurred in PSQ and a
correction transport is needed, Change Request Management will ensure that the correct
sequence of transports is preserved during retrofit.
o The retrofit activity can start immediately after the release of the transport in PSD, if the
release of the transport means that the test was OK. (This can be the case if sufficient
testing is done in PSD, or if the change is sent to PSQ by transport of copies, and tested in
PSQ.).
The retrofit must be complete before cut-over from the project landscape into the production
support landscape, for final release testing. Change Request Management will check if the retrofit
work list has been processed, before cut-over can start.
When managing production support transports in releases, the best option is to retrofit after/with
the weekly/bi-weekly minor release import from production support into production.
22
TWO VALUE RELEASES PER YEAR
2. Change Request Management controls the transports in the production support system, and either
Change Request Management or Quality Gate Management (QGM) is used in the project development
landscape.
Change Request Management can be implemented in different variants. The tighter the
integration is, the more information can be reused.
The minimum retrofit constellation is to use Change Request Management to create/release the
transport requests, instead of doing this directly in the development systems. A change document
, which automatically creates and releases the transport requests in the development systems, is
then created and released in Change Request Management. This central transport management
can usually be implemented within a few days, and is a viable option even if a non-SAP change
request management or IT Service Management tool is used.
With SAP Solution Manager 7.1, QGM can also create CSOL entries, so a mix of Change Request
Management in production support and QGM in project landscape is also aretrofit option.
23
TWO VALUE RELEASES PER YEAR
SAP supports your custom code management aims by avoiding, improving and minimizing the custom code
and individual enhancements in the SAP solutions run by your company. Following the lean principles, this
aim will be accomplished by the phases of transparency & measurement, optimization and control. It
provides numerous tailored tools and best practices for effective, holistic custom code management (CCM).
They analyze your custom code and modifications and their use in your systems to get an overview of all
customer developments. The customer developments that are actually used are identified and controlled
better, using the functions provided by SAP Solution Manager. The objective is to improve the quality and
technical implementation, while reducing the quantity and impact of custom code. Ways of avoiding
modifications and moving closer to SAP are described. This helps you to achieve sustainable cost reductions
for the operation and maintenance of your SAP system landscape. Leveraging the innovations to control the
gaps and minimize modifications, ensures the value of IT, and increases business value.
Planned, recurring events such as minor and major software updates, or the introduction of new standard
functions, can lead to increased testing requirements and significantly higher implementation costs for your
custom developments. Unplanned events, such as new legal requirements, new technology or the need to
adapt interfaces for external reasons, also frequently present unexpected challenges to custom
enhancements. SAP proactively supports you in the targeted handling of all of these aspects.
The visualization of custom enhancements and custom code with these metrics corresponds to the abstract
representation of a city with buildings of various heights, colors and locations within it. Every city reflects an
individual system within your system landscape.
24
TWO VALUE RELEASES PER YEAR
Quantity
In the quantity dimension, customer-specific objects are recorded according to their object characteristics,
and categorized according to their technical implementation.
Quality
The quality of program code is an often neglected, but highly important, factor in the development of custom
adjustments. In this dimension, SAP has made it possible to measure quality in a comparable way, to
maintain quality standards.
Technical implementation
SAP NetWeaver provides a multitude of enhancement options that in some cases go far beyond classical
Customizing, enabling you to enhance and adapt standard processes to meet your requirements. Beyond
the ability to implement and define implicit and explicit extension points (BAdIs, user exits, enhancement
spots), you can change SAP standard code through logged and unlogged modifications. Each of these
system modifications has specific strengths and weaknesses, which should be evaluated, based on
maintainability, risk and complexity.
25
TWO VALUE RELEASES PER YEAR
It is very important to validate that these standards already exists, otherwise you will need to create and
enforce guidelines for the development organization, before any major custom development. The
development standards should address at least the following aspects:
End-to-end process flow and procedure for the development of customer-specific coding: This
process should be defined throughout your development organization. Some customers maintain
offshore and onshore development models, whose regional specifics need to be included.
Interfaces between regional teams, different departments which develop custom code, business
departments (as the requestors), IT departments (as the operators and support organization for
custom code) and other involved parties need to be described, and hand off/hand over procedures
need to be established, documented, known and accepted. There must be a complete end to end
process, from the request for custom code, followed by functional and technical validation and
justification of the request, budgeting, specification, design and sign-off, development, tests,
business user (functional) validation, technical validation (robustness, performance and
maintainability (by operations support department)), deployment of the functionality, and, most
importantly, technical and functional documentation.
The custom development standard must also define and describe the phases in the custom code
lifecycle. Similarly to existing standard functionality, applications and systems, your custom
functionality passes through different stages of the application management lifecycle. The standard
must describe these phases and the related activities. It must be clear who owns which phase,
from the request for custom code, through design and development, deployment, operations,
maintenance and optimization; who is responsible for which type of action in each phase. Define
KPIs, or a general set of criteria are to identify whether it is necessary to enter, e.g. the custom
code optimization phase, or replace it by standard functionality (if applicable), and how to retire
custom code.
It should be defined on a strategic and company-wide level, when and by whom custom code is
permitted to be introduced. A list of principal requirements for the creation of custom code needs to
be established, documented and communicated. This ensures that every time custom code is
requested, the request is validated against the list of permissible requirements. For example, allow
the creation of custom code only if the core SAP functionality is not modified, or insist that
workaround processes be preferred to the creation of custom code (under certain conditions, such
as economically acceptable effort, or the extent of the workaround). It should be stated in this
section of the custom code development standard, which enhancements are allowed, which are
not, which type of enhancements are preferred, and so on. That also means that important aspects
of quality of custom code are defined and anchored in your development standards.
If your organization has to follow specific custom development procedures, these need to be
documented in the standard. Your standard could demand a four eye principle or a technical
validation/release by a second or third developer; manager approval could be defined here, or the
principle of creation of competing programs (which approach is better will be considered further).
Anything that defines your procedures and principles need to be documented or added the
standard.
A major aspect and goal of developing or maintaining a standard for custom code development is
the quality of custom code. While it is difficult or impossible to define quality in a standard, tools
and technology which help to ensure quality, can and must be defined in the standard. The
standard can include how requests are formulated and documented, and which tool is used to track
and validate requests. For the development activities themselves, tools and technology needs to be
mandated, to help ensure the quality of custom code.
As an example, the SAP development standard states that no report, program, or enhancement to existing
code, can be deployed (shipped to customers), if the “SAP Code inspector”, a tool in the ABAP Development
workbench, reports errors. SAP invests heavily in the maintenance and improvement of rules, which are
checked by SAP quality tools (see chapter ‘improve custom code quality’).
The basis for this is the SAP Standard for Custom Code Management and related standards. SAP also
provides the ESRV MOS Custom Code Management (V1.1) roadmap in SAP Solution Manager, which gives
a comprehensive description of all essential parts.
26
TWO VALUE RELEASES PER YEAR
This new application is in SAP Solution Manager 7.1. Its core is a flexible and generic library definition, with
which you can classify and manage your custom code objects. Information about the use of these objects,
their quality (Code Inspector, transaction SCI) and versions in the connected systems, can also be collected.
The application that provides full transparency of your custom code and records its use in a complex
landscape.
A periodic process fills the library content. The uploaded definition of the library contains a schema indicating
the attributes for objects of a particular cardinality, and can be filled manually or automatically. The
periodically scheduled programs ensure that information is collected and written or overwritten in accordance
with this active definition. Information which you enter manually is not overwritten, and is retained
permanently.
You must maintain the attributes for your objects that are not collected automatically, such as a lifecycle
status or distribution rule, and particularly references to contracts and persons responsible, manually.
Additional manual steps are possible in the analysis and reporting. If you have an SAP NetWeaver Business
Warehouse (BW) with the respective content, Web templates are provided. You can also make your own
reports. Reporting, and the retention of historical data for use in the BW, simplify the decision to delete or
consolidate custom code. The BW is optional, and is not active in the default setting in transaction CCLM.
The same applies to ad-hoc reporting, which at the time of delivery is considerably more powerful than BW
reporting.
The Solution Directory gets information about the solutions and their systems. The system landscape
maintenance component (SMSY/LMDB) determines the product and product versions of the systems. The
extractor framework extracts data to the BW system (usually SAP Solution Manager). The managed systems
contain data collectors, to which the CDMC collector for the collection of customer objects, a collector for
quality, and a collector for object versions, are connected. The use of objects – in particular in programs and
transactions – is identified in the workload data from the analysis of the Workload Monitor (transaction
ST03N), collected by the SAP EarlyWatch Alert, whose collection modules are scheduled with the SAP
EarlyWatch Alert, using the Service Data Control Center (SDCCN) administration tool. The data is formatted,
and transaction usage passed to a report. The ABAP Coverage Analyzer (transaction SCOV) documents the
use of objects in the kernel. This application, also known as Usage Procedure Logging (UPL) as of basis
version SAP NetWeaver 7.01 collects considerably more information about usage, in greater detail, and
documents dynamic calls not listed in the workload.
27
TWO VALUE RELEASES PER YEAR
A central goal of the Innovation Control Center is modification-free implementation, dramatically reducing the
cost of implementation. It is our experience that up to 90 % of gaps can be resolved with SAP standard
functionality, provided latest SAP software versions are used. SAP development and SAP Active Global
Support provide the knowledge and guidance to close such gaps.
The Innovation Control Center follows a strict standard about tracking and documenting issues and gaps,
and, most importantly, decisions. A KPI framework to measure business benefits is defined, to make the
viability visible to all stakeholders. This KPI framework is implemented in parallel to the finalization of the
prototype.
Business Process Monitoring is a business change management driver. The feasibility is managed through
orchestration and integration validation, in which all the solution, operations and product standards are
validated. These include the management of data consistency, performance and scalability, end to end
monitoring, exception management, and so forth.
All of SAP is part of this value realization chain. Firstly, based on the desired outcome, SAP building blocks
and best practices are identified and installed as the baseline. This is done by the SAP ICC team together
with the SAP Development and SAP Solution Packaging organization.
Then, as a team, right away, the solution is configured and customer-specific data loaded. Already then, the
Design Thinking iteration process starts to understand what works, what does not work and what is missing.
These iterations are again validated in the software solution, with customer data. All perceived gaps and all
custom-specific integration is managed as in escalations. SAP development, together with the SAP AGS
organization, provide all software-related services, in cooperation with customer and partner resources, to
complete the desired, viable and feasible solution.
28
TWO VALUE RELEASES PER YEAR
• Gap is a customer-specific requirement and must be developed by customer, their partner, or SAP
custom development. The ICC will provide architectural advice on how to best implement the
custom development.
Deviations from SAP standard also include customer-specific integration to non-SAP systems. For these
customer-specific solutions, the integration design will be reviewed against SAP best practice. The interface
design will be reviewed and designed for performance and data consistency.
Figure 14: Blueprint Analyzer and Gap Detail in project language and English
Customers who have already used the analysis function intensively have been impressed by the
advantages. Not only were they able to reduce the number of modifications, they were also able to pro-
actively limit the creation of new modifications by finding enhancement options instead. They were also able
to prevent modifications from their old release from being transferred to their system during an upgrade.
29
TWO VALUE RELEASES PER YEAR
Custom Code Management addresses the aspects of the city model that deal with current business and IT
requirements and sustainable use of custom code, and helps you to prepare decisions. This process, with its
three phases transparency, optimization and control, is a fixed element of the optimize phase of application
management. It reflects the results of the other phases, in particular the early phases design, and build &
test. The transparency phase allows you to use the Custom Code Lifecycle Management (CCML)
application to make a structured start in the new SAP Solution Manager. The sub-points ensure that the
definition is compatible with your requirements for a sustainable, generic and always up-to-date custom code
library.
The next phase utilizes the transparency and starts optimization. Here we look at the dimension Technical
Implementation. This involves analyzing the nature and manner in which customer-specific business
applications and enhancements are implemented. The objective is to move the individual implementations
back toward the SAP standard. For example, a modification may be replaced by the use of a BAdI
implementation. SAP supports this with the Custom Code Apps – Clone Finder tool.
Product standards with key indicators such as the performance or maintainability of custom code and
enhancements should be analyzed within their life phases, and ideally improved as early as possible. SAP
supports this with the SAP Code Inspector tool.
Experience shows that within a few years, one third of custom developments is no longer in use, or need to
be adjusted. All custom code and enhancements have to be checked and adjusted manually before software
update, such as an upgrade to a higher SAP release or the import of a support package. Then all objects
have to be checked one-by-one to ensure that they do not cause problems in the new context. The Custom
Development Management Cockpit (CDMC) has a project-based approach, and supports you in the first step
of analyzing the custom code and enhancements in your system. It also helps you identify obsolete objects
and, in a second step, helps you determine the effects of an upgrade or support package installation.
Custom Code Lifecycle Management supports you with a long-term approach with current usage key figures.
Any insights from the optimization area can be used to identify the optimization potential of other ALM
phases and scenarios. Of particular interest here is, for example, raising the bar in the actual decision-
making process for or against custom code, or adding an additional check step to ensure quality in the
software development process. The final decisive area always reflects the success of the management or
optimization. The data from Custom Code Lifecycle Management is extracted to the BW of SAP Solution
Manager, and can be used to assess success. Control and checking can thus be performed at any time.
Potential similarities are not determined on the basis of names alone. Rather, notable places in the coding,
such as typos in comment lines or patterns in contiguous program sections are used to determine unique
system-wide fingerprints for each customer program to be analyzed. In a subsequent step, the logical SAP
30
TWO VALUE RELEASES PER YEAR
environment of the customer program is determined, and the potential SAP program candidates output by a
complex similarity algorithm. The advantage of this approach is the speed and reduced number of
comparison operations theoretically required. The main distinguishing characteristic compared to other tools
is the possibility of real similarity analysis. This tool even recognizes sections of code that have been copied
and pasted.
Using the Custom Code Apps – Clone Finder, in just a few steps, you can determine the name of the original
SAP object and how it has been further developed through notes and corrections. It also enables you to
identify your custom code which, through inheritance, has followed an evolutionary path of its own, and
distinguish between versions. Even without a similarity analysis with SAP objects, the tool analyzes
completely unknown user-developed code. You find out which logical application areas, and how many lines
of code the program has, and how many versions of it are in circulation.
The Custom Code Apps – Clone Finder offers you a fast and simple introduction to the area of custom code
management, and helps you actively reduce clones. SAP focuses on the identification and evaluation of
clones, and does not compare differences between the clone and the original. Our goal is to reduce clowns,
not just make them more manageable.
With its Custom Code Apps - Dynamic Interface Analysis tool, SAP has developed a means of closing this
gap. From re-implemented classes and interfaces from the ABAP-OO world, to BAdI implementations or
framework enhancements and the identification of classical customer exits, to classical user-exits, the tool
covers all the bases.
The usage of Smart Forms and SAP script programs can now also be checked. The most effective function,
however, is the identification of custom code, the control of which is hidden somewhere in Customizing. This
is where the tool begins, and it uses all the possibilities of SAP NetWeaver. No other tool is able to utilize this
integration aspect so completely. Now you can delete custom code without the risk that it is still used
dynamically somewhere else. This enables complete transparency and a basis for long-term code reduction.
This function enables you to identify where real differences exist and where transports are missing, or have
yet to be imported. It is also possible to identify any code differences in the objects of one or more
transports. You also receive information about the size and complexity of the objects. One special scenario
focuses on the implementation of user exits. Multiple projects change the same user exit and transport it to
the project landscapes for testing. Changes due to SAP corrections are usually not taken into account. Use
cross-system comparison to monitor code adjustments and support a central code strategy in your company.
31
TWO VALUE RELEASES PER YEAR
The top 20 analysis scenario maps out some ideas. Concentrate on your company’s business processes
that are used every day. Using the workload statistics and freely definable parameters for the number of
objects or the number of periods to be analyzed, the systems are either checked to ascertain which
customer developments were cloned or display a marked similarity, or the used SAP programs are checked
for the characteristic modified.
This analyzes your most frequently used programs in detail, and provides a starting point for other
supporting SAP Active Global Support services, such as the modification justification check.
Good code quality is mandatory for SAP standard program code, and is also essential for custom code or
rd
code delivered by 3 -party providers. Bugs and errors in your custom ABAP code can be expensive if they
impact critical business processes, which is why quality assurance of custom ABAP code is receiving more
and more attention in business.
4.3.1 Custom Code Quality Improvement with SAP ABAP Test cockpit/Code inspector
The Code Inspector and ABAP Test Cockpit are check tools for ABAP code and other repository objects.
They control the quality of your ABAP code, for example program functional correctness, performance,
security, or naming conventions. It can also check a single development object or large object sets, for
example all objects in a group of development packages. The ABAP Test Cockpit is a latest ABAP check
toolset which allows you to run static checks and unit tests for your ABAP programs. In order to ensure
smooth migration and comparable check results throughout your company, the ABAP Test Cockpit is
compatible with SAP's Code Inspector, so you can reuse your custom Code Inspector checks and variants in
the ABAP Test Cockpit. Developers will like the ABAP Test Cockpit, because it is directly integrated into the
ABAP workbench and has better usability. Working with ATC findings is very easy and efficient, using the
new ABAP Test Cockpit filter, navigation, and re-check functionality. Team leads and quality engineers will
like the ABAP Test Cockpit because it introduces new quality assurance processes like quality gates, a
robust exemption approval process, and periodic regression tests in a quality system. ATC’s support for solid
quality processes will minimize the errors in your productive system. The ATC also offers tools to analyze the
ABAP Test Cockpits results on team or project level.
It offers a robust process for managing exemptions (false/positive findings) based on the four eyes
principle.
It is fully integrated into the Solution Manager and the application custom code lifecycle
management.
Sustainable quality optimization of custom solutions is a key success factor of the whole custom code
management process.
32
TWO VALUE RELEASES PER YEAR
Usage and Procedure Logging (UPL) is a new function available in any ABAP-based system, based on the
core functionality of SAP Coverage Analyzer. It logs all called and executed ABAP units, such as programs
and function modules, down to classes, methods and subroutines. You can also evaluate the usage of SAP
Smart forms. This new, enhanced SAP NetWeaver capability will have no performance impact on your
system, and will catch usage information of ABAP routines when they run. UPL will give you a 100%
coverage of usage, without estimations or evaluation of ABAP call stacks. This includes the detection of
dynamically called ABAP elements. UPL is the only technology to close the existing gaps in the SAP
workload statistics. With the secured access to the UPL data, your usage information is protected against
3rd party access. The full reporting capabilities, with enriched information in BW of the Solution Manager, will
give you the flexibility to analyze ABAP usage on demand.
However, requirements change so quickly that many customer objects and changes to SAP standard objects
quickly become obsolete. Experience shows that after just a few years, a third of custom code is either no
longer in use or has been modified, and not only due to fast-changing requirements, but also because new
versions of the SAP standard software contain objects that render custom code useless. This can lead to
unnecessarily high maintenance costs, which in turn cause high operating costs.
For customers, it can be difficult to keep up with the pace of modifications to the standard system, and
produce custom code. Numerous changes and customer objects also raise the cost of upgrades and
importing support packages. Before a system can be upgraded to a newer SAP version, or a support
package can be imported, all custom code must be checked and manually adjusted. All objects then have to
be checked one-by-one, to ensure that they do not cause problems in the new context.
The Custom Development Management Cockpit (CDMC) can determine how custom code is used (based on
the call statistics provided by the system) and which customer-specific developments are obsolete. The
CDMD evaluates the effects of an upgrade or a Support Package installation on custom code. The business
process documentation for custom code is also determined (maintenance using transaction SOLAR02).
CDMC supports the project or release manager in evaluating risk, by analyzing objects from transport orders
before importing them into the production system.
You must ensure that planned changes are implemented in line with business requirements. CDMC
simplifies upgrade projects by reducing the amount of obsolete custom code. Upgrades can be performed
more quickly because you only have to modify your custom code if it is absolutely necessary. CDMC
supports project planning by enabling early estimation of the costs of adjusting object types that are required
for a more current version. You profit from better and more reliable planning and shorter project run times,
33
TWO VALUE RELEASES PER YEAR
and thus reduced costs. Another advantage is that the objects in transport orders are analyzed before being
imported into the target system.
1. Clearing Analysis (CA) analyzes the use of customer objects. Obsolete objects and the
corresponding business process documentation of the customer objects are determined (in
transaction SOLAR02). The result of the clearing analysis is the starting point for cleaning up the
developments. Detailed instructions guide you through the clearing process.
2. Upgrade/Change Impact Analysis (UCIA) identifies the technical effects of an SAP upgrade, or the
installation of a support package, on customer-developed objects, and makes it possible to
produce an estimate of the time and effort required to adjust these objects. The function
determines the custom code to be used after the upgrade, and the scope of the respective
business process documentation.
3. The change and transport system (CTS ) analysis analyzes the use of objects in a transport
request, the test scope and the test coverage. It determines whether the state of the objects in the
transport request is identical throughout the transport system landscape.
The CDMC is in the SAP Solution Manager Custom Code Management work center.
In a typical system landscape, the statistics system represents the production system, and the analysis
system corresponds to the consolidation system. The platform for the control system is SAP Solution
Manager.
34
TWO VALUE RELEASES PER YEAR
5. The clearing analysis project is completed with the clearing process, in which objects from the
customer namespace (Z*, Y* and namespaces with customer-specific prefixes) are deleted, or
changes to standard objects in the SAP namespace are undone. The clearing process is different
in these two cases. Obsolete modifications to SAP objects are removed using SAP standard tools,
while obsolete objects that are assigned to the customer namespace are physically deleted
according to SAP clearing guidelines. To optimize the clearing process, the clearing tools you use
should correspond to the SAP standard procedure for deleting objects (ABAP Workbench), so that
when you delete a master object (for example an object of type PROG) all other dependent
objects (for example text elements) are deleted automatically. This ensures that all relevant
objects are really deleted. Otherwise, dependent objects would remain in the system even if they
are no longer used, and then be found by later clearing projects. This process of deleting and
restoring (accidentally deleted) obsolete objects is described in the clearing instructions.
35
TWO VALUE RELEASES PER YEAR
The key is to set the right focus and to invest the development resources where it really matters. The first
step to accomplishing this goal is to compile a list of all repository objects, customizing settings and business
process steps that are affected by an upgrade or maintenance. SAP provides tools to automate this step.
You usually analyze modifications with the SPDD (DDIC objects), SPAU (repository objects) or SPAU_ENH
(impact to enhancements) tools. Additionally, for planning and preparation purposes, you can use tools such
as the Modification Browser (SE95) and Custom Code App – Modification Analysis (see section 4.2.2).
Developments in the customer namespace are not directly affected when implementing new SAP software
versions. They are kept as they are. Nevertheless, custom development objects which work correctly in one
release may not work in an upgraded version. There are a variety of reasons for this. Most important is the
fact that custom code usually contains static or dynamic references to SAP objects. If they are changed, the
impact has to be reviewed. In particular, if custom transactions of executable reports have been created as
copies of SAP programs, these cloned objects present unique challenges after a software change (see
section 4.2.4).
To identify such critical changes to custom code objects, perform syntax checks using the ABAP Test
Cockpit (ATC) or the Code Inspector (transaction SCI), for the most important and critical custom
developments at least, as soon as an upgraded version of these programs exists, e.g. after a test upgrade.
Additionally, the Custom Development Management Cockpit (CDMC) offers an upgrade impact analysis. It
compiles a list of custom objects with a reference to an SAP object which will be changed by the upgrade.,
The custom objects in this list can be better classified by upgrade impact, and adjustments and testing can
be better planned.
You need to know which of your developments are really used, and how often. Such a statistical analysis
should be a regular task of your operations, to have a reliable usage history whenever you conduct your
projects. One important information source is the workload and performance statistics provided by
transaction ST03N. You can store the ST03N history in the source system for periods longer than the
normal retention period. You can extract this information from your managed systems into the BI info cube in
SAP Solution Manager.
Run the Usage & Procedure Logging (see section 4.4) to track the usage of custom code objects on deeper
modularization unit levels.
You can use this information to focus your development scope on the objects actually used, which usually
greatly reduces the development efforts for upgrade and update adjustments.
36
TWO VALUE RELEASES PER YEAR
BPCA provides functionality to analyze the impact of ABAP software changes on your business processes.
The BPCA change impact analysis can automatically determine the regression test scope by selecting tests
assigned to the business processes affected. The BPCA Test Scope Optimization (TSO) functionality - new
in SAP Solution Manager 7.1, you can optimize and reduce the required test scope and effort significantly,
by program-based optimization along the dimensions:
number of changed objects by business process
test effort of associated test cases
The resulting optimized test scope is presented graphically, with a proposed sequence of process steps to
be included in the test scope. The user can apply multiple switches to adjust and optimize the test scope
further, and save them as alternative optimization approaches. Optimized test plans can be generated
automatically for SAP Solution Manager, HP Quality Center or IBM Rational.
BPCA requires a Business Blueprint in SAP Solution Manager, including process steps and assigned
executables, such as transaction codes, reports, etc. which could be SAP standard or custom developed. In
a nutshell, BPCA requires a list of transaction codes and reports for which the customer wants to perform an
impact analysis. There are various ways of setting up and maintaining the Business Blueprint in SAP
Solution Manager:
1. Activate business content (Business Process Repository – BPR) provided by SAP Business Suite
2. Upload existing business process structures
3. Integration with ARIS from Software AG
4. SAP service Reverse Business Process Documentation (RBPD)
5. SAP Solution Manager – Solution Documentation Assistant
1
6. SAP Solution Manager – EhP Scope and Effort Analyzer : create an SAP module-based blueprint,
based on customer usage information.
The BPCA analysis requires traces of all business processes which are in the scope of the change impact
analysis. The process trace is called Technical Bill of Material (TBOM). It includes all ABAP objects used
during execution (SAP standard objects and custom objects) and is assigned to the process steps of your
Business Blueprint, in SAP Solution Manager. TBOMs can be created in the following ways (see figure 1).
For approaches 1-4, trace recording is turned on before the business process is executed.
1
Planned for future releases of SAP Solution Manager
37
TWO VALUE RELEASES PER YEAR
2) Manual - by business department Process steps without TBOMs are identified by quality
manager. Workflow is sent to business department.
Business user performs process step as part of normal
routine work while BPCA trace is performed in the
background.
5) Background job – static TBOM Programmatic approach performing a static code analysis
of SAP transactions included in the customer Business
Blueprint. This approach is not recommended because it is
imprecise.
For a change event such as transport requests or SAP support packages, BPCA first compiles a list of all
changed SAP objects. It then identifies all impacted business processes and processes steps of the
Business Blueprint, from the process traces (TBOM) assigned to executables of the business process/step.
Figure 2 shows a BPCA change impact analysis with business processes and process steps affected. This
approach is called “standard change impact analysis”, or bottom-up approach, since every process step is
checked for potential impact by the change event.
2
CBTA available with SAP Solution Manager 7.1 SP07
3
START available with SAP Solution Manager 7.1 SP09
4
Semi-dynamic TBOM creation available with SAP Solution Manager 7.1 SP09
38
TWO VALUE RELEASES PER YEAR
An alternative view shows the Business Blueprint Hierarchy with impacted process steps Figure 3 shows the
change impact of an EhP deployment for business process Financials – Accounts Receivables, in which 12
of 14 process steps are impacted.
39
TWO VALUE RELEASES PER YEAR
BPCA provides additional graphical and tabular views for change managers who would like to investigate the
root cause of the impacts in more detail. The graphical overview is shown in figure 4, with impacted SAP
repository objects classified by type, such as program/code object, DDIC object, user interface or table
content, and a breakdown by SAP software components.
40
TWO VALUE RELEASES PER YEAR
The table shown in figure 5 provides a lot of detail along the following dimensions, with absolute values and
percentages
Table rows: changed objects by SAP system, e.g. SAP ERP, software component and software
package.
Table columns: Program/Code Objects, User Interfaces, Table Content, DDIC Objects,
Transactions, etc.
Table cells: each cell contains the absolute number of objects impacted, by system/software
component and object type. Relative numbers of changed objects are shown as percentages. Each
table cell includes a link to a detail section below, which lists all objects with more technical
information.
This feature helps your team to become familiar with BPCA, and better understand the impacted software
objects –whether they are SAP standard or custom code objects.
41
TWO VALUE RELEASES PER YEAR
Change impact can be analyzed by BPCA for the following types of change events:
Planned Business Function SAP innovations, called “Business Functions”, become available
Activation after deployment of an EhP, and can be switched on separately.
Customers can use BPCA to analyze which business processes
are impacted by Business Functions before switching them on.
Object List Project Management Offices (PMO) often have to take project sign-
off decisions for development projects without sufficient information.
BPCA supports the decision making process, in which architects
can provide information about the most important ABAP objects
(function modules, tables, …) which are to be changed. BPCA
calculates which business processes will be affected by these
developments, and enables the PMO to assess the risk.
SP and EhP deployments include a large number of changed objects, so large parts of the Business
Blueprint are impacted. Use the BPCA Test Scope Optimization feature to further reduce the test scope,
based on risk.
BPCA can generate a regression test plan for impacted business processes, automatically. Figure 7 shows
test management applications integrated with BPCA
42
TWO VALUE RELEASES PER YEAR
5.3.3 BPCA Test Scope Optimization for large SAP change events
When performing a BPCA change impact analysis for only a few thousand change objects, like configuration
changes or custom code developments, the standard BPCA bottom-up analysis provides a precise analysis
and a resulting test scope with manageable effort. It is different when analyzing change impacts of large SAP
change events, like SAP Support Package Stacks (SP) and Enhancement Packages (EhP), since these
change events can include more than a hundred thousand changed objects. In these cases, BPCA provides
exact results, but because so many objects are changed, it is likely that almost all of your business
processes will be impacted, resulting in a high regression test effort which will require almost all test cases to
be executed. The result is precise, but the resulting regression test scope may have unacceptable time and
cost.
BPCA of SAP Solution Manager 7.1 addresses this problem with the new Test Scope Optimization (TSO)
functionality. This risk-based test scope identification allows you to balance between acceptable test effort
and increasing risk, when reducing the test scope.
E
S
e
b
a
s B C
tiS S
a e e
D b b
S n
G a a
e s s
b ai
s ti ti
a a a
s b
A a n n
ti G G
S u
a ai ai
e e
n s s
b r
G b b
a
ai a a
s
s u u
ti
b
Figure 8: BPCA Test Scope Optimization e e
a
a
BPCAnTSO assumes that a changed technical object should be tested at least
r once, but not necessarily
r in
all process steps that use it. u
G
e
ai
r
s
b
a 43
u
e
r
TWO VALUE RELEASES PER YEAR
Instead of collecting all impacted business processes and associated test cases (bottom-up approach), the
BPCA Test Scope Optimization determines those business processes and process steps that are impacted
by a lot of changed ABAP objects in the change event, and that do not require high test effort compared to
other impacted process steps.
44
TWO VALUE RELEASES PER YEAR
BPCA Test Scope Optimization has a set of levers (see Point E) which you can use to influence the TSO
result:
With SAP Solution Manager 7.1 SP05, you can save the TSO settings as Optimization Approach, locally
(for your user) or globally, so that all users can use these settings. Additional levers have also been
introduced with SP05, to further reduce test effort based on smart lever settings – see figure 10.
Figure 10: BPCA Test Scope Optimization - additional TSO levers and settings with SAP Solution Manager
7.1 SP05
When reducing the test coverage from 100% (all changed objects tested at least once) to a lower value such
as 99% (see point D), you run a higher risk that the untested changes might cause problems in your
production systems. You can mitigate this risk by automatic determination of mission-critical business
processes/steps, which are forced into the test scope. This can be achieved by assigning a custom attribute
like “process priority”, with value 1, to all mission-critical business processes/steps in your Business
Blueprint. A setting in the TSO Optimization Approach then forces all mission-critical business
processes/steps that are impacted, into the test scope. These processes are shown in the BPCA TSO
graphic at the very left (“must include area” - see point F in figure 11) up to the vertical line. From SAP-
45
TWO VALUE RELEASES PER YEAR
internal testing and customer feedback, the combination of deselecting process steps with a low test
efficiency using 99% test coverage, combined with risk mitigation by forcing impacted mission-critical
processes into the test scope, has led to acceptable test effort and risk levels.
F D
S S
e e
b b
a a
s s
ti ti
a a
n n
G G
Figure 11: BPCA Test
ai Scope Optimization with test coverage
ai of 99% plus risk mitigation
s s
b b
5.3.4 Quantitative a Example a
u u
e
The following quantitative e
example illustrates the test effort reduction that can be achieved with BPCA Test
r r
Scope Optimization (TSO). The number of business processes and assigned test cases is small, and just for
illustration purposes. Applying a factor of 10 – 20 would indicate typical SAP customer situations.
Business Blueprint
The business blueprint includes
3 business scenarios for Financials, Logistics and Human Resources, containing
8 end to end business processes and
46 process steps in total, with multiple transaction codes per process step.
Test Cases
In total 73 test cases - manual and automated - are assigned at process step and business process level,
as shown in figure 12. Automated end to end tests have been assigned to business processes whose
transactions can not be tested individually because precursor transactions are needed to create business
documents for processing by successor transactions in the E2E business process. This is the case for
business processes like Order-to-Cash and Procure-to-Pay, in this example.
The test execution effort of all assigned test cases is a total of 132 hours. Instead of assigning specific test
execution efforts to each test case, SAP Solution Manager allows the definition of average efforts by test
46
TWO VALUE RELEASES PER YEAR
case type. In the example, the following average test efforts have been defined, assuming that only human
interaction time is considered:
Manual tests: 2 hours – access and read manual test script, launch and execute process step,
document result, status setting and potential incident creation
Automated tests: 15 minutes –for status analysis by test coordinator after automated test execution.
Change event
Enhancement Package 4 for SAP ERP 6.0 was deployed in the SAP test system, with approximately
180.000 changed objects for software component SAP APPL.
BPCA TSO 1
For large change events, SAP recommends BPCA Test Scope Optimization. BPCA default test scope
optimization without any further user interaction, ranks business processes and process steps, resulting in a
test scope with 58 tests and test effort reduced to 104 hours, a gain of 21% (BPCA TSO 1 in figure 13).
BPCA TSO 2
From this starting point, further reductions can be achieved by applying TSO settings, as described in figure
10
1. test scope optimization with priority for process steps with automated tests
2. test scope optimization using only automated tests of affected process steps with manual and
automated tests
The first TSO setting influences the rank of a process step. Process steps with automated tests will be
shown in the TSO graphic towards the left, -indicating higher test efficiency. The second TSO setting
addresses the fact that most companies add test cases to a process step, but rarely remove manual tests
when automated tests are added. With this setting, only automated tests are used for a process step with
both manual and automated tests.
BPCA test scope optimization with preference for automated tests, and 100% test coverage, reduces the test
scope for the given example further, to 44 tests, and the test effort to 76 hours, a 42% gain compared to the
entire test scope (BPCA TSO 1 in figure 13).
47
TWO VALUE RELEASES PER YEAR
BPCA TSO 3
The 3rd optimization described in the quantitative example deals with the long tail effect, where the test
efficiency decreases rapidly (see area between points B and D in figure 8). To remove processes with low
test efficiency, the test coverage is set to 99%, i.e. 1% of all changed objects with impact on existing
business processes, are not tested. This significantly reduces test effort by slightly increasing risk. To
mitigate risk, define a custom attribute “Business Process Priority”, and assign the value 1 to it for all
mission-critical processes. In the settings of the BPCA TSO Optimization Approach, you can specify that all
mission critical processes are forced into the test scope, and no optimization be applied to those priority 1
processes. This measure mitigates the risk of excluding a small percentage of changed objects untested.
Combining the settings for test scope optimization produces a good compromise between test effort and risk
level. The resulting TSO ranking list is shown in figure 11. The optimized test scope includes 32 test cases,
with a test execution effort of 52 hours, a 61% gain compared to the complete test scope without
optimization (BPCA TSO 3 in figure 13).
BPCA Test Scope Optimization provides the following advantage for companies planning to deploy software
changes regularly:
1. Identification of impacted business processes and process steps, allowing test teams to limit need
for business analysts for identified areas
2. Significantly reduced test effort when using BPCA Test Scope Optimization, saving cost and time,
and allowing the focus of the project team to shift to other important tasks
3. Detect impacted business processes with no, or only manual, tests, where automated tests could
improve the overall test efficiency
Test coverage within Lack of time to execute regression tests may potentially compromise
tight timelines performance & reliability
Overcompensating scope of testing may result in more testing than
really required, and project delays
Defects in production Insufficient test coverage means more defects are not found before cut-
Systems over of changes from test to production landscape
Testing accuracy due to not being able to test all variants
Regression testing after software changes is to find defects and unwanted business process behavior. The
correction of defects results in customizing and/or development adjustments in the DEV environment, which
in turn require re-testing in the TST environment. These iterative activities can best be supported by
48
TWO VALUE RELEASES PER YEAR
automated functional regression tests, which free up a significant amount of time for the QA team and the
individuals usually involved in manual test execution.
rd
SAP and 3 party test tool vendors have advanced their test automation tools in the last few years to the
extent that customers now can get the functionality and maturity that they need to setup regression tests by
test automation. Most test tools allow semi-automatic creation of test scripts that can handle complex
business transactions, without requiring detailed technical expertise. As a result, business process experts
and outsource providers can largely handle the creation and maintenance of automated tests. SAP has also
made a significant effort to improve the test automation infrastructure, especially the handling of system
under test (SUT) information, and test data provisioning, to make the overall process more reliable and
efficient.
Identify the core/mission-critical business processes and develop automated tests for them.
Chart 2: Test Option 1 with SAP Solution Manager 7.1 – Test Automation Framework
In the Test Automation Framework, customers can easily set up test configurations, which consist of 3
essential parts:
Test Script – definition of test scripts based on SAP test automation applications (CBTA, eCATT) or
rd
3 party test automation applications like HP Quick Test Professional, Worksoft Certify or Tricentis
Tosca, with certified integration with SAP Solution Manager 7.1.
Test Data Container – environment to plan or upload test data consumed by test configurations
System Data Container – system landscape information controlled by user, to switch between
landscapes to be tested, e.g. DEV, TST or Pre-PRD
Test Configurations are assigned to process steps or business processes of the Business Process
Hierarchy, and can be selected for a test plan, to allow mass execution.
49
TWO VALUE RELEASES PER YEAR
Customers with SAP Enterprise Support can use the SAP component-based test automation
application, CBTA, which provides a better total-cost-of-ownership (TCO). For UI technologies not
supported by CBTA, like process steps using non-SAP applications, companies can use partner test
tools from HP, Worksoft or Tricentis. Customers with SAP Enterprise Support can obtain 2 seats of
HP QTP without additional costs (for details see https:/service.sap.com/testing).
Functionality provided by the Test Automation Framework of SAP Solution Manager 7.1 includes:
Test design Seamless creation and assignment of 3rd party test automation
scripts to process steps
Central planning of test data and assignment to parameters of
the test scripts
Central compilation of “systems under test” (SUT) – no
individual setup in each test script
Test execution Standard Test Workbench functionality to set up test plans, test
packages and to execute tests and capture test results
New scheduling functionality to allow un- attended test
execution mode, at any time and at local or remote locations
Test result analysis Standard status and progress reports provided by the Test
Workbench and BI
Gap reports to discover business processes without tests,
outdated test plans, coverage of new tests in test plans
Accelerated repair Tester can create a repair request for damaged test cases, which
is sent to the test engineer responsible, automatically, and
includes all necessary context information
Test engineers work in an environment in which all context
information about the damaged test cases is available. From
here, all functions to run, analyze, maintain and repair damaged
test cases are available.
Chart 4: SAP Solution Manager 7.1Test Automation Framework functionality
50
TWO VALUE RELEASES PER YEAR
SAP Customers like Colgate-Palmolive/US have observed the following benefits of test
automation:
51
TWO VALUE RELEASES PER YEAR
rd
Chart 7: Parameter mapping from 3 party test automation tool to SAP Solution Manager test configuration,
and assignment of test data from test data container
Chart 8: Test Configuration with linked test data from Test Data Container
52
TWO VALUE RELEASES PER YEAR
Chart 9: Test Data handling via Test Automation Framework during test execution
rd
A standard SAP interface links 3 -party test automation tools with SAP Solution Manager, allowing the
provision of test data from test data container to the test script, at runtime. The following test automation
tools can use this approach:
SAP eCATT
SAP Component-based Test Automation (CBTA)
HP Quick Test Professional (QTP)
Worksoft Certify
Tricentis Tosca
During test execution, the test configuration reads the test data from the TDC and transfers it to the test
script of the test automation tool for execution. Each test data record from the TDC will trigger a test
execution.
53
TWO VALUE RELEASES PER YEAR
Chart 10: Test Option 2 with SAP TAO and SAP Solution Manager 7.1
To accelerate the creation of automated test cases, and to lower the maintenance effort of automated tests,
deploy SAP Test Acceleration and Optimization (SAP TAO) in conjunction with QC and QTP, to build
automated regression tests.
Chart 11: Accelerated creation of automated business process tests with SAP TAO
54
TWO VALUE RELEASES PER YEAR
Uploading to QC allows customers to use the test management environment of Quality Center to
build test plans and test sets, based on standard QTP scripts and SAP TAO test scripts.
Maintenance of damaged automated test cases is accelerated by SAP TAO by integration with
Business Process Change Analyzer, which identifies damaged test components which can then be
repaired rapidly by SAP TAO
Chart 12: Accelerated repair of damaged test cases with SAP TAO
SAP Customers like Baker Hughes/US have realized the following benefits by using SAP TAO in
combination with SAP Quality Center by HP and QTP
Cost savings by discovering defects earlier in the lifecycle
40% less testing effort by automating regression testing
Reduced User Acceptance Testing to 3 weeks
Estimated 20% savings due to reuse of existing test cases for future releases
Estimated 25-30% savings in maintenance due to use of SAP TAO
Delivery of high quality complex application release with minimal production issues
Tracking all testing activities using a central test management tool
55
TWO VALUE RELEASES PER YEAR
The automatic creation of parameters for input fields allows users to build sophisticated test scripts quickly,
and assign test data conveniently, since the MS Excel file already contains the required data structure.
Step 1
A user executes the business transaction. SAP TAO creates test components with parameters for all input
fields, a test script using test components in the right order, a file with test data, and connects the script
parameters with the columns of the test data file.
Chart 13: Creation of test script and test data file with SAP TAO
Step 2
A business analyst, SME or test engineer can enter additional test data in the data file. Customers should
identify business documents in the production system that reflect standard variations. The data from these
business documents can be entered as test data in the test data files.
56
TWO VALUE RELEASES PER YEAR
Chart 14: User enters additional test data records in SAP TAO-generated test data file
Step 3
Quality Center executes the SAP TAO script and accesses the test data file via the link in the test script. Test
data from the file will be retrieved and entered into the input parameter at runtime. The test is executed
separately for each test data record.
Chart 15: Test execution with multiple iterations triggered by test data file
57
TWO VALUE RELEASES PER YEAR
Customers planning to deploy SAP Support Package Stacks or Enhancement Packages (EhP) would like to
know in advance the involved cost and effort for code adjustments and regression testing. In addition, they
would like to know impacted business processes to derive the associated development teams and business
analysts (see figure 1).
SAP customers have requested an application that provides project scope and effort estimates and satisfies
the following requirements:
1. Transparency about change impact of EHP deployments before physical installation
2. Reliable effort estimation for major development adjustments and test activities
3. Tailored impact analysis for custom code and modifications
4. Test scope optimization with significant reduced test scope and test effort
5. Test plan for impacted business processes including custom code and modifications
6. Simple guided tool based procedure without significant preparation effort
SAP has committed to provide a new application EhP Scope and Effort Analyzer as part of SAP Solution
Manager 7.1 with planned availability in first half of 2014. Scope and effort of planned SP or EhP
deployments can be analyzed without the need to physically install them anywhere in the customer system
landscape. A guided activity helps the user to enter the necessary information like current and planned EhP
level. The application performs all necessary calculations in the background and subsequently provides the
results in a graphical summary for the project team as well as detailed analysis views for involved experts
like development and test managers (figure 2). All prerequisites that required manual activities in the past
have been automated including
Optional automatic generation of a SAP Module oriented blueprint including executables like
transaction codes and reports used in production systems
Automatic generation of BPCA technical bill of material (TBOM) for all involved executables
Identification of used and unused custom code objects
Automatic test scope calculation plus risk-based approach for optimized test scope
58
TWO VALUE RELEASES PER YEAR
Figure 3: SAP Solution Manager EhP Scope and Effort Analyzer – expected CC adjustment effort
59
TWO VALUE RELEASES PER YEAR
Figure 4: SAP Solution Manager EhP Scope and Effort – expected test execution effort
Development managers get detailed insights using expert views about adjustment efforts for custom objects,
modifications and clones by SAP modules as well as object types.
Test managers can use build-in simulation features to recalculate test efforts based on various attributes
such as test coverage, priority of business processes, etc. In addition, specific test plans can be generated
for limited business processes including custom code objects and modifications.
60
TWO VALUE RELEASES PER YEAR
Figure 5: SAP Solution Manager EhP Scope and Effort – Expert view
Value proposition
Project teams will benefit from the application in the following way.
Hassle-free analysis
Change impact analysis without physical EHP deployment
Simple Guided procedure in SAP Solution Manager
No external transfer of customer code to protect Intellectual Property
Custom developments
Tailored impact analysis for custom code and modifications
Early estimation of project effort and required adjustment activities
Overview on used and unused code based on reliable usage statistics
Test Management
Automatic generation of preliminary business blueprint (if required)
Test Scope Optimization with significant reduced test scope and test effort
Additional test plan for business processes including custom code & modifications
Recommendations for missing test cases and process traces (BPCA TBOM)
61
TWO VALUE RELEASES PER YEAR
Business downtime usually starts with the ramp down phase, which ensures the consistency of the systems
and database, and the controlled ramp down of productive use, such as locking all business users,
rescheduling background jobs, processing update tasks, cleaning up data queues, deactivating interface
connections, and so on. A consistent back up of the database and file system ensures a proper reset point in
emergencies.
The technical downtime is followed by the ramp down process. During technical downtime, the maintenance
tool runs on the system and the system is updated. During this process, the system can be up and running
(but with controlled access only), or shut down, to optimize the deployment process and ensure data
consistency. Technical downtime can usually be optimized by adjusting tool-specific parameters and
settings, or by increasing the available hardware and disc input/output time, depending on the maintenance
event tasks.
The post-processing phase follows technical downtime. During post-processing, technical system checks are
performed, to ensure the technical correctness of the systems. This can be followed by customer-specific
software update tasks, such as importing customer transports, updating software add-ons, supplementing or
generating objects and programs, and so on. These activities are customer-specific and can change with the
scope of different maintenance events.
The next phase is validation, which covers the functional validation of the production system by selected
business users (functional core team). These tests decide the go or no-go of the current software solution.
They usually take one or more hours, and concentrate on selected business-critical processes.
In case of a no-go decision, the system must be restored or reset. In this rare case, all activities are known
and planned in detail. The entire team must be familiar with go and no-go decisions.
In case of a go decision, the ramp-up process continues. Releasing end users for business, establishing
interfaces connections, scheduling background processes, and so on. The regular “uptime”, or production
use of the system, follows the ramp down process.
Holistic optimization of downtime focuses on all elements of the business downtime, not just on the technical
part. To review the activities, and its duration, activity by activity, is an intensive task. Focusing initially on
time-consuming activities is a more targeted approach.
62
TWO VALUE RELEASES PER YEAR
The effort for a single event includes the manpower required for the update and the effort to test and validate
the event. It also covers related hardware and support activities.
The downtime required to apply the changes is proportional to this effort. Typically, the activities related to
the events, as shown on the illustration, require system outage for a number of hours, or even days.
Depending on the criticality of the functions running on the affected system, the downtime is usually planned
for weekends – possibly long weekends –to minimize the impact of the planned system activity on business.
When combining major customer releases with SAP software updates (SPS or EHP), it is more difficult to
find an appropriate time window for the software deployment. The usual weekends –even extended
weekends around certain holidays – may no longer be sufficient to meet business requirements.
SAP has therefore invested in standard tools and methodologies to allow for nearly zero business
downtimes. In some cases, the SAP systems may even stay completely online for planned maintenance
activities. What is currently achievable with SAP standard tools and methods is described in the following
illustration:
63
TWO VALUE RELEASES PER YEAR
The following sections describe the methods and their benefits and effort.
• What is the acceptable business downtime for the business? This business downtime requirement
can influence the tool or technique you use to perform maintenance, and the cost of optimization
procedures and techniques.
• Which maintenance event is planned? Installation of support packages, enhancement packages,
database maintenance, or other activities. Consider the technical dependencies of the selected
maintenance event, for example database or operating system patch version prerequisites.
• Which systems participate of the maintenance event (based on technical or functional
dependencies, for example)? Define the constellation of systems to run maintenance, based on
your needs and dependencies.
Reducing planned business downtime usually starts with a proof of concept project, to evaluate activities,
timings and downtime, and specify next realization steps.
64
TWO VALUE RELEASES PER YEAR
Try to combine a customer release (customization or new functions and new configuration) with the update
of the SAP release or the support package stack.
You can then combine the test effort, which is usually the largest component of the effort, and needs to be
done only once. If the update of the SAP software stack were executed separately from the implementation
of the custom development, each step needs to be tested separately.
The planned outage to update the software stack could also be combined with patches of the lower stack,
e.g. OS or DB patches.
The number of activities performed during a single outage increases the risk of cut-over failure, which might
lead to a longer outage, or even to roll-back and the repeated execution of the cut-over.
Use the term customer release to include all activities related to a system change. It includes:
New SAP release (major release or enhancement package or support pack stack)
Custom development
Customer transports with configuration changes and lower stack changes
OS patch
DB patch
Others
Planning all activities to be performed within a single event – customer release planning – should take into
account:
In some case, only selected components of the system landscape require an outage (e.g. only a BW
system). To minimize the impact on the supported business, consider whether the affected components can
be shut down individually, and the remaining components (e.g., the ECC or CRM system), supporting the
critical business, stay in operation.
This selective treatment requires documented knowledge of business processes across the system
landscape, and their criticality.
When shutting down system components selectively, ensure that the interfaces connecting the disabled
components are deactivated–monitoring these interfaces might cause errors. This should be communicated
in advance to the persons responsible for monitoring.
65
TWO VALUE RELEASES PER YEAR
48-72 hours before the downtime starts, a restricted phase starts on the system – see the figure below.
During this phase, no repository changes can be made in the production system. This phase also impacts
the DEV system. No development activities can be performed during the upgrade of the development
system.
In the preparation of the planned downtime, as well as optimizing the duration of the downtime, the uptime
part of the cut-over should also be kept as short as possible, to minimize the duration of the restricted phase
on the production system, and thus to minimize risk, so it is important to prepare the cut-over plan, to
perform the planned event efficiently.
A cutover plan is an operative plan, like a to-do list, for all steps of the planned activity in the system –
customer release. The level of details in a cutover plan has to ensure correct interpretation of the task
execution.
Cutover plans are correlated with contingency plans; recovery/ restore must always be possible in case of
errors.
The duration of the business downtime has to be estimated, for the alignment with the business units.
The cut-over plan lists the activities, steps and timing of the planned upgrade, and lists the people required
(and available).
66
TWO VALUE RELEASES PER YEAR
For critical events run the cut-over plan twice as a simulation, before the production cut-over. Simulation
should be in a representative environment with regard to data volume, performance and hardware.
Kernel updates
Every SAP System includes a SAP Kernel, which can be maintained separately from the SAP System itself.
Kernel patches contain corrections and enhancements of the SAP kernel. Usually, the Kernel is updated
along a support package or other major maintenance events. In certain cases however, the deployment of a
new SAP Kernel version is required.
To change the kernel separately, you basically have to stop every instance of the SAP system, replace the
files of the old kernel with the files of the new one, and restart the instance again. A kernel switch typically
takes only a short time, but requires stopping all instances of the SAP system, which in turn stops all active
transactions. This is very inconvenient, especially for long-running batch jobs.
Shutting down the complete system completely, exchanging the SAP Kernel and restarting the system again,
is easiest and simplest way to do this. However, this represents a planned downtime, which might not
acceptable.
Since Nov 2012, SAP supports the Rolling Kernel Switch for SAP NetWeaver ABAP based systems. The
Rolling Kernel Switch procedure enables to change the kernel of all application servers sequentially, and
thus a planned downtime of the system can be avoided.
For further details about rolling SAP Kernel switch, see SAP note 953653.
System Backups
A system backup is an activity in the ramp down and ramp up phase, before and after each maintenance
event. Every SAP system of the landscape requires a consistent emergency backup. System backup and
recovery is challenging due to data growth and consequent long backup and recovery times. For high-
availability systems, you should invest in and improve the backup performance by implementing backup
technologies such as snapshot. Further information can be obtained from your hardware partner or backup
tool vendor.
SAP Support Packages for ABAP-based SAP NetWeaver systems are deployed via Support Package
Manager Tool (SPAM), or Java Support Package Manager (JSPM) for Java based SAP NetWeaver systems.
SPAM is an SAP-internal tool, no operating system knowledge is required to run it. SPAM ensures that
support packages are imported only in the specified sequence. Settings allows adjustment to your needs,
such as the number of parallel import processes.
If you plan to import a larger number of support package stacks, or if you want to reduce the downtime
during your maintenance event, use Software Update Manager (SUM) tool instead of SPAM. SUM can
reduce the technical downtime by 50-70% compared to the standard tool SPAM.
Enhancement Packages
67
TWO VALUE RELEASES PER YEAR
Functional enhancements are shipped as SAP Enhancement Packages for SAP NetWeaver-based systems
or SAP Business Suite products. This enhancement package strategy for SAP ERP was introduced in 2007
to simplify the way customers manage and deploy new software. Customers can selectively implement these
software innovations from SAP, and activate it depending on business requirements. As a result, customers
can isolate the impact of software updates, and bring new functionality online faster, through shortened
testing cycles.
The tool to deploy SAP Enhancement Package for ABAP and Java-based SAP NetWeaver systems is
Software Update Manager (SUM), which is based on the established upgrade technology. It sets up a slim
parallel shadow system, in which major deployment steps of the functional enhancement are made in
parallel to the production operation. Technical downtime is necessary to perform the system and kernel
switch and further downtime-relevant changes, to ensure the consistency of the database.
The Software Update Manager offers several downtime optimizing features, some of which are active by
default, and others can be activated on demand. These features reduce business downtime compared to
current standard tools, because more of the downtime-relevant deployment phases are executed while
system is still available for business users. Some of these features are:
Load generation (SGEN): Scheduling load generation used to be a business downtime activity.
Now, SGEN can be scheduled on the shadow instance during the uptime phase. This reduces the
business downtime by the runtime of the load generation. This option can be activated in the
Software Update Manager advanced tool configuration mode.
Selected, long-running after import methods: Some selected after import methods (AIM) are
already scheduled on the shadow instance. They are no longer part of the downtime. This feature
is active by default.
Mass generation of enhancement objects, generation of enqueue objects: Generation and mass
generation of objects used to be in the downtime. With Software Update Manager this generation
has moved into the uptime part of the deployment process. This feature is active per default.
Record and replay technique: This feature is based on a database functionality, record and reply
technique. Selected application tables changed by a maintenance event are identified and given
database trigger and logging tables, to record table changes, updates and inserts. All changes to
this set of tables are recorded during the productive use of the system, and permanently
synchronized with the data of the shadow system. This procedure allows shifting several usually
long running downtime phases, such as the main import and table structure adjustments and
conversions, into the deployment uptime phase, to gain the best downtime reduction currently
available with a standard tool. To run the main import during the deployment uptime instead of
during the downtime phase involves importing the entire content of the target support package and
enhancement package. This record and replay technique can be activated by selecting the
advanced Software Update Manager tool configuration mode. It is also referred to as NZDM –
Near-Zero Downtime Maintenance technique.
Deployment of customer transports during uptime: Software Update Manager (SUM) 1.0, SP6 or
higher, has a new feature to reduce business downtime by including customer transport requests in
the update phase. This feature allows shifting most of the transport import runtime to the
deployment uptime part of support package or enhancement package installations, significantly
reducing business downtime. Further details are in SAP note 1759080 - Conditions for SUM
including customer transport requests. This tool feature addresses customers with large customer
releases, and customers implementing a large number of transports into the production systems
(transport runtime of several hours), as part of the business downtime. This feature can be
activated in the advanced Software Update Manager tool configuration mode.
Release Upgrades
A new software release comes with improvements and new functionality, and uses state-of-the-art
technologies to meet users' growing business requirements and increase their productivity. The transition to
a new release presents data and system consistency and business downtime challenges. SAP offers a
comprehensive set of technical tools and services to facilitate and safeguard upgrade projects.
68
TWO VALUE RELEASES PER YEAR
SAP's upgrade technology is continuously improved, with the focus on unattended operation, usability, and
technical downtime reduction. The single point of access for all upgrade-related questions is on SAP Service
Marketplace http://service.sap.com/upgrade.
For background information about the NZDT method, see the SAP Architecture blue book Near Zero
Downtime - Reduction of Business Downtime, in the SAP Community Network (http://www.sdn.sap.com),
using the search term “Near Zero Downtime - Reduction of Business Downtime”. Tools and methods to apply
the NZDT method are only provided in the context of an SAP consulting or support engagement.
As of SAP Business Suite 7i2011, it will no longer be possible to upgrade an SAP dual-stack system to a
higher release. Split dual stack systems before the enhancement package deployment release upgrade.
Downtime minimization of single stack systems is less complex and cost intensive, as some features of
standard maintenance tools can be used, so split dual-stack systems, as described in SAP Note 1655335 -
Use Cases for Splitting Dual-Stack Systems, and optimize the downtime of each single stack individually.
Database maintenance consists of several regular activities. They include database installation software
updates or implementing database patches. Further database maintenance activities are: parameter
adjustments, profile changes and configuration changes. Each database vendor offers different tools to
administrate the database, and to implement patches or software updates. Database maintenance activities
can be combined with SAP software maintenance in one major downtime, or scheduled as individual tasks
with individual downtimes.
SAP release upgrades or enhancement package implementations often required updates of the database
software as well, because the latest SAP software versions are no longer released for older database
versions. Detailed information about released combinations is in the Product Availability Matrix in SAP
Service Marketplace. If possible, update the database in a separate time window, before the SAP software
update. This separation allows you to optimize your SAP software update downtime. You may also benefit
from new database feature that also speed up the SAP updates.
Database Reorganizations
Database reorganizations are traditionally made by writing the export dump files of the objects into one or
more directories, or a dedicated tape device. The directories must be large enough for the objects to be
69
TWO VALUE RELEASES PER YEAR
reorganized. The scripts, however, are always stored in the working directory on the hard disk. The export
and import can be performed in parallel, by setting the degree of parallelism and the number of dump files.
Reorganization of databases helps preventing fragmentation of data, and can improve performance and
reduce unused database space. For large databases, reorganization can be scheduled after large archive
runs or deletions. Several database products offer an online reorganization mode, which reorganizes
database tables during production operation.
The downtime for SAP HANA revisions is determined by HANA database startup time after deployment of
the new revision. This startup time depends on the size of row-store tables that have to be reloaded to the
database, and the hardware, so optimizing the downtime mainly requires careful management of the
required row-store size, and optimal usage of the available hardware.
70
TWO VALUE RELEASES PER YEAR
ZDM method can be used for any major change event, allowing non-disruptive update of the SAP software
stack. This includes EHP updates, support package stack implementations and implementation of custom
code or configuration changes.
In the standard upgrade procedure, the production system needs to be taken out of operation to finalize the
upgrade downtime activities. The system is unavailable – this is downtime from the perspective of end users.
ZDM method uses a temporary system to continue operations during the downtime of the original system.
Using the bridge system, users can continue to work on the system. The bridge system is connected to the
data of the original system, so users continuously use the data in the original system, whether they are
logged on to the original or the bridge system, so no clone is necessary.
ZDM is an in-place method. It uses the technology which is also used by the current SUM tool. During the
implementation of the new software, the core functions are running and are available to the users.
During the bridge-phase (users work on the bridge system), some functions might be restricted, e.g. only
available in read-only mode.
ZDM will be available for most critical ABAP-based software components, including ECC.
71
www.sap.com