Hierarchical constraint resolution for application properties, configuration, and behavior
First Claim
Patent Images
1. A server system, comprising:
- one or more computers;
an application executing on the computers to receive and process client requests; and
a constraint system to constrain operation of the application according to multiple different constraints, the constraint system comprising a hierarchy of constraint layers, with each constraint layer containing a set of one or more constraints that customize operation of the application.
1 Assignment
0 Petitions
Accused Products
Abstract
A software architecture permits efficient construction of server software applications for many diverse domains. The architecture implements and enforces constraints that customize the behavior of the application. The constraints can be imposed by a variety of sources (e.g., legal, operating company, customers, end users, cultural customs, etc.). A constraint resolver resolves the constraints at run time, or prior to run time, so that the application behaves and appears appropriately for the given set of constraints.
40 Citations
29 Claims
-
1. A server system, comprising:
-
one or more computers;
an application executing on the computers to receive and process client requests; and
a constraint system to constrain operation of the application according to multiple different constraints, the constraint system comprising a hierarchy of constraint layers, with each constraint layer containing a set of one or more constraints that customize operation of the application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A server system comprising:
-
one or more computers; and
a multi-layer application executing on the computers to handle client requests, the multi-layer application comprising;
a problem-solving logic layer to process the client requests according to an associated problem domain, the problem-solving logic layer containing one or more execution models to perform various sets of tasks when processing the client requests, the problem-solving logic layer producing replies to the client requests;
a presentation layer to structure the replies produced by the problem-solving logic layer in a manner that makes them presentable on various client devices; and
a constraint hierarchy of multiple constraint layers, each constraint layer containing a set of one or more constraints that specify how the replies should be structured to customize the replies for specific sets of conditions. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 25, 26, 28)
-
-
17. A computer software architecture embodied on one or more computer-readable media, comprising:
-
a constraint hierarchy of multiple constraint layers, each constraint layer containing a set of one or more constraints that constrain operation of an application, the constraint layers being organized within the constraint hierarchy such that a first constraint layer limits a second constraint layer but the second constraint layer does not limit the first constraint layer; and
a constraint resolver to resolve the constraint layers so that operation of the application is constrained by a set of the constraints in the constraint layers.
-
-
24. A method comprising:
-
storing a hierarchy of constraints, each constraint being configured to constrain operation of a server application; and
evaluating an operation of the server application in view of the hierarchy of constraints to modify operation according to the constraints in the hierarchy.
-
-
27. A method for operating a server application, comprising:
-
receiving requests from multiple clients;
processing the requests to produce replies;
structuring the reply to define how the reply will appear when presented at the client; and
constraining said structuring according to a set of one or more constraints to customize appearance of the reply, the constraints comprising;
legally mandated constraints to constrain appearance of the reply according to legal principles;
company-mandated constraints to constrain appearance of the reply according to preferences of a company that operates the application;
customer constraints to constrain appearance of the reply according to preferences of customers;
cultural constraints to constrain appearance of the reply according to cultural aspects; and
end user constraints to constrain appearance of the reply according to preferences of an end user.
-
-
29. One or more computer-readable media comprising computer-executable instructions that, when executed, direct an application server to:
-
generate replies in response to client requests; and
structure the replies according to a hierarchy of constraints to customize the replies, the constraints comprising a combination of one or more following constraints;
legally mandated constraints to constrain appearance of a reply according to legal principles;
company-mandated constraints to constrain appearance of the reply according to preferences of a company that operates the application;
customer constraints to constrain appearance of the reply according to preferences of customers;
cultural constraints to constrain appearance of the reply according to cultural aspects; and
end user constraints to constrain appearance of the reply according to preferences of an end user.
-
Specification