# US 10,768,900 B2 · Model-based service registry for software systems

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

- Number: US 10,768,900 B2
- Document ID: US10768900B2
- Status: Granted
- Kind: B2
- Application number: 16/210,060
- Filed: 2018-12-05
- Published: 2020-06-11
- Granted: 2020-09-08
- Earliest claimed: 2018-12-05
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Rouven Krebs; Steffen Koenig
- Web page: https://patentgrep.com/patent/US10768900B2

## CPC

- G06F 8/20: Software design
- G06F 8/35: model driven
- G06F 8/70: Software maintenance or management
- G06F 9/541: {via adapters, e.g. between incompatible applications}
- G06F 16/903: Querying (for retrieval from the web G06F16/953)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods, systems, and computer-readable storage media for receiving, by an operation controller, a call to trigger an operation, the call at least partially including an identifier associated with an operation signature, providing the operation signature based on the identifier, identifying, by the operation controller, an operation provider that provides the operation corresponding to the operation signature, validating, by the operation provider, one or more conditions for execution of the operation, and executing the operation to affect an entity within a landscape in response to the one or more conditions being valid.

## Claims

### Claim 1

A computer-implemented method for providing a model-based service registry for software systems, the method being executed by one or more processors and comprising:
receiving, by an operation controller, a call to trigger an operation to be executed for an entity within a landscape of multiple entities, the call at least partially comprising an identifier associated with an operation signature, the operation comprising computer-executable instructions executable to perform at least a portion of a service for entities of the landscape;
providing the operation signature based on the identifier, the operation signature comprising information indicating an operation provider to be called for execution of the operation, an operation type, and an operation identifier;
identifying, by the operation controller and based on the information of the operation signature, the operation provider that provides the operation, the operation provider being registered with in an operations registry within the operation controller by the operation provider, the registering comprising:
scanning the landscape based on a landscape model that is maintained by a landscape service that is separate from the operation controller, and
identifying, based on the scanning, one or more entities within the landscape, for which the operation provider can execute the operation, and in response, registering the operation in the operation registry;
validating, by the operation provider, one or more conditions for execution of the operation; and
executing by the operation provider, the operation to affect the entity within a landscape in response to the one or more conditions being valid.

### Claim 2 (depends on 1)

The method of claim 1, wherein scanning at least partially comprises:
receiving, by the landscape service and from the operations provider, a query for one or more operations that can be executed to affect the entity within the landscape; and
providing, by the landscape service, and in response to the query, a set of operations available for the entity based on the landscape model, the landscape model comprising a data model representative of the landscape, the set of operations comprising at least the operation.

### Claim 3 (depends on 2)

The method of claim 2, wherein the landscape service further comprises an operations model representing the operations registry comprising operations available for entities of the landscape.

### Claim 4 (depends on 1)

The method of claim 1, wherein the one or more conditions are based on one or more validations that define a state of one or more entities of the landscape for execution of the operation.

### Claim 5 (depends on 1)

The method of claim 1, wherein the operation provider is included in a plurality of operation providers registered with the operation controller.

### Claim 6 (depends on 1)

The method of claim 1, wherein the operation controller monitors execution of the operation.

### Claim 7

A non-transitory computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations for providing a model-based service registry for software systems, the operations comprising:
receiving, by an operation controller, a call to trigger an operation to be executed for an entity within a landscape of multiple entities, the call at least partially comprising an identifier associated with an operation signature, the operation comprising computer-executable instructions executable to perform at least a portion of a service for entities of the landscape;
providing the operation signature based on the identifier, the operation signature comprising information indicating an operation provider to be called for execution of the operation, an operation type, and an operation identifier;
identifying, by the operation controller and based on the information of the operation signature, the operation provider that provides the operation, the operation provider being registered with in an operations registry within the operation controller by the operation provider, the registering comprising:
scanning the landscape based on a landscape model that is maintained by a landscape service that is separate from the operation controller, and
identifying, based on the scanning, one or more entities within the landscape, for which the operation provider can execute the operation, and in response, registering the operation in the operation registry;
validating, by the operation provider, one or more conditions for execution of operation; and
executing, by the operation provider, the operation to affect the entity within a landscape in response to the one or more conditions being valid.

### Claim 8 (depends on 7)

The computer-readable storage medium of claim 7, wherein scanning at least partially comprises:
receiving, by the landscape service, a query for one or more operations that can be executed to affect the entity within the landscape; and
providing, by the landscape service, and in response to the query, a set of operations available for the entity based on the landscape model, the landscape model comprising a data model representative of the landscape, the set of operations comprising at least the operation.

### Claim 9 (depends on 8)

The computer-readable storage medium of claim 8, wherein the landscape service further comprises an operations model representing the operations registry comprising operations available for entities of the landscape.

### Claim 10 (depends on 7)

The computer-readable storage medium of claim 7, wherein the one or more conditions are based on one or more validations that define a state of one or more entities of the landscape for execution of the operation.

### Claim 11 (depends on 7)

The computer-readable storage medium of claim 7, wherein the operation provider is included in a plurality of operation providers registered with the operation controller.

### Claim 12 (depends on 7)

The computer-readable storage medium of claim 7, wherein the operation controller monitors execution of the operation.

### Claim 13

A system, comprising:
a computing device; and
a computer-readable storage device coupled to the computing device and having instructions stored thereon which, when executed by the computing device, cause the computing device to perform operations for providing a model-based service registry for software systems, the operations comprising:
receiving, by an operation controller, a call to trigger an operation to be executed for an entity within a landscape of multiple entities, the call at least partially comprising an identifier associated with an operation signature, the operation comprising computer-executable instructions executable to perform at least a portion of a service for entities of the landscape;
providing the operation signature based on the identifier, the operation signature comprising information indicating an operation provider to be called for execution of the operation, an operation type, and an operation identifier;
identifying, by the operation controller and based on the information of the operation signature, the operation provider that provides the operation, the operation provider being registered with in an operations registry within the operation controller by the operation provider, the registering comprising:
scanning the landscape based on a landscape model that is maintained by a landscape service that is separate from the operation controller, and
identifying, based on the scanning, one or more entities within the landscape, for which the operation provider can execute the operation, and in response, registering the operation in the operation registry;
validating, by the operation provider, one or more conditions for execution of the operation; and
executing, by the operation provider, the operation to affect the entity within a landscape in response to the one or more conditions being valid.

### Claim 14 (depends on 13)

The system of claim 13, wherein scanning at least partially comprises:
receiving, by the landscape service, a query for one or more operations that can be executed to affect the entity within the landscape; and
providing, by the landscape service, and in response to the query, a set of operations available for the entity based on the landscape model, the landscape model comprising a data model representative of the landscape, the set of operations comprising at least the operation.

### Claim 15 (depends on 14)

The system of claim 14, wherein the landscape service further comprises an operations model representing the operations registry comprising operations available for entities of the landscape.

### Claim 16 (depends on 13)

The system of claim 13, wherein the one or more conditions are based on one or more validations that define a state of one or more entities of the landscape for execution of the operation.

### Claim 17 (depends on 13)

The system of claim 13, wherein the operation provider is included in a plurality of operation providers registered with the operation controller.
