Service composition environment
AssigneeMicrosoft Corporation
InventorsJoshy Joseph, Anand C. Ramanathan, Arun Chandrasekhar
Life of this patent
Estimating the term…
Abstract
A service composition environment is used to create a collaborative application that links services, composite services as well as with other collaborative applications. An application that is created using the service composition environment may include any combination of composite services, individual services and aggregated composite services. Metadata is obtained from the services that includes functional and non-functional policies, governance regulations, management aspects, and programmable binding information that relates to the services.
Claims19
A computer-implemented method for providing a virtualized collaboration environment, comprising:
- defining services within a service composition environment;
- wherein each of the services relate to an individual service;
- or a composite service that combines at least two or more individual services;
- or an aggregated composite service that combines at least two or more composite services;
- obtaining information relating to each of the services;
- wherein the information includes functional and non-functional policies, governance regulations, management aspects, and programmable binding information that relates to each of the services;
- obtaining information relating to the execution environment;
- wherein the information includes functional and non-functional policies, governance regulations, management aspects, and programmable binding information that relates to a hosting environment;
- defining routing information to link each of the services;
- defining a collaborative context that includes rules that are used during runtime to control the exchange and the routing of messages between the services in the service composition environment;
- wherein defining the routing information to link each of the services and defining the collaborative context further comprises applying a design pattern to the services;
- wherein the design pattern includes routing rules that define allowed connections between the services;
- creating a definition of the environment based on the services;
- the obtained information;
- the routing information;
- and the collaborative context;
- and
- adding and integrating a second virtualized collaboration environment to the virtualized collaboration environment;
- and when added the second virtual collaborative environment discovers the existing virtualized collaboration environment's context and routing rules and integrates itself with the virtualized environment's context and routing rules such that the second virtualized collaboration environment becomes a part of the existing virtualized collaboration environment.
A computer-readable memory having computer-executable instructions for providing a graphical tool for defining a context, the instructions comprising:
- displaying a work area that is used to define participants;
- routing rules and collaborative context rules for the context;
- wherein the participants include at least two aggregated composite services;
- displaying participants for the context within the work area;
- displaying routing information within the work area;
- wherein the routing information connects the participants;
- and
- displaying the collaborative context rules within the work area;
- wherein the collaborative context rules control the exchange and the routing of messages between the participants in the context;
- wherein the routing information and the collaborative context rules further comprises applying a design pattern to the services;
- wherein the design pattern includes routing rules that define allowed connections between the services;
- wherein when a second defined context is added, the second defined context discovers the existing defined context's context and routing rules and integrates itself with the defined context's context and routing rules such that the second defined context becomes a part of the defined context.
An apparatus, comprising:
- a processor and a computer-readable medium;
- an operating environment stored on the computer-readable medium and executing on the processor;
- a display;
- and
- an application operating under the control of the operating environment and operative to perform actions, including:
- editing services within a service composition environment to create a virtualized collaboration environment;
- wherein the services within the service composition environment comprise an individual service and at least two aggregated composite services that aggregate at least a composite service with at least another composite service;
- determining when a service is added and when the service is added:
- obtaining metadata relating to the service;
- wherein the metadata includes functional and non-functional policies, governance regulations, management aspects, and programmable binding information that relates to the service;
- editing routing rules;
- wherein the routing rules link each of the services;
- editing a collaborative context that controls the exchange and the routing of messages between the services;
- wherein the routing rules and the collaborative context further comprises applying a design pattern to the services;
- wherein the design pattern includes routing rules that define allowed connections between the services;
- adding and integrating a second virtualized collaboration environment to the virtualized collaboration environment;
- and when added the second virtual collaborative environment discovers the existing virtualized collaboration environment's context and routing rules and integrates itself with the virtualized environment's context and routing rules such that the second virtualized collaboration environment becomes a part of the virtualized collaboration environment;
- generating an XML definition that defines the services, the routing rules;
- properties relating to the services and the collaborative context;
- and the second virtual collaborative environment.
Dependencies are inferred from the claim text.