Creating Business Applications using
ABAP
SAP delivers business solutions that can be adapted to customers’ needs in a variety of ways. Most adaptations are achieved by customizing business processes. However, sometimes development is necessary. To facilitate development for existing solutions, SAP has defined interfaces in applications in order to transfer control at predefined places, called enhancement options. Enhancement options are managed by the Enhancement Framework, the new enhancement concept of the ABAP Workbench. The goal of the Enhancement Framework is to provide a technology to create modification-free enhancements and to unify all possible ways of modifying or enhancing Repository objects. Thus, the framework enables the integration of different concepts for modifying and enhancing ABAP development objects. The enhancement concept is supported by the Enhancement Builder tool and ABAP language elements.
This IT scenario variant aims at describing the methodology and tools for extending existing ABAP applications at predefined places programmatically based on clean interface definitions using the Enhancement Framework.
The enhancement concept enables the integration of the following concepts for modifying and enhancing development objects:
· Enhancement options are positions in Repository objects where enhancements can be made. These options are either explicitly defined (by the developer) or exist implicitly. Explicit enhancement options are generally defined in a central initial system. Enhancements are made in follow-on systems.
· Enhancement spots are used to manage explicit enhancement options. Enhancement spots carry information about the positions at which enhancement options were created. One enhancement spot can manage several enhancement options of a Repository object. Conversely, several enhancement spots can be assigned to one enhancement option.
· Enhancement implementations manage the enhancements of the enhancement options, both explicit and implicit. In the same way that we differentiate between enhancement options and their management in the case of enhancement spots, we also differentiate between the actual enhancement and its management in the case of enhancement implementations.
While implicit enhancement options always exist and do not require any special management, explicit enhancement options created in an initial system must be made known to developers in target systems by means of enhancement spots.
Correspondingly, enhancements made by developers in follow-on systems must also be managed as enhancement implementations. This applies to all enhancement options, both explicit and implicit.
The following figure shows an overview of enhancement spots and enhancement implementations:

The left part of the figure above shows the relevant terminology for enhancement spots and the individual relationships. It only applies to enhancement options. No enhancement spots are required for implicit enhancement options.
The right part of the figure shows the relevant terminology for enhancement implementations and the individual relationships. This applies to enhancements of both explicit and implicit enhancement options.
To use this scenario variant you require the following installable units:
System with activated usage types:
· Application Server ABAP (AS ABAP)
Provides the tools for enhancing the ABAP applications, and the runtime environment for running these applications.
Process |
Description |
Within the model process you identify where you have to enhance existing applications. |
|
Outlines the way you choose the right enhancement options and implement there your enhancement. |
|
Focuses on the methods for activating, testing, and releasing of enhancements. |
|
Describes how you can adapt your enhancement when interfaces change, and how to test the adapted enhancement. |
|
Outlines the process of adjusting enhancements if during an upgrade of your application the enhancements are affected. |