Platform for distributed applications
First Claim
1. At a computer system including at least one processor and a memory, in a computer networking environment including a plurality of computing systems, a computer-implemented method for providing an application model to deploy and manage composite applications, the method comprising:
- an act of instantiating an application design interface that is configured to display composite application components and one or more relationships between the components;
an act of accessing an application manifest that includes the components and component relationships of the application, wherein each component includes information specifying how communication is to be conducted with the component, specifying a list of imports and exports for the component, specifying a communication standard, and specifying a required level of performance for communication with the component such that, at deployment and runtime, resources may be allocated at runtime to ensure the required level of performance for communication will be met;
an act of the application design interface providing a set of canonical application patterns that allow users to configure the components of the composite application according to a predefined pattern;
an act of displaying the composite application'"'"'s components and component relationships in the instantiated visual application design interface according to the application manifest; and
providing a set of extensions to an integrated development environment (IDE), the set of extensions including a visual modeling environment and a set of IDE integration synchronizers to coordinate changes between the components and the application model.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments are directed to providing an application model to deploy and manage composite applications and to providing model-driven software coding assistance. In an embodiment, a computer system instantiates an application design interface that is configured to display composite application components and relationships between the components. Each component includes information specifying how communication is to be conducted with the component. The computer system accesses an application manifest that includes the components and component relationships of the application. The computer system displays the composite application'"'"'s components and component relationships in the instantiated visual application design interface according to the application manifest.
-
Citations
19 Claims
-
1. At a computer system including at least one processor and a memory, in a computer networking environment including a plurality of computing systems, a computer-implemented method for providing an application model to deploy and manage composite applications, the method comprising:
-
an act of instantiating an application design interface that is configured to display composite application components and one or more relationships between the components; an act of accessing an application manifest that includes the components and component relationships of the application, wherein each component includes information specifying how communication is to be conducted with the component, specifying a list of imports and exports for the component, specifying a communication standard, and specifying a required level of performance for communication with the component such that, at deployment and runtime, resources may be allocated at runtime to ensure the required level of performance for communication will be met; an act of the application design interface providing a set of canonical application patterns that allow users to configure the components of the composite application according to a predefined pattern; an act of displaying the composite application'"'"'s components and component relationships in the instantiated visual application design interface according to the application manifest; and providing a set of extensions to an integrated development environment (IDE), the set of extensions including a visual modeling environment and a set of IDE integration synchronizers to coordinate changes between the components and the application model. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer program product for implementing a method for providing model-driven software coding assistance, the computer program product comprising one or more computer-readable storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of the computing system, cause the computing system to perform the method, the method comprising:
-
an act of accessing an application manifest that includes software components and one or more relationships between the components, each component including information specifying how communication is to be conducted with the component, specifying a list of imports and exports for the component, specifying a communication standard, and specifying a required level of performance for communication with the component such that, at deployment and runtime, resources may be allocated at runtime to ensure the required level of performance for communication will be met, and wherein the manifest is editable by a user; an act of receiving, through an application design interface, a user input indicating that at least one of a plurality of components is to be implemented as part of the composite application, the application design interface providing a set of canonical application patterns that allow users to configure the components of the composite application according to a predefined pattern; providing a set of extensions to an integrated development environment (IDE), the set of extensions including a visual modeling environment and a set of IDE integration synchronizers to coordinate changes between the components and the composite application; an act of determining one or more potential implementation options that are to be presented to the user as selectable options based on the components and relationships of the application manifest; and an act of displaying the determined potential options for selection by the user. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A computer system comprising the following:
-
one or more processors; system memory; one or more computer-readable storage media having stored thereon computer-executable instructions that, when executed by the one or more processors, causes the computing system to perform a method for providing an application model to deploy and manage composite applications, the method comprising the following; an act of instantiating an application design interface that is configured to display composite application components and one or more relationships between the components; an act of accessing an application manifest that includes the components and component relationships of the application, wherein each component includes information specifying how communication is to be conducted with the component, specifying a list of imports and exports for the component, specifying a communication standard, and specifying a required level of performance for communication with the component such that, at deployment and runtime, resources may be allocated at runtime to ensure the required level of performance for communication will be met; an act of the application design interface providing a set of canonical application patterns that allow users to configure the components of the composite application according to a predefined pattern, wherein the composite application is modifiable after the canonical pattern has been applied using software code; and an act of displaying the composite application'"'"'s components and component relationships in the instantiated visual application design interface according to the application manifest; and providing a set of extensions to an integrated development environment (IDE), the set of extensions including a visual modeling environment and a set of IDE integration synchronizers to coordinate changes between the components and the application model.
-
Specification