ABAP Tuning

Home Services Background Legal News

ABAP_Tuning.htm
Custom_ABAP.htm
Manage_ABAP.htm
ABAP_QA.htm
Workshops.htm

ABAP Tuning in general means the improvement of performance of ABAP programs, custom or SAP standard. Depending on a specific client situation, I offer several types of services that fall under this category. Due to the nature of this business and the complexity and individuality of each client's situation, the services cannot be pre-packaged but need to be defined in detail and agreed upon during the definition phase of a project. The service types build logically upon each other and so form Phases, with Phase Deliverables after each one:

Health Check and Scope Definition

  • You may already have a list of 'problem children', meaning the 'Top XX' ABAP programs to work on. Then we can skip this step.
  • Or I will work with your organization to create this list, based on criteria that we will determine up front together, and prioritize it. This includes checking various logs, interviews with the Basis group, DBA, end users and developers.
  • This list will drive the scope for the rest of the project. It can be seen as a formal deliverable and therefore may also be all you want to drive your own tuning project.

Analysis and Recommendations

  • Code Analysis: Based on the Scope List, I will look at the code of the respective programs and analyze it for use of efficient coding and design techniques. The initial part of it, to get a high-level overview, can be done offsite, either from downloaded ABAP code or through remote login via the Internet. This saves travel costs. The outcome is a document that describes general use of Best Practices within your custom programs.
  • The more detailed part needs to be done on site, so I can discuss certain design techniques with developers, or interview end users to find more detailed information on how a program is used. This will add much more details to the above document, and more so, it adds considerable value by including your specific situation.
  • Based on the specific situation document, I will work with your users and developers to compose a set of recommendations for each program. This may also include impact assessments and estimates for implementation of the specific solution. This can also be a formal deliverable to conclude this Phase.
  • SAP standard programs: I will analyze them as well, but we need to work with SAP to implement tuning steps.

Implementation of 'Quick Hits'

  • In every analysis, there will be some so-called 'Quick Hits': Situations where major improvement can be achieved with minimal effort. Examples: Creation of an additional custom index to a database table, or rebuilding a SQL statement to optimize DB access.
  • Also, there are usually many little things that, each for itself may not create major impact, but also don't take much effort to correct. But in their entirety they will make an overall impact on system load and performance. Examples include the incorrect use of data types or the 'Select *' statement.
  • I will either work with your developers or DBAs to implement these, or do it myself.
  • Deliverables are the new programs and may also be a before - after benchmark.

Deep Re-Design

  • Other than the obvious 'Quick Hits', the most benefit will be gained by replacing inefficient technical design or inappropriate functional use of a program. This will take considerably more effort, but the results can be dramatic (see some examples below). 
  • I will work with your end users and process owners to develop a 'performance mindset' and use programs more efficiently.
  • Together with your developers, I will re-design and re-build inefficient programs from ground up.
  • Deliverables are new technical design documents and specifications, the new programs and may also be a before - after benchmark.

Benefits

  • The obvious gains you get form professional ABAP Tuning is that the tuned programs will run faster than before, so programs will run within their timeframe. This will lead to more end user and customer satisfaction. That may in specific cases be rather dramatic; see examples below.
  • ABAP Tuning always reduces system resource usage, such as CPU, network and database loads. Therefore you may be able to delay or avoid buying more and / or faster hardware, thereby saving direct costs.
  • By working closely with me on a tuning project, your developers will be able to better apply efficient design and coding techniques in the future. This will eliminate or greatly reduce the need for more external tuning projects.

Examples

  • A custom Delivery Due List program that ran in batch for 12 hrs every day was reduced to less than 30 minutes by use of efficient design techniques. That finally enabled the client to meet their shipping schedule and therefore greatly improved customer satisfaction.
  • A sales report was started by every department manager over the entire database each day around 8 AM. It used the system resources in a way that between 8 and 10 the response time for everyone else increased dramatically. By adding a selection by Department (incl. additional custom database index), and working with the end users to run the report with the additional selection, the system was able to handle the load again.
  • A data conversion program was benchmarked to run for two weeks (!) to load legacy data into R/3. This was an unacceptable bottleneck in the implementation schedule. By changing the approach from using sequential batch input to using several instances of BAPIs in parallel, the program ran a full load in less than 18 hours.