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
A filing date of 07/10/2024 is acknowledged.
Claims 1 – 20 are pending.
Claim Objections
Claims 1, 4 – 11, and 13 – 20 are objected to because of the following informalities:
Claim 1
Line 4; remove comma after “non-transitory”.
Line 5; insert comma before “cause”
Line 9; “the computer code” lacks antecedent basis.
Line 13; change “a corresponding segment” to --the corresponding segment--.
Claim 4
Line 1; insert --the-- before “identifying”
Line 5; insert --the-- before “comparing”
Claim 5
Line 1; insert --the-- before “identifying”
Line 6; change “output from machine learning model” to --output from the similarity model--.
Claim 6
Line 1; insert --the-- before “generating”
Claim 7
Line 1; insert --the-- before “generating”.
Claim 8
Line 1; insert --the-- before “training”.
Line 4; remove “repository”
Lines 10 – 11; change “a corresponding segment” to --the corresponding segment--.
Claim 9
Line 1; insert --the-- before “splitting”.
Line 8; “the heading data” lacks antecedent basis.
Claim 10
The claim is dependent claim of claim 9; therefore, it inherits issue of claim 9.
Claim 11
Line 1; insert --the-- before “splitting”.
Line 2; change “the plurality of portions” to --the plurality of segments--.
Claim 13
Line 1; remove comma after “non-transitory”. Insert comma after “that”
Line 2; insert comma after “processors”.
Claim 14
Line 1; remove comma after “non-transitory”.
Claim 15
Line 1; remove comma after “non-transitory”.
Line 5; insert --the-- before “comparing”
Claim 16
Line 1; remove comma after “non-transitory”.
Line 8; change “output from machine learning model” to --output from the similarity model--.
Claim 17
Line 1; remove comma after “non-transitory”.
Claim 18
Line 1; remove comma after “non-transitory”.
Claim 19
Line 1; remove comma after “non-transitory”.
Lines 2-3; change “the plurality of portions” to --the plurality of segments--.
Claim 20
Line 1; remove comma after “non-transitory”.
Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1 – 20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
Claim 2
Step 1
The claim is statutory because it is directed to a method.
Step 2A, prong 1
The claim recites limitations
“identifying … a segment of a plurality of segments corresponding to the updated computer code …;
generating, based on the updated computer code, segment data …;
… the segment data to obtain a condition associated with the updated computer code …; and
based on the condition received from the machine learning model, generating for display one or more action identifiers for a user to perform.”
The step “identifying … a segment of a plurality of segments corresponding to the updated computer code” falls into a category of mental process within the realm of abstract idea as it relies on human observation and evaluation of plurality of segments to recognize a segment corresponding the updated computer code.
The step “the segment data to obtain a condition associated with the updated computer code” falls into a category of mental process within the realm of abstract idea as it relies on human observation and evaluation of the updated computer code to identify its condition.
The step “generating, based on the updated computer code, segment data” can be performed by human with an aid of paper and pen to generate segment data.
The step “based on the condition …, generating for display one or more action identifiers …” falls into a category of mental process within the realm of abstract idea as it relies on human observation and evaluation of the condition to identify actions and with an aid of paper and pen human generates the display of the actions.
These steps do not integrate the judicial exception into a practical application.
Step 2A, prong 2
The claim further recites additional limitation “receiving updated computer code” and additional elements “a machine learning model and a computer code repository”.
The additional limitation receives code which is just an insignificant extra-solution activity and, therefore, does not integrate the judicial exception into a practical application.
The additional elements “a machine learning model and a computer code repository” are recited as high level of generality and used as a tool to perform the limitations. The additional element is not indicative of an integration into a practical application.
Steps 2B
The claim as a whole is not amounted to significantly more than the judicial exception. Claim 2 is directed to an abstract idea. Therefore, claim 2 is not patent eligible.
Analysis of claims 3 – 12
Claim 3
The claim recites “the one or more code update parameters comprise variable update parameters, commit parameters, or lines of code parameters.”
The limitation defines updated parameters. So, it does not include any additional element that is sufficient to amount to significantly more than the judicial exception.
Claim 4
The claim recites “comparing execution commands for each code segment of the plurality of segments with corresponding execution commands for the updated computer code; and
determining, based on comparing, that a first code segment of the plurality of segments matches the updated computer code.”
The steps “comparing” and “determining” falls into a category of mental process within the realm of abstract idea as it relies on human observation and evaluation of commands to determine the match of code segment and the updated computer code.
The limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea. So, it does not include any additional element that is sufficient to amount to significantly more than the judicial exception.
Claim 5
The claim recites “inputting each code segment of the plurality of segments and the updated computer code into a similarity model, wherein the similarity model determines a degree of similarity between two sets of textual data; and
determining, based on output from the machine learning model, that a first code segment of the plurality of segments matches the updated computer code.”
The step “determining” falls into a category of mental process within the realm of abstract idea as it relies on human observation and evaluation of commands to determine the match of code segment and the updated computer code. The limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The step “inputting” collects data and is just an insignificant extra-solution activity that is insufficient to integrate into a practical application.
Claim 6
The claim recites “determining a first number of variables within the updated computer code and a second number of variables within a matching code segment;
generating a variable difference for the updated computer code;
determining a number of code updates associated with the updated computer code;
generating a commit parameter based on the number of code updates;
determining a first set of line code parameters within the updated computer code and a second set of line code parameters within the matching code segment;
generating a line code parameter difference for the updated computer code; and
adding the variable difference, the commit parameter, and the line code parameter difference to the segment data.”
The steps “determining a first number of variables… and a second number of variables…; generating a variable difference …” are directed to mental process as they rely on human observation and evaluation of variables of segment and updated code to identify and generate, with an aid of paper and pen, variable difference for the updated code.
The steps “determining a number of code updates … and generating a commit parameter based on the number of code updates” are directed to mental process as they rely on human observation and evaluation of number of code updates to identify and generate, with an aid of paper and pen, commit parameter.
The steps “determining a first set of line code parameters … and a second set of line code parameters …; and generating a line code parameter difference…” are directed to mental process as they rely on human observation and evaluation of sets of line code parameters to identify and generate, with an aid of paper and pen, line code parameter difference.
These steps, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The step “adding” collects and adds the data, and it is just an insignificant extra-solution activity that is insufficient to integrate into a practical application.
Claim 7
The claim recites “comparing the condition with a plurality of predetermined conditions;
retrieving a plurality of functions associated with the plurality of predetermined conditions; and
generating for display a plurality of selectable function identifiers.”
The step “comparing” is directed to mental process as they rely on human observation and evaluation of condition to identify plurality of function. The step, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The steps “retrieving and generating” collects and displays data, and it is just an insignificant extra-solution activity that is insufficient to integrate into a practical application.
Claim 8
The claim recites “receiving computer code update data…;
splitting the computer code within the computer code repository into the plurality of portions based on the plurality of computer code segments within the computer code update data …;
determining, for each portion of the plurality of portions based on a corresponding segment, corresponding segment data …; and
generating, for the plurality of portions, a time series dataset …”
The step “determining” is directed to mental process as they rely on human observation and evaluation of portions of code and segment to identify segment data. The step, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The steps “retrieving, splitting and generating” collects data, divides codes, and generates time series dataset. They are just insignificant extra-solution activities that are insufficient to integrate into a practical application.
Claim 9
The claim recites “comparing, for each computer code segment within the computer code update data, header data with stored heading data associated with the computer code within the computer code repository; and
matching a first code segment with a first portion of the computer code within the computer code repository based on the heading data matching the stored heading data.”
The steps “comparing and matching” are directed to mental process as they rely on human observation and evaluation of header data to identify and match segment and code. The steps, under its broadest reasonable interpretation, cover performance of the limitation in the mind, and they are not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Claim 10
The claim recites “generating a code map for the computer code repository with the first portion of the computer code having an entry within the code map.”
The step “generating” generates data. It is just insignificant extra-solution activities that are insufficient to integrate into a practical application.
Claim 11
The claim recites “identifying, for each segment of a plurality of computer code segments, a corresponding portion within the computer code repository;
for each pair of a matching segment and the corresponding portion, generating an entry identifying each pair; and
discarding one or more portions of the computer code within the computer code repository without a corresponding pair.”
The step “identifying” is directed to mental process as they rely on human observation and evaluation of code segments to identify corresponding portion of code. The step, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The steps “generating and discarding” generate entry and remove code. They are just insignificant extra-solution activities that are insufficient to integrate into a practical application.
Claim 12
The claim recites “a determination of whether the updated computer code is predicted to cause one or more issues within the computer code repository.”
The limitation is directed to mental process as they rely on human observation and evaluation of code to determine whether the code causes issue. The limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind, and it is not integrated into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Claim 1
Step 1
The claim is statutory because it is directed to a device.
Step 2A, prong 1
The claim recites limitations
“receive computer code update data…;
split the computer code within the computer code repository into a plurality of portions …;
determine, for each portion of the plurality of portions based on a corresponding segment, corresponding segment data …;
generate, for the plurality of portions, a time series dataset …; and
train a machine learning model using the time series dataset and the plurality of portions of code to output a condition associated with a candidate code portion when the candidate code portion is input into the machine learning model.”
The step “determine, for each portion of the plurality of portions based on a corresponding segment, corresponding segment data …” falls into a category of mental process within the realm of abstract idea as it relies on human observation and evaluation of plurality of segments to recognize a segment corresponding the updated computer code.
The step “using the time series dataset and the plurality of portions of code to output a condition associated with a candidate code portion” falls into a category of mental process within the realm of abstract idea as it relies on human observation and evaluation of the candidate code portion to identify its condition.
These steps do not integrate the judicial exception into a practical application.
Step 2A, prong 2
The claim further recites additional elements “one or more processors, a non-transitory, computer-readable storage medium, a computer code repository, and a machine learning model” and additional limitations
“receive computer code update data…;
split the computer code within the computer code repository into a plurality of portions …;
generate, for the plurality of portions, a time series dataset …;” and additional elements “a machine learning model and a computer code repository”.
The additional limitations “receives code, split the code, and generate series dataset” which are insignificant extra-solution activities and, therefore, do not integrate the judicial exception into a practical application.
The additional elements “one or more processors, a non-transitory, computer-readable storage medium, a computer code repository, and a machine learning model” are recited as high level of generality and used as a tool to perform the limitations. The additional element is not indicative of an integration into a practical application.
Steps 2B
The claim as a whole is not amounted to significantly more than the judicial exception. Claim 1 is directed to an abstract idea. Therefore, claim 1 is not patent eligible.
Claim 13
Step 1
The claim is statutory because it is directed to a product.
Step 2A, prongs 1 and 2
The claim recites additional elements “a non-transitory, computer-readable storage medium, a computer code repository, and a machine learning model” are recited as high level of generality and used as a tool to perform the limitations. The additional element is not indicative of an integration into a practical application.
Steps 2B
The claim as a whole is not amounted to significantly more than the judicial exception. Claim 13 is directed to an abstract idea. Therefore, claim 13 is not patent eligible.
Claims 14 – 20
Claims 14 – 20 recite limitations in the same manner as claims 3 – 7 and 11 – 12 respectively; therefore, claims 14 – 20 are also rejected for the same reasons.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Decrop et al. (Pub. No. US 2023/0221992 A1) teaches
“A system for building an artificial intelligence model that predicts computer code, the system comprising:
one or more processors; and
a non-transitory, computer-readable storage medium storing instructions, which when executed by the one or more processors cause the one or more processors to:
;
split the computer code within the computer code repository into a plurality of portions .
train a machine learning model the plurality of portions of code when the candidate code portion is input into the machine learning model.”
Qian et al. (Pub. No. US 2023/0229417 A1) teaches
“receive computer code update data, wherein the computer code update data comprises a plurality of computer code segments that were used as updates to a computer code repository over a period of time”
determine, for each portion of the plurality of portions based on a corresponding segment, corresponding segment data, wherein each segment data comprises one or more code update parameters, the one or more code update parameters comprising variable update parameters, commit parameters, or lines of code parameters”
GUAN et al. (CN 118283028 A) teaches
“generate, for the plurality of portions, a time series dataset comprising combined segment data arranged chronologically.”
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CUONG V LUU whose telephone number is (571)270-1733. The examiner can normally be reached 6:30 AM - 3:00 PM.
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 S. 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.
/CUONG V LUU/Examiner, Art Unit 2192
/S. Sough/SPE, Art Unit 2192