Custom Code in your SAP Landscape….
Custom code/Development is used by nearly ALL SAP customers as an easy and powerful way to extend the standard SAP software and implement customer-specific business requirements. Adjusted by Custom Code, SAP-based business scenarios bring additional value to the customer’s business. Unfortunately, a large custom code base increases your Total Cost of Ownership (‘TCO’) and can add significant complexity when it comes to migrating/upgrading your SAP landscapes. Let’s look at some of the typical challenges of custom code, especially when considering an upgrade to S/4…
Challenges for custom code in SAP upgrades –
- Understanding the impact of the upgrade on custom code
- Determining which code is actually used and therefore needs to be remediated
- Determining what changes need to be made to your custom code to ensure compatibility with S/4
- Having sufficient time and resources to carry out required corrections
These challenges can be difficult to overcome and are often seen as a barrier to commencing an upgrade due to the time and costs involved. However, SAP have considered this and provided a few key toolsets that can help alleviate this pain. This blog describes two of the core tools provided by SAP and considers which is best used in which scenario:
Custom Code Migration app v Custom Code Lifecycle Management –
Custom Code Migration App (CCMA)
On January 27th, 2021 SAP launched their new Service offering RISE with SAP (can also be accessing directly on SAP BTP), providing the path to an Intelligent Enterprise (more cloud products) for a customer. The CCMA (Custom Code Migration app) is a part of that service offering , it’s goal is to assess custom code impact during SAP S/4HANA conversions and migration.
Features of the Custom Code Migration app?
Define custom code scope for SAP S/4HANA – The app defines the initial scope of custom code that needs to be migrated based on the uploaded usage data. Afterward you can adjust the scope manually, for example, you can exclude your custom code objects which will become obsolete in the SAP S/4HANA system or include new developments, for which usage data doesn’t yet exist in your productive SAP ERP system. This is a great help as it immediately rules out a host of custom code that doesn’t need reviewing/transitioning across.
Remove unused custom code from the system – After finalising the custom code which is out-of-scope for the SAP S/4HANA system, it can then be dealt with during the upgrade process.
Analyse custom code for SAP S/4HANA – The Custom Code Migration app enables you to analyse custom code that needs to be migrated from an SAP Business Suite system to SAP S/4HANA (on premise). To evaluate the development objects to be adopted, this app performs the S/4HANA custom code checks.
In addition, the app supports you with identifying unused custom code based on your collected usage data. This enables you to remove unused custom code during a system conversion to SAP S/4HANA.
Adapt custom code for SAP S/4HANA – After converting your ERP system to SAP S/4HANA, it’s now time to adapt your custom code. Automate your custom code adaption, reducing manual effort!
CCMA is an invaluable tool on your SAP journey, although it’s important to remember that CCMA is just a small part of the SAP Rise service offering, for more information please see here.
What is Custom Code Lifecycle Management?
SAP Solution Managers Custom Code Lifecycle Management is the central point of access for all functions that you use to monitor and manage the lifecycle of custom developments from creation to deletion. You can continually optimise your developments and configure how they are implemented. Some of the key features of CCLM are:
Libraries of Custom Code – The library definition view provides an overview of active and inactive custom code libraries.
Decommissioning cockpit – The decommissioning cockpit helps you identify redundant or obsolete custom code. It does this by reviewing the lifecycle status of custom code objects from your custom code library.
The cockpit provides a graphical representation of the lifecycle status of the custom code objects from the custom code library. If you see that custom code objects are unused, you can schedule these objects for decommissioning.
Quality cockpit – The quality cockpit displays the results of ABAP Test Client (ATC) runs and the open exceptions created for the results over a certain time. You can analyse the results and accept or reject open exemptions. You can incorporate your own quality checks into ATC and then ensure that your developments are meeting company standards. Where they don’t, you can have action plans to address and hopefully see the quality improve over time.
City Model – The 3D City Model provides an overview of the number of custom developments in your system. The model also displays information about the quality and criticality of the objects to help you decide whether custom code is necessary.
Having your custom code in a good state before embarking on your journey to S/4 is critical, the better state it’s in, the less headaches you’ll encounter. If you’re already using SAP Solution Manager, then CCLM is available to you right now! If you’d like a session for a deeper dive into the CCLM, please see here
So, where do the two tools sit in the overall picture of your SAP lifecycle? CCMA is the tool to use as part of a migration/upgrade project, as the activities associated with adapting custom code is built into the migration/upgrade process. However, if you’re already using SolMan 7.2 and are thinking about upgrading to S/4 in the next 12 – 24+ months, then you should switch on CCLM and start the process today. This will put you in the best position possible to manage your complete custom code management as part of an upgrade and also long term management of the SAP solution.