Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Regarding Step 1:
Claims 1-10 are directed towards a method, claims 11-15 are directed towards a manufacture, and claims 16-20 are directed towards an apparatus, which all fall into statutory categories.
Regarding Step 2A Prong 1:
Claims 1, 11, and 16 recite:
identifying an event associated with a set of one or more templates, wherein each template in the set comprises information for a corresponding resource configuration of a computing environment in information technology infrastructure;
performing a validation process in response to the identified event wherein the validation process validates a given template in the set of templates based at least in part on a comparison of the resource configuration corresponding to the given template to one or more characteristics associated with at least one user,
wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources;
enabling the given template to be selected by the at least one user based on a result of the validation process; and
automatically deploying one or more computing resources based on the resource configuration corresponding to the given template in response to a selection of the given template by the at least one user;
wherein the method is performed by at least one processing device comprising a processor coupled to a memory.
Steps (a) and (b) are mental processes that can be performed in the human mind, or by a human using pen and paper.
Regarding Step 2A Prong 2:
Claims 1, 11, and 16 recite additional elements, i.e. steps (c), (d), (e), and (f), computing environment, information technology infrastructure, computing resources, container, virtual machines, bare metal servers, software programs, and processing device.
Step (c) merely recites instructions to implement an abstract idea on a generic computer, or merely uses a generic computer or computer components as a tool to perform the abstract idea, thus is not a practical application under Prong 2, or amount to significantly more than the judicial exception under Step 2B (See MPEP 2106.05(f)).
Step (d) merely recites insignificant extra solution activity such as gathering, displaying, updating, transmitting and storing data which does not integrate the judicial exception into a practical application under Prong 2. According to the specification, “enabling the given template to be selected by the at least one user” is nothing more than displaying selectable items on an interface for the user to select (See MPEP 2106.05(g)). Under Step 2B, the courts have identified functions such as gathering, displaying, updating, transmitting and storing data as well-understood, routine, conventional activity, thus do not amount to significantly more than the judicial exception (See MPEP 2106.05(d)).
Step (e) merely applies the judicial exception or abstract idea. Therefore, this additional element does not integrate the judicial exception into a practical application under Prong 2, or amount to significantly more than the judicial exception under Step 2B (See MPEP 2106.05(f)).
Step (f) merely recites instructions to implement an abstract idea on a generic computer, or merely uses a generic computer or computer components as a tool to perform the abstract idea, thus is not a practical application under Prong 2, or amount to significantly more than the judicial exception under Step 2B (See MPEP 2106.05(f)).
Computing environment, information technology infrastructure, computing resources, container, virtual machines, bare metal servers, software programs, and processing device are recited at a high level of generality.
Regarding Step 2B:
The additional elements, considering them both individually and in combination, do not amount to significantly more than the judicial exception itself.
Regarding claims 2, 12, and 17, the claims recite: wherein the given template comprises information corresponding to at least one of: one or more types of computing resources to be deployed; and one or more characteristics associated with a given one of the one or more types of computing resources. The additional elements “computing resources” and “characteristics” are recited at a high level of generality. Therefore, the claims do not integrate the judicial exception into a practical application at Step 2A Prong 2, or recite additional elements that amount to significantly more than the judicial exception at Step 2B.
Regarding claims 3, 13, and 18, the claims recite: wherein the one or more characteristics associated with the at least one user further corresponds to at least one of: an availability of a set of computing resources comprising the one or more computing resources; one or more licenses associated with the set of computing resources; network information associated with the set of computing resources; and one or more credentials associated with the set of computing resources. The additional elements “one or more licenses”, “network information”, and “one or more credentials” are recited at a high level of generality. Therefore, the claims do not integrate the judicial exception into a practical application at Step 2A Prong 2, or recite additional elements that amount to significantly more than the judicial exception at Step 2B.
Regarding claims 4, 14, and 19, the claims recite: wherein the event comprises at least one of: a template being added to the set of templates; and at least one change to at least one template in the set of templates. The additional elements “template” and “at least one change” are recited at a high level of generality. Therefore, the claims do not integrate the judicial exception into a practical application at Step 2A Prong 2, or recite additional elements that amount to significantly more than the judicial exception at Step 2B.
Regarding claims 5, 15, and 20, the claims recite: wherein the enabling comprises: causing, in response to the given template being validated, an update to a user interface that enables the selection of the given template by the at least one user. The additional elements “an update to a user interface” and “enables the selection of the given template by the at least one user” are nothing more than insignificant extra solution activities, and are therefore not integrated into a practical application under Step 2A Prong 2. Furthermore, the additional elements do not amount to significantly more than the judicial exception at Step 2B.
Regarding claims 6, the claim recites: wherein the update to the user interface prevents the at least one user from selecting one or more invalid templates in a set of templates to deploy. The additional element “prevents the at least one user from selecting one or more invalid templates in a set of templates to deploy” is nothing more than an insignificant extra solution activity, and is therefore not integrated into a practical application under Step 2A Prong 2. Furthermore, the additional element does not amount to significantly more than the judicial exception at Step 2B.
Regarding claims 7, the claim recites: wherein the update to the user interface causes information to be presented indicating one or more reasons for an invalidation of at least one of the one or more invalid templates in the set of templates. The additional element “causes information to be presented” and “indicating one or more reasons” are nothing more than insignificant extra solution activities, and are therefore not integrated into a practical application under Step 2A Prong 2. Furthermore, the additional elements do not amount to significantly more than the judicial exception at Step 2B
Regarding claims 8, the claim recites: wherein the automatically deploying the one or more computing resources comprises: populating one or more fields of the given template based at least in part on the one or more characteristics. The additional element “populating one or more fields of the given template” is nothing more than an insignificant extra solution activity. The additional element “one or more characteristics” is recited at a high level of generality. Therefore, the claims do not integrate the judicial exception into a practical application at Step 2A Prong 2, or recite additional elements that amount to significantly more than the judicial exception at Step 2B.
Regarding claims 9, the claim recites: determining information that is missing from at least one field of the given template; and generating a request to obtain the missing information from the at least one user. The limitation “determining” is a function that can reasonably be performed in the human mind or by a human using pen and paper. The limitation “generating a request” is nothing more than an insignificant extra solution activity, and is therefore not integrated into a practical application under Step 2A Prong 2. Furthermore, the additional element does not amount to significantly more than the judicial exception at Step 2B.
Regarding claims 10, the claim recites: wherein the one or more computing resources correspond to at least one of: one or more containers; one or more virtual machines; and one or more bare metal servers. The additional elements “one or more containers”, “one or more virtual machines”, and “one or more bare metal servers” are recited at a high level of generality. Therefore, the claims do not integrate the judicial exception into a practical application at Step 2A Prong 2, or recite additional elements that amount to significantly more than the judicial exception at Step 2B.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1, 2, 3, 4, 10, 11, 12, 13, 14, 16, 17, 18, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Schwaninger (US 20140337830) in view of Welker (US11853435) and Thomson et al. (US11245592, Thomson hereinafter).
Regarding claim 1, Schwaninger discloses: A computer-implemented method comprising:
(see Schwaninger, paragraph [0007], “Various embodiments herein include at least one of systems methods, and software for automated template deployment to computing platforms. A deployment template includes at least one of binaries, configuration data, application data, and other data that is preconfigured and available for deployment to a computing platform. A deployment template may be instantiated on a target computing platform as an entire software system. In other embodiments, a deployment template may be configuration data, application data, and other data of a portion of a larger software system…”);
performing a validation process in response to the identified event, wherein the validation process validates a given template in the set of templates based at least in part on a comparison of the resource configuration corresponding to the given template to one or more characteristics associated with at least one user (see Schwaninger, paragraph [0030], “The deployment template method 400 may validate 408 the selected deployment template for deployment to the selected platform. Validation 408 may include transmitting a validation data request to an agent that executes on the selected platform to obtain validation data related to at least one validation rule. Validation rules may include determining whether the user has permission to deploy the selected deployment template on the selected deployment platform. For example, the user may enter a user ID (e.g., user name, user password), and validation 408 may use the ID to determine which deployment templates are available to the user…”);
enabling the given template to be selected by the at least one user based on a result of the validation process (see Schwaninger, paragraph [0031], “Following application of validation rules, validation 408 may include the agent receiving validation data in response to the validation data request, and applying the at least one validation rule to the received validation data to determine validation success or failure. If the selected deployment is not validated 410, the deployment template method 400 may provide 412 a message to entity regarding validation failure. If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform…”); and
automatically deploying the one or more computing resources based on the resource configuration corresponding to the given template in response to a selection of the given template by the at least one user (see Schwaninger, paragraph [0011], “In some embodiments, the deployment template agent program may respond to a request received via the network interface device by providing data representative of computing resources available within the computing platform…”); (see Schwaninger, paragraph [0031], “…If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform. Deployment 414 may include transmitting the selected deployment template to an agent that executes on the selected platform. Upon receiving the selected deployment template, the agent may instantiate the deployment template on the selected platform…”);
wherein the method is performed by at least one processing device comprising a processor coupled to a memory (see Schwaninger, paragraph [0032], “…One example computing device in the form of a computer 510, may include a processing unit 502, memory 504, removable storage 512, and non-removable storage 514…”);
Schwaninger does not appear to distinctly disclose:
identifying an event associated with a set of one or more templates, and
wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources;
However, Welker discloses:
identifying an event associated with a set of one or more templates (see Welker, [Col 5, Line 39], “…An exemplary method can include receiving an indication of an occurrence of a contextual event, identifying one or more response templates, identifying a modifiable element within the identified response template(s), selecting, from within a user specific nomenclature, a replacement element, modifying the response template by replacing the modifiable element with the replacement element to create a modified response template, and causing the modified response template to be displayed.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include event identification as taught by Welker for the result of more efficient template management.
Schwaninger as modified does not appear to distinctly disclose:
wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources.
However, Thomson discloses:
performing a validation process in response to the identified event (see Thomson, col 11 line 11, “…a request is received 502 to validate a template, such as a launch template or a resource parameter template. The request can be received through a console or an API, among other such options…”), wherein the validation process validates a given template in the set of templates based at least in part on a comparison of the resource configuration corresponding to the given template to one or more characteristics associated with at least one user (see Thomson, col 6 line 41, “…The user could then select an option to validate the template, whereby values for the template could be analyzed by a validation manager 122 in the resource environment with access to information about the architecture of the network as stored in an appropriate repository 124, as well as information for currently available resources as may be available through a resource manager 110 or other such source. The validation manager can perform the validation and then return notification of the validity or invalidity…”), (see Thomson, col 6 line 60, “…downstream APIs can be used to obtain properties for use in validation, such as by comparing valid values to values contained in the template to be validated…”), wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources (see Thomson, col 6 line 41), (see Thomson, col 6 line 60).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an availability of a set of computing resources as taught Thomson by for the result of preventing template deployment failures.
Regarding claim 2, Schwaninger discloses:
wherein the given template comprises information corresponding to at least one of: one or more types of computing resources to be deployed; and one or more characteristics associated with a given one of the one or more types of computing resources (see Schwaninger, paragraph [0007], “…A deployment template includes at least one of binaries, configuration data, application data, and other data that is preconfigured and available for deployment to a computing platform. A deployment template may be instantiated on a target computing platform as an entire software system. In other embodiments, a deployment template may be configuration data, application data, and other data of a portion of a larger software system…”);
Regarding claim 3, Schwaninger discloses:
wherein the one or more characteristics associated with the at least one user further corresponds to at least one of: (see Schwaninger, paragraph [0007], “...The GUI 300 may include a list of local systems detected 302 and a list of available templates 304. The GUI may include a Log In 306, where a user can enter a username and password. The username and password may be used to determine which templates a user may access.”);
Regarding claim 4, Schwaninger does not appear to distinctly disclose:
wherein the event comprises at least one of: a template being added to the set of templates; and at least one change to at least one template in the set of templates.
However, Welker discloses:
wherein the event comprises at least one of: a template being added to the set of templates; and at least one change to at least one template in the set of templates (see Welker, [Col 5, Line 39], “…An exemplary method can include receiving an indication of an occurrence of a contextual event, identifying one or more response templates, identifying a modifiable element within the identified response template(s), selecting, from within a user specific nomenclature, a replacement element, modifying the response template by replacing the modifiable element with the replacement element to create a modified response template, and causing the modified response template to be displayed.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include the creation and modification of templates as taught by Welker for the result of more practical template management.
Regarding claim 10, Schwaninger discloses:
wherein the one or more computing resources correspond to at least one of: one or more containers; one or more virtual machines; and one or more bare metal servers (see Schwaninger, paragraph [0010], “Some embodiments include a deployment template agent program installed on a computing platform. The computing platform may be a physical hardware system on which an operating system is present. However, in other embodiments, the computing platform on which the deployment template agent program is present may be a virtual machine that exists in a virtualized computing environment. Regardless, references to computing platforms herein are with regard to an operating platform on which an application executes, which may include one or more computing devices and virtual machines…”);
Regarding claim 11, Schwaninger discloses: A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:
(see Schwaninger, paragraph [0007], “Various embodiments herein include at least one of systems methods, and software for automated template deployment to computing platforms. A deployment template includes at least one of binaries, configuration data, application data, and other data that is preconfigured and available for deployment to a computing platform. A deployment template may be instantiated on a target computing platform as an entire software system. In other embodiments, a deployment template may be configuration data, application data, and other data of a portion of a larger software system…”);
to perform a validation process in response to the identified event, wherein the validation process validates a given template in the set of templates based at least in part on a comparison of the resource configuration corresponding to the given template to one or more characteristics associated with at least one user (see Schwaninger, paragraph [0030], “The deployment template method 400 may validate 408 the selected deployment template for deployment to the selected platform. Validation 408 may include transmitting a validation data request to an agent that executes on the selected platform to obtain validation data related to at least one validation rule. Validation rules may include determining whether the user has permission to deploy the selected deployment template on the selected deployment platform. For example, the user may enter a user ID (e.g., user name, user password), and validation 408 may use the ID to determine which deployment templates are available to the user…”);
to enable the given template to be selected by the at least one user based on a result of the validation process (see Schwaninger, paragraph [0031], “Following application of validation rules, validation 408 may include the agent receiving validation data in response to the validation data request, and applying the at least one validation rule to the received validation data to determine validation success or failure. If the selected deployment is not validated 410, the deployment template method 400 may provide 412 a message to entity regarding validation failure. If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform…”); and
to automatically deploy one or more computing resources based on the resource configuration corresponding to the given template in response to a selection of the given template by the at least one user (see Schwaninger, paragraph [0011], “In some embodiments, the deployment template agent program may respond to a request received via the network interface device by providing data representative of computing resources available within the computing platform…”); (see Schwaninger, paragraph [0031], “…If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform. Deployment 414 may include transmitting the selected deployment template to an agent that executes on the selected platform. Upon receiving the selected deployment template, the agent may instantiate the deployment template on the selected platform…”);
Schwaninger does not appear to distinctly disclose:
identifying an event associated with a set of one or more templates, and
wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources;
However, Welker discloses:
identifying an event associated with a set of one or more templates (see Welker, [Col 5, Line 39], “…An exemplary method can include receiving an indication of an occurrence of a contextual event, identifying one or more response templates, identifying a modifiable element within the identified response template(s), selecting, from within a user specific nomenclature, a replacement element, modifying the response template by replacing the modifiable element with the replacement element to create a modified response template, and causing the modified response template to be displayed.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include event identification as taught by Welker for the result of more efficient template management.
Schwaninger as modified does not appear to distinctly disclose:
wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources.
However, Thomson discloses:
performing a validation process in response to the identified event (see Thomson, col 11 line 11, “…a request is received 502 to validate a template, such as a launch template or a resource parameter template. The request can be received through a console or an API, among other such options…”), wherein the validation process validates a given template in the set of templates based at least in part on a comparison of the resource configuration corresponding to the given template to one or more characteristics associated with at least one user (see Thomson, col 6 line 41, “…The user could then select an option to validate the template, whereby values for the template could be analyzed by a validation manager 122 in the resource environment with access to information about the architecture of the network as stored in an appropriate repository 124, as well as information for currently available resources as may be available through a resource manager 110 or other such source. The validation manager can perform the validation and then return notification of the validity or invalidity…”), (see Thomson, col 6 line 60, “…downstream APIs can be used to obtain properties for use in validation, such as by comparing valid values to values contained in the template to be validated…”), wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources (see Thomson, col 6 line 41), (see Thomson, col 6 line 60).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an availability of a set of computing resources as taught Thomson by for the result of preventing template deployment failures.
Regarding claim 12, Schwaninger discloses:
wherein the given template comprises information corresponding to at least one of: one or more types of computing resources to be deployed; and one or more characteristics associated with a given one of the one or more types of computing resources (see Schwaninger, paragraph [0007], “…A deployment template includes at least one of binaries, configuration data, application data, and other data that is preconfigured and available for deployment to a computing platform. A deployment template may be instantiated on a target computing platform as an entire software system. In other embodiments, a deployment template may be configuration data, application data, and other data of a portion of a larger software system…”);
Regarding claim 13, Schwaninger discloses:
wherein the one or more characteristics associated with the at least one user further corresponds to at least one of: (see Schwaninger, paragraph [0007], “...The GUI 300 may include a list of local systems detected 302 and a list of available templates 304. The GUI may include a Log In 306, where a user can enter a username and password. The username and password may be used to determine which templates a user may access.”);
Regarding claim 14, Schwaninger does not appear to distinctly disclose:
wherein the event comprises at least one of: a template being added to the set of templates; and at least one change to at least one template in the set of templates.
However, Welker discloses:
wherein the event comprises at least one of: a template being added to the set of templates; and at least one change to at least one template in the set of templates (see Welker, [Col 5, Line 39], “…An exemplary method can include receiving an indication of an occurrence of a contextual event, identifying one or more response templates, identifying a modifiable element within the identified response template(s), selecting, from within a user specific nomenclature, a replacement element, modifying the response template by replacing the modifiable element with the replacement element to create a modified response template, and causing the modified response template to be displayed.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include the creation and modification of templates as taught by Welker for the result of more practical template management.
Regarding claim 16, Schwaninger discloses: An apparatus comprising: at least one processing device comprising a processor coupled to a memory; the at least one processing device being configured:
(see Schwaninger, paragraph [0007], “Various embodiments herein include at least one of systems methods, and software for automated template deployment to computing platforms. A deployment template includes at least one of binaries, configuration data, application data, and other data that is preconfigured and available for deployment to a computing platform. A deployment template may be instantiated on a target computing platform as an entire software system. In other embodiments, a deployment template may be configuration data, application data, and other data of a portion of a larger software system…”);
to perform a validation process in response to the identified event, wherein the validation process validates a given template in the set of templates based at least in part on a comparison of the resource configuration corresponding to the given template to one or more characteristics associated with at least one user (see Schwaninger, paragraph [0030], “The deployment template method 400 may validate 408 the selected deployment template for deployment to the selected platform. Validation 408 may include transmitting a validation data request to an agent that executes on the selected platform to obtain validation data related to at least one validation rule. Validation rules may include determining whether the user has permission to deploy the selected deployment template on the selected deployment platform. For example, the user may enter a user ID (e.g., user name, user password), and validation 408 may use the ID to determine which deployment templates are available to the user…”);
to enable the given template to be selected by the at least one user based on a result of the validation process (see Schwaninger, paragraph [0031], “Following application of validation rules, validation 408 may include the agent receiving validation data in response to the validation data request, and applying the at least one validation rule to the received validation data to determine validation success or failure. If the selected deployment is not validated 410, the deployment template method 400 may provide 412 a message to entity regarding validation failure. If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform…”); and
to automatically deploy one or more computing resources based on the resource configuration corresponding to the given template in response to a selection of the given template by the at least one user (see Schwaninger, paragraph [0011], “In some embodiments, the deployment template agent program may respond to a request received via the network interface device by providing data representative of computing resources available within the computing platform…”); (see Schwaninger, paragraph [0031], “…If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform. Deployment 414 may include transmitting the selected deployment template to an agent that executes on the selected platform. Upon receiving the selected deployment template, the agent may instantiate the deployment template on the selected platform…”);
Schwaninger does not appear to distinctly disclose:
identifying an event associated with a set of one or more templates, and
wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources;
However, Welker discloses: identifying an event associated with a set of one or more templates (see Welker, [Col 5, Line 39], “…An exemplary method can include receiving an indication of an occurrence of a contextual event, identifying one or more response templates, identifying a modifiable element within the identified response template(s), selecting, from within a user specific nomenclature, a replacement element, modifying the response template by replacing the modifiable element with the replacement element to create a modified response template, and causing the modified response template to be displayed.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include event identification as taught by Welker for the result of more efficient template management.
Schwaninger as modified does not appear to distinctly disclose:
wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources.
However, Thomson discloses:
performing a validation process in response to the identified event (see Thomson, col 11 line 11, “…a request is received 502 to validate a template, such as a launch template or a resource parameter template. The request can be received through a console or an API, among other such options…”), wherein the validation process validates a given template in the set of templates based at least in part on a comparison of the resource configuration corresponding to the given template to one or more characteristics associated with at least one user (see Thomson, col 6 line 41, “…The user could then select an option to validate the template, whereby values for the template could be analyzed by a validation manager 122 in the resource environment with access to information about the architecture of the network as stored in an appropriate repository 124, as well as information for currently available resources as may be available through a resource manager 110 or other such source. The validation manager can perform the validation and then return notification of the validity or invalidity…”), (see Thomson, col 6 line 60, “…downstream APIs can be used to obtain properties for use in validation, such as by comparing valid values to values contained in the template to be validated…”), wherein at least one of the one or more characteristics corresponds to an availability of a set of computing resources comprising one or more computing resources (see Thomson, col 6 line 41), (see Thomson, col 6 line 60).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an availability of a set of computing resources as taught Thomson by for the result of preventing template deployment failures.
Regarding claim 17, Schwaninger discloses:
wherein the given template comprises information corresponding to at least one of: one or more types of computing resources to be deployed; and one or more characteristics associated with a given one of the one or more types of computing resources (see Schwaninger, paragraph [0007], “…A deployment template includes at least one of binaries, configuration data, application data, and other data that is preconfigured and available for deployment to a computing platform. A deployment template may be instantiated on a target computing platform as an entire software system. In other embodiments, a deployment template may be configuration data, application data, and other data of a portion of a larger software system…”);
Regarding claim 18, Schwaninger discloses:
wherein the one or more characteristics associated with the at least one user further corresponds to at least one of: more credentials associated with the set of computing resources (see Schwaninger, paragraph [0007], “...The GUI 300 may include a list of local systems detected 302 and a list of available templates 304. The GUI may include a Log In 306, where a user can enter a username and password. The username and password may be used to determine which templates a user may access.”);
Regarding claim 19, Schwaninger does not appear to distinctly disclose:
wherein the event comprises at least one of: a template being added to the set of templates; and at least one change to at least one template in the set of templates.
However, Welker discloses:
wherein the event comprises at least one of: a template being added to the set of templates; and at least one change to at least one template in the set of templates (see Welker, [Col 5, Line 39], “…An exemplary method can include receiving an indication of an occurrence of a contextual event, identifying one or more response templates, identifying a modifiable element within the identified response template(s), selecting, from within a user specific nomenclature, a replacement element, modifying the response template by replacing the modifiable element with the replacement element to create a modified response template, and causing the modified response template to be displayed.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include the creation and modification of templates as taught by Welker for the result of more practical template management.
Claims 5, 6, 15, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Schwaninger (US 20140337830) in view of Welker (US 11853435) and Thomson et al. (US11245592, Thomson hereinafter) as applied to claims 1, 11, and 16 above, and further in view of Dew et al. (US 20180301222, Dew hereinafter).
Regarding claim 5, Schwaninger discloses:
wherein the enabling comprises: causing, in response to the given template being validated, (see Schwaninger, paragraph [0031], “Following application of validation rules, validation 408 may include the agent receiving validation data in response to the validation data request, and applying the at least one validation rule to the received validation data to determine validation success or failure. If the selected deployment is not validated 410, the deployment template method 400 may provide 412 a message to entity regarding validation failure. If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform…”);
Schwaninger as modified does not appear to distinctly disclose:
an update to a user interface.
However, Dew discloses: an update to a user interface (see Dew, paragraph [0098], “Offers visual cues as to compliance or failure to comply with data entry elements”); (see Dew, paragraph [0099], “Offers immediate validation as to correct and complete data entry”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an update to a user interface as taught by Dew for the result of having a superior user experience.
Regarding claim 6, Schwaninger discloses:
wherein (see Schwaninger, paragraph [0031], “Following application of validation rules, validation 408 may include the agent receiving validation data in response to the validation data request, and applying the at least one validation rule to the received validation data to determine validation success or failure. If the selected deployment is not validated 410, the deployment template method 400 may provide 412 a message to entity regarding validation failure. If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform…”);
Schwaninger as modified does not appear to distinctly disclose:
an update to a user interface.
However, Dew discloses: an update to a user interface (see Dew, paragraph [0098], “Offers visual cues as to compliance or failure to comply with data entry elements”); (see Dew, paragraph [0099], “Offers immediate validation as to correct and complete data entry”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an update to a user interface as taught by Dew for the result of having a superior user experience.
Regarding claim 15, Schwaninger discloses: wherein the enabling comprises:
causing, in response to the given template being validated, (see Schwaninger, paragraph [0031], “Following application of validation rules, validation 408 may include the agent receiving validation data in response to the validation data request, and applying the at least one validation rule to the received validation data to determine validation success or failure. If the selected deployment is not validated 410, the deployment template method 400 may provide 412 a message to entity regarding validation failure. If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform…”);
Schwaninger as modified does not appear to distinctly disclose:
an update to a user interface.
However, Dew discloses:
an update to a user interface (see Dew, paragraph [0098], “Offers visual cues as to compliance or failure to comply with data entry elements”); (see Dew, paragraph [0099], “Offers immediate validation as to correct and complete data entry”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an update to a user interface as taught by Dew for the result of having a superior user experience.
Regarding claim 20, Schwaninger discloses: wherein the enabling comprises:
causing, in response to the given template being validated, (see Schwaninger, paragraph [0031], “Following application of validation rules, validation 408 may include the agent receiving validation data in response to the validation data request, and applying the at least one validation rule to the received validation data to determine validation success or failure. If the selected deployment is not validated 410, the deployment template method 400 may provide 412 a message to entity regarding validation failure. If the selected deployment is validated 410, the deployment template method 400 may deploy 414 the selected deployment template to the selected platform…”);
Schwaninger as modified does not appear to distinctly disclose:
an update to a user interface.
However, Dew discloses: an update to a user interface (see Dew, paragraph [0098], “Offers visual cues as to compliance or failure to comply with data entry elements”); (see Dew, paragraph [0099], “Offers immediate validation as to correct and complete data entry”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an update to a user interface as taught by Dew for the result of having a superior user experience.
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Schwaninger (US 20140337830) in view of Welker (US 11853435), Thomson et al. (US11245592, Thomson hereinafter) and Dew as applied to claim 6 above, and further in view of Mohanty (US 20230065530).
Regarding claim 7, Schwaninger as modified does not appear to distinctly disclose:
wherein the update to the user interface causes information to be presented indicating one or more reasons for an invalidation of at least one of the one or more invalid templates in the set of templates.
However, Mohanty discloses:
wherein (see Mohanty, paragraph [0443], “In another embodiment, if the response from the first CI/CD instance indicates that the first pipeline template is not successfully validated (e.g., validation failure; first pipeline template is invalidated), the response may indicate a reason for the validation failure.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include a reason for a template invalidation taught by Mohanty for the result of having a superior user experience.
The combination of Schwaninger, Welker, and Mohanty does not appear to distinctly disclose:
an update to a user interface.
However, Dew discloses: an update to a user interface (see Dew, paragraph [0098], “Offers visual cues as to compliance or failure to comply with data entry elements”); (see Dew, paragraph [0099], “Offers immediate validation as to correct and complete data entry”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include an update to a user interface as taught by Dew for the result of having a superior user experience.
Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Schwaninger (US 20140337830) in view of Welker (US 11853435) and Thomson et al. (US11245592, Thomson hereinafter) as applied to claim 1 above, and further in view of Berg et al. (US 20100211885, Berg hereinafter).
Regarding claim 8, Schwaninger as modified does not appear to distinctly disclose:
wherein the automatically deploying the one or more computing resources comprises: populating one or more fields of the given template based at least in part on the one or more characteristics.
However, Berg discloses:
wherein the automatically deploying the one or more computing resources comprises: populating one or more fields of the given template based at least in part on the one or more characteristics (see Berg et al., paragraph [0058], “…Users save information that they would ordinarily type into the different fields in a Studio page (i.e. Name, Business Name, Phone #, Website, etc.) into different profiles corresponding to their different businesses or different users of the account (i.e. Joe's Plumbing Profile, Joe's Consulting Profile, etc.). Once a profile is created, a user has the ability to apply that stored information to a design template by selecting the appropriate profile in their account and clicking "Apply User Profile" in the Studio. Clicking this button causes the Studio or the server to auto-populate the appropriate fields in the selected template design with the correct information…”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include template field population as taught by Berg for the result of having a superior user experience.
Claim 9 is rejected under 35 U.S.C. 103 as being unpatentable over Schwaninger (US 20140337830) in view of Welker (US 11853435) and Thomson et al. (US11245592, Thomson hereinafter) as applied to claim 1 above, and further in view of Forman (US 20130054431).
Regarding claim 9, Schwaninger as modified does not appear to distinctly disclose:
determining information that is missing from at least one field of the given template; and generating a request to obtain the missing information from the at least one user.
However, Forman discloses:
determining information that is missing from at least one field of the given template; and generating a request to obtain the missing information from the at least one user (see Forman, paragraph [0007], “ Another embodiment of the invention is a method for using shared hardware, software and storage resources that communicate through a network to facilitate grant reporting that may include steps of: receiving information from a user; identifying a form to be completed; using user submitted data and previously stored data to automatically generate a form with data input; presenting the automatically generated form to the user for review and additional data input; prompting user to review and provide missing information; receiving additional data from the user; using a compliance review engine to review the form for compliance and to identify gaps or suggestions and, based on the review, prompting the user for additional information or preparing the file for submission…”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified an automatic template deployment system as taught by Schwaninger to include a way to request missing template information as taught by Forman for the result of ensuring that required template fields are complete prior to deployment.
Response to Arguments
Applicant’s argument: Prior art does not teach the newly amended claims.
Examiner’s response: Applicant’s argument is moot as the newly amended claim is responded to in the above rejection. New art is used to teach the newly amended claim. Thomson discloses performing a validation based on comparing a user to an available set of computer resources. Therefore, the prior art of reference teaches the newly amended claim.
Applicant’s argument: Newly amended claim overcomes the 101 rejection.
Examiner’s response: Applicant’s argument is considered but is not persuasive. Comparing a resource configuration against characteristics associated with a user is a process that can be performed in the human mind, or by a human using pen and paper. Furthermore, the limitations “automatically deploying the one or more computing resources based on the resource configuration” is merely applying the abstract idea. The claims as a whole recite an abstract idea and do not integrate the judicial exception into a practical application or recite significantly more than the judicial exception. Therefore, the claims do not overcome the 101 rejection.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Joshua Tran whose telephone number is (571)272-5460. The examiner can normally be reached on M-F 9-5.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Hyung Sough can be reached on (571)272-6799. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/JOSHUA TRAN/Examiner, Art Unit 2192
/S. Sough/SPE, Art Unit 2192