# US 8,788,666 B2 · System and method of consolidated central user administrative provisioning

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,788,666 B2
- Document ID: US8788666B2
- Status: Granted
- Kind: B2
- Application number: 12/347,839
- Filed: 2008-12-31
- Published: 2010-07-01
- Granted: 2014-07-22
- Earliest claimed: 2008-12-31
- Assignees: Sap SE
- Applicants: Sarma Adithe Venkata Ram; Madhu Gourineni; Neha Garg
- Inventors: Sarma Adithe Venkata Ram; Madhu Gourineni; Neha Garg
- Web page: https://patentgrep.com/patent/US8788666B2

## CPC

- G06Q 10/10: Office automation; Time management
- G06F 9/542: {Event management; Broadcasting; Multicasting; Notifications}
- G06F 16/25: Integrating or interfacing systems involving database management systems
- G06F 16/2445: {Data retrieval commands; View definitions}
- G06Q 10/06: Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q 10/103: {Workflow collaboration or project management}
- Y10S 707/99944: Object-oriented database structure
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

In one embodiment the present invention includes a computer-implemented method of reducing a quantity of business application programming interface (BAPI) calls in a hardware client-server environment. The method includes configuring a centralized provisioning system on a hardware server with access definitions for systems. The method further includes receiving, by the centralized provisioning system, a provisioning request for a user of a client to access the systems. The method further includes determining a collected BAPI call according to the access definitions. The method further includes providing access to the user according to the collected BAPI call.

## Claims

### Claim 1

A computer-implemented method of reducing a quantity of business application programming interface calls in a hardware client-server environment, wherein the client and server both contain a processor and a memory, comprising:
configuring a centralized provisioning system on a hardware server with a plurality of access definitions for a plurality of systems, wherein the plurality of systems includes a parent system and a plurality of child systems, wherein the plurality of systems implement a technical level and a business level abstracted above the technical level, wherein the plurality of systems exchange business data via a plurality of business application programming interfaces that are a set of interfaces to object-oriented programming methods that allow object-oriented access to the plurality of systems through the object-oriented programming methods according to a plurality of business object types, wherein the plurality of business application programming interfaces operate at the business level as opposed to the technical level, and wherein the plurality of business application programming interfaces are implemented and stored in the plurality of systems as a plurality of remote function call modules;
receiving, by the centralized provisioning system, a provisioning request for a user of a client system to access at least two of the plurality of child systems;
determining a collected business application programming interface call from the client system, according to the plurality of access definitions; and
determining, by the centralized provisioning system, whether the system in the provisioning request participates in central user administration,
if the system participates in central user administration, the collected business application programming interface call collects at least two business application programming interface calls to the at least two of the plurality of child systems into a single business application programming interface call to the parent system, and the centralized provisioning system provides access to the user to the at least two of the plurality of child systems according to the collected business application programming interface call to the parent system, and
if the system does not participate in central user administration, the centralized provisioning system performs non-central user administration provisioning for the system by making a business application programming interface real time agent call that provides access to the user.

### Claim 2 (depends on 1)

The method of claim 1, wherein configuring the centralized provisioning system comprises:
configuring a global level configuration.

### Claim 3 (depends on 1)

The method of claim 1, wherein configuring the centralized provisioning system comprises:
configuring a global level configuration; and
configuring a plurality of system level configurations.

### Claim 4 (depends on 1)

The method of claim 1, wherein determining the collected business application programming interface call comprises:
generating a map of the plurality of systems that includes the parent system and the plurality of child systems; and
determining the collected business application programming interface call according to the map.

### Claim 5 (depends on 1)

The method of claim 1, wherein determining the collected business application programming interface call comprises:
determining whether a system level configuration is defined;
determining whether a global level configuration is defined; and
determining the collected business application programming interface call according to the system level configuration and the global level configuration.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
configuring the centralized provisioning system with a plurality of access settings for the plurality of systems;
determining a plurality of provisioning parameters for the plurality of systems according to the plurality of access settings; and
providing access to the user according to the plurality of provisioning parameters.

### Claim 7 (depends on 6)

The method of claim 6, wherein the plurality of access settings includes a global level setting and a plurality of system level settings.

### Claim 8 (depends on 6)

The method of claim 6, wherein the plurality of provisioning parameters includes at least one of a direct provisioning parameter and an indirect provisioning parameter.

### Claim 9 (depends on 1)

The method of claim 1, wherein the provisioning request corresponds to a plurality of business application programming interface calls, and wherein the collected business application programming interface call results in a reduced quantity of business application programming interface calls as compared to the plurality of business application programming interface calls.

### Claim 10 (depends on 1)

The method of claim 1, wherein the provisioning request corresponds to a request to access a plurality of business objects managed by the plurality of systems, and wherein providing access comprises:
providing access, to the user, to the plurality of business objects according to the collected business application programming interface call.

### Claim 11

A centralized provisioning system that reduces a quantity of business application programming interface calls in a hardware client-server environment, wherein the client and server both contain a processor and a memory, comprising:
a hardware server that implements the centralized provisioning system;
a configuration module, implemented by the hardware server, that configures the centralized provisioning system with a plurality of access definitions for a plurality of systems, wherein the plurality of systems includes a parent system and a plurality of child systems, wherein the plurality of systems implement a technical level and a business level abstracted above the technical level, wherein the plurality of systems exchange business data via a plurality of business application programming interfaces that are a set of interfaces to object-oriented programming methods that allow object-oriented access to the plurality of systems through the object-oriented programming methods according to a plurality of business object types, wherein the plurality of business application programming interfaces operate at the business level as opposed to the technical level, and wherein the plurality of business application programming interfaces are implemented and stored in the plurality of systems as a plurality of remote function call modules; and
a processing module, implemented by the hardware server, that receives a provisioning request for a user of a client system to access at least two of the plurality of child systems, that determines a collected business application programming interface call from the client system, according to the plurality of access definitions, and that determines whether the system in the provisioning request participates in central user administration,
if the system participates in central user administration, the collected business application programming interface call collects at least two business application programming interface calls to the at least two of the plurality of child systems into a single business application programming interface call to the parent system, and the hardware server provides access to the user to the at least two of the plurality of child systems according to the collected business application programming interface call to the parent system, and
if the system does not participate in central user administration, the hardware server performs non-central user administration provisioning for the system by making a business application programming interface real time agent call that provides access to the user.

### Claim 12 (depends on 11)

The centralized provisioning system of claim 11, wherein configuring the centralized provisioning system comprises:
configuring a global level configuration.

### Claim 13 (depends on 11)

The centralized provisioning system of claim 11, wherein configuring the centralized provisioning system comprises:
configuring a global level configuration; and
configuring a plurality of system level configurations.

### Claim 14 (depends on 11)

The centralized provisioning system of claim 11, wherein determining the collected business application programming interface call comprises:
generating a map of the plurality of systems that includes the parent system and the plurality of child systems; and
determining the collected business application programming interface call according to the map.

### Claim 15 (depends on 11)

The centralized provisioning system of claim 11, wherein determining the collected business application programming interface call comprises:
determining whether a system level configuration is defined;
determining whether a global level configuration is defined; and
determining the collected business application programming interface call according to the system level configuration and the global level configuration.

### Claim 16 (depends on 11)

The centralized provisioning system of claim 11, wherein the configuration module configures the centralized provisioning system with a plurality of access settings for the plurality of systems, and
wherein the processing module determines a plurality of provisioning parameters for the plurality of systems according to the plurality of access settings, and provides access to the user according to the plurality of provisioning parameters.

### Claim 17 (depends on 16)

The centralized provisioning system of claim 16, wherein the plurality of access settings includes a global level setting and a plurality of system level settings.

### Claim 18 (depends on 16)

The centralized provisioning system of claim 16, wherein the plurality of provisioning parameters includes at least one of a direct provisioning parameter and an indirect provisioning parameter.

### Claim 19 (depends on 11)

The centralized provisioning system of claim 11, wherein the provisioning request corresponds to a plurality of business application programming interface calls, and wherein the collected business application programming interface call results in a reduced quantity of business application programming interface calls as compared to the plurality of business application programming interface calls.

### Claim 20 (depends on 11)

The centralized provisioning system of claim 11, wherein the provisioning request corresponds to a request to access a plurality of business objects managed by the plurality of systems, and wherein providing access comprises:
providing access, to the user, to the plurality of business objects according to the collected business application programming interface call.

### Claim 21

A non-transitory computer program product, comprising a computer readable medium having a computer readable program code embodied therein, that when executed by a hardware server, reduce a quantity of business application programming interface calls in a hardware client-server environment, wherein the client and server both contain a processor and a memory, comprising:
a configuration module that configures the hardware server to implement a centralized provisioning system with a plurality of access definitions for a plurality of systems, wherein the plurality of systems includes a parent system and a plurality of child systems, wherein the plurality of systems implement a technical level and a business level abstracted above the technical level, wherein the plurality of systems exchange business data via a plurality of business application programming interfaces that are a set of interfaces to object-oriented programming methods that allow object-oriented access to the plurality of systems through the object-oriented programming methods according to a plurality of business object types, wherein the plurality of business application programming interfaces operate at the business level as opposed to the technical level, and wherein the plurality of business application programming interfaces are implemented and stored in the plurality of systems as a plurality of remote function call modules; and
a processing module that receives a provisioning request for a user of a hardware client system to access at least two of the plurality of child systems, that determines a collected business application programming interface call from the client system, according to the plurality of access definitions, and that determines whether the system in the provisioning request participates in central user administration,
if the system participates in central user administration, the collected business application programming interface call collects at least two business application programming interface calls to the at least two of the plurality of child systems into a single business application programming interface call to the parent system, and the hardware server provides access to the user to the at least two of the plurality of child systems according to the collected business application programming interface call to the parent system, and
if the system does not participate in central user administration, the hardware server performs non-central user administration provisioning for the system by making a business application programming interface real time agent call that provides access to the user.

### Claim 22 (depends on 21)

The non-transitory computer program product of claim 21, wherein:
the configuration module configures the centralized provisioning system with a plurality of access settings for the plurality of systems;
the processing module determines a plurality of provisioning parameters for the plurality of systems according to the plurality of access settings; and
the processing module provides access to the user according to the plurality of provisioning parameters.

### Claim 23 (depends on 22)

The non-transitory computer program product of claim 22, wherein the plurality of access settings includes a global level setting and a plurality of system level settings.

### Claim 24 (depends on 22)

The non-transitory computer program product of claim 22, wherein the plurality of provisioning parameters includes at least one of a direct provisioning parameter and an indirect provisioning parameter.

### Claim 25 (depends on 21)

The non-transitory computer program product of claim 21, wherein configuring the centralized provisioning system comprises:
configuring a global level configuration.

### Claim 26 (depends on 21)

The non-transitory computer program product of claim 21, wherein configuring the centralized provisioning system comprises:
configuring a global level configuration; and
configuring a plurality of system level configurations.

### Claim 27 (depends on 21)

The non-transitory computer program product of claim 21, wherein determining the collected business application programming interface call comprises:
generating a map of the plurality of systems that includes the parent system and the plurality of child systems; and
determining the collected business application programming interface call according to the map.

### Claim 28 (depends on 21)

The non-transitory computer program product of claim 21, wherein determining the collected business application programming interface call comprises:
determining whether a system level configuration is defined;
determining whether a global level configuration is defined; and
determining the collected business application programming interface call according to the system level configuration and the global level configuration.

### Claim 29 (depends on 21)

The non-transitory computer program product of claim 21, wherein the provisioning request corresponds to a plurality of business application programming interface calls, and wherein the collected business application programming interface call results in a reduced quantity of business application programming interface calls as compared to the plurality of business application programming interface calls.

### Claim 30 (depends on 21)

The non-transitory computer program product of claim 21, wherein the provisioning request corresponds to a request to access a plurality of business objects managed by the plurality of systems, and wherein providing access comprises:
providing access, to the user, to the plurality of business objects according to the collected business application programming interface call.
