IP Library Patent Application 11617495
Patent Application
App. No. 11/617,495

Using Status Models with Status Transitions in a Computer System

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 None
App. No.
11/617,495
Abstract

A design-time status schema model describes the progress of a data object through a computing process. The status schema model includes status variables, processing actions and constraints for performing actions. The status schema model also may describe permitted changes to a status variable in response to performing an action. At runtime, the status schema model is used to control processing performed by, or on, an instance of a data object corresponding to the status schema model.

Claims (52)

1 . A computer program product tangibly embodied in computer-readable medium for controlling actions in a computer-based process, the computer program product comprising:

a status schema model that is defined at design-time, stored in computer-readable medium and includes a precondition for performing an action and status transitions that are permitted to result from performance of the action by the data object node, wherein:

the precondition identifies how a status affects whether the action is to be allowed to be performed at runtime by a data object node instance having the status,

one of the status transitions identifies a first status value of a status variable to be set for the data object node based on performance of the action, and

another one of the status transitions identifies a second, different status value of the status variable to be set for the data object node based on the performance of the action; and

instructions stored in computer-readable medium that, when executed, perform operations comprising:

creating a status schema instance for a particular data object node instance being used in a computer-based process, the status schema instance corresponding to the status schema model, and the data object node instance including values for variables and methods capable of being performed by the data object node instance;

based on the precondition and the status of the data object node instance, determining whether a particular action is allowed to be performed by the data object node instance;

receiving a status value of a status variable to be set, the received value being one of the first status value or the second status value; and

in response to a determination that the particular action is allowed, setting the status variable of the data object node instance to have the received status value.

2 . The computer program product of claim 1 further comprising instructions stored in computer-readable medium that, when executed, determine which of the first and second values of the status variable is to be set and set the status variable of the data object node instance to have the determined status value.

3 . The computer program product of claim 2 wherein the status schema model includes a condition for selecting one of the status transitions.

4 . The computer program product of claim 2 wherein the determination of a status value for the status variable is made by the data object node instance.

5 . The computer program product of claim 1 wherein:

the determination of a status value for the status variable is made by a runtime component, and

the received status value is sent by the runtime component.

6 . The computer program product of claim 1 wherein:

the status schema model corresponds to a data object node, and

the data object node instance corresponds to the data object node.

7 . The computer program product of claim 1 wherein the status of the data object node instance comprises a status variable and a particular status value, the particular status value being one of a set of possible status values for the status variable.

8 . The computer program product of claim 1 wherein the particular action corresponds to a method of the data object node instance.

9 . The computer program product of claim 1 wherein the particular action corresponds to at least one status value in the set of possible status values for the status variable.

10 . The computer program product of claim 1 wherein the status schema model further comprises a synchronizer element representing:

a runtime determination of whether a status value of a source status variable has reached a predetermined status value, and

in response to a determination that the status value of the source status variable has reached the predetermined status value, setting a target status value for a target status variable to a predetermined status value, wherein the target status variable is a different status variable than the source status variable.

11 . The computer program product of claim 10 further comprising instructions, that when executed, perform operations comprising:

making a runtime determination of whether a status value of the source status variable in the data object node instance has reached a predetermined status value, and

in response to a determination that the status value of the source status variable has reached the predetermined status value, setting a second status value for the second, different status variable to a predetermined status value in the data object node instance.

12 . The computer program product of claim 1 wherein the status schema model further comprises a synchronizer element representing setting, programmatically without direct human intervention, a target status value for a target status variable to a predetermined status value when a source status value of a set of possible status values for a source status variable is set to a predetermined status value, wherein the source status variable is a different status variable than the target status variable.

13 . A computer-implemented method for controlling actions in a computer-based process, the method comprising:

accessing status schema model that is defined at design-time, stored in computer-readable medium and includes a precondition for performing an action and status transitions that are permitted to result from performance of the action by the data object node, wherein:

the precondition identifies a status required for the action to be allowed to be performed at runtime by a data object node instance having the status,

one of the status transitions identifies a first status value of a status variable to be set for the data object node based on performance of the action, and

another one of the status transitions identifies a second, different status value of the status variable to be set for the data object node based on the performance of the action; and

instructions stored in a computer-readable medium that, when executed, perform operations comprising:

creating a status schema instance for a particular data object node instance being used in a computer-executed process, the status schema instance corresponding to the status schema model, and the data object node instance including values for variables and methods capable of being performed by the data object node instance;

based on the precondition and the status of the data object node instance, determining whether a particular action is allowed to be performed by the data object node instance;

receiving a status value of a status variable to be set, the status value being one of the first and second values of the status variable is to be set; and

in response to a determination that the particular action is allowed, setting the status variable of the data object node instance to have the received status value.

14 . The method of claim 13 wherein the determination of a status value for the status variable is made based on status information in the status schema model.

15 . The method of claim 13 wherein the determination of a status value for the status variable is made by the data object node instance.

16 . The method of claim 13 wherein the determination of a status value for the status variable is made by a runtime component.

17 . The method of claim 13 wherein:

the status schema model corresponds to a data object node, and

the data object node instance corresponds to the data object node.

18 . The method of claim 13 wherein the status of the data object node instance comprises a status variable and a particular status value, the particular status value being one of a set of possible status values for the status variable.

19 . The method of claim 13 wherein the status schema model further comprises a synchronizer element representing:

a runtime determination of whether a status value of a source status variable has reached a predetermined status value, and

in response to a determination that the status value of the source status variable has reached the predetermined status value, set a target status value for a target status variable to a predetermined status value, wherein the target status variable is a different status variable than the source status variable.

20 . The method of claim 19 further comprising:

at runtime determining whether a status value of the source status variable in the data object node instance has reached a predetermined status value, and

in response to a determination that the status value of the source status variable has reached the predetermined status value, set a second status value for the second, different status variable to a predetermined status value in the data object node instance.

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 Mar 30, 2007
From: KRAFT, FRANK MICHAEL; PECHT-SEIBERT, GUENTER; MEYER, KLAUS; THIMMEL, BERNHARD; BARDROFF, PATRICK JOSEF; SCHILBERTH, GREGOR; SADIQ, WASIM
To: SAP AG
Reel/Frame 019108/0099 →