An organizational unit of programs in the internal session. There is always a main program group and it is possible to have several additional program groups. Each program group has a main program. If an external call of a subroutine in a program belonging to a program group causes the framework program of the subroutine to be loaded, this is added to the program group. Loading function groups and loading class pools always leads to the creation of an additional program group. All programs of a program group share the interface work areas declared with TABLES, NODES and COMMON PART. Within a program group, CALL SCREEN can only be used to call the screens of the main program.