Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
A user exit is a point in a computer program at which a user can call a customized program to replace the default subroutine supplied by the program's vendor.
User exits are routines that allow for the addition of customized programs without affecting the standard program and its features. When executing a software package for a certain predefined event, a program may invoke a subroutine. If a user exit is defined, the default subroutine can be replaced with one customized by the package client to add customized functionality.
User exits are important because they facilitate site-specific customization without causing an impact on the already existing customized functionality. They also support software upgrade and follow-on releases.
For example, a user exit given by a sort/merge package can be replaced by a user program providing its own subroutine for a record comparison task. The default routine accompanying the package (provided by the package vendor) is thus replaced by the procedures provided by the user. These procedures are often compiled into a static library, and are linked to the package directly to generate a program that is capable of being executed. This can be done using dynamic libraries as well. Whenever a user-defined subroutine is substituted for the default exit provided by the software vendor, the user must make sure that it interfaces with the software package and is consistent with the defined parameters for the default user exit.
Companies like SAP, Oracle, HP, Macro4, Compuware and CA have implemented user exits in some of their software products. Applications that provide user exits include IBM’s sort/merge package, SAP R3, IBM CICS, IBM JES 2 and 3, IBM MVS, SMS z/OS and Oracle CC&B.