Prosecution Insights
Last updated: August 16, 2026
Application No. 18/729,493

CLOUD SERVICE DEPLOYMENT METHOD AND APPARATUS, ELECTRONIC DEVICE AND STORAGE MEDIUM

Non-Final OA §103
Filed
Jul 16, 2024
Priority
May 27, 2022 — CN 202210587970.0 +1 more
Examiner
NIGATU, BEZA DIRESSA
Art Unit
Tech Center
Assignee
Beijing Volcano Engine Technology Co., Ltd.
OA Round
1 (Non-Final)
Grant Probability
Favorable
1-2
OA Rounds

Examiner Intelligence

Grants only 0% of cases
0%
Career Allowance Rate
0 granted / 0 resolved
-60.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Typical timeline
Avg Prosecution
9 currently pending
Career history
9
Total Applications
across all art units

Statute-Specific Performance

§101
12.1%
-27.9% vs TC avg
§103
51.5%
+11.5% vs TC avg
§102
15.2%
-24.8% vs TC avg
§112
21.2%
-18.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 0 resolved cases

Office Action

§103
DETAILED ACTION 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 . This action is in response to the application filed on 07/16/2024. Priority Acknowledgment is made of applicant’s claim for foreign priority under 35 U.S.C. 119 (a)-(d). The certified copy has been filed in parent Application No. CN202210587970.0, filed on 05/27/2022. Information Disclosure Statement The information disclosure statement (IDS) submitted on 08/01/2024 is in compliance with the provisions of 37 CFR 1.97 and is being considered by the examiner. Examiner Notes Examiner cites particular paragraphs, figures, and line number in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner. As a disclaimer, the use of underlining in direct quotes is done by the examiner for emphasis. Direct quotes are not originally underlined in the published references cited. Drawings The drawings are objected to under 37 CFR 1.83(b) because they are incomplete. 37 CFR 1.83(b) reads as follows: When the invention consists of an improvement on an old machine the drawing must when possible exhibit, in one or more views, the improved portion itself, disconnected from the old structure, and also in another view, so much only of the old structure as will suffice to show the connection of the invention therewith. Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. The figure or figure number of an amended drawing should not be labeled as “amended.” If a drawing figure is to be canceled, the appropriate figure must be removed from the replacement sheet, and where necessary, the remaining figures must be renumbered and appropriate changes made to the brief description of the several views of the drawings for consistency. Additional replacement sheets may be necessary to show the renumbering of the remaining figures. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance. An annotated figure (Figure A) below will demonstrate which features are missing in the examined Figures 2 and 3 of the submitted drawing. The left side from the red line are the drawings from pages 29 and 30 of the “Certified Copy of Foreign Priority Application”. The right side from red line are the corresponding Figures 2 and 3 of the submitted drawings. The blue numbered boxes are the specific features that are causing the objection on the drawing. Further explanation will be given below. PNG media_image1.png 2080 1628 media_image1.png Greyscale Figure A The blue numbered boxes 1, 2 and 3 are incomplete because they are blank. Please remove the blank boxes or translate the drawings if they still pertain to the current specification. The blue numbered box 4 is incomplete because it is left as “…”, but should instead be --User--. Claim Objections Claims 1-21 are objected to because of the following informalities: Claim 1, line 5, “the computing resource pool” should be --the computing node cluster--. Claim 3, line 4, “the total” should be --a total--. Claim 5, “a target” in line 2, “a quantity” in lines 2-3, and “a deploying” in line 4 should be --the target--, --the quantity--, and --the deploying--, respectively. Claim 6, “a standby” and “computing node groups” in line 2 should be --the standby-- and --the computing node groups--, respectively. Claim 9, line 9, “the computing resource pool” should be --the computing node cluster--. Claim 10, line 8, “the computing resource pool” should be --the computing node cluster--. Claim 12, line 4, “the total” should be --a total--. Claim 14, “a target” and “a quantity” in line 2 and “a deploying” in lines 3-4 should be --the target--, --the quantity--, and --the deploying--, respectively. Claim 15, “a standby” and “computing node groups” in line 2 should be --the standby-- and --the computing node groups--, respectively. Claim 18, line 4, “the total” should be --a total--. Claim 20, “a target” in line 2, “a quantity” in line 3, and “a deploying” in line 4 should be --the target--, --the quantity--, and --the deploying--, respectively. Claim 21, “a standby” and “computing node groups” in line 2 should be --the standby-- and --the computing node groups--, respectively. Claims 2, 4, 7, 8, 11, 13, 16, 17, and 19 depend on the objected claims and inherit the same issues. Appropriate correction is required. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1, 2, 4, 9-11, 13, 17 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Bernat et al. (U.S. Publication No. 20220337481 A1, hereinafter Bernat) in view of Szabo et al. (U.S. Publication No. 20100042869 A1, hereinafter Szabo) and Bergsma et al. (U.S. Publication No. 20200174844 A1, hereinafter Bergsma). Regarding Claim 1: Bernat discloses, A method for deploying cloud service, comprising: determining available computing resources in a computing resource pool in response to a deploying request for a target cloud service (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources) in the computing platform”. In paragraph [0008], “FIG. 1 illustrates an overview of an edge cloud configuration for edge computing”. In paragraph [0036], “FIG. 2 illustrates deployment and orchestration for virtual edge configurations across an edge computing system … The virtual edge instances provide edge compute capabilities and processing in an edge cloud”. In paragraph [0037], “In the example of FIG. 2, these virtual edge instances include: a first virtual edge 232, offered to a first tenant (Tenant 1), which offers a first combination of edge storage, computing, and services; and a second virtual edge 234, offering a second combination of edge storage, computing, and services”. In paragraph [0039], “Edge computing nodes may partition resources … Cloud computing nodes consisting of containers …. or EaaS (edge as a service) engines … or other computation abstraction may be partitioned”. In paragraph [0041], “an edge computing system may be configured to fulfill requests and responses for various client endpoints from multiple virtual edge instances (and, from a cloud or remote data center, not shown)”.); (Examiner’s Note: The target cloud service is mapped to the edge instances requested over the cloud. Note the mapping in paragraph [0041].) Bernat does not explicitly disclose however Szabo discloses, wherein the computing resource pool is determined based on computing resources of computing nodes in a computing node cluster (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster, and (3) failing over connectivity from the old cluster to the new cluster. As used herein, the term "failover connectivity" refers to maintaining a single network identity before, during, and after failover”.); (Examiner’s Note: The claimed “computing node” is mapped to Szabo’s one of “Member #1- #4”, as shown in Figures 7A-7H; The claimed “pool” is mapped to Szabo’s “cluster environment”; The claimed “groups” are mapped to Szabo’s “Active Cluster” and “Standby Cluster”; The claimed “cluster” is mapped as Szabo’s members in a cluster; The claimed “computing resources” is mapped as Szabo’s network connections. Further shown in Figure 7A, the total amount of network resources for a pool of Member nodes is based on the available network connections provided by each Member, in order to provide a single network identity for the pool. The network connection resources provided by computing node Members determines how the Members will be grouped in order to maintain connectivity during failover.); “and the computing nodes in the computing resource pool are divided into N computing node groups” (In paragraph [0025], “embodiments are directed towards upgrading a cluster by bifurcating the cluster into two virtual clusters, an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster)”.); (Examiner’s Note: As shown in Figures 7A-7H, the ‘computing node groups’ are mapped to the active cluster and standby cluster; the value of N ranges from 1 to 2 in the active-standby cluster system.); “N is set based on a service requirement” (In paragraph [0025], “embodiments are directed towards upgrading a cluster by bifurcating the cluster into two … iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0074], “Because Cluster #1 and Cluster #2 typically are executing different software versions, the sharing of Layer 2 state information is typically versioned, such that clusters running newer software versions may communicate with clusters running older software versions”.); (Examiner’s Note: The claimed ‘service requirement’ is mapped to Szabo’s use of software versions. The division on computing nodes is according to servicing software version upgrades, as shown in Figures 7A-7H.); “and a value of N is greater than or equal to 1 and less than or equal to a total number of the computing nodes in the computing node cluster" (In paragraph [0076], “Cluster #1 is bifurcated by altering a link aggregation group, or some other spanning tree technology, that spans at least two cluster members of Cluster #1 … In this way, one member of a cluster may be removed from the old cluster, while existing connections continue to be processed by the remaining members of the old cluster”.); (Examiner’s Note: There is at least 1 cluster group, whether the group is an active cluster or the standby cluster, as shown in Figure 7A-7H. In regard to paragraph [0076], There must be at least two member nodes in a pool for a cluster bifurcation to occur (splitting one cluster group into two cluster groups, where N = 2). Before bifurcation, the number of groups is less than the number of member nodes (N = 1; where (N ≤ member nodes) becomes (1 ≤ 2)). Then after bifurcation where there are now two cluster groups (active and standby clusters), along with the established minimum of two member nodes, the two cluster groups are equal to the number of member nodes (2 ≤ 2). Furthermore, when there are any more member nodes than the established minimum of two, such as the four members shown by Figures 7A-7H, then there are less N number of groups than the total number of nodes (expressions corresponding to the example given in Figures 7A-7H: 1 ≤ 4 before bifurcation; 2 ≤ 4 after bifurcation).) “determining a target computing node with [] from a currently used target computing node group in the computing resource pool” (In paragraph [0096], “the identified member is upgraded to the software version used in the second cluster upon being added as a member of the second cluster”.); (Examiner’s Note: The claimed ‘target computing node group’ is mapped as Szabo’s ‘active cluster’ group, as shown in Figures 7A-7H.) “determining, based on a target resource quantity indicated by the deploying request and a quantity of the available computing resources of the target computing node, whether the target computing node meets a deploying condition of the target cloud service” (In paragraph [0096], “the identified member is upgraded to the software version used in the second cluster upon being added as a member of the second cluster”. In paragraph [0099], “At block 1060, it is determined whether a defined failover condition or criteria has been satisfied … A failover condition may be set to occur … when a certain level of network activity is detected … failover may be triggered when a defined number of connections are mirrored above a defined threshold and/or amount of state information managed by the first active cluster is detected as being mirrored by the second active cluster. For instance, failover may be triggered when, for example, 75% of connection state data is shared between the first and second clusters … After failover of the first cluster, each remaining member of the first cluster is upgraded to a defined configuration”.); (Examiner’s Note: The claimed ‘deployment’ is mapped to Szabo’s failover when deployed. The primary reference above covers the claimed limitation, but the mapping in Szabo is established for consistency. Relating to paragraph [0099], the request is mapped to when the condition is set to occur.) “when the target computing node does not meet the deploying condition, selecting a standby computing node group from computing node groups other than the target computing node group” (In paragraph [0098], “By entering "hot standby mode" and mirroring state in this way, connection state may effectively be transferred between clusters executing different software versions”. Further in paragraph [0025], “an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster), and iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0073], “the old and new clusters may coordinate … coordination may be achieved between clusters having different software versions”. Referring to Figure 7C, in paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster … Once removed from Cluster #1, Member #4 may become Cluster #2”. Further in paragraph [0083], “In this way, incoming packets addressed to Cluster #1 will be routed to the MAC address of Cluster #2, thereby failing over connectivity from Cluster #1 to Cluster #2. In either case, connectivity is maintained during failover, meaning a single network of the cluster identity persists before, during, and after the upgrade with virtually no loss of data or connections”.); (Examiner’s Note: Note in Figure 7C where Cluster #2 is labeled as standby, and in Figure 7G where Cluster #1 is labeled as standby; A cluster becomes part of the standby group when upgrading the software, because the network connections are on standby.); “and combining the standby computing node group into the target computing node group” (In paragraph [0081], “FIGS. 7G and 7H illustrate failing over connectivity from the Cluster #1 to the Cluster #2, after which Cluster #1 is dissolved, and disabled members of Cluster #1 may install and boot the upgraded software version”.); (Examiner’s Note: As shown in Figure 7G, Member #1 is in the Standby Cluster group. Then in Figure 7H, Member #1 is combined into the Active Cluster target group.); “and when the target computing node meets the deploying condition, deploying [] on the target computing node” (In paragraph [0099], “If a failover condition occurs, processing continues to block 1070 where connections fail over from the active first cluster to the second cluster, such that the second cluster is set as the active cluster, and the first cluster is disbanded. After failover of the first cluster, each remaining member of the first cluster is upgraded to a defined configuration”.). (Examiner’s Note: Note that the claimed ‘target cloud service’ limitation is mapped in the above primary reference by Bernat.); Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Bergsma discloses, “most available computing resources” (In paragraph [0119], “assign resources to jobs according to the weight of the assigned resource pool 520 … The weight of a resource pool 520 may be determined based on a proportion of the quantity of computing resources associated with the resource pool relative to the total quantity of computing resources in the compute cluster”. The highest weight corresponds to the most available computing resources.); “and re-determining a target computing node with most available computing resources in the target computing node group” (In paragraph [0138], “Pool assignment module 407 acts as bookkeeping to keep track of which resource pools 520 of a desired weight are in use at any moment in time, so that new jobs can always go into unused pools of the appropriate weight. Pool assignment module 407 takes QoS identifier as input, looks up its requested resource size in the resource allocation plan, and then finds a resource pool 520 that can satisfy that resource requirement”. Note that the weight corresponds to the amount of computing resources in paragraph [0119], “The weight of a resource pool 520 may be determined based on a proportion of the quantity of computing resources associated with the resource pool relative to the total quantity of computing resources in the compute cluster”. In paragraph [0121], “A full pool definition for a 6-core case includes defining all the pools with all their associated weights, to cover all possible resources partitionings”. The new highest amount of available resources is re-determined as weights once a job completes and an update occurs, in paragraph [0144], “Logically, each resource pool 520 may be identified by an identifier corresponding to a unique weight and weight index, for example, in the format “pool_weight#index”. When each job finishes on a cluster, as indicated by execution monitoring module 408, the record of available pools is updated”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Bergsma; motivated by the common goal to “To improve the utilization of computing resources” (examined case [0004]), such as in Bergsma where “Resource management system 109 may ensure Quality of Service (QoS) in a workflow. As used herein, QoS refers to a level of resource allocation or resource prioritization for a job being executed” (Bergsma [0085]), similarly motivated by “a need for an improved system and method for allocating resources to a workflow” (Bergsma [0007]). Note that the resources are explicitly utilized in the system disclosed by Bergsma, “the resources (“utilization”) are split equally between resource pools (“queues”)” (Bergsma [0100]), where “The scheduler assigns resources to resource pools 520 fairly according to weight” (Bergsma [0099]). Regarding Claim 2: Bernat further discloses, “wherein the available computing resources in the computing resource pool are divided by following steps” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources) in the computing platform”.). Bernat does not disclose however Szabo discloses, obtaining attribute information of a plurality of available computing nodes, and service requirement information” (In paragraph [0054], “FIG. 5A illustrates an initial state of Cluster #1. Cluster #1 includes Member #1, Member #2, and Member #3. Although FIG. 5A depicts a cluster containing four slots and three members, a cluster may include virtually any number of members and any number of open slots. As shown, however, each of Members #1, #2, and #3 comprise two boot partitions--partition 510 and partition 520. A partition may have an operating system and/or other software installed on it. For example, partition 510 of each of Members #1-#3 have software version 10.2 installed”. The service requirement information on the software upgrade is provided during boot up in paragraph [0060], “the active boot partition is boot partition 510 containing software version 10.2. Any optional post-install activities may then be performed, such as loading the User Configuration Set (UCS) into memory”.); “and dividing the plurality of available computing nodes into the N computing node groups based on the attribute information and the service requirement information” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster … the network identity may include an IP address, a combination of an IP address and a port, a Media Access Control (MAC) address, or the like”. The node groups are based on network connections as the attribute information and the software upgrade as the service requirement. The standby group relies on the software upgrade information, while the active group relies on the network connection information to manage connections once the standby group begins upgrade(s).); “and selecting one computing node group from the plurality of computing node groups as the target computing node group” (In paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster”. The target group is the active cluster group used for mirroring network connections of the standby cluster group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Regarding Claim 4: Bernat does not disclose however Szabo discloses, “wherein the dividing the plurality of available computing nodes into the N computing node groups based on the attribute information and the service requirement information comprises” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Bergsma discloses, “determining, based on the service requirement information, a target type resource used as a division standard” (In paragraph [0087], “Workflows can refer to any process, job, service or any other computing task to be run on the distributed computing system 100”, where in paragraph [0071], “a sharing policy that dictates that workflows from a particular computing device 102 be performed using resources”. In paragraph [0072], “distributed computing system 100 operates in accordance with sharing policies. Sharing policies are rules which dictate how particular resources are used … Sharing policies can dictate how resources are shared”. In paragraph [0107], “Resource requirement assignment module 404 determines and assigns a resource requirement for each subtask of the given node and planning framework module 406 accordingly generates a resource allocation plan for each subtask having a resource requirement and a QoS identifier”. Where the QoS identifier in paragraph [0098], “a unique QoS identifier for each subtask of a given workflow node”. Further in paragraph [0107], “As used herein, the term resource requirement refers to the total amount of system resources required to complete a job in underlying system 306 as well as the number of pieces the total amount of resources can be broken into”.). “and dividing the plurality of available computing nodes into the N computing node groups based on a resource quantity that corresponds to the target type resource” (In paragraph [0116], “The total number of resource pools needed to be pre-created to support any combination of resource sharing grows as the “divisor summatory function” and is tractable up to a very large number of resources (e.g., with 10,000 cores, 93,668 different pools are needed) ... resource planning is done, as described below, and new jobs are dynamically submitted to resource pools that correspond to how many resources the jobs are planned to use. The fair scheduler itself does the enforcement, effectively making sure resources are divided according to plan”. In paragraph [0138], “Pool assignment module 407 takes QoS identifier as input, looks up its requested resource size in the resource allocation plan, and then finds a resource pool 520 that can satisfy that resource requirement”. In paragraph [0154], “when resources are packed to capacity (at one hundred percent utilization), the fair scheduler and pool weights may guarantee that subtasks get their planned allocated share of resources. When resources are not packed to capacity, jobs will fairly share the free resources in proportion to their pool weights”. In paragraph [0129], “resource requirement assignment module 404 determines the resource requirement for each subtask … for each workflow node, metadata comprising the QoS identifier generated for the node … the metadata comprises an overall resource requirement estimate for the node, … In this case, resource requirement determination module 902 uses a manual estimate module 904a to divide the overall resource requirement estimate uniformly between the underlying subtasks for the node”.); “and that is indicated in the attribute information, so that a resource quantity of the target type resource in any one of the computing node groups is greater than or equal to a specified resource quantity” (In paragraph [0072], “Resources 150 in the distributed computing system 100 are or can be associated with one or more attributes. These attributes may include, for example, resource type, resource state/status, resource location, resource identifier/name, resource value, resource capacity, resource capabilities, or any other resource information that can be used as criteria for selecting or identifying a resource suitable for being utilized by one or more workloads”. In paragraph [0116], “new jobs are dynamically submitted to resource pools that correspond to how many resources the jobs are planned to use”. Where the resource quantity is equal to the specified resource quantity by the job in paragraph [0100], “FIG. 4 illustrates a “job 1” assigned to resource pool 520 … the resources (“utilization”) are split equally between resource pools (“queues”)”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Bergsma; motivated by the common goal to “To improve the utilization of computing resources” (examined case [0004]), such as in Bergsma where “Resource management system 109 may ensure Quality of Service (QoS) in a workflow. As used herein, QoS refers to a level of resource allocation or resource prioritization for a job being executed” (Bergsma [0085]), similarly motivated by “a need for an improved system and method for allocating resources to a workflow” (Bergsma [0007]). Note that the resources are explicitly utilized in the system disclosed by Bergsma, “the resources (“utilization”) are split equally between resource pools (“queues”)” (Bergsma [0100]), where “The scheduler assigns resources to resource pools 520 fairly according to weight” (Bergsma [0099]). Regarding Claim 9: Bernat discloses, “An electronic device, comprising: a processor, a memory, and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the electronic device runs, the processor communicates with the memory via the bus, and when the machine-readable instructions are executed by the processor, a method for deploying cloud service is performed, the method comprises” (In paragraph [0159], “Indeed, a component or module of executable code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices or processing systems. In particular, some aspects of the described process (such as code rewriting and code analysis) may take place on a different processing system (e.g., in a computer in a data center) than that in which the code is deployed (e.g., in a computer embedded in a sensor or robot). Similarly, operational data may be identified and illustrated herein within components or modules, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different storage devices, and may exist, at least partially, merely as electronic signals on a system or network. The components or modules may be passive or active, including agents operable to perform desired functions”. In paragraph [0114], “The discrete resources are connected via a bus or other interconnect, and can be arranged, enabled, or called on in an on-demand fashion”.); “determining available computing resources in a computing resource pool in response to a deploying request for a target cloud service” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources) in the computing platform”. In paragraph [0008], “FIG. 1 illustrates an overview of an edge cloud configuration for edge computing”. In paragraph [0036], “FIG. 2 illustrates deployment and orchestration for virtual edge configurations across an edge computing system … The virtual edge instances provide edge compute capabilities and processing in an edge cloud”. In paragraph [0037], “In the example of FIG. 2, these virtual edge instances include: a first virtual edge 232, offered to a first tenant (Tenant 1), which offers a first combination of edge storage, computing, and services; and a second virtual edge 234, offering a second combination of edge storage, computing, and services”. In paragraph [0039], “Edge computing nodes may partition resources … Cloud computing nodes consisting of containers …. or EaaS (edge as a service) engines … or other computation abstraction may be partitioned”. The target cloud service is mapped to the edge instances requested over the cloud, in paragraph [0041], “an edge computing system may be configured to fulfill requests and responses for various client endpoints from multiple virtual edge instances (and, from a cloud or remote data center, not shown)”.). Bernat does not explicitly disclose however Szabo discloses, “wherein the computing resource pool is determined based on computing resources of computing nodes in a computing node cluster” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster, and (3) failing over connectivity from the old cluster to the new cluster. As used herein, the term "failover connectivity" refers to maintaining a single network identity before, during, and after failover”.); “and the computing nodes in the computing resource pool are divided into N computing node groups” (In paragraph [0025], “embodiments are directed towards upgrading a cluster by bifurcating the cluster into two virtual clusters, an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster)”.); “N is set based on a service requirement” (In paragraph [0025], “embodiments are directed towards upgrading a cluster by bifurcating the cluster into two … iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0074], “Because Cluster #1 and Cluster #2 typically are executing different software versions, the sharing of Layer 2 state information is typically versioned, such that clusters running newer software versions may communicate with clusters running older software versions”.); “and a value of N is greater than or equal to 1 and less than or equal to a total number of the computing nodes in the computing node cluster" (In paragraph [0076], “Cluster #1 is bifurcated by altering a link aggregation group, or some other spanning tree technology, that spans at least two cluster members of Cluster #1 … In this way, one member of a cluster may be removed from the old cluster, while existing connections continue to be processed by the remaining members of the old cluster”.); “determining a target computing node with [] from a currently used target computing node group in the computing resource pool” (In paragraph [0096], “the identified member is upgraded to the software version used in the second cluster upon being added as a member of the second cluster”.); “determining, based on a target resource quantity indicated by the deploying request and a quantity of the available computing resources of the target computing node, whether the target computing node meets a deploying condition of the target cloud service” (In paragraph [0096], “the identified member is upgraded to the software version used in the second cluster upon being added as a member of the second cluster”. In paragraph [0099], “At block 1060, it is determined whether a defined failover condition or criteria has been satisfied … A failover condition may be set to occur … when a certain level of network activity is detected … failover may be triggered when a defined number of connections are mirrored above a defined threshold and/or amount of state information managed by the first active cluster is detected as being mirrored by the second active cluster. For instance, failover may be triggered when, for example, 75% of connection state data is shared between the first and second clusters … After failover of the first cluster, each remaining member of the first cluster is upgraded to a defined configuration”.); “when the target computing node does not meet the deploying condition, selecting a standby computing node group from computing node groups other than the target computing node group” (In paragraph [0098], “By entering "hot standby mode" and mirroring state in this way, connection state may effectively be transferred between clusters executing different software versions”. Further in paragraph [0025], “an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster), and iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0073], “the old and new clusters may coordinate … coordination may be achieved between clusters having different software versions”. Referring to Figure 7C, in paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster … Once removed from Cluster #1, Member #4 may become Cluster #2”. Further in paragraph [0083], “In this way, incoming packets addressed to Cluster #1 will be routed to the MAC address of Cluster #2, thereby failing over connectivity from Cluster #1 to Cluster #2. In either case, connectivity is maintained during failover, meaning a single network of the cluster identity persists before, during, and after the upgrade with virtually no loss of data or connections”.); “and combining the standby computing node group into the target computing node group” (In paragraph [0081], “FIGS. 7G and 7H illustrate failing over connectivity from the Cluster #1 to the Cluster #2, after which Cluster #1 is dissolved, and disabled members of Cluster #1 may install and boot the upgraded software version”.); “and when the target computing node meets the deploying condition, deploying [] on the target computing node” (In paragraph [0099], “If a failover condition occurs, processing continues to block 1070 where connections fail over from the active first cluster to the second cluster, such that the second cluster is set as the active cluster, and the first cluster is disbanded. After failover of the first cluster, each remaining member of the first cluster is upgraded to a defined configuration”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Bergsma discloses, “most available computing resources” (In paragraph [0119], “assign resources to jobs according to the weight of the assigned resource pool 520 … The weight of a resource pool 520 may be determined based on a proportion of the quantity of computing resources associated with the resource pool relative to the total quantity of computing resources in the compute cluster”. The highest weight corresponds to the most available computing resources.); “and re-determining a target computing node with most available computing resources in the target computing node group” (In paragraph [0138], “Pool assignment module 407 acts as bookkeeping to keep track of which resource pools 520 of a desired weight are in use at any moment in time, so that new jobs can always go into unused pools of the appropriate weight. Pool assignment module 407 takes QoS identifier as input, looks up its requested resource size in the resource allocation plan, and then finds a resource pool 520 that can satisfy that resource requirement”. Note that the weight corresponds to the amount of computing resources in paragraph [0119], “The weight of a resource pool 520 may be determined based on a proportion of the quantity of computing resources associated with the resource pool relative to the total quantity of computing resources in the compute cluster”. In paragraph [0121], “A full pool definition for a 6-core case includes defining all the pools with all their associated weights, to cover all possible resources partitionings”. The new highest amount of available resources is re-determined as weights once a job completes and an update occurs, in paragraph [0144], “Logically, each resource pool 520 may be identified by an identifier corresponding to a unique weight and weight index, for example, in the format “pool_weight#index”. When each job finishes on a cluster, as indicated by execution monitoring module 408, the record of available pools is updated”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Bergsma; motivated by the common goal to “To improve the utilization of computing resources” (examined case [0004]), such as in Bergsma where “Resource management system 109 may ensure Quality of Service (QoS) in a workflow. As used herein, QoS refers to a level of resource allocation or resource prioritization for a job being executed” (Bergsma [0085]), similarly motivated by “a need for an improved system and method for allocating resources to a workflow” (Bergsma [0007]). Note that the resources are explicitly utilized in the system disclosed by Bergsma, “the resources (“utilization”) are split equally between resource pools (“queues”)” (Bergsma [0100]), where “The scheduler assigns resources to resource pools 520 fairly according to weight” (Bergsma [0099]). Regarding Claim 10: Bernat discloses, “A non-transitory computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, a method for deploying cloud service is performed, the method comprises” (In paragraph [0097], “In an example, the instructions 682 provided via the memory 654, the storage 658, or the processor 652 may be embodied as a non-transitory, machine-readable medium 660 including code to direct the processor 652 to perform electronic operations in the edge computing node 650. The processor 652 may access the non-transitory, machine-readable medium 660 over the interconnect 656. For instance, the non-transitory, machine-readable medium 660 may be embodied by devices described for the storage 658 or may include specific storage units such as optical disks, flash drives, or any number of other hardware devices. The non-transitory, machine-readable medium 660 may include instructions to direct the processor 652 to perform a specific sequence or flow of actions, for example, as described with respect to the flowchart(s) and block diagram(s) of operations and functionality depicted above. As used in, the terms “machine-readable medium” and “computer-readable medium” are interchangeable”.); “determining available computing resources in a computing resource pool in response to a deploying request for a target cloud service” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources) in the computing platform”. In paragraph [0008], “FIG. 1 illustrates an overview of an edge cloud configuration for edge computing”. In paragraph [0036], “FIG. 2 illustrates deployment and orchestration for virtual edge configurations across an edge computing system … The virtual edge instances provide edge compute capabilities and processing in an edge cloud”. In paragraph [0037], “In the example of FIG. 2, these virtual edge instances include: a first virtual edge 232, offered to a first tenant (Tenant 1), which offers a first combination of edge storage, computing, and services; and a second virtual edge 234, offering a second combination of edge storage, computing, and services”. In paragraph [0039], “Edge computing nodes may partition resources … Cloud computing nodes consisting of containers …. or EaaS (edge as a service) engines … or other computation abstraction may be partitioned”. The target cloud service is mapped to the edge instances requested over the cloud, in paragraph [0041], “an edge computing system may be configured to fulfill requests and responses for various client endpoints from multiple virtual edge instances (and, from a cloud or remote data center, not shown)”.). Bernat does not explicitly disclose however Szabo discloses, “wherein the computing resource pool is determined based on computing resources of computing nodes in a computing node cluster” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster, and (3) failing over connectivity from the old cluster to the new cluster. As used herein, the term "failover connectivity" refers to maintaining a single network identity before, during, and after failover”.); “and the computing nodes in the computing resource pool are divided into N computing node groups” (In paragraph [0025], “embodiments are directed towards upgrading a cluster by bifurcating the cluster into two virtual clusters, an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster)”.); “N is set based on a service requirement” (In paragraph [0025], “embodiments are directed towards upgrading a cluster by bifurcating the cluster into two … iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0074], “Because Cluster #1 and Cluster #2 typically are executing different software versions, the sharing of Layer 2 state information is typically versioned, such that clusters running newer software versions may communicate with clusters running older software versions”.); “and a value of N is greater than or equal to 1 and less than or equal to a total number of the computing nodes in the computing node cluster" (In paragraph [0076], “Cluster #1 is bifurcated by altering a link aggregation group, or some other spanning tree technology, that spans at least two cluster members of Cluster #1 … In this way, one member of a cluster may be removed from the old cluster, while existing connections continue to be processed by the remaining members of the old cluster”.); “determining a target computing node with [] from a currently used target computing node group in the computing resource pool” (In paragraph [0096], “the identified member is upgraded to the software version used in the second cluster upon being added as a member of the second cluster”.); “determining, based on a target resource quantity indicated by the deploying request and a quantity of the available computing resources of the target computing node, whether the target computing node meets a deploying condition of the target cloud service” (In paragraph [0096], “the identified member is upgraded to the software version used in the second cluster upon being added as a member of the second cluster”. In paragraph [0099], “At block 1060, it is determined whether a defined failover condition or criteria has been satisfied … A failover condition may be set to occur … when a certain level of network activity is detected … failover may be triggered when a defined number of connections are mirrored above a defined threshold and/or amount of state information managed by the first active cluster is detected as being mirrored by the second active cluster. For instance, failover may be triggered when, for example, 75% of connection state data is shared between the first and second clusters … After failover of the first cluster, each remaining member of the first cluster is upgraded to a defined configuration”.); “when the target computing node does not meet the deploying condition, selecting a standby computing node group from computing node groups other than the target computing node group” (In paragraph [0098], “By entering "hot standby mode" and mirroring state in this way, connection state may effectively be transferred between clusters executing different software versions”. Further in paragraph [0025], “an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster), and iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0073], “the old and new clusters may coordinate … coordination may be achieved between clusters having different software versions”. Referring to Figure 7C, in paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster … Once removed from Cluster #1, Member #4 may become Cluster #2”. Further in paragraph [0083], “In this way, incoming packets addressed to Cluster #1 will be routed to the MAC address of Cluster #2, thereby failing over connectivity from Cluster #1 to Cluster #2. In either case, connectivity is maintained during failover, meaning a single network of the cluster identity persists before, during, and after the upgrade with virtually no loss of data or connections”.); “and combining the standby computing node group into the target computing node group” (In paragraph [0081], “FIGS. 7G and 7H illustrate failing over connectivity from the Cluster #1 to the Cluster #2, after which Cluster #1 is dissolved, and disabled members of Cluster #1 may install and boot the upgraded software version”.); “and when the target computing node meets the deploying condition, deploying [] on the target computing node” (In paragraph [0099], “If a failover condition occurs, processing continues to block 1070 where connections fail over from the active first cluster to the second cluster, such that the second cluster is set as the active cluster, and the first cluster is disbanded. After failover of the first cluster, each remaining member of the first cluster is upgraded to a defined configuration”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Bergsma discloses, “most available computing resources” (In paragraph [0119], “assign resources to jobs according to the weight of the assigned resource pool 520 … The weight of a resource pool 520 may be determined based on a proportion of the quantity of computing resources associated with the resource pool relative to the total quantity of computing resources in the compute cluster”. The highest weight corresponds to the most available computing resources.); “and re-determining a target computing node with most available computing resources in the target computing node group” (In paragraph [0138], “Pool assignment module 407 acts as bookkeeping to keep track of which resource pools 520 of a desired weight are in use at any moment in time, so that new jobs can always go into unused pools of the appropriate weight. Pool assignment module 407 takes QoS identifier as input, looks up its requested resource size in the resource allocation plan, and then finds a resource pool 520 that can satisfy that resource requirement”. Note that the weight corresponds to the amount of computing resources in paragraph [0119], “The weight of a resource pool 520 may be determined based on a proportion of the quantity of computing resources associated with the resource pool relative to the total quantity of computing resources in the compute cluster”. In paragraph [0121], “A full pool definition for a 6-core case includes defining all the pools with all their associated weights, to cover all possible resources partitionings”. The new highest amount of available resources is re-determined as weights once a job completes and an update occurs, in paragraph [0144], “Logically, each resource pool 520 may be identified by an identifier corresponding to a unique weight and weight index, for example, in the format “pool_weight#index”. When each job finishes on a cluster, as indicated by execution monitoring module 408, the record of available pools is updated”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Bergsma; motivated by the common goal to “To improve the utilization of computing resources” (examined case [0004]), such as in Bergsma where “Resource management system 109 may ensure Quality of Service (QoS) in a workflow. As used herein, QoS refers to a level of resource allocation or resource prioritization for a job being executed” (Bergsma [0085]), similarly motivated by “a need for an improved system and method for allocating resources to a workflow” (Bergsma [0007]). Note that the resources are explicitly utilized in the system disclosed by Bergsma, “the resources (“utilization”) are split equally between resource pools (“queues”)” (Bergsma [0100]), where “The scheduler assigns resources to resource pools 520 fairly according to weight” (Bergsma [0099]). Regarding Claim 11: Bernat further discloses, “wherein the available computing resources in the computing resource pool are divided by following steps” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources) in the computing platform”.). Bernat does not disclose however Szabo discloses, obtaining attribute information of a plurality of available computing nodes, and service requirement information” (In paragraph [0054], “FIG. 5A illustrates an initial state of Cluster #1. Cluster #1 includes Member #1, Member #2, and Member #3. Although FIG. 5A depicts a cluster containing four slots and three members, a cluster may include virtually any number of members and any number of open slots. As shown, however, each of Members #1, #2, and #3 comprise two boot partitions--partition 510 and partition 520. A partition may have an operating system and/or other software installed on it. For example, partition 510 of each of Members #1-#3 have software version 10.2 installed”. The service requirement information on the software upgrade is provided during boot up in paragraph [0060], “the active boot partition is boot partition 510 containing software version 10.2. Any optional post-install activities may then be performed, such as loading the User Configuration Set (UCS) into memory”.); “and dividing the plurality of available computing nodes into the N computing node groups based on the attribute information and the service requirement information” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster … the network identity may include an IP address, a combination of an IP address and a port, a Media Access Control (MAC) address, or the like”. The node groups are based on network connections as the attribute information and the software upgrade as the service requirement. The standby group relies on the software upgrade information, while the active group relies on the network connection information to manage connections once the standby group begins upgrade(s).); “and selecting one computing node group from the plurality of computing node groups as the target computing node group” (In paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster”. The target group is the active cluster group used for mirroring network connections of the standby cluster group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Regarding Claim 13: Bernat does not disclose however Szabo discloses, “wherein the dividing the plurality of available computing nodes into the N computing node groups based on the attribute information and the service requirement information comprises” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Bergsma discloses, “determining, based on the service requirement information, a target type resource used as a division standard” (In paragraph [0087], “Workflows can refer to any process, job, service or any other computing task to be run on the distributed computing system 100”, where in paragraph [0071], “a sharing policy that dictates that workflows from a particular computing device 102 be performed using resources”. In paragraph [0072], “distributed computing system 100 operates in accordance with sharing policies. Sharing policies are rules which dictate how particular resources are used … Sharing policies can dictate how resources are shared”. In paragraph [0107], “Resource requirement assignment module 404 determines and assigns a resource requirement for each subtask of the given node and planning framework module 406 accordingly generates a resource allocation plan for each subtask having a resource requirement and a QoS identifier”. Where the QoS identifier in paragraph [0098], “a unique QoS identifier for each subtask of a given workflow node”. Further in paragraph [0107], “As used herein, the term resource requirement refers to the total amount of system resources required to complete a job in underlying system 306 as well as the number of pieces the total amount of resources can be broken into”.). “and dividing the plurality of available computing nodes into the N computing node groups based on a resource quantity that corresponds to the target type resource” (In paragraph [0116], “The total number of resource pools needed to be pre-created to support any combination of resource sharing grows as the “divisor summatory function” and is tractable up to a very large number of resources (e.g., with 10,000 cores, 93,668 different pools are needed) ... resource planning is done, as described below, and new jobs are dynamically submitted to resource pools that correspond to how many resources the jobs are planned to use. The fair scheduler itself does the enforcement, effectively making sure resources are divided according to plan”. In paragraph [0138], “Pool assignment module 407 takes QoS identifier as input, looks up its requested resource size in the resource allocation plan, and then finds a resource pool 520 that can satisfy that resource requirement”. In paragraph [0154], “when resources are packed to capacity (at one hundred percent utilization), the fair scheduler and pool weights may guarantee that subtasks get their planned allocated share of resources. When resources are not packed to capacity, jobs will fairly share the free resources in proportion to their pool weights”. In paragraph [0129], “resource requirement assignment module 404 determines the resource requirement for each subtask … for each workflow node, metadata comprising the QoS identifier generated for the node … the metadata comprises an overall resource requirement estimate for the node, … In this case, resource requirement determination module 902 uses a manual estimate module 904a to divide the overall resource requirement estimate uniformly between the underlying subtasks for the node”.); “and that is indicated in the attribute information, so that a resource quantity of the target type resource in any one of the computing node groups is greater than or equal to a specified resource quantity” (In paragraph [0072], “Resources 150 in the distributed computing system 100 are or can be associated with one or more attributes. These attributes may include, for example, resource type, resource state/status, resource location, resource identifier/name, resource value, resource capacity, resource capabilities, or any other resource information that can be used as criteria for selecting or identifying a resource suitable for being utilized by one or more workloads”. In paragraph [0116], “new jobs are dynamically submitted to resource pools that correspond to how many resources the jobs are planned to use”. Where the resource quantity is equal to the specified resource quantity by the job in paragraph [0100], “FIG. 4 illustrates a “job 1” assigned to resource pool 520 … the resources (“utilization”) are split equally between resource pools (“queues”)”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Bergsma; motivated by the common goal to “To improve the utilization of computing resources” (examined case [0004]), such as in Bergsma where “Resource management system 109 may ensure Quality of Service (QoS) in a workflow. As used herein, QoS refers to a level of resource allocation or resource prioritization for a job being executed” (Bergsma [0085]), similarly motivated by “a need for an improved system and method for allocating resources to a workflow” (Bergsma [0007]). Note that the resources are explicitly utilized in the system disclosed by Bergsma, “the resources (“utilization”) are split equally between resource pools (“queues”)” (Bergsma [0100]), where “The scheduler assigns resources to resource pools 520 fairly according to weight” (Bergsma [0099]). Regarding Claim 17: Bernat further discloses, “wherein the available computing resources in the computing resource pool are divided by following steps” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources) in the computing platform”.). Bernat does not disclose however Szabo discloses, obtaining attribute information of a plurality of available computing nodes, and service requirement information” (In paragraph [0054], “FIG. 5A illustrates an initial state of Cluster #1. Cluster #1 includes Member #1, Member #2, and Member #3. Although FIG. 5A depicts a cluster containing four slots and three members, a cluster may include virtually any number of members and any number of open slots. As shown, however, each of Members #1, #2, and #3 comprise two boot partitions--partition 510 and partition 520. A partition may have an operating system and/or other software installed on it. For example, partition 510 of each of Members #1-#3 have software version 10.2 installed”. The service requirement information on the software upgrade is provided during boot up in paragraph [0060], “the active boot partition is boot partition 510 containing software version 10.2. Any optional post-install activities may then be performed, such as loading the User Configuration Set (UCS) into memory”.); “and dividing the plurality of available computing nodes into the N computing node groups based on the attribute information and the service requirement information” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster … the network identity may include an IP address, a combination of an IP address and a port, a Media Access Control (MAC) address, or the like”. The node groups are based on network connections as the attribute information and the software upgrade as the service requirement. The standby group relies on the software upgrade information, while the active group relies on the network connection information to manage connections once the standby group begins upgrade(s).); “and selecting one computing node group from the plurality of computing node groups as the target computing node group” (In paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster”. The target group is the active cluster group used for mirroring network connections of the standby cluster group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Regarding Claim 19: Bernat does not disclose however Szabo discloses, “wherein the dividing the plurality of available computing nodes into the N computing node groups based on the attribute information and the service requirement information comprises” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Bergsma discloses, “determining, based on the service requirement information, a target type resource used as a division standard” (In paragraph [0087], “Workflows can refer to any process, job, service or any other computing task to be run on the distributed computing system 100”, where in paragraph [0071], “a sharing policy that dictates that workflows from a particular computing device 102 be performed using resources”. In paragraph [0072], “distributed computing system 100 operates in accordance with sharing policies. Sharing policies are rules which dictate how particular resources are used … Sharing policies can dictate how resources are shared”. In paragraph [0107], “Resource requirement assignment module 404 determines and assigns a resource requirement for each subtask of the given node and planning framework module 406 accordingly generates a resource allocation plan for each subtask having a resource requirement and a QoS identifier”. Where the QoS identifier in paragraph [0098], “a unique QoS identifier for each subtask of a given workflow node”. Further in paragraph [0107], “As used herein, the term resource requirement refers to the total amount of system resources required to complete a job in underlying system 306 as well as the number of pieces the total amount of resources can be broken into”.). “and dividing the plurality of available computing nodes into the N computing node groups based on a resource quantity that corresponds to the target type resource” (In paragraph [0116], “The total number of resource pools needed to be pre-created to support any combination of resource sharing grows as the “divisor summatory function” and is tractable up to a very large number of resources (e.g., with 10,000 cores, 93,668 different pools are needed) ... resource planning is done, as described below, and new jobs are dynamically submitted to resource pools that correspond to how many resources the jobs are planned to use. The fair scheduler itself does the enforcement, effectively making sure resources are divided according to plan”. In paragraph [0138], “Pool assignment module 407 takes QoS identifier as input, looks up its requested resource size in the resource allocation plan, and then finds a resource pool 520 that can satisfy that resource requirement”. In paragraph [0154], “when resources are packed to capacity (at one hundred percent utilization), the fair scheduler and pool weights may guarantee that subtasks get their planned allocated share of resources. When resources are not packed to capacity, jobs will fairly share the free resources in proportion to their pool weights”. In paragraph [0129], “resource requirement assignment module 404 determines the resource requirement for each subtask … for each workflow node, metadata comprising the QoS identifier generated for the node … the metadata comprises an overall resource requirement estimate for the node, … In this case, resource requirement determination module 902 uses a manual estimate module 904a to divide the overall resource requirement estimate uniformly between the underlying subtasks for the node”.); “and that is indicated in the attribute information, so that a resource quantity of the target type resource in any one of the computing node groups is greater than or equal to a specified resource quantity” (In paragraph [0072], “Resources 150 in the distributed computing system 100 are or can be associated with one or more attributes. These attributes may include, for example, resource type, resource state/status, resource location, resource identifier/name, resource value, resource capacity, resource capabilities, or any other resource information that can be used as criteria for selecting or identifying a resource suitable for being utilized by one or more workloads”. In paragraph [0116], “new jobs are dynamically submitted to resource pools that correspond to how many resources the jobs are planned to use”. Where the resource quantity is equal to the specified resource quantity by the job in paragraph [0100], “FIG. 4 illustrates a “job 1” assigned to resource pool 520 … the resources (“utilization”) are split equally between resource pools (“queues”)”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Bergsma; motivated by the common goal to “To improve the utilization of computing resources” (examined case [0004]), such as in Bergsma where “Resource management system 109 may ensure Quality of Service (QoS) in a workflow. As used herein, QoS refers to a level of resource allocation or resource prioritization for a job being executed” (Bergsma [0085]), similarly motivated by “a need for an improved system and method for allocating resources to a workflow” (Bergsma [0007]). Note that the resources are explicitly utilized in the system disclosed by Bergsma, “the resources (“utilization”) are split equally between resource pools (“queues”)” (Bergsma [0100]), where “The scheduler assigns resources to resource pools 520 fairly according to weight” (Bergsma [0099]). Claims 3, 12, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Bernat in view of Szabo and Bergsma as applied to claims 2, 11, and 17 above, and further in view of Virtuoso et al. (U.S. Patent No. 11128701 B1, hereinafter Virtuoso). Regarding Claim 3: Bernat does not disclose however Szabo discloses, “wherein the dividing the plurality of available computing nodes into the N computing node groups based on the attribute information and the service requirement information comprises” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster into an old (active, or first) virtual cluster for managing network connections and a new (standby, or second) virtual cluster, (2) upgrading the members of the new cluster”.); “determining the value of N based on the total number of the plurality of available computing nodes” (In paragraph [0076], “Cluster #1 is bifurcated by altering a link aggregation group, or some other spanning tree technology, that spans at least two cluster members of Cluster #1”. The value of groups depends on the number of available nodes, for example, there may only be one group if there is only one node is available. If there is at least two nodes, then there may be two groups.); “and dividing the plurality of available computing nodes into the N computing node groups based on the attribute information, the service requirement information, and a determined total number of the computing node groups” (In paragraph [0067], “FIGS. 7A-7H illustrate one embodiment for upgrading network devices in a cluster environment. At a high level, orchestrating a rolling switchboot may comprise: (1) splitting the cluster”. The determined total number of groups is two, once the cluster is split. In paragraph [0072], “Cluster #1 is bifurcated into an old cluster and a new cluster by removing a member from Cluster #1 and creating a second cluster, Cluster #2, out of the removed member”. In paragraph [0088], “If another member remains in the first cluster, processing loops back to step 810 and another member of the first cluster is removed and upgraded while being joined as a member to the second cluster. In one embodiment block 870 continues for a defined number of other members in the active first cluster. In one embodiment, the defined number is determined to be approximately equal to half of a total number of members in the first cluster … Such partitioning may be predefined, user settable, or based on some other criteria”. Where dividing of groups is also based on the attribute information of network connections in paragraph [0085], “In one embodiment, bifurcation of the first cluster may include reallocating at least one connection from the selected first member to at least one other member in the first cluster”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Virtuoso discloses, “a first impact factor of running performance of the available computing nodes on a total number of the computing node groups” (In [column 14, lines 60-66], “if the resources assigned to currently executing queries has exceeded a certain resource limit (e.g., because they were given extra resources when there was excess resource capacity in the resource pool), this may also be a factor in determining that preemption of at least some of those resources are necessary to service the future query requests”. The running performance is based on the executing queries. Note that resources may refer to computing nodes, as stated in [column 15, lines 5-6], “the preemption agent 114 identifies the resources (e.g., computing nodes)”.); “and a second impact factor of a resource utilization of the available computing nodes on the total number of the computing node groups” (In [column 2, line 66 – column 3, line 1], “a computing node may be referred to as including or utilizing a collection of computing resources to perform its tasks”. In [column 8, lines 17-22], “The preemption agent 114 may utilize a variety of factors to make this determination. These factors may include, for instance, the percentage of computing resources in the resource pool that are occupied by currently executing queries, a percentage of unused (or, free) resources in the resource pool”.); Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of the impact factors in Virtuoso; motivated by the common goal of, “higher overall utilization of the resources, better performance for queries in the system … results in improved utilization of computing resources” (Virtuoso [column 10, lines 26-31]). Claims 5, 7, 14, 16, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Bernat in view of Szabo as applied to claims 1, 9, and 10 above, and further in view of Zhang (U.S. Publication No. 20170142203 A1, hereinafter Zhang). Regarding Claim 5: Bernat further discloses, “wherein the determining, based on a target resource quantity indicated by the deploying request and a quantity of the available computing resources of the target computing node, whether the target computing node meets a deploying condition of the target cloud service comprises” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources)”. In paragraph [0150], “to obtain or otherwise determine properties of available configuration (implementable with chiplets) in the hardware resource. Such configuration may be evaluated based on whether the hardware resource is available, configurable, or optimized to satisfy the condition for use of the hardware resource. Such conditions may be tied to larger use of the systems and system services, such as in the context of an SLA, SLOs, or other objectives or service characteristics”. In paragraph [0036], “FIG. 2 illustrates deployment and orchestration for virtual edge configurations across an edge computing system … The virtual edge instances provide edge compute capabilities and processing in an edge cloud”. In paragraph [0037], “In the example of FIG. 2, these virtual edge instances include: a first virtual edge 232, offered to a first tenant (Tenant 1), which offers a first combination of edge storage, computing, and services”.). Bernat as modified does not disclose however Zhang discloses, “when the quantity of the available computing resources of the target computing node is greater than or equal to the target resource quantity indicated by the deploying request, determining that the target computing node meets the deploying condition of the target cloud service” (In paragraph [0040], “if current available resources of the host meet the conditions that the remaining memory for container is larger than the container memory … then the current host meeting the above conditions is added into the list of the hosts that can deploy the container”. Where the container allows for cloud services to be deployed in the context of this invention in paragraph [0004], “With the promotion for Docker technology in cloud computing, more and more application services began to deploy in the container”.); “when the quantity of the available computing resources of the target computing node is less than the target resource quantity indicated by the deploying request, determining that the target computing node does not meet the deploying condition of the target cloud service” (In paragraph [0040], “if current available resources of the host meet the conditions that the remaining memory for container is larger than the container memory … then the current host meeting the above conditions is added into the list of the hosts that can deploy the container. Otherwise, the current hosts not meeting these conditions are deleted from the list of online hosts”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teaching by Zhang; motivated by the common goal “to achieve full and balanced utilization of the host resources” (Zhang [0005]), where this goal is similarly stated in the examined case, “to balance the load and the resource utilization” (examined case [0004]). Regarding Claim 7: Bernat further discloses, “wherein the deploying the target cloud service on the target computing node comprises: deploying a target virtual machine on the target computing node” (In paragraph [0042], “edge computing systems may deploy containers in an edge computing system. As a simplified example, a container manager is adapted to launch containerized pods, functions, and functions-as-a-service instances through execution via compute nodes… where containerized pods, functions, and functions-as-a-service instances are launched within virtual machines”. Where edge computing refers to in paragraph [0029], “a configuration for edge computing, which includes a layer of processing referenced in many of the current examples as an “edge cloud””. In paragraph [0060], “FIG. 5 generically depicts an edge computing system for providing edge services and applications to multi-stakeholder entities, as distributed among one or more client compute nodes … The implementation of the edge computing system may be provided at or on behalf of a … cloud service provider (CSP)”. In paragraph [0061], “provide the deployment of compute, storage, and networking services between end devices and cloud computing data centers”.); “and deploying the target cloud service on the target virtual machine” (In paragraph [0042], “edge computing systems may deploy containers in an edge computing system. As a simplified example, a container manager is adapted to launch containerized pods … where containerized pods, functions, and functions-as-a-service instances are launched within virtual machines specific to each tenant”.). Bernat as modified does not disclose however Zhang discloses, “wherein available computing resources occupied by the target virtual machine match the target resource quantity” (In paragraph [0037], “it can be ensured that the host is preferably used with maximum remaining memory for container to perform deployment. That is, the maximum remaining memory for container, e.g., host 1, is preferably read to match host resources”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teaching of Zhang; motivated by the common goal “to achieve full and balanced utilization of the host resources” (Zhang [0005]), where this goal is similarly stated in the examined case, “to balance the load and the resource utilization” (examined case [0004]). Regarding Claim 14: Bernat further discloses, “wherein the determining, based on a target resource quantity indicated by the deploying request and a quantity of the available computing resources of the target computing node, whether the target computing node meets a deploying condition of the target cloud service comprises” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources)”. In paragraph [0150], “to obtain or otherwise determine properties of available configuration (implementable with chiplets) in the hardware resource. Such configuration may be evaluated based on whether the hardware resource is available, configurable, or optimized to satisfy the condition for use of the hardware resource. Such conditions may be tied to larger use of the systems and system services, such as in the context of an SLA, SLOs, or other objectives or service characteristics”. In paragraph [0036], “FIG. 2 illustrates deployment and orchestration for virtual edge configurations across an edge computing system … The virtual edge instances provide edge compute capabilities and processing in an edge cloud”. In paragraph [0037], “In the example of FIG. 2, these virtual edge instances include: a first virtual edge 232, offered to a first tenant (Tenant 1), which offers a first combination of edge storage, computing, and services”.). Bernat as modified does not disclose however Zhang discloses, “when the quantity of the available computing resources of the target computing node is greater than or equal to the target resource quantity indicated by the deploying request, determining that the target computing node meets the deploying condition of the target cloud service” (In paragraph [0040], “if current available resources of the host meet the conditions that the remaining memory for container is larger than the container memory … then the current host meeting the above conditions is added into the list of the hosts that can deploy the container”. Where the container allows for cloud services to be deployed in the context of this invention in paragraph [0004], “With the promotion for Docker technology in cloud computing, more and more application services began to deploy in the container”.); “when the quantity of the available computing resources of the target computing node is less than the target resource quantity indicated by the deploying request, determining that the target computing node does not meet the deploying condition of the target cloud service” (In paragraph [0040], “if current available resources of the host meet the conditions that the remaining memory for container is larger than the container memory … then the current host meeting the above conditions is added into the list of the hosts that can deploy the container. Otherwise, the current hosts not meeting these conditions are deleted from the list of online hosts”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teaching by Zhang; motivated by the common goal “to achieve full and balanced utilization of the host resources” (Zhang [0005]), where this goal is similarly stated in the examined case, “to balance the load and the resource utilization” (examined case [0004]). Regarding Claim 16: Bernat further discloses, “wherein the deploying the target cloud service on the target computing node comprises: deploying a target virtual machine on the target computing node” (In paragraph [0042], “edge computing systems may deploy containers in an edge computing system. As a simplified example, a container manager is adapted to launch containerized pods, functions, and functions-as-a-service instances through execution via compute nodes… where containerized pods, functions, and functions-as-a-service instances are launched within virtual machines”. Where edge computing refers to in paragraph [0029], “a configuration for edge computing, which includes a layer of processing referenced in many of the current examples as an “edge cloud””. In paragraph [0060], “FIG. 5 generically depicts an edge computing system for providing edge services and applications to multi-stakeholder entities, as distributed among one or more client compute nodes … The implementation of the edge computing system may be provided at or on behalf of a … cloud service provider (CSP)”. In paragraph [0061], “provide the deployment of compute, storage, and networking services between end devices and cloud computing data centers”.); “and deploying the target cloud service on the target virtual machine” (In paragraph [0042], “edge computing systems may deploy containers in an edge computing system. As a simplified example, a container manager is adapted to launch containerized pods … where containerized pods, functions, and functions-as-a-service instances are launched within virtual machines specific to each tenant”.). Bernat as modified does not disclose however Zhang discloses, “wherein available computing resources occupied by the target virtual machine match the target resource quantity” (In paragraph [0037], “it can be ensured that the host is preferably used with maximum remaining memory for container to perform deployment. That is, the maximum remaining memory for container, e.g., host 1, is preferably read to match host resources”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teaching of Zhang; motivated by the common goal “to achieve full and balanced utilization of the host resources” (Zhang [0005]), where this goal is similarly stated in the examined case, “to balance the load and the resource utilization” (examined case [0004]). Regarding Claim 20: Bernat further discloses, “wherein the determining, based on a target resource quantity indicated by the deploying request and a quantity of the available computing resources of the target computing node, whether the target computing node meets a deploying condition of the target cloud service comprises” (In paragraph [0148], “The flowchart 1200 begins with operation 1210, performed by the hardware platform, to identify an available resource (or resources)”. In paragraph [0150], “to obtain or otherwise determine properties of available configuration (implementable with chiplets) in the hardware resource. Such configuration may be evaluated based on whether the hardware resource is available, configurable, or optimized to satisfy the condition for use of the hardware resource. Such conditions may be tied to larger use of the systems and system services, such as in the context of an SLA, SLOs, or other objectives or service characteristics”. In paragraph [0036], “FIG. 2 illustrates deployment and orchestration for virtual edge configurations across an edge computing system … The virtual edge instances provide edge compute capabilities and processing in an edge cloud”. In paragraph [0037], “In the example of FIG. 2, these virtual edge instances include: a first virtual edge 232, offered to a first tenant (Tenant 1), which offers a first combination of edge storage, computing, and services”.). Bernat as modified does not disclose however Zhang discloses, “when the quantity of the available computing resources of the target computing node is greater than or equal to the target resource quantity indicated by the deploying request, determining that the target computing node meets the deploying condition of the target cloud service” (In paragraph [0040], “if current available resources of the host meet the conditions that the remaining memory for container is larger than the container memory … then the current host meeting the above conditions is added into the list of the hosts that can deploy the container”. Where the container allows for cloud services to be deployed in the context of this invention in paragraph [0004], “With the promotion for Docker technology in cloud computing, more and more application services began to deploy in the container”.); “when the quantity of the available computing resources of the target computing node is less than the target resource quantity indicated by the deploying request, determining that the target computing node does not meet the deploying condition of the target cloud service” (In paragraph [0040], “if current available resources of the host meet the conditions that the remaining memory for container is larger than the container memory … then the current host meeting the above conditions is added into the list of the hosts that can deploy the container. Otherwise, the current hosts not meeting these conditions are deleted from the list of online hosts”.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Zhang; motivated by the common goal “to achieve full and balanced utilization of the host resources” (Zhang [0005]), where this goal is similarly stated in the examined case, “to balance the load and the resource utilization” (examined case [0004]). Claims 6, 15, and 21 are rejected under 35 U.S.C. 103 as being unpatentable over Bernat in view of Szabo and Bergsma as applied to claims 1, 9, and 10 above, and further in view of Jung et al. (U.S. Publication No. 20190188022 A1, hereinafter Jung). Regarding Claim 6: Bernat does not disclose however Szabo discloses, “wherein the selecting a standby computing node group from computing node groups other than the target computing node group, and combining the standby computing node group into the target computing node group comprises” (In paragraph [0098], “By entering "hot standby mode" and mirroring state in this way, connection state may effectively be transferred between clusters executing different software versions”. Further in paragraph [0025], “an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster), and iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0073], “the old and new clusters may coordinate … coordination may be achieved between clusters having different software versions”. Referring to Figure 7C, in paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster … Once removed from Cluster #1, Member #4 may become Cluster #2”. A cluster becomes part of the standby group when upgrading the software, because the network connections are on standby. In paragraph [0081], “FIGS. 7G and 7H illustrate failing over connectivity from the Cluster #1 to the Cluster #2, after which Cluster #1 is dissolved, and disabled members of Cluster #1 may install and boot the upgraded software version”. As shown in Figure 7G, Member #1 is in the Standby Cluster group. Then in Figure 7H, Member #1 is combined into the Active Cluster target group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Jung discloses, “determining a target standby computing node group from a plurality of standby computing node groups based on the target resource quantity indicated by the deploying request and a quantity of available computing resources of the standby computing node groups” (In paragraph [0049], “An analysis of placement rules and the implications thereof on the EAR and the resources utilization will be described … an algorithm for standby VM selection for activation when its active VM is not available”. Where the target standby VM is selected from a plurality of standby VMs based on a scheduling system in paragraph [0081], “For each affected application, the VM placement scheduling system 108 attempts to get a server 210 that hosts any one of the standby VMs … It should be noted that only one standby VM 214 of each affected application 218 can be activated in each server 210”.); “and combining a standby computing node in the target standby computing node group into the target computing node group” (The standby VM group is combined with an active VM group in paragraph [0080], “Once the VM placement scheduling system 108 captures such failed applications at runtime, the VM placement scheduling system 108 finds the servers 210 of corresponding standby VMs 214 of those failed applications and activates the standby VMs 214 as active VMs 212 to continue running those standby VMs 214 until the failed host can be repaired”. Note that the active VM is mapped to the target computing node group; similar to the secondary reference of Szabo having the active cluster group mapped as the target computing node group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Jung; motivated by the common goal to improve resource utilization during cloud deployment, such as in, “optimal VM placement is a well-known problem in cloud deployments … the concepts and technologies disclosed herein provide a VM placement algorithm that precisely deals with … as well as the resource utilization in a hierarchical cloud infrastructure” (Jung [0069]) and “a cloud-based solution … significantly improve resource utilization” (Jung [0005]). Regarding Claim 15: Bernat does not disclose however Szabo discloses, “wherein the selecting a standby computing node group from computing node groups other than the target computing node group, and combining the standby computing node group into the target computing node group comprises” (In paragraph [0098], “By entering "hot standby mode" and mirroring state in this way, connection state may effectively be transferred between clusters executing different software versions”. Further in paragraph [0025], “an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster), and iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0073], “the old and new clusters may coordinate … coordination may be achieved between clusters having different software versions”. Referring to Figure 7C, in paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster … Once removed from Cluster #1, Member #4 may become Cluster #2”. A cluster becomes part of the standby group when upgrading the software, because the network connections are on standby. In paragraph [0081], “FIGS. 7G and 7H illustrate failing over connectivity from the Cluster #1 to the Cluster #2, after which Cluster #1 is dissolved, and disabled members of Cluster #1 may install and boot the upgraded software version”. As shown in Figure 7G, Member #1 is in the Standby Cluster group. Then in Figure 7H, Member #1 is combined into the Active Cluster target group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Jung discloses, “determining a target standby computing node group from a plurality of standby computing node groups based on the target resource quantity indicated by the deploying request and a quantity of available computing resources of the standby computing node groups” (In paragraph [0049], “An analysis of placement rules and the implications thereof on the EAR and the resources utilization will be described … an algorithm for standby VM selection for activation when its active VM is not available”. Where the target standby VM is selected from a plurality of standby VMs based on a scheduling system in paragraph [0081], “For each affected application, the VM placement scheduling system 108 attempts to get a server 210 that hosts any one of the standby VMs … It should be noted that only one standby VM 214 of each affected application 218 can be activated in each server 210”.); “and combining a standby computing node in the target standby computing node group into the target computing node group” (The standby VM group is combined with an active VM group in paragraph [0080], “Once the VM placement scheduling system 108 captures such failed applications at runtime, the VM placement scheduling system 108 finds the servers 210 of corresponding standby VMs 214 of those failed applications and activates the standby VMs 214 as active VMs 212 to continue running those standby VMs 214 until the failed host can be repaired”. Note that the active VM is mapped to the target computing node group; similar to the secondary reference of Szabo having the active cluster group mapped as the target computing node group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Jung; motivated by the common goal to improve resource utilization during cloud deployment, such as in, “optimal VM placement is a well-known problem in cloud deployments … the concepts and technologies disclosed herein provide a VM placement algorithm that precisely deals with … as well as the resource utilization in a hierarchical cloud infrastructure” (Jung [0069]) and “a cloud-based solution … significantly improve resource utilization” (Jung [0005]). Regarding Claim 21: Bernat does not disclose however Szabo discloses, “wherein the selecting a standby computing node group from computing node groups other than the target computing node group, and combining the standby computing node group into the target computing node group comprises” (In paragraph [0098], “By entering "hot standby mode" and mirroring state in this way, connection state may effectively be transferred between clusters executing different software versions”. Further in paragraph [0025], “an "old" virtual cluster (old active cluster) and a "new" virtual cluster (new standby cluster), and iteratively upgrading members of the old cluster while moving them into the new cluster”. In paragraph [0073], “the old and new clusters may coordinate … coordination may be achieved between clusters having different software versions”. Referring to Figure 7C, in paragraph [0077], “the Cluster #2, with a unique Layer 2 and Layer 3 identifier, may act as a "hot standby" to Cluster #1, mirroring connections prior to failover from the first cluster … Once removed from Cluster #1, Member #4 may become Cluster #2”. A cluster becomes part of the standby group when upgrading the software, because the network connections are on standby. In paragraph [0081], “FIGS. 7G and 7H illustrate failing over connectivity from the Cluster #1 to the Cluster #2, after which Cluster #1 is dissolved, and disabled members of Cluster #1 may install and boot the upgraded software version”. As shown in Figure 7G, Member #1 is in the Standby Cluster group. Then in Figure 7H, Member #1 is combined into the Active Cluster target group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to modify Bernat by adopting the teachings of Szabo; motivated by the common goal to “improve the utilization of computing resources … To ensure running performance of the computing node” (examined case [0004]), such as “A Blade Server is one type of cluster-based component that allows a user to provision servers or other computing resources … a high-density system with a modular architecture that provides improved flexibility and scalability” (Szabo [0004]), and where, “As the reliance by businesses on access to such networked resources for their success increases, the availability of the systems that provide these services becomes even more critical” (Szabo [0003]). Bernat as modified does not disclose however Jung discloses, “determining a target standby computing node group from a plurality of standby computing node groups based on the target resource quantity indicated by the deploying request and a quantity of available computing resources of the standby computing node groups” (In paragraph [0049], “An analysis of placement rules and the implications thereof on the EAR and the resources utilization will be described … an algorithm for standby VM selection for activation when its active VM is not available”. Where the target standby VM is selected from a plurality of standby VMs based on a scheduling system in paragraph [0081], “For each affected application, the VM placement scheduling system 108 attempts to get a server 210 that hosts any one of the standby VMs … It should be noted that only one standby VM 214 of each affected application 218 can be activated in each server 210”.); “and combining a standby computing node in the target standby computing node group into the target computing node group” (The standby VM group is combined with an active VM group in paragraph [0080], “Once the VM placement scheduling system 108 captures such failed applications at runtime, the VM placement scheduling system 108 finds the servers 210 of corresponding standby VMs 214 of those failed applications and activates the standby VMs 214 as active VMs 212 to continue running those standby VMs 214 until the failed host can be repaired”. Note that the active VM is mapped to the target computing node group; similar to the secondary reference of Szabo having the active cluster group mapped as the target computing node group.). Therefore, it would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to further modify Bernat by adopting the teachings of Jung; motivated by the common goal to improve resource utilization during cloud deployment, such as in, “optimal VM placement is a well-known problem in cloud deployments … the concepts and technologies disclosed herein provide a VM placement algorithm that precisely deals with … as well as the resource utilization in a hierarchical cloud infrastructure” (Jung [0069]) and “a cloud-based solution … significantly improve resource utilization” (Jung [0005]). Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to Beza D Nigatu whose telephone number is (571)272-9643. The examiner can normally be reached Monday - Friday 7:30am-3:30pm. 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, Hyung Sough can be reached at (571) 272-6799. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of 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. /BEZA D NIGATU/Examiner, Art Unit 2192 /S. Sough/SPE, Art Unit 2192
Read full office action

Prosecution Timeline

Jul 16, 2024
Application Filed
Jul 22, 2026
Non-Final Rejection mailed — §103 (current)

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
Grant Probability
Low
PTA Risk
Based on 0 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month