Configuring and allocating software product technical services
First Claim
1. At a computer system, the computer system including a processor and system memory, a method for configuring the offering of technical assistance services for a developing software product, the developing software product being developed by a plurality of different product development groups, one or more other software developers developing other software products that are to depend on at least a portion of the developing software product, the method comprising:
- an act of receiving a service policy configuration defining one or more service models for the developing software product, the developing software product having a functionality defined by the plurality of different development groups, changes to the functionality of the developing software product being determined by at least one group of the plurality of different development groups, such that changes to the functionality of the developing software product are determined independent of the one or more other software developers developing other software products that are to depend on at least a portion of the developing software product, each service model corresponding to a specified type of software developer that is developing another software product that is to depend on at least a portion of the functionality of the developing software product, each service model defining a type and quantity of technical assistance services to be offered to a software developer when it is determined that the software developer is of the corresponding specified type of software developer;
an act of receiving a software product taxonomy for the developing software product, the software product taxonomy including one or more themes corresponding to different portions of the developing software product'"'"'s functionality, the software product taxonomy indicating one or more technical assistance services for each theme that are to be available to the other software developers developing software products that are to depend on the developing software product;
an act of receiving a service profile for an entity that is developing another software product that is to depend on the developing software product, the profile including context on how the entity intends to design the other software product to depend on the functionality of the developing software product, wherein changes to the functionality of the developing software product cause changes in the context on how the entity intends to design the other software product;
an act of identifying a type of the software developer corresponding to the entity;
an act of assigning a specified service model, from among the defined one or more service models, to the entity based on the identified type of software developer corresponding to the entity;
an act of the processor identifying portions of the developing software product'"'"'s functionality that are to be used to cause the other software product to depend on the developing software product as indicated in the context;
an act of identifying one or more themes applicable to the entity based on the identified portions of the developing software product'"'"'s functionality; and
an act of authorizing the entity to request technical assistance services associated with the identified one or more themes in accordance with identified service model in response to receiving the service profile.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, and computer program products for configuring and allocating software product technical services. A service policy configuration defining one or more service models for the developing software product is received. A software product taxonomy, including one or more themes and corresponding technical services, for the developing software product is received. A service profile, including context on how the entity intends to utilize the developing software product, is received. The entity is authorized to utilize technical services associated with the developing software product in accordance with one of the service models in response to receiving the service profile. In other embodiments, a service request selection is made from a menu that lists themes and technical services associated with a software product. The service request is allocated to the identified service provider based on request allocation criteria. An entity is at least notified of a received answer.
-
Citations
20 Claims
-
1. At a computer system, the computer system including a processor and system memory, a method for configuring the offering of technical assistance services for a developing software product, the developing software product being developed by a plurality of different product development groups, one or more other software developers developing other software products that are to depend on at least a portion of the developing software product, the method comprising:
-
an act of receiving a service policy configuration defining one or more service models for the developing software product, the developing software product having a functionality defined by the plurality of different development groups, changes to the functionality of the developing software product being determined by at least one group of the plurality of different development groups, such that changes to the functionality of the developing software product are determined independent of the one or more other software developers developing other software products that are to depend on at least a portion of the developing software product, each service model corresponding to a specified type of software developer that is developing another software product that is to depend on at least a portion of the functionality of the developing software product, each service model defining a type and quantity of technical assistance services to be offered to a software developer when it is determined that the software developer is of the corresponding specified type of software developer; an act of receiving a software product taxonomy for the developing software product, the software product taxonomy including one or more themes corresponding to different portions of the developing software product'"'"'s functionality, the software product taxonomy indicating one or more technical assistance services for each theme that are to be available to the other software developers developing software products that are to depend on the developing software product; an act of receiving a service profile for an entity that is developing another software product that is to depend on the developing software product, the profile including context on how the entity intends to design the other software product to depend on the functionality of the developing software product, wherein changes to the functionality of the developing software product cause changes in the context on how the entity intends to design the other software product; an act of identifying a type of the software developer corresponding to the entity; an act of assigning a specified service model, from among the defined one or more service models, to the entity based on the identified type of software developer corresponding to the entity; an act of the processor identifying portions of the developing software product'"'"'s functionality that are to be used to cause the other software product to depend on the developing software product as indicated in the context; an act of identifying one or more themes applicable to the entity based on the identified portions of the developing software product'"'"'s functionality; and an act of authorizing the entity to request technical assistance services associated with the identified one or more themes in accordance with identified service model in response to receiving the service profile. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. At a computer system, the computer system including a processor and system memory, a method for providing technical assistance services for a developing software product, the developing software product being developed by a plurality of different product development groups, one or more other software developers developing other software products that are to depend on at least a portion of the developing software product, the technical assistance service allocated to a software developer to assist the software developer in developing a dependent software product, the method comprising:
-
an act of a service allocation module receiving a service request for technical assistance services from a software developer that is developing another software product that is depend on at least a portion of the functionality of the developing software product, the service allocation module controlling the allocation of service requests to a plurality of different service providers, the developing software product having a functionality defined by the plurality of different development groups, changes to the functionality of the developing software product being determined by at least one group of the plurality of different development groups, such that changes to the functionality of the developing software product is determined independent of the one or more other software developers developing other software products that are to depend on at least a portion of the developing software product and wherein changes to the functionality of the developing software product cause changes in the technical assistance; an act of accessing request allocation criteria for the software developer, at least one request allocation criterion included in the service request, at least one request allocation criterion maintained at the service allocation module; an act of the processor identifying an optimum service provider, from among the plurality of service providers, for servicing the service request by matching the accessed request allocation criteria and service provider characteristics to provide a match in accordance with a routing algorithm; an act of sending the service request to the optimum service provider; an act of receiving an answer to the to the service request from the identified service provider, the answer is based at least in part on the service provider'"'"'s expertise with respect to the at least one portion of the developing software product'"'"'s functionality that the other software product is to depend on; and an act of at least notifying the software developer of the existence of the received answer. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer program product for use at a computer system, the computer program product for implementing a method for allocating software product technical services for a developing software product to an appropriate service provider, the computer program product comprising one or more computer-readable storage media having stored thereon computer-executable instructions that, when executed by a processor, cause the computer system to perform the following:
-
receive a service request for technical assistance services from a software developer that is developing another software product that is depend on at least a portion of the functionality of the developing software product, the service allocation module controlling the allocation of service requests to a plurality of different service providers, the developing software product having a functionality defined by the plurality of different development groups, changes to the functionality of the developing software product being determined by at least one group of the plurality of different development groups, such that changes to the functionality of the developing software product is determined independent of the one or more other software developers developing other software products that are to depend on at least a portion of the developing software product and wherein changes to the functionality of the developing software product cause changes in the technical assistance; access request allocation criteria for the software developer, at least one request allocation criterion included in the service request, at least one request allocation criterion maintained at the service allocation module; identify an optimum service provider, from among the plurality of service providers, for servicing the service request by matching the accessed request criteria and service provider characteristics to provide a match in accordance with a routing algorithm; send the service request to the optimum service provider; receive an answer to the to the service request from the identified service provider, the answer is based at least in part on the service provider'"'"'s expertise with respect to the at least one portion of the developing software product'"'"'s functionality that the other software product is to depend on; and at least notify the software developer of the existence of the received answer. - View Dependent Claims (19, 20)
-
Specification