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
This action is in response to the amendment filed on 06/24/2026.
Claims 1, 9, 16, 21 are 24 amended by the applicants.
Claims 1-25 are pending.
Drawings
The drawings (Figures 2A-B) are objected to as failing to comply with 37 CFR 1.84(p)(5) because they do not include the following reference labels and/or sign(s) mentioned in the description: for example, a display screen [224], keys of a computer keyboard [226], a computer mouse [228], a microphone [230], and a camera [232] etc. 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. 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.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-25 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
Claim 1, this claim is within at least one of the four categories of patent eligible subject matter as it is directing to a computer-implemented method claim under Step 1.
1. A computer-implemented method (CIM) for refactoring source code blocks, comprising:
evaluating the source code blocks;
identifying dependent and exclusive ones of the source code blocks;
automatically causing the exclusive source code blocks to be refactored;
generating options outlining how the dependent source code blocks can be refactored;
transmitting the options to a user;
in response to receiving a selection of one or more of the options from the user, causing the dependent source code blocks to be refactored as outlined in the selected one or more options; and
combining the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service.
Regarding claim 1, the limitations “refactoring source code blocks, comprising: evaluating the source code blocks; identifying dependent and exclusive ones of the source code blocks; automatically causing the exclusive source code blocks to be refactored; generating options outlining how the dependent source code blocks can be refactored” and “causing the dependent source code blocks to be refactored as outlined in the selected one or more options” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. For example, a person is capable of determining dependencies for the source code blocks with the aid of pen and paper with the options given to a human programmer for refactoring the source code blocks. The automatically causing for the source code blocks are merely automates the steps of refactoring which does not change the metal process analysis. Therefore, these limitations encompass a human mind carrying out the function through observation, evaluation judgment and/or opinion, or even with the aid of pen and paper. Thus, these limitations recite and falls within the “Mental Processes” grouping of abstract ideas under Step 2A, Prong 1.
Under Step 2A, Prong 2, the additional elements “A computer-implemented method (CIM)” “A computer-implemented method (CIM)” “combining the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” are recited at a high-level of generality such that it amounts no more than mere instructions for combining code which merely using generic computing equipment or tool to apply the abstract idea. See MPEP 2106.05(f). For the additional elements “transmitting the options to a user; in response to receiving a selection of one or more of the options from the user” merely recite insignificant extra solution activity such as gathering, updating, transmitting and storing data which does not integrate the judicial exception into a practical application. See MPEP 2106.05(g).
Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of “A computer-implemented method (CIM)” “combining the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” amount to no more than mere instructions, or generic computer and/or computer components to carry out the exception, thus, cannot amount to an inventive concept. For the additional elements “transmitting the options to a user; in response to receiving a selection of one or more of the options from the user” the courts have identified functions such as data gathering/collecting including transmitting information over networks as well-understood, routine, conventional activity (Berkheimer v. HP, Inc., 881 F.3d 1360, 1368, 125 USPQ2d 1649, 1654 (Fed. Cir. 2018)), thus do not amount to significantly more than the judicial exception. See MPEP 2106.05(d). Accordingly, the claims are not patent eligible under 35 USC 101.
2. The CIM of claim 1, wherein the identifying of the dependent and exclusive source code blocks includes, for each of the source code blocks evaluated: determining whether a given source code block is a starting block of a service; and in response to determining the given source code block is the starting block of a service, replacing the given source code block with a call to the service.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
3. The CIM of claim 1, wherein the dependent source code blocks include shared dependent blocks and/or cross-dependent blocks.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
4. The CIM of claim 3, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing a warning in response to determining a given dependent source code block is a cross-dependent source code block, the warning outlining that the given dependent source code block will be added to the updated service.
The limitations, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing a warning in response to determining a given dependent source code block is a cross-dependent source code block, is an additional mental process under prong 1. For the limitations, the warning outlining that the given dependent source code block will be added to the updated service is an additional insignificant extra solution activity under Step 2A, Prong 2.
5. The CIM of claim 3, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing one or more refactoring alternates in response to determining a given dependent source code block is a shared dependent source code block, the one or more refactoring alternates being selected from the group consisting of: duplicating the given dependent source code block, using the given dependent source code block to produce a new service, creating conditional execution of the given dependent source code block, and hoisting the given dependent source code block.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
6. The CIM of claim 1, wherein the source code blocks include standard code and/or partially updated polyglot code.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
7. The CIM of claim 1, further comprising: in response to determining a given source code block includes an initialization, causing the given source code block to be refactored by duplicating the given source code block into the updated application.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
8. The CIM of claim 1, further comprising: in response to determining a given source code block includes a number of lines therein that is outside a predetermined range, causing the given source code block to be refactored by duplicating the given source code block into the updated application.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
Claim 9, this claim is within at least one of the four categories of patent eligible subject matter as it is directing to a computer program product claim under Step 1.
9. A computer program product (CPP) for refactoring source code blocks, comprising:
a set of one or more computer-readable storage media; and
program instructions, collectively stored in the set of one or more storage media, for causing a processor set to perform the following computer operations:
evaluate the source code blocks;
identify dependent and exclusive ones of the source code blocks;
automatically cause the exclusive source code blocks to be refactored;
generate options outlining how the dependent source code blocks can be refactored;
transmit the options to a user;
in response to receiving a selection of one or more of the options from the user, cause the dependent source code blocks to be refactored as outlined in the selected one or more options; and
combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service.
Regarding claim 9, the limitations “refactoring source code blocks,” “evaluate the source code blocks; identify dependent and exclusive ones of the source code blocks; automatically cause the exclusive source code blocks to be refactored; generate options outlining how the dependent source code blocks can be refactored” and “cause the dependent source code blocks to be refactored as outlined in the selected one or more options” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. For example, a person is capable of determining dependencies for the source code blocks with the aid of pen and paper with the options given to a human programmer for refactoring the source code blocks. The automatically causing for the source code blocks are merely automates the steps of refactoring which does not change the metal process analysis. Therefore, these limitations encompass a human mind carrying out the function through observation, evaluation judgment and/or opinion, or even with the aid of pen and paper. Thus, these limitations recite and falls within the “Mental Processes” grouping of abstract ideas under Step 2A, Prong 1.
Under Step 2A, Prong 2, the additional elements “A computer-implemented method (CIM)” “a set of one or more computer-readable storage media; and program instructions, collectively stored in the set of one or more storage media, for causing a processor set to perform the following computer operations:” and “combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” are recited at a high-level of generality such that it amounts no more than mere instructions for combining code which merely using generic computing equipment or tool to apply the abstract idea. See MPEP 2106.05(f). For the additional elements “transmit the options to a user; in response to receiving a selection of one or more of the options from the user” merely recite insignificant extra solution activity such as gathering, updating, transmitting and storing data which does not integrate the judicial exception into a practical application. See MPEP 2106.05(g).
Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of “A computer-implemented method (CIM)” “a set of one or more computer-readable storage media; and program instructions, collectively stored in the set of one or more storage media, for causing a processor set to perform the following computer operations:” and “combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” amount to no more than mere instructions, or generic computer and/or computer components to carry out the exception, thus, cannot amount to an inventive concept. For the additional elements “transmit the options to a user; in response to receiving a selection of one or more of the options from the user” the courts have identified functions such as data gathering/collecting including transmitting information over networks as well-understood, routine, conventional activity (Berkheimer v. HP, Inc., 881 F.3d 1360, 1368, 125 USPQ2d 1649, 1654 (Fed. Cir. 2018)), thus do not amount to significantly more than the judicial exception. See MPEP 2106.05(d). Accordingly, the claims are not patent eligible under 35 USC 101.
10. The CPP of claim 9, wherein the identifying of the dependent and exclusive source code blocks includes, for each of the source code blocks evaluated: determining whether a given source code block is a starting block of a service; and in response to determining the given source code block is the starting block of a service, replacing the given source code block with a call to the service.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
11. The CPP of claim 9, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing a warning in response to determining a given dependent source code block is a cross-dependent source code block, the warning outlining that the given dependent source code block will be added to the updated service.
The limitations, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing a warning in response to determining a given dependent source code block is a cross-dependent source code block, is an additional mental process under prong 1. For the limitations, the warning outlining that the given dependent source code block will be added to the updated service, is an additional insignificant extra solution activity under Step 2A, Prong 2.
12. The CPP of claim 9, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing one or more refactoring alternates in response to determining a given dependent source code block is a shared dependent source code block, the one or more refactoring alternates being selected from the group consisting of: duplicating the given dependent source code block, using the given dependent source code block to produce a new service, creating conditional execution of the given dependent source code block, and hoisting the given dependent source code block.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
13. The CPP of claim 9, wherein the source code blocks include standard code and/or partially updated polyglot code.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
14. The CPP of claim 9, wherein the program instructions are for causing the processor set to further perform the following computer operations: in response to determining a given source code block includes an initialization, cause the given source code block to be refactored by duplicating the given source code block into the updated application.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
15. The CPP of claim 9, wherein the program instructions are for causing the processor set to further perform the following computer operations: in response to determining a given source code block includes a number of lines therein that is outside a predetermined range, cause the given source code block to be refactored by duplicating the given source code block into the updated application.
Claim 16, this claim is within at least one of the four categories of patent eligible subject matter as it is directing to a system claim under Step 1.
16. A computer system (CS), comprising:
a processor set;
a set of one or more computer-readable storage media;
program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operations for refactoring source code blocks:
evaluate the source code blocks;
identify dependent and exclusive ones of the source code blocks;
automatically cause the exclusive source code blocks to be refactored;
generate options outlining how the dependent source code blocks can be refactored;
transmit the options to a user;
in response to receiving a selection of one or more of the options from the user, cause the dependent source code blocks to be refactored as outlined in the selected one or more options; and
combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service.
Regarding claim 16, the limitations “refactoring source code blocks: evaluate the source code blocks; identify dependent and exclusive ones of the source code blocks; automatically cause the exclusive source code blocks to be refactored; generate options outlining how the dependent source code blocks can be refactored;” “cause the dependent source code blocks to be refactored as outlined in the selected one or more options” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. For example, a person is capable of determining dependencies for the source code blocks with the aid of pen and paper with the options given to a human programmer for refactoring the source code blocks. The automatically causing for the source code blocks are merely automates the steps of refactoring which does not change the metal process analysis. Therefore, these limitations encompass a human mind carrying out the function through observation, evaluation judgment and/or opinion, or even with the aid of pen and paper. Thus, these limitations recite and falls within the “Mental Processes” grouping of abstract ideas under Step 2A, Prong 1.
Under Step 2A, Prong 2, the additional elements “A computer system (CS), comprising: a processor set; a set of one or more computer-readable storage media; program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operations” and “combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” are recited at a high-level of generality such that it amounts no more than mere instructions for combining code which merely using generic computing equipment or tool to apply the abstract idea. See MPEP 2106.05(f). For the additional elements “transmit the options to a user; in response to receiving a selection of one or more of the options from the user” merely recite insignificant extra solution activity such as gathering, updating, transmitting and storing data which does not integrate the judicial exception into a practical application. See MPEP 2106.05(g).
Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of “A computer system (CS), comprising: a processor set; a set of one or more computer-readable storage media; program instructions, collectively stored in the set of one or more storage media, for causing the processor set to perform the following computer operations” and “combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” amount to no more than mere instructions, or generic computer and/or computer components to carry out the exception, thus, cannot amount to an inventive concept. For the additional elements “transmit the options to a user; in response to receiving a selection of one or more of the options from the user” the courts have identified functions such as data gathering/collecting including transmitting information over networks as well-understood, routine, conventional activity (Berkheimer v. HP, Inc., 881 F.3d 1360, 1368, 125 USPQ2d 1649, 1654 (Fed. Cir. 2018)), thus do not amount to significantly more than the judicial exception. See MPEP 2106.05(d). Accordingly, the claims are not patent eligible under 35 USC 101.
17. The CS of claim 16, wherein the identifying of the dependent and exclusive source code blocks includes, for each of the source code blocks evaluated: determining whether a given source code block is a starting block of a service; and in response to determining the given source code block is the starting block of a service, replacing the given source code block with a call to the service.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
18. The CS of claim 16, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing a warning in response to determining a given dependent source code block is a cross-dependent source code block, the warning outlining that the given dependent source code block will be added to the updated service.
The limitations, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing a warning in response to determining a given dependent source code block is a cross-dependent source code block, is an additional mental process under prong 1. For the limitations, the warning outlining that the given dependent source code block will be added to the updated service, is an additional insignificant extra solution activity under Step 2A, Prong 2.
19. The CS of claim 16, wherein the generating of the options outlining how the dependent source code blocks can be refactored includes: producing one or more refactoring alternates in response to determining a given dependent source code block is a shared dependent source code block, the one or more refactoring alternates being selected from the group consisting of: duplicating the given dependent source code block, using the given dependent source code block to produce a new service, creating conditional execution of the given dependent source code block, and hoisting the given dependent source code block.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
20. The CS of claim 16, wherein the source code blocks include standard code and/or partially updated polyglot code.
The limitations for this claim further recite an additional mental process under Step 2A, Prong 1.
Claim 21, this claim is within at least one of the four categories of patent eligible subject matter as it is directing to a computer-implemented method claim under Step 1.
21. A computer-implemented method (CIM) for refactoring source code blocks, comprising:
submitting a request to refactor the source code blocks, wherein the source code blocks include standard code and/or partially updated polyglot code;
receiving options outlining how dependent ones of the source code blocks can be refactored, wherein the dependent source code blocks include shared dependent blocks and/or cross-dependent blocks; and
in response to selecting one or more of the options outlining how dependent ones of the source code blocks can be refactored:
causing the dependent source code blocks to be refactored as outlined in the selected one or more options, and
causing the refactored dependent source code blocks to be combined with refactored exclusive source code blocks to form an updated application and corresponding updated service.
Regarding claim 21, the limitations “for refactoring source code blocks, comprising:” “wherein the source code blocks include standard code and/or partially updated polyglot code;” “wherein the dependent source code blocks include shared dependent blocks and/or cross-dependent blocks” and “causing the dependent source code blocks to be refactored as outlined in the selected one or more options” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. For example, a person is capable of determining dependencies for the source code blocks with the aid of pen and paper with the options given to a human programmer for refactoring the source code blocks. The automatically causing for the source code blocks are merely automates the steps of refactoring which does not change the metal process analysis. Therefore, these limitations encompass a human mind carrying out the function through observation, evaluation judgment and/or opinion, or even with the aid of pen and paper. Thus, these limitations recite and falls within the “Mental Processes” grouping of abstract ideas under Step 2A, Prong 1.
Under Step 2A, Prong 2, the additional elements “A computer-implemented method (CIM)” “causing the refactored dependent source code blocks to be combined with refactored exclusive source code blocks to form an updated application and corresponding updated service” are recited at a high-level of generality such that it amounts no more than mere instructions for combining code which merely using generic computing equipment or tool to apply the abstract idea. See MPEP 2106.05(f). For the additional elements “submitting a request to refactor the source code blocks” “receiving options outlining how dependent ones of the source code blocks can be refactored,” and “in response to selecting one or more of the options outlining how dependent ones of the source code blocks can be refactored” merely recite insignificant extra solution activity such as gathering, updating, transmitting and storing data which does not integrate the judicial exception into a practical application. See MPEP 2106.05(g).
Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of “A computer-implemented method (CIM)” “causing the refactored dependent source code blocks to be combined with refactored exclusive source code blocks to form an updated application and corresponding updated service” amount to no more than mere instructions, or generic computer and/or computer components to carry out the exception, thus, cannot amount to an inventive concept. For the additional elements “submitting a request to refactor the source code blocks” “receiving options outlining how dependent ones of the source code blocks can be refactored,” and “in response to selecting one or more of the options outlining how dependent ones of the source code blocks can be refactored” the courts have identified functions such as data gathering/collecting including transmitting information over networks as well-understood, routine, conventional activity (Berkheimer v. HP, Inc., 881 F.3d 1360, 1368, 125 USPQ2d 1649, 1654 (Fed. Cir. 2018)), thus do not amount to significantly more than the judicial exception. See MPEP 2106.05(d). Accordingly, the claims are not patent eligible under 35 USC 101.
22. The CIM of claim 21, further comprising: selecting one of the options that includes a warning outlining that a corresponding cross-dependent source code block will be added to the updated service.
The limitations for this claim further recite an additional insignificant extra solution activity under step 2A, Prong 2.
23. The CIM of claim 21, further comprising: selecting one of the options outlining that a corresponding shared dependent source code block can be refactored using one or more refactoring alternates, the one or more refactoring alternates being selected from the group consisting of: duplicating the given shared dependent source code block, using the given shared dependent source code block to produce a new service, creating conditional execution of the given shared dependent source code block, and hoisting the given shared dependent source code block.
The limitations for this claim further recite an additional insignificant extra solution activity under step 2A, Prong 2.
Claim 24, this claim is within at least one of the four categories of patent eligible subject matter as it is directing to a computer program product claim under Step 1.
24. A computer program product (CPP) for refactoring source code blocks, comprising:
a set of one or more computer-readable storage media; and
program instructions, collectively stored in the set of one or more storage media, for causing a processor set to perform the following computer operations:
submit a request to refactor the source code blocks, wherein the source code blocks include standard code and/or partially updated polyglot code;
receive options outlining how dependent ones of the source code blocks can be refactored, wherein the dependent source code blocks include shared dependent blocks and/or cross-dependent blocks; and
in response to selecting one or more of the options outlining how dependent ones of the source code blocks can be refactored:
cause the dependent source code blocks to be refactored as outlined in the selected one or more options, and
cause the refactored dependent source code blocks to be combined with refactored exclusive source code blocks to form an updated application and corresponding updated service.
Regarding claim 24, the limitations “for refactoring source code blocks” “wherein the source code blocks include standard code and/or partially updated polyglot code” “wherein the dependent source code blocks include shared dependent blocks and/or cross-dependent blocks” and “cause the dependent source code blocks to be refactored as outlined in the selected one or more options” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. For example, a person is capable of determining dependencies for the source code blocks with the aid of pen and paper with the options given to a human programmer for refactoring the source code blocks. Therefore, these limitations encompass a human mind carrying out the function through observation, evaluation judgment and/or opinion, or even with the aid of pen and paper. Thus, these limitations recite and falls within the “Mental Processes” grouping of abstract ideas under Step 2A, Prong 1.
Under Step 2A, Prong 2, the additional elements “A computer program product (CPP)” “a set of one or more computer-readable storage media; and program instructions, collectively stored in the set of one or more storage media, for causing a processor set to perform the following computer operations” and “cause the refactored dependent source code blocks to be combined with refactored exclusive source code blocks to form an updated application and corresponding updated service” are recited at a high-level of generality such that it amounts no more than mere instructions for combining code which merely using generic computing equipment or tool to apply the abstract idea. See MPEP 2106.05(f). For the additional elements “submit a request to refactor the source code blocks” “receive options outlining how dependent ones of the source code blocks can be refactored” merely recite insignificant extra solution activity such as gathering, updating, transmitting and storing data which does not integrate the judicial exception into a practical application. See MPEP 2106.05(g).
Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of “A computer-implemented method (CIM)” “combining the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” amount to no more than mere instructions, or generic computer and/or computer components to carry out the exception, thus, cannot amount to an inventive concept. For the additional elements “transmitting the options to a user; in response to receiving a selection of one or more of the options from the user” “in response to selecting one or more of the options outlining how dependent ones of the source code blocks can be refactored” the courts have identified functions such as data gathering/collecting including transmitting information over networks as well-understood, routine, conventional activity (Berkheimer v. HP, Inc., 881 F.3d 1360, 1368, 125 USPQ2d 1649, 1654 (Fed. Cir. 2018)), thus do not amount to significantly more than the judicial exception. See MPEP 2106.05(d). Accordingly, the claims are not patent eligible under 35 USC 101.
25. The CPP of claim 24, wherein the program instructions are for causing the processor set to further perform the following computer operations:
select one of the options outlining that a corresponding shared dependent source code block can be refactored using one or more refactoring alternates, the one or more refactoring alternates being selected from the group consisting of: duplicating the given shared dependent source code block, using the given shared dependent source code block to produce a new service, creating conditional execution of the given shared dependent source code block, and hoisting the given shared dependent source code block.
The limitations for this claim further recite an additional insignificant extra solution activity under step 2A, Prong 2.
Reasons for Allowance
Please note that the applicants must overcome any of the 101 rejections and any of the objections above in order for the claims to be placed in condition for allowance.
The following is an examiner’s statement of reasons for allowance:
The invention generally relates to the field of evaluating, identifying, automatically refactoring source code blocks and updating corresponding application service. The cited prior art taken alone or in combination fail to teach the method/system includes in part the following steps
“…identifying dependent and exclusive ones of the source code blocks; automatically causing the exclusive source code blocks to be refactored; generating options outlining how the dependent source code blocks can be refactored; transmitting the options to a user; in response to receiving a selection of one or more of the options from the user, causing the dependent source code blocks to be refactored as outlined in the selected one or more options; and combining the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” as recited in claim 1,
“…identify dependent and exclusive ones of the source code blocks; automatically cause the exclusive source code blocks to be refactored; generate options outlining how the dependent source code blocks can be refactored; transmit the options to a user; in response to receiving a selection of one or more of the options from the user, cause the dependent source code blocks to be refactored as outlined in the selected one or more options; and combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” as recited in claim 9,
“…identify dependent and exclusive ones of the source code blocks; automatically cause the exclusive source code blocks to be refactored; generate options outlining how the dependent source code blocks can be refactored; transmit the options to a user; in response to receiving a selection of one or more of the options from the user, cause the dependent source code blocks to be refactored as outlined in the selected one or more options; and combine the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service” as recited in claim 16,
“…submitting a request to refactor the source code blocks, wherein the source code blocks include standard code and/or partially updated polyglot code; receiving options outlining how dependent ones of the source code blocks can be refactored, wherein the dependent source code blocks include shared dependent blocks and/or cross-dependent blocks; and in response to selecting one or more of the options outlining how dependent ones of the source code blocks can be refactored: causing the dependent source code blocks to be refactored as outlined in the selected one or more options, and causing the refactored dependent source code blocks to be combined with refactored exclusive source code blocks to form an updated application and corresponding updated service” as recited in claim 21 and
“…submit a request to refactor the source code blocks, wherein the source code blocks include standard code and/or partially updated polyglot code; receive options outlining how dependent ones of the source code blocks can be refactored, wherein the dependent source code blocks include shared dependent blocks and/or cross-dependent blocks; and in response to selecting one or more of the options outlining how dependent ones of the source code blocks can be refactored: cause the dependent source code blocks to be refactored as outlined in the selected one or more options, and cause the refactored dependent source code blocks to be combined with refactored exclusive source code blocks to form an updated application and corresponding updated service” as recited in claim 24.
The above-quoted claim language is not taught or suggested by the Applied Art (whether considered individually or in any combination).
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.”
Response to Arguments
Applicant's arguments filed 06/24/2026 have been fully considered but they are not persuasive.
With respect to drawings, the reference characters mentioned in the description must appear in the drawings. In this case, the labels descriptions are missing, for example the reference character should indicate as, a display screen [224], keys of a computer keyboard [226], a computer mouse [228], a microphone [230], and a camera [232] etc. See 37 CFR 1.84(p)(5).
With respect to claim rejection under 101, applicants states that "[w]hile a claim limitation to a process that 'can be performed in the human mind, or by a human using a pen and paper' qualifies as a mental process, a claim limitation that 'could not, as a practical matter, be performed entirely in a human's mind' (even if aided with pen and paper) would not qualify as a mental process." Here, Applicant respectfully submits that the operations set forth in the claims cannot, as a practical matter, be performed entirely within the human's mind, even if aided by pen and paper.
Examiner respectfully disagrees. As explained in the rejection above that a person is capable of determining dependencies for the source code blocks with the aid of pen and paper with the options given to a human programmer for refactoring the source code blocks. The automatically causing for the source code blocks are merely automates the steps of refactoring which does not change the metal process analysis. Therefore, these limitations encompass a human mind carrying out the function through observation, evaluation judgment and/or opinion, or even with the aid of pen and paper. Thus, these limitations recite and falls within the “Mental Processes” grouping of abstract ideas under Step 2A, Prong 1.
Regarding Invention Reflects an Improvement to a Technical Field, the stated that Applicant respectfully submits that claim 1 integrates its features into a practical application of a code block refactoring system that enables co-existence of source code and updated code at least by providing improvements to existing source code block updating technology. And cited multiple portions of specification.
Examiner respectfully disagrees. First of all, the specification can not be read into the claims. Although the claims are interpreted in light of the specification, limitations from the specification are not read into the claims. See In re Van Geuns, 988 F.2d 1181, 26 USPQ2d 1057 (Fed. Cir. 1993). If applicants believe that improvement can be found in the cited portions of specification, Examiner respectfully requests to amend claims to reflect the improvement.
Further, applicants’ states that claim 1 explicitly reflects the recited improvement of identifying dependent and exclusive code blocks for refactoring in such a way that the old code and the updated code co-exist while maintaining functionality of the code as a whole. Therefore, because claim 1 integrates its features into practical applications (specifically, practical applications of a code block refactoring system) that apply, rely on, or use any alleged abstract ideas in a manner that imposes meaningful limits. However, as indicated in the rejection above that combining the refactored exclusive source code blocks and refactored dependent source code blocks to form an updated application and corresponding updated service are recited at a high-level of generality such that it amounts no more than mere instructions for combining code which merely using generic computing equipment or tool to apply the abstract idea. See MPEP 2106.05(f).
Thus, the claims are still stand rejected and the 101 rejection is maintained.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
The combination of above references does not teach or suggests the limitations as indicated in the reasons for allowance.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Satish Rampuria whose telephone number is 571-272-3732. The examiner can normally be reached on Monday-Friday from 8:30 AM to 5:00 PM.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Chat Do, can be reached at telephone number 571-272-3721. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
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) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
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.
/Satish Rampuria/Primary Examiner, Art Unit 2193
*****