DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This Office Action is in response to claims filed 03/20/2024.
Claims 1-20 are pending.
Claim Objections
Claim 10 is objected to under 37 CFR 1.75 as being a substantial duplicate of Claim 1 which recites the same limitation “utilizing a machine learning module and an artificial intelligence module to predict behavior patterns associated with a plurality of users”. When two claims in an application are duplicates or else are so close in content that they both cover the same thing, despite a slight difference in wording, it is proper after allowing one claim to object to the other as being a substantial duplicate of the allowed claim. See MPEP § 608.01(m).
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitation(s) is/are: “an agnostic transaction module” in Claim 20.
Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof. A review of the disclosure as originally filed, hereafter "disclosure", reveals that the corresponding structure of the “an agnostic transaction module”, is a general purpose computer, see at least instant specification ¶3-5, ¶21, ¶67, ¶82 and ¶086. In accordance with MPEP § 2181 (ll)(B), when the corresponding structure of computer implemented mean plus function limitations corresponds to a general purpose computer, an algorithm is required to transform the general purpose computer into a special purpose computer to be sufficient as corresponding structure. Upon further review of the disclosure, Applicant has failed to define the algorithm for each of the claimed functions and has instead only provided either verbatim support for the claimed function (which is insufficient as a steps of steps of a corresponding algorithm) or exemplary language that does not make clear the metes and bounds of the algorithm. As such, see rejections under 35 U.S.C. § 112(a) and (b) below.
If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claim 20 rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention. Claim 20 recites “an agnostic transaction module” which invokes 35 U.S.C. § 112(f), see claim interpretation above. The disclosure does not recite sufficient corresponding structure (in this instance computer + algorithm), again see claim interpretation above. As such, and in accordance with MPEP § 2181 (ll)(B), last paragraph "When a claim containing a computer-implemented 35 U.S.C. 112(f) claim limitation is found to be indefinite under 35 U.S.C. 112(b) for failure to disclose sufficient corresponding structure (e.g., the computer and the algorithm) in the specification that performs the entire claimed function, it will also lack written description under 35 U.S.C. 112(a)."
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim limitation “an agnostic transaction module” invokes 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. However, the written description fails to disclose the corresponding structure, material, or acts for performing the entire claimed function and to clearly link the structure, material, or acts to the function. The disclosure fails to disclose sufficient corresponding structure (in this instance computer+ algorithm), see claim interpretation above. As such, and in accordance with MPEP § 2181 (ll)(B) "For a computer-implemented 35 U.S.C. 112(f) claim limitation, the specification must disclose an algorithm for performing the claimed specific computer function, or else the claim is indefinite under 35 U.S.C. 112(b).". Therefore, the claim is indefinite and is rejected under 35 U.S.C. 112(b) or pre-AIA 35 U.S.C. 112, second paragraph.
Applicant may:
(a) Amend the claim so that the claim limitation will no longer be interpreted as a limitation under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph;
(b) Amend the written description of the specification such that it expressly recites what structure, material, or acts perform the entire claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(c) Amend the written description of the specification such that it clearly links the structure, material, or acts disclosed therein to the function recited in the claim, without introducing any new matter (35 U.S.C. 132(a)).
If applicant is of the opinion that the written description of the specification already implicitly or inherently discloses the corresponding structure, material, or acts and clearly links them to the function so that one of ordinary skill in the art would recognize what structure, material, or acts perform the claimed function, applicant should clarify the record by either:
(a) Amending the written description of the specification such that it expressly recites the corresponding structure, material, or acts for performing the claimed function and clearly links or associates the structure, material, or acts to the claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(b) Stating on the record what the corresponding structure, material, or acts, which are implicitly or inherently set forth in the written description of the specification, perform the claimed function. For more information, see 37 CFR 1.75(d) and MPEP §§ 608.01(o) and 2181.
Claim 1 recites both “a configuration service” and “a plugin management engine” twice throughout the Claim, it is unclear if these are referring to the same or different instances of “a configuration service” and “a plugin management engine”.
For the purposes of compact prosecution:
Examiner will interpret all instances of “a configuration service” and “a plugin management engine” to mean the same respective instances as initially declared in the Claim.
Claim 7 recites the limitation "the configuration". There is insufficient antecedent basis for this limitation in the claim.
For the purposes of compact prosecution: Examiner will interpret “the configuration” to mean “to configure each data file” declared in Claim 1.
Claims 8, 11, 13, and 16-17 recites the limitations “the plurality of plugins”. There is insufficient antecedent basis for this limitation in the claim.
For the purposes of compact prosecution:
Examiner will interpret “the plurality of plugins” in Claims 8, 11, and 13 as referring to “a plurality of plugins” declared in Claim 7.
Examiner will interpret “the plurality of plugins” in Claim 16 to mean “a plurality of plugins”.
Examiner will interpret “the plurality of plugins” in Claim 17 as referring to the interpreted “a plurality of plugins” from the aforementioned Claim 16.
Claim 10 recites the limitations “a machine learning module”, “an artificial intelligence module”, and “a plurality of users”, which were both previously declared in Claim 1. It is unclear if these are referring to the same or different instances of “a machine learning module” and “an artificial intelligence module”.
For the purposes of compact prosecution:
Examiner will interpret “a machine learning module”, “an artificial intelligence module”, and “a plurality of users” in Claim 10 as referring to “a machine learning module”, “an artificial intelligence module”, and “a plurality of users” declared in Claim 1.
Claim 12 recites the limitations “the recommended path” There is insufficient antecedent basis for this limitation in the claim.
For the purposes of compact prosecution:
Examiner will interpret “the recommended path” as referring to one of “a plurality of recommended paths” established in Claim 11.
Claim 13 further recites the limitation “a particular user”. It is unclear if this is referring to the same or different instance as the “a particular user” established in Claim 1.
For the purposes of compact prosecution:
Examiner will interpret “a particular user” in Claim 13 as referring to “a particular user” declared in Claim 1.
Claim 14 recites the limitation “the particular user”. It is unclear if this is referring to “a particular user” established in Claim 1 or the “a particular user” in Claim 13.
For the purposes of compact prosecution:
Examiner will interpret “the particular user” in Claim 14 as referring to “a particular user” declared in Claim 1.
Claims 2-6, 9, 15 and 18-19 are further rejected based on their dependency to the aforementioned rejected Claims.
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 recites a
judicial exception, is directed to that judicial exception, an abstract idea, as it has not
been integrated into practical application and the claims further do not recite significantly
more than the judicial exception. Examiner has evaluated the claims under the framework
provided in the 2019 Patent Eligibility Guidance published in the Federal Register
01/07/2019 and has provided such analysis below.
Step 1:
Claims 1-19 are directed to methods and fall within the statutory category of processes; Claim 20 is directed to a system and falls within the statutory category of machines. Therefore, “Are the claims to a process, machine, manufacture or composition of matter?” Yes.
In order to evaluate the Step 2A inquiry “Is the claim directed to a law of nature, a natural phenomenon or an abstract idea?” we must determine, at Step 2A Prong 1, whether the claim recites a law of nature, a natural phenomenon or an abstract idea and further whether the claim recites additional elements that integrate the judicial exception into a practical application.
Step 2A Prong 1:
Claims 1, 16 and 20 recite “identify/identifying” … “a plurality of data files associated with an external data source;”, “to predict behavior patterns associated with a plurality of users; automatically modifying,” … “the uniform data state to a particular configuration type associated with a particular data destination source based on a configuration service”, “dynamically updating/update” … “a modified data state based on a utilization of a plugin management engine, wherein an update to the modified data state occurs at predetermined timed intervals”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can mentally identify information regarding based on external sources, a person may also predict behavior of a person based on known habits. Furthermore, a person can normalize data to fit a certain format. Lastly a person can modify parameters over a certain time interval regarding resource usage.
Therefore, yes, Claims 1, 16 and 20 recite judicial exceptions.
The claims have been identified to recite judicial exceptions, Step 2A Prong 2 will evaluate whether the claims are directed to the judicial exception.
Step 2A Prong 2:
Claims 1, 16 and 20: The judicial exceptions are not integrated into practical applications. In particular, the claims recite the following additional elements – “by a processor”, “utilizing a machine learning module and an artificial intelligence module”, and “at least one processor of a first computing device associated with a user; wherein, when the processor executes the software instructions, the first computing device is programmed to”, is a recitation of generic computing components and functions merely being used as a tool to apply the abstract idea (see MPEP § 2106.05(f)). Further, “utilizing, by the processor, an agnostic transaction module to configure each data file within the plurality of data files into a uniform data state”, and “storing software instructions;”, merely recites insignificant extra-solution data storage which does not integrate the judicial exception into a practical application. See MPEP § 2106.05(g). Lastly, “wherein the agnostic transaction module comprises a plurality of predetermined capabilities associated with a particular user and a configuration service;” and “wherein the configuration service associated with the agnostic transaction module comprises a configuration loader and a plugin management engine;”, recites a field of use which generally links the use of a judicial exception to a particular technological environment (MPEP § 2106.05(h)).
Therefore, “Do the claims recite additional elements that integrate the judicial exception into a practical application? No, these additional elements do not integrate the abstract idea into a practical application and they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea.
After having evaluating the inquires set forth in Steps 2A Prong 1 and 2, it has been concluded that the Claims 1, 16 and 20 not only recite a judicial exception but that the claims are directed to a judicial exception as a judicial exception has not been integrated into a practical application.
Step 2B:
Claim 1, 16, and 20: The claims do not include additional elements, alone or in combination, 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, the additional elements amount to no more than generic computing components, field of use/technological environment, and insignificant extra-solution activity which do not amount to significantly more than the abstract idea. Further, the insignificant extra-solution activity is Well-Understood, Routine, and Conventional. “The courts have recognized the following computer functions as well‐understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity. iv. Storing and retrieving information in memory”. See MPEP § 2106.05(d)(II).
Therefore, “Do the claims recite additional elements that amount to significantly more than the judicial exception? No, these additional elements, alone or in combination, do not amount to significantly more than the judicial exception.
Having concluded analysis within the provided framework, Claims 1, 16 and 20 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claims 2 and 3: “the plurality of data files comprise a plurality of configuration files” and “the external data source comprises a digital marketplace”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can mentally identify information regarding based on external sources. With regards to integration into practical application and whether additional elements amount to significantly more, Claims 2 and 3 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, Claims 2 and 3 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claims 4 and 5: “the machine learning module comprises performing an analysis on the uniform data state”, is a recitation of generic computing components and functions merely being used as a tool to apply the abstract idea (see MPEP § 2106.05(f)), and “automatically ranking a plurality of scenarios associated with the analysis of the uniform data state, and dynamically selecting at least one scenario of the plurality of scenario based on an aggregated scenario score associated with the analysis of the uniform data state”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can mentally analyze normalized data and rank to select a scenario based on that analysis. With regards to integration into practical application and whether additional elements amount to significantly more, Claims 4 and 5 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, Claims 4 and 5 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claims 6 and 7: “the particular configuration type comprises metadata associated with the uniform data state and dependencies associated with the uniform data state”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can mentally identify information regarding based on external sources. Further, “the plugin management engines comprises a plurality of plugins that assist in the configuration associated with the particular data destination source”, recites a field of use which generally links the use of a judicial exception to a particular technological environment (MPEP § 2106.05(h)). With regards to integration into practical application and whether additional elements amount to significantly more, Claims 6 and 7 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, Claims 6 and 7 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claim 8 and 17: “receiving a first and a second configuration recommendation path in the plurality of plugins”, merely recite insignificant extra-solution data gathering which do not integrate the judicial exception into a practical application. See MPEP § 2106.05(g), and “applying a predetermined set of remediation templates based on the first and the second configuration recommendation paths in the plurality of plugins; applying at least one configuration process flow on an application source code associated with the particular data destination source based on the configuration service; and applying a reusable service template on the application source code based on the first and the second configuration recommendation paths in the plurality of plugins”, is a recitation of generic computing components and functions merely being used as a tool to apply the abstract idea (see MPEP § 2106.05(f)). With regard to integration into practical application and whether additional elements amount to significantly more, Claims 8 and 17 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more, performing a well understood, routine, and conventional task of data gathering. “The courts have recognized the following computer functions as well‐understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity. i. Receiving or transmitting data over a network”. See MPEP § 2106.05(d)(II). Therefore, Claims 8 and 17 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claims 9 and 18: “the reusable service template comprises a plurality of repeatable code modifications required for integration and deployment of the particular configuration type associated with the particular data destination source”, recites a field of use which generally links the use of a judicial exception to a particular technological environment (MPEP § 2106.05(h)). With regards to integration into practical application and whether additional elements amount to significantly more, Claims 9 and 18 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, Claims 9 and 18 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claims 10 and 11: “utilizing a machine learning module and an artificial intelligence module to predict behavior patterns associated with a plurality of users”, is a recitation of generic computing components and functions merely being used as a tool to apply the abstract idea (see MPEP § 2106.05(f)), and “the predicted behavior patterns comprise a plurality of recommended paths to a particular set of plugins within the plurality of plugins that correctly correspond with at least one data destination source”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can mentally make a recommendation based on a prediction using studied behavior. With regards to integration into practical application and whether additional elements amount to significantly more, Claims 10 and 11 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, Claims 10 and 11 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claims 12 and 13: “the recommended path to the particular set of plugins comprises a recorded collection of a plurality of previous paths taken via the plugin management engine to at least one particular plugin associated with the particular data destination source”, “automatically selecting a particular plugin of the plurality of plugins based on a predicted behavior of a particular user for subsequent use”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can mentally keep record of behaviors and select a resource from a plurality based on studied behavior to make a prediction. With regards to integration into practical application and whether additional elements amount to significantly more, Claims 12 and 13 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, Claims 12 and 13 do not recite patent eligible subject matter under 35 U.S.C. § 101.
Claims 14, 15 and 19: “the particular user comprises a particular broker seeking to interact with a particular lender”, are recitations of generic computing components and functions merely being used as a tool to apply the abstract idea (see MPEP § 2106.05(f)). Further and “utilizing a graphical user interface within a computing device to display at least one dynamic update to the modified data state based on the configuration service”, merely reciting insignificant extra-solution data display activity which does not integrate the judicial exception into a practical application. See MPEP § 2106.05(g). With regard to integration into practical application and whether additional elements amount to significantly more, Claims 14, 15 and 19 fail both prongs of Step 2A, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more, performing a well understood, routine, and conventional task of data gathering. “The courts have recognized the following computer functions as well‐understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity. iv. Presenting offers and gathering statistics”. See MPEP § 2106.05(d)(II). Therefore, Claims 14, 15 and 19 do not recite patent eligible subject matter under 35 U.S.C. § 101.
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-4, 6-11, 13, and 15-20 are rejected under 35 U.S.C. 103(a) as being unpatentable over Clayton et al. (US 20220060510 A1) (hereinafter Clayton), in view of Velammal et al. (US 20220164207 A1) (hereinafter Velammal).
Regarding Claim 1, Clayton teaches:
A computer-implemented method comprising: identifying, by a processor, a plurality of data files associated with an external data source;
“the first plurality of programming instructions, when operating on the processor, cause the computing device to” … “retrieve data from a service using at least the authentication and the access information in the service configuration, wherein the retrieved data comprises computing and networking events;”, (Clayton: ¶62), “which while autonomously configured are deployed within a web scraping framework 115a of which SCRAPY™ is an example, to identify and retrieve data of interest from web based sources that are not well tagged by conventional web crawling technology”, (Clayton: ¶96), “a component input server 506 retrieves a plurality of data from each of the services with stored configurations, unless one is not needed, i.e., there is no requirement for authentication to retrieve events, logs, and miscellaneous related data. As each data chunk (e.g., events, logs, and miscellaneous data) is ingested, an event tagger 1202 compares die data chunk to the processing portion of the service's respective configuration file”, (Clayton: ¶122). Examiner notes: “events, logs, and miscellaneous data” are being interpreted as the plurality data files.
utilizing, by the processor, an agnostic transaction module to configure each data file within the plurality of data files into a uniform data state,
“a universal data connection interface for network and cloud-based services” … “all of the configuration information from Twitter™, Slack™, and Google™ is shown in a single interface with a common format” … “the system user wanted to use the search query data to find die ten most liked tweets that are related to the search query, a simple configuration change would be automatically applied to the cloud-based services and the intermediate transformation steps to ensure that the data is in the correct format”, (Clayton: ¶87), “Connector workflows may comprise a variety of plugins each of which is related to a cloud-based network service. Each plugin can be categorized into one of the three following components, an input stage, a transformation stage, and an output stage.” … “A transformation component changes the format of the data message”, (Clayton: ¶095), “data being passed to the connector module 135 which may possess the API routines 135a needed to accept and convert the external data and then pass the normalized information to other analysis and transformation components…”, (Clayton: ¶96). Examiner notes: the common format/correct format is being interpreted ats the uniform data state.
wherein the agnostic transaction module comprises a plurality of predetermined capabilities associated with a particular user and a configuration service;
“A connector workflow may be selected from a list of predefined, built in workflows, or it may be custom built and can be composed of an arbitrary number of input stages, transformation stages, and output stages to allow generalizable data exchange and transformation”, (Clayton: ¶95), “Additionally, each connector workflow may be configured by selecting from a library of common, predefined connector workflow configurations” … “. A connector workflow configuration specifies the type of data received by each component and what task that component should perform. For example, a component linked to an email client may be configured to perform send, delete, forward, etc. tasks”, (Clayton: ¶112), “the user 515 to create and store 504 configurations comprising the credentials, processing, and location information…”, (Clayton: ¶121).
automatically modifying, by the processor, the uniform data state to a particular configuration type associated with a particular data destination source based on a configuration service,
“The system takes care of retrieving and formatting the data for the user's use, and takes care of reformatting, uploading, and coordination of data among die cloud-based services if die user makes changes” … “a simple configuration change would be automatically applied to the cloud-based services and the intermediate transformation steps to ensure that the data is in the correct format”, (Clayton: ¶87), “aggregation or audio to text translation are completely dependent on the intended downstream usage of that data with coding for each transformation pre-programmed and pre-selected for those purposes”, (Clayton: ¶110), “A connector workflow configuration specifies the type of data received by each component and what task that component should perform …”, (Clayton: ¶112).
and dynamically updating, by the processor, a modified data state based on a utilization of a plugin management engine,
“The run manager 503 may be responsible for a variety of functions including, but not limited to start and restart of workflows by spawning processes (and the required components) dynamically on any core node 505, notify each process, receive notification from a process, and store connector workflow status and components on an in memory database”, (Clayton: ¶113), “An execution server 508 will persist the state of die execution 507, and start the component plugin(s) 510, 511 through the component supervisor 509, passing the configuration needed for each plugin 510, 511”, (Clayton: ¶114), “the execution server 508 will know how to process these errors, while keeping the state of the message which may have had several modifications during the execution 507”, (Clayton: ¶116), “The module is designed to accommodate irregular and high volume surges by dynamically allotting network bandwidth and server processing channels to process the incoming data”, (Clayton: ¶96), “These multiple types of data from a plurality of sources may be transformed for analysis 311” … “network and system user behavior analytics 332, attacker and defender action timeline 333, SIEM integration and analysis 334, dynamic benchmarking 335, and incident identification and resolution performance analytics”, (Clayton: ¶107).
wherein an update to the modified data state occurs at predetermined timed intervals.
“Alternatively, retrieval may occur from a subset of network service sources on the basis of a pre-decided and pre-scripted triggering event of set of triggering events or on a timed interval trigger where the source may be polled for new information either at specific timed intervals or at specific times of the day”, (Clayton: ¶108), “Invoking scripts to be employed for specific triggers, time based or event based is simplified by the use of separate parameter files”, (Clayton: ¶109), “based upon the trigger, specific formatting may be performed on the incoming data prior to that data being routed to another module in the system 100” … “Much of the data modification done 803 may require the transformative capabilities of the decomposable transformer service module 150”, (Clayton: ¶110). Examiner notes: triggered events happen on a certain time interval, and formatting can be performed based on a trigger modifying .
Further regarding Claim 1, Clayton fails to teach:
utilizing a machine learning module and an artificial intelligence module to predict behavior patterns associated with a plurality of users;
However, Velammal teaches: “The AI unit is configured to provide suggestions related to a suitable plugin type for greenfield application development based on application source code uploaded by the user and provide suggestions related to suitable plugin types based on user behavior. In yet another embodiment of the present invention, the AI unit is configured to observe user behavior for suggesting a suitable plugin type and answer queries received from the user”, (Velammal: ¶19), “the AI unit 238 comprises of machine learning capabilities that observes user behavior for suggesting a suitable plugin out of hundreds of plugins that may be registered on the plugin unit 236. The AI unit 238 may have a machine learning-powered interface configured to observe user behavior history and answer queries in english received from the user”, (Velammal: ¶106).
wherein the configuration service associated with the agnostic transaction module comprises a configuration loader and a plugin management engine; and dynamically updating, by the processor, a modified data state based on a utilization of a plugin management engine,
However, Velammal teaches: “the plugin unit 236 is configured to provide a yml based language agnostic model to register and run the plugin types”, (Velammal: ¶90), “the plugin unit 236 is configured to read plugin metadata and register the first plugin type, third plugin type and fourth plugin type based on a plugin manifest file loaded within a zipped package of the plugin type”, (Velammal: ¶101), “The plugin unit 236 is configured to manage a complete lifecycle of the first plugin type from start to stop”, (Velammal: ¶91), “the plugin unit 236 is configured to enable or disable the registered plugins, filter the registered plugins via a programming language, search registered plugins using keywords, provide help information pertaining to the registered plugins, and delete registered running plugins”, (Velammal: ¶97), “the cloud configuration unit 220 creates a manifest.yaml file which is used to deploy source code applications to a pivotal cloud foundry cloud platform 230”, (Velammal: ¶65), “the series of changes may comprise moving all the spring configuration bean files from WEB-INF to the resources” … “In another example, the series of changes may comprise If JNDI data sources are found in the source code, then equivalent java configuration beans are added and old configurations are commented”, (Velammal: ¶83). Examiner notes: the plugin unit is being interpreted as the plugin management engine, the cloud configuration unit is being interpreted as the configuration loader.
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine utilizing a machine learning module and an artificial intelligence module to predict behavior patterns associated with a plurality of users; wherein the configuration service associated with the agnostic transaction module comprises a configuration loader and a plugin management engine; and dynamically updating, by the processor, a modified data state based on a utilization of a plugin management engine of Velammal with the methods and systems of Clayton resulting in a system using machine learning to determine user preferences and load configurations while also managing plugins. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 2, Clayton teaches:
the plurality of data files comprise a plurality of configuration files.
“As each data chunk (e.g., events, logs, and miscellaneous data) is ingested, an event tagger 1202 compares die data chunk to the processing portion of the service's respective configuration file”, (Clayton: ¶122), “storing the service configuration in a non-volatile data storage device; retrieving data from a service using at least the authentication and the access information in the service configuration, wherein the retrieved data comprises computing and networking events”, (Clayton: ¶63), “a connector interface service 1000 will receive service configurations for a plurality of different services” … “using the service configurations for the plurality of services, retrieve the events and logs and any other data according to the service configuration from the plurality of services”, (Clayton: ¶125).
Regarding Claim 3, Clayton teaches:
the external data source comprises a digital marketplace.
“Information from a plurality of network or cloud based service source which may include but are not limited to SALESFORCE™, BLOOMBERG™, THOMSON-REUTERS™, TWITTER™, FACEBOOK™, and GOOGLE™ using a connector module 135 specifically designed for the task 802”, (Clayton: ¶108), “Specialized purpose libraries may include but are not limited to financial markets functions libraries 251, Monte-Carlo risk routines 252, numeric analysis libraries 253, deep learning libraries 254, contract manipulation functions 255, money handling functions 256, Monte-Carlo search libraries 257, and quant approach securities routines 258” … “The invention may also make use of other libraries and capabilities that are known to those skilled in the art as instrumental in the regulated trade of items of worth” … “are augmented with interactive broker functions 235, market data source plugins 236, e-commerce messaging interpreters 237”, (Clayton: ¶104).
Regarding Claim 4, Clayton teaches:
the machine learning module comprises performing an analysis on the uniform data state.
“Filtered data may be split into two identical streams” … “wherein one substream may be sent for batch processing while another substream may be formalized 403 for transformation pipeline analysis 404” … “Reformatting might entail, but is not limited to: setting data field order, standardizing measurement units if choices are given, splitting complex information into multiple simpler fields, and stripping unwanted characters”, (Clayton: ¶111), “large amounts of data to be cleansed and formalized and then intricate transformations such as those that may be associated with deep machine learning”, (Clayton: ¶106), “the automated planning service module 130 which also runs powerful information theory 130a based predictive statistics functions and machine learning algorithms to allow future trends and outcomes to be rapidly forecast based upon the current system derived results and choosing each a plurality of possible business decisions”, (Clayton: ¶97).
Regarding Claim 6, Clayton teaches:
the particular configuration type comprises metadata associated with the uniform data state and dependencies associated with the uniform data state.
“a universal data connection interface for network and cloud-based services” …”can set up connectors between the accounts using a distributed computational graph such that all of the configuration information from Twitter™, Slack™, and Google™ is shown in a single interface with a common format” … “the system user wanted to use the search query data to find die ten most liked tweets that are related to the search query, a simple configuration change would be automatically applied to the cloud-based services and the intermediate transformation steps to ensure that the data is in the correct format”, (Clayton: ¶87), “A connector workflow configuration specifies the type of data received by each component and what task that component should perform …”, (Clayton: ¶112).
Further regarding Claim 6, Clayton fails to teach:
the particular configuration type comprises metadata associated with the uniform data state and dependencies associated with the uniform data state.
However, Velammal teaches: “the cloud configuration unit 220 is configured to create configuration artifacts specific to the selected cloud platform 23” … “creates a manifest.yaml file which is used to deploy source code applications to a pivotal cloud foundry cloud platform 230”, (Velammal: ¶65), “the plugin unit 236 is configured to read plugin metadata and register the first plugin type, third plugin type and fourth plugin type based on a plugin manifest file loaded within a zipped package of the plugin type. In an exemplary embodiment of the present invention, the manifest file may be a PluginManifest.yaml file that carries the plugin metadata of the plugin type to be registered”, (Velammal: ¶101), “the plugin unit 236 is configured to read information provided in the plugin manifest file including name, description, plugin type, plugin manifest file version, plugin author, plugin implementation language, and the target source code language”, (Velammal: ¶103), “the pre-processing stage involves analyzing the source code and other context like target framework and determination of dependencies and versions required provided by the user at the input unit 202”, (Velammal: ¶74), “the series of steps may include but are not limited to, addition, deletion and modification of configuration files” … “the modification of the configuration files may include adding a dependency to .xml file”, (Velammal: ¶77).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the particular configuration type comprises metadata associated with the uniform data state and dependencies associated with the uniform data state of Velammal with the methods and systems of Clayton resulting in a system utilizing plugin metadata and dependencies in a uniform data state. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 7, Clayton fails to teach:
the plugin management engines comprises a plurality of plugins that assist in the configuration associated with the particular data destination source.
However, Velammal teaches: “the plugin types may be a first plugin type, a second plugin type, a third plugin type and a fourth plugin type. In an exemplary embodiment of the present invention, the plugin unit 236 is configured to provide a yml based language agnostic model to register and run the plugin types…”, (Velammal: ¶90), “The plugin unit 236 runs the fourth plugin type as a transformation recommendation path for transforming an application source code to cloud native code” … “to transform the application source code to the cloud native code via the application transformation to cloud engine 210”, (Velammal: ¶95), “the user selects the first plugin and the second plugin the functionality A and B are applied respectively as part of a new semi-automated workflow”, (Velammal: ¶104), “the cloud configuration unit 220 is configured to create configuration artifacts specific to the selected cloud platform 230”, (Velammal: ¶65), “generate a cloud native code that is compatible with the selected cloud platform 230”, (Velammal: ¶73).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the plugin management engines comprises a plurality of plugins that assist in the configuration associated with the particular data destination source of Velammal with the methods and systems of Clayton resulting in a system utilizing plugins to configure data transmission. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 8, Clayton fails to teach:
receiving a first and a second configuration recommendation path in the plurality of plugins;
However, Velammal teaches: “receive a first and a second transformation recommendation paths”, (Velammal: Claim 1), “the first transformation recommendation path may be a “replatform” path” … “the second transformation recommendation path may be a “refactor” path which denotes that a significant amount of changes to the source code would be required to move the application source code to the cloud platform 230”, (Velammal: ¶55), “added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code”, (Velammal: Claim 9), “The plugin unit 236 runs the fourth plugin type as a transformation recommendation path for transforming an application source code to cloud native code” … “the plugin unit 236 is configured to allow registration of the fourth plugin type as a set of automated steps that may be added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code via the application transformation to cloud engine 210”, (Velammal: ¶95).
applying a predetermined set of remediation templates based on the first and the second configuration recommendation paths in the plurality of plugins;
However, Velammal teaches: “apply a set of remediation templates based on the first and the second transformation recommendation paths, wherein the set of remediation steps comprises pre-defined parameterized actions”, (Velammal: Claim 1), “a remediation template comprises of multiple actions” … “the multiple actions comprise implementing a pre-defined, parameterized change to the application source code…”, (Velammal: ¶60), “the remediation unit 222 is configured to apply a pre-defined remediation template on the application source code” … “the remediation templates are applied based on the first and the second transformation recommendation paths”, (Velammal: ¶72), “added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code”, (Velammal: Claim 9).
applying at least one configuration process flow on an application source code associated with the particular data destination source based on the configuration service;
However, Velammal teaches: “apply a pre-defined transformation process flow on the application source code based on the first and the second transformation recommendation paths, wherein the pre-defined transformation process flow includes a pre-processing stage involving analyzing the source code and a target framework, and determination of dependencies”, (Velammal: Claim 1), “the orchestration unit 212 of the application transformation to cloud engine 210 is configured to execute the semi-automated workflow based on the transformation recommendation path…”, (Velammal: ¶62), “one of the stages of the workflow include applying the one or more pre-defined transformation process flows onto the application source code” … “the pre-processing stage involves analyzing the source code and other context like target framework and determination of dependencies and versions required provided by the user at the input unit 202”, (Velammal: ¶74), “the cloud configuration unit 220 is configured to create configuration artifacts specific to the selected cloud platform 230”, (Velammal: ¶65), “the cloud native transformation unit 224 is configured to generate a cloud native code that is compatible with the selected cloud platform 230”, (Velammal: ¶73).
and applying a reusable service template on the application source code based on the first and the second configuration recommendation paths in the plurality of plugins.
However, Velammal teaches: “apply a reusable service template on the application source code, based on the first and the second transformation recommendation paths, wherein the reusable service template applies repeatable code changes required for integration and deployment of the cloud native code to a cloud platform”, (Velammal: Claim 1), “…the service templates are applied based on the first and the second transformation recommendation paths”, (Velammal: ¶85), “apply repeatable code changes required for integration and deployment of the application source code to the cloud platform”, (Velammal: ¶116), “added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code via the application transformation to cloud engine 210”, (Velammal: ¶95).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine receiving a first and a second configuration recommendation path in the plurality of plugins; applying a predetermined set of remediation templates based on the first and the second configuration recommendation paths in the plurality of plugins; applying at least one configuration process flow on an application source code associated with the particular data destination source based on the configuration service; and applying a reusable service template on the application source code based on the first and the second configuration recommendation paths in the plurality of plugins of Velammal with the methods and systems of Clayton resulting in a system that can apply templates based on recommended paths. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 9, Clayton fails to teach:
the reusable service template comprises a plurality of repeatable code modifications required for integration and deployment of the particular configuration type associated with the particular data destination source.
However, Velammal teaches: “the reusable service template applies repeatable code changes required for integration and deployment of the cloud native code to a cloud platform”, (Velammal: Claim 1), “the service templates apply repeatable code changes required for integration and deployment of the application source code to the cloud platform” … “the service templates may include adding a new file with lines of codes and placeholders” … “the service template may include adding a dependency in pom.xml file…”, (Velammal: ¶116), “the cloud configuration unit 220 is configured to create configuration artifacts specific to the selected cloud platform 230…”, (Velammal: ¶65), “the cloud native transformation unit 224 is configured to generate a cloud native code that is compatible with the selected cloud platform 230…”, (Velammal: ¶73), “a pipeline is created for continuous integration and deployment of the cloud native source code on a cloud platform…”, (Velammal: ¶117).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the reusable service template comprises a plurality of repeatable code modifications required for integration and deployment of the particular configuration type associated with the particular data destination source of Velammal with the methods and systems of Clayton resulting in a template that can be modified for integration and development. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 10, Clayton fails to teach:
utilizing a machine learning module and an artificial intelligence module to predict behavior patterns associated with a plurality of users.
However, Velammal teaches: “The AI unit is configured to provide suggestions related to a suitable plugin type for greenfield application development based on application source code uploaded by the user and provide suggestions related to suitable plugin types based on user behavior. In yet another embodiment of the present invention, the AI unit is configured to observe user behavior for suggesting a suitable plugin type and answer queries received from the user”, (Velammal: ¶19), “the AI unit 238 comprises of machine learning capabilities that observes user behavior for suggesting a suitable plugin out of hundreds of plugins that may be registered on the plugin unit 236. The AI unit 238 may have a machine learning-powered interface configured to observe user behavior history and answer queries in english received from the user”, (Velammal: ¶106).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine utilizing a machine learning module and an artificial intelligence module to predict behavior patterns associated with a plurality of users of Velammal with the methods and systems of Clayton resulting in a system using machine learning to determine user preferences. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 11, Clayton fails to teach:
the predicted behavior patterns comprise a plurality of recommended paths to a particular set of plugins within the plurality of plugins that correctly correspond with at least one data destination source.
However, Velammal teaches: “the plugin unit 236 is configured to identify a best suitable plugin for a required application source code transformation to cloud native code or greenfield application development using Artificial Intelligence (AI)” … “the plugin unit 236 comprises an Artificial Intelligence (AI) unit 238 (FIG. 2) that collects information from the user and based on the application source code uploaded by the user, the AI unit 238 may suggest suitability of a plugin for application source code transformation to cloud native code”, (Velammal: ¶105), “the AI unit 238 comprises of machine learning capabilities that observes user behavior for suggesting a suitable plugin out of hundreds of plugins that may be registered on the plugin unit 236…”, (Velammal: ¶106), “The plugin unit 236 runs the fourth plugin type as a transformation recommendation path” … “the first and the second transformation recommendation paths to transform the application source code to the cloud native code via the application transformation to cloud engine 210”, (Velammal: ¶95), “one or more plugins may be combined/added together into a new semi-automated workflow” … “if one plugin provides a functionality A and another plugin provides functionality B, when the user selects the first plugin and the second plugin the functionality A and B are applied respectively as part of a new semi-automated workflow”, (Velammal: ¶104), “the CI/CD pipeline builder unit 228 creates a job to create the CI/CD pipeline such that the application source code is deployed onto the cloud platform 230 based on the first, second and third transformation recommendation paths” … “the selected cloud platform is performed for the first, second, third and fourth migration transformation path recommendations”, (Velammal: ¶87).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the predicted behavior patterns comprise a plurality of recommended paths to a particular set of plugins within the plurality of plugins that correctly correspond with at least one data destination source of Velammal with the methods and systems of Clayton resulting in a system using machine learning to determine user preferences. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 13, Clayton fails to teach:
automatically selecting a particular plugin of the plurality of plugins based on a predicted behavior of a particular user for subsequent use.
However, Velammal teaches: “the plugin unit 236 is configured to identify a best suitable plugin for a required application source code transformation to cloud native code or greenfield application development using Artificial Intelligence (AI)”, (Velammal: ¶105), “the AI unit 238 comprises of machine learning capabilities that observes user behavior for suggesting a suitable plugin out of hundreds of plugins that may be registered on the plugin unit 236. The AI unit 238 may have a machine learning-powered interface configured to observe user behavior history and answer queries in english received from the user”, (Velammal: ¶106), “The plugin unit 236 runs the fourth plugin type as a transformation recommendation path for transforming an application source code to cloud native code” … “the plugin unit 236 is configured to add the fourth plugin type as a custom transformation recommendation path in addition to the existing transformation recommendation path and channelize the transformation recommendation path for reuse”, (Velammal: ¶95).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine automatically selecting a particular plugin of the plurality of plugins based on a predicted behavior of a particular user for subsequent use of Velammal with the methods and systems of Clayton resulting in a system selecting a plugin based off determined user preferences. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 15, Clayton fails to teach:
utilizing a graphical user interface within a computing device to display at least one dynamic update to the modified data state based on the configuration service.
However, Velammal teaches: “The workflow management unit 214 renders information on stages of execution of the workflow via the graphical user interface (as shown in FIG. 4B) Further, the workflow management unit 214 also renders a result summary of the execution of the workflow”, (Velammal: ¶63), “the scheduler unit 216 in communication with the workflow management unit 214 is configured to periodically check status of the workflow by calling an application program interface (API) end-point”, (Velammal: ¶64), “the application transformation to cloud engine 210 comprises a portfolio level dashboard that provides transformation status of all initiated transformation recommendation path instances including that of the registered plugins of the application to cloud engine 210”, (Velammal: ¶96), “send a status message to the plugin unit 236 via an API call or via a javascript” … “the plugin unit 236 automatically estimates when the third plugin type and the fourth plugin type complete the execution”, (Velammal: ¶99), “The output device(s) 512 may include, but not limited to, a user interface on CRT or LCD, printer, speaker, CD/DVD writer, or any other device that provides output from the computer system 502”, (Velammal: ¶124).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine utilizing a graphical user interface within a computing device to display at least one dynamic update to the modified data state based on the configuration service of Velammal with the methods and systems of Clayton resulting in GUI that users can use to visualize modifications being made on the configuration service. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 16, Clayton teaches:
A computer-implemented method comprising: identifying, by a processor, a plurality of data files associated with an external data source;
“the first plurality of programming instructions, when operating on the processor, cause the computing device to” … “retrieve data from a service using at least the authentication and the access information in the service configuration, wherein the retrieved data comprises computing and networking events;”, (Clayton: ¶62), “which while autonomously configured are deployed within a web scraping framework 115a of which SCRAPY™ is an example, to identify and retrieve data of interest from web based sources that are not well tagged by conventional web crawling technology”, (Clayton: ¶96), “a component input server 506 retrieves a plurality of data from each of the services with stored configurations, unless one is not needed, i.e., there is no requirement for authentication to retrieve events, logs, and miscellaneous related data. As each data chunk (e.g., events, logs, and miscellaneous data) is ingested, an event tagger 1202 compares die data chunk to the processing portion of the service's respective configuration file”, (Clayton: ¶122). Examiner notes: “events, logs, and miscellaneous data” are being interpreted as the plurality data files.
utilizing, by the processor, an agnostic transaction module to configure each data file within the plurality of data files into a uniform data state;
“a universal data connection interface for network and cloud-based services” … “all of the configuration information from Twitter™, Slack™, and Google™ is shown in a single interface with a common format” … “the system user wanted to use the search query data to find die ten most liked tweets that are related to the search query, a simple configuration change would be automatically applied to the cloud-based services and the intermediate transformation steps to ensure that the data is in the correct format”, (Clayton: ¶87), “Connector workflows may comprise a variety of plugins each of which is related to a cloud-based network service. Each plugin can be categorized into one of the three following components, an input stage, a transformation stage, and an output stage.” … “A transformation component changes the format of the data message”, (Clayton: ¶095), “data being passed to the connector module 135 which may possess the API routines 135a needed to accept and convert the external data and then pass the normalized information to other analysis and transformation components…”, (Clayton: ¶96). Examiner notes: the common format/correct format is being interpreted ats the uniform data state.
automatically modifying, by the processor, the uniform data state to a particular configuration type associated with a particular data destination source based on a configuration service;
“The system takes care of retrieving and formatting the data for the user's use, and takes care of reformatting, uploading, and coordination of data among die cloud-based services if die user makes changes” … “a simple configuration change would be automatically applied to the cloud-based services and the intermediate transformation steps to ensure that the data is in the correct format”, (Clayton: ¶87), “aggregation or audio to text translation are completely dependent on the intended downstream usage of that data with coding for each transformation pre-programmed and pre-selected for those purposes”, (Clayton: ¶110), “A connector workflow configuration specifies the type of data received by each component and what task that component should perform …”, (Clayton: ¶112).
and dynamically updating, by the processor, a modified data state associated with the particular plugin based on a utilization of a plugin management engine.
“The run manager 503 may be responsible for a variety of functions including, but not limited to start and restart of workflows by spawning processes (and the required components) dynamically on any core node 505, notify each process, receive notification from a process, and store connector workflow status and components on an in memory database”, (Clayton: ¶113), “An execution server 508 will persist the state of die execution 507, and start the component plugin(s) 510, 511 through the component supervisor 509, passing the configuration needed for each plugin 510, 511”, (Clayton: ¶114), “the execution server 508 will know how to process these errors, while keeping the state of the message which may have had several modifications during the execution 507”, (Clayton: ¶116), “The module is designed to accommodate irregular and high volume surges by dynamically allotting network bandwidth and server processing channels to process the incoming data”, (Clayton: ¶96), “These multiple types of data from a plurality of sources may be transformed for analysis 311” … “network and system user behavior analytics 332, attacker and defender action timeline 333, SIEM integration and analysis 334, dynamic benchmarking 335, and incident identification and resolution performance analytics”, (Clayton: ¶107).
Further regarding Claim 16, Clayton fails to teach:
utilizing, by the processor, a machine learning module and an artificial intelligence module to predict a behavior pattern associated with a particular user of a plurality of users based on the particular data destination source;
However, Velammal teaches: “the AI unit is configured to collect information from a user and based on the application source code uploaded by the user provide suggestions to the user related to a suitable plugin type for the application source code cloud transformation. The AI unit is configured to provide suggestions related to a suitable plugin type for greenfield application development based on application source code uploaded by the user and provide suggestions related to suitable plugin types based on user behavior. In yet another embodiment of the present invention, the AI unit is configured to observe user behavior for suggesting a suitable plugin type and answer queries received from the user”, (Velammal: ¶19), “the AI unit 238 comprises of machine learning capabilities that observes user behavior for suggesting a suitable plugin out of hundreds of plugins that may be registered on the plugin unit 236. The AI unit 238 may have a machine learning-powered interface configured to observe user behavior history and answer queries in english received from the user”, (Velammal: ¶106).
automatically selecting, by the processor, a particular plugin of the plurality of plugins based on the behavior pattern of the particular user for subsequent use of the configuration service;
However, Velammal teaches: “the plugin unit 236 is configured to identify a best suitable plugin for a required application source code transformation to cloud native code or greenfield application development using Artificial Intelligence (AI)”, (Velammal: ¶105), “the AI unit 238 comprises of machine learning capabilities that observes user behavior for suggesting a suitable plugin out of hundreds of plugins that may be registered on the plugin unit 236. The AI unit 238 may have a machine learning-powered interface configured to observe user behavior history and answer queries in english received from the user”, (Velammal: ¶106), “The plugin unit 236 runs the fourth plugin type as a transformation recommendation path for transforming an application source code to cloud native code” … “the plugin unit 236 is configured to add the fourth plugin type as a custom transformation recommendation path in addition to the existing transformation recommendation path and channelize the transformation recommendation path for reuse”, (Velammal: ¶95).
and dynamically updating, by the processor, a modified data state associated with the particular plugin based on a utilization of a plugin management engine.
However, Velammal teaches: “the plugin unit 236 is configured to provide a yml based language agnostic model to register and run the plugin types”, (Velammal: ¶90), “the plugin unit 236 is configured to read plugin metadata and register the first plugin type, third plugin type and fourth plugin type based on a plugin manifest file loaded within a zipped package of the plugin type”, (Velammal: ¶101), “The plugin unit 236 is configured to manage a complete lifecycle of the first plugin type from start to stop”, (Velammal: ¶91), “the plugin unit 236 is configured to enable or disable the registered plugins, filter the registered plugins via a programming language, search registered plugins using keywords, provide help information pertaining to the registered plugins, and delete registered running plugins”, (Velammal: ¶97), “the cloud configuration unit 220 creates a manifest.yaml file which is used to deploy source code applications to a pivotal cloud foundry cloud platform 230”, (Velammal: ¶65), “the series of changes may comprise moving all the spring configuration bean files from WEB-INF to the resources” … “In another example, the series of changes may comprise If JNDI data sources are found in the source code, then equivalent java configuration beans are added and old configurations are commented”, (Velammal: ¶83). Examiner notes: the plugin unit is being interpreted as the plugin management engine, the cloud configuration unit is being interpreted as the configuration loader.
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine utilizing, by the processor, a machine learning module and an artificial intelligence module to predict a behavior pattern associated with a particular user of a plurality of users based on the particular data destination source; automatically selecting, by the processor, a particular plugin of the plurality of plugins based on the behavior pattern of the particular user for subsequent use of the configuration service; … dynamically updating, by the processor, a modified data state associated with the particular plugin based on a utilization of a plugin management engine of Velammal with the methods and systems of Clayton resulting in using machine learning to determine user preferences, using selecting a plugin based off determined user preferences, and reformatting data based on utilization. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 17, Clayton fails to teach:
receiving a first and a second configuration recommendation path in the plurality of plugins;
However, Velammal teaches: “receive a first and a second transformation recommendation paths”, (Velammal: Claim 1), “the first transformation recommendation path may be a “replatform” path” … “the second transformation recommendation path may be a “refactor” path which denotes that a significant amount of changes to the source code would be required to move the application source code to the cloud platform 230”, (Velammal: ¶55), “added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code”, (Velammal: Claim 9), “The plugin unit 236 runs the fourth plugin type as a transformation recommendation path for transforming an application source code to cloud native code” … “the plugin unit 236 is configured to allow registration of the fourth plugin type as a set of automated steps that may be added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code via the application transformation to cloud engine 210”, (Velammal: ¶95).
applying a predetermined set of remediation templates based on the first and the second configuration recommendation paths in the plurality of plugins;
However, Velammal teaches: “apply a set of remediation templates based on the first and the second transformation recommendation paths, wherein the set of remediation steps comprises pre-defined parameterized actions”, (Velammal: Claim 1), “a remediation template comprises of multiple actions” … “the multiple actions comprise implementing a pre-defined, parameterized change to the application source code…”, (Velammal: ¶60), “the remediation unit 222 is configured to apply a pre-defined remediation template on the application source code” … “the remediation templates are applied based on the first and the second transformation recommendation paths”, (Velammal: ¶72), “added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code”, (Velammal: Claim 9).
applying at least one configuration process flow on an application source code associated with the particular data destination source based on the configuration service;
However, Velammal teaches: “apply a pre-defined transformation process flow on the application source code based on the first and the second transformation recommendation paths, wherein the pre-defined transformation process flow includes a pre-processing stage involving analyzing the source code and a target framework, and determination of dependencies”, (Velammal: Claim 1), “the orchestration unit 212 of the application transformation to cloud engine 210 is configured to execute the semi-automated workflow based on the transformation recommendation path…”, (Velammal: ¶62), “one of the stages of the workflow include applying the one or more pre-defined transformation process flows onto the application source code” … “the pre-processing stage involves analyzing the source code and other context like target framework and determination of dependencies and versions required provided by the user at the input unit 202”, (Velammal: ¶74), “the cloud configuration unit 220 is configured to create configuration artifacts specific to the selected cloud platform 230”, (Velammal: ¶65), “the cloud native transformation unit 224 is configured to generate a cloud native code that is compatible with the selected cloud platform 230”, (Velammal: ¶73).
applying a reusable service template on the application source code based on the first and the second configuration recommendation paths in the plurality of plugins.
However, Velammal teaches: “apply a reusable service template on the application source code, based on the first and the second transformation recommendation paths, wherein the reusable service template applies repeatable code changes required for integration and deployment of the cloud native code to a cloud platform”, (Velammal: Claim 1), “…the service templates are applied based on the first and the second transformation recommendation paths”, (Velammal: ¶85), “apply repeatable code changes required for integration and deployment of the application source code to the cloud platform”, (Velammal: ¶116), “added as a custom transformation recommendation path in the first and the second transformation recommendation paths to transform the application source code to the cloud native code via the application transformation to cloud engine 210”, (Velammal: ¶95).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine receiving a first and a second configuration recommendation path in the plurality of plugins; applying a predetermined set of remediation templates based on the first and the second configuration recommendation paths in the plurality of plugins; applying at least one configuration process flow on an application source code associated with the particular data destination source based on the configuration service; and applying a reusable service template on the application source code based on the first and the second configuration recommendation paths in the plurality of plugins of Velammal with the methods and systems of Clayton resulting in a system that can apply templates based on recommended paths. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 18, Clayton fails to teach:
the reusable service template comprises a plurality of repeatable code modifications required for integration and deployment of the particular configuration type associated with the particular data destination source.
However, Velammal teaches: “the reusable service template applies repeatable code changes required for integration and deployment of the cloud native code to a cloud platform”, (Velammal: Claim 1), “the service templates apply repeatable code changes required for integration and deployment of the application source code to the cloud platform” … “the service templates may include adding a new file with lines of codes and placeholders” … “the service template may include adding a dependency in pom.xml file…”, (Velammal: ¶116), “the cloud configuration unit 220 is configured to create configuration artifacts specific to the selected cloud platform 230…”, (Velammal: ¶65), “the cloud native transformation unit 224 is configured to generate a cloud native code that is compatible with the selected cloud platform 230…”, (Velammal: ¶73), “a pipeline is created for continuous integration and deployment of the cloud native source code on a cloud platform…”, (Velammal: ¶117).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the reusable service template comprises a plurality of repeatable code modifications required for integration and deployment of the particular configuration type associated with the particular data destination source of Velammal with the methods and systems of Clayton resulting in a template that can be modified for integration and development. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 19, Clayton fails to teach
utilizing a graphical user interface within a computing device to display at least one dynamic update to the modified data state based on the configuration service.
However, Velammal teaches: “The workflow management unit 214 renders information on stages of execution of the workflow via the graphical user interface (as shown in FIG. 4B) Further, the workflow management unit 214 also renders a result summary of the execution of the workflow”, (Velammal: ¶63), “the scheduler unit 216 in communication with the workflow management unit 214 is configured to periodically check status of the workflow by calling an application program interface (API) end-point”, (Velammal: ¶64), “the application transformation to cloud engine 210 comprises a portfolio level dashboard that provides transformation status of all initiated transformation recommendation path instances including that of the registered plugins of the application to cloud engine 210”, (Velammal: ¶96), “send a status message to the plugin unit 236 via an API call or via a javascript” … “the plugin unit 236 automatically estimates when the third plugin type and the fourth plugin type complete the execution”, (Velammal: ¶99), “The output device(s) 512 may include, but not limited to, a user interface on CRT or LCD, printer, speaker, CD/DVD writer, or any other device that provides output from the computer system 502”, (Velammal: ¶124).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine utilizing a graphical user interface within a computing device to display at least one dynamic update to the modified data state based on the configuration service of Velammal with the methods and systems of Clayton resulting in GUI that users can use to visualize modifications being made on the configuration service. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Regarding Claim 20, Clayton teaches:
A system comprises: a non-transient computer memory, storing software instructions;
“a first plurality of programming instructions stored in the memory of, and operating on the processor of, the computing device, wherein the first plurality of programming instructions”, (Clayton: ¶62), “the techniques disclosed herein may be implemented on hardware or a combination of software and hardware”, (Clayton: ¶128), “Computing device 10 may be, for example, any one of the computing machines listed in the previous paragraph, or indeed any other electronic device capable of executing software- or hardware-based instructions according to one or more programs stored in memory”, (Clayton: ¶130).
at least one processor of a first computing device associated with a user;
“implemented on one or more general-purpose computers associated with one or more networks, such as for example an end-user computer system, a client computer, a network server or other server system, a mobile computing device (e.g., tablet computing device, mobile phone, smartphone, laptop, or other appropriate computing device), a consumer electronic device, a music player, or any other suitable electronic device, router, switch, or other suitable device, or any combination thereof”, (Clayton: ¶129), “ Input devices 28 may be of any type suitable for receiving user input, including for example a keyboard, touchscreen, microphone (for example, for voice input), mouse, touchpad, trackball, or any combination thereof. Output devices 27 may be of any type suitable for providing output to one or more users…”, (Clayton: ¶138).
wherein, when the processor executes the software instructions, the first computing device is programmed to: identify a plurality of data files associated with an external data source;
“the first plurality of programming instructions, when operating on the processor, cause the computing device to” … “retrieve data from a service using at least the authentication and the access information in the service configuration, wherein the retrieved data comprises computing and networking events;”, (Clayton: ¶62), “which while autonomously configured are deployed within a web scraping framework 115a of which SCRAPY™ is an example, to identify and retrieve data of interest from web based sources that are not well tagged by conventional web crawling technology”, (Clayton: ¶96), “a component input server 506 retrieves a plurality of data from each of the services with stored configurations, unless one is not needed, i.e., there is no requirement for authentication to retrieve events, logs, and miscellaneous related data. As each data chunk (e.g., events, logs, and miscellaneous data) is ingested, an event tagger 1202 compares die data chunk to the processing portion of the service's respective configuration file”, (Clayton: ¶122). Examiner notes: “events, logs, and miscellaneous data” are being interpreted as the plurality data files.
utilize an agnostic transaction module to configure each data file within the plurality of data files into a uniform data state;
“a universal data connection interface for network and cloud-based services” … “all of the configuration information from Twitter™, Slack™, and Google™ is shown in a single interface with a common format” … “the system user wanted to use the search query data to find die ten most liked tweets that are related to the search query, a simple configuration change would be automatically applied to the cloud-based services and the intermediate transformation steps to ensure that the data is in the correct format”, (Clayton: ¶87), “Connector workflows may comprise a variety of plugins each of which is related to a cloud-based network service. Each plugin can be categorized into one of the three following components, an input stage, a transformation stage, and an output stage.” … “A transformation component changes the format of the data message”, (Clayton: ¶095), “data being passed to the connector module 135 which may possess the API routines 135a needed to accept and convert the external data and then pass the normalized information to other analysis and transformation components…”, (Clayton: ¶96). Examiner notes: the common format/correct format is being interpreted ats the uniform data state.
automatically modify the uniform data state to a particular configuration type associated with a particular data destination source based on a configuration service;
“The system takes care of retrieving and formatting the data for the user's use, and takes care of reformatting, uploading, and coordination of data among die cloud-based services if die user makes changes” … “a simple configuration change would be automatically applied to the cloud-based services and the intermediate transformation steps to ensure that the data is in the correct format”, (Clayton: ¶87), “aggregation or audio to text translation are completely dependent on the intended downstream usage of that data with coding for each transformation pre-programmed and pre-selected for those purposes”, (Clayton: ¶110), “A connector workflow configuration specifies the type of data received by each component and what task that component should perform …”, (Clayton: ¶112).
and dynamically update a modified data state based on a utilization of a plugin management engine.
“The run manager 503 may be responsible for a variety of functions including, but not limited to start and restart of workflows by spawning processes (and the required components) dynamically on any core node 505, notify each process, receive notification from a process, and store connector workflow status and components on an in memory database”, (Clayton: ¶113), “An execution server 508 will persist the state of die execution 507, and start the component plugin(s) 510, 511 through the component supervisor 509, passing the configuration needed for each plugin 510, 511”, (Clayton: ¶114), “the execution server 508 will know how to process these errors, while keeping the state of the message which may have had several modifications during the execution 507”, (Clayton: ¶116), “The module is designed to accommodate irregular and high volume surges by dynamically allotting network bandwidth and server processing channels to process the incoming data”, (Clayton: ¶96), “These multiple types of data from a plurality of sources may be transformed for analysis 311” … “network and system user behavior analytics 332, attacker and defender action timeline 333, SIEM integration and analysis 334, dynamic benchmarking 335, and incident identification and resolution performance analytics”, (Clayton: ¶107).
Further regarding Claim 20, Clayton fails to teach:
and dynamically update a modified data state based on a utilization of a plugin management engine.
However, Velammal teaches: “the plugin unit 236 is configured to provide a yml based language agnostic model to register and run the plugin types”, (Velammal: ¶90), “the plugin unit 236 is configured to read plugin metadata and register the first plugin type, third plugin type and fourth plugin type based on a plugin manifest file loaded within a zipped package of the plugin type”, (Velammal: ¶101), “The plugin unit 236 is configured to manage a complete lifecycle of the first plugin type from start to stop”, (Velammal: ¶91), “the plugin unit 236 is configured to enable or disable the registered plugins, filter the registered plugins via a programming language, search registered plugins using keywords, provide help information pertaining to the registered plugins, and delete registered running plugins”, (Velammal: ¶97), “the cloud configuration unit 220 creates a manifest.yaml file which is used to deploy source code applications to a pivotal cloud foundry cloud platform 230”, (Velammal: ¶65), “the series of changes may comprise moving all the spring configuration bean files from WEB-INF to the resources” … “In another example, the series of changes may comprise If JNDI data sources are found in the source code, then equivalent java configuration beans are added and old configurations are commented”, (Velammal: ¶83). Examiner notes: the plugin unit is being interpreted as the plugin management engine, the cloud configuration unit is being interpreted as the configuration loader.
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine dynamically update a modified data state based on a utilization of a plugin management engine of Velammal with the methods and systems of Clayton resulting in a system reformatting data based on utilization. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “accelerate greenfield application development or application transformation to cloud”, (Velammal: ¶18), “the invention provides an integrated end-to-end process steps to kick start application cloud migration”, (Velammal: ¶118), “The application to cloud transformation system reduces manual effort and brings in accuracy by integrating tools that automates the development and migration steps”, (Velammal: ¶121).
Claims 5 and 14 are rejected under 35 U.S.C. 103(a) as being unpatentable over Clayton in view of Velammal, in further view of O’Brien et al. (US 20210272206 A1) (hereinafter O’Brien).
Regarding Claim 5, Clayton teaches:
analysis of the uniform data state.
“Filtered data may be split into two identical streams” … “wherein one substream may be sent for batch processing while another substream may be formalized 403 for transformation pipeline analysis 404” … “Reformatting might entail, but is not limited to: setting data field order, standardizing measurement units if choices are given, splitting complex information into multiple simpler fields, and stripping unwanted characters”, (Clayton: ¶111), “large amounts of data to be cleansed and formalized and then intricate transformations such as those that may be associated with deep machine learning”, (Clayton: ¶106), “the automated planning service module 130 which also runs powerful information theory 130a based predictive statistics functions and machine learning algorithms to allow future trends and outcomes to be rapidly forecast based upon the current system derived results and choosing each a plurality of possible business decisions”, (Clayton: ¶97).
Further regarding Claim 5, Clayton in view of Velammal fails to teach:
automatically ranking a plurality of scenarios associated with the analysis of the uniform data state, and dynamically selecting at least one scenario of the plurality of scenario based on an aggregated scenario score associated with the analysis of the uniform data state.
However, O’Brien teaches: “FIG. 16 illustrates the generation of a plurality of combinations of the options generated in FIG. 15”, (O’Brien: ¶28, Fig 16), “FIG. 17 illustrates the scoring and ranking of the combinations generated in FIG. 16”, (O’Brien: ¶29, Fig 17), “the financial data 1040/1041/1042/1044/1046 from the plurality of data sources 1006/1008/1010/1012/1014 and/or data inputs. The financial data 1040/1041/1042/1044/1046 data is mapped 1064 to internal formats”, (O’Brien: ¶55), “the suggestion engine then ranks 1070 the list of potential refinance options to produce a final list of suggestions and the top-n suggestions are displayed 1072 or sent to the user/entity”, (O’Brien: ¶57), “The optimal solution 1098 shows one additional step before the results are displayed 1072, based on each scenario's filtered result an optimal option can be selected between all scenarios”, (O’Brien: ¶59, Fig 9), “the newly combined refinancing options 1258/1260/1262, the algorithm calculates a score using a statistical model derived from historical data (see scoring system 1270 of FIG. 17)”, (O’Brien: ¶81), “utilizes machine learned models to find the optimal score for each combination for that individual…”, (O’Brien: ¶87), “Alternatives are suggested 1276, and the process of FIG. 17 repeats indefinitely until an acceptable solution is reached or there are no further solutions available…”, (O’Brien: ¶84). Examiner notes: internal formats further reinforces Claytons teaching of a uniform data state.
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine automatically ranking a plurality of scenarios associated with the analysis of the uniform data state, and dynamically selecting at least one scenario of the plurality of scenario based on an aggregated scenario score associated with the analysis of the uniform data state of O’Brien with the methods and systems of Clayton in view of Velammal resulting in a system that can apply scenario rankings to Claytons analysis of uniform data states. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “rank a large number of possible options into one or more actionable solutions”, (O’Brien: ¶9), and determine “The combination with the highest score(s)”, (O’Brien: ¶81), “to find the optimal recommendations”, (O’Brien: ¶88).
Regarding Claim 14, Clayton in view of Velammal fails to teach:
the particular user comprises a particular broker seeking to interact with a particular lender.
However, O’Brien teaches: “the described system is operated by a financial institution that offers such loans or by a third party. The operator, henceforth referred to as the user, will perform the same or similar steps, except it will find a financial institution that matches the loan requested by the entity”, (O’Brien: ¶14), “The described invention and all equivalents are understood to be used by a lender” … “by a third party that originates loans for several lenders, or as a tool that is used by the entity directly” … “If used by a third party, the lender that is used compensates the third party and the third party either pays a flat monthly fee for usage of the system for loan origination or pays a percentage of what is earned from the lenders”, (O’Brien: ¶90), “the term “user” refers to a person or persons that interface with the financial recommendation engine on behalf of themselves or others”, (O’Brien: ¶32), “including but not limited to banks 1006, credit unions 1008, lenders 1010, auto dealerships 1012, and real estate organizations 1014 for obtaining information that is used by the recommendation engine to find recommendations that are best suited to move the entity in a better financial position”, (O’Brien: ¶36).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the particular user comprises a particular broker seeking to interact with a particular lender of O’Brien with the methods and systems of Clayton in view of Velammal resulting in a user being able connect a broker and lender. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “the recommendation engine is fed the financial data of an entity and finds optimal alternatives to the entity's current debt and investments in the entity's current financial portfolio”, (O’Brien: ¶13).
Claim 12 is rejected under 35 U.S.C. 103(a) as being unpatentable over Clayton in view of Velammal, in further view of Alioto et al. (US 20220130268 A1) (hereinafter Alioto).
Regarding Claim 12, Clayton in view Velammal fails to teach:
the recommended path to the particular set of plugins comprises a recorded collection of a plurality of previous paths taken via the plugin management engine to at least one particular plugin associated with the particular data destination source.
However, Alioto teaches: “a plugin developer may design a set of plugins for activities and/or interactives to accommodate various pathway types (e.g., free pathway types, fixed pathway types, etc.)” … “The content management system 300 may present, e.g., via a graphical user interface (GUI), a set of various choices in pathway architectures and/or one or more recommended/suggested pathway types”, (Alioto: ¶179), “the content creator has selected a chosen set of plugins, and organized them within a pathway architecture in such a way that the chosen set of plugins may present a customized experience for one or more learner users, the content management system 300 may then display the learning course content to the learner users according to the pathway architecture and selection of screens”, (Alioto: ¶227), “As learner users traverse a pathway architecture, the content management system 300 may aggregate data associated with the learner user”,(Alioto: ¶180), “The content management system 300 may then collect and aggregate learner user details, learner user annotations, learner user history, learner user progress, route information, and the like from the user interaction”, (Alioto: ¶181), “the set of learner user interactions may be recorded, then may analyze conditions and apply associated algorithms” … “to redirect the learner user through a customized pathway to a specific screen…”, (Alioto: ¶190), “the actual navigation may take advantage of a plugin application programming interface (API), and/or a routing system on the plugin API”, (Alioto: ¶101), “the state of the plugin may be managed and controlled through the platform itself at a higher level…”, (Alito: ¶182), “the pathway connection information may define a set of pathway connections between screens corresponding to the selection of screen plugins”, (Alito: ¶230), “these plugins are capable of providing state (e.g., a learning state of the learner user) and other learner user data to the content management system 300”, (Alito: ¶189).
It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the recommended path to the particular set of plugins comprises a recorded collection of a plurality of previous paths taken via the plugin management engine to at least one particular plugin associated with the particular data destination source of Alioto with the methods and systems of Clayton in view of Velammal resulting in a system that can recommend a data stream based on previous recorded paths. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of “the architecture of the content management system 300 may be both extensible and flexible, achieving any level of complexity desired by a user (e.g., a content creator), thereby providing significant improvements over the prior art”, (Alioto: ¶107), “draw conclusions based on the aggregated data about learner user behavior”, (Alioto: ¶221), “enable a content creator with little or no programming experience to create and define scenarios, some of which that may have complex set of conditions and actions”, (Alioto: ¶270).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to SHIHAB ALAM whose telephone number is (571)272-8705. The examiner can normally be reached Mon - Fri 7:30am-5pm.
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, Bradley Teets can be reached at (571) 272-3338. 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.
/S.A./Examiner, Art Unit 2197
/BRADLEY A TEETS/Supervisory Patent Examiner, Art Unit 2197