Cleaning your ABAP codebase can be daunting, so it's tempting to either drag your heels with endless planning or jump in both feet first. Of course, striking the right balance between the two is key to success and a great start is understanding these 7 challenges.
Optimizing your ABAP code is like giving your SAP systems a spring clean, and, similarly, one of the most satisfying elements is how you immediately feel the benefits. You may have dreaded starting, but as soon as everything is just a little bit tidier, you feel better.
Yet, leaping before you look is rarely advantageous and if you don't make sure you have bin bags, cleaning supplies, and (most importantly) caffeine, you'll just end up making more mess.
Likewise, if you start cleaning up your ABAP code without at least doing some cursory research, you'll almost certainly end up lost in your SAP system among two million lines of code. To help guide you, here are some common challenges of cleaning ABAP code.
1. Circumventing “It’s Good Enough” Attitudes
As with any enterprise IT project, cleaning up your ABAP code requires buy-in and approval from your business’ C-suite. Unfortunately, this can be tricky to obtain when they believe your systems are already “good enough”.
Putting together a business case for your project can be sped up by making use of our Gekkobrain software to scan your systems and provide a clear road map of what you need to do to get the best from your SAP systems.
With this insight in hand, you’ll be able to present a more detailed and accurate case to whoever holds the purse strings.
2. Finding Problematic Needles in SAP Haystacks
Earlier we referred to your system having around two million lines of code – that wasn't hyperbole. SAP statistics reveal there are 1,970,674 lines of code in the average SAP system.
Obviously, going through all that code, line-by-line is not an option! So, how do you decide what needs to be optimized?
Identifying your under-performing code can be expedited by simply reducing the amount of code in your systems. Turning on SAP’s Usage Procedure Logging feature will track how often your code is actually in use – you can then delete anything superfluous.
3. Developers Keep Writing Low-Performing Code
It can be difficult keeping your systems tidy if your programmers insist on making a mess.
Some might just be stuck in their ways, some find it hard to break bad habits, and some just accidentally write inefficient code on occasion. Whatever the reason, there will always be under-performing code committed to your systems and your best defense is simple being aware when it happens.
Gekkobrain users benefit from daily system scans that determine if any under-optimized code is written, and, if any is discovered, you’ll be automatically updated – with the offending code added to your workflow.
4. Choosing Which Issues to Prioritize
With potentially hundreds of thousands of ABAP code items to optimize, it’s not always obvious where you should start. It can be tempting to choose quick and easy tasks just to cross them off your to-do list, but this isn’t the most effective way of managing your code improvement project.
After identifying the under-performing code in your system, Gekkobrain will actually sort those issues into three categories:
- Priority 1. Issues that could potentially cause critical errors
- Priority 2. Issues that could potentially cause drastic performance restrictions
- Priority 3. Issues that could potentially cause moderate performance restrictions
Tackling them in order of priority, means you’ll see bigger improvements to your systems, quicker. It also makes it easier to prioritize the more significant tasks if your board isn't willing to commit to a full optimization project.
5. Delegating Tasks Among Developers
One thing we’ve learned from working on many optimization projects is that assigning tens of thousands of code items across a team of developers ends in confusion without the right tools.
We recommend looking for a project management tool that not only allows you to easily manage tens of thousands of tasks, but one that empowers you to assign jobs directly from within the platform. Otherwise you'll spend a lot of time switching between windows, copy and pasting from one tool into another.
6. Keeping Track of Your Project
Financial backing for your code improvement project is likely contingent on some level of C-suite oversight, which means regularly reporting on your progress. This can be time-consuming, fiddly and, worst of all, difficult to communicate to someone who doesn't really understand what you’re actually doing.
That’s why we designed Gekkobrain to include simple project management, sprint planning, and reporting features. In fact, at any point during your project, you can simply look on the very front-page of the Gekkobrain app to see how far the project has progressed.
7. Not Having Enough Free Time
The majority of the issues we've encountered take less than an hour to fix, but that time still adds up when you’ve got hundreds of thousands of them to complete.
As well as reducing the amount of code in your systems by using the Usage Procedure Logging feature, you can also save vast amounts of time by automating the process using our SAP Code Optimizer's automatic code fixing feature – which can optimize your code in a single click.
Understanding these challenges can make your project seem more daunting, but identifying and understanding is the first step to overcoming. By reading this post you're more informed about the tools you might need and best-practices you should follow – helping you save time and money.
For a more in-depth guide to cleaning up your ABAP code for SAP HANA, just click here to download our ebook.