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 .
Response to Arguments
Applicant’s arguments filed 04/15/2026 on page 9 of Remarks regarding the rejection under 35 U.S.C. 101 with respect to claims 1-18 have been fully considered but they are not persuasive. See updated rejection below.
Beginning on page 9 of Remarks, Applicant asserts that under 101 Step 2A Prong One, claim 1 is not directed to an abstract idea but rather a technological process involving intelligent orchestration in distributed computing environments. However, Examiner respectfully disagrees. MPEP 2106.04(a)(2)(III)(c) talks about mental processes on a generic computer. Also, see, MPEP 2106.04(d), 2106.05(f) and 2106.5(g). The above mentioned sections of the MPEP set forth that a claim may recite a mental process even with the use of a generic computer. The determining steps taken to determine if a computing environment is to operate better if a new container is instantiated are steps that can be performed mentally perhaps with the aid of pen and paper and the automatic generation based on the predicted future status, a deployment configuration are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f).
Applicant asserts that under 101 Step 2A Prong Two, claim 1 is not directed to the judicial exception. However, Examiner respectfully disagrees. See MPEP 2106.04(d) and 2106.05(f). The above mentioned sections of the MPEP set forth that a claim may recite a mental process even with the use of a generic computer. Specifically, the claims amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools) to automatically perform the mental process. Also, see MPEP 2106.05(g). The additional elements of "receiving container instantiation data" and “receiving computer environment context data amount to mere data gathering and data storage, respectively, which are insignificant extra-solution activities that do not integrate a judicial exception into a practical application. See MPEP 2106.05(d)(II) to see that receiving data are insignificant extra-solution activities that are well-understood, routine, and conventional.
Applicant’s arguments on pages 12-13 regarding the rejection under 35 U.S.C. 103 with respect to claims 1-18 have been fully considered but are moot. New references Saffar and Lev-Ran have been incorporated below to teach the newly presented limitations.
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-18 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Regarding Claim 1,
Claim 1 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 1 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: The limitations:
“[applying an artificial intelligence algorithm] to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set, [wherein the AI algorithm] considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;”
“determining, [by machine logic and based,] at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated;”
“[automatically] generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“checking encryption settings and certificates to be installed;”
“incorporating corresponding security rules into the deployment configuration; and”
As drafted, under their broadest reasonable interpretation, cover concepts performed in human mind (including an observation, evaluation, judgement, or opinion, e.g., determining, generating, checking, incorporating). The above limitations in the context of this claim encompass, inter alia, determining a predicted future status, determining if the environment is to operate better, generating a deployment configuration, checking encryption settings, incorporating security rules (corresponding to mental processes which can be done mentally or by pen and paper).
Step 2A Prong Two Analysis: The judicial exceptions are not integrated into a practical application.
The limitations:
“applying an artificial intelligence algorithm [to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set,] wherein the AI algorithm [considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;]”
“[determining,] by machine logic and based, [at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated;]”
“automatically generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“automatically instantiating, in the computing environment and based, at least in part, upon the container instantiation data set, a first container of the first type.”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm and machine learning (e.g., by using these elements as tools).
The limitations:
“receiving a container instantiation data set that includes the data needed to instantiate at least a first type of container;”
“receiving a computing environment context data set including information relevant to computing operations currently being performed in a computer environment, with the computer environment context data set including information indicative of at least first internal factor;”
“[utilizing a code repository to identify which code element is appropriate for a new mode of activity and if a required code element is not found in the code repository,] the Al algorithm sends a notification to develop the required code element;”
As drafted, amount to insignificant extra-solution activities, which do not integrate a judicial exception into a practical application. For example, the additional elements of
"receiving a data set" and “sending a notification” amount to mere data gathering and data storage, respectively, which are insignificant extra-solution activities that do not integrate a judicial exception into a practical application. See MPEP 2106.05(g).
Step 2B Analysis: The claim does not include additional elements that are sufficient to
amount to significantly more than the judicial exception.
The limitations:
“applying an artificial intelligence algorithm [to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set,] wherein the AI algorithm [considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;]”
“[determining,] by machine logic and based, [at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated;]”
“automatically generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“automatically instantiating, in the computing environment and based, at least in part, upon the container instantiation data set, a first container of the first type.”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
As discussed above with respect to integration of the abstract idea into a practical application, all of the additional elements are insignificant extra-solution activities or mere instructions to apply an exception. (i.e., the additional element describes a unit for applying the abstract ideas). Insignificant extra-solution activities and mere instructions to apply an exception cannot provide an inventive concept. Moreover, receiving, communicating, and storing data are insignificant extra-solution activities that are well-understood, routine, and conventional. See MPEP 2106.05(d)(II) ("The courts have recognized the following computer functions as well-understood, routine, and conventional functions ... i. Receiving or transmitting data over a network") (citing OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015)).
The claim is not patent eligible.
Regarding Claim 2,
Claim 2 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 2 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: Please see the corresponding analysis of Claim 1.
Step 2A Prong Two Analysis: The judicial exceptions are not integrated into a practical application.
The limitations:
“wherein the container instantiation data set includes a container image file.”
As drafted, amount to insignificant extra-solution activities, which do not integrate a judicial exception into a practical application. For example, the additional elements of
"receiving a data set" amount to mere data gathering and data storage, respectively, which
are insignificant extra-solution activities that do not integrate a judicial exception into a
practical application. See MPEP 2106.05(g).
Step 2B Analysis: The claim does not include additional elements that are sufficient to
amount to significantly more than the judicial exception. As discussed above with respect to
integration of the abstract idea into a practical application, all of the additional elements are
insignificant extra-solution activities or mere instructions to apply an exception. (i.e., the
additional element describes a unit for applying the abstract ideas). Insignificant extra-solution
activities and mere instructions to apply an exception cannot provide an inventive concept.
Moreover, receiving, communicating, and storing data are insignificant extra-solution activities
that are well-understood, routine, and conventional. See MPEP 2106.05(d)(II) ("The courts have
recognized the following computer functions as well-understood, routine, and conventional
functions ... i. Receiving or transmitting data over a network") (citing OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015)).
The claim is not patent eligible.
Regarding Claim 3,
Claim 3 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 3 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: The limitations:
“[applying the artificial intelligence algorithm] to predict a codebase from a set of repositories;”
“[automatically] identifying a set of unit test(s) to be performed;”
“identifying appropriate codes and security rules from the set of repositories;”
As drafted, under their broadest reasonable interpretation, cover concepts performed in human mind (including an observation, evaluation, judgement, or opinion, e.g., predicting, identifying). The above limitations in the context of this claim encompass, inter alia, predicting a codebase and identifying unit tests, codes and security rules (corresponding to mental processes which can be done mentally or by pen and paper).
Step 2A Prong Two Analysis: The judicial exceptions are not integrated into a practical application.
The limitations:
“applying the artificial intelligence algorithm to [predict a codebase from a set of repositories;]”
“automatically [identifying a set of unit test(s) to be performed;]”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
The limitations:
“creating a first microservice; and”
“automatically deploying the first microservice.”
As drafted, amount to insignificant extra-solution activities, which do not integrate a judicial exception into a practical application. For example, the additional elements of “creating a microservice” and “deploying the first microservice” amount to selecting a particular data source or type of data to be manipulated, respectively, which are insignificant extra-solution activities that do not integrate a judicial exception into a practical application. See MPEP 2106.05(g).
Step 2B Analysis: The claim does not include additional elements that are sufficient to
amount to significantly more than the judicial exception.
The limitations:
“applying the artificial intelligence algorithm to [predict a codebase from a set of repositories;]”
“automatically [identifying a set of unit test(s) to be performed;]”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
As discussed above with respect to integration of the abstract idea into a practical application, all of the additional elements are insignificant extra-solution activities or mere instructions to apply an exception. (i.e., the additional element describes a unit for applying the abstract ideas). Insignificant extra-solution activities and mere instructions to apply an exception cannot provide an inventive concept. Moreover, selecting a particular data source or type of data to be manipulated are insignificant extra-solution activities that are well-understood, routine, and conventional. See 2106.05(g)(iii) ("The courts have recognized the following computer functions as well-understood, routine, and conventional functions ... iii. Selecting information, based on types of information and availability of information in a power-grid environment, for collection, analysis and display”) (citing Electric Power Group, LLC v. Alstom S.A., 830 F.3d 1350, 1354-55, 119 USPQ2d 1739, 1742 (Fed. Cir. 2016)).
The claim is not patent eligible.
Regarding Claim 4,
Claim 4 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 4 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: The limitations:
“[using historical learning] to identify pattern of change indicated by a computer environment contextual data set.”
As drafted, under their broadest reasonable interpretation, cover concepts performed in human mind (including an observation, evaluation, judgement, or opinion, e.g., identifying). The above limitations in the context of this claim encompass, inter alia, identifying pattern of change (corresponding to mental processes which can be done mentally or by pen and paper).
Step 2A Prong Two Analysis: The judicial exceptions are not integrated into a practical application.
The limitations:
“using historical learning [to identify pattern of change indicated by a computer environment contextual data set.]”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using machine learning (e.g., by using these elements as tools).
Step 2B Analysis: The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
The limitations:
“using historical learning [to identify pattern of change indicated by a computer environment contextual data set.]”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using machine learning (e.g., by using these elements as tools).
The claim is not patent eligible.
Regarding Claim 5,
Claim 5 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 5 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: The limitations:
“[applying the artificial intelligence algorithm] to predict system requirements.”
As drafted, under their broadest reasonable interpretation, cover concepts performed in human mind (including an observation, evaluation, judgement, or opinion, e.g., predicting). The above limitations in the context of this claim encompass, inter alia, predicting system requirements (corresponding to mental processes which can be done mentally or by pen and paper).
Step 2A Prong Two Analysis: The judicial exceptions are not integrated into a practical application.
The limitations:
“applying the artificial intelligence algorithm [to predict system requirements.]”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
Step 2B Analysis: The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception.
The limitations:
“applying the artificial intelligence algorithm [to predict system requirements.]”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
The claim is not patent eligible.
Regarding Claim 6,
Claim 6 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 6 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: The limitations:
“predicting functional requirements;”
“predicting non-functional requirements;”
“predicting security requirements;”
“predicting a number of users to use; and”
“predicting a workflow sequence.”
As drafted, under their broadest reasonable interpretation, cover concepts performed in human mind (including an observation, evaluation, judgement, or opinion, e.g., predicting). The above limitations in the context of this claim encompass, inter alia, predicting requirements, a number and a sequence (corresponding to mental processes which can be done mentally or by pen and paper).
Step 2A Prong Two Analysis: Please see the corresponding analysis of Claim 1.
Step 2B Analysis: The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
Regarding Claim 7,
Claim 7 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 7 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: The limitations:
“[applying an artificial intelligence (AI) algorithm] to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set, [wherein the AI algorithm] considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;”
“determining, [by machine logic and based,] at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated;”
“[automatically] generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“checking encryption settings and certificates to be installed;”
“incorporating corresponding security rules into the deployment configuration; and”
As drafted, under their broadest reasonable interpretation, cover concepts performed in human mind (including an observation, evaluation, judgement, or opinion, e.g., checking, determining, predicting). The above limitations in the context of this claim encompass, inter alia, checking security related aspects for effective network traffic, determining a predicted future status, predicting a codebase, determining if the environment is to operate better, (corresponding to mental processes which can be done mentally or by pen and paper).
Step 2A Prong Two Analysis: The judicial exceptions are not integrated into a practical application.
The limitations:
“applying an artificial intelligence (AI) algorithm [to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set,] wherein the AI algorithm [considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;]”
“[determining,] by machine logic and based, [at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated; and]”
“automatically generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“automatically instantiating, in the computing environment and based, at least in part, upon the container instantiation data set, a first container of the first type.”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
The limitations:
“receiving a container instantiation data set that includes the data needed to instantiate at least a first type of container;”
“receiving a computing environment context data set including information relevant to computing operations currently being performed in a computer environment, with the computer environment context data set including information indicative of at least first external factor;”
As drafted, amount to insignificant extra-solution activities, which do not integrate a judicial exception into a practical application. For example, the additional elements of
"receiving a data set" amount to mere data gathering and data storage, respectively, which
are insignificant extra-solution activities that do not integrate a judicial exception into a
practical application. See MPEP 2106.05(g).
Step 2B Analysis: The claim does not include additional elements that are sufficient to
amount to significantly more than the judicial exception.
The limitations:
“[checking security related aspects for effective network traffic management and] automatically creating an open standard file format/data interchange format for orchestrated deployments”
“applying an artificial intelligence (AI) algorithm [to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set,] wherein the AI algorithm [considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;]”
“[predicting a codebase, from multifarious repositories,] to automatically generate a microservice based on a contextual need identified for a dynamic or ad-hoc requirement accommodation by [performing real time prediction on a codebase;]”
“[determining,] by machine logic and based, [at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated; and]”
“automatically instantiating, in the computing environment and based, at least in part, upon the container instantiation data set, a first container of the first type.”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
As discussed above with respect to integration of the abstract idea into a practical application, all of the additional elements are insignificant extra-solution activities or mere instructions to apply an exception. (i.e., the additional element describes a unit for applying the abstract ideas). Insignificant extra-solution activities and mere instructions to apply an exception cannot provide an inventive concept. Moreover, receiving, communicating, and storing data are insignificant extra-solution activities that are well-understood, routine, and conventional. See MPEP 2106.05(d)(II) ("The courts have recognized the following computer functions as well-understood, routine, and conventional functions ... i. Receiving or transmitting data over a network") (citing OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015)).
The claim is not patent eligible.
Claims 8-12 recite substantially similar subject matter to claims 2-6 and are rejected with the same rationale, mutatis mutandis, failing to integrate the abstract idea into a practical application or amount to significantly more than the abstract idea.
Regarding Claim 13,
Claim 13 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 13 is directed to a method, i.e., a process, one of the statutory categories.
Step 2A Prong One Analysis: The limitations:
“[applying an artificial intelligence (AI) algorithm] to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set, [wherein the AI algorithm] considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;”
“determining, [by machine logic and based,] at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated; and”
“[automatically] generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“checking encryption settings and certificates to be installed;”
“incorporating corresponding security rules into the deployment configuration; and”
As drafted, under their broadest reasonable interpretation, cover concepts performed in human mind (including an observation, evaluation, judgement, or opinion, e.g., checking, determining, predicting). The above limitations in the context of this claim encompass, inter alia, checking security related aspects for effective network traffic, determining a predicted future status, predicting a codebase, determining if the environment is to operate better, (corresponding to mental processes which can be done mentally or by pen and paper).
Step 2A Prong Two Analysis: The judicial exceptions are not integrated into a practical application.
The limitations:
“applying an artificial intelligence (AI) algorithm [to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set,] wherein the AI algorithm [considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;]”
“[determining,] by machine logic and based, [at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated; and]”
“automatically generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“automatically instantiating, in the computing environment and based, at least in part, upon the container instantiation data set, a first container of the first type.”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
The limitations:
“receiving a container instantiation data set that includes the data needed to instantiate at least a first type of container;”
“receiving a computing environment context data set including information relevant to computing operations currently being performed in a computer environment, with the computer environment context data set including information indicative of at least a first internal factor and a first external factor;”
As drafted, amount to insignificant extra-solution activities, which do not integrate a judicial exception into a practical application. For example, the additional elements of
"receiving a data set" amount to mere data gathering and data storage, respectively, which
are insignificant extra-solution activities that do not integrate a judicial exception into a
practical application. See MPEP 2106.05(g).
Step 2B Analysis: The claim does not include additional elements that are sufficient to
amount to significantly more than the judicial exception.
The limitations:
“applying an artificial intelligence (AI) algorithm [to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set,] wherein the AI algorithm [considers external or internal influencing factors, and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed;]”
“[determining,] by machine logic and based, [at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated; and]”
“automatically generating, based on the predicted future status, a deployment configuration including available open ports and gateways to create a dynamic docker file;”
“automatically instantiating, in the computing environment and based, at least in part, upon the container instantiation data set, a first container of the first type.”
As drafted, are additional elements that amount to no more than mere instructions to apply the exception for the abstract ideas. See MPEP 2106.05(f). Specifically, they amount to mere instructions to apply the exception using an artificial intelligence algorithm (e.g., by using these elements as tools).
As discussed above with respect to integration of the abstract idea into a practical application, all of the additional elements are insignificant extra-solution activities or mere instructions to apply an exception. (i.e., the additional element describes a unit for applying the abstract ideas). Insignificant extra-solution activities and mere instructions to apply an exception cannot provide an inventive concept. Moreover, receiving, communicating, and storing data are insignificant extra-solution activities that are well-understood, routine, and conventional. See MPEP 2106.05(d)(II) ("The courts have recognized the following computer functions as well-understood, routine, and conventional functions ... i. Receiving or transmitting data over a network") (citing OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015)).
The claim is not patent eligible.
Claims 14-18 recite substantially similar subject matter to claims 2-6 and are rejected with the same rationale, mutatis mutandis, failing to integrate the abstract idea into a practical application or amount to significantly more than the abstract idea.
Claim Rejections - 35 USC § 103
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, 4, 5, 7, 8, 10, 11, 12, 13, 14, 16, and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Bandari et al. (A Comprehensive Review of AI Applications in Automated Container Orchestration, Predictive Maintenance, Security and Compliance, Resource Optimization, and Continuous Deployment and Testing); hereinafter Bandari in view of Saffar et al. (US 10824726 B1); hereinafter Saffar in further view of Lev-Ran et al. (US 20190347406 A1); hereinafter Lev-Ran
Claim 1 is rejected over Bandari, Saffar and Lev-Ran.
Regarding claim 1, Bandari teaches receiving a container instantiation data set that includes the data needed to instantiate at least a first type of container; (Bandari [page 3]: “The container manager is responsible for pulling images from a registry, creating containers, and managing their lifecycle.”; Automated container orchestration; Note: The images are the container instantiation data set)
receiving a computing environment context data set including information relevant to computing operations currently being performed in a computer environment, with the computer environment context data set including information indicative of at least first internal factor; (Bandari [page 8]: “Dynamic resource optimization starts with the continuous monitoring of resource utilization across containers and microservices. This includes monitoring factors such as CPU utilization, memory usage, and network bandwidth, as well as other performance metrics that are relevant to the specific container orchestration system. The data is collected in real-time and analyzed by the optimization algorithms, which identify patterns and trends in the utilization of resources.”; Note: The information regarding CPU utilization, memory usage, and network bandwidth of the containers are internal factors of the container environment.)
applying an artificial intelligence (AI) algorithm to determine a predicted future status of the computing environment based, at least in part, upon the computer environment context data set, wherein the AI algorithm considers external or internal influencing factors, (Bandari [page 6]: “The AI algorithms used for predictive maintenance analyze the collected data to identify patterns and anomalies that may indicate potential performance issues. This analysis takes into account various factors, such as resource utilization, performance metrics, and error logs, to determine the health and performance of the containers and microservices. Based on the results of the analysis, the AI algorithms generate alerts or recommendations for addressing any potential issues.”; Note: The collected data can be the computer environment context data set that contains external or internal influencing factors that is analyzed to see if in the future there are potential performance issues. The various factors such as resource utilization and performance metrics are the different activities performed.)
and predicts a change in a contextual situation where one or more users perform an activity differently or different activities are performed; (Bandari [page 4, column 1]: “Automatic scaling, on the other hand, increases or decreases the number of containers as necessary to meet changing demand (different activities), ensuring that resources are utilized efficiently and that applications remain highly available.”; and [page 9, column 2]: “Improved User Experience: Dynamic resource optimization can also help organizations deliver better outcomes for their customers. By improving the performance and availability of their container orchestration systems, organizations can ensure that their customers have a positive and seamless experience, regardless of the demands being placed on the system.”; Note: The different activities that are in a contextual situation include user traffic on a system.)
determining, by machine logic and based, at least in part upon the predicted future status, that the computing environment is to operate better if a new container of the first type is instantiated; and (Bandari [pages 3-4, Automated container orchestration]: “Automated container orchestration also enables load balancing and automatic scaling of containers. Load balancing distributes incoming traffic across multiple containers to ensure that no single container becomes overwhelmed. Automatic scaling, on the other hand, increases or decreases the number of containers as necessary to meet changing demand, ensuring that resources are utilized efficiently and that applications remain highly available,” and “The use of automated container orchestration also helps to improve the security of applications and services. With the ability to manage containers at scale, organizations can ensure that they are using the latest security measures, without having to worry about manually updating them. This can reduce the risk of security breaches and help to protect sensitive information.”;)
incorporating corresponding security rules into the deployment configuration; and (Bandari [page 12, Security and Compliance]: “Additionally, AI algorithms can enforce security policies, such as those related to access control, data encryption, and firewall configurations.”; and [page 15]: “Organizations need to be aware of these privacy concerns and take steps to mitigate them, such as implementing robust data privacy and security policies and procedures, and using encryption and other security measures to protect sensitive data.”)
automatically instantiating, in the computing environment and based, at least in part, upon the container instantiation data set, a first container of the first type. (Bandari [page 16, column 1]: “they can implement a centralized container management platform that can automate the deployment, scaling, and management of containers. They can also adopt DevOps methodologies and tools that can streamline the software development and deployment process and ensure that containers are deployed and updated quickly and reliably. Additionally, organizations can implement monitoring and logging tools that can help them identify and resolve performance issues and security threats in real-time.”; and [page 3, Automated container orchestration]: “The container manager is responsible for pulling images from a registry, creating containers, and managing their lifecycle.”; Note: The images are the container instantiation data set; and [page 2, column 1]: “The first step in container orchestration is to define the desired state of the container environment. This includes the number of containers, their configuration, and their relationship with other services (a first container of the first type).”;)
Bandari teaches automatically generating, based on the predicted future status, a deployment configuration [including available open ports and gateways] to create a dynamic docker file; (Bandari [page 16, column 1]: “they can implement a centralized container management platform that can automate the deployment, scaling, and management of containers. They can also adopt DevOps methodologies and tools that can streamline the software development and deployment process and ensure that containers are deployed and updated quickly and reliably. Additionally, organizations can implement monitoring and logging tools that can help them identify and resolve performance issues and security threats in real-time.”; and [page 2]: “Container orchestration platforms, such as Kubernetes, enable developers to define the desired state using declarative configuration files or manifests. The orchestration platform then ensures that the actual state of the container environment matches the desired state.”; and)
Bandari does not teach automatically generating, [based on the predicted future status,] a deployment configuration including available open ports and gateways to create a dynamic docker file;
However, Saffar teaches automatically generating, [based on the predicted future status,] a deployment configuration including available open ports and gateways to create a dynamic docker file; (Saffar [col 8, lines 30-37]: “The new container is then executed during step 340, for example, in a sandbox environment, and ports opened by the new container are compared with open ports in the corresponding container profile. The exemplary RMS container life cycle process 300 then checks for potential security issues in environment variables (e.g., users and passwords) during step 350 that are not present in the corresponding container profile.”; [col 13, lines 45-50]: “a given container of cloud infrastructure illustratively comprises a Docker container or other type of Linux Container ( LXC ) .”; [Background]: Moving Target Defense techniques aim to dynamically change the network configuration of virtual machines and containers, in order to make it harder for a malicious attacker to map the network topology “and [col 4, lines 17-20]: “In embodiments where the RMS 200 and the service platform 120 are indirectly connected , there may be other networking components or systems (e.g. , switches , routers , gateways , etc.”)
It would have been obvious before the effective filing date to combine the artificial intelligence algorithms for automated container orchestration of Bandari with the container profile containing open ports of Saffar to improve container security (Saffar, Background). Bandari and Saffar are analogous art because they both concern container orchestration.
Bandari teaches checking encryption settings [and certificates] to be installed;
Bandari does not teach checking [encryption settings and] certificates to be installed;
However, Lev-Ran teaches checking [encryption settings and] certificates to be installed; (Lev-Ran [0002]: “According to an embodiment described herein, a system can include processor to dynamically generate a trusted root certificate for an application instance running in a container. The processor can also further inject the generated trusted root certificate at runtime. The processor can also dynamically add the generated certificate to a list of trusted root certificates.”)
It would have been obvious before the effective filing date to combine the artificial intelligence algorithms for automated container orchestration of Bandari with the certificate generation of Lev-Ran for improved authenticity (Lev-Ran, [0011]). Bandari and Lev-Ran are analogous art because they both concern container orchestration.
Claim 2 is rejected over Bandari, Saffar and Lev-Ran with the incorporation of claim 1.
Regarding claim 2, Bandari teaches wherein the container instantiation data set includes a container image file. (Bandari [page 3, Automated container orchestration]: “The container manager is responsible for pulling images from a registry, creating containers, and managing their lifecycle.”;)
Claim 4 is rejected over Bandari, Saffar and Lev-Ran with the incorporation of claim 1.
Regarding claim 4, Bandari teaches using historical learning to identify pattern of change indicated by a computer environment contextual data set. (Bandari [page 6, Predictive maintenance]: “The AI algorithms used for predictive maintenance analyze the collected data to identify patterns and anomalies that may indicate potential performance issues. This analysis takes into account various factors, such as resource utilization, performance metrics, and error logs, to determine the health and performance of the containers and microservices.”;)
Claim 5 is rejected over Bandari, Saffar and Lev-Ran with the incorporation of claim 1.
Regarding claim 5, Bandari teaches applying the artificial intelligence algorithm to predict system requirements. (Bandari [page 6, Predictive maintenance]: “The AI algorithms used for predictive maintenance analyze the collected data to identify patterns and anomalies that may indicate potential performance issues. This analysis takes into account various factors, such as resource utilization, performance metrics, and error logs, to determine the health and performance of the containers and microservices.”; and [page 10]: “Dynamic resource optimization can also introduce performance overhead, as the optimization algorithms and systems use computational resources to monitor and adjust resource utilization.”;)
Claim 7 is a method claim corresponding to claim 1 and is rejected for the same reasons as given in the rejection of claim 1, with the exception of the following limitations.
Regarding claim 7, Bandari teaches receiving a computing environment context data set including information relevant to computing operations currently being performed in a computer environment, with the computer environment context data set including information indicative of at least first external factor; (Bandari [page 8]: “Based on the collected data, the optimization algorithms analyze the utilization of resources and make decisions about how to optimize them dynamically. The algorithms take into account various factors, such as the current utilization of resources, the current demand on the system, “; and [page 4]: “The use of automated container orchestration makes it possible for businesses to respond quickly to changes in demand for their applications and services. With the ability to scale up or down as needed, organizations can ensure that they have the resources they need to meet the demands of their users without having to manually intervene.”; Note: The user demands are the external factor.)
The remainder of claim 7 is substantially similar to claim 1 and is rejected with the same rationale, mutatis mutandis.
Dependent claim 8 recites a method for performing steps substantially similar to those of claim 2 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 7, see the rejection of claim 7 above.
Dependent claim 10 recites a method for performing steps substantially similar to those of claim 4 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 7, see the rejection of claim 7 above.
Dependent claim 11 recites a method for performing steps substantially similar to those of claim 5 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 7, see the rejection of claim 7 above.
Dependent claim 12 recites a method for performing steps substantially similar to those of claim 6 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 7, see the rejection of claim 7 above.
Claim 13 is a method claim corresponding to claim 1 and is rejected for the same reasons as given in the rejection of claim 1, with the exception of the following limitations.
Regarding claim 13, Bandari teaches receiving a computing environment context data set including information relevant to computing operations currently being performed in a computer environment, with the computer environment context data set including information indicative of at least a first internal factor and (Bandari [page 8]: “Dynamic resource optimization starts with the continuous monitoring of resource utilization across containers and microservices. This includes monitoring factors such as CPU utilization, memory usage, and network bandwidth, as well as other performance metrics that are relevant to the specific container orchestration system. The data is collected in real-time and analyzed by the optimization algorithms, which identify patterns and trends in the utilization of resources.”; Note: The information regarding CPU utilization, memory usage, and network bandwidth of the containers are internal factors of the container environment.)
a first external factor; (Bandari [page 8]: “Based on the collected data, the optimization algorithms analyze the utilization of resources and make decisions about how to optimize them dynamically. The algorithms take into account various factors, such as the current utilization of resources, the current demand on the system, “; and [page 4]: “The use of automated container orchestration makes it possible for businesses to respond quickly to changes in demand for their applications and services. With the ability to scale up or down as needed, organizations can ensure that they have the resources they need to meet the demands of their users without having to manually intervene.”; Note: The user demands are the external factor.)
The remainder of claim 7 is substantially similar to claim 1 and is rejected with the same rationale, mutatis mutandis.
Dependent claim 14 recites a method for performing steps substantially similar to those of claim 2 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 13, see the rejection of claim 13 above.
Dependent claim 16 recites a method for performing steps substantially similar to those of claim 4 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 13, see the rejection of claim 13 above.
Dependent claim 17 recites a method for performing steps substantially similar to those of claim 5 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 13, see the rejection of claim 13 above.
Claims 6 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Bandari, Saffar and Lev-Ran in view of Gungabeesoon et al. (US 20210124576 A1); hereinafter Gungabeesoon
Claim 6 is rejected over Bandari, Saffar, Lev-Ran and Gungabeesoon with the incorporation of claim 1.
Regarding claim 6, Bandari teaches predicting functional requirements; (“Dynamic resource optimization starts with the continuous monitoring of resource utilization across containers and microservices. This includes monitoring factors such as CPU utilization, memory usage, and network bandwidth, as well as other performance metrics that are relevant to the specific container orchestration system. The data is collected in real-time and analyzed by the optimization algorithms, which identify patterns and trends in the utilization of resources.”; page 8, Dynamic Resource Optimization)
predicting non-functional requirements; (“Improved Uptime: One of the main benefits of predictive maintenance is improved uptime. By identifying and addressing potential performance issues proactively, organizations can reduce the likelihood of outages and downtime.”; page 6, Functions of predictive maintenance; Note: Performance and efficiency are included in non-functional requirements)
predicting security requirements; (“One of the ways that AI algorithms can be used for security and compliance is by monitoring and enforcing security policies. AI algorithms can analyze logs and performance data from containers and applications in real-time, helping organizations to identify and mitigate security threats.”; page 12, Security and compliance)
predicting a number of users to use; and (“With the ability to scale up or down as needed, organizations can ensure that they have the resources they need to meet the demands of their users without having to manually intervene. This not only helps to improve the reliability of their applications and services, but also reduces the cost of running them, as resources are only used when they are needed.”; page 4)
Bandari does not teach predicting a workflow sequence.
However, Gungabeesoon teaches predicting a workflow sequence. (Gungabeesoon [0022]: the microservice delivery pipeline (workflow sequence) is generated based on one or more pipeline generation templates.”;)
It would have been obvious before the effective filing date to combine the artificial intelligence algorithms for automated container orchestration of Bandari with the automated microservice pipeline of Gungabeesoon to efficiently generate desired microservices (Gungabeesoon, [0060]). Bandari and Gungabeesoon analogous art because they both concern automated orchestrated deployments.
Dependent claim 18 recites a method for performing steps substantially similar to those of claim 6 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 13, see the rejection of claim 13 above.
Claims 3, 9 and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Bandari, Saffar, Lev-Ran and Gungabeesoon in view of Thomason et al. (US10140159B1); hereinafter Thomason
Claim 3 is rejected over Bandari, Saffar, Lev-Ran, and Gungabeesoon, and Thomason with the incorporation of claim 1.
Regarding claim 3, Bandari teaches automatically identifying a set of unit test(s) to be performed; (Bandari [page 10, Continuous deployment and testing]: “Continuous Testing: The AI algorithms also automate the testing process, by continuously monitoring the performance of containers and applications and evaluating the results of tests. This allows organizations to catch performance issues and bugs early, before they impact end users. The AI algorithms can also analyze test results and identify patterns and trends, helping organizations to identify areas where they can improve the quality of their code and applications.”;)
applying the artificial intelligence algorithm to predict (Bandari [page 6]: “The AI algorithms used for predictive maintenance analyze the collected data to identify patterns and anomalies that may indicate potential performance issues. This analysis takes into account various factors, such as resource utilization, performance metrics, and error logs, to determine the health and performance of the containers and microservices. Based on the results of the analysis, the AI algorithms generate alerts or recommendations for addressing any potential issues.”;)
Bandari does not teach a codebase from a set of repositories;
creating a first microservice; and
automatically deploying the first microservice.
However, Gungabeesoon teaches a codebase from a set of repositories; (Gungabeesoon [0078]: “A repository generator module 226 generates the SCM repository in the code versioning system 260 for the microservice by creating the required folders and files based on one or more previously defined repository templates. In the present embodiment, the SCM repository for the source code and files generated for the microservice can be stored into the SCM server 262.”; [0075]; and “The microservice generator module 242 is a stage and component within the microservice delivery pipeline 240 operable to generate source code and its corresponding shared object code for a desired microservice.”;)
creating a first microservice; and (Gungabeesoon [0077]: “The microservice delivery pipeline 240 is intended to automate generation of the microservice, including microservice code generation, build, deploy, test, publish, and promotion.”;)
automatically deploying the first microservice. (Gungabeesoon [0077]: “The microservice delivery pipeline 240 is intended to automate generation of the microservice, including microservice code generation, build, deploy, test, publish, and promotion.”;)
It would have been obvious before the effective filing date to combine the artificial intelligence algorithms for automated container orchestration of Bandari with the automated microservice deployment of Gungabeesoon to efficiently generate desired microservices (Gungabeesoon, [0060]). Bandari and Gungabeesoon analogous art because they both concern automated orchestrated deployments
Bandari does not teach identifying appropriate codes and security rules from the set of repositories;
However, Thomason teaches identifying appropriate codes and security rules from the set of repositories; (Thomason [column 6, lines 13-25]: “In general, the one or more data stores 150 can include any information collected, stored or used by the central management system 140. For example, in various embodiments, the one or more data stores 150 can include container images, deployment settings for applications (e.g., on a tenant-specific and/or application-specific basis), applications for deployment, metadata for applications to be deployed (e.g., metadata which indicates interrelated containers of an application), combinations of the same and/or the like. In certain embodiments, data stored in the one or more data stores 150 can take the form of repositories, flat files, databases, etc. An example of the data store(s) 150 will be described in greater detail in relation to FIG. 1B.”; and [column 6, lines 38-43]: “The encryption key store 156 can include security keys used to validate signatures contained in container manifests. The container registry 158 can include information about containers that are known to an organization, attributes of those containers, deployment settings, combinations of same and/or the like.”;)
It would have been obvious before the effective filing date to combine the computing environment predictive maintenance of Bandari with the container settings in repositories of Thomason for effective configuration of deployed containers (Thomason, column 3, lines 1-14). Bandari and Thomason are analogous art because they both concern the deployment of containers.
Bandari does not teach creating a first microservice; and
However, Thomason teaches creating a first microservice; and (Thomason [column 3, lines 60-65 ]: “an application can be distributed across multiple containers with each container providing a microservice in support of the application. In general, containers of an application can be deployed on managed resources of the central management system 140.”;)
It would have been obvious before the effective filing date to combine the computing environment predictive maintenance of Bandari with the microservice creation of Thomason for effective configuration of deployed containers (Thomason, column 3, lines 1-14). Bandari and Thomason are analogous art because they both concern the deployment of containers.
Bandari does not teach automatically deploying the first microservice.
However, Thomason teaches automatically deploying the first microservice. (Thomason [column 3, lines 60-65]: “an application can be distributed across multiple containers with each container providing a microservice in support of the application. In general, containers of an application can be deployed on managed resources of the central management system 140.”;)
Dependent claim 9 recites a method for performing steps substantially similar to those of claim 3 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 7, see the rejection of claim 7 above.
Dependent claim 15 recites a method for performing steps substantially similar to those of claim 3 and is rejected with the same rationale, mutatis mutandis. For the rejection of the limitations specifically pertaining to the method of claim 13, see the rejection of claim 13 above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
NPL: Shanmugam, Aravind Samy. “Docker Container Reactive Scalability and Prediction of CPU Utilization Based on Proactive Modelling.” (2016).
NPL: Buchaca et al. “Proactive Container Auto-scaling for Cloud Native Machine Learning Services.” (2020).
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 DAVID H TRAN whose telephone number is (703)756-1525. The examiner can normally be reached M-F 9:30 am - 5:30 pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Viker Lamardo can be reached at (571) 270-5871. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/DAVID H TRAN/Examiner, Art Unit 2147
/VIKER A LAMARDO/Supervisory Patent Examiner, Art Unit 2147