Prosecution Insights
Last updated: August 17, 2026
Application No. 18/909,744

Automatic Code Topology Determination and Migration

Non-Final OA §101
Filed
Oct 08, 2024
Examiner
JEON, JAE UK
Art Unit
2193
Tech Center
2100 — Computer Architecture & Software
Assignee
Google LLC
OA Round
1 (Non-Final)
75%
Grant Probability
Favorable
1-2
OA Rounds
1y 3m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 75% — above average
75%
Career Allowance Rate
309 granted / 412 resolved
+20.0% vs TC avg
Strong +46% interview lift
Without
With
+46.2%
Interview Lift
resolved cases with interview
Typical timeline
3y 1m
Avg Prosecution
26 currently pending
Career history
448
Total Applications
across all art units

Statute-Specific Performance

§101
23.2%
-16.8% vs TC avg
§103
51.0%
+11.0% vs TC avg
§102
3.9%
-36.1% vs TC avg
§112
14.0%
-26.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 412 resolved cases

Office Action

§101
Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . DETAILED ACTION 1. This Office Action is in response to the application filed on 10/08/2024. Claims 1-20 are pending in this application. Claims 1, 16 and 18 are independent claims. Claim Rejections - 35 USC § 101 2. 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. 3. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The independent claims 1, 16 and 18 are corresponding to one of four statutory categories including method, system, and method respectively under step 1. The claims 1, 16 and 18 similarly recite “a computer-implemented method of generating structural community assignments for code migration, the computer-implemented method comprising: receiving, by a computing system comprising one or more processors, code data comprising a plurality of code segments; generating, by the computing system, based on the code data, a build dependency graph comprising a plurality of nodes and a plurality of edges, wherein the plurality of nodes correspond to the plurality of code segments, and wherein the plurality of edges correspond to a plurality of dependencies between the plurality of code segments; determining, by the computing system, over a plurality of iterations in which different combinations of the plurality of nodes are assigned to a plurality of communities, based on maximizing a modularity score associated with a modularity of the plurality of communities, a structural community assignment comprising an assignment of the plurality of nodes to the plurality of communities that maximizes the modularity score, wherein the modularity score is based on a density of the plurality of edges within each of the plurality of communities relative to the density of the plurality of edges outside each of the plurality of communities; generating, by the computing system, code migration data based on the structural community assignment, wherein the code migration data comprises a plurality of migration tasks associated with migrating the plurality of code segments based on the structural community assignment; and sending, by the computing system, the code migration data to a code review queue”. The limitation of the claims 1, 16 and 18 of “generating, by the computing system, based on the code data, a build dependency graph comprising a plurality of nodes and a plurality of edges, wherein the plurality of nodes correspond to the plurality of code segments, and wherein the plurality of edges correspond to a plurality of dependencies between the plurality of code segments” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “generating (designing) a build dependency graph” in the context of this claim encompasses the user may generating, based on the code data, a build dependency graph comprising a plurality of nodes and a plurality of edges, wherein the plurality of nodes correspond to the plurality of code segments, and wherein the plurality of edges correspond to a plurality of dependencies between the plurality of code segments with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claims 1, 16 and 18 of “determining, by the computing system, over a plurality of iterations in which different combinations of the plurality of nodes are assigned to a plurality of communities, based on maximizing a modularity score associated with a modularity of the plurality of communities, a structural community assignment comprising an assignment of the plurality of nodes to the plurality of communities that maximizes the modularity score” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine over a plurality of iterations in which different combinations of the plurality of nodes are assigned to a plurality of communities, based on maximizing a modularity score associated with a modularity of the plurality of communities, a structural community assignment comprising an assignment of the plurality of nodes to the plurality of communities that maximizes the modularity score with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claims 1, 16 and 18 of “wherein the modularity score is based on a density of the plurality of edges within each of the plurality of communities relative to the density of the plurality of edges outside each of the plurality of communities” as drafted, is a mathematical operation that, under its broadest reasonable interpretation, covers a mathematical operation but for the recitation of generic computer components. For example, but for the “score is based on (calculating based on)” in the context of this claim encompasses the user may calculate the modularity score based on a density of the plurality of edges within each of the plurality of communities relative to the density of the plurality of edges outside each of the plurality of communities with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mathematical Operations” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claims 1, 16 and 18 of “generating, by the computing system, code migration data based on the structural community assignment, wherein the code migration data comprises a plurality of migration tasks associated with migrating the plurality of code segments based on the structural community assignment” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “generating/formulating data/information” in the context of this claim encompasses the user may generate code migration data based on the structural community assignment, wherein the code migration data comprises a plurality of migration tasks associated with migrating the plurality of code segments based on the structural community assignment with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. This judicial exception is not integrated into a practical application. In particular, the claims 1, 16 and 18 recite additional elements such as “receiving, by a computing system comprising one or more processors, code data comprising a plurality of code segments”. Examiner would like to point out that with the broad reasonable interpretation, this element amounts to mere data gathering under MPEP § 2106.05(g): Insignificant Extra-Solution Activity, which does not impose any meaningful limits on practicing the mental process (insignificant additional element). Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to insignificant additional elements under Step 2A Prong 2 and Step 2B. This judicial exception is not integrated into a practical application. In particular, the claims 1, 16 and 18 recite additional elements such as “sending, by the computing system, the code migration data to a code review queue”. Examiner would like to point out that with the broad reasonable interpretation, this element amounts to mere data outputting under MPEP § 2106.05(g): Insignificant Extra-Solution Activity, which does not impose any meaningful limits on practicing the mental process (insignificant additional element). Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to insignificant additional elements under Step 2A Prong 2 and Step 2B. The limitation of the claim 2 of “determining, by the computing system, in a first iteration of the plurality of iterations, that each node of the plurality of nodes is assigned to a different community of the plurality of communities” as drafted, is a mathematical operation that, under its broadest reasonable interpretation, covers a mathematical operation but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine in a first iteration of the plurality of iterations, that each node of the plurality of nodes is assigned to a different community of the plurality of communities with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mathematical Operations” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 2 of “determining, by the computing system, over the plurality of iterations subsequent to the first iteration, mergers of different pairs of the plurality of communities that increase the modularity score by a greatest amount” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine over the plurality of iterations subsequent to the first iteration, mergers of different pairs of the plurality of communities that increase the modularity score by a greatest amount with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claims 3, 17 and 20 of “the modularity score is positively correlated with a difference between an assignment of the plurality of nodes to the plurality of communities and a random assignment of the plurality of nodes to the plurality of communities” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “correlating” in the context of this claim encompasses the user may positively correlate the modularity score with a difference between an assignment of the plurality of nodes to the plurality of communities and a random assignment of the plurality of nodes to the plurality of communities with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claims 4 and 19 of “the modularity score is positively correlated with the density of the plurality of edges within the plurality of communities relative to the density of the plurality of edges outside the plurality of communities” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “correlating” in the context of this claim encompasses the user may positively correlate the modularity score with the density of the plurality of edges within the plurality of communities relative to the density of the plurality of edges outside the plurality of communities with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 5 of “the modularity score is negatively correlated with a distance between the plurality of nodes in the plurality of communities, and wherein the distance between the plurality of nodes is based on a number of intervening nodes between a pair of nodes of the plurality of nodes” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “correlating” in the context of this claim encompasses the user may negatively correlate the modularity score with a distance between the plurality of nodes in the plurality of communities, and wherein the distance between the plurality of nodes is based on a number of intervening nodes between a pair of nodes of the plurality of nodes with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 6 of “a first iteration of the plurality of iterations is based on a random assignment of the plurality of nodes to the plurality of communities” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “iterating based” in the context of this claim encompasses the user may perform a first iteration of the plurality of iterations based on a random assignment of the plurality of nodes to the plurality of communities with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 7 of “the plurality of nodes assigned to each of the plurality of communities is mutually exclusive with respect to the plurality of nodes assigned to other communities of the plurality of communities” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “assigning” in the context of this claim encompasses the user may assign the plurality of nodes to each of the plurality of communities to be mutually exclusive with respect to the plurality of nodes assigned to other communities of the plurality of communities with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. This judicial exception is not integrated into a practical application. In particular, the claim 8 recites additional elements such as “the determining the structural community assignment is performed by one or more machine-learned models trained to determine the structural community assignment based on input comprising the code data and the build dependency graph”. Examiner would like to point out that with the broad reasonable interpretation, this element amounts to apply it under MPEP § 2106.05(f): Mere Instructions to Apply an Exception, which does not impose any meaningful limits on practicing the mental process (insignificant additional element). Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to insignificant additional elements under Step 2A Prong 2 and Step 2B. This judicial exception is not integrated into a practical application. In particular, the claim 9 recites additional elements such as “the one or more machine-learned models comprise one or more auto-encoder models”. Examiner would like to point out that with the broad reasonable interpretation, this element amounts to field of use under MPEP § 2106.05(h): Field of Use and Technological Environment, which does not impose any meaningful limits on practicing the mental process. Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea under Step 2A Prong 2 and 2B. This judicial exception is not integrated into a practical application. In particular, the claim 10 recites additional elements such as “receiving, by the computing system, training data comprising a plurality of training build dependency graphs comprising a plurality of training nodes connected by a plurality of training edges, wherein the plurality of training build dependency graphs are associated with a corresponding plurality of ground-truth structural community assignments, wherein the plurality of training nodes are associated with a plurality of training code segments, and wherein the plurality of training edges indicate dependencies between the plurality of training code segments”. Examiner would like to point out that with the broad reasonable interpretation, this element amounts to mere data gathering under MPEP § 2106.05(g): Insignificant Extra-Solution Activity, which does not impose any meaningful limits on practicing the mental process (insignificant additional element). Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to insignificant additional elements under Step 2A Prong 2 and Step 2B. The limitation of the claim 10 of “determining, by the computing system, based on inputting the plurality of training build dependency graphs into the one or more machine-learned models, a plurality of predicted structural community assignments” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine based on inputting the plurality of training build dependency graphs into the one or more machine-learned models, a plurality of predicted structural community assignments with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 10 of “determining, by the computing system, a loss based on one or more differences between the plurality of predicted structural community assignments and the corresponding plurality of ground-truth structural community assignments” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine a loss based on one or more differences between the plurality of predicted structural community assignments and the corresponding plurality of ground-truth structural community assignments with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 10 of “modifying, by the computing system, a plurality of parameters of the one or more machine-learned models to minimize the loss” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “modifying parameters” in the context of this claim encompasses the user may modify a plurality of parameters of the one or more machine-learned models to minimize the loss with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. This judicial exception is not integrated into a practical application. In particular, the claim 11 recites additional elements such as “wherein the plurality of code segments are associated with a plurality of directories, and wherein the plurality of code segments associated with a same directory of the plurality of directories correspond to the plurality of nodes assigned to a same community of the plurality of communities”. Examiner would like to point out that with the broad reasonable interpretation, this element amounts to field of use under MPEP § 2106.05(h): Field of Use and Technological Environment, which does not impose any meaningful limits on practicing the mental process. Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea under Step 2A Prong 2 and 2B. The limitation of the claim 12 of “a number of the plurality of iterations is based on a predetermined threshold number of iterations” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “iterating based on” in the context of this claim encompasses the user may perform a number of the plurality of iterations based on a predetermined threshold number of iterations with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 13 of “the plurality of iterations continues until the modularity score exceeds a modularity score threshold” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “iterating” in the context of this claim encompasses the user may continue the plurality of iterations until the modularity score exceeds a modularity score threshold with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 14 of “determining, by the computing system, a number of the plurality of migration tasks in the code review queue” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine a number of the plurality of migration tasks in the code review queue with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 14 of “determining, by the computing system, that the number of the plurality of migration tasks sent to the code review queue does not exceed a task utilization threshold associated with a capacity of the code review queue” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine that the number of the plurality of migration tasks sent to the code review queue does not exceed a task utilization threshold associated with a capacity of the code review queue with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. The limitation of the claim 15 of “determining, by the computing system, based on a distance between the plurality of nodes, a migration priority associated with an order in which the plurality of migration tasks are sent to the code review queue, wherein the migration priority of the plurality of migration tasks is positively correlated with the distance between a pair of the plurality of code segments associated with the plurality of migration tasks” as drafted, is a mental process that, under its broadest reasonable interpretation, covers a mental process but for the recitation of generic computer components. For example, but for the “determining” in the context of this claim encompasses the user may determine based on a distance between the plurality of nodes, a migration priority associated with an order in which the plurality of migration tasks are sent to the code review queue, wherein the migration priority of the plurality of migration tasks is positively correlated with the distance between a pair of the plurality of code segments associated with the plurality of migration tasks with a pen and paper or in a human mind. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea under Step 2A Prong 1. This judicial exception is not integrated into a practical application. In particular, the claim 15 recites additional elements such as “sending, by the computing system, the plurality of migration tasks to the code review queue in an order based on the migration priority”. Examiner would like to point out that with the broad reasonable interpretation, this element amounts to mere data outputting under MPEP § 2106.05(g): Insignificant Extra-Solution Activity, which does not impose any meaningful limits on practicing the mental process (insignificant additional element). Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. The claim is directed to insignificant additional elements under Step 2A Prong 2 and Step 2B. Dependent claims 2-15, 17 and 19-20 are also similar rejected under same rationale as cited above wherein these claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. These claims are merely further elaborate the mental process itself or providing additional definition of process which does not impose any meaningful limits on practicing the abstract idea. Claims 2-15, 17 and 19-20 are also rejected for incorporating the deficiency of their independent claims 1, 16 and 18 respectively. Reasons for Allowance 4. The following is an examiner’s statement of reasons for allowance: the prior-art, Medeiros (US PGPub 20230161585), in view of Saravanan (US PGPub 20230394343), in view of Matic (US Patent 9514164), in view of McKenzie (US PGPub 20170124073), and further in view of Engelberg (US PGPub 20210409439) failed to disclose of a computer-implemented method of generating structural community assignments for code migration, the computer-implemented method comprising: receiving, by a computing system comprising one or more processors, code data comprising a plurality of code segments; generating, by the computing system, based on the code data, a build dependency graph comprising a plurality of nodes and a plurality of edges, wherein the plurality of nodes correspond to the plurality of code segments, and wherein the plurality of edges correspond to a plurality of dependencies between the plurality of code segments; determining, by the computing system, over a plurality of iterations in which different combinations of the plurality of nodes are assigned to a plurality of communities, based on maximizing a modularity score associated with a modularity of the plurality of communities, a structural community assignment comprising an assignment of the plurality of nodes to the plurality of communities that maximizes the modularity score, wherein the modularity score is based on a density of the plurality of edges within each of the plurality of communities relative to the density of the plurality of edges outside each of the plurality of communities; generating, by the computing system, code migration data based on the structural community assignment, wherein the code migration data comprises a plurality of migration tasks associated with migrating the plurality of code segments based on the structural community assignment; and sending, by the computing system, the code migration data to a code review queue, as recited by the independent claim 1. Regarding Claim 1, the closest prior-art found, Medeiros, Saravanan, Matic, McKenzie and Engelberg discloses of a computer-implemented method of generating structural community assignments for code migration, the computer-implemented method comprising: receiving, by a computing system comprising one or more processors, code data comprising a plurality of code segments; generating, by the computing system, based on the code data, a build dependency graph comprising a plurality of nodes and a plurality of edges, wherein the plurality of nodes correspond to the plurality of code segments, and wherein the plurality of edges correspond to a plurality of dependencies between the plurality of code segments; determining, by the computing system, over a plurality of iterations in which different combinations of the plurality of nodes are assigned to a plurality of communities, wherein the modularity score is based on a density of the plurality of edges within each of the plurality of communities relative to the density of the plurality of edges; generating, by the computing system, code migration data based on the structural community assignment, wherein the code migration data comprises a plurality of migration tasks associated with migrating the plurality of code segments based on the structural community assignment; and sending, by the computing system, the code migration data to a code review queue. Individually, Medeiros teaches of generating a directed dependency graph comprising a plurality of nodes and edges, wherein each node of the plurality of nodes describes a code segment of the source code, and wherein each edge of the plurality of edges describes a dependency between two code segments of the source code; and identifying a second code segment that is dependent from the first code segment based on the directed dependency graph. Saravanan teaches that the classical computing part of the embodiment may then iterate through various combinations or groupings of nodes, starting with the initial groups of adjacent nodes, until no further improvement in modularity results. The resulting groups of interconnected nodes can then be used as a basis for configurating various network settings. Matic teaches that for example, client device 210 may generate a dependency graph associated with the base data structure. The dependency graph may include, for example, a node that represents the base data structure, and one or more nodes that represent different data structures that have a dependency relationship with the base data structure (e.g., a parent relationship, a child relationship, etc.). Additionally, or alternatively the dependency graph may include links between nodes (e.g., data structures) that have a dependency relationship. A link between two nodes may include a directed link that indicates a direction of a dependency. For example, a link may indicate that a first node (e.g., a child node) depends on a second node (e.g., a parent node). FIG. 6 is a flow chart of an example process 600 for selectively migrating data between databases based on dependencies of database entities. McKenzie teaches that FIG. 5 illustrates an example display screen 500 for requesting and reviewing code migration in which various aspects of the disclosure may be implemented. The display screen 500 may be displayed on, for example, a display of the analyst's device 310. In some aspects, the display screen 500 may be displayed after (e.g., in response to) the analyst authenticates using his or her credentials. Engelberg teaches that the modularity scores represent a relative density of edges inside communities with respect to edges outside communities. The modularity score can be described as representative of a quality of a partition, which is a division of a network into multiple communities (groups). In some examples, if a modularity score is equal to or below a first value (e.g., is equal to −0.5), the partitioning of the network being considered is non-modular. If the modularity score is equal to or above a second value (e.g., is equal to 1), the partitioning of the network being considered is fully modular. In detecting groups (communities), the starting point for LCD is to consider each node (asset) as a community. For each iteration of multiple iterations, a node i is clustered to a community that provides a maximal gain in modularity score among a plurality of communities. In some examples, the final partition is achieved when a maximal gain in modularity scores, if partitioning were to continue, is less than a threshold gain (ε). However, the prior-art, Medeiros, Saravanan, Matic, McKenzie and Engelberg failed to disclose the following subject matter such as “determining, over a plurality of iterations in which different combinations of the plurality of nodes are assigned to a plurality of communities, based on maximizing a modularity score associated with a modularity of the plurality of communities, a structural community assignment comprising an assignment of the plurality of nodes to the plurality of communities that maximizes the modularity score, wherein the modularity score is based on a density of the plurality of edges within each of the plurality of communities relative to the density of the plurality of edges outside each of the plurality of communities”. Claim 16 is the product claim, similar to the claim 1, and claim 18 is the system claim, similar to the claim 1. Therefore, the prior-art, Medeiros, Saravanan, Matic, McKenzie and Engelberg failed to teach the method of claim 1, the product of claim 16 and the system of claim 18 as well as their dependent claims. Thus, claims 1-20 contain allowable subject matter over the prior art. 5. Any comments considered necessary by applicant must be submitted no later than the payment of the issue fee and, to avoid processing delays, should preferably accompany the issue fee. Such submissions should be clearly labeled “Comments on Statement of Reasons for Allowance.” Pertinent Prior Art The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Cherian (US Patent 11582485): Cherian teaches that a motion of each of the dynamic objects at different instances of time; encode the nodes of the spatio-temporal scene graph into a latent space using a spatio-temporal transformer encoding different combinations of different nodes of the spatio-temporal scene graph corresponding to different spatio-temporal volumes of the scene, wherein encoding of each node of the different nodes in each of the combinations is weighted with an attention score determined as a function of similarities of spatio-temporal locations of the different nodes in the combination; and output the encoded nodes of the spatio-temporal scene graph. Alstad (US PGPub 20160342751): Alstad teaches that generally speaking, the modularity score of this graph partition is understood to be the density of the edges within each community minus the expected number of edges between the groups. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to JAE UK JEON whose telephone number is (571)270-3649. The examiner can normally be reached 9am-6pm. 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, Chat Do can be reached on 571-272-3721. 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. /JAE U JEON/Primary Examiner, Art Unit 2193
Read full office action

Prosecution Timeline

Oct 08, 2024
Application Filed
Jul 28, 2026
Non-Final Rejection mailed — §101 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12699562
WORKFLOW TEMPLATES FOR CONFIGURATION PACKAGES
3y 3m to grant Granted Aug 04, 2026
Patent 12697982
TECHNIQUES FOR CALCULATING SURFACE BREAKPOINTS FOR SECONDARY SAFETY VERIFICATIONS IN VEHICLE CONTROLS SYSTEMS
2y 9m to grant Granted Aug 04, 2026
Patent 12693845
APPLICATION OF DATA DESCRIPTOR MAPS IN MANAGEMENT OF FIRMWARE CONTROL DATA
2y 8m to grant Granted Jul 28, 2026
Patent 12675264
INSERTING A MEMORY FENCE IN A PROGRAM IN RESPONSE TO A DETERMINATION THAT PREDETERMINED PATTERN(S) DO NOT EXIST IN THE PROGRAM
4y 1m to grant Granted Jul 07, 2026
Patent 12676030
IN-VEHICLE COMMUNICATION SYSTEM, DATA STRUCTURE OF REPROGRAMMING POLICY METADATA, AND DATA STRUCTURE OF DOWNLOAD METADATA
2y 6m to grant Granted Jul 07, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

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
75%
Grant Probability
99%
With Interview (+46.2%)
3y 1m (~1y 3m remaining)
Median Time to Grant
Low
PTA Risk
Based on 412 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