MODELING AND MANAGING HETEROGENEOUS APPLICATIONS
First Claim
1. At a computer system within a computing environment, the computing environment including a plurality of different technologies for implementing distributed applications, a method for implementing a composite distributed application, the method comprising:
- an act of describing the components of a composite distributed application in a declarative model, including describing a plurality of different application parts of the composite distributed application;
an act of inserting one or more abstractions into the declarative model, each abstraction describing the intended behavior of a corresponding application part in an implementation independent manner, the abstractions extending the declarative model to make the declarative model executable;
an act of tagging each of the one or more abstractions with a label, each label including implementation specific details that indicate how the plurality of different technologies are to be used to implement the corresponding application part; and
an act of interpreting the declarative model to implement an executable instance of the composite distributed application, the executable instance of the composite distributed application implemented using the plurality of technologies in accordance with the implementation specific details included in the labels.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, and computer program products for modeling and managing heterogeneous applications. Application intent can be described in a relatively straight forward manner that abstracts underlying implementation details. Thus, application developers can develop applications without necessarily having to know extensive details of an underlying implementation environment. In any event, an application can be executed in different implementation environments without requiring changes to the corresponding model.
-
Citations
21 Claims
-
1. At a computer system within a computing environment, the computing environment including a plurality of different technologies for implementing distributed applications, a method for implementing a composite distributed application, the method comprising:
-
an act of describing the components of a composite distributed application in a declarative model, including describing a plurality of different application parts of the composite distributed application; an act of inserting one or more abstractions into the declarative model, each abstraction describing the intended behavior of a corresponding application part in an implementation independent manner, the abstractions extending the declarative model to make the declarative model executable; an act of tagging each of the one or more abstractions with a label, each label including implementation specific details that indicate how the plurality of different technologies are to be used to implement the corresponding application part; and an act of interpreting the declarative model to implement an executable instance of the composite distributed application, the executable instance of the composite distributed application implemented using the plurality of technologies in accordance with the implementation specific details included in the labels. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer program product for use at a computer system within a computing environment, the computing environment including a plurality of different technologies for implementing distributed applications, the computer program product for implement a method for implementing a composite distributed application, the computer program product comprising one or more physical storage media having stored thereon computer-executable instructions that, when executed at a processor, cause the computer system to perform the method including the following:
-
describe the components of a composite distributed application in a declarative model, including describing a plurality of different application parts of the composite distributed application; insert one or more abstractions into the declarative model, each abstraction describing the intended behavior of a corresponding application part in an implementation independent manner, the abstractions extending the declarative model to make the declarative model executable; tag each of the one or more abstractions with a label, each label including implementation specific details that indicate how the plurality of different technologies are to be used to implement the corresponding application part; and interpret the declarative model to implement an executable instance of the composite distributed application, the executable instance of the composite distributed application implemented using the plurality of technologies in accordance with the implementation specific details included in the labels. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. At a computer system, a method for describing the intended executable behavior of a composite distributed application in an implementation-independent manner, the method comprising:
an act of describing a composite distributed application in a declarative model, the declarative model having a plurality of model elements, each model element representing a portion of the intended executable behavior of the composite distributed application, description of the composite distributed application including at least; an act of describing a first application part of the composite distributed application, the first application part being a first specified type of application part, including; an act of declaring a first abstraction for the first application part, the first abstraction describing the intended execution behavior of the first application part; and an act of describing a second part of the composite distributed application, the second part being a second different specified type of application part, including; an act of declaring a second abstraction for the second application part, the second abstraction describing the intended execution behavior of the second application part. - View Dependent Claims (18, 19, 20, 21)
Specification