IP Library Granted Patent US 8,930,441
Granted Patent B2
US 8,930,441 · App. 12/871,372 · Granted Jan 6, 2015

Architecture for modeled pattern based user interfaces

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,930,441
App. No.
12/871,372
Granted
Jan 6, 2015
Kind
B2
Abstract

A computer system includes a UI designer client that runs on a client device and is configured to enable creation of UI models. A client engine runs on a client device and is configured to initiate requests for the UI models, receive the UI models in response to the requests and interpret and render the UI models at runtime. A UI runtime server client is located on a server and is configured to interface with the client engine to receive and process the requests for the UI models from the client engine. A repository is located on the server and is configured to interface with the UI designer client and store the UI models as created using the UI designer client and interface with the UI runtime server client to deliver requested UI models to the UI runtime server client for interpretation and rendering by the client engine.

Claims (60)

1. A computer system comprising:

at least one memory storing instructions; and

at least one processor configured to execute the instructions which, when executed, implement a user interface (UI) designer client, a client engine, a UI runtime server client, a repository and a customized view engine, wherein:

the user interface designer client is arranged and configured to run on a first client device on a client side of a network to enable creation of UI models;

the client engine is arranged and configured to run on a second client device on the client side of the network as a plug in application to a browser application without using a Java stack to initiate requests for one or more of the UI models and to initiate requests for one or more host-based applications, receive the UI models in response to the requests and interpret and render the UI models at runtime;

the UI runtime server client is located on a server on the server side of the network and is arranged and configured to interface with the client engine to receive and process the requests for the UI models from the client engine and to receive and process the requests for the host-based applications including a common output for the host-based applications; and

the repository is located on the server on the server side of the network and is arranged and configured to:

interface with the UI designer client and store the UI models as created using the UI designer client and to store the host-based applications, and

interface with the UI runtime server client to deliver requested UI models to the UI runtime server client for interpretation and rendering by the client engine,

wherein the client engine further comprises the customized view engine that is configured to provide a customized output of the host-based applications to a particular user, wherein the customized output is different from the common output of the host-based applications received from the UI runtime server.

2. The computer system of claim 1 wherein:

the client engine comprises multiple client engines with each of the client engines associated with a different customer;

the UI runtime server client is arranged and configured to interface with each of the client engines to receive and process the requests for the UI models from the client engines; and

the repository is arranged and configured to maintain customer specific content in a layer separate from the UI models and to deliver requested UI models and customer specific content to the UI runtime server client for interpretation and rendering by a specific client engine.

3. The computer system of claim 1 wherein the UI models are configured to be interpreted and rendered by the client engine independent of a technology used by the client engine.

4. The computer system of claim 1 wherein:

the at least one processor executes the instructions which, when executed, implement a client controller, a server controller and a backend synchronization manager;

each of the UI models comprises a data model;

the client engine comprises the client controller; and

the UI runtime server client comprises the server controller and the backend synchronization manager, the backend synchronization manager being arranged and configured to synchronize the client controller and the server controller using the UI data models.

5. The computer system of claim 1 wherein the UI model created using the UI designer client are the same UI models that are interpreted and rendered by the client engine.

6. The computer system of claim 1 wherein the customized output for the particular user includes at least one custom pane.

7. A non-transitory recordable storage medium having recorded and stored thereon instructions that, when executed, perform the actions of:

running a user interface (UI) designer client on a first client device on a client side of a network, the UI designer client configured to enable creation of UI models;

running a client engine on a second client device on the client side of the network as a plug in application to a browser application without using a Java stack, the client engine configured to initiate requests for one or more of the UI models and to initiate requests for one or more host-based applications, receive the UI models in response to the requests and interpret and render the UI models at runtime;

running a UI runtime server client that is located on a server on a server side of the network, the UI runtime server client being configured to interface with the client engine to receive and process the requests for the UI models from the client engine and to receive and process the requests for the host-based applications including a common output for the host-based applications; and

managing a repository that is located on the server on the server side of the network, the repository being configured to:

interface with the UI designer client and store the UI models as created using the UI designer client and to store the host-based applications, and

interface with the UI runtime server client to deliver requested UI models to the UI runtime server client for interpretation and rendering by the client engine,

wherein the client engine further comprises a customized view engine that is configured to provide a customized output of the host-based applications to a particular user, wherein the customized output is different from the common output of the host-based applications received from the UI runtime server.

8. The non-transitory recordable storage medium of claim 7 wherein:

the client engine comprises multiple client engines with each of the client engines associated with a different customer;

the UI runtime server client is arranged and configured to interface with each of the client engines to receive and process the requests for the UI models from the client engines; and

the repository is arranged and configured to maintain customer specific content in a layer separate from the UI models and to deliver requested UI models and customer specific content to the UI runtime server client for interpretation and rendering by a specific client engine.

9. The non-transitory recordable storage medium of claim 7 wherein the UI models are configured to be interpreted and rendered by the client engine independent of a technology used by the client engine.

10. The non-transitory recordable storage medium of claim 7 wherein:

each of the UI models comprises a data model;

the client engine comprises a client controller; and

the UI runtime server client comprises a server controller and a backend synchronization manager, the backend synchronization manager being arranged and configured to synchronize the client controller and the server controller using the UI data models.

11. The non-transitory recordable storage medium of claim 7 wherein the UI model created using the UI designer client are the same UI models that are interpreted and rendered by the client engine.

12. The non-transitory recordable storage medium of claim 7 wherein the customized output for the particular user includes at least one custom pane.

13. A computer system comprising:

at least one memory storing instructions; and

at least one processor configured to execute the instructions which, when executed, implement multiple client engine, a user interface (UI) runtime server client, a repository and a customized view engine, wherein:

each of the multiple client engines is associated with a different customer and each of the client engines is arranged and configured to run on a client device on the client side of the network as a plug in application to a browser application without using a Java stack and to initiate requests for one or more UI models and to initiate requests for one or more host-based applications, receive the UI models in response to the requests and interpret and render the UI models at runtime;

the UI runtime server client is located on a server on the server side of the network and is arranged and configured to interface with each of the client engines to receive and process the requests for the UI models from the client engines and to receive and process the requests for the host-based applications including a common output for the host-based applications; and

the repository is located on the server on the server side of the network and is arranged and configured to:

store the UI models and to store the host-based applications, and

interface with the UI runtime server client to deliver requested UI models to the UI runtime server client for interpretation and rendering by a requesting client engine,

wherein each of the client engines further comprises the customized view engine that is configured to provide a customized output of the host-based applications to a particular user, wherein the customized output is different from the common output of the host-based applications received from the UI runtime server.

14. The computer system of claim 13 wherein the repository is arranged and configured to:

maintain customer specific content in a layer separate from the UI models; and

interface with the UI runtime server client to deliver requested UI models and customer specific content to the UI runtime server client for interpretation and rendering by the requesting client engine.

15. The computer system of claim 13 wherein:

the at least one processor executes the instructions which, when executed, implement a client controller, a server controller and a backend synchronization manager;

each of the UI models comprises a data model;

the client engine comprises the client controller; and

the UI runtime server client comprises the server controller and the backend synchronization manager, the backend synchronization manager being arranged and configured to synchronize the client controller and the server controller using the UI data models.

16. The computer system of claim 13 wherein the UI runtime server client is configured to interpret and render the UI models.

17. The computer system of claim 13 wherein the customized output for the particular user includes at least one custom pane.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2010
From: DEMANT, HILMAR; SCHERTEL, FRANK; GRAMMATIKAKIS, IOANNIS; HEILER, JAN; DROLL, SEBASTIAN; WEBER, THORSTEN; VIOL, MARKUS; RAUH, ALEXANDER; FITZER, JOACHIM; SATTLER, JUERGEN
To: SAP AG
Reel/Frame 025513/0705 →