Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
DETAILED ACTION
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-21 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
Regarding independent claims the limitations generates a property, determines an account type, cloud provider, and cloud resource as drafted, recites functions that, under its broadest reasonable interpretation, covers a function that could reasonably be performed in the mind, including with the aid of pen and paper, but for the recitation of generic computer components. That is, the limitations as cited above as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process.
Thus, these limitation falls within the “Mental Processes” grouping of abstract ideas under Prong 1.
Under Prong 2, this judicial exception is not integrated into a practical application. The claim recites the following additional limitations: circuitry and storage medium. The additional elements are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, MPEP 2106.05(f), and the step of receiving do nothing more than add insignificant extra solution activity to the judicial exception of merely gathering data. Accordingly, the additional elements do not integrate the recited judicial exception into a practical application and the claim is therefore directed to the judicial exception. See MPEP 2106.05(g) (Ex. v. Consulting and updating an activity log, Ultramercial, 772 F.3d at 715, 112 USPQ2d at 1754).
Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of circuitry and storage medium, amount to no more than mere instructions, or generic computer/computer components to carry out the exception. Furthermore, the limitations directed to receiving the courts have identified mere data gathering is well-understood, routine and conventional activity. See MPEP 2106.05(d) (Ex. iv. Storing and retrieving information in memory, Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334, 115 USPQ2d 1681, 1701 (Fed. Cir. 2015); OIP Techs., 788 F.3d at 1363, 115 USPQ2d at 1092-93;).
The recitation of generic computer instruction and computer components to apply the judicial exception, and mere data gathering do not amount to significantly more, thus, cannot provide an inventive concept. Accordingly, the claims are not patent eligible under 35 USC 101.
Regarding claim 2-7, 9-14, 16-21 the limitations of what a dependency is between, generating a graph, what a graph includes, details of the dependency, what a property includes, extracting, determining a type and provider, removing a listing, are functions that can be reasonably performed in the human mind, thus, additional mental process defined in the claims. The claim does not include any additional element, thus, no limitation that needs to be analyzed under prong 2 for practical application, or under step 2B for significantly more.
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.
Claim/s 1-6, 8-13, 15-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Sanchez (Pub. No. US 2022/0019476) in view of Ferreira (Pub. No. US 2022/0327001) in further view of Deviprasad (Pub. No. US 2023/0224257).
Claim 1, 8, 15 Sanchez teaches “an apparatus to analyze resource dependencies, the apparatus comprising: interface circuitry; machine readable instructions; and programmable circuitry to at least one of instantiate or execute the machine readable instructions to ([0060] memory and processor): generate a self-contained dependency descriptor property based on a dependency between a first cloud resource and a second cloud resource ([Fig. 8] resources of service provider comprise dependsOn attribute); receive a resource allocation request ([0040] The example resource controller 210 of the illustrated example of FIG. 2 sends the resource deployments of the resource request to the resource-based service 108 based on the dependency graph stored in the dependency graph buffer 208. [0051] FIGS. 6A, 6B, and 6C are an example Yaml file 600 that represents resources of the dependency graph 500 of FIG. 5. The example Yaml file 600 is represented as programming language pseudocode of machine-readable instructions that may be executed to determine resource deployment order of the resources in the dependency graph 500 of FIG. 5. That is, the example Yaml file 600 is a resource request file.), the resource allocation request indicative of a first cloud resource account type ([Fig. 6A] “kind: Service” in reference to dependency graph Fig. 5 [0047] The example Yaml file 400 includes example service account resource lines of code 402, example role resource lines of code 404, example role binding resource lines of code 406, and example namespace resource lines of code 408. In the illustrated example, the service account resource lines of code 402 correspond to the service account resource 304 of FIG. 3, the role resource lines of code 404 correspond to the role resource 306 of FIG. 3, the role binding resource lines of code 406 correspond to the role binding resource 308 of FIG. 3, and the namespace resource lines of code 408 correspond to the namespace resource 302 of FIG. 3.); based on the self-contained dependency descriptor property, determine a second cloud resource account type to satisfy the resource allocation request ([Fig. 6A] database “kind: PersistentVolumeClaim” in reference to dependency graph Fig. 5)”.
However, Sanchez may not explicitly the remaining limitations.
Ferreira teaches “determine the cloud provider based on a first resource type and a second resource type; and determine a cloud resource based on the cloud provider, the cloud resource to be allocated in response to the resource allocation request ([Claim 1] 1. A method for managing multi-cloud spot markets, the method comprising: (a) identifying a set of job requirements for a computing job; (b) picking a selected cloud from a plurality of clouds; (c) creating a list of available instance types by querying the selected cloud for availability information for a set of instance types that match the set of job requirements; (d) repeating (b) and (c) for one or more additional clouds; (e) selecting a first preferred instance type from the list of available instance types; and (f) deploying the computing job to the first preferred instance type.)”.
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to apply the teachings of Ferreira with the teachings of Sanchez in order to provide a system that teaches identifying a resource provider. The motivation for applying Ferreira teaching with Sanchez teaching is to provide a system that allows for resource management in a distributed environment. Sanchez, Ferreira are analogous art directed towards resource allocation. Together Sanchez, Ferreira teach every limitation of the claimed invention. Since the teachings were analogous art known at the filing time of invention, one of ordinary skill could have applied the teachings of Ferreira with the teachings of Sanchez by known methods and gained expected results.
However, the combination may be silent regarding generic requests.
Deviprasad teaches “the resource allocation request not specific to a cloud provider ([0015] The standard template definition may include declarations for describing the particular VNF topology, infrastructure, required resources, network connectivity, and/or other services and functions. The standard template definition may further include declarations for configuring and/or defining the relationships between the services and functions as well as the operational behavior of the services and functions. These and other declarations within the standard template definition may be in a particular format that is not bound to any specific infrastructure or virtualized environment 103. For example, the standard template definition may include declarations with keywords, arguments, variables, calls, operations, a structure, and/or other parameters that may differ from keywords, arguments, variables, calls, operations, a structure, and/or other parameters of the different cloud-specific formats and/or cloud-agnostic formats supported by virtualized environments 103. Accordingly, orchestrators within each virtualized environment 103 may be unable to deploy, configure, and/or run the virtualized instance based on the unsupported declarations of the standard template definition, as the declarations of the standard template definition may be different from a supported or expected set of declarations based on which the virtualized environment 103 is configured to operate.)”.
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to apply the teachings of Deviprasad with the teachings of Sanchez, Ferreira in order to provide a system that teaches generic requests. The motivation for applying Deviprasad teaching with Sanchez, Ferreira teaching is to provide a system that allows for improving user experience. Sanchez, Ferreira, Deviprasad are analogous art directed towards resource allocation. Together Sanchez, Ferreira, Deviprasad teaches every limitation of the claimed invention. Since the teachings were analogous art known at the filing time of invention, one of ordinary skill could have applied the teachings of Deviprasad with the teachings of Sanchez, Ferreira by known methods and gained expected results.
Claim 2, 9, 16 the combination teaches the claim, wherein Sanchez teaches “the apparatus of claim 1, wherein the dependency between the first and second cloud resources is based on property bindings of the first and second cloud resources ([Fig. 8] binded via type/kind [0053] The example backendLb resource 714 is a backend load balancer resource. In the illustrated example, the backendLb resource 714 is dependent on the both the example backend1 resource 706 and the example backend2 resource 708. Thus, the example resource controller 210 may deploy the resource request of the example backendLb resource 714 to the example resource-based service 108 during a second phase after the resource requests of the example backend1 resource 706 and the example backend2 resource 708 have been deployed. The example ui1 resource 716 is a first user interface resource and the example ui2 resource 718 is a second user interface resource. The example resource controller 210 may deploy the resource requests of the example ui1 resource 716 and the example ui2 resource 718 to the example resource-based service 108 in parallel during a third phase.)”.
Claim 3, 10, 17 the combination teaches the claim, wherein Sanchez teaches “The apparatus of claim 1, wherein programmable circuitry is to generate a directed graph, the directed graph to represent the dependency between the first and second cloud resources ([Fig. 3; 0029] The example resource dependency manager 106 generates a dependency graph based on the one or more dependencies between one or more resources of the resource request. That is, the example resource dependency manager 106 determines a deployment order of the resources of the resource requests based on resource dependencies. The example resource dependency manager 106 verifies the order of the resource deployments. For example, the resource dependency manager 106 tracks whether the resource-based service 108 generates an error message. In response to an error message, the example resource dependency manager 106 may redeploy the resource request, introduce a time delay between resource deployments, and/or update the resource dependency database and/or dependency graph.).
Claim 4, 11, 18, the combination teaches the claim, wherein Sanchez teaches “the apparatus of claim 3, wherein the directed graph includes a first node, a second node, and an edge, the first node to represent the first cloud resource, the second node to represent the second cloud resource, the edge to represent the dependency between the first cloud resource and the second cloud resource ([Fig. 3; 0029] The example resource dependency manager 106 generates a dependency graph based on the one or more dependencies between one or more resources of the resource request. That is, the example resource dependency manager 106 determines a deployment order of the resources of the resource requests based on resource dependencies. The example resource dependency manager 106 verifies the order of the resource deployments. For example, the resource dependency manager 106 tracks whether the resource-based service 108 generates an error message. In response to an error message, the example resource dependency manager 106 may redeploy the resource request, introduce a time delay between resource deployments, and/or update the resource dependency database and/or dependency graph.)”.
Claim 5, 12, 19 the combination teaches the claim, wherein Sanchez teaches “the apparatus of claim 4, wherein the dependency between the first cloud resource and the second cloud resource is based on binding of an implicit property, the implicit property set to the same value in the first cloud resource and the second cloud resource ([Fig. 8] UserInterface bind to backendLB that is of type LoadBalancer; yaml)”.
Claim 6, 13, 20 the combination teaches the claim, wherein Sanchez teaches “the apparatus of claim 5, wherein the implicit property includes at least one of a region value, an account value, or an image identification value ([0045] FIG. 3 depicts an example dependency graph 300. The dependency graph 300 includes an example namespace resource 302, an example service account resource 304, an example role resource 306, and an example role binding resource 308. In the illustrated example of FIG. 3, the resources 302, 304, 306, 308 are KUBERNETES® resources. The example namespace resource 302 is an independent resource. That is, the example namespace resource 302 is not dependent on any other resources. The example namespace resource 302 can be used to divide compute resources between multiple users in a KUBERNETES® cluster.)”.
Claim/s 7, 14, 21 is/are rejected under 35 U.S.C. 103 as being unpatentable over Sanchez, Ferreira, Deviprasad in further view of Jaisinghani (Pub. No. US 2014/0129690).
Claim 7, 14, 21, the combination teaches the claim, wherein Sanchez teaches “the apparatus of claim wherein the programmable circuitry is to determine the cloud provider by: extracting dependent resource types, the dependent resource types depending from the first cloud resource; determining a cloud account type for the extracted dependent resource types ([Fig. 6b] type as mysql database; 0050] The example Service resource 502 is an independent resource. In the example of FIG. 5, the example PersistentVolumeClaim resource 504, the example Deployment resource 506, the example Secret resource 508, and the example Secret resource 510 are dependent resources. For example, the Deployment resource 506 depends on the Service resource 502. In the illustrated example of FIG. 5, the arrow between the Deployment resource 506 and the Service resource 502 is a dashed arrow with the caption “exposes to public network.” In examples disclosed herein, the dashed arrow indicates the Service resource 502 exposes the Deployment resource 506 as a network endpoint. Additionally or alternatively, the arrow between the Deployment resource 506 and the Service resource 502 is a solid arrow with the caption “depends on.” Also in the illustrated example, the example PersistentVolumeClaim resource 504, the example Secret resource 508, and the example Secret resource 510 depend on the example Deployment resource 506. Thus, the example resource controller 210 (FIG. 2) can deploy the example PersistentVolumeClaim resource 504 and the example Secret resource 508 in parallel after deploying the example Deployment resource 506. Based on the example dependency graph 500, the resource controller 210 does not deploy the example Secret resource 510 in parallel with the example PersistentVolumeClaim resource 504 and the example Secret resource 508 because the dependency graph 500 indicates the example Secret resource 510 is also dependent on the example PersistentVolumeClaim resource 504. That is, the example Secret resource 510 depends on both the example PersistentVolumeClaim resource 504 and the example Deployment resource 506.); and determining the cloud provider based on the cloud account type”.
However, the combination may not explicitly teach removing duplicates.
Jaisinghani teaches “removing duplicate cloud account types from a listing of the determined cloud account type for each of the extracted dependent resource types ([0017] In some embodiments, the independent portion of the message transmitted for notification includes a stack identifier, logical resource identifier, unique identifier, namespace and context information. The stack identifier may provide a value that can be used to reference the resource stack. The logical resource identifier may be an identifier that refers to the custom resource in the template. A unique identifier may uniquely identify the message so that duplicate messages may be discarded. A namespace may define the bounds of identifiers to allow for disambiguation of similar identifiers. The context information may provide information about the resource stack construction, such as identifiers. In one embodiment, the context includes unique identifiers and/or configurations of resources present in the stack so that a custom resource may refer to specific resources in the stack when in communication with resources in the stack.).”
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to apply the teachings of Jaisinghani with the teachings of Sanchez, Ferreira in order, Deviprasad to provide a system that teaches removing duplicates. The motivation for applying Jaisinghani teaching with Sanchez, Ferreira, Deviprasad teaching is to provide a system that allows for improving user experience. Sanchez, Ferreira, Deviprasad, Jaisinghani are analogous art directed towards resource allocation. Together Sanchez, Ferreira, Deviprasad, Jaisinghani teaches every limitation of the claimed invention. Since the teachings were analogous art known at the filing time of invention, one of ordinary skill could have applied the teachings of Jaisinghani with the teachings of Sanchez, Ferreira, Deviprasad by known methods and gained expected results.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to WYNUEL S AQUINO whose telephone number is (571)272-7478. The examiner can normally be reached 9AM-5PM EST M-F.
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, Lewis Bullock can be reached at 571-272-3759. 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.
/WYNUEL S AQUINO/Primary Examiner, Art Unit 2199